@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0b0d0a;--panel:#151813;--panel2:#1a1e18;--line:rgba(226,233,220,.14);--text:#eff2ea;--muted:#a2aa9e;--lime:#b9ff3b;--blue:#91baff;--purple:#d4a3ff;font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 75% 0%,rgba(104,143,41,.10),transparent 38%),var(--bg)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.events-shell{max-width:1440px;margin:0 auto;padding:16px 5vw 0}.events-nav{height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 20px;border:1px solid var(--line);border-radius:999px;background:rgba(24,28,23,.78);backdrop-filter:blur(18px);position:sticky;top:12px;z-index:5}.events-brand{display:flex;align-items:center;gap:10px;font-size:10px;line-height:.98;font-weight:800;letter-spacing:.08em}.events-brand b{color:var(--lime)}.brand-mark{width:27px;height:28px;display:flex;gap:3px;align-items:flex-end;transform:skew(-18deg)}.brand-mark i{width:6px;border-radius:2px;background:var(--lime)}.brand-mark i:nth-child(1){height:12px}.brand-mark i:nth-child(2){height:20px}.brand-mark i:nth-child(3){height:27px}.events-nav nav{display:flex;align-items:center;gap:28px;font-size:12px;color:#c5cbc0}.events-nav nav a:hover,.events-nav nav a.active{color:var(--lime)}.events-account{padding:11px 15px;border-radius:999px;background:var(--lime);color:#11140d;font-size:12px;font-weight:700}.events-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:90px 2px 44px}.kicker,.events-status,.event-card-top,.event-count-label,.calendar-heading button,.calendar-weekdays,.event-meta-label,.events-footer,.event-detail-kicker{font-family:'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.kicker{color:#c2c9bb;font-size:10px}.kicker i{display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--lime)}.events-hero h1{margin:20px 0;font:600 clamp(46px,7vw,86px)/.99 Manrope,sans-serif;letter-spacing:-.075em}.events-hero h1 em{color:var(--lime);font-style:normal}.events-hero>div>p:last-child{max-width:530px;color:#b5bdb0;font-size:16px;line-height:1.6}.event-stats{min-width:180px;padding:20px 24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(185,255,59,.08),rgba(21,24,19,.8))}.event-stats span,.event-stats small{display:block;color:#9ea79a;font:10px 'DM Mono',monospace;letter-spacing:.14em}.event-stats strong{display:block;margin:10px 0;font:700 46px Manrope,sans-serif;letter-spacing:-.07em}.event-stats small{font:11px 'DM Sans',sans-serif;letter-spacing:0}.events-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(18,21,17,.85)}.search-field{display:flex;align-items:center;gap:10px;flex:1 1 260px;min-height:46px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#0e100d;color:var(--lime)}.search-field input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-size:13px}.events-toolbar select,.subtle-button,.view-toggle button{min-height:46px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#10130f;color:#dbe0d6;font-size:12px}.subtle-button{cursor:pointer}.view-toggle{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px}.view-toggle button{min-height:36px;border:0;background:transparent;cursor:pointer}.view-toggle button.selected{background:var(--lime);color:#11140d;font-weight:700}.events-status{min-height:18px;margin:18px 4px;color:#a8b09f;font-size:9px;letter-spacing:.08em}.event-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.event-card{display:flex;flex-direction:column;min-height:250px;padding:22px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(150deg,rgba(28,32,26,.9),rgba(15,17,14,.92));transition:transform .18s,border-color .18s}.event-card:hover{transform:translateY(-2px);border-color:rgba(185,255,59,.4)}.event-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#abb3a5;font-size:9px}.event-type{display:inline-flex;align-items:center;gap:7px;color:#d9dfd2}.event-type i{width:8px;height:8px;border-radius:50%;background:var(--lime)}.event-type.offline i{background:var(--blue)}.event-type.hybrid i{background:var(--purple)}.event-card h2{margin:18px 0 7px;font:700 23px Manrope,sans-serif;letter-spacing:-.05em}.event-card>p{margin:0;color:#adb5a8;font-size:13px;line-height:1.55}.event-card-meta{display:flex;gap:20px;flex-wrap:wrap;margin:18px 0;color:#d3d9ce;font-size:11px}.event-card-actions{display:flex;gap:9px;margin-top:auto}.event-card-actions button,.event-card-actions a{min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:transparent;color:#e9ede3;cursor:pointer;font-size:11px}.event-card-actions button.primary{border-color:var(--lime);background:var(--lime);color:#11140d;font-weight:700}.calendar-panel{margin-bottom:16px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.calendar-panel[hidden]{display:none}.calendar-heading{display:flex;align-items:center;gap:10px;margin-bottom:16px}.calendar-heading h2{flex:1;margin:0;font:700 20px Manrope,sans-serif;letter-spacing:-.04em}.calendar-heading button{min-width:42px;min-height:42px;border:1px solid var(--line);border-radius:9px;background:#10130f;color:#dde2d8;cursor:pointer;font-size:11px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.calendar-weekday,.calendar-day{min-height:88px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.calendar-weekday{min-height:auto;color:#aab2a5;font:9px 'DM Mono',monospace;letter-spacing:.12em;text-transform:uppercase}.calendar-day{position:relative;display:flex;flex-direction:column;gap:4px;background:#11140f;color:#aab1a6;text-align:left;cursor:pointer}.calendar-day:hover,.calendar-day.selected{background:rgba(185,255,59,.07)}.calendar-day.outside{opacity:.35}.calendar-day.today .day-number{color:var(--lime)}.day-number{font-size:12px}.day-event-count{display:flex;align-items:center;gap:5px;overflow:hidden;white-space:nowrap;color:#cbd4c5;font-size:9px}.day-event-count i{flex:0 0 auto;width:6px;height:6px;border-radius:50%;background:var(--lime)}.day-event-count.offline i{background:var(--blue)}.day-event-count.hybrid i{background:var(--purple)}.events-empty{padding:60px 20px;text-align:center;border:1px dashed var(--line);border-radius:16px}.events-empty[hidden]{display:none}.events-empty>span{color:var(--lime);font-size:24px}.events-empty h2{font:700 24px Manrope,sans-serif}.events-empty p{color:var(--muted)}.event-dialog{position:fixed;width:min(640px,calc(100% - 28px));max-height:88vh;overflow:auto;padding:28px;border:1px solid rgba(185,255,59,.24);border-radius:18px;background:#151813;color:var(--text);box-shadow:0 30px 120px #000b}.event-dialog::backdrop{background:rgba(2,4,2,.78);backdrop-filter:blur(5px)}.dialog-close{position:sticky;top:0;float:right;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#20251d;color:var(--text);font-size:22px;cursor:pointer}.event-detail-kicker{color:var(--lime);font-size:9px}.event-dialog h2{max-width:520px;margin:18px 40px 12px 0;font:700 34px/1.05 Manrope,sans-serif;letter-spacing:-.06em}.event-detail-description{color:#b7beb2;line-height:1.7;font-size:14px}.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.detail-fact{padding:14px;border:1px solid var(--line);border-radius:10px;background:#10130f}.detail-fact span{display:block;margin-bottom:6px;color:#949d90;font:9px 'DM Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.detail-fact strong{font-size:12px;line-height:1.5}.agenda-box{white-space:pre-line;padding:16px;border-left:2px solid var(--lime);background:#10130f;color:#c5cbbf;font-size:12px;line-height:1.7}.detail-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}.detail-actions a,.detail-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 15px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--text);cursor:pointer;font-size:12px}.detail-actions .primary{border-color:var(--lime);background:var(--lime);color:#11140d;font-weight:700}.registration-form{display:grid;gap:12px;margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#10130f}.registration-form label{display:grid;gap:6px;color:#cbd1c5;font-size:11px}.registration-form input{min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:#0b0d0a;color:var(--text)}.registration-form .consent-line{display:flex;align-items:flex-start;gap:8px}.consent-line input{min-height:auto;margin:2px 0;accent-color:var(--lime)}.events-footer{display:flex;justify-content:space-between;gap:20px;padding:32px 4px;color:#8d9689;font-size:9px}.events-footer a{color:#cad1c4}.event-toast{position:fixed;right:20px;bottom:20px;z-index:10;max-width:min(420px,calc(100vw - 40px));padding:14px 18px;border:1px solid rgba(185,255,59,.3);border-radius:12px;background:#1c2118;color:var(--text);font-size:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.event-toast.visible{opacity:1;transform:none}.event-toast.error{border-color:#a35249}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.events-shell{padding:10px 16px 0}.events-nav{height:auto;min-height:60px;padding:10px 13px;border-radius:20px;flex-wrap:wrap}.events-nav nav{order:3;width:100%;justify-content:center;gap:18px;padding-top:9px;border-top:1px solid var(--line);font-size:11px}.events-brand{font-size:9px}.events-account{font-size:10px;padding:10px 12px}.events-hero{padding:54px 2px 30px;align-items:flex-start;flex-direction:column}.events-hero h1{font-size:clamp(48px,12vw,70px)}.event-stats{display:grid;grid-template-columns:auto auto;gap:4px 12px;align-items:center;width:100%;min-width:0}.event-stats span{grid-row:1}.event-stats strong{grid-row:1 / span 2;grid-column:2;margin:0}.event-stats small{grid-row:2}.events-toolbar{padding:11px}.search-field{flex-basis:100%}.events-toolbar select{flex:1;min-width:0}.subtle-button{flex:1}.view-toggle{width:100%}.view-toggle button{flex:1}.event-list{grid-template-columns:1fr}.event-card{min-height:230px;padding:18px}.calendar-panel{padding:12px}.calendar-weekday,.calendar-day{min-height:62px;padding:5px}.calendar-weekday{font-size:7px}.day-event-count{font-size:0}.day-event-count i{width:7px;height:7px}.calendar-heading{gap:6px}.calendar-heading button{min-width:38px;min-height:38px}.calendar-heading h2{font-size:16px}.events-footer{flex-direction:column}.detail-facts{grid-template-columns:1fr 1fr}.event-dialog{padding:20px}.event-dialog h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* A calmer, more tactile calendar with spacious individual day surfaces. */
.calendar-panel {
  margin: 20px 0 24px;
  padding: clamp(16px, 2vw, 26px);
  border: 1px solid rgba(226, 233, 220, .16);
  border-radius: 24px;
  background: radial-gradient(ellipse at 10% 0%, rgba(185, 255, 59, .055), transparent 42%), linear-gradient(145deg, rgba(26, 30, 24, .94), rgba(14, 17, 14, .96));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .2), inset 0 1px 0 rgba(255, 255, 255, .045);
}
.calendar-heading { gap: 12px; margin-bottom: 20px; }
.calendar-heading h2 { font-size: clamp(20px, 2vw, 25px); }
.calendar-heading button {
  min-width: 46px;
  min-height: 46px;
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(235, 241, 228, .075), rgba(19, 23, 18, .88));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .07);
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}
.calendar-heading button:hover,
.calendar-heading button:focus-visible {
  border-color: rgba(185, 255, 59, .38);
  background: rgba(185, 255, 59, .09);
}
.calendar-heading button:active { transform: scale(.96); }
.calendar-grid {
  gap: 8px;
  border: 0;
}
.calendar-weekday {
  min-height: 30px;
  padding: 4px 10px 8px;
  border: 0;
  color: #aeb8a7;
  font-size: 9px;
}
.calendar-day {
  min-height: 104px;
  gap: 8px;
  padding: 11px;
  overflow: hidden;
  border: 1px solid rgba(226, 233, 220, .105);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(235, 241, 228, .045), rgba(21, 24, 19, .78));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
  transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}
