:root{--ui-scale:1;--ink:#f4f1e8;--dim:#a5a9b4;--bg:#111318;--panel:#111318eb;--line:#2c303a;--acid:#e9ff3a;--hot:#ff5a3c;--head:"Bahnschrift", "DIN Condensed", "Arial Narrow", "Roboto Condensed", Impact, sans-serif;--body:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--body);font-size:calc(16px * var(--ui-scale));cursor:default;-webkit-user-select:none;user-select:none;margin:0;overflow:hidden}#game{width:100%;height:100%;display:block;position:fixed;inset:0}#hud,#ui{pointer-events:none;position:fixed;inset:0}#ui{display:grid}.screen{flex-direction:column;grid-area:1/1;min-height:0;padding:4vh 5vw;display:flex;overflow:hidden}.screen.under{visibility:hidden}.screen.panel,.screen.main{background:linear-gradient(100deg,#0a0b0ff0 0%,#0a0b0fdb 46%,#0a0b0f40 100%)}.screen.pause,.screen.results{background:#0a0b0fdb}.screen.results.watching{background:0 0}.screen.results.watching>:not(.btnrow){visibility:hidden}h2{font:700 2.6rem/1 var(--head);text-transform:uppercase;letter-spacing:.02em;margin:0 0 1.2rem}h2.win{color:var(--acid)}h2.loss{color:var(--hot)}h3{font:700 1.05rem/1.2 var(--head);text-transform:uppercase;letter-spacing:.08em;color:var(--dim);margin:1.1rem 0 .4rem}p{margin:.3rem 0;line-height:1.45}.note{color:var(--dim);max-width:62ch;font-size:.92rem}.warn{color:var(--hot);min-height:1.3em;font-size:.9rem}.logo{font:900 clamp(4rem, 15vw, 12rem) / .82 var(--head);letter-spacing:-.03em;text-transform:uppercase;text-shadow:.05em .05em #000;transform:skew(-7deg)}.logo em{color:var(--acid);font-style:normal}.logo.small{font-size:3.2rem}.screen.title{background:linear-gradient(#0a0b0f1a 38%,#0a0b0feb 100%);justify-content:flex-end;padding-bottom:9vh}.title .sub{font:600 1.25rem var(--head);letter-spacing:.04em;text-transform:uppercase;color:var(--dim);margin-top:1rem}.title .press{font:700 1.7rem var(--head);text-transform:uppercase;color:var(--acid);margin-top:2.2rem;animation:1.4s ease-in-out infinite pulse}.title .padinfo{color:var(--dim);min-height:2.6em}@keyframes pulse{50%{opacity:.45}}.main-head{justify-content:space-between;align-items:flex-start;margin-bottom:2.5vh;display:flex}.idcard{text-align:right;font-family:var(--head);text-transform:uppercase}.idcard b{font-size:1.5rem;display:block}.idcard span{color:var(--acid);letter-spacing:.06em}.menu{flex-direction:column;gap:.45rem;width:min(30rem,100%);min-height:0;padding:.3rem .3rem .3rem 0;display:flex;overflow-y:auto}.desc{color:var(--dim);min-height:1.6em;margin-top:.8rem}.foot{justify-content:space-between;align-items:flex-end;gap:1rem;margin-top:auto;display:flex}.btn{font:700 1.1rem/1 var(--head);text-transform:uppercase;letter-spacing:.04em;border:2px solid var(--line);color:var(--ink);background:#181b22e6;flex:none;padding:.75rem 1rem}.btn.big{padding:.85rem 1.1rem;font-size:1.5rem}.btn.primary{border-color:#5a6130}.btn.off{opacity:.4}.btn.danger{color:var(--hot)}.btn.focus,.row.focus,.key.focus,.chip.focus{background:var(--acid);border-color:var(--acid);color:#0c0d10;transform:translate(.35rem)}.btn.danger.focus{background:var(--hot);border-color:var(--hot)}.btnrow{flex-wrap:wrap;gap:.6rem;margin-top:1.2rem;display:flex}.btnrow .btn.focus{transform:translateY(-.15rem)}.rows{flex-direction:column;gap:.3rem;width:min(40rem,100%);min-height:0;padding-right:.5rem;display:flex;overflow-y:auto}.row{border:2px solid var(--line);background:#181b22e6;flex:none;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem .8rem;display:flex}.row-l{font-weight:600}.row-v{font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;display:flex}.row-v b{text-align:center;min-width:6.5rem}.row-v i{opacity:.5;font-size:.8em;font-style:normal}.row.focus .row-v i{opacity:1}.hints{color:var(--dim);flex-wrap:wrap;align-items:center;gap:1.2rem;margin-top:.9rem;font-size:.9rem;display:flex}.hints span{align-items:center;gap:.4rem;display:inline-flex}.gl{font:800 .8em/1 var(--body);vertical-align:middle;color:#0c0d10;justify-content:center;align-items:center;display:inline-flex}.gl-round{background:var(--gc,#fff);border-radius:50%;width:1.7em;height:1.7em}.gl-pill{background:#d9dce4;border-radius:.4em;min-width:2.2em;padding:.28em .5em}.gl-stick{width:1.7em;height:1.7em;color:var(--ink);background:#2c303a;border:2px solid #8a8f9a;border-radius:50%}.gl-face{color:inherit}.focus .gl-face circle[fill=none],.focus .gl-face path[fill=none]{stroke:#3a3d44}.ctl{grid-template-columns:1fr 1fr;gap:0 3rem;width:min(60rem,100%);min-height:0;display:grid;overflow-y:auto}.ctl-row{border-bottom:1px solid var(--line);align-items:center;gap:.8rem;padding:.32rem 0;display:flex}.ctl-row .g{align-items:center;gap:.2rem;min-width:5.5rem;display:inline-flex}.padtest{align-items:center;gap:1rem;min-height:64px;margin:.4rem 0;display:flex}.padtest .st{border:2px solid var(--line);border-radius:50%;place-items:center;width:60px;height:60px;display:grid}.padtest .st i{background:var(--acid);border-radius:50%;width:14px;height:14px;display:block}.padtest .tr{border:2px solid var(--line);align-items:flex-end;width:14px;height:60px;display:flex}.padtest .tr.on{border-color:var(--acid)}.padtest .tr i{background:var(--ink);transform-origin:bottom;width:100%;height:100%;display:block}.padtest .bt{flex-wrap:wrap;gap:.3rem;display:flex}.final{font-family:var(--head);text-transform:uppercase;align-items:center;gap:1.5rem;margin-bottom:.6rem;font-size:1.3rem;display:flex}.final b{font-variant-numeric:tabular-nums;font-size:3.4rem}.stats{border-collapse:collapse;font-variant-numeric:tabular-nums;margin-top:.6rem;font-size:.92rem}.stats th{font:700 .75rem var(--head);text-transform:uppercase;letter-spacing:.06em;color:var(--dim);text-align:right;padding:.2rem .8rem}.stats td{text-align:right;border-top:1px solid var(--line);padding:.14rem .8rem}.stats td:first-child{text-align:left;font-weight:600}.stats tr.mine td{color:var(--acid)}.stats tr.gap td{border:0;height:.4rem}.stats tr.t0 td:first-child{box-shadow:inset 3px 0 0 var(--t0,#ff7a1a)}.stats tr.t1 td:first-child{box-shadow:inset 3px 0 0 var(--t1,#2a7cff)}.stats small{color:var(--dim);font-weight:400}.extra{margin:.4rem 0}.hud{font-family:var(--head);position:absolute;inset:0}.scorebar{align-items:stretch;gap:.5rem;display:flex;position:absolute;top:2vh;left:50%;transform:translate(-50%)}.scorebar .side{border-bottom:4px solid var(--tc);background:#0c0d10db;grid-template-columns:auto auto;align-items:center;column-gap:.7rem;min-width:11rem;padding:.35rem .8rem .5rem;display:grid}.scorebar .s1{direction:rtl}.scorebar .s1>*{direction:ltr}.tname{text-transform:uppercase;letter-spacing:.05em;font-size:.95rem;font-weight:700}.sc{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800}.clock{background:var(--ink);color:#0c0d10;font-variant-numeric:tabular-nums;align-items:center;gap:.4rem;padding:.35rem .8rem;font-size:1.6rem;font-weight:800;display:flex}.clock.late{background:var(--hot);color:#fff}.clock small{font-size:.6em}.surge{background:#2c303a;grid-column:1/-1;height:7px;margin-top:.25rem;overflow:hidden}.surge i{transform-origin:0;background:linear-gradient(90deg,#ff7a1a,#ffd23a);height:100%;display:block;transform:scaleX(0)}.s1 .surge i{transform-origin:100%}.surge.full{box-shadow:0 0 0 2px var(--acid);animation:.7s infinite pulse}.surge.lit i{background:#fff}.hud-me{background:#0c0d10db;min-width:13rem;padding:.5rem .8rem;position:absolute;bottom:4vh;left:3vw}.hud.plain .scorebar{display:none}.who{text-transform:uppercase;letter-spacing:.04em;min-height:1.2em;font-weight:700}.stam{background:#2c303a;height:8px;margin-top:.35rem;overflow:hidden}.stam i{background:var(--acid);transform-origin:0;height:100%;display:block}.stam i.low{background:var(--hot)}.banner{text-align:center;opacity:0;text-transform:uppercase;transition:opacity .18s,transform .18s;position:absolute;top:24vh;left:0;right:0;transform:scale(.9)}.banner.on{opacity:1;transform:scale(1)}.banner b{text-shadow:.04em .04em #000;font-size:6rem;font-weight:900;line-height:.9;display:block;transform:skew(-7deg)}.banner span{letter-spacing:.06em;background:#0c0d10db;margin-top:.6rem;padding:.3rem .9rem;font-size:1.3rem;font-weight:700;display:inline-block}.banner.goal b{color:var(--acid);font-size:9rem}.banner.surge b{color:#ff9a2a}.banner.count b{font-size:8rem}.caps{font-family:var(--body);flex-direction:column;align-items:center;gap:.25rem;display:flex;position:absolute;bottom:5vh;left:50%;transform:translate(-50%)}.cap{background:#000000d1;padding:.25rem .7rem;font-size:1rem}.tag{text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--tc);white-space:nowrap;will-change:transform;background:#0c0d10cc;padding:.1rem .4rem;font-size:.78rem;font-weight:700;position:absolute;top:0;left:0}.tag.ai{opacity:.55}.replaytag{background:var(--hot);color:#fff;letter-spacing:.1em;padding:.3rem .8rem;font-weight:800;display:none;position:absolute;top:12vh;left:3vw}.replaytag.on{display:block}.padlost{text-align:center;background:#0a0b0fcc;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;display:none;position:absolute;inset:0}.padlost.on{display:flex}.padlost b{text-transform:uppercase;color:var(--hot);font-size:3rem}.padlost span{font-family:var(--body);font-size:1.1rem}.perf{font:.8rem var(--body);color:var(--dim);font-variant-numeric:tabular-nums;position:absolute;top:1vh;right:1vw}@media (max-width:900px){.ctl{grid-template-columns:1fr}.banner b{font-size:3.5rem}.banner.goal b{font-size:5rem}}@media (prefers-reduced-motion:reduce){.title .press,.surge.full{animation:none}.banner{transition:none}}.osk-field{font:700 2.2rem var(--head);border:2px solid var(--acid);background:#0c0d10;align-items:center;width:min(44rem,100%);min-height:3.4rem;padding:.4rem .8rem;display:flex}.osk-field i{background:var(--acid);width:3px;height:1.2em;margin-left:3px;animation:1s steps(2,end) infinite pulse}.osk-field small{font:400 .9rem var(--body);color:var(--dim);margin-left:auto}.osk-grid{flex-direction:column;gap:.3rem;width:min(44rem,100%);margin-top:1rem;display:flex}.osk-row{gap:.3rem;display:flex}.key{text-align:center;min-width:0;font:700 1.3rem var(--head);border:2px solid var(--line);background:#181b22f2;flex:1 1 0;padding:.6rem 0}.key.wide{text-transform:uppercase;flex:2 1 0;justify-content:center;align-items:center;gap:.4rem;font-size:1rem;display:flex}.key.focus{transform:none}.key.shift.on{border-color:var(--acid)}.ed-head{align-items:baseline;gap:1.5rem;display:flex}.ed-head h2{margin-bottom:.6rem}.saved{color:var(--acid);font-size:.9rem}.tabs{font:700 .9rem var(--head);text-transform:uppercase;letter-spacing:.05em;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.tabs span{border-bottom:3px solid var(--line);color:var(--dim);padding:.3rem .7rem}.tabs span.on{color:var(--ink);border-color:var(--acid)}.tabs span.done{color:var(--ink)}.ed-cols{flex:1;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:2.5rem;min-height:0;display:grid}.ed-form{width:auto}.ed-side{flex-direction:column;gap:.6rem;min-height:0;display:flex}.preview{background:radial-gradient(circle at 50% 60%,#e9ff3a1f,#0000 65%);width:100%;height:34vh;min-height:170px;display:block}.field{flex-direction:column;flex:none;display:flex}.err{color:var(--hot);min-height:1.1em;padding-left:.2rem;font-size:.85rem}.err.ok{color:var(--dim)}.txt{text-align:right;min-width:9rem}.attrs{flex-direction:column;gap:.16rem;font-size:.86rem;display:flex}.attr{font-variant-numeric:tabular-nums;grid-template-columns:8.5rem 1fr 2rem 2rem;align-items:center;gap:.5rem;display:grid}.attr .bar{background:#2c303a;height:7px;position:relative}.attr .bar i{background:var(--ink);height:100%;display:block}.attr .bar u{background:var(--dim);width:2px;position:absolute;top:-2px;bottom:-2px;left:46.15%}.attr b{text-align:right}.attr em{color:var(--dim);font-style:normal}.attr em.up{color:var(--acid)}.attr em.dn{color:var(--hot)}.btn.pick.picked{border-color:var(--acid);box-shadow:inset 4px 0 0 var(--acid)}.archdesc{max-width:46ch;min-height:3em;margin-top:.6rem}.sumlist{grid-template-columns:1fr 1fr;gap:.2rem 1.5rem;display:grid}.sum{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:.5rem;padding:.25rem 0;display:flex}.sum span{color:var(--dim)}.sum small{color:var(--hot);flex-basis:100%}.sum.bad b{color:var(--hot)}.sumerr{color:var(--hot);min-height:1.3em;margin-top:.4rem}.screen.final{background:#0a0b0ff0;justify-content:center;max-width:none}.screen.final>*{max-width:46rem}p.big{margin:.45rem 0;font-size:1.2rem}.typed{font:800 2.4rem var(--head);letter-spacing:.12em;min-height:3rem}.profcard{border-left:4px solid var(--acid);margin-bottom:1rem;padding:.4rem 0 .4rem 1rem}.profcard b{font:800 2rem var(--head);text-transform:uppercase;display:block}.profcard .rk{color:var(--acid);font:700 1.2rem var(--head);text-transform:uppercase;letter-spacing:.05em}.btn[disabled]{opacity:.4}@media (max-width:1000px){.ed-cols{grid-template-columns:1fr;overflow-y:auto}.preview{height:22vh}}.lobby-cols{flex:1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2.5rem;min-height:0;display:grid}.lobby-cols .rows{width:auto}.member{border-left:4px solid var(--acid);background:#181b22e6;flex:none;justify-content:space-between;align-items:baseline;gap:1rem;padding:.6rem .8rem;display:flex}.member b{font:700 1.3rem var(--head);text-transform:uppercase}.member b i{color:var(--acid);font-style:normal}.member span{color:var(--dim);font-size:.9rem}.member.empty{border-left-color:var(--line);opacity:.6}.delta{font:700 1.5rem var(--head);text-transform:uppercase}.delta.up b{color:var(--acid)}.delta.dn b{color:var(--hot)}.extra .rk{color:var(--acid);font:700 1.2rem var(--head);text-transform:uppercase}@media (max-width:900px){.lobby-cols{grid-template-columns:1fr;overflow-y:auto}}.screen.board .tabs span{cursor:default}.lb{flex-direction:column;flex:1;gap:.2rem;width:min(58rem,100%);min-height:0;padding-right:.5rem;display:flex;overflow-y:auto}.lbrow{border-left:4px solid var(--line);font-variant-numeric:tabular-nums;background:#181b22e6;flex:none;grid-template-columns:3.2rem minmax(0,1.6fr) minmax(0,1.2fr) 4.5rem 5.5rem;align-items:baseline;gap:.8rem;padding:.45rem .8rem;display:grid}.lbrow i{font:800 1.2rem var(--head);color:var(--dim);font-style:normal}.lbrow b{font:700 1.15rem var(--head);text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lbrow span{color:var(--dim);font-size:.9rem}.lbrow em{font:800 1.2rem var(--head);text-align:right;font-style:normal}.lbrow small{color:var(--dim);text-align:right}.lbrow.mine{border-left-color:var(--acid)}.lbrow.mine b,.lbrow.first i{color:var(--acid)}.lbrow.first{background:#3c421ee6}.lbrow.rW{border-left-color:var(--acid)}.lbrow.rL{border-left-color:var(--hot)}.tutbox{border-left:6px solid var(--acid);width:min(44rem,90vw);font-family:var(--body);background:#0c0d10e6;padding:.8rem 1.1rem;position:absolute;top:13vh;left:50%;transform:translate(-50%)}.tutbox small{color:var(--dim);font:700 .8rem var(--head);letter-spacing:.1em}.tutbox b{font:800 1.9rem/1.15 var(--head);text-transform:uppercase;margin:.15rem 0 .3rem;display:block}.tutbox p{color:var(--ink);font-size:1.02rem}.tutbox.ok{border-left-color:#6fdc6f}.tutbox.ok b{color:#6fdc6f}.tutbox .gl{vertical-align:.15em;font-size:.6em}.tutbox p .gl{vertical-align:middle;font-size:.8em}
