:root{--space-black:oklch(16% .012 60);--surface-1:oklch(20% .014 60);--surface-2:oklch(23.5% .016 58);--surface-3:oklch(28% .018 56);--hairline:oklch(34% .02 58);--hairline-strong:oklch(42% .022 56);--control-edge:oklch(50% .022 58);--text:oklch(94% .008 75);--text-dim:oklch(74% .012 70);--text-faint:oklch(65% .012 68);--accent:oklch(72% .19 45);--accent-hover:oklch(77% .18 48);--accent-bright:oklch(84% .14 62);--accent-glow:oklch(72% .19 45/.45);--on-accent:oklch(19% .03 55);--star-gold:#f5c46e;--go:oklch(82% .13 152);--go-dim:oklch(68% .11 152);--no-go:var(--text-dim);--alert:oklch(80% .15 55);--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--space-4xl:96px;--font-display:"Bricolage Grotesque", "Bricolage Grotesque Fallback", ui-sans-serif, system-ui, sans-serif;--font-body:"Atkinson Hyperlegible", "Atkinson Hyperlegible Fallback", ui-sans-serif, system-ui, sans-serif;--font-mono:"Martian Mono", ui-monospace, "SFMono-Regular", monospace;--text-xs:.8rem;--text-sm:.9rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.563rem;--text-2xl:1.953rem;--text-hero:clamp(2.75rem, 11vw, 5rem);--text-display:clamp(1.9rem, 6vw, 3rem);--text-lead:clamp(1.05rem, 3.5vw, 1.3rem);--lh-tight:1.04;--lh-snug:1.2;--lh-body:1.62;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--shadow-sm:0 1px 2px oklch(0% 0 0/.4);--shadow-md:0 8px 24px oklch(0% 0 0/.4);--shadow-lg:0 20px 60px oklch(0% 0 0/.5);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--dur-fast:.12s;--dur-mid:.28s;--dur-slow:.56s;--z-rail:40;--z-nav:60;--z-overlay:400;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#app{min-height:100%}html{-webkit-text-size-adjust:100%}body{background:var(--space-black);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-kerning:normal;margin:0;font-weight:400}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-family:var(--font-display);line-height:var(--lh-tight);letter-spacing:-.01em;font-weight:700}a{color:var(--accent-bright);text-underline-offset:3px;text-decoration-thickness:1px}::selection{background:var(--accent);color:var(--on-accent)}::placeholder{color:var(--text-faint);opacity:1}:focus-visible{outline:2.5px solid var(--accent);outline-offset:3px;border-radius:4px}.skip-link{top:var(--space-sm);left:var(--space-sm);z-index:var(--z-overlay);padding:var(--space-sm) var(--space-md);background:var(--surface-2);border:1px solid var(--accent);border-radius:var(--radius-md);color:var(--text);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;transform:translateY(calc(-100% - var(--space-lg)));text-decoration:none;position:fixed}.skip-link:focus-visible{transform:none}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-bright);margin:0;font-weight:500}.eyebrow--dim{color:var(--text-dim)}.shell{z-index:1;width:min(100% - 2 * var(--space-lg), 62rem);padding-block:clamp(var(--space-2xl), 9vh, var(--space-4xl));padding-bottom:max(var(--space-2xl), calc(var(--space-2xl) + env(safe-area-inset-bottom)));margin-inline:auto;position:relative}.shell--narrow{width:min(100% - 2 * var(--space-lg), 34rem)}.shell:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0000,oklch(13% .012 60/.55) 16% 84%,#0000);position:absolute;inset:-48px -8%;-webkit-mask-image:linear-gradient(#0000,#000 48px calc(100% - 48px),#0000);mask-image:linear-gradient(#0000,#000 48px calc(100% - 48px),#0000)}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:48px;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out-quart), background-color var(--dur-fast) var(--ease-out-quart), border-color var(--dur-fast) var(--ease-out-quart), box-shadow var(--dur-fast) var(--ease-out-quart);border:1px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)scale(.99)}.btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 0 var(--accent-glow)}.btn--primary:hover{background:var(--accent-hover);box-shadow:0 0 28px var(--accent-glow);transform:translateY(-1px)}.btn--ghost{color:var(--text);border-color:var(--hairline-strong);background:oklch(13% .012 60/.55)}.btn--ghost:hover{border-color:var(--accent);color:var(--accent-bright)}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.navlink{align-items:center;gap:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;color:var(--text-dim);padding:14px var(--space-2xs);margin-inline:calc(-1 * var(--space-2xs));transition:color var(--dur-fast) var(--ease-out-quart);text-decoration:none;display:inline-flex}.navlink:hover{color:var(--accent-bright)}.navsep{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-dim);opacity:.45;-webkit-user-select:none;user-select:none}.field{gap:var(--space-xs);flex-direction:column;display:flex}.field>.label,.field-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);font-weight:500}.input,.textarea{width:100%;min-height:48px;padding:var(--space-sm) var(--space-md);background:var(--surface-1);border:1px solid var(--control-edge);border-radius:var(--radius-md);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease-out-quart), box-shadow var(--dur-fast) var(--ease-out-quart), background-color var(--dur-fast) var(--ease-out-quart)}.textarea{min-height:96px;padding:var(--space-sm) var(--space-md);resize:vertical;line-height:1.5}.input:hover,.textarea:hover{border-color:var(--hairline-strong)}.input:focus,.textarea:focus{border-color:var(--accent);background:var(--surface-2);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.input:focus-visible,.textarea:focus-visible{outline:2.5px solid var(--accent);outline-offset:2px}.input--mono{font-family:var(--font-mono);letter-spacing:.14em}.input-reveal{flex:8rem;min-width:7rem;display:flex;position:relative}.input-reveal>.input{text-align:center;padding-right:3.25rem}.input-reveal>.input::-ms-reveal{display:none}.input-reveal>.input::-ms-clear{display:none}.input-reveal-btn{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--text-faint);cursor:pointer;transition:color var(--dur-fast) var(--ease-out-quart);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:50%;right:2px;transform:translateY(-50%)}.input-reveal-btn:hover,.input-reveal-btn[aria-pressed=true]{color:var(--accent-bright)}.field-label--accepted{color:var(--go);transition:color var(--dur-fast) var(--ease-out-quart)}.input--accepted,.input--accepted:disabled{border-color:var(--go);color:var(--go);background:var(--surface-2);opacity:1;-webkit-text-fill-color:var(--go);animation:accept-flash var(--dur-slow) var(--ease-out-quart) both}@keyframes accept-flash{0%{border-color:var(--hairline);box-shadow:0 0 0 0 color-mix(in oklch, var(--go) 60%, transparent)}35%{border-color:var(--go);box-shadow:0 0 0 4px color-mix(in oklch, var(--go) 45%, transparent)}to{border-color:var(--go);box-shadow:0 0 18px color-mix(in oklch, var(--go) 35%, transparent)}}.card{background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:var(--space-lg)}.alert{align-items:center;gap:var(--space-xs);color:var(--alert);font-size:var(--text-sm);margin:0;display:flex}.chip{align-items:center;gap:var(--space-2xs);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-pill);border:1px solid var(--hairline);color:var(--text-dim);padding:3px 10px;font-weight:500;display:inline-flex}.chip--go{color:var(--go);border-color:color-mix(in oklch, var(--go) 45%, transparent)}.chip:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.rise{animation:rise var(--dur-slow) var(--ease-out-expo) both;animation-delay:calc(var(--i,0) * 80ms)}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-5px)}40%,60%{transform:translate(5px)}}.shake{animation:shake .42s var(--ease-out-quart) both}@keyframes twinkle{0%,to{opacity:.2}50%{opacity:1}}@keyframes idle-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.flyby{opacity:0;will-change:transform, opacity;animation-name:flyby;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;top:0;left:0}@keyframes flyby{0%{transform:translate3d(var(--fly-from-x), var(--fly-from-y), 0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translate3d(var(--fly-to-x), var(--fly-to-y), 0);opacity:0}}.comet-arc{animation-name:comet-arc;animation-timing-function:ease-in-out;animation-fill-mode:forwards}@keyframes comet-arc{0%,to{transform:translateY(0)}50%{transform:translateY(calc(-1 * var(--arc-dip,24px)))}}.comet-sheet{--comet-w:128px;width:var(--comet-w);height:calc(var(--comet-w) / 2);overflow:hidden}.comet-sheet:before{content:"";width:calc(var(--comet-w) * 6);background-image:var(--comet-src);background-repeat:no-repeat;background-size:100% 100%;height:100%;animation:.72s steps(6,end) infinite comet-shimmer;display:block}@keyframes comet-shimmer{to{transform:translateX(calc(var(--comet-w) * -6))}}@media (prefers-reduced-motion:reduce){.comet-sheet:before{animation:none}}.sky-drift{will-change:transform;animation:150s ease-in-out infinite alternate sky-drift}.sky-layer{will-change:transform;position:absolute;inset:0}@keyframes sky-drift{0%{transform:translate(-17px,11px)}to{transform:translate(17px,-11px)}}.sky-haze{animation:60s ease-in-out infinite nebula-breathe}@keyframes nebula-breathe{0%,to{opacity:1}50%{opacity:.85}}@media (prefers-reduced-motion:reduce){.sky-drift,.sky-haze{animation:none}}.satellite-beacon{animation:2.4s step-end infinite beacon}@keyframes beacon{0%,55%{opacity:1}60%,to{opacity:0}}.satellite-nav-port{animation:2.4s step-end infinite nav-port}.satellite-nav-starboard{animation:2.4s step-end infinite nav-starboard}@keyframes nav-port{0%,20%{opacity:1}25%,to{opacity:0}}@keyframes nav-starboard{0%,45%{opacity:0}50%,70%{opacity:1}75%,to{opacity:0}}@keyframes flicker{0%,to{opacity:.85;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.12)}}@keyframes hint-nudge{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes corona-breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.85;transform:scale(1.08)}}@keyframes corona-spark{0%,49%{opacity:1;transform:scale(1)}50%,to{opacity:.2;transform:scale(.65)}}@keyframes orbit-cw{to{transform:rotate(360deg)}}@keyframes orbit-ccw{to{transform:rotate(-360deg)}}@keyframes shimmer-sweep{0%{opacity:0;transform:translate(-140%)}15%,85%{opacity:.6}to{opacity:0;transform:translate(840%)}}@keyframes ring-glint{0%{transform:translateX(calc(-1 * var(--gx))) translateY(2px);opacity:0}12%{opacity:1}50%{transform:translate(0)translateY(-2px)}88%{opacity:1}to{transform:translateX(var(--gx)) translateY(2px);opacity:0}}@keyframes ring-sway{0%,to{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}@keyframes candle-flame{0%,49%{opacity:1;transform:scaleY(1)translateY(0)}50%,to{opacity:.85;transform:scaleY(.82)translateY(1px)}}@keyframes confetti-burst{0%{opacity:0;transform:translate(0)scale(.4)}30%{opacity:1}to{transform:translate(var(--cx), var(--cy)) scale(1);opacity:1}}@keyframes confetti-drift{0%,to{transform:translate(var(--cx), var(--cy)) scale(1)}50%{transform:translate(var(--cx), calc(var(--cy) + 3px)) scale(1)}}.pixel{image-rendering:pixelated}.hero{isolation:isolate;min-height:100dvh;padding:clamp(var(--space-xl), 8vh, var(--space-4xl)) var(--space-lg);padding-bottom:max(var(--space-2xl), calc(var(--space-2xl) + env(safe-area-inset-bottom)));background:radial-gradient(120% 90% at 78% 12%,oklch(24% .03 55/.5),#0000 60%),radial-gradient(90% 70% at 0 100%,oklch(20% .02 60/.6),#0000 55%);align-items:center;display:flex;position:relative;overflow:hidden}.hero-grid{z-index:1;width:min(100% - 2 * var(--space-lg), 66rem);gap:clamp(var(--space-xl), 6vw, var(--space-3xl));align-items:center;margin-inline:auto;display:grid;position:relative}.hero-copy{gap:var(--space-md);flex-direction:column;display:flex;position:relative}.copy-vignette{position:relative}.copy-vignette:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(closest-side,oklch(16% .012 60/.82),oklch(16% .012 60/.5) 58%,#0000 100%);position:absolute;inset:-14% -18%}.hero-copy.copy-vignette:before{background:radial-gradient(78% 68% at 34%,oklch(13% .012 60/.9),oklch(13% .012 60/.72) 52%,oklch(13% .012 60/.34) 78%,#0000 100%);inset:-8% -24% -6% -22%}.hero-title{font-size:var(--text-hero);font-weight:800;line-height:var(--lh-tight);letter-spacing:-.03em;margin-top:var(--space-2xs)}.hero-one{color:var(--accent-bright)}.hero-teaser{max-width:40ch;color:var(--text-dim);font-size:var(--text-lead);margin-top:var(--space-2xs);line-height:1.55}.hero-form{margin-top:var(--space-sm);max-width:30rem}.hero-hint{font-size:var(--text-xs);color:var(--text-faint);margin:0}@media (width<=819px){.hero{padding:max(var(--space-lg), env(safe-area-inset-top)) var(--space-lg) max(var(--space-lg), env(safe-area-inset-bottom))}.hero-grid{gap:var(--space-md)}.hero-copy{gap:var(--space-sm);text-align:center;align-items:center}.hero-title{font-size:clamp(2.35rem,10.5vw,5rem)}.hero-teaser{font-size:var(--text-base);text-align:left;line-height:1.5}.hero-copy.copy-vignette:before{background:radial-gradient(86% 70%,oklch(13% .012 60/.9),oklch(13% .012 60/.72) 52%,oklch(13% .012 60/.34) 78%,#0000 100%);inset:-8% -18% -6%}.hero-form{margin-top:var(--space-2xs)}.hero-form .alert{font-size:var(--text-xs);line-height:1.45}.hero-form .alert+.hero-hint{display:none}}@media (width<=819px) and (height<=700px){.hero{padding-block:max(var(--space-md), env(safe-area-inset-top)) max(var(--space-md), env(safe-area-inset-bottom))}}@media (width>=820px){.hero-grid{grid-template-columns:1.05fr .95fr}.hero-title{margin-top:var(--space-xs)}}.dither-scene{position:relative}.dither-scene>div{position:absolute;inset:0}.dither-scene canvas{image-rendering:pixelated}.dither-scene:not([data-live]) canvas{visibility:hidden}.dither-poster{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;z-index:1;pointer-events:none;opacity:1;transition:opacity .7s var(--ease-out-quart,ease);position:absolute;inset:0}.dither-poster[data-live]{opacity:0}@media (prefers-reduced-motion:reduce){.dither-poster{transition:none}}.hero-dither,.flight-dither{z-index:0;position:absolute;inset:0}.baked-body{image-rendering:pixelated;display:block}.bake-fill{position:absolute;inset:0}.flight-copy{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:18px 28px;display:flex}.flight-copy:before{background:radial-gradient(closest-side,oklch(13% .012 60/.92),oklch(13% .012 60/.72) 45%,oklch(13% .012 60/.32) 72%,#0000 100%);inset:-12% -22%}.unlock{isolation:isolate;min-height:100dvh;padding:var(--space-2xl) var(--space-lg);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.unlock-card{z-index:1;gap:var(--space-md);text-align:left;flex-direction:column;width:min(100%,26rem);display:flex;position:relative}.unlock-icon{margin-bottom:var(--space-xs);justify-content:center;display:flex}.unlock-title{font-size:var(--text-2xl);font-weight:700}.unlock-sub{color:var(--text-dim);font-size:var(--text-base);margin-top:calc(-1 * var(--space-2xs))}.page-head{gap:var(--space-xs);margin-bottom:var(--space-xl);flex-direction:column;display:flex}.page-title{font-size:var(--text-display);letter-spacing:-.02em;overflow-wrap:anywhere;font-weight:800}.topnav{z-index:var(--z-nav);justify-content:space-between;align-items:center;gap:var(--space-2xs) var(--space-md);width:min(100% - 2 * var(--space-lg), 62rem);padding-top:max(var(--space-md), env(safe-area-inset-top));flex-wrap:wrap;margin:0 auto;display:flex;position:relative}.topnav:before{content:"";z-index:-1;left:50%;top:calc(-1 * max(var(--space-md), env(safe-area-inset-top)));width:100vw;height:calc(max(var(--space-md), env(safe-area-inset-top)) + 5.5rem);pointer-events:none;background:linear-gradient(oklch(16% .012 60/.82),oklch(16% .012 60/.5) 58%,#0000 100%);position:absolute;transform:translate(-50%)}.wordmark{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--text);font-weight:700;text-decoration:none}.wordmark .dot{color:var(--accent-bright)}.topnav-links,.topnav-item{align-items:center;gap:var(--space-md);display:inline-flex}@media (width<=480px){.topnav{gap:var(--space-2xs) var(--space-xs)}.topnav-links,.topnav-item{gap:var(--space-sm)}.navsep{display:none}.navlink{letter-spacing:.08em;font-size:.7rem}}.briefing{gap:var(--space-lg);padding:var(--space-xl);background:linear-gradient(180deg, var(--surface-1), oklch(18% .013 60));border:1px solid var(--hairline);border-radius:var(--radius-lg);display:grid}.briefing-rows{gap:var(--space-lg);display:grid}@media (width>=560px){.briefing-rows{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}}.brief-item{flex-direction:column;gap:4px;display:flex}.brief-item .k{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--accent-bright)}.brief-item .v{font-size:var(--text-lg);font-weight:700;font-family:var(--font-display);line-height:1.2}.brief-item .sub{color:var(--text-dim);font-size:var(--text-sm)}.results{margin:var(--space-md) 0 0;gap:var(--space-xs);flex-direction:column;padding:0;list-style:none;display:flex}.result-btn{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;min-height:52px;padding:var(--space-sm) var(--space-md);background:var(--surface-1);border:1px solid var(--control-edge);border-radius:var(--radius-md);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);text-align:left;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out-quart), background-color var(--dur-fast) var(--ease-out-quart), transform var(--dur-fast) var(--ease-out-quart);display:flex}.result-btn:hover{border-color:var(--accent);background:var(--surface-2);transform:translate(2px)}.muted{color:var(--text-dim)}.form-stack{gap:var(--space-lg);flex-direction:column;display:flex}.radio-set{gap:var(--space-sm);display:grid}@media (width>=460px){.radio-set{grid-template-columns:1fr 1fr}}.radio-card{align-items:center;gap:var(--space-sm);min-height:52px;padding:var(--space-sm) var(--space-md);border:1px solid var(--control-edge);border-radius:var(--radius-md);background:var(--surface-1);cursor:pointer;font-size:var(--text-base);transition:border-color var(--dur-fast) var(--ease-out-quart);display:flex}.radio-card:hover{border-color:var(--hairline-strong)}.radio-card:has(input:checked){border-color:var(--accent);background:var(--surface-2)}.radio-card:has(input:focus-visible){outline:2.5px solid var(--accent);outline-offset:2px}.radio-card input{accent-color:var(--accent);width:18px;height:18px}.count-row{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.confirm-actions{gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.received{align-items:flex-start;gap:var(--space-md);flex-direction:column;display:flex}.received-late{animation:rise var(--dur-slow) var(--ease-out-expo) .95s both}.pass-stage{margin-block:var(--space-sm);position:relative}.pass{background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--radius-md);width:min(100%,31rem);box-shadow:var(--shadow-md);--stub-w:7.25rem;-webkit-mask-image:radial-gradient(circle 9px at calc(100% - var(--stub-w)) 0, transparent 96%, black 100%), radial-gradient(circle 9px at calc(100% - var(--stub-w)) 100%, transparent 96%, black 100%);mask-image:radial-gradient(circle 9px at calc(100% - var(--stub-w)) 0, transparent 96%, black 100%), radial-gradient(circle 9px at calc(100% - var(--stub-w)) 100%, transparent 96%, black 100%);animation:pass-stamp .34s var(--ease-out-quart) .48s both;display:flex;-webkit-mask-composite:source-in;mask-composite:intersect}@keyframes pass-stamp{0%{opacity:0;transform:scale(1.08)translateY(-10px)}to{opacity:1;transform:none}}.pass-main{gap:var(--space-xs);min-width:0;padding:var(--space-lg);flex-direction:column;flex:auto;display:flex}.pass-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);font-weight:500}.pass-name{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.01em;font-weight:800;line-height:var(--lh-snug);overflow-wrap:break-word}.pass-crew{align-items:center;gap:var(--space-sm);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text);flex-wrap:wrap;display:flex}.pass-confirmed{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--go);border:1px solid var(--go-dim);border-radius:var(--radius-pill);padding:3px 10px;font-weight:700}.pass-code{margin-top:var(--space-xs);opacity:.75}.pass-stub{flex:0 0 var(--stub-w);justify-content:center;align-items:center;gap:var(--space-xs);padding:var(--space-md);border-left:1px dashed var(--hairline-strong);flex-direction:column;display:flex}.pass-stub-line{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.1em;color:var(--text);font-weight:700}.pass-stub-line--dim{color:var(--text-dim);font-weight:500}.burst{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.burst-star{background:var(--star-gold);width:3px;height:3px;box-shadow:0 -3px var(--star-gold), 0 3px var(--star-gold), -3px 0 var(--star-gold), 3px 0 var(--star-gold);opacity:0;animation:burst-star .68s var(--ease-out-quart) var(--bdelay,.56s) both;position:absolute}@keyframes burst-star{0%{opacity:0;transform:translate(0)scale(.4)}18%{opacity:1}to{opacity:0;transform:translate(var(--bx), var(--by)) scale(1)}}.gallery-grid{columns:2;column-gap:var(--space-sm);margin:var(--space-xl) 0 0;padding:0;list-style:none}@media (width>=560px){.gallery-grid{columns:3}}@media (width>=900px){.gallery-grid{columns:4}}.gallery-grid li{break-inside:avoid;margin-bottom:var(--space-sm);list-style:none}.tile-in{animation:tile-in .48s var(--ease-out-quart) both}@keyframes tile-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.beam-canvas,.beam-scanline{opacity:0;pointer-events:none;position:absolute;inset:0}.beam-canvas{width:100%;height:100%;image-rendering:pixelated;background:var(--surface-1);transition:opacity .24s var(--ease-out-quart)}.beaming .beam-canvas{opacity:1;transition:none}.beam-scanline{background:linear-gradient(#0000 0%,oklch(84% .14 62/.28) 46%,oklch(94% .008 75/.5) 50%,oklch(84% .14 62/.28) 54%,#0000 100%) 0 0/100% 34% no-repeat}.beaming .beam-scanline{opacity:1;animation:.78s linear forwards beam-scan}@keyframes beam-scan{0%{background-position:0 -34%}to{background-position:0 134%}}.photo{border-radius:var(--radius-md);border:1px solid var(--hairline);line-height:0;display:block;position:relative;overflow:hidden}.photo img{width:100%;height:auto;transition:transform var(--dur-mid) var(--ease-out-quart);display:block}.photo:hover img{transform:scale(1.04)}.photo .by{padding:18px var(--space-sm) 6px;font-family:var(--font-mono);letter-spacing:.04em;color:var(--text);background:linear-gradient(#0000,oklch(12% .01 60/.85));font-size:.68rem;line-height:1.2;position:absolute;bottom:0;left:0;right:0}.photo .tile-caption{display:none}@media (width>=560px){.photo .tile-caption{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}}@media (width<=559.98px){.photo .by--caption-only{display:none}}.lightbox{width:auto;max-width:none;height:auto;max-height:none;padding:var(--space-xl) var(--space-md);color:var(--text);background:oklch(12% .01 60/.92);border:0;margin:0;position:fixed;inset:0}.lightbox[open]{justify-content:center;align-items:center;display:flex}.lightbox::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:oklch(10% .008 60/.72)}.lightbox-figure{align-items:center;gap:var(--space-sm);pointer-events:none;flex-direction:column;max-width:100%;max-height:100%;margin:0;display:flex}.lightbox-img{object-fit:contain;border-radius:var(--radius-md);border:1px solid var(--hairline);width:auto;max-width:min(94vw,1100px);height:auto;max-height:80dvh;box-shadow:var(--shadow-lg);pointer-events:auto}.lightbox-meta{max-width:60ch;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--text-dim);text-align:center;pointer-events:auto;margin:0}.lightbox-close,.lightbox-nav{border-radius:var(--radius-pill);border:1px solid var(--hairline-strong);width:44px;height:44px;color:var(--text);cursor:pointer;pointer-events:auto;transition:transform var(--dur-fast) var(--ease-out-quart), border-color var(--dur-fast) var(--ease-out-quart), color var(--dur-fast) var(--ease-out-quart), background-color var(--dur-fast) var(--ease-out-quart);background:oklch(20% .014 60/.72);justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute}.lightbox-close:hover,.lightbox-nav:hover{border-color:var(--accent);color:var(--accent-bright);background:oklch(23.5% .016 58/.85)}.lightbox-close:focus-visible,.lightbox-nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.lightbox-close{top:max(var(--space-md), env(safe-area-inset-top));right:max(var(--space-md), env(safe-area-inset-right))}.lightbox-close:active{transform:scale(.95)}.lightbox-nav{top:50%;transform:translateY(-50%)}.lightbox-nav:active{transform:translateY(-50%)scale(.95)}.lightbox-prev{left:max(var(--space-md), env(safe-area-inset-left))}.lightbox-next{right:max(var(--space-md), env(safe-area-inset-right))}.empty{margin-top:var(--space-xl);padding:var(--space-2xl) var(--space-xl);border:1px dashed var(--hairline-strong);border-radius:var(--radius-lg);text-align:center;align-items:center;gap:var(--space-sm);flex-direction:column;display:flex}.uplink-rail{margin-top:var(--space-md);background:var(--surface-2);border-radius:999px;height:4px;overflow:hidden}.uplink-rail-fill{background:var(--go);height:100%;transition:width var(--dur-mid) var(--ease-out-quart);border-radius:999px;display:block;box-shadow:0 0 8px oklch(82% .13 152/.5)}.uploader{align-items:flex-end;gap:var(--space-md);padding:var(--space-lg);background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-lg);flex-wrap:wrap;display:flex}.optin{align-items:flex-start;gap:var(--space-sm);cursor:pointer;color:var(--text-dim);font-size:var(--text-sm);line-height:1.45;display:flex}.optin input{accent-color:var(--accent);flex:none;width:18px;height:18px;margin-top:2px}.wall{margin:var(--space-xl) 0 0;gap:var(--space-md);grid-template-columns:1fr;padding:0;list-style:none;display:grid}@media (width>=640px){.wall{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.wall{grid-template-columns:repeat(3,1fr)}}.note-card{gap:var(--space-md);padding:var(--space-lg);background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-lg);flex-direction:column;display:flex}.note-body{font-size:var(--text-lg);color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.note-body:before{content:"“";color:var(--accent-bright);margin-right:1px}.note-body:after{content:"”";color:var(--accent-bright);margin-left:1px}.note-by{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-dim);margin:auto 0 0;font-size:.72rem}.note-by:before{content:"// ";color:var(--text-faint)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.file-trigger{cursor:pointer}.file-trigger:focus-within .btn{outline:2.5px solid var(--accent);outline-offset:3px}.file-trigger:has(input:focus-visible) .btn{outline:2.5px solid var(--accent);outline-offset:3px}.admin{z-index:1;width:min(100% - 2 * var(--space-lg), 74rem);padding:max(var(--space-lg), env(safe-area-inset-top)) 0 var(--space-3xl);margin:0 auto;position:relative}.admin-head{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding-bottom:var(--space-lg);border-bottom:1px solid var(--hairline);flex-wrap:wrap;display:flex}.admin h1{font-size:var(--text-xl)}.admin-section{margin-top:var(--space-2xl)}.admin-section>h2{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);margin-bottom:var(--space-md);font-weight:700}.tiles{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));display:grid}.tile{padding:var(--space-md);background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-md)}.tile .n{font-family:var(--font-mono);font-size:var(--text-xl);color:var(--text);font-variant-numeric:tabular-nums;font-weight:700}.tile .l{font-size:var(--text-xs);color:var(--text-dim);margin-top:2px}.toolbar{gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;align-items:center;display:flex}.switch{align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);cursor:pointer;display:inline-flex}.switch input{accent-color:var(--accent);width:18px;height:18px}.admin-input{min-height:40px;padding:8px var(--space-sm);background:var(--surface-1);border:1px solid var(--hairline);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-body);font-size:var(--text-sm)}.admin-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow);outline:none}.btn-sm{border-radius:var(--radius-sm);border:1px solid var(--hairline-strong);background:var(--surface-2);min-height:40px;color:var(--text);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out-quart), background-color var(--dur-fast) var(--ease-out-quart);padding:8px 14px}.btn-sm:hover{border-color:var(--accent)}.btn-sm--accent{background:var(--accent);color:var(--on-accent);border-color:#0000;font-weight:600}.btn-sm--danger:hover{border-color:var(--alert);color:var(--alert)}.table-wrap{border:1px solid var(--hairline);border-radius:var(--radius-md);overflow-x:auto}table.roster{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.roster th{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);text-align:left;padding:var(--space-sm) var(--space-md);background:var(--surface-1);border-bottom:1px solid var(--hairline);white-space:nowrap;font-weight:500}table.roster td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--hairline);vertical-align:top}table.roster tr:last-child td{border-bottom:none}table.roster tbody tr:hover{background:oklch(20% .014 60/.5)}.num{font-variant-numeric:tabular-nums}.row-actions{gap:var(--space-2xs);white-space:nowrap;display:flex}.editor{gap:var(--space-xs);margin-top:var(--space-sm);padding:var(--space-sm);background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;display:flex}.photo-strip{gap:var(--space-sm);grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));margin:0;padding:0;list-style:none;display:grid}.photo-strip li{border:1px solid var(--hairline);border-radius:var(--radius-sm);position:relative;overflow:hidden}.photo-strip img{object-fit:cover;width:100%;height:90px;display:block}.photo-strip .del{position:absolute;top:4px;right:4px}.flight-scene .flight-title,.flight-scene .flight-line,.flight-scene .flight-sub,.flight-scene .eyebrow{z-index:5;position:relative}.flight-title{font-family:var(--font-display);letter-spacing:-.025em;max-width:13ch;margin:0;font-size:clamp(2rem,8vw,3.4rem);font-weight:800;line-height:1.04}.flight-line{max-width:20ch;margin:0;font-size:clamp(1.05rem,4.5vw,1.45rem);line-height:1.32}.flight-sub{font-size:var(--text-sm);color:var(--text-dim);margin:0}.flight-cta{gap:var(--space-sm);margin-top:var(--space-xs);flex-wrap:wrap;justify-content:center;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.clock{gap:var(--space-sm);margin-bottom:var(--space-2xl);flex-direction:column;display:flex}.clock-digits{align-items:flex-start;gap:clamp(var(--space-xs), 2.5vw, var(--space-lg));display:flex}.clock-seg{align-items:center;gap:var(--space-xs);flex-direction:column;display:flex}.clock-num{font-family:var(--font-mono);color:var(--text);font-size:clamp(1.4rem,8.5vw,3.6rem);font-weight:600;line-height:1}.clock-colon{font-family:var(--font-mono);color:var(--accent-bright);font-size:clamp(1.4rem,8.5vw,3.6rem);font-weight:300;line-height:1}.clock-unit{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--text-dim);font-weight:500}.clock-lifted{font-family:var(--font-display);font-size:var(--text-display);letter-spacing:-.02em;font-weight:800;line-height:var(--lh-tight)}.clock-num{display:inline-flex}.odo-slot{width:1ch;height:1em;display:inline-block;position:relative;overflow:hidden}.odo-digit{text-align:center;will-change:transform;display:block;position:absolute;inset:0}.console{gap:var(--space-sm);padding:clamp(var(--space-md), 5vw, var(--space-xl));background:linear-gradient(180deg, var(--surface-2), var(--surface-1));border:1px solid color-mix(in oklch, var(--accent) 38%, var(--hairline));border-radius:var(--radius-lg);box-shadow:0 0 56px oklch(72% .19 45/.08), var(--shadow-md);flex-direction:column;display:flex}.console-title{font-size:var(--text-xl);letter-spacing:-.01em;font-weight:800}.console-sub{max-width:48ch}.console .input{min-height:56px;margin-top:var(--space-xs)}.rsvp-cta{left:50%;bottom:max(var(--space-md), env(safe-area-inset-bottom));z-index:var(--z-rail);align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-xs) var(--space-lg);border-radius:var(--radius-pill);border:1px solid color-mix(in oklch, var(--accent) 38%, var(--hairline-strong));background:var(--surface-2);color:var(--text);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;box-shadow:var(--shadow-md);animation:cta-in var(--dur-mid) var(--ease-out-quart) both;font-weight:600;display:none;position:fixed}@media (width<=700px){.rsvp-cta{display:inline-flex}}@keyframes cta-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}html{view-transition-name:none}.shell,.vt-shell{view-transition-name:shell}::view-transition-group(shell){animation:none}::view-transition-old(shell){animation:vt-drift-out .2s var(--ease-out-quart) both}::view-transition-new(shell){animation:vt-rise-in .26s var(--ease-out-quart) both}@keyframes vt-drift-out{to{opacity:0;transform:translateY(10px)}}@keyframes vt-rise-in{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){::view-transition-group(shell){animation:none}::view-transition-old(shell){animation:none}::view-transition-new(shell){animation:none}}::view-transition-group(lightbox-photo){animation-duration:.26s;animation-timing-function:var(--ease-out-quart)}@media (prefers-reduced-motion:reduce){::view-transition-group(lightbox-photo){animation:none}::view-transition-old(lightbox-photo){animation:none}::view-transition-new(lightbox-photo){animation:none}}