.calendar-day:hover,
.calendar-day:focus-visible {
  border-color: rgba(185, 255, 59, .32);
  background: linear-gradient(145deg, rgba(185, 255, 59, .09), rgba(21, 24, 19, .9));
}
.calendar-day:active { transform: scale(.985); }
.calendar-day.selected {
  border-color: rgba(185, 255, 59, .58);
  background: linear-gradient(145deg, rgba(185, 255, 59, .14), rgba(23, 29, 19, .96));
  box-shadow: inset 0 0 0 1px rgba(185, 255, 59, .12), 0 8px 24px rgba(0, 0, 0, .16);
}
.calendar-day.outside { opacity: .48; }
.calendar-day.today { border-color: rgba(185, 255, 59, .45); }
.day-number {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 50%;
  color: #e2e9dc;
  font-size: 12px;
  font-weight: 600;
}
.calendar-day.today .day-number {
  background: var(--lime);
  color: #11140d;
  box-shadow: 0 0 0 4px rgba(185, 255, 59, .09);
}
.day-event-count {
  width: fit-content;
  max-width: 100%;
  min-height: 22px;
  padding: 3px 7px;
  border: 1px solid rgba(185, 255, 59, .13);
  border-radius: 999px;
  background: rgba(185, 255, 59, .055);
  font-size: 9px;
}
.calendar-day:focus-visible,
.calendar-heading button:focus-visible { outline: 2px solid var(--lime); outline-offset: 2px; }
@media(max-width:760px) {
  .calendar-panel { padding: 13px; border-radius: 20px; }
  .calendar-grid { gap: 5px; }
  .calendar-weekday { padding: 4px 2px 7px; font-size: 7px; text-align: center; }
  .calendar-day { min-height: 68px; gap: 3px; padding: 5px; border-radius: 11px; }
  .day-number { width: 24px; height: 24px; font-size: 11px; }
  .day-event-count { min-height: 18px; padding: 2px 5px; }
}
@media(prefers-reduced-motion:reduce) {
  .calendar-heading button, .calendar-day { transition: none; }
  .calendar-day:active, .calendar-heading button:active { transform: none; }
}

