@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:500;src:url(./orbitron-latin-500-normal-DQ2gt4P1.woff2) format("woff2"),url(./orbitron-latin-500-normal-BCCupJ8c.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:700;src:url(./orbitron-latin-700-normal-4jsRXGGJ.woff2) format("woff2"),url(./orbitron-latin-700-normal-DmYOh-W9.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:800;src:url(./orbitron-latin-800-normal-CQafOXEd.woff2) format("woff2"),url(./orbitron-latin-800-normal-P4cBi4I7.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:400;src:url(./rajdhani-latin-400-normal-CurJOxDW.woff2) format("woff2"),url(./rajdhani-latin-400-normal-C6_q4usG.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(./rajdhani-latin-500-normal-DfvNI-Td.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(./rajdhani-latin-600-normal-Dx02qI2_.woff) format("woff")}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-700-normal-BPDUZo87.woff2) format("woff2"),url(./rajdhani-latin-700-normal-e0Uj8ZlN.woff) format("woff")}@font-face{font-family:Loop Display;src:url(./loop-display-ie-sdmdn.woff2) format("woff2");font-weight:700 900;font-style:normal;font-display:swap}@font-face{font-family:Loop Sans;src:url(./loop-sans-medium-BCgjwIsO.woff2) format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:Loop Sans;src:url(./loop-sans-heavy-C-BDKeI5.woff2) format("woff2");font-weight:700 900;font-style:normal;font-display:swap}:root{--bg: #05060c;--ink: #eef7ff;--ink-dim: rgba(226, 240, 255, .62);--ink-faint: rgba(226, 240, 255, .36);--line: rgba(196, 226, 255, .13);--line-strong: rgba(196, 226, 255, .24);--panel: rgba(9, 13, 24, .62);--panel-solid: #0a0e18;--cyan: #5ff3ff;--cyan-soft: rgba(95, 243, 255, .16);--magenta: #ff3ea5;--amber: #ffb35c;--violet: #9d7bff;--green: #7cf0c4;--red: #ff5d6c;--display: "Orbitron", "Loop Display", "Segoe UI", sans-serif;--body: "Rajdhani", "Loop Sans", "Segoe UI", sans-serif;--radius: 18px;--radius-sm: 12px;--ease: cubic-bezier(.22, 1, .36, 1);--pad: clamp(20px, 3.2vw, 52px)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;-webkit-font-smoothing:antialiased;overflow:hidden;user-select:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}h1,h2,h3,h4,p{margin:0}svg{display:block}::selection{background:var(--cyan);color:#04101a}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#a0c8e62e;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#a0c8e64d}#app{position:fixed;inset:0}#game-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;outline:none;touch-action:none}.canvas-fade{transition:opacity .5s var(--ease)}.ui{position:absolute;inset:0;z-index:10;pointer-events:none}.ui>*{pointer-events:auto}.screen{position:absolute;inset:0;display:flex;flex-direction:column;overflow:hidden}.screen-enter{animation:screenIn .55s var(--ease) both}.screen-leave{animation:screenOut .3s ease both;pointer-events:none}@keyframes screenIn{0%{opacity:0;transform:translateY(14px) scale(.995);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes screenOut{0%{opacity:1}to{opacity:0;transform:scale(1.005)}}.topbar{display:flex;align-items:center;justify-content:space-between;padding:clamp(16px,2.2vw,30px) var(--pad) 0;z-index:5}.brand{display:flex;align-items:center;gap:13px}.brand-glyph{width:26px;height:26px;position:relative;flex:none;border-radius:50%;border:1.5px solid var(--cyan);box-shadow:0 0 14px #5ff3ff8c,inset 0 0 8px #5ff3ff4d}.brand-glyph:after{content:"";position:absolute;left:50%;top:-4px;width:1.5px;height:34px;background:linear-gradient(180deg,transparent,var(--magenta),transparent);transform:translate(-50%) rotate(38deg)}.brand-name{font-family:var(--display);font-size:13px;font-weight:600;letter-spacing:.32em;white-space:nowrap}.brand-sub{font-size:9px;letter-spacing:.28em;color:var(--ink-faint);margin-left:4px;display:inline-block;transform:translateY(-1px)}.topbar-right{display:flex;align-items:center;gap:10px}.icon-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:#080c1673;display:grid;place-items:center;color:var(--ink-dim);backdrop-filter:blur(14px);transition:.25s var(--ease)}.icon-btn:hover{color:var(--ink);border-color:var(--line-strong);background:#141c2ca6;transform:translateY(-1px)}.icon-btn svg{width:17px;height:17px}.icon-btn.is-off{color:var(--ink-faint)}.icon-btn.is-off:after{content:"";position:absolute;width:20px;height:1px;background:currentColor;transform:rotate(-45deg);opacity:.8}.icon-btn{position:relative}.eyebrow{display:flex;align-items:center;gap:10px;font-family:var(--display);font-size:10px;letter-spacing:.3em;color:var(--ink-faint);text-transform:uppercase}.eyebrow i{width:22px;height:1px;background:var(--cyan);display:block;box-shadow:0 0 8px var(--cyan)}.eyebrow .accent{color:var(--cyan)}.ghost-btn{border:1px solid var(--line-strong);border-radius:10px;padding:11px 18px;font-family:var(--display);font-size:10px;font-weight:600;letter-spacing:.22em;color:var(--ink-dim);transition:.25s var(--ease);display:inline-flex;align-items:center;gap:9px}.ghost-btn:hover{color:var(--ink);border-color:var(--cyan);box-shadow:0 0 0 3px #5ff3ff14}.primary-btn{position:relative;overflow:hidden;border-radius:12px;padding:16px 26px;background:linear-gradient(105deg,#d9fdff,#5ff3ff 55%,#a7f8ff);color:#031018;font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.2em;transition:.3s var(--ease);display:inline-flex;align-items:center;justify-content:center;gap:12px;box-shadow:0 12px 40px #5ff3ff2e}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 18px 50px #5ff3ff4d;filter:brightness(1.06)}.primary-btn:active{transform:translateY(0)}.primary-btn[disabled]{opacity:.35;pointer-events:none}.primary-btn .arrow{transition:transform .3s var(--ease)}.primary-btn:hover .arrow{transform:translate(4px)}.primary-btn.is-magenta{background:linear-gradient(105deg,#ffe0f0,#ff5d9e 55%,#ff8fc0);color:#1a0410}.ghost-btn.is-lg{padding:15px 24px;font-size:11px}.menu .vignette,.vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 62% 48%,transparent 0%,rgba(4,6,12,.12) 48%,rgba(4,6,12,.82) 100%),linear-gradient(90deg,rgba(4,6,12,.78) 0%,rgba(4,6,12,.22) 45%,transparent 70%)}.menu-main{flex:1;display:grid;grid-template-columns:minmax(360px,43%) 1fr;align-items:end;padding:0 var(--pad) clamp(26px,4vh,54px);position:relative;z-index:2;min-height:0}.hero{max-width:560px;padding-bottom:8px}.hero .eyebrow{margin-bottom:18px}.logo{font-family:var(--display);font-weight:800;line-height:.86;font-size:clamp(62px,8.6vw,132px);letter-spacing:-.02em;display:flex;flex-direction:column;margin-left:-6px}.logo span{display:block}.logo span:first-child{background:linear-gradient(92deg,#f2feff 10%,#b9fbff 46%,#5ff3ff 78%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 34px rgba(95,243,255,.24))}.logo span:last-child{color:transparent;-webkit-text-stroke:1.5px rgba(255,105,190,.85);letter-spacing:.02em;filter:drop-shadow(0 0 26px rgba(255,62,165,.28));margin-left:clamp(24px,4vw,62px)}.tagline{margin:22px 0 0 4px;color:var(--ink-dim);font-size:clamp(15px,1.25vw,18px);line-height:1.55;letter-spacing:.015em;font-weight:500;max-width:420px}.menu-nav{display:flex;flex-direction:column;gap:8px;margin-top:clamp(24px,4vh,46px);max-width:440px}.nav-item{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:13px 16px 13px 10px;border-radius:12px;border:1px solid transparent;text-align:left;transition:.28s var(--ease);position:relative}.nav-item:before{content:"";position:absolute;left:0;top:50%;height:0;width:2px;background:var(--cyan);transform:translateY(-50%);transition:height .3s var(--ease);box-shadow:0 0 12px var(--cyan);border-radius:2px}.nav-idx{font-family:var(--display);font-size:9px;letter-spacing:.15em;color:var(--ink-faint)}.nav-label{font-family:var(--display);font-size:clamp(15px,1.35vw,19px);font-weight:600;letter-spacing:.2em}.nav-label em{font-style:normal;font-family:Loop Sans,sans-serif;font-size:.62em;font-weight:500;letter-spacing:.12em;color:var(--ink-faint);margin-left:10px}.zh-title{font-style:normal;font-family:Loop Display,sans-serif;font-size:.44em;font-weight:500;letter-spacing:.16em;color:var(--ink-dim);margin-left:14px;vertical-align:.12em}.page-title h1{display:flex;align-items:baseline;flex-wrap:wrap}.mode-name-zh{font-family:Loop Sans,sans-serif;font-size:13px;font-weight:500;letter-spacing:.1em;color:var(--ink-faint);margin-left:10px}.track-name-zh{font-family:Loop Sans,sans-serif;font-style:normal;font-size:11px;font-weight:500;letter-spacing:.08em;color:var(--ink-faint);margin-left:8px}.track-tagline{font-family:var(--body)}.nav-sub{display:block;font-family:var(--body);font-size:12px;font-weight:500;color:var(--ink-faint);letter-spacing:.03em;margin-top:3px}.nav-arrow{color:var(--ink-faint);font-size:17px;transition:.25s var(--ease)}.nav-item:hover{background:#121a2a8c;border-color:var(--line);padding-left:18px}.nav-item:hover:before{height:54%}.nav-item:hover .nav-arrow{color:var(--cyan);transform:translate(3px)}.nav-item.is-primary{background:linear-gradient(90deg,rgba(95,243,255,.14),rgba(95,243,255,.02) 70%,transparent);border-color:#5ff3ff40}.nav-item.is-primary .nav-label{color:#dffcff}.nav-item.is-primary:before{height:46%}.nav-item.is-primary .nav-arrow{color:var(--cyan)}.menu-foot{display:flex;gap:22px;align-items:center;margin-top:clamp(18px,3vh,34px);font-family:var(--display);font-size:9px;letter-spacing:.22em;color:var(--ink-faint)}.menu-foot b{color:var(--ink-dim);font-weight:600}.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);display:inline-block;margin-right:7px;animation:pulse 2.4s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.showcase-card{align-self:end;justify-self:end;width:min(300px,26vw);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(160deg,#0d1321b8,#06091180);backdrop-filter:blur(20px) saturate(130%);padding:20px 22px 18px;display:flex;flex-direction:column;gap:5px;margin-bottom:4px}.showcase-label{font-family:var(--display);font-size:8px;letter-spacing:.28em;color:var(--ink-faint)}.showcase-name{font-family:var(--display);font-size:21px;font-weight:700;letter-spacing:.05em;margin-top:3px}.showcase-maker{font-size:11px;letter-spacing:.16em;color:var(--ink-faint);text-transform:uppercase}.showcase-stats{display:flex;gap:14px;margin:13px 0 15px}.sc-stat{flex:1}.sc-stat span{display:block;font-family:var(--display);font-size:8px;letter-spacing:.16em;color:var(--ink-faint);margin-bottom:6px}.sc-bar{height:2px;background:#ffffff1a;border-radius:2px;overflow:hidden}.sc-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),#c0fbff);box-shadow:0 0 8px var(--cyan)}.showcase-card .ghost-btn{justify-content:center}.menu-bottom{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad) clamp(16px,2.4vh,26px);font-family:var(--display);font-size:8px;letter-spacing:.22em;color:var(--ink-faint)}.menu-bottom .hints{display:flex;gap:18px}.menu-bottom kbd{font-family:var(--display);font-size:8px;border:1px solid var(--line);border-radius:4px;padding:3px 6px;margin-right:5px;color:var(--ink-dim)}.page{background:linear-gradient(180deg,#03050a8c,#03050adb);backdrop-filter:blur(2px)}.page:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(90% 60% at 70% 0%,rgba(95,243,255,.07),transparent 60%)}.page-head{display:flex;align-items:center;gap:20px;padding:clamp(18px,3vh,32px) var(--pad) clamp(12px,2vh,20px);border-bottom:1px solid linear-gradient(90deg,var(--line),transparent);position:relative;z-index:3;border-bottom:1px solid var(--line)}.back-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--ink-dim);transition:.25s var(--ease);flex:none}.back-btn:hover{color:var(--ink);border-color:var(--cyan);background:var(--cyan-soft)}.back-btn svg{width:16px;height:16px}.page-title h1{font-family:var(--display);font-size:clamp(22px,2.6vw,34px);font-weight:700;letter-spacing:.12em;line-height:1}.page-title .eyebrow{margin-bottom:8px}.page-head .steps{margin-left:auto;display:flex;align-items:center;gap:8px;font-family:var(--display);font-size:8px;letter-spacing:.2em;color:var(--ink-faint)}.steps .step{display:flex;align-items:center;gap:7px}.steps .step:after{content:"";width:18px;height:1px;background:var(--line-strong);margin-left:3px}.steps .step:last-child:after{display:none}.steps .step i{width:5px;height:5px;border-radius:50%;border:1px solid currentColor;display:block}.steps .step.is-done{color:var(--cyan)}.steps .step.is-done i{background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.steps .step.is-active{color:var(--ink)}.steps .step.is-active i{background:var(--ink)}.page-body{flex:1;min-height:0;overflow-y:auto;padding:clamp(18px,3.4vh,36px) var(--pad);position:relative;z-index:2}.page-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:clamp(12px,2vh,20px) var(--pad) clamp(16px,2.6vh,26px);border-top:1px solid var(--line);position:relative;z-index:3;background:linear-gradient(0deg,rgba(4,6,12,.7),transparent)}.foot-note{font-family:var(--display);font-size:8px;letter-spacing:.2em;color:var(--ink-faint)}.foot-note b{color:var(--ink-dim)}.page-foot .primary-btn{min-width:230px}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.4vw,18px);max-width:1240px;margin:0 auto}.mode-card{position:relative;text-align:left;border-radius:var(--radius);border:1px solid var(--line);overflow:hidden;background:linear-gradient(165deg,#0f1626b8,#0609108c);padding:22px 22px 20px;min-height:clamp(170px,24vh,232px);display:flex;flex-direction:column;transition:.35s var(--ease)}.mode-card:after{content:"";position:absolute;inset:0;background:radial-gradient(70% 90% at 100% 0%,var(--accent-soft, rgba(95,243,255,.12)),transparent 60%);opacity:0;transition:opacity .35s var(--ease);pointer-events:none}.mode-card:hover{border-color:var(--mode-accent, var(--cyan));transform:translateY(-4px);box-shadow:0 20px 50px -20px #000c,0 0 0 1px #ffffff05 inset}.mode-card:hover:after{opacity:1}.mode-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.mode-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--mode-accent, var(--cyan)) 30%,transparent);background:color-mix(in srgb,var(--mode-accent, var(--cyan)) 9%,transparent);color:var(--mode-accent, var(--cyan));box-shadow:inset 0 0 20px color-mix(in srgb,var(--mode-accent, var(--cyan)) 10%,transparent)}.mode-icon svg{width:21px;height:21px}.mode-kicker{font-family:var(--display);font-size:8px;letter-spacing:.26em;color:var(--ink-faint);margin-top:3px}.mode-name{font-family:var(--display);font-size:clamp(16px,1.5vw,20px);font-weight:700;letter-spacing:.09em;margin-top:16px}.mode-desc{color:var(--ink-dim);font-size:13.5px;line-height:1.45;margin-top:8px;max-width:34ch;flex:1}.mode-cta{display:flex;align-items:center;justify-content:space-between;font-family:var(--display);font-size:8.5px;letter-spacing:.22em;color:var(--ink-faint);margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.mode-card:hover .mode-cta{color:var(--mode-accent, var(--cyan))}.mode-players{display:inline-flex;align-items:center;gap:6px}.mode-players svg{width:12px;height:12px}.track-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.5vw,20px);max-width:1280px;margin:0 auto}.track-card{text-align:left;border-radius:var(--radius);border:1px solid var(--line);background:#080c1599;overflow:hidden;transition:.35s var(--ease);display:flex;flex-direction:column}.track-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:0 24px 60px -26px #000}.track-visual{position:relative;aspect-ratio:16 / 8.4;overflow:hidden;background:var(--sky)}.track-art{position:absolute;inset:0;width:100%;height:100%;z-index:0}.track-visual:before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(75% 90% at 72% 108%,var(--glow) 0%,transparent 58%),linear-gradient(180deg,transparent 46%,rgba(3,5,10,.72) 100%);opacity:.85}.track-visual:after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(105deg,rgba(255,255,255,.055) 0%,transparent 32%);opacity:.9}.track-map{position:absolute;right:12px;bottom:12px;z-index:2;width:76px;height:76px;padding:7px;box-sizing:content-box;background:#03060c8c;border:1px solid rgba(255,255,255,.12);border-radius:11px;backdrop-filter:blur(8px)}.track-map path.outline{fill:none;stroke:#ffffff4d;stroke-width:5.5;stroke-linejoin:round}.track-map path.glow{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linejoin:round;filter:drop-shadow(0 0 5px var(--accent))}.track-map .start{fill:var(--accent)}.track-map .finish{fill:none;stroke:var(--accent);stroke-width:1.6;filter:drop-shadow(0 0 5px var(--accent))}.track-theme{position:absolute;top:12px;left:14px;z-index:2;font-family:var(--display);font-size:7.5px;letter-spacing:.26em;color:#ffffffbf;padding:5px 8px;border-radius:5px;background:#04070c80;backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.12)}.track-diff{position:absolute;top:13px;right:14px;z-index:2;display:flex;gap:3px}.track-diff i{width:5px;height:5px;transform:rotate(45deg);background:#ffffff38}.track-diff i.on{background:var(--accent);box-shadow:0 0 7px var(--accent)}.track-info{padding:15px 17px 16px;display:flex;flex-direction:column;gap:5px;flex:1}.track-name-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.track-name{font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:.06em}.track-length{font-family:var(--display);font-size:8px;letter-spacing:.16em;color:var(--ink-faint)}.track-meta{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-family:var(--display);font-size:8.5px;letter-spacing:.13em;color:var(--ink-faint)}.track-meta span+span:before{content:"·";margin-right:7px;opacity:.55}.track-format-tag{font-family:var(--display);font-size:8px;font-weight:700;letter-spacing:.15em;color:var(--accent);background:var(--glow);border:1px solid var(--glow);padding:2px 6px;border-radius:4px}.track-format-tag.is-point{color:#051018;background:var(--accent);border-color:transparent}.track-format-tag:before{content:none!important}.track-tagline{font-size:12.5px;color:var(--ink-dim)}.track-record{display:flex;align-items:center;gap:6px;margin-top:7px;font-family:var(--display);font-size:8px;letter-spacing:.16em;color:var(--ink-faint)}.track-record svg{width:10px;height:10px;color:var(--accent)}.track-record b{color:var(--ink-dim);font-weight:500}.track-best{color:var(--accent)}.track-feats{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}.track-feats .feat{font-family:var(--display);font-style:normal;font-size:7.5px;letter-spacing:.1em;text-transform:uppercase;padding:2.5px 6px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:var(--ink-faint);white-space:nowrap}.track-feats .feat-jump{color:#ffb35c;border-color:#ffb35c6b}.track-feats .feat-gate{color:var(--accent);border-color:var(--glow)}.track-feats .feat-grip{color:#7cf0c4;border-color:#7cf0c45c}.track-feats .feat-fork{color:#b28bff;border-color:#b28bff5c}.track-play{margin-top:6px;font-size:10.5px;line-height:1.45;color:#e8f0ff85}.garage-screen{pointer-events:none}.garage-screen>*{pointer-events:auto}.garage-rail{position:absolute;left:var(--pad);top:96px;bottom:100px;width:clamp(200px,17vw,244px);display:flex;flex-direction:column;gap:8px;z-index:3}.garage-rail-title{font-family:var(--display);font-size:8px;letter-spacing:.26em;color:var(--ink-faint);margin:0 0 4px 6px}.car-list{display:flex;flex-direction:column;gap:5px;overflow-y:auto;padding-right:3px}.car-chip{text-align:left;padding:10px 13px;border-radius:10px;border:1px solid transparent;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px;transition:.22s var(--ease);position:relative}.car-chip:before{content:"";position:absolute;left:0;top:25%;bottom:25%;width:2px;border-radius:2px;background:transparent}.car-chip:hover{background:#1017258c}.car-chip.is-active{background:#121b2cb8;border-color:var(--line)}.car-chip.is-active:before{background:var(--chip-accent, var(--cyan));box-shadow:0 0 10px var(--chip-accent, var(--cyan))}.chip-name{font-family:var(--display);font-size:11px;font-weight:600;letter-spacing:.09em;grid-column:1}.chip-maker{font-size:10px;letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase;grid-column:1;grid-row:2}.chip-class{font-family:var(--display);font-size:9px;color:var(--ink-dim);border:1px solid var(--line-strong);width:20px;height:20px;display:grid;place-items:center;border-radius:5px;grid-row:1 / span 2;grid-column:2}.chip-class.is-S{color:var(--amber);border-color:#ffb35c66}.garage-panel{position:absolute;right:var(--pad);top:96px;width:clamp(280px,23vw,344px);border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(165deg,#0b101ce8,#05080fd1);backdrop-filter:blur(24px) saturate(140%);padding:24px;z-index:3}.garage-class{display:inline-flex;align-items:center;gap:8px;font-family:var(--display);font-size:8px;letter-spacing:.24em;color:var(--ink-faint)}.garage-class b{color:var(--chip-accent, var(--cyan));border:1px solid color-mix(in srgb,var(--chip-accent, var(--cyan)) 35%,transparent);padding:4px 8px;border-radius:4px;font-weight:600}.garage-name{font-family:var(--display);font-size:clamp(24px,2.4vw,32px);font-weight:800;letter-spacing:.04em;margin-top:12px}.garage-tagline{color:var(--ink-dim);font-size:13px;margin-top:3px;letter-spacing:.02em}.garage-desc{color:var(--ink-faint);font-size:12.5px;line-height:1.55;margin-top:13px;padding-bottom:17px;border-bottom:1px solid var(--line)}.stat-list{display:flex;flex-direction:column;gap:10px;margin:17px 0 19px}.stat-row{display:grid;grid-template-columns:74px 1fr 28px;align-items:center;gap:10px}.stat-row label{font-family:var(--display);font-size:7.5px;white-space:nowrap;letter-spacing:.18em;color:var(--ink-faint)}.stat-track{display:flex;gap:3px}.stat-track i{height:4px;border-radius:2px;flex:1;background:#ffffff17}.stat-track i.on{background:var(--chip-accent, var(--cyan));box-shadow:0 0 7px color-mix(in srgb,var(--chip-accent, var(--cyan)) 45%,transparent)}.stat-track i.on.half{background:linear-gradient(90deg,var(--chip-accent, var(--cyan)) 50%,rgba(255,255,255,.09) 50%);box-shadow:none}.stat-val{font-family:var(--display);font-size:9px;color:var(--ink-dim);text-align:right}.spec-row{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;color:var(--ink-faint);padding:6px 0;border-top:1px dashed rgba(255,255,255,.06)}.spec-row b{color:var(--ink-dim);font-family:var(--display);font-weight:500;font-size:10px}.garage-foot{position:absolute;left:var(--pad);right:var(--pad);bottom:28px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:24px}.garage-hint{font-size:11.5px;color:var(--ink-faint);letter-spacing:.06em}.garage-hint kbd{border:1px solid var(--line-strong);border-radius:4px;padding:2px 6px;font-family:var(--display);font-size:8px;color:var(--ink-dim);margin:0 2px}.garage-actions{display:flex;gap:10px}.launch-strip{display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:13px;border-top:1px solid var(--line)}.launch-field{display:flex;align-items:center;justify-content:space-between;gap:10px}.launch-field>span{font-family:var(--display);font-size:7.5px;letter-spacing:.16em;color:var(--ink-faint);white-space:nowrap}.seg{display:flex;gap:4px;flex:none}.seg button{font-family:var(--display);font-size:8.5px;padding:7px 9px;border-radius:6px;border:1px solid var(--line);color:var(--ink-faint);transition:.2s var(--ease);white-space:nowrap}.seg button:hover{color:var(--ink);border-color:var(--line-strong)}.seg button.is-active{color:#04121a;background:var(--cyan);border-color:var(--cyan);font-weight:700}.launch-value{font-family:var(--display);font-size:9px;letter-spacing:.14em;color:var(--cyan)}.duel-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(14px,2vw,30px);align-items:stretch;max-width:1180px;margin:0 auto}.duel-side{border:1px solid var(--line);border-radius:var(--radius);background:#080c1699;padding:22px;display:flex;flex-direction:column}.duel-side.is-p2{--player-accent: var(--magenta)}.duel-side.is-p1{--player-accent: var(--cyan)}.duel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.duel-player{font-family:var(--display);font-size:10px;letter-spacing:.2em;color:var(--player-accent);display:flex;align-items:center;gap:8px}.duel-player i{width:7px;height:7px;border-radius:50%;background:var(--player-accent);box-shadow:0 0 10px var(--player-accent)}.duel-keys{display:flex;gap:5px}.duel-keys span{font-family:var(--display);font-size:8px;border:1px solid var(--line);padding:4px 6px;border-radius:4px;color:var(--ink-faint)}.duel-cars{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;flex:1}.duel-car{border:1px solid var(--line);border-radius:10px;padding:11px;text-align:left;transition:.2s var(--ease);display:flex;flex-direction:column;gap:3px}.duel-car:hover{border-color:var(--line-strong);background:#141c2c80}.duel-car.is-active{border-color:var(--player-accent);background:color-mix(in srgb,var(--player-accent) 8%,transparent)}.duel-car b{font-family:var(--display);font-size:9.5px;letter-spacing:.06em;font-weight:600}.duel-car span{font-size:10px;color:var(--ink-faint);letter-spacing:.09em;text-transform:uppercase}.duel-swatch{width:20px;height:4px;border-radius:2px;margin-bottom:5px}.duel-vs{display:grid;place-items:center;font-family:var(--display);font-size:12px;letter-spacing:.2em;color:var(--ink-faint)}.duel-vs i{width:1px;height:40px;background:var(--line);margin-top:10px;display:block}.panel-page{max-width:820px;margin:0 auto;width:100%}.settings-card{border:1px solid var(--line);border-radius:var(--radius);background:#080c1694;backdrop-filter:blur(18px);padding:8px 26px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.06)}.setting-row:last-child{border-bottom:none}.setting-label{font-family:var(--display);font-size:10px;letter-spacing:.13em}.setting-note{font-size:11.5px;color:var(--ink-faint);margin-top:3px;letter-spacing:.02em}.setting-control{display:flex;align-items:center;gap:8px;flex:none}.slider{-webkit-appearance:none;appearance:none;width:150px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--cyan) var(--fill, 50%),rgba(255,255,255,.12) var(--fill, 50%));outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;width:13px;height:13px;border-radius:50%;background:#e8fdff;box-shadow:0 0 0 3px #5ff3ff29,0 0 12px #5ff3ffb3;cursor:pointer}.slider-val{width:34px;font-family:var(--display);font-size:9px;color:var(--ink-dim);text-align:right}.toggle{width:42px;height:24px;border-radius:20px;border:1px solid var(--line-strong);background:#ffffff0a;position:relative;transition:.25s var(--ease)}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--ink-faint);transition:.25s var(--ease)}.toggle.is-on{background:#5ff3ff29;border-color:#5ff3ff80}.toggle.is-on:after{left:21px;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}.settings-actions{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.about-note{font-size:11px;color:var(--ink-faint);line-height:1.6}.about-note b{color:var(--ink-dim);font-weight:600}.wipe-btn{font-family:var(--display);font-size:8px;letter-spacing:.18em;color:var(--ink-faint);border-bottom:1px solid var(--line);padding-bottom:3px}.wipe-btn:hover{color:var(--red);border-color:var(--red)}.howto-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.howto-card{border:1px solid var(--line);border-radius:var(--radius);background:#080c1694;padding:24px}.howto-card h3{font-family:var(--display);font-size:11px;letter-spacing:.18em;margin-bottom:17px;color:var(--cyan)}.howto-card-wide{grid-column:1 / -1}.mech-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px}.mech-row{display:grid;grid-template-columns:84px 92px 1fr;align-items:baseline;gap:10px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}.mech-row b{font-family:var(--display);font-size:8px;letter-spacing:.12em;color:var(--ink-dim)}.mech-row i{font-family:var(--display);font-size:8px;letter-spacing:.14em;font-style:normal;color:var(--cyan)}.mech-row span{font-size:11.5px;line-height:1.55;color:var(--ink-faint)}.key-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px dashed rgba(255,255,255,.07);font-size:13px;color:var(--ink-dim)}.key-row:last-child{border-bottom:none}.key-row .keys{display:flex;gap:4px}.key-row kbd{font-family:var(--display);font-size:8px;color:var(--ink);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;padding:4px 7px;background:#ffffff08;min-width:24px;text-align:center}.key-row .keys span{color:var(--ink-faint);font-size:10px;align-self:center;padding:0 2px}.tip-list{display:flex;flex-direction:column;gap:13px}.tip{display:grid;grid-template-columns:26px 1fr;gap:11px;font-size:13px;line-height:1.5;color:var(--ink-dim)}.tip b{color:var(--ink);font-weight:600}.tip .n{font-family:var(--display);font-size:9px;color:var(--cyan);border:1px solid rgba(95,243,255,.3);border-radius:50%;width:22px;height:22px;display:grid;place-items:center;margin-top:1px}.race-ui{position:absolute;inset:0;pointer-events:none;z-index:20;font-family:var(--body)}.race-ui>*{pointer-events:none}.hud{position:absolute;inset:0}.hud-out{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;pointer-events:none;background:radial-gradient(circle at 50% 46%,#06091057,#03050ab8)}.hud-out.hidden{display:none}.out-kicker{font-family:var(--display);font-size:9px;letter-spacing:.34em;color:var(--magenta)}.hud-out b{font-family:Loop Display,sans-serif;font-size:clamp(26px,3vw,42px);letter-spacing:.14em;color:#fff;font-weight:500}.hud-out small{font-family:var(--display);font-size:9px;letter-spacing:.18em;color:var(--ink-dim)}.hud.is-out .pos-num{font-size:.62em;letter-spacing:.02em}.hud.is-out .nitro-wrap,.hud.is-out .speedo{opacity:.4}.hud:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 100% at 50% 50%,transparent 55%,rgba(2,4,8,.55) 100%)}.hud-top{position:absolute;top:clamp(16px,2.4vh,28px);left:clamp(18px,2vw,34px);right:clamp(18px,2vw,34px);display:flex;align-items:flex-start;justify-content:space-between}.hud-tl{display:flex;gap:10px}.hud-panel{background:linear-gradient(160deg,#090e18b3,#06091073);border:1px solid rgba(190,225,255,.13);border-radius:14px;backdrop-filter:blur(16px) saturate(130%);box-shadow:0 10px 30px -16px #000c}.pos-card{display:flex;flex-direction:column;align-items:flex-start;padding:10px 16px 9px;gap:2px;min-width:92px;position:relative;overflow:hidden}.pos-value{display:flex;align-items:baseline;gap:3px}.pos-card:before{content:"";position:absolute;left:0;top:18%;bottom:18%;width:2px;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.pos-num{font-family:var(--display);font-size:30px;font-weight:800;line-height:1;letter-spacing:-.02em}.pos-of{font-family:var(--display);font-size:12px;color:var(--ink-faint)}.pos-label{position:static;font-family:var(--display);font-size:6px;letter-spacing:.18em;color:var(--ink-faint)}.lap-card{padding:10px 15px 11px;display:flex;align-items:baseline;gap:4px;min-width:78px}.lap-label{font-family:var(--display);font-size:7.5px;letter-spacing:.18em;color:var(--ink-faint);margin-right:3px}.lap-num{font-family:var(--display);font-size:22px;font-weight:700;line-height:1}.lap-total{font-family:var(--display);font-size:10px;color:var(--ink-faint)}.hud-center-top{position:absolute;left:50%;top:clamp(14px,2.1vh,24px);transform:translate(-50%);text-align:center}.lap-time{font-family:var(--body);font-size:clamp(22px,2.1vw,28px);font-weight:700;letter-spacing:.07em;font-variant-numeric:tabular-nums;text-shadow:0 0 24px rgba(95,243,255,.22)}.lap-time.is-record{color:var(--cyan)}.lap-times{display:flex;gap:14px;justify-content:center;margin-top:5px;font-family:var(--display);font-size:8px;letter-spacing:.13em;color:var(--ink-faint)}.lap-times b{font-family:var(--body);font-size:10px;color:var(--ink-dim);font-weight:700;letter-spacing:.04em}.lap-times .best b{color:var(--violet)}.delta{font-family:var(--display);font-size:9px;letter-spacing:.1em;margin-top:3px;height:12px;color:var(--green)}.delta.is-slow{color:var(--red)}.hud-minimap{position:relative;padding:9px;width:clamp(118px,11vw,150px)}.map-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:-1px 1px 5px;font-family:var(--display);font-size:6px;letter-spacing:.14em;color:var(--ink-faint)}.map-name{font-family:Loop Sans,sans-serif;font-size:8px;letter-spacing:.08em;color:var(--ink-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-n{display:inline-flex;align-items:center;gap:2px;color:var(--ink-faint)}.map-n i{width:0;height:0;border-left:2.5px solid transparent;border-right:2.5px solid transparent;border-bottom:5px solid var(--cyan);opacity:.6}.minimap-svg{width:100%;height:auto;overflow:visible}.minimap-svg .map-sector{fill:#dcf0ff66}.minimap-svg .map-road{fill:none;stroke:#dcf0ff29;stroke-width:5;stroke-linejoin:round}.minimap-svg .map-line{fill:none;stroke:#dcf0ff66;stroke-width:.8;stroke-linejoin:round}.minimap-svg .map-start{stroke:var(--cyan);stroke-width:1.4}.minimap-svg .map-finish{fill:none;stroke:var(--cyan);stroke-width:1.2;opacity:.85}.minimap-svg .map-branch-road{fill:none;stroke:#9d7bff2b;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.minimap-svg .map-branch-line{fill:none;stroke:#9d7bff8c;stroke-width:1.1;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:2.8 2}.minimap-svg .map-branch-node{fill:#070912f2;stroke:#ae94ffeb;stroke-width:.8;stroke-linejoin:round}.map-dot{position:absolute;width:5px;height:5px;border-radius:50%;margin:-2.5px 0 0 -2.5px;background:#ffffff59;transition:left .08s linear,top .08s linear}.map-dot.is-player{width:9px;height:10px;margin:-5px 0 0 -4.5px;border-radius:0;background:var(--cyan);box-shadow:none;z-index:2;transform:rotate(var(--rot, 180deg));clip-path:polygon(50% 0,100% 100%,50% 76%,0 100%);filter:drop-shadow(0 0 3px rgba(95,243,255,.9));transition:left .08s linear,top .08s linear,transform .12s linear}.map-dot.is-p1:not(.is-player){width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--cyan);box-shadow:0 0 7px #5ff3ffb3}.map-dot.is-p2:not(.is-player){width:6px;height:6px;margin:-3px 0 0 -3px;background:var(--magenta);box-shadow:0 0 7px #ff3ea5b3}.map-dot.is-player.is-p2{background:var(--magenta);filter:drop-shadow(0 0 3px rgba(255,62,165,.9))}.minimap-meta{display:flex;justify-content:space-between;font-family:var(--display);font-size:6.5px;letter-spacing:.15em;color:var(--ink-faint);padding:4px 2px 0;border-top:1px solid rgba(255,255,255,.07);margin-top:4px}.minimap-meta b{color:var(--ink-dim)}.hud-bottom{position:absolute;bottom:clamp(16px,2.6vh,30px);left:clamp(18px,2vw,34px);right:clamp(18px,2vw,34px);display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.hud-bl{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.combo{display:flex;align-items:baseline;gap:9px;padding:8px 15px 8px 12px;border-left:2px solid var(--magenta);background:linear-gradient(90deg,rgba(255,62,165,.13),transparent);transition:opacity .2s ease;opacity:0}.combo.is-live{opacity:1}.combo-mult{font-family:var(--display);font-size:10px;color:var(--magenta);font-weight:700}.combo-score{font-family:var(--display);font-size:21px;font-weight:700;font-variant-numeric:tabular-nums}.combo-label{font-family:var(--display);font-size:6.5px;letter-spacing:.22em;color:var(--ink-faint)}.nitro-wrap{display:flex;align-items:center;gap:10px;padding:9px 13px;border-radius:10px}.nitro-label{font-family:var(--display);font-size:7px;letter-spacing:.2em;color:var(--ink-faint)}.nitro-bar{width:clamp(130px,15vw,210px);height:5px;border-radius:3px;background:#ffffff1a;overflow:hidden;position:relative}.nitro-bar i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#2bb8ff,var(--cyan) 60%,#d9fdff);box-shadow:0 0 12px #5ff3ffb3;transition:width .1s linear}.nitro-wrap.is-boosting .nitro-bar i{background:linear-gradient(90deg,#ff8a3d,#ffd9a0);box-shadow:0 0 14px #ff8a3dcc}.nitro-key{font-family:var(--display);font-size:6.5px;letter-spacing:.12em;color:var(--ink-faint);border:1px solid var(--line);padding:2px 5px;border-radius:3px}.mech-wrap{display:flex;align-items:center;gap:10px;padding:8px 13px 8px 11px;border-radius:10px;border-left:2px solid var(--cyan);background:linear-gradient(90deg,rgba(95,243,255,.12),rgba(95,243,255,.01) 70%,transparent);transition:border-color .25s ease,background .25s ease}.mech-wrap.is-warn{border-left-color:var(--amber);background:linear-gradient(90deg,rgba(255,179,92,.16),rgba(255,179,92,.02) 70%,transparent)}.mech-name{font-family:var(--display);font-size:7.5px;letter-spacing:.22em;font-weight:700;color:var(--cyan);white-space:nowrap}.mech-wrap.is-warn .mech-name{color:var(--amber)}.mech-state{font-family:var(--display);font-size:7px;letter-spacing:.13em;color:var(--ink-dim);white-space:nowrap;font-variant-numeric:tabular-nums}.mech-bar{width:clamp(70px,8vw,116px);height:4px;border-radius:2px;background:#ffffff1a;overflow:hidden}.mech-bar i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#2bb8ff,var(--cyan));box-shadow:0 0 10px #5ff3ffa6;transition:width .12s linear}.mech-wrap.is-warn .mech-bar i{background:linear-gradient(90deg,#ff8a3d,var(--amber));box-shadow:0 0 10px #ffb35cb3}.hud--half .mech-bar{width:70px}.hud--half .mech-state{display:none}.feat-mech{border-color:#5ff3ff80!important;color:var(--cyan)!important}.speedo{position:relative;width:clamp(150px,15vw,205px);aspect-ratio:1.24;display:flex;align-items:flex-end;justify-content:center}.speedo svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.speedo .dial-bg{fill:none;stroke:#dcf0ff1c;stroke-width:6;stroke-linecap:round}.speedo .dial-active{fill:none;stroke:url(#speedGrad);stroke-width:6;stroke-linecap:round;filter:drop-shadow(0 0 5px rgba(95,243,255,.55));transition:stroke-dashoffset .08s linear}.speedo .dial-ticks line{stroke:#dcf0ff38;stroke-width:1}.speedo .dial-ticks line.major{stroke:#dcf0ff80;stroke-width:1.4}.speedo .needle{transform-origin:100px 100px;transition:transform .09s linear}.speedo .needle-line{stroke:#f4feff;stroke-width:2;stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(255,255,255,.8))}.speedo .needle-hub{fill:var(--cyan);filter:drop-shadow(0 0 6px var(--cyan))}.speedo-readout{position:relative;text-align:center;padding-bottom:8px;z-index:2}.speed-num{font-family:var(--display);font-size:clamp(30px,3.2vw,46px);font-weight:800;line-height:.9;font-variant-numeric:tabular-nums;text-shadow:0 0 26px rgba(95,243,255,.25)}.speed-unit{display:flex;align-items:center;justify-content:center;gap:7px;font-family:var(--display);font-size:7px;letter-spacing:.22em;color:var(--ink-faint);margin-top:5px}.gear{color:var(--cyan);font-size:11px;font-weight:600;letter-spacing:0;border-left:1px solid var(--line-strong);padding-left:8px}.speedo.is-boosting .gear{color:var(--amber)}.center-banner{position:absolute;left:50%;top:33%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.banner-kicker{font-family:var(--display);font-size:10px;letter-spacing:.5em;color:var(--cyan);margin-bottom:8px;text-transform:uppercase}.banner-main{font-family:var(--display);font-size:clamp(24px,3.4vw,44px);font-weight:800;letter-spacing:.12em;text-shadow:0 0 40px rgba(95,243,255,.35)}.banner-sub{font-family:var(--display);font-size:9px;letter-spacing:.3em;color:var(--ink-dim);margin-top:8px}.banner.is-warn .banner-kicker,.banner.is-warn .banner-main{color:var(--amber);text-shadow:0 0 34px rgba(255,179,92,.4)}.banner.is-bad .banner-kicker,.banner.is-bad .banner-main{color:var(--red);text-shadow:0 0 34px rgba(255,93,108,.4)}.countdown{position:absolute;inset:0;display:grid;place-items:center;z-index:4;background:radial-gradient(50% 50% at 50% 50%,rgba(4,7,13,.35),transparent 70%)}.count-ring{position:relative;width:220px;height:220px;display:grid;place-items:center}.count-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.count-ring .ring-bg{fill:none;stroke:#ffffff1a;stroke-width:2}.count-ring .ring-fg{fill:none;stroke:var(--cyan);stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 8px var(--cyan))}.count-num{font-family:var(--display);font-size:96px;font-weight:800;line-height:1;text-shadow:0 0 50px rgba(95,243,255,.4);animation:countPop .5s var(--ease)}.count-num.is-go{font-size:66px;letter-spacing:.08em;color:var(--cyan)}@keyframes countPop{0%{transform:scale(1.4);opacity:0}30%{opacity:1}to{transform:scale(1)}}.count-sub{position:absolute;bottom:52px;font-family:var(--display);font-size:8px;letter-spacing:.34em;color:var(--ink-faint)}.race-msg-toast{position:absolute;left:50%;bottom:18%;transform:translate(-50%);font-family:var(--display);font-size:9px;letter-spacing:.24em;color:var(--ink-dim);background:#06091099;border:1px solid var(--line);padding:8px 16px;border-radius:20px;backdrop-filter:blur(10px);opacity:0;transition:opacity .25s}.race-msg-toast.is-live{opacity:1}.hud-keys-hint{position:absolute;left:50%;bottom:8px;transform:translate(-50%);font-family:var(--display);font-size:6.5px;letter-spacing:.18em;color:#dcf0ff3d;display:flex;gap:12px}.hud-keys-hint span{display:flex;align-items:center;gap:4px}.hud-keys-hint b{border:1px solid rgba(220,240,255,.16);border-radius:3px;padding:2px 4px;font-weight:500}.split-line{position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.3) 15%,rgba(255,255,255,.3) 85%,transparent);z-index:3}.hud--half{width:50%;overflow:hidden}.hud--half[data-player=p2]{left:50%}.hud--half .hud-top{left:18px;right:18px;top:14px}.hud--half .hud-bottom{left:18px;right:18px;bottom:14px}.hud--half .pos-num{font-size:24px}.hud--half .pos-card{min-width:76px;padding:8px 12px 9px}.hud--half .lap-num{font-size:18px}.hud--half .lap-card{padding:8px 12px 9px;min-width:66px}.hud--half .hud-minimap{width:100px}.hud--half .lap-time{font-size:18px}.hud--half .hud-center-top{top:12px}.hud--half .speedo{width:130px}.hud--half .nitro-bar{width:120px}.hud--half .combo-score{font-size:17px}.hud--half .hud-keys-hint{display:none}.hud--half .p-tag{font-family:var(--display);font-size:8px;letter-spacing:.18em;padding:4px 8px;border-radius:5px;border:1px solid currentColor;display:inline-block;margin-bottom:6px}.hud--half[data-player=p1] .p-tag{color:var(--cyan)}.hud--half[data-player=p2] .p-tag{color:var(--magenta)}.hud--half[data-player=p1] .pos-card:before{background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.hud--half[data-player=p2] .pos-card:before{background:var(--magenta);box-shadow:0 0 12px var(--magenta)}.hud--half[data-player=p2] .map-dot.is-player{background:var(--magenta);box-shadow:0 0 9px var(--magenta)}.hud--half .hud-tl{align-items:flex-start}.speed-fx{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .25s;z-index:2}.speed-fx.is-live{opacity:1}.speed-fx:before{content:"";position:absolute;inset:-20%;background:repeating-conic-gradient(from 0deg at 50% 50%,rgba(170,240,255,.06) 0deg .4deg,transparent .5deg 5deg);mask-image:radial-gradient(circle,transparent 30%,#000 78%);-webkit-mask-image:radial-gradient(circle,transparent 30%,#000 78%);animation:streakSpin .9s linear infinite}@keyframes streakSpin{to{transform:rotate(1deg) scale(1.02)}}.speed-fx:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,transparent 42%,rgba(80,200,255,.14) 100%)}.float-score{position:absolute;font-family:var(--display);font-weight:700;color:#fff;font-size:14px;pointer-events:none;z-index:30;animation:floatUp 1s ease-out forwards;text-shadow:0 0 16px rgba(255,62,165,.8)}@keyframes floatUp{0%{opacity:0;transform:translateY(6px) scale(.9)}20%{opacity:1}to{opacity:0;transform:translateY(-46px) scale(1.02)}}.modal-layer{position:absolute;inset:0;z-index:50;display:grid;place-items:center;background:#03050a99;backdrop-filter:blur(10px);animation:fadeIn .25s ease both}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{width:min(440px,88vw);border-radius:var(--radius);border:1px solid var(--line-strong);background:linear-gradient(165deg,#0e1422f2,#060910f0);padding:30px;box-shadow:0 40px 100px -30px #000;animation:modalIn .35s var(--ease) both}@keyframes modalIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}.modal h2{font-family:var(--display);font-size:26px;font-weight:800;letter-spacing:.08em;margin:9px 0 4px}.modal-sub{color:var(--ink-faint);font-size:12.5px;line-height:1.5;margin-bottom:22px}.modal-actions{display:flex;flex-direction:column;gap:8px}.modal-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;border-radius:10px;border:1px solid var(--line);font-family:var(--display);font-size:10px;letter-spacing:.18em;color:var(--ink-dim);transition:.22s var(--ease);text-align:left}.modal-btn:hover{color:var(--ink);border-color:var(--line-strong);background:#ffffff0a}.modal-btn.primary{background:var(--cyan);color:#04121a;border-color:var(--cyan);font-weight:700}.modal-btn.primary:hover{background:#92f7ff}.modal-btn.danger:hover{color:var(--red);border-color:#ff5d6c66}.modal-btn .sub{font-family:var(--body);font-size:10px;letter-spacing:.02em;color:inherit;opacity:.55}.modal .keys-hint{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:10.5px;color:var(--ink-faint);display:flex;gap:14px;flex-wrap:wrap}.modal .keys-hint kbd{border:1px solid var(--line-strong);border-radius:3px;padding:2px 5px;font-family:var(--display);font-size:7.5px;margin-right:4px}.results-screen{background:linear-gradient(180deg,#04060c8c,#04060ce6)}.results-body{flex:1;display:flex;align-items:center;justify-content:center;padding:20px var(--pad);min-height:0;position:relative;z-index:2}.results-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(380px,1.1fr);gap:clamp(24px,4vw,64px);align-items:center;width:min(1120px,100%)}.result-hero .eyebrow{margin-bottom:14px}.result-place{font-family:var(--display);font-size:clamp(70px,9vw,130px);font-weight:900;line-height:.9;letter-spacing:-.02em;background:linear-gradient(100deg,#f6feff,#9df8ff 55%,#ff9ecf);-webkit-background-clip:text;background-clip:text;color:transparent}.result-place small{font-size:.28em;letter-spacing:.1em;color:var(--ink-faint);-webkit-text-fill-color:var(--ink-faint);display:block;margin-top:12px;font-weight:500}.result-place.is-p2{background:linear-gradient(100deg,#fff4fa,#ff8fc6 55%,#ffd0e6);-webkit-background-clip:text;background-clip:text}.result-title{font-family:var(--display);font-size:clamp(13px,1.15vw,17px);font-weight:700;letter-spacing:.12em;margin-top:14px;white-space:nowrap}.result-note{color:var(--ink-dim);font-size:13px;margin-top:8px;max-width:36ch;line-height:1.5}.result-duel{display:flex;gap:10px;margin-top:18px}.duel-result{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;border:1px solid var(--line);border-radius:12px;padding:10px 14px;background:#ffffff06}.duel-result span{font-family:var(--display);font-size:7.5px;letter-spacing:.16em;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duel-result b{font-family:var(--display);font-size:19px;font-weight:600;font-variant-numeric:tabular-nums}.duel-result small{font-size:9px;letter-spacing:.08em;color:var(--ink-faint)}.duel-result.is-p1{border-left:2px solid var(--cyan)}.duel-result.is-p1 b{color:var(--cyan)}.duel-result.is-p2{border-left:2px solid var(--magenta)}.duel-result.is-p2 b{color:var(--magenta)}.result-metrics{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.metric{border:1px solid var(--line);border-radius:10px;padding:11px 15px;min-width:104px;background:#ffffff05}.metric span{display:block;font-family:var(--display);font-size:7px;letter-spacing:.2em;color:var(--ink-faint);margin-bottom:6px}.metric b{font-family:var(--display);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.metric.is-accent b{color:var(--cyan)}.result-actions{display:flex;gap:10px;margin-top:28px}.results-table{border:1px solid var(--line);border-radius:var(--radius);background:#080c168c;backdrop-filter:blur(18px);overflow:hidden}.results-table-head{display:grid;grid-template-columns:42px 1fr 86px 86px;gap:8px;padding:12px 18px;font-family:var(--display);font-size:7px;letter-spacing:.22em;color:var(--ink-faint);border-bottom:1px solid var(--line)}.result-row{display:grid;grid-template-columns:42px 1fr 86px 86px;gap:8px;align-items:center;padding:11px 18px;border-bottom:1px solid rgba(255,255,255,.045);font-size:13px}.result-row:last-child{border-bottom:none}.result-row.is-player{background:linear-gradient(90deg,rgba(95,243,255,.09),transparent)}.result-row .r-pos{font-family:var(--display);font-size:13px;color:var(--ink-faint)}.result-row.is-player .r-pos{color:var(--cyan)}.r-name{display:flex;align-items:center;gap:9px;font-family:var(--display);font-size:10px;letter-spacing:.07em}.r-swatch{width:3px;height:16px;border-radius:2px}.r-name small{font-family:var(--body);font-size:9px;letter-spacing:.12em;color:var(--ink-faint);text-transform:uppercase}.r-time,.r-lap{font-family:var(--display);font-size:10px;color:var(--ink-dim);font-variant-numeric:tabular-nums}.r-lap{color:var(--ink-faint)}.r-gap{color:var(--ink-faint);font-size:9px}.fade-in{animation:fadeIn .5s ease both}.hidden{display:none!important}.toast{position:fixed;left:50%;bottom:34px;transform:translate(-50%) translateY(10px);background:#080c16eb;border:1px solid var(--line-strong);padding:11px 20px;border-radius:10px;font-family:var(--display);font-size:9px;letter-spacing:.15em;color:var(--ink-dim);z-index:100;opacity:0;transition:.3s var(--ease);pointer-events:none;backdrop-filter:blur(14px)}.toast.is-live{opacity:1;transform:translate(-50%) translateY(0)}.loading-veil{position:absolute;inset:0;z-index:60;background:#05070d;display:grid;place-items:center;transition:opacity .5s ease}.loading-veil.hidden{opacity:0;pointer-events:none}.loader-mark{font-family:var(--display);font-size:12px;letter-spacing:.4em;color:var(--cyan);animation:pulse 1.4s infinite}@media(max-width:1100px){.mode-grid,.track-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-card{width:240px}.garage-rail{width:190px}.garage-panel{width:280px}}@media(max-height:800px){.garage-panel{top:82px;padding:18px}.garage-name{font-size:24px;margin-top:8px}.garage-desc{display:none}.stat-list{gap:7px;margin:11px 0 12px}.spec-row{padding:4px 0}.launch-strip{margin-top:9px;padding-top:9px;gap:6px}.garage-rail{top:82px;bottom:86px}.garage-foot{bottom:18px}}@media(max-height:720px){.logo{font-size:clamp(54px,8vw,96px)}.menu-nav{margin-top:20px}.nav-sub{display:none}.mode-card{min-height:132px;padding:15px}.mode-desc{font-size:12px}.tagline{margin-top:14px}.showcase-card{padding:16px 18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.garage-breadcrumb{font-family:var(--display);font-size:8px;letter-spacing:.2em;color:var(--ink-faint);margin-right:8px}.garage-breadcrumb b{color:var(--cyan);font-weight:400;margin:0 5px}.garage-context{position:absolute;top:92px;left:50%;transform:translate(-50%);z-index:3;text-align:center;pointer-events:none}.garage-context .eyebrow{justify-content:center}.garage-panel{max-height:calc(100vh - 190px);overflow-y:auto;scrollbar-width:thin}.garage-screen .vignette{z-index:1}.garage-rail,.garage-panel{z-index:3}.garage-foot{z-index:4}.time-card,.score-card{padding:9px 14px 10px;min-width:92px;display:flex;flex-direction:column;gap:2px}.time-label,.score-label{font-family:var(--display);font-size:6.5px;letter-spacing:.2em;color:var(--ink-faint)}.time-num{font-family:var(--display);font-size:22px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.03em;line-height:1}.score-num{font-family:var(--display);font-size:19px;font-weight:700;color:var(--cyan);font-variant-numeric:tabular-nums;line-height:1.1}.map-wrap{position:relative;width:100%}.map-dots{position:absolute;inset:0}.map-dot{position:absolute}.hud{z-index:3}.speed-fx{z-index:1}.split-line{z-index:2}.center-banner{opacity:0;z-index:6}.countdown{z-index:5}.race-ui .modal-layer{pointer-events:auto;z-index:50}.race-ui .modal-layer.hidden{display:none}.speedo .needle{transition:transform 85ms linear}.speedo .dial-active{transition:stroke-dashoffset 85ms linear}.hud--half[data-player=p2] .speedo .dial-active{stroke:var(--magenta);filter:drop-shadow(0 0 5px rgba(255,62,165,.6))}.hud--half[data-player=p2] .needle-hub{fill:var(--magenta)}.hud--half[data-player=p2] .nitro-bar i{background:linear-gradient(90deg,#ff3ea5,#ffb1d6);box-shadow:0 0 12px #ff3ea5b3}.hud--half[data-player=p2] .lap-time{color:#ffe5f2}.hud--half[data-player=p2] .combo{border-left-color:var(--magenta)}.duel-tip{margin-top:14px;padding-top:13px;border-top:1px solid var(--line);font-family:var(--display);font-size:8px;letter-spacing:.13em;color:var(--ink-faint);line-height:1.7}.duel-side .duel-cars{align-content:start}.duel-car b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duel-car{min-height:58px}.duel-side.is-p1 .duel-car.is-active{background:#5ff3ff0f}.duel-stat{width:min(320px,86%);margin-top:14px}.duel-stat .stat-list{margin:0;gap:8px}.duel-stat .stat-row{grid-template-columns:70px 1fr 26px}.hud[data-mode=drift] .lap-times,.hud[data-mode=rush] .lap-times{opacity:0}.race-ui .hud--half .hud-center-top{top:14px}.hud--half .hud-tr{margin-left:auto}.hud--half .hud-tl{gap:6px}.hud--half .pos-card{min-width:70px}.hud--half .pos-label{font-size:5.5px;right:8px;bottom:7px}.hud--half .lap-card{min-width:62px}.hud--half .hud-minimap{width:96px;padding:7px}.hud--half .minimap-svg .map-branch-road{stroke-width:2.4}.hud--half .minimap-svg .map-branch-line{stroke-width:1.35;stroke-dasharray:3.1 2.1}.hud--half .minimap-svg .map-branch-node{stroke-width:1}.hud--half .nitro-wrap{padding:7px 10px}.hud--half .combo{padding:6px 12px 6px 10px}@media(max-width:1400px){.garage-panel .seg button{padding:6px 7px;font-size:8px}}@media(max-width:900px){.duel-grid{grid-template-columns:1fr}.duel-vs,.garage-context{display:none}.howto-grid,.mech-list{grid-template-columns:1fr}.mech-row{grid-template-columns:70px 84px 1fr}}
