:root{--night-950: #090b10;--night-900: #0c0f16;--night-850: #11151e;--night-800: #171c27;--night-700: #222837;--night-600: #2f3647;--bone-100: #ece8e1;--bone-300: #c9c3b8;--bone-500: #a59f96;--bone-600: #8e887f;--bone-700: #6f6a62;--lamp-300: #f4c47e;--lamp-500: #e8a54b;--lamp-700: #b77a2b;--lamp-ink: #21160a;--oxblood-500: #a3322c;--oxblood-400: #c0443b;--oxblood-300: #e0867b;--verdigris-500: #4f9d84;--verdigris-300: #84cdb3;--manila-100: #f1e9d8;--manila-200: #e7dcc3;--paper-ink: #1d1913;--teal-500: #2e6e73;--bg: var(--night-900);--bg-deep: var(--night-950);--surface: var(--night-800);--surface-raised: var(--night-700);--text: var(--bone-100);--text-2: var(--bone-500);--text-3: var(--bone-600);--line: rgb(236 232 225 / .1);--line-strong: rgb(236 232 225 / .18);--accent: var(--lamp-500);--accent-hover: var(--lamp-300);--on-accent: var(--lamp-ink);--accent-glow: rgb(232 165 75 / .32);--proof: var(--verdigris-300);--danger: var(--oxblood-300);--stamp: var(--oxblood-500);--string: var(--oxblood-400);--paper: var(--manila-100);--on-paper: var(--paper-ink);--info: var(--teal-500);--focus: var(--lamp-300);--glass: rgb(13 16 24 / .62);--glass-strong: rgb(11 14 21 / .86);--glass-blur: blur(18px) saturate(1.25);--glass-edge: inset 0 1px 0 rgb(255 214 160 / .16);--scrim-top: linear-gradient(rgb(9 11 16 / .82), rgb(9 11 16 / 0));--scrim-bottom: linear-gradient(rgb(12 15 22 / 0), var(--bg) 44px);--photo-border: 5px solid var(--bone-100);--lift: 0 12px 32px rgb(0 0 0 / .45);--font-display: "League Gothic", "Oswald", Impact, sans-serif;--font-data: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-label: 11px;--fs-caption: 13px;--fs-body: 15px;--fs-lead: 17px;--fs-d4: 26px;--fs-d3: 34px;--fs-d2: 44px;--fs-d1: 62px;--lh-tight: .95;--lh-body: 1.45;--track-label: .14em;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--gutter: var(--s4);--safe-top: max(var(--s3), env(safe-area-inset-top));--safe-bottom: max(var(--s3), env(safe-area-inset-bottom));--r-xs: 4px;--r-sm: 8px;--r-md: 12px;--r-pill: 999px;--hit: 48px;--hit-icon: 44px;--photo-max-h: 50dvh;--top-hud: calc(var(--safe-top) + 52px);--dur-fast: .12s;--dur-settle: .26s;--dur-slow: .42s;--ease-settle: cubic-bezier(.2, .8, .2, 1);--ease-beat: cubic-bezier(.3, 1.5, .5, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1)}@media (prefers-reduced-motion: reduce){:root{--dur-fast: 0ms;--dur-settle: 0ms;--dur-slow: 0ms}*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.stamp{animation:none!important;opacity:1}.rain{display:none}}:root[data-motion=reduce]{--dur-fast: 0ms;--dur-settle: 0ms;--dur-slow: 0ms}:root[data-motion=reduce] *,:root[data-motion=reduce] *:before,:root[data-motion=reduce] *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}:root[data-motion=reduce] .stamp{animation:none!important;opacity:1}:root[data-motion=reduce] .rain{display:none}:root[data-text=l]{--fs-label: 12px;--fs-caption: 15px;--fs-body: 17px;--fs-lead: 19px}:root[data-text=xl]{--fs-label: 13px;--fs-caption: 17px;--fs-body: 19px;--fs-lead: 21px}*{box-sizing:border-box}html{color-scheme:dark}html,body,#root{margin:0;height:100%;background:var(--bg-deep);color:var(--text);overscroll-behavior:none}body{font:400 var(--fs-body) / var(--lh-body) var(--font-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}#stage{position:relative;height:100%;max-height:100dvh;aspect-ratio:390 / 844;max-width:100vw;margin:0 auto;overflow:hidden;background:var(--bg);container-type:inline-size}@media (max-width: 600px){#stage{width:100vw;height:100dvh;max-height:none;aspect-ratio:auto}}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--dur-settle);animation-timing-function:var(--ease-settle)}.kicker,.label,.lbl{margin:0;font:600 var(--fs-label) / 1.3 var(--font-data);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-2)}.kicker{color:var(--accent)}.muted{color:var(--text-2)}.q{margin:0;font:400 var(--fs-d3) / 1 var(--font-display);text-transform:uppercase;letter-spacing:.01em;text-wrap:balance}.big{margin:0;font:400 var(--fs-d2) / var(--lh-tight) var(--font-display);text-transform:uppercase;text-wrap:balance}.ask{margin:var(--s2) 0;font-size:var(--fs-body);line-height:var(--lh-body);text-wrap:pretty}.ask.good{color:var(--proof)}.ask.bad{color:var(--danger)}.stars{display:inline-flex;gap:2px;font-size:var(--fs-body);color:var(--line-strong)}.stars{align-items:center}.stars .ico{color:var(--line-strong)}.stars .ico.on{color:var(--accent)}button{min-height:var(--hit);padding:0 var(--s4);border-radius:var(--r-sm);font:500 var(--fs-body) var(--font-body);cursor:pointer;border:1px solid var(--line-strong);background:var(--glass);color:var(--text);touch-action:manipulation;transition:background var(--dur-fast) var(--ease-settle),border-color var(--dur-fast),transform var(--dur-fast) var(--ease-settle)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.ghost{background:transparent;border-color:transparent;color:var(--text-2)}button.wide{width:100%}button.icon{position:relative;min-height:var(--hit-icon);width:var(--hit-icon);padding:0;display:inline-grid;place-items:center;font-size:20px;line-height:1;border-radius:var(--r-pill);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}button.icon:after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px}.icon.mute{font-size:15px}.icon.mute.corner{position:absolute;z-index:40;left:var(--gutter);top:var(--safe-top)}.icon.settings-btn.corner{position:absolute;z-index:40;right:var(--gutter);top:var(--safe-top)}.paywall .close{margin-right:calc(var(--hit-icon) + var(--s2))}.settings-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:flex-end;background:#090b108c;animation:settle var(--dur-settle) var(--ease-settle) both}.settings{width:100%;max-height:92%;overflow-y:auto;overscroll-behavior:contain;padding:var(--s4) var(--gutter) var(--safe-bottom);border-radius:var(--r-md) var(--r-md) 0 0;background:var(--glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--line);box-shadow:var(--glass-edge);display:grid;gap:var(--s3)}.set-head{display:flex;align-items:center;justify-content:space-between}.set-head h2{margin:0;font:400 var(--fs-d4) / 1 var(--font-display);text-transform:uppercase}.settings>.kicker{margin-top:var(--s2)}.set-row{display:grid;gap:var(--s1)}.seg{display:flex;gap:2px;padding:2px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--line)}.seg button{flex:1;min-height:var(--hit-icon);padding:0 var(--s2);border:0;border-radius:6px;background:transparent;color:var(--text-2);font-size:var(--fs-caption)}.seg button.on{background:var(--surface-raised);color:var(--text);box-shadow:inset 0 0 0 1px var(--line-strong);font-weight:600}.set-note{margin:var(--s2) 0 0;font-size:var(--fs-caption)}.test-intro{z-index:70;justify-content:space-between;padding-top:calc(var(--safe-top) + var(--s7))}.ti-body{display:grid;gap:var(--s3)}.ti-body p{margin:0;line-height:var(--lh-body)}.seg.wrap{flex-wrap:wrap}.seg.wrap button{flex:1 1 auto}.sv-text{width:100%;padding:var(--s2) var(--s3);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:inherit;font-size:16px;resize:vertical}.streak{margin:calc(-1 * var(--s2)) 0 0;font:600 var(--fs-label) var(--font-data);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}.streak span,.streak-note span{color:var(--accent)}.streak.risk{color:var(--text)}.streak-note{margin:0;font-size:var(--fs-caption);color:var(--text-2)}.streak-note.milestone{justify-self:start;padding:var(--s1) var(--s3);border:1px solid var(--accent);border-radius:var(--r-pill);color:var(--text);font-weight:600;animation:pop var(--dur-slow) var(--ease-beat) .5s both}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;padding:0 var(--gutter) var(--safe-bottom);overflow-y:auto;overscroll-behavior:contain;background:var(--bg);animation:settle var(--dur-settle) var(--ease-settle) both}.screen>*{flex-shrink:0}.dock{display:grid;gap:var(--s2);margin-top:auto;padding-top:var(--s3)}.dock>.ask{margin:0}@keyframes settle{0%{opacity:0;transform:translateY(6px)}}.topbar{position:relative;z-index:3;display:flex;align-items:center;gap:var(--s3);margin:0 calc(-1 * var(--gutter));padding:var(--safe-top) var(--s3) var(--s3)}.topbar .case{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);color:var(--text-2)}.topbar.light{position:absolute;left:0;right:0;top:0;margin:0;background:var(--scrim-top);pointer-events:auto}.progress{position:absolute;left:0;right:0;top:0;height:3px;background:var(--line)}.progress i{position:absolute;left:0;right:0;top:0;bottom:0;transform-origin:left;background:var(--accent);transition:transform var(--dur-slow) var(--ease-settle);box-shadow:0 0 10px var(--accent-glow)}.sheet,.rewind-card,.tray,.note.glass{background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);box-shadow:var(--glass-edge);border-radius:var(--r-md)}.hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.hud>*{pointer-events:auto}.hud .hint,.hud .counter,.hud .perf{pointer-events:none}button.icon.turn{position:absolute;top:46%}button.icon.turn.l{left:var(--s2)}button.icon.turn.r{right:var(--s2)}.counter{position:absolute;top:var(--top-hud);right:var(--gutter);display:flex;align-items:center;gap:6px;padding:6px var(--s3) 6px 10px;border-radius:var(--r-pill);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);box-shadow:var(--glass-edge);font:600 18px var(--font-data);color:var(--accent);font-variant-numeric:tabular-nums}.counter .ico{color:var(--text-2)}.counter b{display:inline-block;font-weight:inherit}.counter span{font-size:var(--fs-label);color:var(--text-2);letter-spacing:.1em}.perf{position:absolute;top:var(--top-hud);left:var(--gutter);font:var(--fs-label) var(--font-data);color:var(--text-2)}.hint{position:absolute;left:50%;bottom:var(--safe-bottom);transform:translate(-50%);max-width:calc(100% - 2 * var(--gutter));padding:var(--s2) var(--s4);border-radius:var(--r-md);font-size:var(--fs-caption);text-align:center;background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--line);box-shadow:var(--glass-edge)}.hint small{display:block;margin-top:2px;font-size:var(--fs-label);color:var(--text-2)}.sheet{position:absolute;left:var(--s3);right:var(--s3);bottom:var(--safe-bottom);padding:var(--s4);font-size:var(--fs-body);line-height:var(--lh-body);animation:rise var(--dur-settle) var(--ease-settle) both}.sheet h2{display:flex;align-items:center;gap:var(--s2);margin:0 0 var(--s2);font:400 var(--fs-d4) / 1 var(--font-display);text-transform:uppercase;color:var(--text)}.sheet h2 .tag,.tag{font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);padding:3px 6px;border-radius:var(--r-xs);background:var(--accent);color:var(--on-accent)}.sheet p{margin:0 0 var(--s2)}.sheet .label{margin:var(--s2) 0 2px}.actions{display:flex;gap:var(--s2);margin-top:var(--s2)}.actions>button{flex:1}.sheet.compact{display:flex;align-items:center;justify-content:space-between;padding:var(--s2) var(--s2) var(--s2) var(--s4)}.sheet.compact h2{margin:0}.photo{position:absolute;top:0;right:0;bottom:0;left:0;background:#090b10f0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s3)}.photo img{width:88%;border:var(--photo-border);border-radius:var(--r-xs);box-shadow:var(--lift);transform:rotate(-1deg)}.photo p{margin:0;font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);color:var(--text-2)}.rewind-card{position:absolute;left:var(--s3);right:var(--s3);bottom:var(--safe-bottom);padding:var(--s4)}.clock{font:400 var(--fs-d2) / 1 var(--font-display);letter-spacing:.02em;margin:var(--s2) 0 2px;font-variant-numeric:tabular-nums}.state{margin:0 0 var(--s3);font-size:var(--fs-caption);color:var(--text-2)}.track{display:flex;align-items:flex-start;gap:var(--s2)}.track .rail{position:relative;flex:1;padding-bottom:18px}.track .step{flex:none}.track input{width:100%;height:var(--hit-icon);margin:0;accent-color:var(--accent)}.track .mark{position:absolute;bottom:0;transform:translate(-50%);font:600 var(--fs-label) var(--font-data);color:var(--danger)}.track .mark:before{content:"";position:absolute;left:50%;bottom:15px;width:2px;height:20px;background:var(--string)}.choices{display:grid;gap:var(--s2)}.choices button{text-align:left;display:flex;align-items:center;gap:var(--s3)}.choices b{font:400 var(--fs-d4) / 1 var(--font-display);color:var(--accent);min-width:14px}.choices button.right,.choices button.right:disabled{border-color:var(--proof);color:var(--proof);opacity:1}.choices button.right b{color:var(--proof)}.alarm-flash{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;box-shadow:inset 0 0 120px #a3322cbf;animation:pulse .6s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.3}to{opacity:1}}.clip{padding:0;background:#000;justify-content:center}.clip video{width:100%;height:100%;object-fit:contain}.pill{position:absolute;min-height:var(--hit-icon);border-radius:var(--r-pill);font-size:var(--fs-caption);background:var(--glass);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur)}.pill.skip{right:var(--gutter);top:var(--safe-top)}.pill.sound{left:50%;transform:translate(-50%);bottom:var(--safe-bottom);border-color:var(--accent);color:var(--accent)}.finding{gap:var(--s3)}.claim{position:relative;flex:1 1 auto!important;min-height:240px;border-radius:var(--r-md);overflow:hidden;display:flex;align-items:flex-end}.claim img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%}.claim>div{position:relative;width:100%;padding:var(--s6) var(--s4) var(--s4);background:linear-gradient(#0c0f1600,#0c0f16f0 40px)}.claim p{margin:var(--s1) 0 0;font-size:var(--fs-lead);line-height:1.35}.stakes{margin:var(--s2) 0 0;font-size:var(--fs-body);color:var(--accent)}.compare,.spot,.choice{gap:var(--s3)}.print{position:relative;width:min(100%,34dvh);align-self:center;border:var(--photo-border);border-radius:var(--r-xs);overflow:hidden;box-shadow:var(--lift)}.print img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.print span,.photo-tag{position:absolute;left:var(--s2);top:var(--s2);font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);padding:3px 6px;border-radius:var(--r-xs);background:#090b10b8;color:var(--text)}.soles{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}.sole{position:relative;padding:0;overflow:hidden;border-radius:var(--r-xs);min-height:0;border:3px solid var(--bone-300);background:var(--bone-300)}.sole img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.sole b{position:absolute;left:4px;top:4px;min-width:24px;padding:2px 6px 0;text-align:center;border-radius:var(--r-xs);font:400 20px / 1.1 var(--font-display);background:#090b10cc;color:var(--text)}.sole.on b{background:var(--accent);color:var(--on-accent)}.sole.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.compare .primary{margin-top:var(--s1)}.note{padding:var(--s3) var(--s4);border-radius:var(--r-xs);background:var(--paper);color:var(--on-paper);box-shadow:var(--lift);transform:rotate(-.4deg);animation:rise var(--dur-settle) var(--ease-settle) both}.note .label{margin:0 0 var(--s1);color:var(--stamp)}.note p{margin:0;font-size:var(--fs-body);line-height:1.4}.photo-view{position:relative;width:100%;align-self:center;overflow:hidden;border:var(--photo-border);border-radius:var(--r-xs);box-shadow:var(--lift);touch-action:manipulation;cursor:crosshair;background:#000}.photo-view img{position:absolute;max-width:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.ring{position:absolute;aspect-ratio:1;translate:-50% -50%;border:2.5px solid var(--accent);border-radius:50%;box-shadow:0 0 0 6px #e8a54b1f,0 0 28px var(--accent-glow);animation:pop var(--dur-slow) var(--ease-beat) both;pointer-events:none}.ring b{position:absolute;left:50%;top:100%;transform:translate(-50%,4px);white-space:nowrap;font:600 var(--fs-label) var(--font-data);letter-spacing:.1em;padding:2px 6px;border-radius:var(--r-xs);background:var(--accent);color:var(--on-accent)}.magnifier{position:absolute;width:18%;aspect-ratio:1;translate:-50% -50%;border:2px solid var(--focus);border-radius:50%;pointer-events:none;box-shadow:0 0 0 9999px #090b1040}.magnifier:before,.magnifier:after{content:"";position:absolute;left:50%;top:50%;background:var(--focus);translate:-50% -50%}.magnifier:before{width:10px;height:2px}.magnifier:after{width:2px;height:10px}.photo-view:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.ring.hinted{border:2px dashed var(--accent-hover);box-shadow:none;animation:none;opacity:.85}.miss-x{position:absolute;translate:-50% -50%;font:400 30px var(--font-display);color:var(--danger);text-shadow:0 1px 4px #000;animation:rise var(--dur-fast) var(--ease-settle) both;pointer-events:none}.spot-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.spot-foot .count{font:600 18px var(--font-data);color:var(--accent);font-variant-numeric:tabular-nums}.hold{flex:1;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:none}.hold.on{background:var(--surface-raised);border-color:var(--line-strong)}.choice-img{width:100%;flex:1 1 220px!important;min-height:180px;max-height:46%;height:auto;object-fit:cover;border:var(--photo-border);border-radius:var(--r-xs);box-shadow:var(--lift)}.boardscreen{padding:0}.boardscreen .topbar{margin:0}.board-host{position:relative;flex:none;width:100%;aspect-ratio:390 / 438;-webkit-user-select:none;user-select:none}.board-host.connect{touch-action:none}.board-host img{pointer-events:none;-webkit-user-drag:none}.board-foot{margin-top:auto;padding:var(--s2) var(--gutter) var(--safe-bottom)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.sr-only:focus-within{position:absolute;z-index:8;left:var(--s2);top:var(--s2);width:auto;height:auto;margin:0;overflow:visible;clip-path:none;display:grid;gap:var(--s1)}.drag-string{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:5}.drag-string path{fill:none;stroke:var(--string);stroke-width:3;stroke-linecap:round}.drag-string circle{fill:var(--string)}.card-glow{box-shadow:0 0 0 2px var(--accent);cursor:grab}.card-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 26px var(--accent-glow);animation:glow 1.4s ease-in-out infinite alternate}@keyframes glow{0%{opacity:.25}}.card-armed{outline:3px solid var(--string);outline-offset:2px}.tick-pop{animation:pop var(--dur-slow) var(--ease-beat) both}@keyframes pop{0%{transform:scale(2.2);opacity:0}to{transform:scale(1);opacity:1}}.contradict{padding:0}.portrait-stack.portrait{height:62%}.nametag{position:absolute;left:var(--gutter);right:var(--gutter);top:var(--top-hud);z-index:2;font:600 var(--fs-label) / 1.35 var(--font-data);letter-spacing:.1em;color:var(--text);text-shadow:0 1px 4px #000}.stamp{position:absolute;z-index:4;left:50%;top:30%;transform:translate(-50%,-50%) rotate(-8deg);font:400 52px var(--font-display);letter-spacing:.04em;color:var(--stamp);border:4px solid var(--stamp);border-radius:var(--r-xs);padding:0 var(--s3);background:#f1e9d8e6;mix-blend-mode:normal;animation:stamp 1.6s var(--ease-beat) both;pointer-events:none}@keyframes stamp{0%{transform:translate(-50%,-50%) rotate(-8deg) scale(2);opacity:0}14%{transform:translate(-50%,-50%) rotate(-8deg) scale(1);opacity:1}75%{opacity:1}to{opacity:0}}.statement{position:relative;margin-top:auto;z-index:2;padding:var(--s6) var(--gutter) var(--safe-bottom);background:var(--scrim-bottom)}.line{display:block;width:100%;text-align:left;margin:var(--s2) 0;padding:var(--s3);min-height:var(--hit);font-size:var(--fs-body);line-height:1.35}.line.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.line.broken{text-decoration:line-through;text-decoration-color:var(--stamp);text-decoration-thickness:2px;color:var(--text-2);opacity:1}.reply{margin:var(--s2) 2px;font-size:var(--fs-body);font-style:italic}.reply.good{color:var(--accent)}.reply.bad{color:var(--text-2)}.trap-setup{margin:var(--s2) 0;font-size:var(--fs-lead);line-height:1.35;text-wrap:pretty}.trap .choices,.trap .hintbox{margin-top:var(--s2)}.payoff{margin:var(--s3) 0;font:400 var(--fs-d3) / 1 var(--font-display);text-transform:uppercase;color:var(--accent)}.tray{position:absolute;left:0;right:0;bottom:0;z-index:6;padding:var(--s4) var(--gutter) var(--safe-bottom);border-radius:var(--r-md) var(--r-md) 0 0;background:var(--glass-strong);animation:slideup var(--dur-settle) var(--ease-settle) both}@keyframes slideup{0%{transform:translateY(24px);opacity:0}}.quoted{margin:var(--s2) 0 0;font-size:var(--fs-body);line-height:1.35;font-style:italic}.ev{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2);margin:var(--s3) 0 var(--s2)}.ev button{display:flex;flex-direction:column;align-items:stretch;gap:var(--s2);padding:var(--s2);min-height:0;text-align:left;font-size:var(--fs-caption);line-height:1.3;background:var(--paper);color:var(--on-paper);border:0;border-radius:var(--r-xs)}.ev img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:2px}.ask-open{display:flex;align-items:center;justify-content:center;gap:var(--s2);width:100%;margin-top:var(--s2)}.ask-mark{--icon-dot: var(--accent)}.slip{position:absolute;z-index:30;width:124px;padding:var(--s2);border-radius:var(--r-xs);pointer-events:none;background:var(--paper);color:var(--on-paper);box-shadow:var(--lift);display:grid;gap:2px;will-change:transform,opacity}.slip.big{width:156px}.slip img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:2px;margin-bottom:4px}.slip b{font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);color:var(--stamp)}.slip span{font:600 var(--fs-caption) / 1.25 var(--font-body)}.hintbox{display:grid;gap:var(--s2);justify-items:start}.hint-btn{min-height:var(--hit-icon);padding:0 var(--s3);border-radius:var(--r-pill);font-size:var(--fs-caption);color:var(--text-2)}.hint-btn span{color:var(--accent)}.hint-btn.nudge{color:var(--text);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);position:relative}.hint-btn.nudge:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:inherit;box-shadow:0 0 18px var(--accent-glow);animation:glow 1.1s ease-in-out infinite alternate;pointer-events:none}.hint-btn.cooling{opacity:.6;cursor:default;font-variant-numeric:tabular-nums}.hint-text{margin:0;padding:var(--s2) var(--s3);border-left:2px solid var(--accent);font-size:var(--fs-caption);line-height:1.4;color:var(--text);background:var(--glass);border-radius:0 var(--r-xs) var(--r-xs) 0;animation:rise var(--dur-settle) var(--ease-settle) both}.hud-hint{position:absolute;left:var(--gutter);right:96px;top:calc(var(--top-hud) + 4px)}.hud-hint.hidden{display:none}.cliff{gap:var(--s3);padding:var(--safe-top) var(--s5) var(--safe-bottom)}.cliff-top{display:grid;gap:var(--s3);margin:auto 0}.cliffline{margin:0 0 var(--s2);font:400 40px / 1 var(--font-display);text-transform:uppercase;text-wrap:balance;animation:rise .6s var(--ease-settle) both}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.cliff-actions{margin-top:0;animation:rise var(--dur-slow) var(--ease-settle) both}.next-card{display:flex;align-items:stretch;gap:var(--s3);padding:0;min-height:96px;overflow:hidden;text-align:left;border:1px solid var(--accent);border-radius:var(--r-md);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge),0 0 32px #e8a54b1f}.next-card img{width:96px;flex:none;object-fit:cover;filter:brightness(.75)}.next-card.locked img{filter:brightness(.45) grayscale(.4)}.nc-body{display:grid;align-content:center;gap:2px;padding:var(--s3) var(--s3) var(--s3) 0}.nc-title{font:400 var(--fs-d4) / 1 var(--font-display);text-transform:uppercase;text-wrap:balance}.nc-cta{font-weight:600;color:var(--accent)}.cliff-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.shared{margin:0;text-align:center;font-size:var(--fs-caption)}.cliff>*:not(.rain){position:relative;z-index:1}.home{gap:clamp(6px,1.4dvh,12px);padding-top:var(--safe-top)}.home>*:not(.hero){position:relative;z-index:1}.hero{position:absolute;left:0;right:0;top:0;height:clamp(240px,50dvh,340px);overflow:hidden;z-index:0}.hero img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;filter:brightness(.85)}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgb(12 15 22 / .3),rgb(12 15 22 / .1) 40%,var(--bg))}.lockup{display:flex;align-items:center;gap:var(--s3);margin-top:clamp(36px,10dvh,148px)}.lockup img{width:52px;height:52px;filter:drop-shadow(0 2px 12px rgb(0 0 0 / .7))}.brand{margin:0;font:400 var(--fs-d1) / .9 var(--font-display);letter-spacing:.04em;text-shadow:0 2px 18px rgb(0 0 0 / .8)}.tagline{margin:0 0 var(--s2);font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);color:var(--text-2);text-transform:uppercase;text-shadow:0 1px 6px #000}.role{margin:calc(-1 * var(--s1)) 0 0;font-size:var(--fs-caption);line-height:1.4;color:var(--text-2);text-wrap:pretty;text-shadow:0 1px 6px #000}.today{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:var(--s1);padding:var(--s4) 38% var(--s4) var(--s4);text-align:left;border:1px solid var(--accent);border-radius:var(--r-md);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:var(--glass-edge),0 0 32px #e8a54b1f}.today .kicker{color:var(--accent)}.today>:not(.today-art){position:relative}.today-art{position:absolute;top:0;right:0;bottom:0;width:46%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 45%);mask-image:linear-gradient(90deg,transparent,#000 45%)}.today .title{font:400 clamp(26px,4.4dvh,34px) / 1 var(--font-display);text-transform:uppercase}.today .muted{font-size:var(--fs-caption)}.today-cta{margin-top:var(--s2);font-weight:600;color:var(--accent)}.season{margin-top:var(--s3)}.season-head{display:flex;align-items:center;gap:var(--s3);margin-top:calc(-1 * var(--s1))}.solved{margin:0;font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--text-2);font-variant-numeric:tabular-nums}.season-bar{position:relative;flex:1;height:3px;border-radius:2px;background:var(--line);overflow:hidden}.season-bar i{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left;background:var(--text-2)}.eps{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.eps button{width:100%;display:flex;align-items:center;gap:var(--s3);text-align:left;background:var(--surface);border-color:var(--line);min-height:64px;padding-left:var(--s2)}.ep-art{width:36px;height:48px;flex:none;object-fit:cover;border-radius:var(--r-xs);box-shadow:0 0 0 1px var(--line)}.eps button.locked .ep-art{filter:brightness(.45) grayscale(.5)}.eps .no{font:600 var(--fs-caption) var(--font-data);color:var(--text-2);font-variant-numeric:tabular-nums}.eps .t{flex:1;font-size:var(--fs-body)}.eps button.locked{background:transparent}.eps button.locked .t,.eps button.locked .no{color:var(--text-3)}.eps .lock{font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);color:var(--text-3)}.rail{list-style:none;display:flex;gap:var(--s2);margin:0 calc(-1 * var(--gutter));padding:2px var(--gutter) var(--s2);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none}.rail::-webkit-scrollbar{display:none}.rail li{flex:none;scroll-snap-align:start}.ep-card{display:grid;gap:6px;width:clamp(92px,27vw,116px);min-height:0;padding:0;text-align:left;background:none;border:0}.ep-frame{position:relative;display:block;aspect-ratio:3 / 4;border-radius:var(--r-sm);overflow:hidden;box-shadow:0 0 0 1px var(--line)}.ep-frame img{width:100%;height:100%;object-fit:cover;display:block}.ep-card.now .ep-frame{box-shadow:0 0 0 2px var(--accent)}.ep-card.locked .ep-frame img{filter:brightness(.42) grayscale(.5)}.ep-no{position:absolute;left:6px;top:6px;padding:1px 5px;border-radius:var(--r-xs);background:#090b10c7;font:600 var(--fs-label) var(--font-data);color:var(--text);font-variant-numeric:tabular-nums}.ep-badge{position:absolute;left:6px;bottom:6px;padding:2px 5px;border-radius:var(--r-xs);background:#090b10c7;display:inline-flex}.ep-badge.lock{color:var(--text-2);--icon-dot: var(--text-3)}.ep-t{font-size:var(--fs-caption);line-height:1.25;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ep-card.locked .ep-t{color:var(--text-3)}@media (max-height: 600px){.q{font-size:28px}.home .tagline{display:none}.home .role{font-size:12px}.ep-card{width:84px}.print{width:min(100%,29dvh)}.dock{padding-top:var(--s1);gap:6px}.board-foot{padding-top:0}.spot-foot .hold{min-height:var(--hit-icon)}.paywall .teaser{min-height:150px}.paywall{gap:var(--s2)}}.paywall{gap:var(--s3);padding-top:var(--safe-top)}.paywall .close{align-self:flex-end}.teaser{position:relative;border-radius:var(--r-md);overflow:hidden;min-height:230px;display:flex;align-items:flex-end}.teaser img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 72%;filter:brightness(.7)}.teaser div{position:relative;width:100%;padding:var(--s6) var(--s4) var(--s4);background:linear-gradient(#0c0f1600,#0c0f16e0 45%)}.teaser .title,.thanks .title{margin:var(--s1) 0;font:400 var(--fs-d3) / 1 var(--font-display);text-transform:uppercase}.teaser .muted{margin:0;font-size:var(--fs-caption)}.offers{display:grid;gap:var(--s2)}.offer{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;text-align:left;padding:var(--s3) var(--s4);min-height:60px;background:var(--surface);border-color:var(--line)}.offer .t{font-weight:600}.offer .s{grid-row:2;font-size:var(--fs-caption);color:var(--text-2)}.offer .p{grid-row:1 / 3;grid-column:2;align-self:center;font:600 var(--fs-lead) var(--font-data);color:var(--text);font-variant-numeric:tabular-nums}.offer.best{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.offer.best .p{color:var(--accent)}.offer.best{padding-left:76px}.offer-art{position:absolute;left:0;top:0;bottom:0;width:64px;height:100%;object-fit:cover;border-radius:7px 0 0 7px}.offer .badge{position:absolute;right:var(--s3);top:-10px;font:600 var(--fs-label) var(--font-data);letter-spacing:var(--track-label);padding:3px 6px;border-radius:var(--r-xs);background:var(--accent);color:var(--on-accent)}.free{margin:0;text-align:center;font-size:var(--fs-caption);font-variant-numeric:tabular-nums}.thanks{display:grid;gap:var(--s2)}.thanks p{margin:0;line-height:var(--lh-body)}.askpanel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;background:var(--bg);pointer-events:auto;animation:settle var(--dur-settle) var(--ease-settle) both}.ask-bg{position:absolute;inset:0 0 auto;width:100%;height:58%;object-fit:cover}.ask-head{position:relative;z-index:1;display:flex;gap:var(--s3);align-items:center;padding:var(--safe-top) var(--gutter) var(--s3);background:var(--scrim-top)}.ask-name{margin:0;font:400 var(--fs-d4) / 1 var(--font-display);text-transform:uppercase}.ask-log{position:relative;z-index:1;flex:1;overflow-y:auto;overscroll-behavior:contain;margin-top:auto;padding:120px var(--gutter) var(--s2);-webkit-mask-image:linear-gradient(transparent 0,#000 110px);mask-image:linear-gradient(transparent 0,#000 110px);display:flex;flex-direction:column;justify-content:flex-end}.ask-intro{text-align:center;text-shadow:0 1px 4px #000}.you{margin:var(--s2) 0 var(--s1) auto;max-width:80%;width:fit-content;padding:var(--s2) var(--s3);border-radius:var(--r-md) var(--r-md) var(--r-xs) var(--r-md);background:var(--surface-raised);border:1px solid var(--line-strong);font-size:var(--fs-body);overflow-wrap:anywhere}.them{margin:var(--s1) auto var(--s2) 0;max-width:85%;width:fit-content;padding:var(--s2) var(--s3);border-radius:var(--r-md) var(--r-md) var(--r-md) var(--r-xs);background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--line);box-shadow:var(--glass-edge);font-size:var(--fs-body);line-height:1.4}.them.typing{color:var(--text-2);letter-spacing:3px}.tell{margin:var(--s1) 0;font-size:var(--fs-caption);font-style:italic;color:var(--accent);text-shadow:0 1px 4px #000}.tell:before{content:"";display:inline-block;width:7px;height:7px;margin:0 7px 1px 1px;border-radius:50%;background:var(--accent)}.ask-chips{position:relative;z-index:1;display:flex;gap:var(--s2);overflow-x:auto;overscroll-behavior:contain;padding:var(--s2) var(--gutter);scrollbar-width:none}.ask-chips button{flex:none;min-height:var(--hit-icon);font-size:var(--fs-caption);border-radius:var(--r-pill)}.ask-input{position:relative;z-index:1;display:flex;gap:var(--s2);padding:var(--s2) var(--gutter) var(--safe-bottom)}.ask-input input{flex:1;min-width:0;min-height:var(--hit);padding:0 var(--s4);border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--text);font:inherit;font-size:16px}.ask-input input:focus-visible{outline:2px solid var(--focus);outline-offset:1px;border-color:var(--accent)}.ask-who{flex:1;min-width:0}.read-btn{flex:none;min-height:var(--hit-icon);padding:0 var(--s3);border-radius:var(--r-pill);font-size:var(--fs-caption);font-weight:600}.read-btn span{color:var(--accent)}.read-btn.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.read-layer{position:absolute;inset:0 0 auto;height:58%;z-index:0;pointer-events:none;transition:background var(--dur-settle) var(--ease-settle)}.read-layer.on{z-index:2;pointer-events:auto;background:#090b1059}.read-spot{position:absolute;translate:-50% -50%;min-height:0;padding:0;border-radius:50%;border:2px dashed var(--accent-hover);background:#e8a54b14;animation:glow 1.2s ease-in-out infinite alternate}.read-spot:disabled{opacity:1;cursor:default}.read-spot.done{border:2px solid var(--accent);background:transparent;animation:none}.read-spot b{position:absolute;left:50%;top:100%;translate:-50% 4px;white-space:nowrap;padding:2px 6px;border-radius:var(--r-xs);font:600 var(--fs-label) var(--font-data);letter-spacing:.1em;background:var(--accent);color:var(--on-accent)}.you.read{max-width:88%;font-style:italic;border-color:#e8a54b73}.read-k{display:block;margin-bottom:2px;font:600 var(--fs-label) var(--font-data);font-style:normal;letter-spacing:var(--track-label);color:var(--accent)}.ask-error{position:relative;z-index:1;margin:0 var(--gutter) var(--s2);font-size:var(--fs-caption);color:var(--danger)}.portrait-stack{position:absolute;inset:0 0 auto;width:100%;height:58%;overflow:hidden;background:var(--bg)}.portrait-stack>*{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:50% 14%;transition:opacity var(--dur-fast) linear}.portrait-stack img{transition:transform 80ms linear}.portrait-stack:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(rgb(12 15 22 / 0) 70%,var(--bg))}.rain{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0}.rain i{position:absolute;top:-20%;width:1px;height:18%;background:linear-gradient(#bed7f000,#bed7f0cc);animation:fall linear infinite;transform:rotate(8deg)}@keyframes fall{to{transform:translateY(640%) rotate(8deg)}}.hall{position:absolute;top:0;right:0;bottom:0;left:0}.cctv-look canvas{filter:grayscale(.75) contrast(1.25) brightness(.95) sepia(.15)}.cctv-frame{position:absolute;left:0;right:0;top:0;bottom:230px;pointer-events:none;overflow:hidden;box-shadow:inset 0 0 90px #000000d9}.cctv-frame .scan{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(rgb(255 255 255 / .04) 0 1px,transparent 1px 3px)}.cctv-frame .smear{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;transition:opacity .2s linear;filter:blur(14px);background:radial-gradient(ellipse 45% 35% at 42% 48%,rgb(62 45 28 / .97),rgb(62 45 28 / .9) 60%,transparent 75%),radial-gradient(ellipse 40% 30% at 64% 62%,rgb(74 54 33 / .95),transparent 72%),radial-gradient(ellipse 35% 28% at 30% 30%,rgb(52 38 24 / .9),transparent 70%),radial-gradient(ellipse 60% 50% at 50% 50%,rgb(45 33 21 / .75),transparent 85%),linear-gradient(#2c2014db,#2c2014db)}.cctv-frame span{position:absolute;font:600 12px var(--font-data);letter-spacing:.08em;color:#f2f2f2;text-shadow:0 1px 2px #000}.cctv-tl{left:var(--gutter);top:var(--top-hud)}.cctv-tr{right:var(--gutter);top:var(--top-hud)}.cctv-tr i{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--stamp);animation:pulse .8s ease-in-out infinite alternate}.cctv-bl{left:var(--gutter);bottom:var(--s4);font-size:18px!important}.ico{display:block;flex:none}.today-cta,.nc-cta,.pill,.cliff-row button,.hint-btn,.read-btn,.ask-open,.eps .lock,.streak,.streak-note{display:inline-flex;align-items:center;gap:6px}.streak .ico,.streak-note .ico{--icon-dot: var(--accent);color:var(--text-2)}.cliff-row button{justify-content:center}.eps .lock .ico{--icon-dot: var(--text-3)}.next-card.locked .nc-cta .ico{--icon-dot: var(--on-accent)}.icon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s2);margin-top:var(--s3)}.icon-grid figure{display:grid;justify-items:center;gap:var(--s1);margin:0;padding:var(--s3) 0;border-radius:var(--r-sm);background:var(--surface)}.icon-grid figcaption{font:600 var(--fs-label) var(--font-data);color:var(--text-2)}.icon-grid.on-paper figure{background:var(--paper);color:var(--on-paper);--icon-bg: var(--paper);--icon-dot: var(--stamp)}.debug{position:absolute;z-index:50;right:6px;bottom:6px;font:var(--fs-label) var(--font-data)}.debug>button{min-height:28px;padding:0 var(--s2);font-size:var(--fs-label);background:#000}.debug .panel{position:absolute;right:0;bottom:34px;width:230px;padding:var(--s3);background:#000;border:1px solid #333;border-radius:var(--r-sm)}.debug td:last-child{text-align:right;color:var(--accent)}.debug .panel button{min-height:30px;margin:var(--s2) var(--s2) 0 0;font-size:var(--fs-label)}
