:root{--ui-scale:1;--font-scale:1;--bg:#07070b;--bg-raised:#101018;--bg-glass:#10101adb;--ink:#eceaf2;--ink-muted:#9a97a8;--line:#8cc8ff24;--accent:#3ee6d6;--accent-2:#ff5da2;--accent-ink:#05221f;--danger:#ff7a5c;--focus:#ffb545;--radius:14px;--font:"Avenir Next", Avenir, "Segoe UI Variable", "Segoe UI", Futura, system-ui, -apple-system, sans-serif}:root[data-invert=true]{--bg:#f5f3ee;--bg-raised:#fff;--bg-glass:#ffffffeb;--ink:#16141c;--ink-muted:#5c5a68;--line:#14142824;--accent:#0e8f84;--accent-2:#c22e6f;--accent-ink:#fff;--danger:#c2543f;--focus:#a56a00}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--font);font-size:calc(16px * var(--font-scale));-webkit-font-smoothing:antialiased;margin:0;padding:0;overflow:hidden}button{font-family:inherit}:where(button,a,summary,input,select):focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:6px}#game-canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block;position:fixed;inset:0}.top-pill{top:calc(10px * var(--ui-scale));z-index:30;align-items:center;gap:calc(.65em * var(--ui-scale));padding:calc(.4em * var(--ui-scale)) calc(1.1em * var(--ui-scale));font-size:calc(.85rem * var(--ui-scale));letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--ink);background:var(--bg-glass);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;opacity:.82;border-radius:999px;transition:border-color .16s,opacity .16s;display:flex;position:fixed;left:50%;translate:-50%}.top-pill:hover{opacity:1;border-color:var(--accent)}.pill-sep{background:var(--line);width:1px;height:1em}.pill-high{color:var(--accent)}.pill-chevron{opacity:.6;transition:rotate .2s}.top-pill[aria-expanded=true] .pill-chevron{rotate:180deg}.stats-panel{z-index:25;width:min(920px,100vw - 24px);max-height:82vh;padding:calc(3.4rem * var(--ui-scale)) calc(1.6rem * var(--ui-scale)) calc(1.2rem * var(--ui-scale));background:var(--bg-glass);border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:none;transition:translate .26s cubic-bezier(.25,.9,.3,1);position:fixed;top:0;left:50%;overflow-y:auto;translate:-50% -104%}.stats-panel.open{translate:-50%}@media (prefers-reduced-motion:reduce){.stats-panel{transition:none}}:root[data-reduce-motion=true] .stats-panel{transition:none}.stats-grid{gap:calc(.7rem * var(--ui-scale));grid-template-columns:repeat(auto-fit,minmax(130px,1fr));display:grid}.stat-tile{padding:calc(.7rem * var(--ui-scale)) calc(.85rem * var(--ui-scale));background:var(--bg-raised);border:1px solid var(--line);border-radius:10px}.stat-tile .k{font-size:calc(.66rem * var(--ui-scale));letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:.3em;display:block}.stat-tile .v{font-size:calc(1.25rem * var(--ui-scale));font-variant-numeric:tabular-nums;font-weight:600}.stat-tile .v small{color:var(--ink-muted);font-size:.6em;font-weight:400}.stat-tile.primary{border-color:color-mix(in srgb, var(--accent) 55%, var(--line));box-shadow:0 0 14px color-mix(in srgb, var(--accent) 12%, transparent)}.stat-tile.primary .v{color:var(--accent)}.stats-charts{gap:calc(1.1rem * var(--ui-scale));flex-wrap:wrap;margin:.4rem 0 1.1rem;display:flex}.chart-block{flex:220px;min-width:200px}.chart-rt{flex:2 320px}.chart-title{font-size:calc(.66rem * var(--ui-scale));letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin:0 0 .55rem;font-weight:600}.chart-rt svg{background:color-mix(in srgb, var(--bg-raised) 55%, transparent);border:1px solid var(--line);border-radius:10px;width:100%;height:auto;display:block}.chart-rt .axis{fill:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:10px}.rt-dot .mark{transition:r 90ms}.rt-dot:hover .mark{r:5px}.zone-grid{aspect-ratio:1;grid-template-columns:repeat(3,1fr);gap:3px;max-width:230px;display:grid}.zone-cell{border:1px solid var(--line);text-align:center;font-size:calc(.9rem * var(--ui-scale));font-variant-numeric:tabular-nums;border-radius:8px;place-content:center;font-weight:600;display:grid}.zone-cell small{color:var(--ink-muted);font-size:.62em;font-weight:400}.zone-cell.hot{color:var(--accent-ink)}.zone-cell.hot small{color:color-mix(in srgb, var(--accent-ink) 72%, transparent)}.bias-row{font-size:calc(.8rem * var(--ui-scale));grid-template-columns:3.6em 1fr 3.2em;align-items:center;gap:.55rem;margin-bottom:.6rem;display:grid}.bias-track{background:color-mix(in srgb, var(--line) 65%, transparent);border-radius:999px;height:8px;overflow:hidden}.bias-fill{background:var(--danger);border-radius:999px;height:100%}.bias-val{color:var(--ink-muted);text-align:right;font-variant-numeric:tabular-nums}.stats-env{font-size:calc(.68rem * var(--ui-scale));color:var(--ink-muted);overflow-wrap:anywhere;margin:.9rem 0 0;line-height:1.5}.stats-details{margin-top:calc(1rem * var(--ui-scale))}.stats-details summary{cursor:pointer;color:var(--accent);letter-spacing:.06em;-webkit-user-select:none;user-select:none;padding:.4em 0}.stats-details table{border-collapse:collapse;width:100%;font-size:calc(.85rem * var(--ui-scale));font-variant-numeric:tabular-nums}.stats-details th,.stats-details td{text-align:left;border-bottom:1px solid var(--line);padding:.45em .6em}.stats-details th{color:var(--ink-muted);font-weight:500}.stats-actions{margin-top:calc(1.1rem * var(--ui-scale));flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.stats-actions-spacer{flex:1}.btn{padding:calc(.55em * var(--ui-scale)) calc(1.3em * var(--ui-scale));font-size:calc(.9rem * var(--ui-scale));letter-spacing:.05em;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line);cursor:pointer;border-radius:999px;transition:border-color .14s,background .14s}.btn:hover{border-color:var(--accent)}.btn-accent{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn-accent:hover{filter:brightness(1.1)}.btn-quiet{background:0 0}.btn-start{font-size:calc(1.15rem * var(--ui-scale));padding:calc(.7em * var(--ui-scale)) calc(2.6em * var(--ui-scale));background:var(--accent);color:var(--accent-ink);letter-spacing:.12em;text-transform:uppercase;box-shadow:0 0 32px color-mix(in srgb, var(--accent) 45%, transparent);border:none;font-weight:700}.btn-start:hover{filter:brightness(1.12)}.linklike{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.countdown{z-index:30;text-align:center;background:color-mix(in srgb, var(--bg) 45%, transparent);place-items:center;display:grid;position:fixed;inset:0}.countdown-task{max-width:26ch;font-size:calc(1.25rem * var(--font-scale));color:var(--ink);letter-spacing:.03em;text-wrap:balance;margin:0 auto 1.4rem;font-weight:600;line-height:1.4}.countdown-num{min-height:1.1em;font-size:calc(6.5rem * var(--ui-scale));background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#0000;filter:drop-shadow(0 0 28px color-mix(in srgb, var(--accent) 40%, transparent));-webkit-background-clip:text;background-clip:text;font-weight:800;line-height:1}.countdown-num.tick{animation:.6s ease-out count-pop}@keyframes count-pop{0%{opacity:0;transform:scale(1.45)}35%{opacity:1}to{opacity:1;transform:scale(1)}}:root[data-reduce-motion=true] .countdown-num.tick{animation:none}.splash{z-index:40;background:radial-gradient(ellipse 70% 55% at 50% 30%, color-mix(in srgb, var(--accent) 7%, transparent), transparent), var(--bg);display:flex;position:fixed;inset:0;overflow-y:auto}.splash-inner{text-align:center;max-width:640px;margin:auto;padding:2rem 1.5rem}.splash-logo{font-size:calc(4.2rem * var(--ui-scale));letter-spacing:.34em;background:linear-gradient(120deg, var(--accent), var(--accent-2));color:#0000;filter:drop-shadow(0 0 24px color-mix(in srgb, var(--accent) 35%, transparent));-webkit-background-clip:text;background-clip:text;margin:0 -.34em 0 0;font-weight:800}.splash-sub{color:var(--ink-muted);letter-spacing:.22em;text-transform:uppercase;font-size:calc(.8rem * var(--ui-scale));margin:.2rem 0 1.6rem}.variant-picker{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.7rem;margin-bottom:1.4rem;display:grid}.variant-card{text-align:left;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer;grid-template-columns:auto 1fr;align-items:start;column-gap:.65rem;padding:.9rem .9rem .8rem;transition:border-color .14s,box-shadow .14s;display:grid;position:relative}.variant-icon{color:var(--accent);grid-row:1/span 2;margin-top:.05rem;display:inline-flex}.variant-icon svg{width:calc(22px * var(--ui-scale));height:calc(22px * var(--ui-scale))}.variant-card:disabled{opacity:.4;cursor:default}.variant-card:disabled .variant-icon{color:var(--ink-muted)}.variant-soon{font-size:calc(.58rem * var(--ui-scale));letter-spacing:.09em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:.2em .7em;display:inline-block}.variant-card .variant-soon{grid-column:2;justify-self:start;margin-top:.5rem}.info-item .variant-soon{vertical-align:middle;margin-left:.55em}.variant-card[aria-checked=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 22px color-mix(in srgb, var(--accent) 25%, transparent)}.variant-card h3{font-size:calc(.95rem * var(--ui-scale));letter-spacing:.04em;margin:0 0 .25em}.variant-card p{font-size:calc(.76rem * var(--ui-scale));color:var(--ink-muted);margin:0;line-height:1.45}.splash-note{text-align:left;font-size:calc(.82rem * var(--ui-scale));color:var(--ink-muted);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:1.5rem;padding:.9rem 1.1rem;line-height:1.55}.splash-note p{margin:0 0 .5em}.splash-note p:last-child{margin-bottom:0}.splash-note strong{color:var(--ink)}.info-intro{font-size:calc(.85rem * var(--ui-scale));color:var(--ink-muted);margin:0 0 1.1rem;line-height:1.55}.info-item{border-top:1px solid var(--line);grid-template-columns:auto 1fr;align-items:start;column-gap:.8rem;padding:.85rem 0;display:grid}.info-item .variant-icon{grid-row:1/span 2;margin-top:.1rem}.info-item h3{font-size:calc(.95rem * var(--ui-scale));letter-spacing:.04em;margin:0 0 .3em}.info-item p{font-size:calc(.82rem * var(--ui-scale));color:var(--ink-muted);margin:0;line-height:1.55}.info-item--soon h3,.info-item--soon .variant-icon{opacity:.55}.info-item--soon .variant-icon{color:var(--ink-muted)}.splash-credit{font-size:calc(.75rem * var(--ui-scale));letter-spacing:.1em;color:var(--ink-muted);margin-top:1.4rem}.splash-credit a{color:var(--accent);text-decoration:none}.splash-credit a:hover{text-decoration:underline}.settings{z-index:50;background:color-mix(in srgb, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);place-items:center;display:grid;position:fixed;inset:0}.settings-inner{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;width:min(680px,100vw - 24px);max-height:88vh;display:flex}.settings-header,.settings-footer{justify-content:space-between;align-items:center;padding:.9rem 1.3rem;display:flex}.settings-header{border-bottom:1px solid var(--line)}.settings-footer{border-top:1px solid var(--line)}.settings-header h2{font-size:calc(1.05rem * var(--ui-scale));letter-spacing:.14em;text-transform:uppercase;margin:0}.settings-body{padding:.6rem 1.3rem 1rem;overflow-y:auto}.settings-body h3{font-size:calc(.72rem * var(--ui-scale));letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:1.3rem 0 .5rem}.setting-row{font-size:calc(.88rem * var(--ui-scale));justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 0;display:flex}.setting-row>label:first-child{flex:1}.setting-row .hint{color:var(--ink-muted);margin-top:.15em;font-size:.8em;line-height:1.4;display:block}.setting-row input[type=range]{width:190px;accent-color:var(--accent)}.setting-row input[type=checkbox]{width:1.35em;height:1.35em;accent-color:var(--accent)}.setting-row .val{text-align:right;font-variant-numeric:tabular-nums;min-width:4.5em;color:var(--ink-muted);font-size:.85em}.calib-box{border:1px dashed var(--line);font-size:calc(.82rem * var(--ui-scale));color:var(--ink-muted);border-radius:10px;margin-top:.4rem;padding:.8rem 1rem}.calib-bar{background:linear-gradient(90deg, var(--accent), var(--accent-2));border-radius:4px;height:12px;margin:.6rem 0}.orientation-gate{z-index:60;text-align:center;background:var(--bg);color:var(--ink);place-items:center;padding:2rem;display:grid;position:fixed;inset:0}.orientation-gate p{letter-spacing:.08em;color:var(--ink-muted);margin-top:1rem}.orientation-gate svg{color:var(--accent)}[hidden]{display:none!important}
