#hud #hud-meters.cluster-shell{--cluster-size:clamp(190px, 16.4vw, 220px);--dial-size:var(--cluster-size);--meter-icon:24px;--meter-font:16px;--meter-gap:8px;--dial-gap:12px;top:auto;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));width:var(--cluster-size);clip-path:none;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;color:var(--ink);font-family:var(--font);font-variant-numeric:tabular-nums;background:0 0;border:0;padding:0;position:absolute}#hud-meters .cluster-instrument{justify-items:center;gap:var(--dial-gap);filter:drop-shadow(0 2px 4px #000000a6);width:100%;display:grid;position:relative}#hud-meters .cluster-dial{width:var(--dial-size);height:calc(var(--dial-size) * 204 / 220);display:block;overflow:visible}#hud-meters .cluster-face{fill:var(--panel);stroke:var(--ink-dim);stroke-opacity:.12;stroke-width:1px}#hud-meters .cluster-track,#hud-meters .cluster-rpm,#hud-meters .cluster-redline-track,#hud-meters .cluster-redline-fill{fill:none;stroke-width:5px;stroke-linecap:butt}#hud-meters .cluster-track{stroke:var(--ink-dim);opacity:.22}#hud-meters #rpm-fill{stroke:var(--amber-hot);background:0 0;width:auto;height:auto}#hud-meters .cluster-redline-track{stroke:var(--danger);opacity:.3}#hud-meters .cluster-redline-fill{stroke:var(--danger)}#hud-meters .cluster-tick{stroke:var(--ink-dim);stroke-width:1px;opacity:.65}#hud-meters .cluster-major{stroke:var(--ink);stroke-width:1.8px;opacity:1}#hud-meters .cluster-tick-label{fill:var(--ink);text-anchor:middle;dominant-baseline:central;font-size:12px;font-weight:600}#hud-meters .cluster-hot{stroke:var(--danger);fill:var(--danger)}#hud-meters .cluster-tick-label.cluster-hot{stroke:none}#hud-meters .cluster-needle{fill:var(--amber-hot)}#hud-meters .cluster-rpm-unit{fill:var(--ink-dim);letter-spacing:1px;text-anchor:middle;font-size:7px}#hud-meters .cluster-center{top:calc(var(--dial-size) * .34);flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;left:50%;transform:translate(-50%)}#hud-meters #speed-value.cluster-speed{width:3ch;font-size:calc(var(--dial-size) * .24);letter-spacing:-.04em;text-align:center;text-shadow:0 2px 6px #000c;font-weight:800;line-height:1;display:block}#hud-meters .cluster-unit{font-size:calc(var(--dial-size) * .052);color:var(--ink-dim);letter-spacing:.1em;line-height:1.2}#hud-meters #gear-value.cluster-gear{border:1px solid var(--amber);background:var(--panel);width:1.65em;color:var(--amber-hot);font-size:calc(var(--dial-size) * .082);text-align:center;border-radius:4px;margin:4px 0 0;font-weight:700;line-height:1.3;display:block}#hud-meters .cluster-bars{gap:var(--meter-gap);width:100%;display:grid}#hud-meters .cluster-meter{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:8px;display:grid}#hud-meters .cluster-label{font-size:var(--meter-font);letter-spacing:.04em;color:var(--ink-dim);white-space:nowrap;align-items:center;gap:4px;font-weight:600;line-height:1;display:flex}#hud-meters .cluster-label svg{flex:0 0 var(--meter-icon);width:var(--meter-icon);height:var(--meter-icon);fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linejoin:round}#hud-meters .cluster-bar{background:var(--panel);border-radius:3px;height:9px;overflow:hidden;box-shadow:0 0 0 1px #ffffff1f}#hud-meters #integrity-fill,#hud-meters #boost-fill{transform-origin:0;width:100%;height:100%}#hud-meters #integrity-fill{background:var(--cluster-health,var(--good))}#hud-meters #boost-fill{background:var(--teal)}#hud-meters .cluster-boost .cluster-label{color:var(--teal)}#hud-meters .cluster-active{filter:drop-shadow(0 0 4px var(--teal));animation:.65s ease-in-out infinite alternate cluster-boost-pulse}#hud-meters .cluster-limiter .cluster-rpm,#hud-meters .cluster-limiter .cluster-redline-fill,#hud-meters .cluster-limiter .cluster-needle{filter:drop-shadow(0 0 3px var(--danger));animation:.22s ease-in-out infinite alternate cluster-limiter-pulse}#hud-meters .cluster-limiter .cluster-needle{fill:var(--danger)}@keyframes cluster-boost-pulse{to{opacity:.65}}@keyframes cluster-limiter-pulse{to{opacity:.6}}body.reduced #hud-meters .cluster-active,body.reduced #hud-meters .cluster-limiter .cluster-rpm,body.reduced #hud-meters .cluster-limiter .cluster-redline-fill,body.reduced #hud-meters .cluster-limiter .cluster-needle{animation:none}body.touch-mode #hud #hud-meters.cluster-shell{--cluster-size:clamp(136px, 16vw, 170px);top:auto;bottom:calc(32px + var(--safe-b) + 2.14 * min(clamp(88px, 15vmin, 150px), (100vw - 76px) / 4))}@media (height<=600px) and (orientation:landscape){body.touch-mode #hud #hud-meters.cluster-shell{bottom:calc(26px + var(--safe-b) + 2.14 * min(clamp(84px, 13vmin, 144px), (100vw - 90px) / 7))}}body.is-phone #hud #hud-meters.cluster-shell{--cluster-size:clamp(130px, 16.1vw, 140px);--meter-icon:18px;--meter-font:12px;--meter-gap:6px;--dial-gap:10px;top:auto;bottom:calc(164px + var(--safe-b));right:calc(12px + var(--safe-r));width:var(--cluster-size);padding:0}body.phone-portrait #hud #hud-meters.cluster-shell{bottom:calc(48px + var(--safe-b) + 2.14 * min(clamp(88px, 15vmin, 150px), (100vw - 76px) / 4))}@media (orientation:landscape){body.is-phone #hud #hud-meters.cluster-shell{--dial-size:min(var(--cluster-size), calc((100dvh - 164px - var(--safe-b) - 97px - var(--safe-t)) * 220 / 204));bottom:calc(164px + var(--safe-b))}body.is-phone #hud-meters .cluster-bars{clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);background:#0a0d119e;width:150px;padding:6px 8px;position:absolute;bottom:6px;right:calc(100% + 10px)}}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-vietnamese-500-normal-DjeaNLFD.woff2)format("woff2"),url(./barlow-condensed-vietnamese-500-normal-CsrJDWc5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-latin-ext-500-normal-yA5ONLQ9.woff2)format("woff2"),url(./barlow-condensed-latin-ext-500-normal-B1RE8WP7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-condensed-latin-500-normal-BgYH2mbd.woff2)format("woff2"),url(./barlow-condensed-latin-500-normal-HIEiP5Ov.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(./barlow-condensed-vietnamese-600-normal-CNlPk46_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(./barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(./barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2)format("woff2"),url(./barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(./barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(./barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(./barlow-condensed-vietnamese-800-normal-CpjukuLw.woff2)format("woff2"),url(./barlow-condensed-vietnamese-800-normal-BZxKbt5V.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(./barlow-condensed-latin-ext-800-normal-DGNyg4u8.woff2)format("woff2"),url(./barlow-condensed-latin-ext-800-normal-gY_0Gifi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(./barlow-condensed-latin-800-normal-BKzMuPgK.woff2)format("woff2"),url(./barlow-condensed-latin-800-normal-e9GbPXiK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(./barlow-vietnamese-400-normal-Dpl4UHAZ.woff2)format("woff2"),url(./barlow-vietnamese-400-normal-BFeobeCK.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(./barlow-latin-ext-400-normal-HxX4XjxC.woff2)format("woff2"),url(./barlow-latin-ext-400-normal-CvBsJvxq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(./barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2"),url(./barlow-latin-400-normal-fsAxiSwU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-vietnamese-500-normal-zTViEIzf.woff2)format("woff2"),url(./barlow-vietnamese-500-normal-GNfB7rCE.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-latin-ext-500-normal-DOaysfXq.woff2)format("woff2"),url(./barlow-latin-ext-500-normal-CJPcKP2Q.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(./barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(./barlow-latin-500-normal-C1h8hMer.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-vietnamese-600-normal-DcjprdFV.woff2)format("woff2"),url(./barlow-vietnamese-600-normal-CA_GiK2e.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-latin-ext-600-normal-B8NK_A3D.woff2)format("woff2"),url(./barlow-latin-ext-600-normal-DMVRjfRT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(./barlow-latin-600-normal-DILqtrty.woff2)format("woff2"),url(./barlow-latin-600-normal-CNwfPWQD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#f3efe6;--ink-dim:#b9b3a6;--panel:#0c0f13c7;--panel-edge:#f2a93b8c;--amber:#f2a93b;--amber-hot:#ffcf6a;--teal:#37c6c0;--danger:#ff5b4a;--good:#7fe07a;--cut:12px;--safe-l:env(safe-area-inset-left,0px);--safe-r:env(safe-area-inset-right,0px);--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--font:"Barlow Condensed", "Roboto Condensed", "Arial Narrow", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{width:100%;height:100%;color:var(--ink);font-family:var(--font);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:#0d1014;margin:0;font-stretch:75%;overflow:hidden}html,body,#app,#app *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#app input,#app textarea,#app [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.admin-section{overflow-wrap:anywhere;min-width:0;max-width:100%;margin-top:16px}.admin-form label{margin-bottom:6px;display:block}.admin-controls{gap:8px;min-width:0;display:flex}#admin-code{width:0;min-width:0;min-height:44px;color:var(--ink);font:inherit;touch-action:manipulation;background:#0000004d;border:1px solid #ffffff40;flex:1;padding:8px 10px;font-size:16px}#btn-admin-apply{flex-shrink:0;min-width:44px;min-height:44px}#admin-status{color:var(--amber-hot);margin:6px 0 0}#admin-status:empty{display:none}#admin-unlocked{margin:0}body.is-phone .admin-section{margin-top:8px}#touch,#touch *{touch-action:none}#app{position:fixed;inset:0}#game-canvas{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.hidden{display:none!important}.panel,.title-panel,.hud-block{background:var(--panel);clip-path:polygon(var(--cut) 0, 100% 0, 100% calc(100% - var(--cut)), calc(100% - var(--cut)) 100%, 0 100%, 0 var(--cut));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff14}.btn{font:inherit;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);cursor:pointer;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);text-align:left;background:#ffffff0f;border:1px solid #ffffff29;min-height:46px;padding:11px 18px;font-size:18px;font-weight:700;transition:background .12s,color .12s,transform 80ms}.btn small{opacity:.75;margin-left:6px;font-size:13px}.btn:hover{background:#f2a93b33}.btn:active{transform:translateY(1px)}.btn:focus-visible,select:focus-visible,input:focus-visible,.icon-button:focus-visible,.swatch:focus-visible{outline:3px solid var(--amber-hot);outline-offset:2px}.btn.primary{background:var(--amber);color:#14110b;border-color:var(--amber-hot)}.btn.primary:hover{background:var(--amber-hot)}.btn.tiny{min-height:34px;padding:6px 10px;font-size:13px}kbd{font:inherit;opacity:.7;border:1px solid;margin-left:6px;padding:0 5px;font-size:12px}.menu{gap:8px;display:grid}.menu.row{grid-auto-columns:1fr;grid-auto-flow:column}.screen{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));z-index:20;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}#pause,#results,#settings,#maps,#garage,#intro{background:#06080b73}.panel{width:min(360px,100%);max-height:100%;padding:22px 24px;overflow:auto}.panel.wide{width:min(560px,100%)}.panel.xwide{width:min(880px,100%)}.btn.select{align-items:center;gap:10px;padding-left:8px;display:flex}.select-thumb{clip-path:polygon(5px 0,100% 0,100% calc(100% - 5px),calc(100% - 5px) 100%,0 100%,0 5px);background:#20262e 50%/cover no-repeat;border:1px solid #ffffff2e;flex:none;width:64px;height:36px}.select-label{color:var(--amber);letter-spacing:.08em;flex:none;min-width:40px;font-size:18px;font-weight:800}.select-detail{flex-direction:column;min-width:0;display:flex}.select-detail>span:first-child{overflow-wrap:anywhere}.select-options{color:var(--ink-dim);letter-spacing:.04em;text-transform:none;font-size:12px;font-weight:500;line-height:1.3}.map-option{margin-bottom:16px}.map-option-label{color:var(--ink-dim);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:14px}.segments{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:4px;display:grid}.btn.segment{text-align:center;letter-spacing:.02em;min-width:44px;min-height:46px;padding:10px 4px;font-size:14px}.btn.segment:hover:not([aria-checked=true]){background:#ffffff1a}.btn.segment[aria-checked=true]{border-color:var(--amber-hot);background:var(--amber-hot);color:#14120f}@media (width<=440px){#time-of-day-options{grid-template-columns:1fr 1fr;grid-auto-flow:row}}.segment:focus-visible{box-shadow:inset 0 0 0 3px var(--amber-hot);outline:none}.card-grid{grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr));gap:12px;margin-bottom:16px;display:grid}.card{font:inherit;color:var(--ink);text-align:left;cursor:pointer;clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:#ffffff0d;border:1px solid #ffffff24;flex-direction:column;gap:6px;min-height:150px;padding:0 0 12px;transition:border-color .12s,background .12s,transform 80ms;display:flex}.card:hover:not(:disabled),.card:focus-visible{background:#ffffff1a;outline:none}.card[aria-checked=true]{border-color:var(--amber-hot);background:#f2a93b24}.card:disabled{cursor:default;opacity:.55}.card-art{height:104px;position:relative}.card-art:after{content:"";background:linear-gradient(90deg, var(--amber), var(--teal));opacity:.85;height:4px;position:absolute;bottom:0;left:0;right:0}.card-title{letter-spacing:.05em;text-transform:uppercase;padding:0 12px;font-size:18px;font-weight:800}.card-sub{color:var(--amber);letter-spacing:.1em;text-transform:uppercase;padding:0 12px;font-size:12px}.card-blurb{color:var(--ink-dim);padding:0 12px;font-size:14px;line-height:1.3}.card-stats{letter-spacing:0;font-variant-numeric:tabular-nums;color:var(--ink-dim);grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:4px 8px;padding:2px 12px 0;font-size:11px;display:grid}.stat-bar{background:#ffffff1f;height:6px}.stat-bar>i{background:var(--teal);height:100%;display:block}.card-badge{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);border:1px solid;align-self:flex-start;margin:0 12px;padding:1px 6px;font-size:11px}h2{letter-spacing:.08em;text-transform:uppercase;border-left:4px solid var(--amber);margin:0 0 14px;padding-left:10px;font-size:28px}#title{background:linear-gradient(90deg,#080a0db8 0%,#080a0d40 42%,#080a0d00 65%);flex-direction:column;justify-content:flex-end;align-items:flex-start}.title-panel{width:min(420px,100%);margin-bottom:8px;padding:22px 24px 18px}h1{flex-direction:column;margin:0;line-height:.9;display:flex}.logo-main{white-space:nowrap;letter-spacing:.04em;color:var(--ink);text-shadow:0 2px #0006;font-size:clamp(38px,11vw,56px);font-weight:800}.logo-main:after{content:"";background:linear-gradient(90deg, var(--amber), var(--teal));width:64%;height:4px;margin:6px 0 4px;display:block}.logo-sub{letter-spacing:.34em;text-transform:uppercase;color:var(--amber-hot);font-size:20px}.tagline{color:var(--ink-dim);margin:10px 0 16px;font-size:17px}.route-row{color:var(--ink-dim);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:14px 0 8px;font-size:15px;display:flex}.route-row strong{color:var(--ink);font-variant-numeric:tabular-nums}.paint-row{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.swatch{cursor:pointer;clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);border:2px solid #ffffff40;width:40px;height:40px;position:relative}.swatch[aria-checked=true]{border-color:var(--amber-hot);box-shadow:inset 0 0 0 3px #00000059}.swatch.original:after{content:"OEM";text-align:center;letter-spacing:.06em;color:#fff;text-shadow:0 0 3px #000,0 0 2px #000;font-size:10px;font-weight:800;position:absolute;inset:auto 0 2px}.swatch.locked{cursor:not-allowed;filter:grayscale(.7)brightness(.5)}.swatch.locked:after{content:"";border:3px solid #ddd;border-top-width:6px;position:absolute;inset:12px 13px 10px}.records{color:var(--ink-dim);font-variant-numeric:tabular-nums;font-size:15px}.title-hint{color:var(--ink-dim);text-shadow:0 1px 2px #000;margin:0;font-size:14px}#hud{pointer-events:none;z-index:10;font-variant-numeric:tabular-nums;position:absolute;inset:0}.hud-block{padding:8px 12px;position:absolute}#hud-region{top:calc(12px + var(--safe-t));left:calc(12px + var(--safe-l));min-width:168px}.region-name{letter-spacing:.08em;text-transform:uppercase;font-size:20px;font-weight:800}.region-sub{color:var(--ink-dim);font-size:14px}.dot{opacity:.6}#hud-corner{top:calc(12px + var(--safe-t));align-items:center;gap:8px;min-width:150px;padding:6px 12px 6px 8px;display:flex;left:50%;transform:translate(-50%)}#hud-corner svg path{fill:none;stroke:var(--ink);stroke-width:6px;stroke-linecap:square;stroke-linejoin:miter}#hud-corner.severe svg path{stroke:var(--amber-hot)}#hud-corner.hairpin svg path{stroke:var(--danger)}.corner-text{font-size:15px;line-height:1.1}#corner-label{text-transform:uppercase;letter-spacing:.05em;width:11ch;font-weight:700}#corner-dist{color:var(--ink-dim)}#hud-score{top:calc(12px + var(--safe-t));right:calc(70px + var(--safe-r));text-align:right;min-width:170px}.score-label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);font-size:12px}.score-value{font-size:32px;font-weight:800;line-height:1}.combo{margin-top:6px;transition:opacity .2s}.combo.idle{opacity:.35}.combo-row{color:var(--amber-hot);justify-content:flex-end;gap:10px;font-size:22px;font-weight:800;display:flex}#combo-mult{color:var(--teal);min-width:4ch}.combo-grace{background:#ffffff1f;height:4px;margin-top:4px}#combo-grace-fill{background:var(--amber);width:0;height:100%}.icon-button{pointer-events:auto;top:calc(12px + var(--safe-t));right:calc(12px + var(--safe-r));background:var(--panel);width:48px;height:48px;color:var(--ink);cursor:pointer;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);border:1px solid #ffffff24;place-items:center;display:grid;position:absolute}.icon-button svg{fill:currentColor}#feed{top:calc(96px + var(--safe-t));flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.feed-item{letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px 6px #0009;font-size:22px;font-weight:800;animation:1.6s ease-out forwards feed}.feed-item.perfect{color:var(--teal)}.feed-item.clean,.feed-item.banked{color:var(--amber-hot)}.feed-item.lost{color:var(--danger)}.feed-item.close{color:#fff}@keyframes feed{0%{opacity:0;transform:translateY(8px)scale(.92)}12%{opacity:1;transform:translateY(0)scale(1)}75%{opacity:1}to{opacity:0;transform:translateY(-10px)}}.reduced .feed-item{animation:1.6s linear forwards feedStatic}@keyframes feedStatic{0%,80%{opacity:1}to{opacity:0}}#toast{top:calc(66px + var(--safe-t));border-left:4px solid var(--teal);letter-spacing:.04em;white-space:nowrap;background:#0a1e2cd9;padding:6px 14px;font-size:16px;position:absolute;left:50%;transform:translate(-50%)}#drift-gauge{left:50%;bottom:calc(14px + var(--safe-b));pointer-events:none;opacity:1;flex-direction:column;align-items:center;transition:opacity .25s;display:flex;position:absolute;transform:translate(-50%)}#drift-gauge.off{opacity:0}#drift-gauge svg{overflow:visible}#dg-track{fill:none;stroke:#0c0f138c;stroke-width:7px;stroke-linecap:round}.dg-band{fill:none;stroke:#f2a93b8c;stroke-width:7px}#drift-gauge.scoring .dg-band{stroke:var(--amber-hot)}#dg-needle{stroke:var(--ink);stroke-width:3px;stroke-linecap:round}#drift-gauge.scoring #dg-needle{stroke:var(--teal)}#drift-gauge circle{fill:var(--ink)}#dg-value{letter-spacing:.04em;text-shadow:0 1px 3px #000c;font-variant-numeric:tabular-nums;margin-top:-14px;font-size:20px;font-weight:700}#drift-gauge.scoring #dg-value{color:var(--amber-hot)}#hud-meters{right:calc(12px + var(--safe-r));bottom:calc(12px + var(--safe-b));width:236px}.speed-row{align-items:baseline;gap:6px;display:flex}#speed-value{text-align:right;width:3.1ch;font-size:46px;font-weight:800;line-height:1}.speed-unit{color:var(--ink-dim);font-size:14px}#gear-value{color:var(--amber-hot);text-align:center;border:2px solid #f2a93b99;width:34px;margin-left:auto;font-size:26px;font-weight:800}.rpm{background:#ffffff1a;height:6px;margin:6px 0 8px}#rpm-fill{background:linear-gradient(90deg, var(--teal), var(--amber) 70%, var(--danger));width:0;height:100%}.meter-row{align-items:center;gap:8px;margin-top:4px;display:flex}.meter-label{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-dim);width:76px;font-size:12px}.meter{background:#ffffff1f;flex:1;height:8px}#integrity-fill{background:var(--good);width:100%;height:100%}#boost-fill{background:var(--teal);width:0;height:100%}#countdown{letter-spacing:.1em;text-shadow:0 3px 12px #0009;font-size:72px;font-weight:800;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 16px;display:grid}.stats div{background:#ffffff0d;padding:8px 10px}.stats dt{text-transform:uppercase;letter-spacing:.12em;color:var(--ink-dim);font-size:12px}.stats dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:22px;font-weight:800}.badge{background:var(--amber);color:#15110a;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px;padding:4px 10px;font-weight:800;display:inline-block}.unlock{color:var(--teal);margin:0 0 12px}.settings-grid{grid-template-columns:1fr 1fr;gap:12px 16px;margin-bottom:18px;display:grid}.settings-grid label{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);gap:4px;font-size:14px;display:grid}.settings-grid label.check{color:var(--ink);align-items:center;gap:8px;display:flex}select,input[type=range]{font:inherit;color:var(--ink);min-height:40px;accent-color:var(--amber);background:#ffffff14;border:1px solid #ffffff2e;padding:7px 8px;font-size:16px}input[type=checkbox]{width:22px;height:22px;accent-color:var(--amber)}.intro-list{margin:0 0 18px;padding-left:18px;font-size:17px;line-height:1.45}.intro-list b{color:var(--amber-hot)}#touch{--tb:min(clamp(88px, 15vmin, 150px), calc((100vw - 76px) / 4));padding:0 calc(14px + var(--safe-r)) calc(14px + var(--safe-b)) calc(14px + var(--safe-l));z-index:12;pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:absolute;inset:auto 0 0}.touch-left,.touch-right{gap:calc(var(--tb) * .14);pointer-events:auto;align-items:flex-end;display:flex}.touch-right{gap:calc(var(--tb) * .14);grid-template-areas:"boost hand""brake gas";justify-content:end;align-items:end;display:grid}.touch-right:has(#t-gas.hidden){grid-template-areas:"boost.""hand brake"}#t-boost{grid-area:boost}#t-hand{grid-area:hand}#t-brake{grid-area:brake}#t-gas{grid-area:gas}.touch-right .touch-btn.hidden{display:none}.touch-btn{width:var(--tb);height:var(--tb);touch-action:none;-webkit-user-select:none;user-select:none;font:inherit;font-weight:800;font-size:max(15px, calc(var(--tb) * .19));text-transform:uppercase;letter-spacing:.06em;color:var(--ink);clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:#0c0f138c;border:2px solid #ffffff40}.touch-btn.small{width:var(--tb);height:calc(var(--tb) * .62);font-size:max(13px, calc(var(--tb) * .16))}@media (orientation:landscape){#t-left,#t-right{width:calc(var(--tb) * 1.2)}}#t-gas,#t-brake{height:calc(var(--tb) * 1.3)}.touch-btn svg{width:calc(var(--tb) * .46);height:calc(var(--tb) * .46);fill:none;stroke:currentColor;stroke-width:3px}.touch-btn.active{border-color:var(--amber-hot);background:#f2a93b8c}#touch.has-touch~#hud #hud-meters,body.touch-mode #hud-meters{bottom:auto;top:calc(118px + var(--safe-t));width:170px}body.touch-mode #speed-value{font-size:34px}@media (width<=640px){body.touch-mode #hud-meters{top:calc(118px + var(--safe-t));width:150px;padding:6px 8px}body.touch-mode .meter-label{width:58px;font-size:11px}body.touch-mode #gear-value{width:28px;font-size:20px}body.touch-mode #feed{top:calc(268px + var(--safe-t))}}#rotate-hint{top:calc(232px + var(--safe-t));background:var(--panel);z-index:15;white-space:nowrap;padding:6px 12px;font-size:14px;position:absolute;left:50%;transform:translate(-50%)}#debug{left:calc(8px + var(--safe-l));bottom:calc(8px + var(--safe-b));z-index:30;color:#b8f5c8;pointer-events:none;white-space:pre;background:#000000b8;margin:0;padding:8px 10px;font:12px/1.35 ui-monospace,Menlo,Consolas,monospace;position:absolute}@media (width<=640px){.logo-sub{letter-spacing:.18em;font-size:17px}.settings-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}#hud-region{min-width:0;padding:6px 8px}.region-name{font-size:15px}#hud-score{right:calc(66px + var(--safe-r));min-width:0;padding:6px 8px}.score-value{font-size:22px}.combo-row{font-size:16px}#hud-corner{top:calc(64px + var(--safe-t));left:calc(12px + var(--safe-l));min-width:0;padding:4px 8px 4px 6px;transform:none}#hud-corner svg{width:32px;height:32px}.corner-text{font-size:13px}#feed{top:calc(120px + var(--safe-t))}.feed-item{font-size:18px}.menu.row{grid-auto-flow:row}.title-hint{display:none}}@media (height<=460px){:is(.touch-right,.touch-right:has(#t-gas.hidden)){grid-template-areas:"boost hand brake gas"}#touch{--tb:min(clamp(84px, 13vmin, 144px), calc((100vw - 90px) / 7))}.title-panel{padding:12px 16px}.logo-main{font-size:40px}.tagline{display:none}.menu{grid-auto-flow:column}.panel{padding:14px 16px}}#loading{z-index:100;color:var(--ink);background:radial-gradient(at 50% 60%,#1c2430 0%,#0d1014 70%);justify-content:center;align-items:center;transition:opacity .6s;display:flex;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}.loading-inner{text-align:center;width:min(420px,100% - 48px)}.loading-logo{font-family:var(--font);letter-spacing:.08em;font-size:clamp(40px,9vw,64px);font-weight:800}.loading-sub{letter-spacing:.4em;text-transform:uppercase;color:var(--amber);margin:2px 0 28px;font-size:15px;font-weight:700}.load-bar{clip-path:polygon(4px 0,100% 0,100% calc(100% - 4px),calc(100% - 4px) 100%,0 100%,0 4px);background:#ffffff1a;height:6px;overflow:hidden}#load-fill{background:linear-gradient(90deg, var(--amber), var(--teal));width:6%;height:100%;transition:width .35s;display:block}#load-text{letter-spacing:.08em;color:var(--ink-dim);min-height:1.2em;margin-top:12px;font-size:14px}@media (prefers-reduced-motion:reduce){#loading,#load-fill{transition:none}}body.is-phone button,body.is-phone select,body.is-phone input{touch-action:manipulation}@media (orientation:landscape){body.is-phone #touch{--tb:80px;padding:0 calc(12px + var(--safe-r)) calc(8px + var(--safe-b)) calc(12px + var(--safe-l));touch-action:none}body.is-phone .touch-left{touch-action:none;gap:12px}:is(body.is-phone .touch-right,body.is-phone .touch-right:has(#t-gas.hidden)){touch-action:none;width:168px;height:144px;display:block;position:relative}body.is-phone #touch .touch-btn{letter-spacing:.03em;touch-action:none;-webkit-touch-callout:none;background:#0c0f137a;width:80px;min-width:56px;height:80px;min-height:56px;padding:0;font-size:14px}body.is-phone .touch-right .touch-btn{position:absolute}body.is-phone #touch #t-gas{width:88px;height:88px;font-size:18px;bottom:0;right:0}body.is-phone #touch #t-brake{width:72px;height:72px;bottom:0;right:96px}body.is-phone #touch #t-hand{width:64px;height:64px;font-size:13px;bottom:80px;right:96px}body.is-phone #touch #t-boost{width:56px;height:56px;font-size:11px;bottom:88px;right:16px}body.is-phone #touch .touch-btn.active{border-color:var(--amber-hot);color:#14110b;box-shadow:inset 0 0 0 2px var(--amber-hot);background:#f2a93bc7}body.is-phone .hud-block{padding:5px 8px}body.is-phone #hud-region{top:calc(8px + var(--safe-t));left:calc(12px + var(--safe-l));min-width:0;max-width:180px}body.is-phone .region-name{font-size:14px}body.is-phone .region-sub{font-size:11px}body.is-phone #hud-score{top:calc(8px + var(--safe-t));right:calc(64px + var(--safe-r));width:138px;min-width:0}body.is-phone .score-value{font-size:24px}body.is-phone .score-label{font-size:10px}body.is-phone .combo-row{font-size:14px}body.is-phone #pause-button{top:calc(8px + var(--safe-t));width:44px;height:44px}body.is-phone #hud-corner{top:calc(8px + var(--safe-t));min-width:0;padding:4px 6px;left:50%;transform:translate(-50%)}body.is-phone #hud-corner svg{width:30px;height:30px}body.is-phone .corner-text{font-size:11px}body.is-phone #hud #hud-meters{top:calc(92px + var(--safe-t));bottom:auto;right:calc(12px + var(--safe-r));width:154px;padding:5px 8px}body.is-phone #speed-value{font-size:28px}body.is-phone .speed-unit{font-size:11px}body.is-phone #gear-value{width:26px;font-size:18px}body.is-phone .meter-label{letter-spacing:.05em;width:56px;font-size:10px}body.is-phone .meter{height:6px}body.is-phone #drift-gauge{top:calc(66px + var(--safe-t));bottom:auto}body.is-phone #drift-gauge svg{width:94px;height:52px}body.is-phone #dg-value{margin-top:-10px;font-size:14px}body.is-phone #feed{top:calc(140px + var(--safe-t))}body.is-phone .feed-item{font-size:15px}body.is-phone #toast{top:calc(48px + var(--safe-t));white-space:normal;max-width:50%;font-size:12px}body.is-phone .screen{padding:calc(8px + var(--safe-t)) calc(12px + var(--safe-r)) calc(8px + var(--safe-b)) calc(12px + var(--safe-l));min-height:0}body.is-phone #title{justify-content:center}body.is-phone .panel,body.is-phone .title-panel{overscroll-behavior:contain;touch-action:pan-y;min-height:0;max-height:100%;padding:12px 16px;scroll-padding:12px;overflow:auto}body.is-phone .title-panel{width:min(680px,100%);margin-bottom:0}body.is-phone #pause .panel,body.is-phone #intro .panel{width:min(560px,100%)}body.is-phone h2{margin-bottom:10px;font-size:24px}body.is-phone .logo-main{font-size:36px}body.is-phone .logo-sub{letter-spacing:.18em;margin-bottom:12px;font-size:15px}body.is-phone .tagline,body.is-phone .title-hint{display:none}body.is-phone .menu{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:6px}body.is-phone .menu.row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}body.is-phone .btn{overflow-wrap:anywhere;min-width:44px;min-height:44px;padding:8px 10px;font-size:15px}body.is-phone .btn.select{gap:6px}body.is-phone .select-thumb{width:44px;height:30px}body.is-phone .select-label{min-width:32px;font-size:15px}body.is-phone .btn.select>span:last-child{min-width:0}body.is-phone .route-row{margin:8px 0;font-size:12px}body.is-phone .swatch{width:44px;height:44px}body.is-phone .paint-row{gap:6px;margin:8px 0}body.is-phone .records{font-size:12px}body.is-phone .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}body.is-phone .settings-grid label{min-width:0;font-size:12px}body.is-phone .settings-grid .check{min-height:44px}body.is-phone select,body.is-phone input[type=range]{width:100%;min-width:0;min-height:44px}body.is-phone .card-grid{grid-template-columns:repeat(auto-fill,minmax(min(160px,100%),1fr));gap:8px}body.is-phone .card-art{height:72px}body.is-phone .segments{grid-template-columns:none;grid-auto-flow:column}body.is-phone .btn.segment{padding:8px 4px;font-size:13px}body.is-phone .stats{gap:6px}body.is-phone .stats dd{font-size:18px}body.is-phone .intro-list{font-size:15px}}.coin-balance{color:var(--amber-hot);overflow-wrap:anywhere;margin:0 0 10px;font-size:18px;font-weight:800}.shop-status{flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-bottom:10px;display:flex}.shop-status .coin-balance{margin:0}.purchase-callout{color:var(--good);overflow-wrap:anywhere;font-weight:700}.purchase-callout:empty{display:none}.shop-card{flex-direction:column;gap:6px;min-width:0;display:flex}.shop-card .card{overflow-wrap:anywhere;flex:1;width:100%;min-width:0}.card-economy{color:var(--amber-hot);padding:4px 12px 0;font-size:14px}.card-buy{text-align:center;white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;min-height:44px;font-size:15px}.card-buy:disabled{cursor:default;opacity:.65}.card:focus-visible{box-shadow:inset 0 0 0 3px var(--amber-hot)}.stats .coin-result{color:var(--amber-hot);grid-column:1/-1}.coin-breakdown{color:var(--ink-dim);overflow-wrap:anywhere;font-size:14px;line-height:1.4}.difficulty-option{grid-column:1/-1;min-width:0}#title .btn.select{min-width:0}#title .btn.select>span:last-child{overflow-wrap:anywhere;min-width:0}@media (height<=460px){#title .menu{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row}}#difficulty-options .segment{overflow-wrap:anywhere;min-width:0;min-height:44px}.title-panel{overscroll-behavior:contain;touch-action:pan-y;min-height:0;max-height:100%;overflow:hidden auto}#hud-versus{top:calc(78px + var(--safe-t));left:calc(12px + var(--safe-l));min-width:150px;padding:6px 12px 8px}.vs-place{align-items:baseline;gap:2px;line-height:1;display:flex}.vs-place b{color:var(--amber-hot);font-variant-numeric:tabular-nums;font-size:46px;font-weight:800}#vs-ord{color:var(--amber-hot);text-transform:uppercase;font-size:20px;font-weight:800}#vs-of{color:var(--ink-dim);margin-left:8px;font-size:16px}.vs-place.first b,.vs-place.first #vs-ord{color:var(--good)}.vs-board{font-variant-numeric:tabular-nums;gap:1px;margin:6px 0 0;padding:0;font-size:13px;list-style:none;display:grid}.vs-board li{grid-template-columns:14px 1fr auto;align-items:center;gap:6px;padding:1px 4px;display:grid}.vs-board li.me{background:#f2a93b2e}.vs-board li.out{opacity:.4;text-decoration:line-through}.vs-board .who{font-weight:700}.vs-board .pts{color:var(--ink-dim)}.vs-gap{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.vs-roster-head{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);justify-content:space-between;margin-top:12px;font-size:12px;display:flex}.vs-roster{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 12px;margin:4px 0 8px;padding:0;list-style:none;display:grid}.vs-roster li{align-items:baseline;gap:8px;font-weight:700;display:flex}.vs-roster .tag{min-width:28px;font-weight:800}.vs-roster .note{color:var(--ink-dim);font-size:14px;font-weight:400}.vs-route{margin-bottom:6px}.vs-rules{color:var(--ink-dim);margin:0 0 14px;line-height:1.35}.vs-rules b{color:var(--ink)}.vs-start{gap:14px;display:grid}.vs-join{gap:6px;display:grid}.vs-join-row{gap:8px;display:flex}#vs-code,#vs-name{width:0;min-width:0;min-height:48px;color:var(--ink);font:inherit;letter-spacing:.3em;text-transform:uppercase;-webkit-user-select:text;user-select:text;background:#0000004d;border:1px solid #ffffff40;flex:1;padding:6px 12px;font-size:24px;font-weight:800}#vs-name{letter-spacing:normal;text-transform:none;font-size:20px}#vs-code:focus-visible,#vs-name:focus-visible{outline:3px solid var(--amber-hot);outline-offset:2px}.vs-code-label{letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);font-size:12px}.vs-code{letter-spacing:.25em;color:var(--amber-hot);font-size:clamp(40px,9vw,64px);font-weight:800;line-height:1.05}.vs-status{min-height:1.3em;color:var(--amber-hot);margin:12px 0 0}.vs-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:10px 0}.vs-table th,.vs-table td{text-align:right;border-bottom:1px solid #ffffff14;padding:6px 8px}.vs-table th:nth-child(-n+2),.vs-table td:nth-child(-n+2){text-align:left}.vs-table{font-size:15px}.vs-table thead th{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:13px}.vs-table tr.me td,.vs-table tr.me th{background:#f2a93b24}.vs-table td.total{color:var(--ink);font-size:20px;font-weight:800}.vs-table td.penalty{color:var(--danger)}.vs-table tr:first-child td.total{color:var(--good)}.vs-table th[scope=row]{text-align:left}.vs-table .who{font-weight:800}body.versus-race #btn-retry-p,body.versus-race #btn-new-p,body.versus-race #btn-finish{display:none}body.is-phone #hud-versus{top:calc(54px + var(--safe-t));min-width:0;padding:4px 8px 6px}body.is-phone .vs-place b{font-size:32px}body.is-phone #vs-ord{font-size:15px}body.is-phone #vs-of{font-size:13px}body.is-phone .vs-board{font-size:11px}body.is-phone .vs-table{font-size:12px}body.is-phone .vs-table th,body.is-phone .vs-table td{padding:4px}body.is-phone .vs-code{font-size:34px}body.is-phone .vs-roster{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));margin-bottom:4px}body.is-phone #vs-room .btn.tiny{margin-top:2px}body.is-phone .vs-status{margin-top:6px}@media (height<=450px) and (orientation:landscape){.card-stats{gap:3px 6px;padding:2px 8px 0;font-size:10px}}.garage-stats-note{color:var(--ink-dim);margin:0 0 8px;font-size:11px}:root{--font:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--font-body:"Barlow", system-ui, sans-serif;--surface:linear-gradient(180deg, #181d25eb, #0b0e13f0);--surface-raised:linear-gradient(180deg, #ffffff13, #ffffff08);--line:#ffffff1a;--line-strong:#fff3;--shadow:0 18px 50px #00000073, 0 2px 0 #ffffff0a inset;--ease-out:cubic-bezier(.2, .8, .2, 1);--stripe:linear-gradient(90deg, var(--amber) 0 60%, var(--teal) 60% 100%)}body{font-family:var(--font-body);font-stretch:100%}h1,h2,h3,.btn,.score-value,.region-name,.select-label,.map-option-label,.vs-code,.card h3,#countdown,.loading-logo,.loading-sub,.stats dd,.stats dt,kbd,.logo-main,.logo-sub,.coin-balance{font-family:var(--font)}.panel,.title-panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px)saturate(1.1);backdrop-filter:blur(10px)saturate(1.1);position:relative}.panel:before,.title-panel:before{content:"";left:var(--cut);background:var(--stripe);opacity:.9;height:3px;position:absolute;top:0;right:0}.panel h2{letter-spacing:.06em;margin:4px 0 16px;font-size:30px;font-weight:800}.btn{letter-spacing:.08em;background:var(--surface-raised);border:1px solid var(--line-strong);transition:background .16s var(--ease-out), border-color .16s, color .16s, transform .12s var(--ease-out), box-shadow .16s;font-weight:700;position:relative;overflow:hidden}.btn:after{content:"";background:var(--amber);transform-origin:bottom;width:4px;transition:transform .18s var(--ease-out);position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.btn:hover:not(:disabled):after,.btn:focus-visible:after{transform:scaleY(1)}.btn:hover:not(:disabled){background:linear-gradient(90deg,#f2a93b38,#f2a93b0f);border-color:#f2a93b8c;transform:translate(2px)}.btn:active:not(:disabled){transform:translate(2px)scale(.985)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:linear-gradient(180deg, #ffc35a, var(--amber) 55%, #d98d1f);border-color:var(--amber-hot);color:#17120a;box-shadow:0 6px 22px #f2a93b47}.btn.primary:after{background:#fff3d6}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg, #ffd47e, var(--amber-hot) 55%, #e8a13a);box-shadow:0 8px 28px #f2a93b6b}.btn small{font-weight:600}kbd{text-align:center;opacity:.75;border:1px solid;border-bottom-width:2px;min-width:20px;padding:0 5px;line-height:18px;display:inline-block}@keyframes panel-in{0%{opacity:0;transform:translateY(14px)scale(.985)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.screen:not(.hidden){animation:.22s ease-out fade-in}.screen:not(.hidden)>.panel,.screen:not(.hidden)>.title-panel{animation:panel-in .32s var(--ease-out)}body.reduced .screen:not(.hidden),body.reduced .screen:not(.hidden)>.panel,body.reduced .screen:not(.hidden)>.title-panel{animation:none}#pause,#results,#settings,#maps,#garage,#intro,#versus,#vresults{background:radial-gradient(#06080b59,#06080bb8)}#title{background:linear-gradient(90deg,#07090cd1 0%,#07090c59 38%,#07090c00 60%),linear-gradient(#07090c00 74%,#07090cb3 100%)}.title-panel{width:min(400px,100%)}.logo-main{letter-spacing:.04em;text-shadow:0 4px 24px #00000080;font-size:clamp(44px,6vw,64px);font-weight:800;line-height:.95}.logo-sub{letter-spacing:.42em;font-weight:700}.tagline{font-family:var(--font-body);color:var(--ink-dim)}#title .coin-balance{top:calc(16px + var(--safe-t));right:calc(16px + var(--safe-r));background:var(--surface);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);letter-spacing:.04em;font-variant-numeric:tabular-nums;z-index:2;border:1px solid #f2a93b73;align-items:center;gap:8px;margin:0;padding:8px 14px 8px 10px;font-size:20px;display:flex;position:fixed}#title .coin-balance:before{content:"";background:radial-gradient(circle at 35% 30%, #fff1c4, var(--amber-hot) 35%, #c77d12 80%);border-radius:50%;width:18px;height:18px;box-shadow:inset 0 0 0 2px #00000059,0 0 10px #f2a93b80}.route-row,.records{font-family:var(--font-body);color:var(--ink-dim);font-size:13px}.route-row{border-top:1px solid var(--line);padding-top:10px}.showcase{right:calc(24px + var(--safe-r));bottom:calc(56px + var(--safe-b));border-right:3px solid var(--amber);text-align:right;pointer-events:none;background:linear-gradient(#0b0e1333,#0b0e13d1 40%);width:300px;padding:14px 18px 16px;position:fixed}.showcase-tier{font-family:var(--font);letter-spacing:.3em;text-transform:uppercase;color:var(--teal);font-size:13px;font-weight:700}.showcase-name{font-family:var(--font);letter-spacing:.02em;text-transform:uppercase;text-shadow:0 3px 18px #0009;overflow-wrap:anywhere;font-size:40px;font-weight:800;line-height:1}.showcase-maker{color:var(--amber-hot);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;font-size:14px}.showcase-stats{gap:5px;margin:0;display:grid}.showcase-stats div{grid-template-columns:1fr auto;align-items:baseline;column-gap:10px;display:grid}.showcase-stats dt{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);text-align:left;font-size:12px}.showcase-stats dd{font-family:var(--font);font-variant-numeric:tabular-nums;margin:0;font-size:17px;font-weight:700}.showcase-bar{background:#ffffff1a;grid-column:1/-1;height:3px}.showcase-bar i{background:linear-gradient(90deg, var(--teal), var(--amber));height:100%;display:block}.title-hint{color:var(--ink-dim);flex-wrap:wrap;gap:6px 16px;font-size:13px;display:flex}.title-hint kbd{color:var(--ink);background:#ffffff0f;margin:0 2px 0 0;font-size:11px}body.is-phone .showcase,body.touch-mode .showcase{display:none}@media (width<=900px),(height<=520px){.showcase{display:none}}#pause .menu{grid-template-columns:1fr 1fr}#pause #btn-resume{grid-column:1/-1;min-height:54px;font-size:22px}#pause .btn:not(.primary){min-height:42px;font-size:15px}#pause #btn-quit{color:var(--ink-dim)}#results .panel.wide{width:min(620px,100%)}#results .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px;display:grid}#results .stats>div{background:var(--surface-raised);border:1px solid var(--line);min-width:0;padding:9px 12px}#results .stats dt{letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);font-size:11px}#results .stats dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:24px;font-weight:700}#results .stats>div:first-child{border-color:#f2a93b66;border-left:4px solid var(--amber);background:linear-gradient(90deg,#f2a93b2e,#f2a93b05);grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 18px;display:flex}#results .stats>div:first-child dt{color:var(--amber-hot);font-size:14px}#results .stats>div:first-child dd{font-size:clamp(44px,7vw,64px);font-weight:800;line-height:1}#results .stats>div:nth-child(n+6):not(.coin-result){border-color:#0000;border-top:1px solid var(--line);background:0 0;padding:6px 4px 0}#results .stats>div:nth-child(n+6):not(.coin-result) dd{color:var(--ink-dim);font-size:17px}#results .coin-result{background:linear-gradient(90deg,#ffcf6a29,#37c6c014);border-color:#ffcf6a73;grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}#results .coin-result dd{color:var(--amber-hot);font-size:28px;font-weight:800}.coin-details{color:var(--ink-dim);margin:0 0 12px;font-size:13px}.coin-details summary{cursor:pointer;letter-spacing:.06em}.coin-details[open] summary{margin-bottom:6px}#record-badge:not(.hidden){animation:badge-pop .6s var(--ease-out)}@keyframes badge-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}body.is-phone #results .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}body.is-phone #results .stats>div{padding:6px 8px}body.is-phone #results .stats dd{font-size:18px}body.is-phone #results .stats>div:first-child dd{font-size:36px}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px 14px;display:grid}.settings-group{border-bottom:1px solid var(--line);letter-spacing:.24em;text-transform:uppercase;color:var(--teal);grid-column:1/-1;margin:8px 0 0;padding-bottom:4px;font-size:13px;font-weight:700}.settings-group:first-child{margin-top:0}#settings .panel.wide{width:min(660px,100%)}#settings select{appearance:none;width:100%;min-height:40px;font:600 16px var(--font-body);color:var(--ink);background:linear-gradient(45deg, transparent 50%, var(--amber) 50%) calc(100% - 15px) 55% / 6px 6px no-repeat, linear-gradient(135deg, var(--amber) 50%, transparent 50%) calc(100% - 9px) 55% / 6px 6px no-repeat, #ffffff0f;border:1px solid var(--line-strong);cursor:pointer;border-radius:0;margin-top:4px;padding:6px 30px 6px 10px}#settings select:hover{border-color:#f2a93b99}#settings input[type=range]{width:100%;accent-color:var(--amber);margin-top:10px}#settings .check{cursor:pointer;align-items:center;gap:10px;min-height:40px;display:flex}#settings .check input{appearance:none;border:1px solid var(--line-strong);cursor:pointer;background:#ffffff24;border-radius:11px;flex:none;width:42px;height:22px;margin:0;transition:background .18s;position:relative}#settings .check input:after{content:"";background:var(--ink);width:16px;height:16px;transition:transform .18s var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}#settings .check input:checked{background:var(--amber);border-color:var(--amber-hot)}#settings .check input:checked:after{background:#17120a;transform:translate(20px)}#settings #btn-intro{align-self:center}body.is-phone .settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 10px}.loading-logo{font-weight:800}.load-bar i{background-image:repeating-linear-gradient(-45deg, #ffffff40 0 6px, transparent 6px 12px), linear-gradient(90deg, var(--amber), var(--teal));background-size:24px 24px,100% 100%;animation:.8s linear infinite load-stripes}@keyframes load-stripes{to{background-position:24px 0,0 0}}body.is-phone #title .coin-balance{top:calc(8px + var(--safe-t));right:calc(8px + var(--safe-r));gap:6px;padding:6px 10px 6px 8px;font-size:15px}body.is-phone #title .coin-balance:before{width:14px;height:14px}#settings #btn-settings-close{margin-top:14px}body:has(#hud:not(.hidden)) #nl-badge-frame{right:auto!important;left:var(--safe-l,0px)!important;bottom:var(--safe-b,0px)!important}body.touch-mode:has(#hud:not(.hidden)) #nl-badge-frame{bottom:auto!important;top:calc(84px + 225px + 6px + var(--safe-t,0px))!important}body.touch-mode.is-phone:has(#hud:not(.hidden)) #nl-badge-frame{top:calc(58px + 165px + 4px + var(--safe-t,0px))!important}body.touch-mode.phone-portrait:has(#hud:not(.hidden)) #nl-badge-frame{top:calc(164px + 165px + 4px + var(--safe-t,0px))!important}body.phone-portrait .title-hint{display:none}body.phone-portrait #toast{top:calc(104px + var(--safe-t));max-width:86%}body.phone-portrait #results .stats,body.phone-portrait .settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body.phone-portrait #settings .check{grid-column:1/-1}body.phone-portrait #title .coin-balance{top:calc(4px + var(--safe-t))}body.phone-portrait #title .title-panel{margin-top:28px}#garage{padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));background:linear-gradient(90deg,#07090cc7 0%,#07090c59 34%,#07090c00 50%);justify-content:flex-start;align-items:stretch}#garage .panel.xwide{overscroll-behavior:contain;width:min(520px,46vw);max-height:100%;margin:0;overflow-y:auto}#garage .card-grid{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr))}#garage .menu.row{background:linear-gradient(0deg, var(--surface) 70%, transparent);padding-top:8px;position:sticky;bottom:-1px}.garage-paint{background:var(--surface-raised);border:1px solid var(--line);margin:6px 0 12px;padding:10px 12px 8px}.garage-sub{letter-spacing:.2em;text-transform:uppercase;color:var(--teal);justify-content:space-between;align-items:baseline;gap:10px;font-size:13px;font-weight:700;display:flex}#paint-info{font-family:var(--font-body);letter-spacing:.02em;text-transform:none;color:var(--amber-hot);text-align:right;font-size:13px;font-weight:600}.paint-note{font-family:var(--font-body);color:var(--ink-dim);margin:0;font-size:12px}#garage .swatch{width:46px;height:46px;transition:transform .15s var(--ease-out)}#garage .swatch:not(.locked):hover{transform:translateY(-2px)}#garage .swatch[aria-checked=true]{transform:scale(1.08)}.swatch-bonus{text-align:center;font:800 11px var(--font);letter-spacing:.02em;color:#fff;text-shadow:0 0 3px #000,0 0 2px #000;pointer-events:none;position:absolute;inset:auto 0 2px}@media (orientation:portrait){#garage{background:linear-gradient(#07090c00 40%,#07090c4d 55%,#07090cc7 100%);flex-direction:column;justify-content:flex-end}#garage .panel.xwide{width:100%;max-height:56%}}body.is-phone #garage .panel.xwide{padding:12px}body.is-phone #garage h2{margin-bottom:6px}.minimap{left:calc(16px + var(--safe-l,0px));bottom:calc(16px + var(--safe-b,0px));box-sizing:border-box;border:1.5px solid var(--line,#ffffff1a);background:var(--panel,#0c0f13c7);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);pointer-events:none;border-radius:18px;width:225px;height:225px;position:absolute;overflow:hidden}.minimap[hidden]{display:none}.minimap canvas{width:100%;height:100%;display:block}.minimap:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 60%,#0000 35%,#00000052 100%);position:absolute;inset:0}body.is-phone .minimap,body.phone-portrait .minimap{width:165px;height:165px;top:calc(58px + var(--safe-t,0px));left:calc(12px + var(--safe-l,0px));bottom:auto}body.reduced .minimap,body.reduced .minimap:after{transition:none;animation:none}body.phone-portrait .minimap{top:calc(164px + var(--safe-t,0px))}body.touch-mode:not(.is-phone) .minimap{top:calc(84px + var(--safe-t,0px));bottom:auto}.damage-bar{top:calc(108px + var(--safe-t,0px));box-sizing:border-box;z-index:20;pointer-events:none;background:var(--panel,#0a0d11db);width:min(420px,44vw);color:var(--ink,#f1f4f7);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);font-family:var(--font,"Arial Narrow", sans-serif);font-variant-numeric:tabular-nums;transform-origin:top;border:1px solid #ffffff29;padding:12px 16px 14px;position:absolute;left:50%}.damage-bar[hidden]{display:none}.damage-bar-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.damage-bar-label{letter-spacing:.12em;align-items:center;gap:7px;font-size:15px;font-weight:700;display:flex}.damage-bar-shield{clip-path:polygon(50% 0,100% 18%,88% 70%,50% 100%,12% 70%,0 18%);background:currentColor;width:12px;height:15px}.damage-bar-loss{color:var(--danger,#ff5252);margin-left:auto;font-size:16px;font-weight:700}.damage-bar-value{text-align:right;min-width:4ch;font-size:24px;font-weight:800;line-height:1}.damage-bar-track{background:#00000080;height:16px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff1a}.damage-bar-fill,.damage-bar-chip{transform-origin:0;position:absolute;inset:0}.damage-bar-fill{background:var(--good,#7fe07a)}.damage-bar-chip{background:linear-gradient(#fff1ee,#ff8c81)}@media (orientation:landscape){body.is-phone .damage-bar{width:280px;top:calc(96px + var(--safe-t,0px))}body.is-phone .damage-bar-track{height:12px}}body.phone-portrait .damage-bar{width:min(300px,76vw);top:calc(344px + var(--safe-t,0px))}
