:root{--bg:#0f0f23;--card:#1e1c35;--text:#f8fafc;--muted:#94a3b8;--violet:#7c3aed;--lilac:#a78bfa;--rose:#f43f5e;--cyan:#22d3ee;--amber:#fbbf24;--head:"Orbitron", system-ui, sans-serif;--body:"Exo 2", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.2, .8, .2, 1);--z-scene:0;--z-tags:5;--z-text:10;--z-hud:20;--z-nav:30;--z-fx:50}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{background:var(--bg);color:var(--text);font:400 18px/1.6 var(--body);-webkit-font-smoothing:antialiased;margin:0}body:after{content:"";z-index:var(--z-fx);pointer-events:none;opacity:.35;background:repeating-linear-gradient(0deg,#0000002e 0 1px,#0000 1px 3px);position:fixed;inset:0}.skip{z-index:100;background:var(--text);color:var(--bg);border-radius:6px;padding:8px 14px;position:absolute;top:8px;left:-999px}.skip:focus{left:8px}#scene{z-index:var(--z-scene);position:fixed;inset:0}#scene canvas{width:100%;height:100%;display:block}.still{display:none}#tags{z-index:var(--z-tags);pointer-events:none;position:fixed;inset:0;overflow:hidden}.tag{font:500 11px/1.2 var(--mono);letter-spacing:.08em;white-space:nowrap;color:var(--text);border:1px solid var(--c,var(--lilac));box-shadow:0 0 12px -2px var(--c,var(--lilac));clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);opacity:0;transition:opacity .25s var(--ease-out);will-change:transform;background:#0f0f23d1;padding:3px 8px 4px;position:absolute;top:0;left:0}.tag.on{opacity:1}.tag:before{content:"● ";color:var(--c,var(--lilac))}.tag[data-kind=saw]{--c:var(--rose)}.tag[data-kind=heard],.tag[data-kind=believe]{--c:var(--cyan)}.tag[data-kind=doubt]{--c:var(--amber)}.tag[data-kind=mood]{--c:var(--lilac)}.nav{z-index:var(--z-nav);background:linear-gradient(#0f0f23cc,#0000);justify-content:space-between;align-items:center;padding:18px clamp(16px,5vw,64px);display:flex;position:fixed;top:0;left:0;right:0}.brand{font:900 20px/1 var(--head);letter-spacing:.22em;color:var(--text);text-shadow:0 0 14px #a78bfab3;text-decoration:none}.btn{background:var(--rose);color:#fff;min-height:44px;font:600 15px/1 var(--body);letter-spacing:.04em;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);box-shadow:0 0 22px -4px var(--rose);cursor:pointer;transition:filter .2s var(--ease-out), transform .2s var(--ease-out);border:1px solid #fb7185;align-items:center;padding:0 22px;text-decoration:none;display:inline-flex}.btn:hover{filter:brightness(1.15)drop-shadow(0 0 10px #f43f5ecc)}.btn:active{transform:scale(.97)}.btn:focus-visible,.hud a:focus-visible,.brand:focus-visible,footer a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.btn.big{min-height:52px;margin-top:14px;padding:0 30px;font-size:17px}[hidden]{display:none!important}.hud{z-index:var(--z-hud);flex-direction:column;gap:6px;display:flex;position:fixed;top:50%;right:clamp(12px,2.5vw,36px);transform:translateY(-50%)}.hud a{width:44px;height:32px;font:500 12px/1 var(--mono);color:var(--muted);transition:color .2s var(--ease-out), border-color .2s var(--ease-out), text-shadow .2s var(--ease-out);border-right:2px solid #94a3b84d;place-items:center;text-decoration:none;display:grid}.hud a:hover{color:var(--text)}.hud a[aria-current]{color:var(--cyan);border-color:var(--cyan);text-shadow:0 0 10px var(--cyan)}main{z-index:var(--z-text);position:relative}section{background:linear-gradient(90deg,#0f0f23e0 0%,#0f0f2399 34%,#0f0f2300 60%);flex-direction:column;justify-content:center;min-height:100dvh;padding:120px clamp(16px,6vw,96px) 80px;display:flex}section>*{opacity:.25;max-width:540px;transition:opacity .4s var(--ease-out), transform .4s var(--ease-out);transform:translateY(14px)}section.in>*{opacity:1;transform:none}.when{font:500 13px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin:0 0 14px}h1,h2{font-family:var(--head);letter-spacing:.01em;text-shadow:0 0 24px #7c3aed8c;margin:0 0 20px;font-weight:700;line-height:1.12}h1{max-width:680px;font-size:clamp(36px,4.6vw,64px)}h2{font-size:clamp(28px,3.2vw,44px)}p{color:#e2e8f0;margin:0 0 14px}.lede{font-size:20px}.hint{font:500 13px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:48px}.hint:after{content:" ↓"}.promises{gap:14px;margin:6px 0 0;padding:0;list-style:none;display:grid}.promises li{border:1px solid #7c3aed8c;border-left:3px solid var(--cyan);color:#e2e8f0;background:#1e1c35c7;padding:16px 18px}.promises strong{font:700 16px/1.3 var(--head);color:var(--text);letter-spacing:.02em;margin-bottom:6px;display:block}.close footer{color:var(--muted);gap:24px;margin-top:90px;font-size:14px;display:flex}.close footer a{color:inherit}#warp{z-index:25;pointer-events:none;visibility:hidden;opacity:0;background:repeating-linear-gradient(0deg,#22d3ee12 0 2px,#0000 2px 5px),linear-gradient(90deg,#f43f5e59,#0f0f23f5 30% 70%,#7c3aed59);place-content:center;gap:14px;display:grid;position:fixed;inset:0}.warp-label{font:500 15px/1 var(--mono);letter-spacing:.28em;color:var(--text);transform:translateX(var(--jx,0));text-shadow:-2px 0 var(--rose), 2px 0 var(--cyan)}.warp-bar{background:linear-gradient(90deg, var(--cyan), var(--violet));transform-origin:0;width:260px;height:3px;margin:0 auto;animation:1.2s linear infinite warp-load}@keyframes warp-load{0%{transform:scaleX(0)}to{transform:scaleX(1)}}body.clean main,body.clean .nav,body.clean .hud,body.clean #tags,body.clean #warp{visibility:hidden!important}body.clean:after,body.fallback #scene,body.fallback #tags{display:none}body.fallback .still{object-fit:cover;object-position:55% center;width:100%;height:100%;z-index:var(--z-scene);display:block;position:fixed;inset:0}body.fallback section>*{opacity:1;transform:none}@media (width<=767px){body{font-size:16px}.hud{display:none}.brand{letter-spacing:.18em;font-size:16px}.nav .btn{min-height:40px;padding:0 14px;font-size:14px}section{background:linear-gradient(#0f0f2300 38%,#0f0f23d1 62%,#0f0f23f2 100%);justify-content:flex-end;padding:96px 16px 40px}section>*{max-width:none}h1{font-size:32px}h2{margin-bottom:12px;font-size:24px}p{font-size:16px}.lede{font-size:17px}.hint{margin-top:20px}.tag{padding:2px 6px 3px;font-size:10px}.promises{gap:10px}.promises li{padding:12px 14px;font-size:15px}.close footer{margin-top:40px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}body:after{display:none}*,:before,:after{transition:none!important}}
