:root{--ink:#0c100e;--panel:#131a16;--panel-2:#18211c;--line:#28332c;--line-bright:#3d4f44;--text:#ece7d8;--dim:#8d9689;--faint:#59635a;--amber:#ffb000;--amber-soft:#ffb00024;--red:#e0524d;--red-soft:#e0524d24;--mono:"IBM Plex Mono", ui-monospace, monospace;--display:"Fraunces", "Iowan Old Style", serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background-color:var(--ink);color:var(--text);font-family:var(--mono);-webkit-font-smoothing:antialiased;background-image:radial-gradient(120% 90% at 50% -10%,#465c4c2e,#0000 60%),repeating-linear-gradient(0deg,#8d96890d 0 1px,#0000 1px 56px),repeating-linear-gradient(90deg,#8d96890d 0 1px,#0000 1px 56px);font-size:14px;line-height:1.5}body:after{content:"";pointer-events:none;z-index:50;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3CfeColorMatrix values='0 0 0 0 0.55 0 0 0 0 0.58 0 0 0 0 0.5 0 0 0 0.5 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");position:fixed;inset:0}#root{flex-direction:column;min-height:100vh;display:flex}::selection{background:var(--amber);color:var(--ink)}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.kicker{letter-spacing:.32em;text-transform:uppercase;color:var(--dim);font-size:11px;font-weight:500}.kicker .tick{color:var(--amber)}.btn-primary{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;background:var(--amber);color:var(--ink);border:1px solid var(--amber);padding:18px 38px;font-size:14px;font-weight:600;transition:box-shadow .25s,transform .15s,opacity .2s}.btn-primary:hover:not(:disabled){box-shadow:0 0 0 1px var(--ink), 0 0 28px #ffb00073;transform:translateY(-1px)}.btn-primary:disabled{opacity:.35;cursor:not-allowed}.btn-ghost{font-family:var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line-bright);padding:18px 28px;font-size:12px;font-weight:500;transition:all .2s}.btn-ghost:hover{color:var(--text);border-color:var(--dim)}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.rise{animation:.7s cubic-bezier(.16,1,.3,1) both rise}.start{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:1060px;margin:0 auto;padding:64px 28px 48px;display:flex}.start-title{font-family:var(--display);font-variation-settings:"opsz" 144;letter-spacing:-.015em;margin:18px 0 10px;font-size:clamp(64px,12.5vw,156px);font-weight:900;line-height:.92}.start-title .dot{color:var(--amber)}.start-sub{color:var(--dim);letter-spacing:.06em;max-width:58ch;margin:0 0 52px;font-size:13px}.start-sub em{color:var(--text);font-style:normal}.config{grid-template-columns:1fr 1fr;gap:28px;margin-bottom:40px;display:grid}@media (width<=760px){.config{grid-template-columns:1fr}}.config-group{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel) 0%, transparent 130%);padding:22px 22px 16px}.config-group>.kicker{margin-bottom:16px;display:block}.opt-row{text-align:left;width:100%;color:var(--dim);border:1px solid #0000;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;padding:11px 12px;transition:all .15s;display:flex}.opt-row:hover{color:var(--text);border-color:var(--line-bright)}.opt-row.on{color:var(--text);border-color:var(--amber);background:var(--amber-soft)}.opt-row .pip{vertical-align:1px;border:1px solid;border-radius:50%;width:8px;height:8px;margin-right:12px;display:inline-block}.opt-row.on .pip{background:var(--amber);border-color:var(--amber)}.opt-row .yield{letter-spacing:.08em;color:var(--faint);white-space:nowrap;font-size:11px}.opt-row.on .yield{color:var(--amber)}.start-foot{flex-wrap:wrap;align-items:center;gap:28px;display:flex}.readout{letter-spacing:.18em;text-transform:uppercase;color:var(--faint);font-size:11px}.readout b{color:var(--dim);font-weight:500}.attribution{letter-spacing:.08em;width:100%;max-width:1060px;color:var(--faint);margin:0 auto;padding:24px 28px;font-size:10px}.attribution a{color:var(--dim);-webkit-text-decoration-color:var(--line-bright);text-decoration-color:var(--line-bright)}.hud{justify-content:space-between;align-items:center;gap:18px;width:100%;max-width:1240px;margin:0 auto;padding:20px 28px 12px;display:flex}.hud-brand{font-family:var(--display);letter-spacing:.01em;font-size:19px;font-weight:800}.hud-brand .dot{color:var(--amber)}.hud-mid{align-items:center;gap:14px;display:flex}.ticks{gap:5px;display:flex}.ticks i{background:var(--line);width:16px;height:4px}.ticks i.hit{background:var(--amber)}.ticks i.miss{background:var(--red)}.ticks i.now{background:var(--dim);animation:1.2s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.35}}.hud-stat{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);font-size:12px}.hud-stat b{color:var(--amber);font-weight:600}.play{flex:1;grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:28px;width:100%;max-width:1240px;margin:0 auto;padding:12px 28px 40px;display:grid}@media (width<=980px){.play{grid-template-columns:1fr}}.frame-wrap{position:relative}.frame{aspect-ratio:1;background:var(--panel);border:1px solid var(--line-bright);position:relative;overflow:hidden}.frame img{object-fit:cover;opacity:0;width:100%;height:100%;display:block;position:absolute;inset:0}.frame img.loaded{animation:.9s ease-out forwards develop}@keyframes develop{0%{opacity:0;filter:brightness(2.2)contrast(.6)saturate(0)}to{opacity:1;filter:brightness()contrast()saturate()}}.frame .scanline{background:linear-gradient(90deg, transparent, var(--amber), transparent);opacity:0;z-index:3;height:2px;position:absolute;top:0;left:0;right:0;box-shadow:0 0 18px #ffb00099}.frame.scanning .scanline{animation:1s ease-in-out forwards scan}@keyframes scan{0%{opacity:1;top:0}95%{opacity:1}to{opacity:0;top:100%}}.frame .loading{color:var(--faint);letter-spacing:.3em;text-transform:uppercase;justify-content:center;align-items:center;font-size:11px;animation:1.4s steps(2,end) infinite blink;display:flex;position:absolute;inset:0}.corners,.corners:before,.corners:after,.corners i:before,.corners i:after{pointer-events:none;position:absolute}.corners{z-index:4;inset:10px}.corners:before,.corners:after,.corners i:before,.corners i:after{content:"";border:0 solid var(--amber);opacity:.9;width:22px;height:22px}.corners:before{border-top-width:2px;border-left-width:2px;top:0;left:0}.corners:after{border-top-width:2px;border-right-width:2px;top:0;right:0}.corners i:before{border-bottom-width:2px;border-left-width:2px;bottom:0;left:0}.corners i:after{border-bottom-width:2px;border-right-width:2px;bottom:0;right:0}.frame-meta{letter-spacing:.22em;text-transform:uppercase;color:var(--faint);justify-content:space-between;padding:10px 2px 0;font-size:10px;display:flex}.verdict{z-index:5;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-top:2px solid var(--amber);background:#0c100ee0;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;animation:.45s cubic-bezier(.16,1,.3,1) both rise;display:flex;position:absolute;bottom:0;left:0;right:0}.verdict.bad{border-top-color:var(--red)}.verdict .status{letter-spacing:.3em;text-transform:uppercase;color:var(--amber);margin-bottom:4px;font-size:10px}.verdict.bad .status{color:var(--red)}.verdict .name{font-family:var(--display);font-size:clamp(17px,2.3vw,26px);font-weight:700;line-height:1.1}.verdict .pts{color:var(--amber);white-space:nowrap;font-size:clamp(20px,2.6vw,30px);font-weight:600}.verdict.bad .pts{color:var(--faint)}.verdict .pts small{letter-spacing:.2em;color:var(--dim);margin-left:6px;font-size:11px}.panel{border:1px solid var(--line);background:linear-gradient(180deg, var(--panel) 0%, transparent 140%);flex-direction:column;gap:14px;min-height:200px;padding:22px;display:flex}.panel>.kicker{margin-bottom:4px}.choices{flex-direction:column;gap:7px;display:flex}.choice{text-align:left;border:1px solid var(--line);width:100%;color:var(--dim);align-items:baseline;gap:12px;padding:12px 14px;font-size:13px;transition:all .13s;display:flex}.choice:hover:not(:disabled){color:var(--text);border-color:var(--line-bright);background:var(--panel-2)}.choice .key{color:var(--faint);font-size:11px}.choice.sel{color:var(--text);border-color:var(--amber);background:var(--amber-soft)}.choice.sel .key{color:var(--amber)}.choice:disabled{cursor:default;opacity:.45}.choice.is-answer{opacity:1;color:var(--text);border-color:var(--amber);background:var(--amber-soft)}.choice.is-wrong-pick{opacity:1;color:var(--text);border-color:var(--red);background:var(--red-soft)}.choice .tag{letter-spacing:.2em;text-transform:uppercase;margin-left:auto;font-size:10px}.choice.is-answer .tag{color:var(--amber)}.choice.is-wrong-pick .tag{color:var(--red)}.combo{position:relative}.combo input{width:100%;font-family:var(--mono);color:var(--text);background:var(--ink);border:1px solid var(--line-bright);caret-color:var(--amber);outline:none;padding:14px;font-size:14px}.combo input:focus{border-color:var(--amber)}.combo input::placeholder{color:var(--faint)}.combo-list{z-index:10;background:var(--panel);border:1px solid var(--line-bright);max-height:320px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 50px #0009}.combo-item{text-align:left;width:100%;color:var(--dim);border-bottom:1px solid var(--line);padding:10px 14px;font-size:12.5px;display:block}.combo-item:last-child{border-bottom:none}.combo-item.hi,.combo-item:hover{background:var(--amber-soft);color:var(--text)}.combo-item mark{color:var(--amber);background:0 0}.combo-empty{color:var(--faint);padding:12px 14px;font-size:12px}.panel-spacer{flex:1}.panel-note{letter-spacing:.1em;color:var(--faint);text-transform:uppercase;font-size:10.5px}.score{flex:1;width:100%;max-width:860px;margin:0 auto;padding:72px 28px 48px}.score-big{font-family:var(--display);font-variation-settings:"opsz" 144;color:var(--amber);text-shadow:0 0 70px #ffb00040;margin:18px 0 6px;font-size:clamp(96px,19vw,210px);font-weight:900;line-height:.85}.score-big small{font-family:var(--mono);letter-spacing:.3em;color:var(--dim);margin-left:14px;font-size:clamp(14px,2.4vw,22px);font-weight:500}.score-sub{color:var(--dim);letter-spacing:.12em;text-transform:uppercase;margin-bottom:48px;font-size:12.5px}.score-sub b{color:var(--text);font-weight:500}.ledger{border-top:1px solid var(--line-bright);margin-bottom:44px}.ledger-row{border-bottom:1px solid var(--line);grid-template-columns:34px 56px minmax(0,1fr) auto;align-items:center;gap:16px;padding:11px 0;animation:.5s cubic-bezier(.16,1,.3,1) both rise;display:grid}.ledger-row .idx{color:var(--faint);font-size:11px}.ledger-row img{object-fit:cover;border:1px solid var(--line-bright);filter:saturate(.85);width:56px;height:56px;display:block}.ledger-row .what .city{font-family:var(--display);font-size:16.5px;font-weight:600;line-height:1.2}.ledger-row .what .said{color:var(--red);letter-spacing:.04em;margin-top:2px;font-size:11px}.ledger-row .what .said:before{content:"you said ";color:var(--faint)}.ledger-row .got{text-align:right;color:var(--amber);white-space:nowrap;font-size:15px;font-weight:600}.ledger-row .got.zero{color:var(--faint);font-weight:400}.ledger-row .got small{letter-spacing:.16em;color:var(--faint);font-size:9.5px;font-weight:400;display:block}.score-actions{flex-wrap:wrap;gap:16px;display:flex}@media (width<=640px){.hud{padding:16px 18px 8px}.play,.start,.score{padding-left:18px;padding-right:18px}.verdict{flex-direction:column;align-items:flex-start;gap:6px}.hud-mid .ticks{display:none}}
