:root{--color-bg: #0b0e1a;--color-asphalt: #1a2030;--neon-pink: #ff2d78;--neon-cyan: #22e6ff;--headlight: #ffe9b0;--car-red: #d92b2b;--gain: #c6ff4a;--text-main: #f2f5ff;--text-dim: #9aa6c4;--glass: rgba(8, 11, 24, .74);--glass-hi: rgba(24, 32, 62, .66);--glass-line: rgba(34, 230, 255, .5);--glass-dim: rgba(154, 166, 196, .25);--pink-soft: rgba(255, 45, 120, .26);--cyan-soft: rgba(34, 230, 255, .16);--gain-soft: rgba(198, 255, 74, .3);--shade: rgba(0, 0, 0, .55);--veil: rgba(4, 6, 14, .5);--scan: repeating-linear-gradient(0deg, rgba(255, 255, 255, .03) 0 1px, transparent 1px 3px);--font-display: "Impact", "Haettenschweiler", "Arial Narrow Bold", "Franklin Gothic Bold", "Oswald", "Roboto Condensed", "Arial Black", sans-serif;--font-body: "Bahnschrift", "Segoe UI", "Roboto Condensed", "Arial Narrow", system-ui, -apple-system, sans-serif;--ui-scale: 1;--banner-height: 0px;--banner-right: 0px;--safe-t: env(safe-area-inset-top, 0px);--safe-r: env(safe-area-inset-right, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--edge: clamp(8px, 1.6vmin, 20px);--inset-t: calc(var(--edge) + var(--safe-t));--inset-r: calc(var(--edge) + var(--safe-r) + var(--banner-right));--inset-b: calc(var(--edge) + var(--safe-b) + var(--banner-height));--inset-l: calc(var(--edge) + var(--safe-l));--app-h: calc(var(--vp-h, 100dvh) - var(--safe-t) - var(--safe-b) - var(--banner-height));--gap: clamp(6px, 1vmin, 12px);--slant: clamp(8px, 1.1vw, 16px);--slant-s: clamp(5px, .7vw, 9px);--tap: 44px;--tap-main: clamp(52px, 9vh, 76px);--swatch: 36px;--touch-main: clamp(68px, 25vh, 116px);--touch-size: clamp(58px, 18vh, 88px);--touch-gap: clamp(10px, 2.4vh, 18px);--fs-xs: clamp(10px, calc(12px * var(--ui-scale)), 13px);--fs-s: clamp(12px, calc(14px * var(--ui-scale)), 16px);--fs-m: clamp(14px, calc(18px * var(--ui-scale)), 20px);--fs-l: clamp(18px, calc(26px * var(--ui-scale)), 30px);--fs-xl: clamp(26px, calc(44px * var(--ui-scale)), 56px);--z-hud: 10;--z-touch: 20;--z-menu: 30;--z-toast: 35;--z-loading: 40;--dur-fast: .12s;--dur-menu: .26s}@media(pointer:coarse){:root{--swatch: 44px}}:root.is-touch{--swatch: 44px;--tap: 48px;--fs-xs: clamp(12px, calc(12px * var(--ui-scale)), 14px);--fs-s: clamp(13px, calc(15px * var(--ui-scale)), 17px);--fs-m: clamp(16px, calc(19px * var(--ui-scale)), 22px)}:root.is-touch.is-low{--tap: 44px}*{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}input[type=text],input[type=search],textarea,[contenteditable=""],[contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}::selection{background:transparent}img,canvas,svg{-webkit-user-drag:none}:root,:root body{margin:0;padding:0;width:100%;height:var(--vp-h, 100dvh);position:fixed;inset:0;overflow:hidden;background:var(--color-bg);overscroll-behavior:none;touch-action:manipulation;-webkit-text-size-adjust:100%;text-size-adjust:100%}body *{overscroll-behavior:contain}body{font-family:var(--font-body);color:var(--text-main)}#app{position:fixed;inset:0}#app canvas{display:block;touch-action:none}#ui-root{position:fixed;inset:0;pointer-events:none;z-index:var(--z-hud);font-size:var(--fs-s)}#ui-root button,#ui-root input{pointer-events:auto}.hidden{display:none!important}.ico{display:inline-flex;flex:none;width:1.2em;height:1.2em}.ico svg,.icon-btn svg{width:100%;height:100%;fill:none;stroke:currentColor}.screen{position:absolute;inset:0;box-sizing:border-box;pointer-events:none;padding:var(--inset-t) var(--inset-r) var(--inset-b) var(--inset-l)}.screen>*{pointer-events:auto}.panel{position:relative;box-sizing:border-box;background:var(--scan),linear-gradient(115deg,var(--glass-hi),var(--glass) 60%);-webkit-backdrop-filter:blur(6px) saturate(1.2);backdrop-filter:blur(6px) saturate(1.2);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);box-shadow:inset 0 2px 0 var(--neon-pink),inset 0 -1px 0 var(--glass-line),inset 0 0 36px var(--pink-soft);padding:clamp(8px,1.6vmin,18px) calc(var(--slant) + clamp(8px,1.4vmin,16px))}.screen-title{margin:0;font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-weight:400;font-size:var(--fs-xl);line-height:.95;letter-spacing:.03em;transform:skew(-8deg);transform-origin:left;text-shadow:0 0 14px var(--neon-pink),0 0 34px var(--pink-soft),3px 3px 0 var(--shade);white-space:nowrap}.tagline{margin:0;color:var(--text-dim);font-size:var(--fs-s);letter-spacing:.06em;text-transform:uppercase}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5em;box-sizing:border-box;min-height:var(--tap);min-width:var(--tap);margin:0;border:0;border-radius:0;padding:0 calc(var(--slant-s) + 12px);color:var(--text-main);font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m);letter-spacing:.05em;cursor:pointer;background:var(--scan),linear-gradient(100deg,var(--glass-hi),var(--glass));clip-path:polygon(var(--slant-s) 0,100% 0,calc(100% - var(--slant-s)) 100%,0 100%);box-shadow:inset 0 0 0 1px var(--glass-line);transition:transform var(--dur-fast),background var(--dur-fast),box-shadow var(--dur-fast),color var(--dur-fast),filter var(--dur-fast);white-space:nowrap}.btn:disabled{cursor:default;opacity:.55}@media(hover:hover){.btn:hover:not(:disabled){background:var(--scan),linear-gradient(100deg,var(--cyan-soft),var(--glass));box-shadow:inset 0 0 0 1px var(--neon-cyan),inset 0 0 18px var(--cyan-soft)}}.btn:active:not(:disabled){transform:scale(.96);filter:brightness(1.25)}.btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--neon-cyan),inset 0 0 22px var(--cyan-soft)}.btn.active{background:var(--scan),linear-gradient(100deg,var(--pink-soft),var(--glass));box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 18px var(--pink-soft)}.btn-primary{font-size:var(--fs-l);letter-spacing:.08em;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.32) 45%,transparent 60%) -200% 0 / 200% 100% no-repeat,linear-gradient(100deg,var(--neon-pink),var(--car-red));box-shadow:inset 0 0 0 1px var(--neon-pink),inset 0 -4px 0 var(--shade);text-shadow:2px 2px 0 var(--shade);animation:shine 2.8s ease-in-out infinite}@media(hover:hover){.btn-primary:hover:not(:disabled){background:linear-gradient(100deg,var(--neon-pink),var(--neon-pink));box-shadow:inset 0 0 0 2px var(--text-main),inset 0 0 26px var(--pink-soft)}}@keyframes shine{0%,55%{background-position:-200% 0,0 0}to{background-position:200% 0,0 0}}.icon-btn{width:var(--tap);height:var(--tap);padding:9px;flex:none}.icon-btn.off{color:var(--text-dim)}.music-volume{width:88px;height:var(--tap);margin:0;accent-color:var(--neon-pink);cursor:pointer}.lang-btn{width:auto;padding:0 calc(var(--slant-s) + 8px);font-size:var(--fs-s)}.back-btn{padding-left:calc(var(--slant-s) + 6px);font-size:var(--fs-s)}.back-btn .ico{width:1.4em;height:1.4em}.btn-row{display:flex;flex-wrap:wrap;gap:var(--gap);justify-content:center}.btn-price{color:var(--headlight)}.cant-afford,.cant-afford .btn-price{color:var(--text-dim)}.wallet{display:inline-flex;align-items:center;gap:var(--gap);min-height:var(--tap);box-sizing:border-box;padding:0 calc(var(--slant-s) + 12px);background:var(--glass);clip-path:polygon(var(--slant-s) 0,100% 0,calc(100% - var(--slant-s)) 100%,0 100%);box-shadow:inset 0 0 0 1px var(--glass-line);font-family:var(--font-display);font-style:italic;font-size:var(--fs-m);letter-spacing:.04em;white-space:nowrap}.wallet-item{display:inline-flex;align-items:center;gap:.35em}.wallet-cash{color:var(--headlight)}.wallet-rep{color:var(--neon-cyan)}.wallet-ico{color:var(--text-dim)}.tab,.chip{font-size:var(--fs-s);padding:0 calc(var(--slant-s) + 10px);flex:none}.icon-chip{padding:0 calc(var(--slant-s) + 6px)}.icon-chip .ico{width:1.5em;height:1.5em}.chip.danger{box-shadow:inset 0 0 0 1px var(--neon-pink)}.btn-ico{width:1.1em;height:1.1em}.chips,.swatches{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:center}.swatch{width:var(--swatch);height:var(--swatch);min-width:var(--swatch);min-height:var(--swatch);padding:4px;clip-path:none;border-radius:50%;background:var(--glass)}.swatch-dot{display:block;width:100%;height:100%;border-radius:50%;box-shadow:inset 0 0 0 1px var(--shade)}.placed-chip .swatch-dot{width:14px;height:14px;flex:none}.swatch.active{box-shadow:0 0 0 2px var(--neon-pink),0 0 12px var(--neon-pink);background:var(--glass)}.slider{width:100%;min-height:var(--tap);margin:0;accent-color:var(--neon-pink);touch-action:pan-x;cursor:pointer}.ctl{display:flex;flex-direction:column;gap:4px;min-width:0}.ctl-head{display:flex;align-items:center;justify-content:space-between;gap:var(--gap)}.ctl-label{color:var(--text-dim);font-family:var(--font-display);font-style:italic;text-transform:uppercase;letter-spacing:.08em;font-size:var(--fs-xs)}.card{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;padding:8px calc(var(--slant-s) + 10px);min-width:clamp(118px,15vmin,168px);white-space:normal;text-align:left;font-size:var(--fs-s)}.card-name{font-size:var(--fs-m);line-height:1.05;max-width:100%;overflow-wrap:normal;word-break:normal;hyphens:none}#ui-root *{scrollbar-width:thin;scrollbar-color:var(--neon-pink) transparent}#ui-root ::-webkit-scrollbar{width:6px;height:6px;background:transparent}#ui-root ::-webkit-scrollbar-track{background:transparent}#ui-root ::-webkit-scrollbar-thumb{background:linear-gradient(var(--neon-pink),var(--neon-cyan));border-radius:3px}#ui-root ::-webkit-scrollbar-button,#ui-root ::-webkit-scrollbar-corner{display:none;background:transparent}#ui-root .sec-row,#ui-root .sec-tabs,#ui-root .hub-nav,#ui-root .vinyl-views{scrollbar-width:none}#ui-root .sec-row::-webkit-scrollbar,#ui-root .sec-tabs::-webkit-scrollbar,#ui-root .hub-nav::-webkit-scrollbar,#ui-root .vinyl-views::-webkit-scrollbar{display:none}.card-brand,.card-sub{font-family:var(--font-body);font-style:normal;text-transform:none;color:var(--text-dim);font-size:var(--fs-xs);letter-spacing:.02em}.card-tag{display:inline-flex;align-items:center;gap:.35em;margin-top:auto;font-size:var(--fs-xs);color:var(--neon-cyan)}.tag-ico{width:1.1em;height:1.1em}.card.locked .card-tag{color:var(--headlight)}.card.locked .card-tag.cant-afford{color:var(--text-dim)}.card.current .card-tag,.card.equipped .card-tag{color:var(--gain)}.hub-hint{margin:0;color:var(--text-dim);font-size:var(--fs-xs);letter-spacing:.04em;text-transform:uppercase}.hub-hint.warn,.vinyl-mode.warn{color:var(--headlight)}.toast{position:absolute;left:50%;top:22%;transform:translate(-50%);z-index:var(--z-toast);max-width:min(86vw,520px);box-sizing:border-box;padding:10px calc(var(--slant) + 16px);background:var(--glass);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);box-shadow:inset 0 0 0 2px var(--neon-pink);font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m);text-align:center;pointer-events:none}.menu-screen{display:grid;grid-template-columns:1fr minmax(280px,36vw);grid-template-rows:auto 1fr auto;gap:var(--gap);pointer-events:none}.menu-top{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--gap);flex-wrap:wrap;pointer-events:none}.menu-top>*{pointer-events:auto}.game-title{margin:0;font-family:var(--font-display);font-style:italic;font-weight:400;text-transform:uppercase;font-size:clamp(30px,calc(60px * var(--ui-scale)),72px);line-height:.92;letter-spacing:.02em;transform:skew(-8deg);transform-origin:left;text-shadow:0 0 14px var(--neon-pink),0 0 36px var(--pink-soft),3px 3px 0 var(--shade)}.game-title .accent{color:var(--neon-cyan);text-shadow:0 0 14px var(--neon-cyan),3px 3px 0 var(--shade)}.menu-brand .tagline{margin-top:6px}.menu-corner{display:flex;align-items:center;gap:var(--gap);flex-wrap:wrap;justify-content:flex-end}.menu-actions{grid-column:2;grid-row:2 / 4;align-self:center;display:flex;flex-direction:column;gap:clamp(8px,1.6vmin,16px);min-width:0;min-height:0;max-height:100%;overflow-y:auto;overflow-x:hidden;touch-action:pan-y;scrollbar-width:none}.menu-actions::-webkit-scrollbar{display:none}.menu-btn{justify-content:flex-start;gap:clamp(10px,1.6vmin,18px);min-height:clamp(56px,11vh,92px);padding:6px calc(var(--slant) + 14px);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);box-shadow:inset 4px 0 0 var(--neon-cyan),inset 0 0 0 1px var(--glass-line);text-align:left;white-space:normal}.menu-btn{flex:none}.menu-btn-main{min-height:clamp(68px,15vh,120px);background:linear-gradient(100deg,var(--neon-pink),var(--car-red) 70%,var(--glass));box-shadow:inset 4px 0 0 var(--text-main),inset 0 -4px 0 var(--shade),inset 0 0 30px var(--pink-soft)}.menu-btn-main .menu-btn-label{font-size:clamp(24px,calc(44px * var(--ui-scale)),52px)}.menu-btn-main .menu-btn-ico{width:clamp(30px,5.4vmin,48px);height:clamp(30px,5.4vmin,48px)}.menu-btn-ico{width:clamp(26px,4.4vmin,40px);height:clamp(26px,4.4vmin,40px)}.menu-btn-go{margin-left:auto;width:1.4em;height:1.4em;opacity:.8}.menu-btn-text{display:flex;flex-direction:column;min-width:0;gap:2px}.menu-btn-label{font-size:clamp(20px,calc(34px * var(--ui-scale)),40px);line-height:.95;letter-spacing:.04em;text-shadow:2px 2px 0 var(--shade)}.menu-btn-sub{font-family:var(--font-body);font-style:normal;text-transform:none;font-size:var(--fs-xs);color:var(--text-main);opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.menu-info{grid-column:1;grid-row:3;align-self:end;justify-self:start;display:flex;flex-direction:column;gap:2px;padding:8px calc(var(--slant) + 14px);background:linear-gradient(100deg,var(--glass),transparent);box-shadow:inset 3px 0 0 var(--neon-pink);max-width:100%;box-sizing:border-box}.menu-car{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-l);line-height:1}.menu-best{color:var(--text-dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em}.page-screen{display:flex;flex-direction:column;gap:var(--gap);pointer-events:none}.page-head{display:flex;align-items:center;gap:clamp(8px,1.6vmin,18px);flex-wrap:wrap}.page-head .wallet{margin-left:auto}.page-panel{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--gap);width:min(100%,1180px);align-self:center}.chapter-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;display:flex;flex-direction:column;gap:clamp(10px,2vmin,18px);padding-right:4px}.chapter-title{display:flex;align-items:baseline;gap:.6em;margin:0 0 6px;font-family:var(--font-display);font-style:italic;font-weight:400;text-transform:uppercase;font-size:var(--fs-l)}.chapter-num{color:var(--neon-pink);font-size:.7em;letter-spacing:.08em}.chapter-progress{margin-left:auto;color:var(--text-dim);font-size:.7em}.chapter-lock{color:var(--text-dim);align-self:center}.chapter-block.locked .chapter-name{color:var(--text-dim)}.event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:var(--gap)}.event-card{min-width:0;min-height:112px;width:100%}.event-top{display:inline-flex;align-items:center;gap:.4em;color:var(--neon-cyan)}.event-ico{width:1.3em;height:1.3em}.event-mode{font-size:var(--fs-m)}.event-track{font-size:var(--fs-m);color:var(--text-main);line-height:1.05}.event-meta{font-family:var(--font-body);font-style:normal;text-transform:none;color:var(--text-dim);font-size:var(--fs-xs)}.event-reward{display:inline-flex;align-items:center;gap:.3em;color:var(--headlight);font-size:var(--fs-s)}.event-mini{width:1em;height:1em;color:var(--text-dim)}.event-status{display:inline-flex;align-items:center;gap:.35em;margin-top:auto;color:var(--neon-pink);font-size:var(--fs-s)}.event-card.done .event-status{color:var(--gain)}.event-card.locked .event-status{color:var(--text-dim)}.event-card:not(.locked):not(.done){box-shadow:inset 0 0 0 1px var(--neon-pink),inset 0 0 20px var(--pink-soft)}.tracks-screen{justify-content:space-between}.race-panel{display:flex;flex-direction:column;gap:var(--gap);width:min(100%,1180px);align-self:center;max-height:calc(var(--app-h) * .62)}.track-card{min-width:clamp(150px,20vmin,220px);min-height:104px}.track-ico{color:var(--neon-cyan);width:1.3em;height:1.3em}.track-card.active{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 22px var(--pink-soft)}.race-foot{display:flex;align-items:center;gap:clamp(10px,2vmin,20px);flex-wrap:wrap}.race-car{display:flex;align-items:center;gap:var(--gap);min-width:0}.race-car-text{display:flex;flex-direction:column;min-width:0}.race-car-name{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m)}.race-car-class{color:var(--text-dim);font-size:var(--fs-xs)}.race-prize{color:var(--headlight);font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-s)}.race-start,.hub-drive{margin-left:auto;min-height:clamp(52px,9vh,76px);min-width:clamp(180px,22vw,300px);padding:0 calc(var(--slant) + 18px);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%)}.drive-ico{width:1.1em;height:1.1em}.sec-row{display:flex;gap:var(--gap);overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;touch-action:pan-x;padding-bottom:4px;scrollbar-width:thin}.sec-tabs{display:flex;gap:4px;overflow-x:auto;touch-action:pan-x;scrollbar-width:none}.hub-screen{display:grid;grid-template-columns:minmax(170px,230px) 1fr minmax(230px,320px);grid-template-rows:auto 1fr auto;grid-template-areas:"head head wallet" "nav stage stats" "content content drive";gap:var(--gap)}.hub-stage{grid-area:stage;min-width:0;min-height:0;touch-action:none;cursor:grab}.hub-stage:active{cursor:grabbing}.hub-screen[data-section=vinyls] .hub-stage{cursor:crosshair}.hub-head{grid-area:head;display:flex;align-items:center;gap:clamp(8px,1.6vmin,18px);min-width:0}.hub-wallet{grid-area:wallet;justify-self:end;align-self:center}.hub-nav{grid-area:nav;display:flex;flex-direction:column;gap:clamp(6px,1.2vmin,12px);align-self:start;min-width:0}.nav-btn{justify-content:flex-start;gap:.7em;min-height:clamp(44px,8.4vh,66px);padding:0 calc(var(--slant) + 12px);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);font-size:var(--fs-m);box-shadow:inset 3px 0 0 var(--glass-line),inset 0 0 0 1px var(--glass-dim)}.nav-ico{width:1.6em;height:1.6em}.nav-btn.active{background:var(--scan),linear-gradient(100deg,var(--pink-soft),var(--glass) 80%);box-shadow:inset 4px 0 0 var(--neon-pink),inset 0 0 0 2px var(--neon-pink),inset 0 0 24px var(--pink-soft);text-shadow:0 0 10px var(--neon-pink)}.nav-label{overflow:hidden;text-overflow:ellipsis}.hub-stats{grid-area:stats;align-self:start;display:flex;flex-direction:column;gap:6px;min-width:0}.stat-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--gap);min-width:0}.stat-car{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.stat-class{color:var(--text-dim);font-size:var(--fs-xs);white-space:nowrap}.stat-row{display:grid;grid-template-columns:minmax(70px,40%) 1fr;align-items:center;gap:var(--gap)}.stat-label{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-s);letter-spacing:.04em;white-space:nowrap}.stat-track{position:relative;height:clamp(8px,1.4vmin,12px);background:var(--glass-dim);transform:skew(-20deg);overflow:hidden}.stat-fill,.stat-gain{position:absolute;top:0;bottom:0;left:0;transition:width var(--dur-menu),left var(--dur-menu)}.stat-fill{background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink));box-shadow:0 0 10px var(--pink-soft)}.stat-gain{background:var(--gain);box-shadow:0 0 10px var(--gain-soft)}.hub-content{grid-area:content;display:flex;flex-direction:column;gap:6px;min-width:0;min-height:0;max-height:clamp(150px,calc(var(--app-h) * .37),320px)}.hub-section{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y}.hub-pending{padding:18px 0;text-align:center;font-size:1.6em;letter-spacing:.2em;opacity:.6}.hub-drive{grid-area:drive;align-self:end;margin-left:0;width:100%;min-width:0}.hub-drive.buy{background:linear-gradient(100deg,var(--neon-cyan),var(--glass-hi));color:var(--color-bg);text-shadow:none;box-shadow:inset 0 0 0 1px var(--neon-cyan)}.hub-drive.buy.cant-afford{background:var(--glass);color:var(--text-dim);box-shadow:inset 0 0 0 1px var(--glass-dim)}.drive-price{font-size:.8em}.sec{display:flex;flex-direction:column;gap:var(--gap);min-width:0}.car-card{min-width:clamp(132px,16vmin,176px)}.car-card.active{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 22px var(--pink-soft)}.car-card.current .card-name{color:var(--neon-cyan)}.mini-bars{display:flex;flex-direction:column;gap:3px;width:100%}.mini-bar{display:block;height:4px;background:var(--glass-dim);transform:skew(-20deg)}.mini-fill{display:block;height:100%;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink))}.part-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}.part-buy{font-size:var(--fs-xs);padding:0 calc(var(--slant-s) + 4px);min-width:0}.part-card{display:flex;flex-direction:column;gap:6px;min-width:0;padding:8px calc(var(--slant-s) + 10px);background:var(--scan),linear-gradient(100deg,var(--glass-hi),var(--glass));clip-path:polygon(var(--slant-s) 0,100% 0,calc(100% - var(--slant-s)) 100%,0 100%);box-shadow:inset 0 0 0 1px var(--glass-dim)}.part-card.active{box-shadow:inset 0 0 0 2px var(--gain),inset 0 0 18px var(--gain-soft)}.part-name{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m)}.pips{display:flex;gap:4px}.pip{width:22px;height:8px;background:var(--glass-dim);transform:skew(-20deg)}.pip.on{background:var(--neon-cyan);box-shadow:0 0 8px var(--neon-cyan)}.part-card.maxed .pip.on{background:var(--gain);box-shadow:0 0 8px var(--gain)}.part-buy{color:var(--headlight)}.part-buy.cant-afford{color:var(--text-dim)}.sec-paint{flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:clamp(10px,2vmin,24px)}.ctl-wide{flex:1 1 320px}.stock-chip{min-height:36px}.rim-card{min-width:clamp(124px,15vmin,150px)}.rim-card .card-name{font-size:var(--fs-s)}.rim-card .rim-ico{width:1.4em;height:1.4em}.sec-rims .sec-controls{gap:8px clamp(12px,2vmin,24px);align-items:center}.sec-rims .ctl{flex-direction:row;align-items:center;gap:8px}.rim-ico{width:1.8em;height:1.8em;color:var(--text-dim)}.rim-card.active{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 22px var(--pink-soft)}.rim-card.active .rim-ico{color:var(--neon-cyan)}.sec-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:clamp(10px,2vmin,22px)}.btn-buy{background:linear-gradient(100deg,var(--neon-cyan),var(--glass-hi));color:var(--color-bg);box-shadow:inset 0 0 0 1px var(--neon-cyan)}.btn-buy .btn-price{color:var(--color-bg)}.btn-buy.cant-afford{background:var(--glass);color:var(--text-dim);box-shadow:inset 0 0 0 1px var(--glass-dim)}.btn-buy.cant-afford .btn-price{color:var(--text-dim)}.sec-vinyls{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,230px) minmax(170px,210px);grid-template-areas:"catalog controls placed";align-items:start;gap:var(--gap) clamp(10px,1.8vmin,18px)}.vinyl-views{display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;scrollbar-width:none}.vinyl-catalog{grid-area:catalog;display:flex;flex-direction:column;gap:4px;min-width:0}.vinyl-controls{grid-area:controls;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:4px}.vinyl-placed{grid-area:placed;display:flex;flex-direction:column;gap:4px;min-width:0}.vinyl-swatches{gap:4px}.vinyl-swatches .swatch{width:32px;height:32px;min-width:32px;min-height:32px;padding:3px}.ctl-slider{display:grid;grid-template-columns:minmax(64px,auto) 1fr;align-items:center;gap:8px}.ctl-slider .slider{min-height:30px}.decal-card{min-width:88px;align-items:center;text-align:center;padding-top:4px;padding-bottom:4px;gap:2px}.decal-card .card-name{font-size:var(--fs-xs)}.decal-card.active{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 22px var(--pink-soft)}.decal-thumb{width:34px;height:34px}@media(pointer:fine){.chip,.tab{min-height:34px}.vinyl-views .chip{min-height:32px}}@media(pointer:coarse){.vinyl-swatches .swatch{width:44px;height:44px;min-width:44px;min-height:44px}.ctl-slider .slider{min-height:44px}.stock-chip{min-height:var(--tap)}}:root.is-touch .vinyl-swatches .swatch{width:44px;height:44px;min-width:44px;min-height:44px}:root.is-touch .ctl-slider .slider,:root.is-touch .stock-chip,:root.is-touch .music-volume{min-height:44px}:root.is-touch .chip,:root.is-touch .tab{min-height:44px}.vinyl-count{font-family:var(--font-display);font-style:italic;color:var(--neon-cyan);font-size:var(--fs-m)}.vinyl-count.full{color:var(--neon-pink)}.placed-list{max-height:112px;overflow-y:auto;touch-action:pan-y}.placed-chip{font-size:var(--fs-xs)}.vinyl-mode{margin:0;color:var(--text-dim);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em}.ctl-slider{cursor:pointer}.hud{position:absolute;inset:0;pointer-events:none}.hud-left{position:absolute;top:calc(var(--edge) + var(--safe-t));left:calc(var(--edge) + var(--safe-l));display:flex;flex-direction:column;align-items:flex-start;gap:var(--gap)}.hud-race{display:flex;align-items:stretch;gap:clamp(8px,1.6vmin,16px);padding:6px calc(var(--slant) + 12px) 6px 12px;background:var(--scan),linear-gradient(100deg,var(--glass-hi),var(--glass) 75%,transparent);clip-path:polygon(0 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);box-shadow:inset 3px 0 0 var(--neon-pink)}.hud-placebox{display:flex;flex-direction:column;justify-content:center}.hud-label{color:var(--text-dim);font-family:var(--font-display);font-style:italic;text-transform:uppercase;letter-spacing:.08em;font-size:var(--fs-xs)}.hud-place-row{display:flex;align-items:baseline;transform:skew(-6deg)}.hud-place{font-family:var(--font-display);font-style:italic;font-size:clamp(36px,calc(66px * var(--ui-scale)),80px);line-height:.9;color:var(--neon-pink);text-shadow:0 0 14px var(--neon-pink),3px 3px 0 var(--shade);font-variant-numeric:tabular-nums}.hud-place-total{font-family:var(--font-display);font-style:italic;font-size:var(--fs-l);color:var(--text-main)}.hud-stats{display:flex;flex-direction:column;justify-content:center;gap:2px;min-width:clamp(100px,16vmin,150px)}.hud-stat{display:flex;justify-content:space-between;align-items:baseline;gap:var(--gap)}.hud-value{font-family:var(--font-display);font-style:italic;font-size:var(--fs-m);font-variant-numeric:tabular-nums}.hud-lap{color:var(--neon-cyan)}.hud-mapbox{padding:4px;background:radial-gradient(closest-side,var(--glass) 70%,transparent 100%)}.hud-map{width:clamp(84px,17vmin,150px);height:clamp(84px,17vmin,150px)}.hud-pause{position:absolute;top:calc(var(--edge) + var(--safe-t));right:calc(var(--edge) + var(--safe-r));width:48px;height:48px}.hud-gauge{position:absolute;bottom:calc(var(--edge) + var(--safe-b) + var(--banner-height));right:calc(var(--edge) + var(--safe-r));width:clamp(130px,calc(220px * var(--ui-scale)),260px);padding-bottom:clamp(16px,calc(30px * var(--ui-scale)),36px);border-radius:50%;background:radial-gradient(closest-side,var(--glass) 60%,transparent 100%)}.spd-dial{display:block;width:100%;height:auto;overflow:visible}.spd-track{stroke:var(--text-dim);stroke-width:9;opacity:.45}.spd-rpm{stroke:var(--neon-cyan);stroke-width:9;filter:drop-shadow(0 0 5px var(--neon-cyan))}.spd-red{stroke:var(--neon-pink);stroke-width:9;filter:drop-shadow(0 0 4px var(--neon-pink))}.spd-needle{stroke:var(--neon-pink);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 3px var(--neon-pink))}.spd-hub{fill:var(--text-main)}.hud-gauge-speed{position:absolute;left:0;right:0;bottom:12%;display:flex;flex-direction:column;align-items:center}.hud-speed{font-family:var(--font-display);font-style:italic;font-size:clamp(30px,calc(60px * var(--ui-scale)),72px);line-height:.9;transform:skew(-8deg);font-variant-numeric:tabular-nums;text-shadow:0 0 10px var(--cyan-soft),2px 2px 0 var(--shade)}.hud-speed-unit{color:var(--text-dim);font-style:italic;letter-spacing:.2em;font-size:var(--fs-xs);text-transform:uppercase}.hud-gear{position:absolute;right:0;bottom:2%;padding:0 .4em;font-family:var(--font-display);font-style:italic;font-size:clamp(16px,calc(26px * var(--ui-scale)),32px);color:var(--headlight);background:var(--glass);box-shadow:inset 0 0 0 1px var(--glass-line);clip-path:polygon(.25em 0,100% 0,calc(100% - .25em) 100%,0 100%)}.spd-drift{position:absolute;top:-6%;left:50%;transform:translate(-50%);padding:2px calc(var(--slant-s) + 8px);font-family:var(--font-display);font-style:italic;text-transform:uppercase;letter-spacing:.08em;font-size:var(--fs-s);color:var(--neon-cyan);background:var(--glass);clip-path:polygon(var(--slant-s) 0,100% 0,calc(100% - var(--slant-s)) 100%,0 100%);box-shadow:inset 0 0 0 1px var(--neon-cyan);white-space:nowrap}.hud-nitro{position:absolute;left:50%;bottom:calc(var(--edge) + var(--safe-b) + var(--banner-height));transform:translate(-50%);display:flex;align-items:center;gap:var(--gap);box-sizing:border-box;width:clamp(160px,30vw,380px);padding:6px calc(var(--slant) + 12px);background:var(--glass);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);box-shadow:inset 0 0 0 1px var(--glass-line)}.nitro-ico{color:var(--neon-cyan);width:1.3em;height:1.3em}.hud-nitro-label{font-family:var(--font-display);font-style:italic;letter-spacing:.1em;color:var(--text-dim);font-size:var(--fs-s)}.hud-nitro-track{position:relative;flex:1;height:clamp(10px,calc(16px * var(--ui-scale)),18px);background:var(--color-asphalt);transform:skew(-20deg);overflow:hidden}.hud-nitro-fill{width:100%;height:100%;background:linear-gradient(90deg,var(--cyan-soft),var(--neon-cyan));box-shadow:0 0 14px var(--neon-cyan);transform-origin:left center;transform:scaleX(0)}.hud-nitro.ready{box-shadow:inset 0 0 0 2px var(--neon-cyan),inset 0 0 20px var(--cyan-soft);animation:pulse 1.1s ease-in-out infinite}.hud-nitro.ready .hud-nitro-label{color:var(--neon-cyan)}.hud-nitro.boost{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 22px var(--pink-soft)}.hud-nitro.boost .hud-nitro-fill{background:linear-gradient(90deg,var(--pink-soft),var(--neon-pink));box-shadow:0 0 14px var(--neon-pink)}.hud-nitro.boost .hud-nitro-label,.hud-nitro.boost .nitro-ico{color:var(--neon-pink)}@keyframes pulse{50%{filter:brightness(1.35)}}.hud-warn{position:absolute;top:24%;left:50%;transform:translate(-50%);padding:6px calc(var(--slant) + 18px);font-family:var(--font-display);font-style:italic;font-size:clamp(22px,calc(40px * var(--ui-scale)),56px);letter-spacing:.08em;color:var(--neon-pink);background:var(--glass);clip-path:polygon(var(--slant) 0,100% 0,calc(100% - var(--slant)) 100%,0 100%);text-shadow:0 0 12px var(--neon-pink),2px 2px 0 var(--shade);white-space:nowrap}.hud-count{position:absolute;top:20%;left:50%;transform:translate(-50%) skew(-8deg);font-family:var(--font-display);font-style:italic;font-size:clamp(56px,calc(120px * var(--ui-scale)),150px);color:var(--text-main);text-shadow:0 0 22px var(--neon-cyan),4px 4px 0 var(--shade);white-space:nowrap}.veil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:var(--inset-t) var(--inset-r) var(--inset-b) var(--inset-l);background:radial-gradient(ellipse at center,var(--veil),transparent 80%);pointer-events:auto;z-index:var(--z-menu)}.dialog{display:flex;flex-direction:column;align-items:center;gap:clamp(8px,1.8vmin,16px);width:min(100%,640px);max-height:100%;overflow-y:auto;text-align:center;padding:clamp(14px,3vmin,30px) calc(var(--slant) + clamp(14px,3vmin,32px))}.dialog-title{transform-origin:center}.dialog .btn-row{width:100%}.dialog-main{flex:1 1 100%;min-height:clamp(52px,9vh,72px)}.dialog .btn-row .btn:not(.dialog-main){flex:1 1 140px}.finish-screen.won .finish-title{color:var(--neon-cyan);text-shadow:0 0 18px var(--neon-cyan),0 0 40px var(--cyan-soft),3px 3px 0 var(--shade)}.finish-result{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);width:100%}.finish-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 6px;background:var(--glass);box-shadow:inset 0 0 0 1px var(--glass-dim)}.finish-place{display:flex;align-items:baseline;transform:skew(-6deg)}.finish-place-num{font-family:var(--font-display);font-style:italic;font-size:clamp(40px,calc(72px * var(--ui-scale)),88px);line-height:.9;color:var(--neon-pink);text-shadow:0 0 14px var(--neon-pink)}.finish-place-total{font-family:var(--font-display);font-style:italic;font-size:var(--fs-l)}.finish-value{font-family:var(--font-display);font-style:italic;font-size:var(--fs-m);font-variant-numeric:tabular-nums}.finish-award{box-shadow:inset 0 0 0 1px var(--headlight)}.finish-cash{font-family:var(--font-display);font-style:italic;font-size:var(--fs-l);color:var(--headlight);text-shadow:0 0 12px var(--headlight)}.finish-rep{color:var(--neon-cyan);font-size:var(--fs-s)}.finish-line{margin:0;font-size:var(--fs-s)}.unlock-line{color:var(--gain)}.story-line{color:var(--text-dim);font-style:italic}.touch-layer{position:absolute;inset:0;pointer-events:none;z-index:var(--z-touch)}#ui-root:not([data-phase=race]):not([data-phase=countdown]) .touch-layer{display:none}.touch-layer{touch-action:none}#ui-root:has(.touch-layer:not(.hidden)) .hud-gauge{bottom:auto;top:calc(var(--edge) + var(--safe-t));right:calc(var(--edge) + var(--safe-r) + 48px + var(--gap));width:clamp(88px,24vh,170px)}#ui-root:has(.touch-layer:not(.hidden)) .hud-nitro{bottom:calc(var(--edge) + var(--safe-b));width:clamp(96px,calc(var(--vp-w, 100vw) - 3 * var(--touch-main) - var(--touch-size) - 3 * var(--touch-gap) - 2 * var(--edge) - var(--safe-l) - var(--safe-r) - 32px),380px)}:root.is-phone .hud-stat:has(.hud-best){display:none}:root.is-phone .hud-race{padding:4px calc(var(--slant) + 8px) 4px 8px;gap:8px}:root.is-phone .hud-stats{min-width:84px}:root.is-phone .hud-place{font-size:clamp(30px,11vh,46px)}:root.is-phone .hud-place-total{font-size:var(--fs-m)}:root.is-phone .hud-map{width:clamp(64px,20vh,96px);height:clamp(64px,20vh,96px)}:root.is-phone .hud-speed{font-size:clamp(22px,8vh,36px)}:root.is-phone .hud-gear{font-size:clamp(14px,4.6vh,20px)}:root.is-phone .hud-nitro{padding:4px calc(var(--slant) + 8px)}:root.is-phone .hud-nitro-label{display:none}:root.is-phone .hud-warn{top:18%;font-size:clamp(20px,8vh,34px)}:root.is-phone .hud-count{top:16%;font-size:clamp(48px,22vh,96px)}.loading-veil{position:fixed;inset:0;z-index:var(--z-loading);display:flex;align-items:center;justify-content:center;background:var(--glass);pointer-events:none}.loading-bar{width:min(60vw,300px);height:8px;box-shadow:inset 0 0 0 1px var(--glass-line);overflow:hidden;transform:skew(-20deg)}.loading-fill{width:100%;height:100%;background:var(--neon-cyan);transform-origin:left center;transform:scaleX(0)}.menu-screen:not(.hidden) .menu-actions,.hub-screen:not(.hidden) .hub-nav,.page-screen:not(.hidden) .panel,.veil:not(.hidden) .dialog{animation:slide-in .3s cubic-bezier(.2,.9,.2,1) backwards}.hub-screen:not(.hidden) .hub-content{animation:rise-in .3s cubic-bezier(.2,.9,.2,1) backwards}@keyframes slide-in{0%{opacity:0;translate:-40px 0}}@keyframes rise-in{0%{opacity:0;translate:0 30px}}@media(max-width:1100px){.hub-screen{grid-template-columns:minmax(150px,190px) 1fr minmax(210px,270px)}.sec-vinyls{grid-template-columns:minmax(0,1fr) minmax(190px,230px);grid-template-areas:"catalog controls" "placed placed"}.part-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(orientation:portrait){.menu-screen{grid-template-columns:1fr;grid-template-rows:auto auto 1fr auto}.menu-info{grid-column:1;grid-row:2;align-self:start;padding-top:4px;padding-bottom:4px}.menu-actions{grid-column:1;grid-row:4;gap:6px}.menu-btn{min-height:clamp(52px,7.6vh,68px)}.menu-btn.menu-btn-main{min-height:clamp(64px,10vh,92px)}.menu-btn-label{font-size:clamp(18px,3.4vh,28px)}.menu-brand .tagline{display:none}.menu-corner{width:100%;justify-content:flex-start}.hub-screen{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto minmax(120px,1fr) auto auto;grid-template-areas:"head wallet" "nav nav" "stats stats" "stage stage" "content content" "drive drive"}.hub-head .screen-title{font-size:var(--fs-l)}.hub-nav{flex-direction:row;overflow-x:auto;touch-action:pan-x;scrollbar-width:none}.nav-btn{flex:1 0 auto;flex-direction:column;justify-content:center;gap:2px;min-height:54px;padding:4px calc(var(--slant-s) + 8px);font-size:var(--fs-xs)}.nav-ico{width:1.8em;height:1.8em}.hub-stats{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding-top:6px;padding-bottom:6px}.stat-head{grid-column:1 / -1}.stat-row{grid-template-columns:auto 1fr}.stat-label{font-size:var(--fs-xs)}.hub-content{max-height:calc(var(--app-h) * .34)}.hub-drive{min-height:52px}.sec-vinyls{grid-template-columns:1fr;grid-template-areas:"catalog" "controls" "placed"}.part-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finish-result{grid-template-columns:1fr 1fr}.finish-award{grid-column:1 / -1}.race-panel{max-height:calc(var(--app-h) * .7)}.race-start{width:100%;margin-left:0}}@media(max-width:720px){.hud-stats{min-width:92px}.menu-screen{grid-template-columns:1fr minmax(240px,46vw)}}@media(orientation:portrait)and (max-width:720px){.menu-screen{grid-template-columns:1fr}.wallet{font-size:var(--fs-s);padding:0 calc(var(--slant-s) + 8px)}}@media(orientation:landscape)and (max-height:520px){:root{--fs-xl: clamp(22px, 7vh, 34px);--fs-l: clamp(16px, 5vh, 22px)}.game-title{font-size:clamp(24px,9vh,40px)}.menu-brand .tagline{display:none}.menu-btn{min-height:clamp(48px,15vh,64px)}.menu-btn-label{font-size:clamp(18px,6.4vh,26px)}.menu-btn.menu-btn-main{min-height:clamp(58px,20vh,88px)}.menu-btn-main .menu-btn-label{font-size:clamp(22px,8.6vh,36px)}.menu-actions{align-self:stretch;justify-content:safe center}.menu-corner{gap:6px}.music-volume{width:72px}.hub-nav{overflow-y:auto;max-height:100%;touch-action:pan-y}.page-head{flex-wrap:nowrap}.page-head .screen-title{font-size:var(--fs-l);overflow:hidden;text-overflow:ellipsis;min-width:0}.finish-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,32%);grid-auto-rows:min-content;align-items:center;column-gap:clamp(10px,2.4vw,24px);row-gap:6px;width:min(100%,880px)}.finish-panel>*{grid-column:1}.finish-panel>.btn-row{grid-column:2;grid-row:1 / span 6;flex-direction:column;flex-wrap:nowrap;align-self:center}.finish-panel.dialog>.btn-row .btn{flex:none;width:100%;min-height:var(--tap)}.finish-panel.dialog>.btn-row .dialog-main{min-height:var(--tap-main)}.finish-panel .finish-cell{padding:4px}.pause-veil .dialog{width:min(100%,560px)}.hub-screen{grid-template-columns:auto minmax(0,1fr) minmax(170px,27vw);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"nav head wallet" "nav stage stats" "nav content drive"}.hub-nav{justify-content:safe center;align-self:stretch;gap:4px}.nav-btn{min-height:44px;min-width:52px;padding:0 calc(var(--slant-s) + 8px);justify-content:center}.nav-label{display:none}.nav-ico{width:1.5em;height:1.5em}.hub-stats{gap:2px;padding-top:6px;padding-bottom:6px}.stat-label{font-size:var(--fs-xs)}.hub-content{max-height:calc(var(--app-h) * .5)}.hub-drive{min-height:48px;font-size:var(--fs-m)}.hub-hint{display:none}.sec-vinyls{grid-template-columns:minmax(0,1fr) minmax(170px,210px);grid-template-areas:"catalog controls" "placed placed"}.part-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card{min-height:0;padding-top:6px;padding-bottom:6px}.track-card,.event-card{min-height:84px}.race-panel{max-height:calc(var(--app-h) * .8)}.race-start{min-height:48px}.dialog{gap:6px}.finish-place-num{font-size:clamp(32px,12vh,52px)}.dialog-main{flex:1 1 160px;min-height:48px}.hud-place{font-size:clamp(30px,12vh,48px)}.hud-map{width:clamp(72px,22vh,104px);height:clamp(72px,22vh,104px)}.hud-gauge{width:clamp(110px,32vh,170px)}}@media(orientation:landscape)and (max-height:340px){.menu-info{display:none}.menu-actions{grid-row:2 / 4}.hub-stats .stat-head,.dialog .tagline,.hud-mapbox{display:none}}@media(min-width:2200px){:root{--ui-scale: 1.25}}@media(prefers-reduced-motion:reduce){.btn,.stat-fill,.stat-gain{transition:none}.btn-primary,.hud-nitro.ready{animation:none}}.story-portrait{--who: var(--neon-pink);position:relative;flex:none;aspect-ratio:1;overflow:hidden;border-radius:14px;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--who) 45%,#101425),#070910 75%);box-shadow:0 0 0 2px color-mix(in srgb,var(--who) 70%,transparent),0 0 24px color-mix(in srgb,var(--who) 45%,transparent)}.story-portrait img{display:block;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none;pointer-events:none}.story-portrait.no-art{display:grid;place-items:center}.story-portrait-mark{font-family:var(--font-display);font-size:2.2em;color:var(--text-main);text-shadow:0 0 12px var(--who),0 0 28px var(--who)}.story-portrait-big{height:min(calc(var(--app-h) * .5),340px);font-size:clamp(28px,7vh,60px)}.story-portrait-mini{width:46px;height:46px;border-radius:10px;font-size:13px}.story-dialog{--who: var(--neon-pink);position:absolute;inset:0;z-index:36;box-sizing:border-box;padding:var(--inset-t) var(--inset-r) var(--inset-b) var(--inset-l);display:grid;grid-template-rows:auto 1fr;gap:var(--gap);background:radial-gradient(120% 80% at 20% 100%,color-mix(in srgb,var(--who) 22%,transparent),transparent 60%),linear-gradient(180deg,#04060e8c,#04060ee6);cursor:pointer;pointer-events:auto;user-select:none;-webkit-user-select:none;animation:story-in .22s ease-out}.story-dialog.hidden,.story-toast.hidden,.story-actions.hidden,.story-head.hidden,.story-hint.hidden{display:none}@keyframes story-in{0%{opacity:0}to{opacity:1}}.story-head{display:flex;flex-direction:column;gap:4px;max-width:calc(100% - 160px)}.story-kicker{font-size:var(--fs-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--neon-cyan)}.story-title{margin:0;font-family:var(--font-display);font-size:var(--fs-l);letter-spacing:.04em;color:var(--text-main);text-shadow:0 0 12px var(--who),2px 2px 0 var(--shade);line-height:1.05}.story-chips{display:flex;flex-wrap:wrap;gap:6px}.story-chip{padding:3px 10px;border-radius:999px;font-size:var(--fs-xs);color:var(--text-main);background:#080b18b3;border:1px solid var(--glass-dim);white-space:nowrap}.story-stage{align-self:end;display:flex;align-items:flex-end;gap:clamp(10px,2vw,24px);min-height:0;max-width:1100px;width:100%;margin:0 auto}.story-portrait-slot{flex:none;animation:story-pop .25s ease-out}@keyframes story-pop{0%{transform:translateY(12px);opacity:0}to{transform:none;opacity:1}}.story-box{flex:1;min-width:0;box-sizing:border-box;padding:clamp(10px,2vh,20px) clamp(12px,2vw,24px);background:var(--scan),linear-gradient(115deg,var(--glass-hi),var(--glass) 60%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-left:4px solid var(--who);border-radius:4px 14px 14px 4px;box-shadow:inset 0 0 30px color-mix(in srgb,var(--who) 18%,transparent),0 6px 24px var(--shade)}.story-name{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.story-nick{font-family:var(--font-display);font-size:var(--fs-l);color:var(--who);text-shadow:0 0 10px color-mix(in srgb,var(--who) 60%,transparent);letter-spacing:.03em}.story-fullname{font-size:var(--fs-xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em}.story-text{margin:6px 0 8px;min-height:2.6em;font-size:var(--fs-m);line-height:1.3;color:var(--text-main)}.story-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.story-dots{display:flex;gap:5px}.story-dots i{width:8px;height:8px;border-radius:50%;background:var(--glass-dim)}.story-dots i.done{background:color-mix(in srgb,var(--who) 50%,transparent)}.story-dots i.on{background:var(--who);box-shadow:0 0 8px var(--who)}.story-hint{font-size:var(--fs-xs);color:var(--text-dim);text-transform:uppercase;letter-spacing:.12em;animation:story-blink 1.4s ease-in-out infinite}@keyframes story-blink{50%{opacity:.35}}.story-actions{display:flex;flex-wrap:wrap;gap:var(--gap);margin-top:8px}.story-act{min-height:var(--tap);padding:0 18px;font-size:var(--fs-s)}.story-act.main{min-height:var(--tap-main);padding:0 28px;font-size:var(--fs-m);flex:1 1 auto;max-width:360px}.story-skip{position:absolute;top:var(--inset-t);right:var(--inset-r);min-height:var(--tap);padding:0 14px;display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-s);background:#080b18b8}.story-skip .ico{width:18px;height:18px}:root.is-low .story-dialog{gap:4px}:root.is-low .story-title{font-size:var(--fs-m)}:root.is-low .story-portrait-big{height:calc(var(--app-h) * .5)}:root.is-low .story-text{font-size:var(--fs-s);margin:4px 0 6px;min-height:2.4em}:root.is-low .story-nick{font-size:var(--fs-m)}:root.is-low .story-box{padding:8px 12px}:root.is-low .story-act.main{min-height:var(--tap)}:root.is-tiny .story-chips{display:none}@media(max-aspect-ratio:4/5){.story-stage{flex-direction:column;align-items:stretch}.story-portrait-slot{align-self:center}.story-portrait-big{height:min(calc(var(--app-h) * .34),300px)}.story-head{max-width:calc(100% - 130px)}}.story-toast{--who: var(--neon-pink);position:absolute;z-index:var(--z-toast);top:calc(var(--inset-t) + clamp(52px,12vh,84px));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:min(520px,70vw);padding:6px 14px 6px 6px;background:#080b18c7;border:1px solid color-mix(in srgb,var(--who) 70%,transparent);border-radius:12px;box-shadow:0 0 18px color-mix(in srgb,var(--who) 35%,transparent);pointer-events:none;animation:story-toast-in .25s ease-out}@keyframes story-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.story-toast-body{display:flex;flex-direction:column;min-width:0}.story-toast-nick{font-family:var(--font-display);font-size:var(--fs-s);color:var(--who);letter-spacing:.04em}.story-toast-text{font-size:var(--fs-s);color:var(--text-main);line-height:1.25}:root.is-low .story-toast{top:calc(var(--inset-t) + 46px)}:root.is-low .story-portrait-mini{width:38px;height:38px}.campaign-hero{display:flex;align-items:center;gap:var(--gap);padding:8px 10px;margin-bottom:var(--gap);border-radius:12px;background:linear-gradient(100deg,color-mix(in srgb,var(--who, var(--neon-pink)) 26%,transparent),#080b1899 70%);border:1px solid color-mix(in srgb,var(--who, var(--neon-pink)) 55%,transparent)}.campaign-hero .story-portrait{width:clamp(56px,13vh,96px)}.campaign-hero-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.campaign-hero-kicker{font-size:var(--fs-xs);color:var(--neon-cyan);text-transform:uppercase;letter-spacing:.12em}.campaign-hero-title{font-family:var(--font-display);font-size:var(--fs-l);color:var(--text-main);line-height:1.05}.campaign-hero-sub{font-size:var(--fs-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.campaign-hero .btn{min-height:var(--tap-main);padding:0 22px;font-size:var(--fs-m);flex:none}.campaign-bar{height:6px;border-radius:3px;background:var(--glass-dim);overflow:hidden;margin-top:4px}.campaign-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--neon-cyan),var(--neon-pink))}.chapter-card{--who: var(--neon-pink);margin-bottom:var(--gap);border-radius:12px;border:1px solid color-mix(in srgb,var(--who) 40%,transparent);background:linear-gradient(100deg,color-mix(in srgb,var(--who) 12%,transparent),transparent 60%);padding:8px}.chapter-card.locked{filter:saturate(.25) brightness(.7)}.chapter-card-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.chapter-card-head .story-portrait{width:clamp(48px,11vh,72px)}.chapter-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.chapter-card-num{font-size:var(--fs-xs);color:var(--who);text-transform:uppercase;letter-spacing:.12em}.chapter-card-name{font-family:var(--font-display);font-size:var(--fs-m);color:var(--text-main)}.chapter-card-boss{font-size:var(--fs-xs);color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-card-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:var(--fs-xs);color:var(--text-dim)}.chapter-card-side .chapter-count{font-family:var(--font-display);font-size:var(--fs-m);color:var(--text-main)}.chapter-card-side .ico{width:18px;height:18px}.story-events{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.story-events::-webkit-scrollbar{display:none}.story-event{--who: var(--neon-pink);position:relative;flex:0 0 auto;width:clamp(132px,17vw,180px);min-height:96px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;text-align:left;border-radius:10px;background:#080b18b8;border:1px solid var(--glass-dim)}.story-event.next{border-color:var(--neon-pink);box-shadow:0 0 14px var(--pink-soft)}.story-event.boss{border-color:color-mix(in srgb,var(--who) 80%,transparent);background:linear-gradient(160deg,color-mix(in srgb,var(--who) 22%,transparent),#080b18cc 70%)}.story-event.done{border-color:color-mix(in srgb,var(--gain) 55%,transparent)}.story-event.locked{opacity:.5}.story-event-top{display:flex;align-items:center;gap:5px;font-size:var(--fs-xs);color:var(--neon-cyan);text-transform:uppercase;letter-spacing:.08em}.story-event-top .ico{width:14px;height:14px}.story-event-name{font-family:var(--font-display);font-size:var(--fs-s);color:var(--text-main);line-height:1.1}.story-event-track{font-size:var(--fs-xs);color:var(--text-dim)}.story-event-prize{margin-top:auto;display:flex;align-items:center;gap:4px;font-size:var(--fs-xs);color:var(--gain)}.story-event-prize .ico{width:13px;height:13px}.story-event-trophy{font-size:var(--fs-xs);color:var(--headlight)}.story-event-rival{position:absolute;top:6px;right:6px}.story-event-rival .story-portrait{width:30px;border-radius:8px;font-size:9px}.story-event-state{position:absolute;bottom:6px;right:8px;display:flex;gap:1px;color:var(--headlight)}.story-event-state .ico{width:13px;height:13px}.story-event.done .story-event-state{color:var(--gain)}:root.is-low .campaign-hero{padding:4px 8px}:root.is-low .campaign-hero .story-portrait{width:48px}:root.is-low .campaign-hero-title{font-size:var(--fs-m)}:root.is-low .story-event{min-height:84px;padding:6px 8px}:root.is-low .chapter-card-head .story-portrait{width:42px}body.cine-mode .hud,body.cine-mode .touch-layer{visibility:hidden}.prologue-veil{position:absolute;inset:0;z-index:34;pointer-events:none;overflow:hidden}.prologue-veil.hidden{display:none}.prologue-veil.tappable{pointer-events:auto;cursor:pointer}.prologue-veil.paused{pointer-events:none}.prologue-bar{position:absolute;left:0;right:0;height:11%;background:#000;transform:scaleY(0);transition:transform .6s ease}.prologue-bar.top{top:0;transform-origin:top}.prologue-bar.bottom{bottom:0;transform-origin:bottom}.prologue-veil.boxed .prologue-bar{transform:scaleY(1)}.prologue-caption{position:absolute;left:calc(var(--inset-l, 16px) + 2%);bottom:calc(11% + 2.5vmin);display:flex;flex-direction:column;gap:.3em;max-width:min(80%,34em);opacity:0;transform:translateY(8px);transition:opacity .7s ease,transform .7s ease;text-shadow:0 2px 10px #000}.prologue-caption.on{opacity:1;transform:none}.prologue-caption-kicker{font-family:var(--font-display);font-size:clamp(14px,2.4vmin,22px);letter-spacing:.32em;color:var(--neon-cyan);text-transform:uppercase}.prologue-caption-text{font-family:var(--font-body);font-size:clamp(15px,2.8vmin,26px);color:var(--text-main)}.prologue-black{position:absolute;inset:0;background:#000;opacity:0;transition-property:opacity;transition-timing-function:ease}.prologue-black.on{opacity:1}.prologue-title{position:absolute;inset:0;display:grid;place-items:center;padding:0 8%;text-align:center;font-family:var(--font-display);font-size:clamp(22px,5.4vmin,54px);letter-spacing:.08em;color:var(--text-main);text-shadow:0 0 18px var(--neon-pink),0 0 40px rgba(255,45,120,.5);opacity:0;transition:opacity .8s ease}.prologue-title.on{opacity:1}.prologue-skip{position:absolute;right:calc(var(--inset-r, 16px) + 2%);bottom:calc(11% + 2vmin);font-family:var(--font-body);font-size:clamp(12px,2vmin,16px);color:var(--text-dim);letter-spacing:.12em;text-transform:uppercase;animation:prologue-blink 1.6s ease-in-out infinite}.prologue-skip.hidden{display:none}@keyframes prologue-blink{50%{opacity:.35}}.tut-pulse{animation:tut-pulse 1.3s ease-in-out infinite;position:relative;z-index:2}@keyframes tut-pulse{0%,to{box-shadow:0 0 #ffd21ad9,0 0 0 2px #ffd21ae6}50%{box-shadow:0 0 0 10px #ffd21a00,0 0 18px 4px #ffd21aa6}}@media(prefers-reduced-motion:reduce){.tut-pulse{animation:none;box-shadow:0 0 0 3px #ffd21af2}}.story-act.tut-skip{opacity:.8}.career-screen{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.cmap-stage{position:relative;flex:1;min-height:0;width:100%;container-type:size;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:#060914;border:1px solid var(--glass-dim)}.cmap-blur,.cmap-bg{position:absolute;background-size:cover;background-position:center;opacity:0;transition:opacity .42s ease}.cmap-blur{inset:-20px;filter:blur(16px) brightness(.45) saturate(1.2)}.cmap-blur.on,.cmap-bg.on{opacity:1}.cmap-frame{position:relative;width:min(100cqw,177.78cqh);aspect-ratio:16 / 9;container-type:size;overflow:hidden;touch-action:none;--n: max(44px, 5.2cqw);background:linear-gradient(160deg,#0b1226,#05070f)}.cmap-bg{inset:0}.cmap-layer{position:absolute;inset:0;pointer-events:none}.cmap-layer.swap{animation:cmap-in .38s ease backwards}@keyframes cmap-in{0%{opacity:0}}.cmap-layer>*{pointer-events:auto}.cmap-frame.locked .cmap-bg{filter:grayscale(.6) brightness(.62)}.cmap-road{position:absolute;inset:0;width:100%;height:100%;pointer-events:none!important}.cmap-road path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.cmap-road-glow{stroke:#22e6ff2e;stroke-width:14px}.cmap-road-base{stroke:#ffe9b08c;stroke-width:2.5px;stroke-dasharray:2 9}.cmap-road-lit{stroke:var(--neon-cyan);stroke-width:4px;filter:drop-shadow(0 0 6px var(--neon-cyan))}.cmap-spot{position:absolute;width:0;height:0;display:grid;place-items:center}.cmap-spot>*{position:absolute}.cmap-node{position:absolute;left:calc(var(--n) / -2);top:calc(var(--n) / -2);width:var(--n);height:var(--n);min-width:0;min-height:0;aspect-ratio:1 / 1;box-sizing:border-box;padding:0;margin:0;clip-path:none;transform:none;border-radius:50%;font-style:normal;letter-spacing:0;line-height:1;display:grid;place-items:center;font-family:var(--font-display);font-size:calc(var(--n) * .42);color:var(--text-main);background:radial-gradient(circle at 35% 30%,#1c2a52,#080c1c);border:2px solid var(--neon-cyan);box-shadow:0 0 10px #22e6ff99,inset 0 0 8px #0009;cursor:pointer}.cmap-node .ico{width:50%;height:50%}.cmap-node .cmap-num{display:block;line-height:1;text-align:center}.cmap-node.done{background:radial-gradient(circle at 35% 30%,#2a5a8a,#0a1a38);box-shadow:0 0 14px #22e6ffe6}.cmap-node.locked{border-color:#bec8e199;box-shadow:none;color:#aab3cc;background:#0c101ed1}.cmap-node.sel{transform:scale(1.12);border-color:var(--headlight, #ffe9b0)}.cmap-node.next{border-color:var(--neon-pink);box-shadow:0 0 14px var(--neon-pink)}.cmap-node.next:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--neon-pink);animation:cmap-pulse 1.5s ease-out infinite;pointer-events:none}@keyframes cmap-pulse{0%{transform:scale(.9);opacity:.9}to{transform:scale(1.5);opacity:0}}.cmap-node .cmap-mode{position:absolute;left:85.4%;top:14.6%;width:40%;height:40%;transform:translate(-50%,-50%);padding:7%;box-sizing:border-box;border-radius:50%;background:#0a1020;border:1px solid var(--glass-line);color:var(--neon-cyan)}.cmap-stars{top:calc(var(--n) / 2 + 2px);display:flex;gap:1px;align-items:center;line-height:0;padding:2px 5px;border-radius:9px;background:#060914b8;color:#ffd23a;transform:translate(-50%);left:0;white-space:nowrap}.cmap-stars .ico{width:max(10px,1.1cqw);height:max(10px,1.1cqw);opacity:.55}.cmap-stars .ico.on{opacity:1}.cmap-stars .ico.on svg{fill:currentColor}.cmap-car{left:0;top:calc(var(--n) / -2 - var(--n) * .72);width:calc(var(--n) * .8);height:calc(var(--n) * .8);margin-left:calc(var(--n) * -.4);display:grid;place-items:center;border-radius:50%;background:#d92b2b;color:#fff;box-shadow:0 0 12px #d92b2be6;pointer-events:none;animation:cmap-bob 1.6s ease-in-out infinite}.cmap-car .ico{width:70%;height:70%}@keyframes cmap-bob{50%{transform:translateY(-3px)}}.cmap-spot.boss{--tf: max(11px, 1.3cqw)}.cmap-spot.boss .cmap-node{--b: calc(var(--n) * 1.4);left:calc(var(--b) / -2);top:calc(var(--b) / -2);width:var(--b);height:var(--b);padding:0;overflow:visible;border:3px solid var(--who, var(--neon-pink));background:#14060c;box-shadow:0 0 16px var(--who, var(--neon-pink)),inset 0 0 10px #000000b3}.cmap-spot.boss .story-portrait{width:100%;height:100%;border-radius:50%;overflow:hidden;border:0}.cmap-spot.boss .story-portrait img{width:100%;height:100%;object-fit:cover}.cmap-spot.boss .cmap-node.locked{filter:saturate(.6) brightness(.8)}.cmap-node .cmap-node-lock{position:absolute;left:85.4%;top:14.6%;width:32%;height:32%;transform:translate(-50%,-50%);box-sizing:border-box;color:#fff;background:#0a1020;border:1px solid var(--glass-line);border-radius:50%;padding:5%;z-index:2}.cmap-crown{left:0;top:calc(var(--n) * -.7 - var(--n) * .62);width:calc(var(--n) * .7);margin-left:calc(var(--n) * -.35);color:#ffd23a;filter:drop-shadow(0 0 4px rgba(255,210,58,.8));pointer-events:none}.cmap-crown svg{width:100%;display:block}.cmap-boss-tag{left:0;top:calc(var(--n) * .7 - var(--tf) * .25);transform:translate(-50%);line-height:1.2;font-style:normal;padding:0 8px;border-radius:8px;background:var(--who, var(--neon-pink));color:#fff;font-family:var(--font-display);font-size:var(--tf);letter-spacing:.08em;z-index:1}.cmap-spot.boss .cmap-stars{top:calc(var(--n) * .7 + var(--tf) * .95 + 3px)}.cmap-label{position:absolute;left:2.2cqw;bottom:3cqh;display:flex;flex-direction:column;max-width:34cqw;text-shadow:0 2px 8px #000,0 0 3px #000;pointer-events:none!important}.cmap-label-num{font-family:var(--font-display);font-size:max(26px,5.6cqw);line-height:.9;color:#fff}.cmap-label-name{font-family:var(--font-display);font-size:max(13px,2.3cqw);text-transform:uppercase;letter-spacing:.04em;line-height:1;color:#fff}.cmap-label-count{font-size:max(12px,1.8cqw);color:#c9d2ee}.cmap-nav{position:absolute;left:50%;top:1cqh;transform:translate(-50%);display:flex;align-items:center;border-radius:24px;background:#060914b3;border:1px solid var(--glass-dim)}.cmap-arrow,.cmap-dot{min-width:44px;min-height:44px;width:44px;height:44px;padding:0;display:grid;place-items:center;background:none;border:0;box-shadow:none;clip-path:none;font-style:normal;color:var(--text-main)}.cmap-arrow:disabled{opacity:.3}.cmap-arrow .ico{width:22px;height:22px}.cmap-arrow.flip .ico{transform:scaleX(-1)}.cmap-dot span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;font-family:var(--font-display);font-size:14px;border:1px solid var(--glass-dim);color:#aab3cc}.cmap-dot.on span{background:var(--neon-cyan);color:#04101a;border-color:var(--neon-cyan);box-shadow:0 0 8px var(--neon-cyan)}.cmap-dot.locked:not(.on) span{opacity:.5}.cmap-pill{position:absolute;left:50%;bottom:2.5cqh;transform:translate(-50%);max-width:54cqw;min-height:44px;display:flex;align-items:center;gap:8px;white-space:nowrap}.cmap-pill span{overflow:hidden;text-overflow:ellipsis}.cmap-pill .ico{width:20px;height:20px;flex:none}.cmap-warn{position:absolute;left:50%;transform:translate(-50%);top:calc(1cqh + 52px);width:max-content;max-width:46cqw;text-align:center;padding:4px 8px;border-radius:8px;background:#060914cc;color:var(--headlight);font-size:max(11px,1.5cqw);letter-spacing:.03em;pointer-events:none!important}.cmap-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#03050c52;color:#fff;font-family:var(--font-display);font-size:max(14px,2.4cqw);text-align:center;text-shadow:0 2px 8px #000;pointer-events:none!important}.cmap-lock .ico{width:max(34px,6cqw);height:max(34px,6cqw)}.cmap-card{position:absolute;bottom:3cqh;width:min(44cqw,380px);box-sizing:border-box;display:grid;grid-template-columns:auto 1fr;gap:6px 10px;align-items:center;padding:8px 10px;border-radius:12px;background:linear-gradient(115deg,#18203eeb,#080b18f0);border:1px solid var(--who, var(--glass-line));box-shadow:0 0 14px #0009;animation:cmap-card-in .22s ease backwards}.cmap-card.left{left:2cqw}.cmap-card.right{right:2cqw}@keyframes cmap-card-in{0%{opacity:0;transform:translateY(14px)}}.cmap-card .story-portrait{width:max(44px,6cqw);height:max(44px,6cqw)}.cmap-card:not(:has(.story-portrait)){grid-template-columns:1fr}.cmap-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.cmap-card-top{display:flex;align-items:center;gap:5px;color:var(--neon-cyan);font-size:max(11px,1.4cqw);text-transform:uppercase;letter-spacing:.05em}.cmap-card-top .ico,.cmap-card-prize .ico{width:14px;height:14px}.cmap-card-name{font-family:var(--font-display);font-size:max(15px,2.1cqw);line-height:1.05;color:#fff}.cmap-card-track{font-size:max(11px,1.45cqw);color:#c9d2ee}.cmap-card-prize{display:flex;align-items:center;gap:4px;font-size:max(12px,1.5cqw);color:#ffd23a}.cmap-card-trophy{font-size:max(11px,1.35cqw);color:var(--headlight)}.cmap-start{grid-column:1 / -1;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px}.cmap-start .ico{width:20px;height:20px}.cmap-toast{position:absolute;left:50%;bottom:12cqh;transform:translate(-50%);max-width:70cqw;padding:6px 12px;border-radius:10px;background:#060914e6;border:1px solid var(--glass-line);color:var(--text-main);font-size:max(12px,1.6cqw);opacity:0;pointer-events:none;transition:opacity .2s;z-index:5}.cmap-toast.show{opacity:1}@media(prefers-reduced-motion:reduce){.cmap-node.next:after,.cmap-car,.cmap-layer.swap,.cmap-card{animation:none}}.career-screen .page-head{flex-wrap:nowrap;min-width:0}.career-screen .page-head .screen-title{overflow:visible;text-overflow:clip;flex:0 1 auto;min-width:0;padding:.08em .3em .08em .15em;line-height:1.05}.mc-root{--mc-scale: 1;--mc-alpha: .7;--mc-m: calc(var(--touch-main) * var(--mc-scale));--mc-s: calc(var(--touch-size) * var(--mc-scale));--mc-gap: var(--touch-gap);--mc-x: calc(var(--edge) + var(--safe-l));--mc-xr: calc(var(--edge) + var(--safe-r));--mc-y: calc(var(--edge) + var(--safe-b));touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.mc-left,.mc-right,.mc-stick{position:absolute;bottom:var(--mc-y)}.mc-left{left:var(--mc-x);display:flex;align-items:flex-end}.mc-right{right:var(--mc-xr);display:flex;flex-direction:column;align-items:flex-end;gap:var(--mc-gap)}.mc-arrows,.mc-pedals,.mc-extra{display:flex;gap:var(--mc-gap);align-items:flex-end}.mc-hold,.mc-calib{position:relative;pointer-events:auto;width:var(--mc-s);height:var(--mc-s);padding:0;border:0;border-radius:50%;color:var(--text-main);background:radial-gradient(circle,var(--glass-hi),var(--glass));box-shadow:inset 0 0 0 2px var(--glass-line),0 0 14px var(--cyan-soft);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:var(--mc-alpha);touch-action:none;-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;justify-content:center;font:inherit;transition:transform var(--dur-fast),background var(--dur-fast),box-shadow var(--dur-fast),opacity var(--dur-fast)}.mc-hold:after{content:"";position:absolute;inset:calc(var(--mc-gap) / -2);border-radius:inherit}.mc-hold>svg{width:50%;height:50%;fill:none;stroke:currentColor;pointer-events:none}.mc-hold>.mc-ribs{position:absolute;inset:0;width:100%;height:100%;fill:currentColor;stroke:none;opacity:.22}.mc-hold.is-down{opacity:1;transform:scale(.92);background:var(--neon-cyan);color:var(--color-bg);box-shadow:0 0 22px var(--neon-cyan)}.mc-arrow{width:var(--mc-m);height:var(--mc-m);border-radius:calc(var(--mc-m) * .28)}.mc-pedal{border-radius:calc(var(--mc-s) * .3)}.mc-pedal--gas{width:var(--mc-m);height:calc(var(--mc-m) * 1.15);box-shadow:inset 0 0 0 2px var(--neon-cyan),0 0 16px var(--cyan-soft)}.mc-pedal--brake{width:var(--mc-s);height:calc(var(--mc-m) * .95)}.mc-nitro{box-shadow:inset 0 0 0 2px var(--neon-pink),0 0 14px var(--pink-soft)}.mc-nitro.is-down{background:var(--neon-pink);color:var(--text-main);box-shadow:0 0 24px var(--neon-pink)}#ui-root:has(.hud-nitro.ready) .mc-nitro:not(.is-down){box-shadow:inset 0 0 0 3px var(--neon-pink),0 0 22px var(--neon-pink);animation:pulse 1.1s ease-in-out infinite}#ui-root:has(.hud-nitro:not(.ready):not(.boost)) .mc-nitro:not(.is-down){opacity:calc(var(--mc-alpha) * .6)}.mc-wheel{position:relative;pointer-events:auto;width:calc(var(--mc-m) * 1.45);height:calc(var(--mc-m) * 1.45);border-radius:50%;opacity:var(--mc-alpha);touch-action:none;filter:drop-shadow(0 0 8px var(--cyan-soft));transition:opacity var(--dur-fast),filter var(--dur-fast)}.mc-wheel__rim{display:block;width:100%;height:100%;pointer-events:none;will-change:transform}.mc-wheel.is-down{opacity:1;filter:drop-shadow(0 0 14px var(--neon-cyan))}.mc-calib{width:auto;min-width:calc(var(--mc-s) * 1.3);padding:0 calc(var(--mc-s) * .28);border-radius:calc(var(--mc-s) * .3);font-size:var(--fs-s);font-weight:700;letter-spacing:.08em}.mc-stick{left:var(--mc-x);pointer-events:auto;width:calc(var(--mc-m) * 1.7);height:calc(var(--mc-m) * 1.7);border-radius:50%;background:radial-gradient(circle,var(--glass),var(--glass-hi));box-shadow:inset 0 0 0 2px var(--glass-line),0 0 18px var(--cyan-soft);opacity:var(--mc-alpha);touch-action:none;transition:opacity var(--dur-fast),box-shadow var(--dur-fast)}.mc-stick.is-down{opacity:1;box-shadow:inset 0 0 0 2px var(--neon-cyan),0 0 24px var(--neon-cyan)}.mc-stick__knob{position:absolute;left:50%;top:50%;width:42%;height:42%;margin:-21% 0 0 -21%;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--neon-cyan),#0b6f80);box-shadow:0 0 16px var(--cyan-soft);pointer-events:none}.mc-extra{gap:var(--mc-gap)}.mc-root[data-scheme=joystick] .mc-hold{width:calc(var(--mc-s) * 1.2);height:calc(var(--mc-s) * 1.2)}@media(prefers-reduced-motion:reduce){#ui-root:has(.hud-nitro.ready) .mc-nitro:not(.is-down){animation:none}}.settings-screen{z-index:calc(var(--z-menu) + 3);background:radial-gradient(ellipse at center,var(--shade),var(--veil) 70%);-webkit-user-select:none;user-select:none}.settings-panel{display:flex;flex-direction:column;gap:var(--gap);width:min(100%,720px);max-height:calc(var(--app-h) * .94);padding:clamp(8px,1.8vmin,20px) calc(var(--slant) + clamp(10px,2vmin,24px));overflow:hidden}.settings-head{display:flex;align-items:center;gap:var(--gap);flex:none}.settings-head-ico{width:1.6em;height:1.6em;color:var(--neon-pink)}.settings-title{flex:1;text-align:left;font-size:var(--fs-l)}.settings-close{flex:none}.settings-tabs{display:flex;flex:none;gap:var(--gap)}.settings-tab{flex:1 1 0;min-width:0;padding:0 6px;font-size:var(--fs-s)}.settings-body{display:flex;flex-direction:column;gap:clamp(6px,1.4vmin,14px);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;touch-action:pan-y}.settings-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px var(--gap)}.settings-label{font-size:var(--fs-s);letter-spacing:.06em;text-transform:uppercase;color:var(--text-main)}.settings-section{margin:0;font-size:var(--fs-s);letter-spacing:.08em;text-transform:uppercase;color:var(--neon-cyan)}.settings-hint{margin:0;font-size:var(--fs-xs);color:var(--text-dim)}.settings-choice{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.settings-opt{min-height:var(--tap);padding:0 calc(var(--slant-s) + 8px);font-size:var(--fs-s)}.settings-switch{min-width:84px;min-height:var(--tap);font-size:var(--fs-s)}.settings-switch:not(.active){color:var(--text-dim)}.settings-slider{display:flex;align-items:center;gap:var(--gap);flex:1 1 180px;max-width:320px}.settings-range{flex:1;width:auto;min-width:0}.settings-value{flex:none;width:3.4em;text-align:right;font-size:var(--fs-s);color:var(--neon-cyan)}.settings-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--gap)}.settings-card{min-height:calc(var(--tap) + 8px);font-size:var(--fs-s)}.settings-keys{display:flex;flex-direction:column;gap:4px}.settings-key-row{display:flex;align-items:center;justify-content:space-between;gap:var(--gap);padding:4px 10px;box-shadow:inset 0 -1px 0 var(--glass-dim)}.settings-key-name{font-size:var(--fs-s);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.settings-kbd{font-family:inherit;font-size:var(--fs-s);padding:2px 10px;color:var(--neon-cyan);box-shadow:inset 0 0 0 1px var(--glass-line)}:root.is-low .settings-panel{max-height:calc(var(--app-h) * .98);padding-top:6px;padding-bottom:6px}:root.is-low .settings-title{font-size:var(--fs-m, var(--fs-l))}.settings-range{height:var(--tap);margin:0;accent-color:var(--neon-pink);cursor:pointer}.shop-screen,.offer-veil{z-index:calc(var(--z-menu) + 2);background:radial-gradient(ellipse at center,var(--shade),var(--veil) 70%)}.shop-panel{width:min(100%,980px);max-height:calc(var(--app-h) * .94);padding:clamp(10px,2vmin,22px) calc(var(--slant) + clamp(10px,2vmin,24px));overflow:hidden}.shop-body{display:flex;flex-direction:column;gap:var(--gap);width:100%;min-height:0;max-height:calc(var(--app-h) * .86)}.shop-head{display:flex;align-items:center;gap:var(--gap);width:100%}.shop-head-ico{width:1.6em;height:1.6em;color:var(--neon-pink)}.shop-title{flex:1;text-align:left;font-size:var(--fs-l)}.shop-close,.offer-close{flex:none;width:var(--tap);height:var(--tap)}.shop-status{display:flex;flex-wrap:wrap;gap:var(--gap)}.shop-status:empty{display:none}.shop-chip{padding:2px 10px;font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--neon-cyan);box-shadow:inset 0 0 0 1px var(--glass-line)}.shop-chip.vip{color:var(--headlight);box-shadow:inset 0 0 0 1px var(--headlight)}.shop-scroll{display:flex;flex-direction:column;gap:clamp(8px,1.6vmin,16px);overflow-y:auto;overscroll-behavior:contain;min-height:0;pointer-events:auto;touch-action:pan-y}.shop-sec-title{margin:0 0 6px;text-align:left;font-family:var(--font-display);font-style:italic;font-size:var(--fs-m);letter-spacing:.08em;color:var(--text-dim)}.shop-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:var(--gap)}.shop-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;box-sizing:border-box;min-width:0;padding:10px 10px 12px;text-align:center;background:var(--scan),linear-gradient(160deg,var(--glass-hi),var(--glass));box-shadow:inset 0 0 0 1px var(--glass-line);pointer-events:auto}.shop-card.free{box-shadow:inset 0 0 0 1px var(--gain),inset 0 0 22px var(--gain-soft)}.shop-card.premium{box-shadow:inset 0 0 0 2px var(--neon-pink),inset 0 0 30px var(--pink-soft)}.shop-card.owned{opacity:.7}.shop-buy.soon{opacity:.55}.shop-art{width:clamp(34px,7vmin,56px);height:clamp(34px,7vmin,56px);color:var(--neon-cyan)}.shop-card.free .shop-art{color:var(--gain)}.shop-card.premium .shop-art{color:var(--neon-pink)}.shop-card-title{font-family:var(--font-display);font-style:italic;text-transform:uppercase;font-size:var(--fs-m);letter-spacing:.04em}.shop-card-desc{margin:0;font-size:var(--fs-xs);color:var(--text-dim);line-height:1.3}.shop-amount{font-family:var(--font-display);font-size:var(--fs-l);color:var(--headlight)}.shop-note{margin:4px 0 0;font-size:var(--fs-xs);color:var(--text-dim)}.shop-actions{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:auto}.shop-card>.btn{width:100%;margin-top:auto}.shop-flag{position:absolute;top:6px;right:6px;padding:1px 8px;font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.05em;color:var(--color-bg);background:var(--gain)}.shop-buy{flex-wrap:wrap;white-space:normal}.btn-ad{white-space:normal;color:var(--color-bg);background:linear-gradient(100deg,var(--gain),var(--neon-cyan));box-shadow:inset 0 0 0 1px var(--gain),inset 0 -3px 0 var(--shade)}.btn-ad:disabled{background:var(--glass);color:var(--text-dim)}.btn-ghost{font-size:var(--fs-s)}.btn-link{min-height:calc(var(--tap) * .8);font-size:var(--fs-xs);font-style:normal;text-transform:none;color:var(--text-dim);background:transparent;box-shadow:none;clip-path:none}.shop-cta{position:relative;box-shadow:inset 0 0 0 1px var(--headlight),inset 0 0 22px var(--gain-soft)}.shop-cta .menu-btn-ico{color:var(--headlight)}.shop-badge{margin-left:auto;padding:1px 8px;font-size:var(--fs-xs);font-style:normal;color:var(--color-bg);background:var(--gain)}.shop-cta.has-free{animation:shop-pulse 2.4s ease-in-out infinite}@keyframes shop-pulse{50%{box-shadow:inset 0 0 0 2px var(--gain),inset 0 0 30px var(--gain-soft)}}[data-action=open-shop]{pointer-events:auto;cursor:pointer}.wallet-plus{min-width:calc(var(--tap) * .7);min-height:calc(var(--tap) * .7);padding:0 6px;color:var(--color-bg);background:var(--gain)}.offer-card{position:relative;width:min(100%,440px);max-height:calc(var(--app-h) * .92);gap:clamp(6px,1.4vmin,12px)}.offer-card.premium{box-shadow:inset 0 2px 0 var(--neon-pink),inset 0 0 0 2px var(--neon-pink),inset 0 0 48px var(--pink-soft)}.offer-card.free{box-shadow:inset 0 2px 0 var(--gain),inset 0 0 0 1px var(--gain),inset 0 0 40px var(--gain-soft)}.offer-close{position:absolute;top:6px;right:calc(var(--slant) + 2px)}.offer-kicker{margin:0;font-size:var(--fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--neon-cyan)}.offer-need{font-family:var(--font-display);font-size:var(--fs-l);color:var(--neon-pink)}.offer-art{width:clamp(56px,14vmin,110px);height:clamp(56px,14vmin,110px);color:var(--headlight);filter:drop-shadow(0 0 12px var(--pink-soft))}.offer-card.free .offer-art{color:var(--gain)}.offer-title{font-size:var(--fs-l)}.offer-sub{margin:0;color:var(--text-dim)}.offer-amount{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--headlight)}.offer-lines{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;text-align:left}.offer-lines li:before{content:"+ ";color:var(--gain);font-weight:700}.offer-flag{top:10px;left:calc(var(--slant) + 6px);right:auto}.offer-actions{display:flex;flex-direction:column;gap:8px;width:100%}.offer-actions .btn{width:100%;min-height:var(--tap-main, var(--tap))}.offer-foot{display:flex;justify-content:center;gap:var(--gap);flex-wrap:wrap}.offer-veil:not(.hidden) .offer-card{animation:offer-in .22s ease-out backwards}@keyframes offer-in{0%{opacity:0;translate:0 16px}}.finish-bonus{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--gap);width:100%}.finish-bonus .btn-ad{min-height:var(--tap-main, var(--tap));font-size:var(--fs-m)}.finish-double{animation:shop-pulse 2s ease-in-out infinite}.finish-bonus-done{font-family:var(--font-display);font-size:var(--fs-m);color:var(--gain)}.finish-bonus-note{width:100%;font-size:var(--fs-xs);color:var(--neon-cyan)}.ad-veil{position:fixed;inset:0;z-index:calc(var(--z-loading) + 1);display:flex;align-items:center;justify-content:center;background:var(--color-bg);pointer-events:auto}.ad-veil-ico{width:64px;height:64px;color:var(--glass-line)}.shop-toast{z-index:calc(var(--z-menu) + 3)}:root.is-low .shop-row{grid-auto-flow:column;grid-template-columns:none;grid-auto-columns:minmax(180px,46%);overflow-x:auto}:root.is-low .shop-art{width:30px;height:30px}:root.is-low .offer-art{width:48px;height:48px}@media(prefers-reduced-motion:reduce){.shop-cta.has-free,.finish-double,.offer-veil:not(.hidden) .offer-card{animation:none}}.hub-testdrive{width:100%;margin:4px 0;min-height:var(--tap);font-size:var(--fs-s)}.cmap-testdrive{position:absolute;left:50%;top:calc(1cqh + 92px);transform:translate(-50%);width:max-content;max-width:46cqw;margin:0;z-index:3}
