:root{--accent:#c6f704;--ink:#0b0b10;--white:#ececf3;--cyan:#19e8f5;--magenta:#e02bff;--yellow:#f0ee1a}*{box-sizing:border-box}html,body{color:#eee;background:#0a0a0c;height:100%;margin:0;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden}#game{touch-action:none;outline:none;width:100%;height:100%;position:fixed;inset:0}#root{pointer-events:none;position:fixed;inset:0}.overlay{pointer-events:auto;background:#050508b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.panel{border:1px solid #26262c;border-top:3px solid var(--accent);background:#111115;flex-direction:column;gap:8px;width:min(420px,92vw);padding:28px;display:flex}h1{letter-spacing:.14em;margin:0 0 12px;font-size:44px;font-weight:800}h1 span{color:var(--accent);margin-left:.3em}h2{letter-spacing:.1em;margin:0 0 8px}h3{letter-spacing:.15em;color:#888;text-transform:uppercase;margin:14px 0 4px;font-size:12px;font-weight:600}button{color:#eee;letter-spacing:.06em;text-align:left;cursor:pointer;text-transform:uppercase;background:#1a1a20;border:1px solid #2c2c34;padding:11px 14px;font-size:14px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.45;cursor:not-allowed}button em{float:right;color:var(--accent);font-size:10px;font-style:normal}button.primary{background:var(--accent);border-color:var(--accent);font-weight:700}.row{gap:6px;display:flex}.row button{text-align:center;flex:1;padding:8px 0}.row .on{background:var(--accent);border-color:var(--accent)}.keys{color:#888;margin:8px 0 0;font-size:12px;line-height:1.5}.hud{pointer-events:none;font-variant-numeric:tabular-nums;text-shadow:0 1px 4px #000;position:fixed;inset:0}.k{letter-spacing:.18em;color:#aaa;margin-top:6px;font-size:10px}.tl,.tr,.br{border-left:3px solid var(--accent);background:#08080c8c;padding:12px 16px;position:absolute}.tl{top:16px;left:16px}.tr{text-align:right;border-left:0;border-right:3px solid var(--accent);top:16px;right:16px}.big{font-size:34px;font-weight:800;line-height:1}.mid{font-size:24px;font-weight:700}.br{text-align:right;min-width:230px;bottom:16px;right:16px}.speed{font-size:64px;font-weight:800;line-height:1}.speed small{color:#aaa;margin-left:6px;font-size:14px}.gear{color:var(--accent);font-size:40px;font-weight:800;position:absolute;top:6px;left:14px}.rpm{background:#222;height:8px;margin-top:8px}.rpm i{height:100%;display:block}.tc{pointer-events:auto;gap:10px;display:flex;position:absolute;bottom:20px}.tc.l{left:20px}.tc.r{flex-direction:row;right:20px}.tb{text-align:center;touch-action:none;background:#14141ab3;border-radius:50%;width:78px;height:78px;padding:0}@media (max-width:700px){.br{bottom:120px}.speed{font-size:44px}}.cd{text-align:center;color:#fff;text-shadow:0 4px 24px #000;font-size:140px;font-weight:900;position:absolute;top:28%;left:0;right:0}.cd.go{color:var(--accent)}.dbg{color:#9f9;background:#000000a6;border-left:3px solid #2bd45a;margin:0;padding:10px 12px;font:12px/1.4 monospace;position:absolute;bottom:16px;left:16px}.res{background:#18181d;gap:12px;padding:6px 8px;display:flex}.res b{width:32px;color:var(--accent)}.res span:nth-child(2){flex:1}.res.me{outline:1px solid var(--accent)}input[type=range]{width:100%;accent-color:var(--accent)}.big small{color:#aaa;margin-left:2px;font-size:18px}.overlay.side{background:linear-gradient(90deg,#0000 55%,#05050899);justify-content:flex-end}.panel.garage{width:min(440px,96vw);max-height:100vh;margin-right:16px;overflow-y:auto}.garage h2 small{float:right;color:#e5b310;font-size:14px}.carlist{flex-direction:column;gap:4px;display:flex}.carlist button{grid-template-columns:1fr auto;padding:8px 12px;display:grid}.carlist button span{color:#888;grid-column:1;font-size:11px}.carlist button em{float:none;grid-area:1/2/3;align-self:center}.carlist .on{border-color:var(--accent)}.stat{color:#aaa;grid-template-columns:64px 1fr 110px;align-items:center;gap:8px;font-size:12px;display:grid}.stat em{text-align:right;color:#eee;font-style:normal}.bar{background:#222;height:6px}.bar i{background:var(--accent);height:100%;display:block}.up{background:#16161b;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:6px 8px;display:grid}.up small{color:#777;font-size:10px;display:block}.up button{text-align:center;min-width:74px;padding:6px 10px;font-size:12px}.pips{gap:3px;display:flex}.pips i{background:#2a2a32;width:10px;height:10px}.pips i.f{background:var(--accent)}.sw{gap:6px;display:flex}.sw button{border:2px solid #333;width:30px;height:30px;padding:0}.sw button.on{border-color:#fff}.devpill{pointer-events:auto;color:var(--accent);border:1px solid var(--accent);cursor:pointer;letter-spacing:.08em;z-index:9;background:#0b0b10;padding:3px 12px;font:600 11px monospace;position:fixed;bottom:6px;left:50%;transform:translate(-50%)}.dev{pointer-events:auto;color:#9f9;z-index:5;background:#060e08eb;border:1px solid #2bd45a;flex-direction:column;gap:6px;width:min(460px,96vw);max-height:70vh;padding:10px 12px;font:12px monospace;display:flex;position:fixed;bottom:34px;left:50%;overflow:auto;transform:translate(-50%)}.dev h4{color:#2bd45a;letter-spacing:.15em;margin:6px 0 0;font-size:11px}.dev label{align-items:center;gap:8px;display:flex}.dev .row button,.dev button{text-transform:none;letter-spacing:0;color:#9f9;background:#10301a;border-color:#2bd45a55;padding:4px 8px;font:11px monospace}.dev .row{flex-wrap:wrap}.dev .row button{text-align:center;flex:none}.panel{max-height:calc(100vh - 24px);overflow-y:auto}.menu{pointer-events:auto;background:linear-gradient(90deg,#050508f0 0,#050508d6 520px,#05050800 900px);display:flex;position:fixed;inset:0}.mcol{flex-direction:column;gap:8px;width:min(560px,100vw);height:100%;padding:32px 44px;display:flex;overflow-y:auto}.brand h1{margin:0;font-size:54px}.brand p{color:#9a9aa6;letter-spacing:.08em;margin:4px 0 22px;font-size:13px}.nav{flex-direction:column;gap:6px;display:flex}.navbtn{letter-spacing:.1em;background:#14141ab8;border:1px solid #2a2a32;border-left:3px solid #0000;align-items:baseline;gap:14px;padding:14px 18px;font-size:18px;font-weight:700;display:flex}.navbtn small{color:#8a8a96;letter-spacing:.04em;text-transform:none;margin-left:auto;font-size:11px;font-weight:400}.navbtn:hover:not(:disabled){border-left-color:var(--accent);background:#1e2606e0}.navbtn.primary{background:var(--accent);border-color:var(--accent);border-left-color:#fff}.navbtn:disabled{opacity:.4}.mh{letter-spacing:.12em;margin:0 0 6px;font-size:28px}.mscroll{flex-direction:column;gap:8px;display:flex}.tabs{gap:4px;margin:0 0 14px;display:flex}.tabs button{text-align:center;border-bottom:3px solid #0000;flex:1;padding:10px 0}.tabs .on{border-bottom-color:var(--accent);background:#1d1d24}.field h3{margin-top:8px}.val{float:right;color:#eee;letter-spacing:.05em;font-style:normal}.hint{color:#8a8a96;margin:8px 0;font-size:12px;line-height:1.5}.go{text-align:center;margin-top:10px;padding:16px;font-size:16px}.back{text-align:center;margin-top:6px}.statgrid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.statgrid div{background:#14141a;border:1px solid #26262c;padding:12px 14px}.statgrid b{font-size:24px;display:block}.statgrid span{letter-spacing:.15em;color:#888;font-size:10px}@media (max-width:700px){.mcol{padding:20px}.brand h1{font-size:38px}.menu{background:#050508e6}}.mcol,.panel,.dev,.mscroll{scrollbar-width:none;-ms-overflow-style:none}.mcol::-webkit-scrollbar{display:none}.panel::-webkit-scrollbar{display:none}.dev::-webkit-scrollbar{display:none}.mcol{padding-bottom:56px;-webkit-mask-image:linear-gradient(#0000 0,#000 26px calc(100% - 34px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 26px calc(100% - 34px),#0000 100%)}.navbtn.on{border-left-color:var(--accent);background:#1e2606e0}.navbtn:disabled{cursor:not-allowed}.cr{float:right;color:#e5b310;letter-spacing:.06em;margin-top:10px;font-size:15px}.statbox{background:#14141a99;border:1px solid #26262c;flex-direction:column;gap:7px;margin-top:4px;padding:12px 14px;display:flex}.carrow{background:#14141a;border:1px solid #26262c;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.carrow b{color:var(--accent);letter-spacing:.06em;display:block}.carrow small{color:#888;font-size:11px}.carrow span{color:#bbb;text-align:right;font-size:12px}.res{align-items:center}.res b{flex:none;min-width:34px}.res span:nth-child(2){flex:1;min-width:0}.festive{background:linear-gradient(90deg,#050508f2 0,#050508db 520px,#05050800 900px)}.rtitle{letter-spacing:.12em;color:#0000;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;font-size:46px;font-weight:900;line-height:1.05;animation:.6s cubic-bezier(.2,1.6,.4,1) both pop,3s linear infinite shine}.t1{background-image:linear-gradient(100deg,#b8860b,#ffe27a,#fff7c2,#ffd54a,#b8860b)}.t2{background-image:linear-gradient(100deg,#8e9aa6,#f0f4f8,#c4ccd4,#8e9aa6)}.t3{background-image:linear-gradient(100deg,#8a5a2b,#e0a064,#f3c89a,#8a5a2b)}.t4{background-image:linear-gradient(100deg,#9a9aa6,#fff,#9a9aa6)}.rsub{color:#b5b5c0;letter-spacing:.04em;margin:2px 0 16px;font-size:14px;animation:.7s .15s both pop}.podium{align-items:flex-end;gap:8px;margin:6px 0 12px;display:flex}.pod{transform-origin:bottom;text-align:center;border:1px solid #2a2a32;flex-direction:column;flex:1;justify-content:flex-start;align-items:center;gap:2px;min-width:0;padding:10px 6px;animation:.7s cubic-bezier(.2,1.2,.3,1) both rise;display:flex}.pod .medal{font-size:30px}.pod b{letter-spacing:.08em;font-size:15px}.pod small{color:#9a9aa6;font-size:11px}.pod em{color:#ddd;font-size:12px;font-style:normal}.p1{background:linear-gradient(#3a2e0c,#17130a);border-color:#d4a82a;min-height:176px;animation-delay:.25s;box-shadow:0 0 28px #ffc83c40}.p2{background:linear-gradient(#2c3238,#14161a);border-color:#9aa6b2;min-height:140px;animation-delay:.1s}.p3{background:linear-gradient(#3a2614,#171210);border-color:#b07a42;min-height:116px;animation-delay:.4s}.pod.you{outline:2px solid var(--accent);outline-offset:2px}.reward{background:#14141ab3;border:1px solid #26262c;border-left:3px solid #e5b310;align-items:baseline;gap:12px;margin:8px 0 6px;padding:12px 16px;animation:.6s .5s both pop;display:flex}.reward span{letter-spacing:.18em;color:#888;font-size:10px}.reward b{color:#ffd54a;font-size:30px}.reward small{color:#8a8a96;margin-left:auto;font-size:12px}.confetti{pointer-events:none;z-index:4;position:fixed;inset:0;overflow:hidden}.confetti i{opacity:.95;animation:linear infinite fall;position:absolute;top:-24px}@keyframes fall{0%{transform:translateY(-24px)rotate(0)}to{transform:translate(var(--dx),108vh) rotate(900deg)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes shine{to{background-position:200% 0}}.sectors{gap:6px;margin-top:8px;display:flex}.sec{background:#ffffff12;border-bottom:2px solid #444;flex:1;min-width:62px;padding:4px 8px}.sec span{letter-spacing:.15em;color:#999;font-size:9px;display:block}.sec b{font-size:14px}.sec.best{border-bottom-color:#2bd45a}.sec.best b{color:#5dff8a}.sec.slow{border-bottom-color:#e5b310}.sec.slow b{color:#ffd54a}.ach{opacity:.45;background:#14141a;border:1px solid #26262c;align-items:center;gap:12px;padding:9px 12px;display:flex}.ach.got{opacity:1;border-left:3px solid #e5b310}.ach span{font-size:20px}.ach div{flex:1}.ach b{letter-spacing:.05em;display:block}.ach small{color:#888;font-size:11px}.ach em{color:#e5b310;font-size:12px;font-style:normal}.toasts{z-index:7;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{background:#181206f5;border:1px solid #d4a82a;border-left:4px solid #ffd54a;align-items:center;gap:14px;min-width:340px;padding:10px 18px;animation:.45s cubic-bezier(.2,1.3,.4,1) both slidein;display:flex;box-shadow:0 8px 30px #00000080}.toast span{font-size:26px}.toast b{color:#ffd54a;letter-spacing:.06em;display:block}.toast small{color:#cbb}@keyframes slidein{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.wrong{background:#960a14e0;border:2px solid #fff;align-items:center;gap:18px;padding:12px 28px;animation:.7s steps(2,end) infinite blink;display:flex;position:absolute;top:22%;left:50%;transform:translate(-50%);box-shadow:0 0 40px #ff1e2899}.wrong b{letter-spacing:.18em;font-size:34px;display:block}.wrong small{letter-spacing:.06em;opacity:.9;font-size:12px;display:block}.warr{font-size:46px;line-height:1}@keyframes blink{0%{opacity:1}to{opacity:.35}}.navbtn.funky{background:linear-gradient(100deg,#c6f704,#19e8f5 55%,#e02bff,#c6f704) 0 0/250% 100%;border-color:#c6f704 #c6f704 #c6f704 #fff;animation:5s linear infinite shine}.navbtn.funky small{color:#0b0b10bf}.funkbar{text-align:center;background:#08080ec7;border:2px solid;min-width:320px;padding:8px 22px 12px;animation:.35s cubic-bezier(.2,1.6,.4,1) both pop;position:absolute;top:96px;left:50%;transform:translate(-50%)}.funkbar b{letter-spacing:.2em;font-size:26px;font-weight:900;display:block}.funkbar i{height:5px;margin-top:6px;transition:width .1s linear;display:block}.flash{letter-spacing:.15em;color:#fff;text-shadow:0 0 24px #19f0d8,0 4px 18px #000;pointer-events:none;font-size:64px;font-weight:900;animation:1.1s ease-out both flashy;position:absolute;top:36%;left:50%;transform:translate(-50%,-50%)}@keyframes flashy{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.15)}to{opacity:0;transform:translate(-50%,-90%)scale(1)}}.tc.hop{bottom:110px;left:50%;transform:translate(-50%)}button.primary,.row button.on,.navbtn.primary,.navbtn.funky{color:var(--ink)}.navbtn.primary small{color:#0b0b10b3}.row button.on{font-weight:800}.brand{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.logo{filter:drop-shadow(0 8px 22px #c6f70438);width:min(250px,60%);margin:-6px 0 -2px -4px;animation:5s ease-in-out infinite logofloat}@keyframes logofloat{50%{transform:translateY(-5px)rotate(-1deg)}}.wordmark{letter-spacing:.14em;transform-origin:0;color:var(--white);text-shadow:2px 0 var(--cyan),-2px 0 var(--magenta);margin:0;font-size:44px;font-style:italic;font-weight:900;animation:6s step-end infinite glitch;transform:skew(-8deg)}.wordmark span{color:var(--accent);margin-left:.04em}@keyframes glitch{0%,92%,to{text-shadow:2px 0 var(--cyan),-2px 0 var(--magenta);transform:skew(-8deg)}93%{text-shadow:-6px 0 var(--cyan),6px 0 var(--magenta);transform:skew(-14deg)translate(3px)}95%{text-shadow:5px 0 var(--cyan),-5px 0 var(--magenta);transform:skew(-3deg)}97%{text-shadow:2px 0 var(--cyan),-2px 0 var(--magenta);transform:skew(-8deg)}}.brand p{margin:6px 0 18px}.panel{border-top-color:var(--accent)}.festive .rtitle{text-shadow:none}input[type=range]{accent-color:var(--accent)}.statgrid b{color:var(--white)}@media (max-width:700px){.wordmark{font-size:32px}}.devpill b{background:var(--accent);color:var(--ink);margin-right:4px;padding:0 5px}.devpill em{opacity:.7;font-style:normal}.dev{border:1px solid var(--accent);color:#d8e0c0;z-index:9;background:#0a0a10f5;width:min(580px,96vw);max-height:60vh;padding:0;font:12px monospace;display:block;position:fixed;bottom:34px;left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 10px 40px #0009}.dev-tabs{background:#0b0b10;border-bottom:1px solid #2a2c22;display:flex;position:sticky;top:0}.dev-tabs button{letter-spacing:.1em;color:#8a8f78;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:9px 16px;font:700 11px monospace}.dev-tabs button.on{color:var(--accent);border-bottom-color:var(--accent)}.dev-tabs span{color:#555;align-self:center;margin-left:auto;padding-right:12px;font-size:10px}.dev-grid{grid-template-columns:repeat(3,1fr);gap:6px;padding:12px;display:grid}.dev-grid .wide{grid-column:1/-1}.dev-grid p{color:#7c816c;margin:2px 0}.dev-grid label{align-items:center;gap:10px;display:flex}.dev-row{flex-wrap:wrap;gap:4px;display:flex}.dev button:not(.devpill){text-transform:none;letter-spacing:0;text-align:center;color:#d8e0c0;background:#14160f;border:1px solid #2f3320;padding:8px 6px;font:600 11px monospace}.dev button:not(.devpill):hover{border-color:var(--accent);color:var(--accent)}.dev .warn{color:#ff6b7a;border-color:#7a2630}.sw2{align-items:center;gap:8px;display:flex;justify-content:flex-start!important}.sw2 i{background:#33362a;border-radius:7px;flex:none;width:26px;height:13px;position:relative}.sw2 i:after{content:"";background:#888;border-radius:50%;width:9px;height:9px;transition:all .15s;position:absolute;top:2px;left:2px}.sw2.on i{background:var(--accent)}.sw2.on i:after{background:var(--ink);left:15px}.rp{z-index:6;pointer-events:none;font-family:Segoe UI,Roboto,Arial,sans-serif;position:fixed;inset:0}.rp-bar{background:#000;height:0;animation:.9s cubic-bezier(.2,.9,.3,1) forwards bar;position:absolute;left:0;right:0}.rp-bar.top{top:0}.rp-bar.bottom{--h:92px;bottom:0}.rp-bar.top{--h:9vh}@keyframes bar{to{height:var(--h)}}.rp:after{content:"";pointer-events:none;background:radial-gradient(#0000 55%,#00000073);position:absolute;inset:0}.rp-mark{align-items:center;gap:12px;animation:.6s .5s both pop;display:flex;position:absolute;top:calc(9vh + 14px);left:22px}.rp-mark img{filter:drop-shadow(0 2px 8px #000000b3);height:46px}.rp-mark span{letter-spacing:.2em;color:#fff;text-shadow:0 2px 8px #000;font:italic 900 20px monospace}.rec{background:#ff3340;border-radius:50%;width:11px;height:11px;margin-right:9px;animation:1s steps(2,end) infinite blink;display:inline-block}.rp-cap{text-align:center;letter-spacing:.14em;color:#fff;text-shadow:3px 0 var(--cyan),-3px 0 var(--magenta),0 4px 18px #000;font:italic 900 34px Segoe UI,sans-serif;animation:3s both cap;position:absolute;bottom:126px;left:0;right:0}@keyframes cap{0%{opacity:0;transform:translate(-40px)skew(-8deg)}10%{opacity:1;transform:translate(0)skew(-8deg)}85%{opacity:1}to{opacity:0}}.rp-ctl{pointer-events:auto;color:#ddd;align-items:center;gap:14px;height:92px;padding:0 24px;display:flex;position:absolute;bottom:0;left:0;right:0}.rp-ctl button{color:#ddd;letter-spacing:.06em;text-align:center;background:#15161c;border:1px solid #333;padding:8px 12px;font-size:12px}.rp-ctl button.on{background:var(--accent);color:var(--ink);border-color:var(--accent);font-weight:800}.rp-ctl .skip{color:#000;background:#fff;margin-left:6px;font-weight:800}.rp-grp{gap:3px;display:flex}.rp-tl{flex:1;align-items:center;min-width:120px;height:26px;display:flex;position:relative}.rp-tl input{z-index:1;width:100%;position:relative}.rp-tl .mk{border-radius:50%;width:5px;height:5px;position:absolute;bottom:0;transform:translate(-50%)}.rp-time{text-align:center;min-width:84px;font:12px monospace}@media (max-width:900px){.rp-ctl{flex-wrap:wrap;gap:6px;height:auto;padding:8px}.rp-bar.bottom{--h:120px}.rp-cap{font-size:22px;bottom:150px}}