/* Events uses the same navigation structure and scale as Founder Connect. */
.events-shell .events-site-nav {
  position: sticky;
  top: 10px;
  z-index: 20;
  display: flex;
  height: 96px;
  align-items: flex-start;
  justify-content: center;
  margin: 0;
  padding: 0 8px;
}
.events-site-nav .nav-pill {
  position: relative;
  display: flex;
  width: min(var(--mdi-nav-width), 100%);
  min-height: var(--mdi-nav-height);
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 8px 14px 8px 22px;
  border-radius: 20px;
}
.events-site-nav .wordmark {
  position: relative;
  z-index: 1;
  display: flex;
  flex: none;
  align-items: center;
  gap: 10px;
  color: #e5e8de;
  font: 700 10px/1.15 'DM Mono', monospace;
  letter-spacing: .09em;
}
.events-site-nav .wordmark em { color: var(--lime); font-style: normal; }
.events-site-nav .wordmark-mark { display: flex; width: 27px; height: 30px; align-items: flex-end; gap: 3px; transform: skew(-17deg); }
.events-site-nav .wordmark-mark span { display: block; width: 6px; border-radius: 2px 2px 0 0; background: var(--lime); }
.events-site-nav .wordmark-mark span:nth-child(1) { height: 13px; }
.events-site-nav .wordmark-mark span:nth-child(2) { height: 21px; }
.events-site-nav .wordmark-mark span:nth-child(3) { height: 28px; }
.events-site-nav .nav-links { display: flex; align-items: center; gap: 4px; margin-left: auto; }
.events-site-nav .nav-links a,
.events-site-nav .auth-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 14px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #bdc7b7;
  font-size: 12px;
  text-decoration: none;
  white-space: nowrap;
}
.events-site-nav .nav-right { display: none; }
.events-site-nav .menu-button { display: none; }
.events-site-nav .site-menu[hidden] { display: none; }
@media(max-width:760px) {
  .events-shell .events-site-nav { height: 82px; top: 8px; padding: 0; }
  .events-site-nav .nav-pill { min-height: 62px; gap: 10px; padding: 8px 11px 8px 18px; border-radius: 18px; }
  .events-site-nav .wordmark { gap: 7px; font-size: 9px; }
  .events-site-nav .wordmark-mark { width: 22px; height: 24px; }
  .events-site-nav .wordmark-mark span { width: 5px; }
  .events-site-nav .wordmark-mark span:nth-child(1) { height: 11px; }
  .events-site-nav .wordmark-mark span:nth-child(2) { height: 17px; }
  .events-site-nav .wordmark-mark span:nth-child(3) { height: 23px; }
  .events-site-nav .nav-links { display: none; }
  .events-site-nav .auth-nav-link { margin-left: auto; min-height: 40px; padding: 0 10px; font-size: 11px; }
  .events-site-nav .nav-right { display: block; }
  .events-site-nav .menu-button { display: grid; width: 42px; height: 42px; place-content: center; gap: 5px; border: 1px solid rgba(226,233,220,.17); border-radius: 50%; background: rgba(226,233,220,.04); color: #e7ede0; cursor: pointer; }
  .events-site-nav .menu-button span { display: block; width: 15px; height: 1px; background: currentColor; }
  .events-site-nav .site-menu { position: absolute; top: 70px; right: 0; z-index: 2; display: grid; width: min(360px, 100%); gap: 5px; padding: 12px; border: 1px solid rgba(226,233,220,.16); border-radius: 18px; background: rgba(18,22,17,.97); box-shadow: 0 18px 44px rgba(0,0,0,.4); backdrop-filter: blur(20px); }
  .events-site-nav .site-menu a { display: flex; min-height: 44px; align-items: center; padding: 0 12px; border-radius: 12px; color: #bdc7b7; font-size: 12px; text-decoration: none; }
  .events-site-nav .site-menu a.is-active { color: #dfffaa; background: rgba(185,255,59,.075); }
}
