:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#06080c;color:#f5f7fb;line-height:1.5;font-weight:400;--bg: #06080c;--panel: rgba(10, 14, 20, .84);--panel-soft: rgba(18, 24, 32, .82);--border: rgba(150, 180, 210, .2);--text: #f5f7fb;--muted: #a3afc2;--lime: #b8ea6d;--cyan: #67d8f5;--amber: #f0c36a;--danger-soft: #f0b995;--focus-ring: rgba(103, 216, 245, .9);--focus-shadow: rgba(184, 234, 109, .26)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(#06080ceb,#06080cfa),url(/assets/night-ascent.png) center top / cover no-repeat,var(--bg)}button,input,select{font:inherit}a{color:inherit}button{cursor:pointer}.app-shell{width:100%;margin:0 auto;padding:0 0 72px}.page{width:min(100%,1160px);margin:0 auto;padding-inline:clamp(16px,3vw,28px);padding-top:clamp(18px,3vw,34px);display:grid;gap:28px}.section{display:grid;gap:18px}.hero,.gate-hero,.join-layout{display:grid;gap:24px;align-items:stretch}.hero{min-height:min(88vh,820px)}.gate-hero__copy,.join-layout__intro,.panel,.gate-card,.placeholder-visual__frame,.empty-state{background:var(--panel);border:1px solid var(--border);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.gate-hero__copy,.join-layout__intro{padding:28px;align-content:start}.hero__copy h1,.gate-hero__copy h1,.join-layout__intro h1{margin:0;font-size:clamp(2.4rem,5vw,4.6rem);line-height:.95}.hero__lede,.join-layout__lede,.gate-hero__support,.gate-hero__lede,.gate-card__subtitle,.message,.empty-state,.field__label,.avatar-picker__name,.panel__step,.metric__label{color:var(--muted)}.eyebrow{margin:0 0 12px;color:var(--lime);font-size:.82rem;font-weight:700;text-transform:uppercase}.hero__lede,.join-layout__lede,.gate-hero__lede{max-width:36rem;margin:0;font-size:1.05rem}.hero__points{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.hero__points span,.panel__step,.status-pill,.gate-card__meta{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;font-size:.9rem}.hero__points span{background:#0e131ce0;border:1px solid rgba(184,234,109,.24)}.hero__visual{min-height:420px}.hero__image{width:100%;height:100%;min-height:420px;border-radius:8px;background:linear-gradient(180deg,#070b1024,#070b1094),url(/assets/night-ascent.png) center center / cover no-repeat;border:1px solid rgba(103,216,245,.2);box-shadow:inset 0 0 0 1px #ffffff0a}.page--home .hero__copy{background:none;border:0;border-radius:0;-webkit-backdrop-filter:none;backdrop-filter:none;padding:clamp(10px,2vw,20px) 0 0;align-content:end}.page--home .hero{gap:28px}.page--home .hero__image{min-height:min(72vh,760px)}.section__header h2,.panel__header h2,.gate-card__title{margin:0;font-size:clamp(1.2rem,2vw,1.7rem)}.message{margin:0}.message--warning{color:var(--danger-soft)}.message--soft{color:#d7deea}.empty-state,.panel,.gate-card,.placeholder-visual__frame{padding:20px}.gate-card{display:grid;gap:18px}.gate-card__header,.gate-card__body,.gate-hero__status-row,.checkbox-row{display:flex;gap:14px;align-items:center;justify-content:space-between}.gate-card__body{align-items:end}.gate-card__subtitle{margin:8px 0 0;max-width:34rem}.status-pill{font-weight:700;border:1px solid transparent}.status-pill--open{background:#b8ea6d1f;border-color:#b8ea6d52;color:#d9f7a4}.status-pill--active{background:#67d8f51f;border-color:#67d8f54d;color:#9fe9fb}.status-pill--completed{background:#f0c36a1f;border-color:#f0c36a52;color:#f4d58f}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 16px;border-radius:8px;border:1px solid transparent;transition:background-color .12s ease,border-color .12s ease,color .12s ease,opacity .12s ease,box-shadow .12s ease}.button:disabled{cursor:default;opacity:.6}.button--primary{background:var(--lime);color:#08100b}.button--primary:hover:not(:disabled){background:#c7f088}.button--secondary{background:#67d8f51f;color:var(--text);border-color:#67d8f552}.button--secondary:hover:not(:disabled){background:#67d8f52e}.button:focus-visible,.text-input:focus-visible,.avatar-picker__swatch:focus-visible,.checkbox-row input:focus-visible,.gate-card__button:focus-visible{outline:none;border-color:var(--focus-ring);box-shadow:0 0 0 3px var(--focus-shadow)}.checkbox-row input{accent-color:var(--lime)}.metrics-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:12px 0 4px;border-top:1px solid rgba(150,180,210,.16);border-bottom:1px solid rgba(150,180,210,.16)}.metric{display:grid;gap:8px;align-content:start}.metric strong{font-size:clamp(1.4rem,3vw,2rem)}.placeholder-visual__frame{min-height:320px;display:grid;align-content:end;background:linear-gradient(180deg,#06080c33,#06080cdb),url(/assets/night-ascent.png) center center / cover no-repeat}.placeholder-visual__ridge{min-height:180px;border-radius:8px;border:1px solid rgba(103,216,245,.2);background:linear-gradient(180deg,#06080c0f,#06080cd1),linear-gradient(135deg,#67d8f51f,#b8ea6d14)}.placeholder-visual__caption{margin-top:14px;color:#dbe3ef}.join-steps{display:grid;gap:18px}.panel{display:grid;gap:16px}.panel__header{display:grid;gap:8px}.panel__step{width:fit-content;background:#67d8f51a;border:1px solid rgba(103,216,245,.18)}.rule-list{display:grid;gap:10px;margin:0;padding-left:18px}.checkbox-row{justify-content:flex-start;align-items:flex-start}.checkbox-row input{margin-top:3px}.field{display:grid;gap:10px}.field__label{font-size:.95rem}.text-input{width:100%;min-width:0;min-height:48px;padding:0 14px;background:#090c12e0;color:var(--text);border:1px solid rgba(150,180,210,.2);border-radius:8px}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:stretch}.copy-row>*{min-width:0}.copy-row .button{white-space:nowrap}.avatar-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.avatar-picker__swatch{min-height:92px;padding:12px;background:#0b0f16eb;border:1px solid rgba(150,180,210,.16);border-radius:8px;display:grid;justify-items:center;gap:10px;color:var(--text)}.avatar-picker__swatch:disabled{cursor:default;opacity:.65}.avatar-picker__swatch--selected{border-color:#b8ea6dc2;box-shadow:inset 0 0 0 1px #b8ea6d5c}.avatar-picker__core{width:34px;height:34px;border-radius:999px;border:2px solid rgba(255,255,255,.22)}.avatar-picker__core--summit-green{background:#4cb063}.avatar-picker__core--summit-gold{background:#d7ab45}.avatar-picker__core--summit-blue{background:#4e78d8}.avatar-picker__core--summit-red{background:#cb5e52}.avatar-picker__core--summit-silver{background:#9fb1c9}.avatar-picker__core--summit-violet{background:#8d72db}.avatar-picker__core--summit-cyan{background:#50cfe8}.avatar-picker__core--summit-ember{background:#d97b3f}.avatar-picker__core--summit-white{background:#ecf2ff}.avatar-picker__core--summit-black{background:#1a202c}.avatar-picker__core--summit-lime{background:#9ed746}.avatar-picker__core--summit-sky{background:#73b7f5}.avatar-picker__name{text-align:center;font-size:.82rem}@media(min-width:860px){.hero,.gate-hero,.join-layout{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr)}.join-steps{align-content:start}}@media(max-width:859px){.app-shell{padding-bottom:44px}.hero{min-height:auto}.page--home .hero__copy{padding-top:0}}@media(max-width:640px){.gate-hero__copy,.join-layout__intro,.empty-state,.panel,.gate-card,.placeholder-visual__frame{padding:18px}.hero{gap:18px}.hero__image,.page--home .hero__image{min-height:340px}.gate-card__header,.gate-card__body,.gate-hero__status-row,.metrics-strip,.copy-row{display:grid;justify-content:stretch}.metrics-strip{grid-template-columns:1fr;gap:12px}.copy-row{grid-template-columns:1fr}}.gate-hero__visual{min-width:0}.ascent-visual{display:grid;gap:16px;padding:20px;background:var(--panel);border:1px solid var(--border);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ascent-visual__topline,.countdown__header,.ascent-visual__legend{display:flex;gap:12px;align-items:flex-end;justify-content:space-between}.ascent-visual__eyebrow{margin-bottom:8px}.ascent-visual__title{margin:0;font-size:clamp(1.2rem,2.2vw,1.7rem)}.ascent-visual__count,.ascent-visual__legend-chip,.participant-chip__badge,.participant-chip__status,.countdown__eyebrow{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:.78rem}.ascent-visual__count{background:#67d8f51f;border:1px solid rgba(103,216,245,.24);color:#d7f7ff}.ascent-visual__legend{align-items:center}.ascent-visual__legend-chip{background:#96b4d21f;border:1px solid rgba(150,180,210,.18);color:var(--muted)}.ascent-visual__legend-chip--summit{color:#f4d58f;border-color:#f0c36a4d;background:#f0c36a1f}.countdown{display:grid;gap:12px;padding:16px;border:1px solid rgba(103,216,245,.24);border-radius:8px;background:#080d14d1}.countdown__summary{font-size:clamp(1.1rem,2vw,1.5rem)}.countdown__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.countdown__cell{display:grid;gap:4px;min-height:78px;align-content:center;justify-items:center;padding:10px 8px;border-radius:8px;background:#0d121ce6;border:1px solid rgba(150,180,210,.14)}.countdown__value{font-size:clamp(1.4rem,3vw,2rem);font-weight:700}.countdown__label,.participant-chip__status{color:var(--muted)}.ascent-visual__stage{position:relative;min-height:360px;aspect-ratio:12 / 10;overflow:hidden;border-radius:8px;border:1px solid rgba(103,216,245,.2);background:linear-gradient(180deg,#070c1229,#070c12e0),url(/assets/night-ascent.png) center center / cover no-repeat,#080c12eb}.ascent-visual__skyline{position:absolute;inset:0;background:linear-gradient(180deg,#67d8f514,#67d8f500 32%),linear-gradient(0deg,#b8ea6d1f,#b8ea6d00 26%)}.ascent-visual__path{position:absolute;inset:0}.ascent-visual__path-segment{position:absolute;height:2px;border-radius:999px;background:linear-gradient(90deg,#b8ea6dd9,#67d8f5bf);box-shadow:0 0 12px #67d8f547}.ascent-visual__path-segment--one{left:13%;bottom:16%;width:24%;transform:rotate(-7deg)}.ascent-visual__path-segment--two{left:31%;bottom:30%;width:28%;transform:rotate(10deg)}.ascent-visual__path-segment--three{left:48%;bottom:49%;width:22%;transform:rotate(-12deg)}.ascent-visual__path-segment--four{left:64%;bottom:67%;width:14%;transform:rotate(16deg)}.ascent-marker{position:absolute;width:14px;height:14px;transform:translate(-50%);pointer-events:none}.ascent-marker__core,.participant-chip__avatar{width:100%;height:100%}.ascent-marker--joined{opacity:.88}.ascent-marker--active{filter:drop-shadow(0 0 8px rgba(103,216,245,.42))}.ascent-marker--completed{filter:drop-shadow(0 0 10px rgba(240,195,106,.44))}.ascent-marker--completed .ascent-marker__core{box-shadow:0 0 0 2px #f0c36a66}.ascent-marker--exited,.ascent-marker--disabled{opacity:.42;filter:grayscale(.2)}.participant-roster{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;max-height:260px;overflow:auto;padding-right:2px}.participant-chip{display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;gap:8px;align-items:center;min-height:40px;padding:8px 10px;border-radius:8px;background:#0b0f16e0;border:1px solid rgba(150,180,210,.12)}.participant-chip__avatar{width:18px;height:18px}.participant-chip__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-chip__badge{background:#f0c36a29;border:1px solid rgba(240,195,106,.3);color:#f4d58f}.participant-chip__status{background:#96b4d21f;border:1px solid rgba(150,180,210,.18)}.participant-chip--completed{border-color:#f0c36a47}.participant-chip--active{border-color:#67d8f542}.participant-chip--exited,.participant-chip--disabled{opacity:.6}@media(min-width:860px){.gate-hero--copy-only{grid-template-columns:minmax(0,1fr)}.gate-hero--visualized{grid-template-columns:minmax(0,.92fr) minmax(340px,1.08fr)}}@media(max-width:640px){.ascent-visual,.countdown{padding:18px}.ascent-visual__topline,.countdown__header,.ascent-visual__legend{align-items:stretch;flex-direction:column}.countdown__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ascent-visual__stage{min-height:300px;aspect-ratio:10 / 11}.participant-roster{grid-template-columns:repeat(2,minmax(0,1fr));max-height:320px}.participant-chip{grid-template-columns:18px minmax(0,1fr) auto}.participant-chip__status{grid-column:2 / 4;justify-self:start}}.button--danger{background:#f0b9951f;color:#ffe5d4;border-color:#f0b9955c}.button--danger:hover:not(:disabled){background:#f0b9952e}.me-layout{display:grid;gap:24px;align-items:start}.me-page__panel{gap:18px}.me-page__header{gap:10px}.me-page__identity-row,.me-page__actions,.modal__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.me-page__identity,.me-page__badge,.me-page__day-chip{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;font-size:.9rem}.me-page__identity{background:#67d8f51f;border:1px solid rgba(103,216,245,.2)}.me-page__badge{background:#f0c36a1f;border:1px solid rgba(240,195,106,.3);color:#f4d58f;font-weight:700}.me-page__day-chip{width:fit-content;background:#96b4d21f;border:1px solid rgba(150,180,210,.2);color:#d7deea}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:18px;background:#04070cc2}.modal{width:min(100%,420px);display:grid;gap:16px;padding:20px;background:#0a0e14f5;border:1px solid var(--border);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal__header,.modal__body{display:grid;gap:8px}.modal__header h2{margin:0;font-size:1.2rem}@media(min-width:860px){.me-layout--visualized{grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr)}}@media(max-width:640px){.me-page__actions,.modal__actions{display:grid}.modal{padding:18px}}.page--admin,.page--admin-login{max-width:1040px}.admin-login-layout{min-height:min(72vh,680px);align-content:center;justify-items:center}.admin-login-panel{width:min(100%,460px)}.admin-stack{gap:20px}.admin-header,.admin-gate-row,.admin-participant__header,.admin-actions{display:flex;gap:14px;align-items:center;justify-content:space-between}.admin-header h1,.admin-participant h2{margin:0}.admin-form__grid{display:grid;gap:14px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.admin-list,.admin-gate-list,.admin-participant-list{display:grid;gap:12px}.admin-gate-row,.admin-participant,.admin-private-link-fallback{min-width:0;padding:14px;border-radius:8px;border:1px solid rgba(150,180,210,.16);background:#0b0f16c7}.admin-gate-row{width:100%;color:var(--text);text-align:left}.admin-gate-row:hover{border-color:#67d8f552}.admin-gate-row__main{display:grid;gap:4px;min-width:0}.admin-gate-row__main strong,.admin-gate-row__count,.admin-participant__header h2,.admin-participant__header .message{overflow-wrap:anywhere}.admin-gate-row__count{color:#d7deea;text-align:right}.admin-participant{display:grid;gap:14px}.admin-participant__meta,.admin-actions{flex-wrap:wrap}.admin-participant__meta{display:flex;gap:10px;align-items:center;color:var(--muted)}.admin-participant__meta strong{min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;color:#f4d58f;background:#f0c36a1f;border:1px solid rgba(240,195,106,.3)}.status-pill--joined,.status-pill--disabled,.status-pill--exited{background:#96b4d21f;border-color:#96b4d238;color:#d7deea}@media(max-width:700px){.admin-header,.admin-gate-row,.admin-participant__header,.admin-actions,.admin-form__grid{display:grid;justify-content:stretch}.admin-gate-row__count{text-align:left}}.turnstile-widget{display:grid;gap:10px;padding:14px;border:1px solid rgba(103,216,245,.18);border-radius:8px;background:#090c128f}.turnstile-widget .cf-turnstile{min-height:65px}
