:root{--bg:#05030f;--cyan:#37f6ff;--cyan-soft:#9df8ff;--magenta:#ff3ea5;--violet:#8a7bff;--gold:#ffd45e;--ink:#eaf7ff;--muted:#8ea6c8;--panel:#070d1c9e;--line:#78e1ff38;--display:"Bahnschrift", "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif;--mono:"Consolas", "SFMono-Regular", "Cascadia Mono", monospace}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;color:var(--ink);font-family:var(--display);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;overflow:hidden}body,#scene-root{position:fixed;inset:0}#scene-root canvas{touch-action:none;width:100%;height:100%;display:block}.hidden{display:none!important}.screen-fx{pointer-events:none;z-index:10;position:fixed;inset:0}#fx-vignette{background:radial-gradient(at 50% 48%,#0000 42%,#02030a8c 100%),linear-gradient(#00000047,#0000 22% 76%,#00000073)}#fx-vignette:after{content:"";opacity:.55;mix-blend-mode:overlay;background:repeating-linear-gradient(#ffffff07 0 1px,#0000 1px 4px);position:absolute;inset:0}#fx-damage{opacity:0;background:radial-gradient(#0000 48%,#ff1e466b 100%);transition:opacity .18s}#fx-damage.flash{animation:.42s ease-out damageFlash}@keyframes damageFlash{0%{opacity:.55}to{opacity:0}}#hud{z-index:20;pointer-events:none;font-family:var(--display);padding:clamp(14px,2.2vw,30px);position:fixed;inset:0}.hud-corner{position:absolute}.hud-left{border:1px solid var(--line);border-left:2px solid var(--cyan);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);clip-path:polygon(0 0,100% 0,100% calc(100% - 14px),calc(100% - 14px) 100%,0 100%);background:linear-gradient(135deg,#070f20d1,#070c196b);align-items:stretch;gap:0;display:flex;top:clamp(14px,2.2vw,30px);left:clamp(14px,2.2vw,30px);box-shadow:0 12px 40px #00000061,inset 0 0 34px #37f6ff0b}.pos-block{border-right:1px solid #78e1ff24;flex-direction:column;justify-content:center;min-width:104px;padding:12px 18px 10px 16px;display:flex}.micro-label{font:600 9px/1 var(--mono);letter-spacing:.26em;color:var(--muted);text-transform:uppercase;display:block}.pos-value{color:#fff;align-items:baseline;gap:4px;margin-top:5px;line-height:.9;display:flex}.pos-value b{font:900 clamp(38px, 4.6vw, 58px)/.86 var(--display);letter-spacing:-.04em;background:linear-gradient(#fff,#65eaff 58%,#1a8dff);color:#0000;filter:drop-shadow(0 0 16px #37f6ff80);-webkit-background-clip:text;background-clip:text}.pos-value small{font:700 13px/1 var(--mono);color:var(--muted)}.stat-block{grid-template-columns:repeat(3,minmax(66px,auto));align-items:center;gap:0 22px;padding:10px 18px;display:grid}.stat{flex-direction:column;gap:4px;display:flex}.stat span{font:600 8.5px/1 var(--mono);letter-spacing:.22em;color:var(--muted)}.stat b{font:700 15px/1 var(--mono);color:#fff;letter-spacing:.02em;font-variant-numeric:tabular-nums;text-shadow:0 0 14px #50dcff4d}.lap-progress{background:#78e1ff1f;height:2px;position:absolute;bottom:0;left:0;right:14px;overflow:hidden}.lap-progress i{background:linear-gradient(90deg, var(--cyan), #fff);width:0;height:100%;box-shadow:0 0 12px var(--cyan);transition:width .2s linear;display:block}.hud-right{flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute;top:clamp(14px,2.2vw,30px);right:clamp(14px,2.2vw,30px)}.minimap-panel{border:1px solid var(--line);border-top:2px solid var(--magenta);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);clip-path:polygon(12px 0,100% 0,100% 100%,0 100%,0 12px);background:linear-gradient(160deg,#070f20c7,#070c1961);padding:8px 8px 5px;position:relative;box-shadow:0 12px 40px #00000059,inset 0 0 30px #ff3ea50d}#minimap{width:clamp(118px,12.5vw,168px);height:clamp(118px,12.5vw,168px);display:block}.mm-title{font:600 8px/1 var(--mono);letter-spacing:.22em;color:var(--muted);align-items:center;gap:6px;padding:3px 2px 4px;display:flex}.mm-title i{background:var(--magenta);width:5px;height:5px;box-shadow:0 0 8px var(--magenta);border-radius:50%;animation:1.8s infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}#spectrum{opacity:.85;width:clamp(118px,12.5vw,168px);height:24px;display:block}.resource-row{gap:8px;display:flex}.resource{border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);font:700 14px/1 var(--mono);color:#fff;background:#070d1ca6;align-items:center;gap:7px;padding:7px 12px;display:flex}.res-icon{font-size:13px;line-height:1;display:inline-block}.res-icon.coin{color:var(--gold);text-shadow:0 0 10px var(--gold)}.res-icon.nitro{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}.hud-speed{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:absolute;bottom:clamp(14px,2.2vw,30px);right:clamp(14px,2.2vw,30px)}.gauge{filter:drop-shadow(0 8px 30px #00000073);width:clamp(148px,16vw,208px);height:clamp(148px,16vw,208px);position:relative}.gauge svg{width:100%;height:100%;display:block;overflow:visible}.gauge-track{fill:#050a189e;stroke:#78e1ff29;stroke-width:2px}.gauge-ticks{fill:none;stroke:#78e1ff33;stroke-width:1px;stroke-dasharray:1 8}.gauge-arc{fill:none;stroke:var(--cyan);stroke-width:5px;stroke-linecap:round;stroke-dasharray:311 415;stroke-dashoffset:311px;transform-origin:80px 80px;filter:drop-shadow(0 0 7px #37f6ffe6);transition:stroke-dashoffset 90ms linear,stroke .2s;transform:rotate(135deg)}.gauge-inner{fill:#050a188c;stroke:#ff3ea538;stroke-width:1px;stroke-dasharray:2 5}.speed-readout{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.speed-readout b{font:900 clamp(38px, 4.2vw, 56px)/.86 var(--display);letter-spacing:-.05em;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 22px #37f6ff8c}.speed-readout small{font:600 8px/1 var(--mono);letter-spacing:.28em;color:var(--muted);margin-top:7px}.gear-readout{font:600 8px/1 var(--mono);letter-spacing:.2em;color:var(--muted);align-items:baseline;gap:5px;display:flex;position:absolute;bottom:15%;left:50%;transform:translate(-50%)}.gear-readout b{color:var(--gold);font-size:12px}.nitro-meter{border:1px solid var(--line);background:#070d1c99;align-items:center;gap:8px;width:clamp(148px,16vw,208px);padding:6px 9px;display:flex}.nitro-meter>span{font:600 8px/1 var(--mono);letter-spacing:.16em;color:var(--muted)}.nitro-track{background:#78e1ff1f;flex:1;height:4px;overflow:hidden}.nitro-track i{background:linear-gradient(90deg, #1e9bff, var(--cyan));width:100%;height:100%;box-shadow:0 0 10px var(--cyan);transition:width 80ms linear;display:block}body.boosting .nitro-track i{background:linear-gradient(90deg,#ffd45e,#ff7a3d);box-shadow:0 0 14px #ffb347}body.boosting .gauge-arc{stroke:var(--gold);filter:drop-shadow(0 0 10px #ffd45ef2)}body.boosting .speed-readout b{color:#fff5cf;text-shadow:0 0 26px #ffb43cd9}.hud-bottom{flex-direction:column;gap:8px;display:flex;position:absolute;bottom:clamp(14px,2.2vw,30px);left:clamp(14px,2.2vw,30px)}.drift-badge{width:max-content;font:800 11px/1 var(--mono);letter-spacing:.24em;color:#1a0720;background:linear-gradient(100deg, var(--magenta), #ff9ad4);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);opacity:0;padding:7px 14px;transition:opacity .15s,transform .15s;transform:translateY(6px)skew(-8deg);box-shadow:0 0 24px #ff3ea58c}.drift-badge.on{opacity:1;transform:translateY(0)skew(-8deg)}.keys-hint{font:500 9px/1.4 var(--mono);letter-spacing:.12em;color:#bedcf580;text-shadow:0 1px 8px #000}.hud-pause{color:#dcf5ffcc;width:34px;height:34px;font:800 11px/1 var(--mono);letter-spacing:.08em;cursor:pointer;pointer-events:auto;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);z-index:3;background:#070d1c8c;border:1px solid #78e1ff47;place-items:center;padding:0;display:grid;position:absolute;top:clamp(14px,2.2vw,30px);left:50%;transform:translate(-50%)}.hud-pause:hover{color:#fff;border-color:var(--cyan);box-shadow:0 0 18px #37f6ff40}.center-banner{text-align:center;pointer-events:none;animation:.5s cubic-bezier(.2,.9,.2,1) both bannerIn;position:absolute;top:20%;left:50%;transform:translate(-50%)}.center-banner strong{font:900 clamp(34px, 5vw, 64px)/1 var(--display);letter-spacing:.06em;color:#fff;text-shadow:0 0 30px #37f6ffe6,0 4px 24px #000;display:block}.center-banner span{font:700 11px/1 var(--mono);letter-spacing:.4em;color:var(--cyan-soft);margin-top:8px;display:block}@keyframes bannerIn{0%{opacity:0;transform:translate(-50%)translateY(18px)scale(.94)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}.screen{z-index:40;position:fixed;inset:0}#loading{z-index:60;background:radial-gradient(at 50% 55%,#0b1430,#05030f 70%);place-items:center;display:grid}.loading-grid{opacity:.6;background-image:linear-gradient(#37f6ff14 1px,#0000 1px),linear-gradient(90deg,#ff3ea50f 1px,#0000 1px);background-size:74px 74px;position:absolute;inset:-20%;transform:perspective(420px)rotateX(62deg)translateY(22%);-webkit-mask-image:radial-gradient(#000 10%,#0000 68%);mask-image:radial-gradient(#000 10%,#0000 68%)}.loader-panel{border:1px solid var(--line);border-top:2px solid var(--cyan);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(150deg,#091126e6,#060914bd);width:min(480px,82vw);padding:30px 34px;position:relative;box-shadow:0 30px 90px #0009,inset 0 0 50px #37f6ff0d}.loader-kicker{font:600 8.5px/1 var(--mono);letter-spacing:.3em;color:var(--muted)}.loader-logo{font:900 44px/.9 var(--display);letter-spacing:-.04em;color:#fff;text-shadow:0 0 28px #37f6ff8c;margin:12px 0 22px}.loader-logo span{color:var(--cyan);margin-left:4px}.loader-bar{background:#78e1ff1f;height:6px;overflow:hidden;transform:skew(-16deg)}.loader-bar i{background:linear-gradient(90deg, var(--magenta), var(--cyan));width:0;height:100%;box-shadow:0 0 16px var(--cyan);transition:width .25s;display:block}.loader-meta{font:600 9px/1 var(--mono);letter-spacing:.12em;color:var(--muted);justify-content:space-between;margin-top:10px;display:flex}.loader-meta b{color:var(--cyan-soft)}.loader-tip{color:#b4d2eb99;letter-spacing:.05em;border-top:1px dashed #78e1ff29;margin-top:26px;padding-top:14px;font-size:11px}#start-screen{z-index:40;pointer-events:none;overflow:hidden}.start-scrim{background:radial-gradient(at 34% 48%,#0508141f 0%,#0508148c 45%,#04060fed 100%),linear-gradient(90deg,#04060fd1 0%,#04060f26 54%,#04060f8c 100%);position:absolute;inset:0}.start-grid{transform-origin:50% 100%;opacity:.65;background-image:linear-gradient(#37f6ff21 1px,#0000 1px),linear-gradient(90deg,#ff3ea51a 1px,#0000 1px);background-size:90px 90px;height:70%;animation:14s linear infinite gridScroll;position:absolute;bottom:-34%;left:-20%;right:-20%;transform:perspective(520px)rotateX(64deg);-webkit-mask-image:linear-gradient(#0000,#000 32% 72%,#0000);mask-image:linear-gradient(#0000,#000 32% 72%,#0000)}@keyframes gridScroll{0%{background-position:0 0,0 0}to{background-position:0 90px,90px 0}}.start-side{writing-mode:vertical-rl;font:600 9px/1.9 var(--mono);letter-spacing:.36em;color:#96c8eb5c;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)rotate(180deg)}.start-side.left{left:26px}.start-side.right{right:26px;rotate:0deg}.start-content{pointer-events:auto;flex-direction:column;justify-content:center;align-items:flex-start;max-width:980px;height:100%;padding:0 clamp(28px,7vw,116px);display:flex;position:relative}.eyebrow{font:600 9px/1 var(--mono);letter-spacing:.28em;color:var(--cyan-soft);text-transform:uppercase;align-items:center;gap:10px;display:flex}.eyebrow i{background:linear-gradient(90deg, var(--cyan), transparent);width:26px;height:1px;box-shadow:0 0 8px var(--cyan)}#start-screen h1{font:900 clamp(58px, 9.2vw, 148px)/.86 var(--display);letter-spacing:-.055em;color:#f7fdff;text-shadow:0 0 22px #37f6ff47,0 0 70px #37f6ff2e,0 18px 60px #000000bf;margin:18px 0 4px;position:relative}#start-screen h1 span{background:linear-gradient(#fff 4%,#8df7ff 40%,#2e8dff 72%,#7d4bff);color:#0000;filter:drop-shadow(0 0 26px #37f6ff6b);-webkit-background-clip:text;background-clip:text;display:inline-block}#start-screen h1:after{content:attr(data-text);color:#0000;-webkit-text-stroke:1px #78ebff29;pointer-events:none;position:absolute;inset:0;transform:translate(3px,2px)}.title-en{font:800 clamp(20px, 2.6vw, 34px)/1 var(--display);letter-spacing:.3em;color:#ebf8ffd9;margin-top:6px}.title-en em{color:var(--magenta);text-shadow:0 0 18px #ff3ea5b3;font-style:normal}.tagline{letter-spacing:.08em;color:#bed8f0c7;margin:22px 0 0;font-size:clamp(12px,1.1vw,14px);line-height:1.9}.tagline b{color:#fff;text-shadow:0 0 16px #37f6ff59;font-weight:700}.start-actions{align-items:center;gap:14px;margin-top:30px;display:flex}.btn{cursor:pointer;font-family:var(--display);-webkit-tap-highlight-color:transparent;border:0;transition:transform .16s,box-shadow .16s,background .16s;position:relative;overflow:hidden}.btn:active{transform:translateY(1px)scale(.99)}.btn-primary{color:#031018;letter-spacing:.12em;clip-path:polygon(12px 0,100% 0,calc(100% - 12px) 100%,0 100%);background:linear-gradient(100deg,#26e5ff,#3c8bff 54%,#9b5bff);padding:15px 30px 15px 34px;font-size:16px;font-weight:900;box-shadow:0 0 34px #37c8ff61,0 14px 34px #00000073}.btn-primary em{margin-left:16px;font-style:normal;transition:transform .18s;display:inline-block}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 0 52px #37e1ff99,0 18px 40px #00000080}.btn-primary:hover em{transform:translate(5px)}.btn-glint{background:linear-gradient(90deg,#0000,#ffffffa6,#0000);width:26%;height:220%;animation:3.4s ease-in-out infinite glint;position:absolute;top:-60%;left:-30%;transform:rotate(18deg)}@keyframes glint{0%,55%{left:-35%}78%,to{left:125%}}.btn-ghost{color:var(--ink);letter-spacing:.14em;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0911248c;border:1px solid #78e1ff47;padding:14px 22px;font-size:13px}.btn-ghost:hover{border-color:var(--cyan);background:#142848b3;box-shadow:0 0 22px #37f6ff38}.btn-ghost.small{margin-top:18px;padding:9px 16px;font-size:11px}.settings-row{border-top:1px solid #78e1ff21;flex-wrap:wrap;align-items:flex-end;gap:clamp(18px,3vw,42px);margin-top:38px;padding-top:20px;display:flex}.setting{flex-direction:column;gap:9px;display:flex}.chips{gap:6px;display:flex}.chip{font:600 10px/1 var(--display);letter-spacing:.1em;color:#c8e1f5b3;cursor:pointer;background:#09112499;border:1px solid #78e1ff2e;padding:7px 13px;transition:all .15s}.chip:hover{color:#fff;border-color:#37f6ff8c}.chip.active{color:#04121a;background:var(--cyan);border-color:var(--cyan);font-weight:800;box-shadow:0 0 18px #37f6ff73}.swatches{gap:8px;display:flex}.swatch{background:radial-gradient(circle at 34% 30%, #fff5, transparent 45%), var(--sw);cursor:pointer;border:1px solid #ffffff40;border-radius:50%;width:24px;height:24px;transition:transform .14s,box-shadow .14s}.swatch:hover{transform:scale(1.1)}.swatch.active{box-shadow:0 0 0 2px #04101a, 0 0 0 4px var(--sw), 0 0 20px var(--sw);transform:scale(1.06)}.start-meta{font:600 9px/1 var(--mono);letter-spacing:.3em;color:#96c3e66b;margin-top:30px}.start-footer{font:600 8px/1 var(--mono);letter-spacing:.2em;color:#96c3e65c;gap:24px;display:flex;position:absolute;bottom:26px;right:clamp(28px,7vw,116px)}.start-footer span:before{content:"◇";color:#37f6ff80;margin-right:7px}.howto-panel{border:1px solid #78e1ff4d;border-top:2px solid var(--magenta);clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px));pointer-events:auto;z-index:5;background:linear-gradient(160deg,#081022f5,#060a16eb);width:min(430px,84vw);padding:24px 26px 22px;position:absolute;bottom:clamp(70px,10vh,120px);right:clamp(28px,7vw,116px);box-shadow:0 30px 80px #000000a6}.howto-panel h3{font:800 16px/1 var(--display);letter-spacing:.2em;margin:0 0 16px}.howto-grid{grid-template-columns:1fr 1fr;gap:12px 18px;display:grid}.howto-grid div{color:var(--muted);align-items:center;gap:7px;font-size:11px;display:flex}.touch-only{display:none!important}@media (pointer:coarse){.touch-only{display:flex!important}}kbd{text-align:center;min-width:24px;font:700 9px/1 var(--mono);color:#dff8ff;background:#142a46cc;border:1px solid #78e1ff47;border-bottom-width:2px;border-radius:2px;padding:4px 6px}#countdown{z-index:30;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}.cd-shell{aspect-ratio:1;text-align:center;place-items:center;width:min(360px,70vw);display:grid;position:relative}.cd-ring{border:1px solid #37f6ff59;border-radius:50%;animation:8s linear infinite cdSpin;position:absolute;inset:8%;box-shadow:inset 0 0 60px #37f6ff14,0 0 60px #37f6ff1f}.cd-ring:before,.cd-ring:after{content:"";background:var(--cyan);width:12px;height:12px;box-shadow:0 0 18px var(--cyan);position:absolute;transform:rotate(45deg)}.cd-ring:before{margin-left:-6px;top:-6px;left:50%}.cd-ring:after{margin-left:-6px;bottom:-6px;left:50%}.cd-ring.inner{border-color:#ff3ea559;animation-duration:5s;animation-direction:reverse;inset:20%}@keyframes cdSpin{to{transform:rotate(360deg)}}#cd-number{z-index:2;font:900 clamp(120px, 18vw, 240px)/.8 var(--display);letter-spacing:-.06em;color:#fff;text-shadow:0 0 34px #37f6ffe6,0 0 110px #3782ff8c,0 18px 60px #000;position:relative}#cd-number.go{letter-spacing:.04em;color:#eafff9;text-shadow:0 0 40px #50ffbef2,0 0 120px #50ffbe8c,0 18px 60px #000;font-size:clamp(80px,12vw,160px)}.cd-label{font:700 10px/1 var(--mono);letter-spacing:.52em;color:var(--cyan-soft);opacity:.8;position:absolute;bottom:2%}.cd-pop{animation:.72s cubic-bezier(.16,1,.3,1) both cdPop}@keyframes cdPop{0%{opacity:0;filter:blur(6px);transform:scale(1.55)}24%{opacity:1;filter:blur();transform:scale(.96)}82%{opacity:1;transform:scale(1)}to{opacity:1;transform:scale(.96)}}.toast{z-index:32;text-align:center;pointer-events:none;animation:.38s cubic-bezier(.2,.9,.2,1) both toastIn;position:fixed;top:16%;left:50%;transform:translate(-50%)}.toast b{font:900 clamp(26px, 3.4vw, 44px)/1 var(--display);letter-spacing:.08em;color:#fff;text-shadow:0 0 26px #37f6ffbf,0 6px 26px #000;display:block}.toast span{font:700 9px/1 var(--mono);letter-spacing:.36em;color:var(--cyan-soft);margin-top:7px;display:block}.toast.gold b{text-shadow:0 0 28px #ffd45ed9,0 6px 26px #000}.toast.magenta b{text-shadow:0 0 28px #ff3ea5d9,0 6px 26px #000}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(14px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}#pause,#results{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;background:radial-gradient(#0509168c,#03050ce0);place-items:center;display:grid}.modal-panel{border:1px solid #78e1ff47;border-top:2px solid var(--cyan);clip-path:polygon(0 0,calc(100% - 24px) 0,100% 24px,100% 100%,24px 100%,0 calc(100% - 24px));background:linear-gradient(155deg,#091228f0,#060914eb);width:min(540px,88vw);padding:34px 38px 32px;animation:.4s cubic-bezier(.2,.9,.2,1) both modalIn;position:relative;box-shadow:0 40px 120px #000000b3,inset 0 0 80px #37f6ff0a}@keyframes modalIn{0%{opacity:0;transform:translateY(22px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-panel h2{font:900 clamp(38px, 5vw, 58px)/1 var(--display);letter-spacing:-.03em;margin:16px 0 8px}.modal-panel p{color:var(--muted);letter-spacing:.06em;margin:0;font-size:12px}.modal-actions{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.result-panel{width:min(620px,90vw)}.result-place{align-items:baseline;gap:6px;margin:18px 0 -4px;display:flex}.result-place span{font:800 20px/1 var(--mono);color:var(--muted)}.result-place b{font:900 clamp(70px, 10vw, 118px)/.8 var(--display);letter-spacing:-.06em;background:linear-gradient(#fff,#8ff7ff 45%,#2e8dff 78%,#a06bff);color:#0000;filter:drop-shadow(0 0 30px #37f6ff73);-webkit-background-clip:text;background-clip:text}.result-place small{font:700 14px/1 var(--mono);color:var(--muted)}.result-panel h2{margin-top:8px}.result-grid{background:#78e1ff21;border:1px solid #78e1ff21;grid-template-columns:1fr 1fr;gap:1px;margin-top:24px;display:grid}.result-grid div{background:#050a18d1;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.result-grid span{font:600 8px/1 var(--mono);letter-spacing:.22em;color:var(--muted)}.result-grid b{font:800 20px/1 var(--mono);color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 14px #37f6ff4d}#touch-controls{z-index:25;padding:0 16px calc(16px + env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;align-items:flex-end;display:none;position:fixed;bottom:0;left:0;right:0}.tc-group{pointer-events:auto;align-items:flex-end;gap:12px;display:flex}.tc-btn{color:#eafcff;width:clamp(62px,15vw,78px);height:clamp(62px,15vw,78px);font:800 20px/1 var(--display);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:radial-gradient(circle at 35% 30%,#37f6ff29,#050c1ab8);border:1.5px solid #78ebff80;border-radius:50%;box-shadow:0 8px 30px #0006,inset 0 0 20px #37f6ff14}.tc-btn span{pointer-events:none}.tc-btn:active,.tc-btn.on{background:radial-gradient(circle at 35% 30%,#37f6ff8c,#145082a6);transform:scale(.96);box-shadow:0 0 32px #37f6ff8c}.tc-btn.small{letter-spacing:.04em;width:clamp(50px,12vw,62px);height:clamp(50px,12vw,62px);font-size:11px}.tc-btn.brake{color:#ffd7dd;border-color:#ff64788c}.tc-btn.drift{color:#ffd7ee;border-color:#ff3ea599}.tc-btn.nitro{color:#fff0c4;border-color:#ffd45e99}.tc-btn.gas{color:#d8fff2;border-color:#50ffbe99;width:clamp(74px,18vw,92px);height:clamp(74px,18vw,92px)}.tc-actions{flex-wrap:wrap;justify-content:flex-end;max-width:55vw}@media (pointer:coarse){body.race-live #touch-controls{display:flex}.keys-hint{display:none}}@media (pointer:fine){#touch-controls{display:none!important}}@media (width<=900px){.start-side{display:none}.start-content{justify-content:flex-end;padding-bottom:12vh}.start-footer{display:none}.settings-row{gap:18px;margin-top:24px}.start-meta{margin-top:20px}.howto-panel{bottom:8vh;left:50%;right:auto;transform:translate(-50%)}.hud-left{clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%)}.stat-block{gap:0 12px;padding:8px 12px}.stat b{font-size:12px}.stat span{font-size:7.5px}.pos-block{min-width:78px;padding:9px 12px 8px}.pos-value b{font-size:40px}.resource{padding:6px 10px;font-size:12px}.mm-title{font-size:7px}.result-grid{grid-template-columns:1fr 1fr}.modal-panel{padding:26px 24px 24px}}@media (width<=620px){.start-content{padding:0 22px 10vh}#start-screen h1{font-size:clamp(48px,15vw,76px)}.title-en{font-size:15px}.tagline{font-size:11.5px}.start-actions{width:100%}.btn-primary{text-align:center;flex:1;padding:15px 18px;font-size:14px}.btn-ghost{padding:14px;font-size:12px}.settings-row{gap:14px}.setting .micro-label{font-size:8px}.start-meta{display:none}.hud-left{max-width:calc(100vw - 150px)}.stat-block{grid-template-columns:repeat(3,auto)}.hud-left .stat:nth-child(3){display:none}.hud-right{gap:6px}.hud-speed{bottom:12px;right:12px}.hud-left{top:12px;left:12px}.hud-right{top:12px;right:12px}.hud-bottom{bottom:12px;left:12px}.hud-bottom .keys-hint{display:none}.center-banner{top:24%}.toast{width:90vw;top:24%}.howto-grid{grid-template-columns:1fr}}@media (height<=520px){.start-content{justify-content:center;padding-bottom:0}#start-screen h1{margin-top:10px;font-size:clamp(40px,9vh,68px)}.tagline{margin-top:12px;line-height:1.6}.start-actions{margin-top:16px}.settings-row{margin-top:16px;padding-top:12px}.start-meta{display:none}.hud-left{transform-origin:0 0;transform:scale(.86)}.hud-right{transform-origin:100% 0;transform:scale(.82)}.hud-speed{transform-origin:100% 100%;transform:scale(.78)}.hud-bottom{display:none}#touch-controls{padding-bottom:8px}.tc-btn{width:54px;height:54px;font-size:16px}.tc-btn.small{width:44px;height:44px;font-size:9px}.tc-btn.gas{width:64px;height:64px}}body.quality-low #fx-vignette:after{display:none}body.quality-low .minimap-panel,body.quality-low .hud-left{-webkit-backdrop-filter:none;backdrop-filter:none}#errlog{z-index:999;max-width:60vw;font:11px/1.4 var(--mono);color:#ff8b9e;white-space:pre-wrap;pointer-events:none;position:fixed;bottom:8px;left:8px}@media (pointer:coarse){.hud-speed{left:12px;right:auto;bottom:calc(118px + env(safe-area-inset-bottom));transform-origin:0 100%;transform:scale(.7)}.hud-pause{top:96px;left:12px;transform:none}.hud-bottom{bottom:calc(300px + env(safe-area-inset-bottom))}}@media (pointer:coarse) and (height<=520px){.hud-speed{bottom:calc(86px + env(safe-area-inset-bottom));transform:scale(.56)}.hud-pause{top:62px}.hud-bottom{display:none}}
