:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--ink: #f3fbff;--muted: #a9c3d1;--navy: #07172f;--panel: rgba(6, 24, 43, .82);--line: rgba(180, 226, 242, .22);--cyan: #68e9ff;--coral: #ff5a50;--gold: #ffd45d;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}body{background:var(--navy);color:var(--ink);-webkit-tap-highlight-color:transparent;user-select:none}button{border:0;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}#app{position:relative;isolation:isolate}#game-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none}#vignette{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(1,12,27,.22),transparent 34%,transparent 65%,rgba(1,9,20,.48)),radial-gradient(circle at 50% 42%,transparent 42%,rgba(1,12,27,.34) 100%)}.is-hidden{display:none!important}.screen{position:absolute;inset:0;z-index:8;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}#loading{z-index:20;align-content:center;justify-items:center;background:radial-gradient(circle at 50% 38%,rgba(46,117,156,.5),transparent 30%),linear-gradient(145deg,#07162d,#0b3154 58%,#061329);opacity:0;transition:opacity .24s ease}#loading.screen--visible{opacity:1}.loading-mark{display:flex;align-items:flex-end;gap:5px;height:42px;margin-bottom:15px}.loading-mark span{width:22px;height:35px;background:linear-gradient(145deg,#bff5ff,#43c8e7);clip-path:polygon(50% 0,100% 100%,0 100%);animation:peak .9s ease-in-out infinite alternate}.loading-mark span:first-child{height:24px;animation-delay:-.3s}.loading-mark span:last-child{height:29px;animation-delay:-.6s}@keyframes peak{to{transform:translateY(-6px);filter:brightness(1.3)}}.eyebrow{margin:0 0 12px;color:var(--cyan);font-size:clamp(.65rem,1.4vw,.82rem);font-weight:800;letter-spacing:.22em}h1,h2{margin:0;font-weight:950;letter-spacing:-.075em;line-height:.78}h1{font-size:clamp(3.5rem,10vw,7.6rem)}h1 em{color:var(--coral);font-style:normal}h2{font-size:clamp(2.75rem,8vw,5.5rem)}#loading h1{text-align:center;font-size:clamp(3.2rem,9vw,6.8rem)}#loading-status{margin:32px 0 12px;color:var(--muted);font-size:.8rem;letter-spacing:.08em}.loading-track{width:min(280px,66vw);height:3px;overflow:hidden;background:#ffffff26}.loading-track i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--coral));transition:width .3s ease}.menu{place-items:center start;padding-left:clamp(28px,9vw,150px);background:linear-gradient(90deg,rgba(2,13,28,.86) 0%,rgba(2,13,28,.34) 45%,transparent 70%)}.menu-panel{container-type:inline-size;width:min(480px,89vw);border:1px solid rgba(174,222,239,.2);border-radius:24px;padding:clamp(24px,4vw,38px);background:linear-gradient(145deg,rgba(19,58,81,.35),transparent 48%),#031222b8;box-shadow:0 28px 80px #0007116b,inset 0 1px #ffffff0d;backdrop-filter:blur(14px);animation:rise .42s ease-out both}.menu-panel h1{width:100%;max-width:100%;font-size:clamp(2.8rem,8vw,5.5rem);font-size:clamp(2.65rem,20cqi,5.5rem)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}.tagline{margin:24px 0 26px;color:#d3e7ee;font-size:clamp(.95rem,2vw,1.15rem);letter-spacing:.08em}.menu-best{display:flex;width:min(330px,100%);align-items:baseline;justify-content:space-between;margin-bottom:0;padding:13px 15px;border:1px solid var(--line);border-radius:11px;background:#04142585;backdrop-filter:blur(8px)}.menu-stats{display:grid;width:min(330px,100%);grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-bottom:18px}.menu-stats .menu-best{width:100%}.menu-wallet{display:flex;min-width:96px;flex-direction:column;align-items:flex-end;justify-content:center;border:1px solid rgba(255,212,93,.25);border-radius:11px;padding:8px 11px;background:#ffd45d0f}.menu-wallet span{color:#d9bd68;font-size:.52rem;font-weight:900;letter-spacing:.11em}.menu-wallet strong{color:var(--gold);font-size:1.12rem;font-variant-numeric:tabular-nums}.basecamp-actions{display:grid;width:min(330px,100%);grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.basecamp-actions .secondary-button{min-height:44px;font-size:.66rem}.menu-best span{color:var(--muted);font-size:.66rem;font-weight:800;letter-spacing:.16em}.menu-best strong{color:var(--gold);font-size:1.35rem}.primary-button,.secondary-button{display:flex;width:min(330px,100%);min-height:56px;align-items:center;justify-content:center;gap:16px;border-radius:9px;font-weight:900;letter-spacing:.08em;transition:transform .14s ease,filter .14s ease,background .14s ease}.primary-button{background:linear-gradient(135deg,#ff6559,#e8433a);box-shadow:0 12px 32px #ff484147,inset 0 1px #ffffff4d}.primary-button span{font-size:1.45rem}.primary-button:hover,.secondary-button:hover{filter:brightness(1.12);transform:translateY(-2px)}.primary-button:active,.secondary-button:active{transform:translateY(1px) scale(.99)}.secondary-button{border:1px solid var(--line);background:#84bfd41a}.text-button{min-height:46px;padding:0 14px;background:transparent;color:#c7dce5;font-size:.75rem;font-weight:850;letter-spacing:.14em}.text-button:hover{color:#fff}.controls-hint{margin:10px 0 0;color:#c9e2ec8c;font-size:.62rem;font-weight:750;letter-spacing:.14em}.hud{position:absolute;top:max(16px,env(safe-area-inset-top));left:50%;z-index:5;display:grid;width:min(990px,calc(100% - 320px));grid-template-columns:minmax(150px,190px) minmax(270px,370px) minmax(150px,190px);grid-template-rows:auto 30px;align-items:start;justify-content:space-between;gap:5px clamp(24px,4vw,64px);transform:translate(-50%);pointer-events:none}.hud-panel{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#62eefff2,#48d2ef33 18%,#5cdbf07a 70%,#63efffe6);clip-path:polygon(13% 0,87% 0,100% 34%,96% 74%,86% 100%,14% 100%,4% 74%,0 34%);filter:drop-shadow(0 13px 18px rgba(0,7,18,.48))}.hud-panel:before{position:absolute;inset:1.5px;z-index:0;background:linear-gradient(145deg,rgba(35,104,132,.22),transparent 42%),linear-gradient(180deg,#031829f5,#020e1ce6);clip-path:inherit;content:"";backdrop-filter:blur(13px)}.hud-panel>*{position:relative;z-index:1}.score-card{display:flex;min-height:88px;flex-direction:column;justify-content:center;padding:13px 34px 14px;text-shadow:0 2px 14px #00101f}.score-card--right{align-items:center}.score-card span{color:#d7edf4;font-size:.66rem;font-weight:950;letter-spacing:.16em}.score-card strong{margin-top:1px;font-size:clamp(1.7rem,2.6vw,2.45rem);line-height:1;letter-spacing:-.045em;font-variant-numeric:tabular-nums}.status-center{display:flex;min-width:0;min-height:112px;flex-direction:column;gap:6px;padding:11px 38px 15px;clip-path:polygon(12% 0,88% 0,100% 30%,94% 76%,82% 100%,18% 100%,6% 76%,0 30%)}.status-pills{display:flex;align-items:center;justify-content:center;gap:7px}.status-pill{display:inline-flex;min-height:32px;align-items:center;justify-content:center;border:1px solid rgba(99,239,255,.48);padding:0 16px;background:#0d30429e;color:var(--cyan);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%);font-size:.7rem;font-weight:950;letter-spacing:.1em;backdrop-filter:blur(8px)}.status-pill:first-child{min-width:58px;font-size:.9rem}.status-pill:last-child{min-width:130px}.status-pill.is-active{border-color:var(--gold);color:var(--gold);box-shadow:0 0 18px #ffd45d3d}.status-pill.is-off{opacity:.4;filter:grayscale(1)}.combo-meter{position:relative;height:20px;overflow:visible}.combo-meter:before{position:absolute;right:4px;bottom:0;left:4px;height:6px;border:1px solid rgba(111,206,228,.1);border-radius:999px;background-color:#6fb1c414;background-image:radial-gradient(circle,rgba(161,216,228,.22) 0 2px,transparent 2.5px);background-size:13px 6px;content:""}.combo-meter i{position:absolute;right:4px;bottom:0;left:4px;height:6px;border-radius:999px;background:linear-gradient(90deg,#4ddced,#ffd15c);box-shadow:0 0 14px #4ddced66;transform:scaleX(0);transform-origin:left;transition:transform .14s ease-out}.combo-meter span{position:absolute;inset:0 0 auto;display:grid;height:12px;place-items:center;color:#e2f6fbd1;font-size:.5rem;font-weight:950;letter-spacing:.14em;text-shadow:0 1px 4px #00111f}.combo-meter.is-hot span{color:#fff4c4}.boost-meter{position:relative;height:17px;overflow:hidden;border:1px solid rgba(104,233,255,.2);background:#020e1ab8;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}.boost-meter i{position:absolute;inset:0;background:linear-gradient(90deg,#28b7df,#74f2ff 68%,#fff1a8);box-shadow:0 0 16px #53e5ff85;transform:scaleX(0);transform-origin:left;transition:transform .13s ease-out}.boost-meter span{position:absolute;inset:0;display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 7px;color:#e1f6fbbd;font-size:.51rem;font-weight:950;letter-spacing:.12em;text-shadow:0 1px 4px #00111f}.boost-meter b{font-size:inherit}.boost-meter.is-ready{border-color:#ffe68b94;animation:boost-ready .85s ease-in-out infinite alternate}.boost-meter.is-active span{color:#fff7cf}.route-progress{display:flex;width:min(340px,92%);align-items:center;justify-self:center;gap:7px;grid-column:2;grid-row:2}.route-flag{width:18px;flex:0 0 18px;color:var(--cyan);font-size:1rem;font-weight:950;line-height:1;text-shadow:0 0 12px rgba(94,237,255,.8)}.route-flag--finish{color:#f4fbff;text-shadow:0 2px 7px #00101f}.route-track{position:relative;width:100%;height:5px;border:1px solid rgba(208,239,247,.48);border-radius:999px;background:#000913c2;box-shadow:0 2px 8px #00071099}.route-track i{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,#44dff5,#b8f9ff);box-shadow:0 0 9px #4ee4f9eb;transform:scaleX(0);transform-origin:left;transition:transform .14s linear}.route-track b{position:absolute;top:50%;width:3px;height:12px;border:1px solid rgba(202,231,238,.58);background:#092033;transform:translate(-50%,-50%)}.route-track b:nth-of-type(1){left:25%}.route-track b:nth-of-type(2){left:50%}.route-track b:nth-of-type(3){left:75%}@keyframes boost-ready{to{box-shadow:0 0 15px #68e9ff4d}}.icon-button{position:absolute;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:7;display:grid;width:64px;height:64px;place-items:center;border:1px solid rgba(100,232,252,.7);background:linear-gradient(145deg,rgba(37,108,134,.2),transparent 45%),#02101de0;box-shadow:0 12px 26px #0007116b,inset 0 0 0 4px #021625b8;clip-path:polygon(22% 0,78% 0,100% 22%,100% 78%,78% 100%,22% 100%,0 78%,0 22%);font-size:1.25rem;font-weight:950;text-shadow:0 2px 8px #00111f;backdrop-filter:blur(10px)}.icon-button--audio{right:auto;left:max(18px,env(safe-area-inset-left));font-size:1.45rem}.icon-button.is-muted{color:#9bb2bc}.jump-button,.boost-button{position:absolute;right:max(20px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:6;display:none;width:86px;height:86px;place-items:center;border:2px solid rgba(255,255,255,.7);border-radius:50%;background:#ff5a50cc;box-shadow:0 9px 30px #0000003d;font-size:.68rem;font-weight:900;letter-spacing:.08em;backdrop-filter:blur(7px)}.jump-button span,.boost-button span{display:block;font-size:1.2rem}.boost-button{right:auto;left:max(20px,env(safe-area-inset-left));border-color:#d0faffb3;background:#1991b3c7}.boost-button:disabled{cursor:default;opacity:.38;filter:grayscale(.55)}.boost-button.is-ready{border-color:#fff0a1;background:#22b7d6eb;box-shadow:0 0 28px #68e9ff59;animation:boost-ready .65s ease-in-out infinite alternate}.speedometer{--speed-angle: 0deg;position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:6;display:grid;width:clamp(152px,13.2vw,208px);aspect-ratio:1;place-items:center;overflow:hidden;background:linear-gradient(145deg,rgba(57,161,192,.18),transparent 40%),#02111fdb;box-shadow:0 18px 42px #00050f70,inset 0 0 0 1px #67e9fcb8,inset 0 0 0 5px #032436b3;clip-path:polygon(23% 1%,77% 1%,96% 18%,100% 68%,83% 94%,58% 100%,20% 94%,3% 74%,1% 32%);filter:drop-shadow(0 0 12px rgba(51,209,239,.16));pointer-events:none}.speedometer:before,.speedometer:after{position:absolute;inset:12%;border-radius:50%;content:"";-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));mask:radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px))}.speedometer:before{background:conic-gradient(from 224deg,#57e9ff 0deg,#7bf3ff var(--speed-angle),rgba(113,208,226,.16) var(--speed-angle),rgba(113,208,226,.16) 224deg,#ff695e 224deg,#ff695e 272deg,transparent 272deg);filter:drop-shadow(0 0 7px rgba(79,228,250,.62))}.speedometer:after{inset:8%;background:repeating-conic-gradient(from 224deg,rgba(215,251,255,.92) 0 1.8deg,transparent 1.8deg 13.6deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px));mask:radial-gradient(farthest-side,transparent calc(100% - 10px),#000 calc(100% - 9px));opacity:.92}.speedometer-core{position:relative;z-index:1;display:flex;width:70%;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:radial-gradient(circle,#0d3042a8,#010d19eb 72%);box-shadow:inset 0 0 25px #49d3ed14;transform:translateY(5%)}.speedometer strong{font-size:clamp(2.5rem,4.2vw,4.1rem);font-style:italic;font-weight:950;line-height:.92;letter-spacing:-.07em;text-shadow:0 3px 16px #00101e;font-variant-numeric:tabular-nums}.speedometer span{margin-top:11px;color:#dcecf1;font-size:clamp(.62rem,1vw,.82rem);font-style:italic;font-weight:950;letter-spacing:.08em}.boost-deck{position:absolute;bottom:max(16px,env(safe-area-inset-bottom));left:50%;z-index:6;display:flex;width:min(340px,31vw);min-width:260px;height:58px;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:10px 24px 7px;background:linear-gradient(135deg,#57e5fab8,#39779038);clip-path:polygon(7% 0,93% 0,100% 36%,94% 100%,6% 100%,0 36%);filter:drop-shadow(0 12px 18px rgba(0,6,15,.45));transform:translate(-50%);pointer-events:none}.boost-deck:before{position:absolute;inset:1.5px;background:linear-gradient(180deg,#031e30f2,#020e1cf5);clip-path:inherit;content:""}.boost-deck-track,.boost-deck>span{position:relative;z-index:1}.boost-deck-track{width:100%;height:16px;overflow:hidden;border:1px solid rgba(170,240,250,.32);background:repeating-linear-gradient(100deg,#80bfcc21 0 28px,#010b15c7 28px 33px);clip-path:polygon(5px 0,100% 0,calc(100% - 5px) 100%,0 100%)}.boost-deck-track i{position:absolute;inset:0;background:repeating-linear-gradient(100deg,#72ecff 0 28px,#012937d1 28px 33px);box-shadow:0 0 18px #46e1fa9e;transform:scaleX(0);transform-origin:left;transition:transform .13s ease-out}.boost-deck>span{color:#f2fbff;font-size:.61rem;font-weight:950;letter-spacing:.18em;text-shadow:0 2px 6px #00101e}.boost-deck.is-active{filter:drop-shadow(0 0 18px rgba(104,233,255,.48))}.toast{position:absolute;top:25%;left:50%;z-index:12;padding:10px 17px;border:1px solid rgba(101,233,255,.5);border-radius:999px;background:#031425cc;color:var(--cyan);font-size:.7rem;font-weight:900;letter-spacing:.12em;opacity:0;transform:translate(-50%,12px);transition:.18s ease;pointer-events:none}.toast.is-visible{opacity:1;transform:translate(-50%)}.tutorial{position:absolute;inset:0;z-index:9;display:flex;align-items:center;justify-content:center;gap:15px;padding:24px;background:#020e1d94;backdrop-filter:blur(6px)}.tutorial-card{display:flex;width:min(240px,27vw);min-height:190px;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:18px;background:var(--panel);text-align:center;box-shadow:0 18px 52px #00000040}.tutorial-icon{margin-bottom:18px;color:var(--cyan);font-size:3rem}.tutorial-card strong{font-size:.83rem;letter-spacing:.13em}.tutorial-card small{margin-top:8px;padding:0 15px;color:var(--muted);line-height:1.45}.tutorial>.primary-button{width:180px}.modal{position:absolute;inset:0;z-index:10;display:grid;place-items:center;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));background:#020d1ba3;backdrop-filter:blur(9px)}.modal-card{position:relative;display:flex;width:min(430px,94vw);max-height:94vh;flex-direction:column;align-items:center;gap:12px;overflow:auto;border:1px solid var(--line);border-radius:22px;padding:clamp(28px,6vh,48px);background:linear-gradient(155deg,rgba(15,53,75,.45),transparent 45%),#031323f0;box-shadow:0 28px 90px #00000075;animation:rise .22s ease-out both}.modal-card h2{margin-bottom:24px}.modal-card .primary-button,.modal-card .secondary-button{width:100%}.modal-card--result{width:min(520px,94vw);padding-block:clamp(22px,4vh,38px)}.result-score{display:flex;flex-direction:column;align-items:center;margin:0 0 5px}.result-score span{color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.2em}.result-score strong{color:var(--ink);font-size:clamp(3rem,11vw,5rem);line-height:1;font-variant-numeric:tabular-nums}.result-grid{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:4px}.result-grid span{display:flex;min-height:38px;align-items:center;justify-content:space-between;border:1px solid rgba(165,222,240,.12);border-radius:8px;padding:0 10px;background:#75b9cf0d;color:var(--muted);font-size:.56rem;font-weight:800;letter-spacing:.1em}.result-grid strong{margin-left:5px;color:var(--gold);font-size:.72rem}.result-best{width:100%;margin-bottom:10px;color:var(--muted);font-size:.57rem;font-weight:900;letter-spacing:.13em;text-align:center}.result-best strong{margin-left:7px;color:#fff;font-size:.84rem}.result-progression{display:grid;width:100%;grid-template-columns:.78fr 1.2fr 1.2fr;gap:7px;margin:0 0 8px}.result-wallet,.result-progress-card{display:flex;min-width:0;min-height:72px;flex-direction:column;justify-content:center;border:1px solid rgba(165,222,240,.13);border-radius:10px;padding:8px 10px;background:#75b9cf0d}.result-wallet span,.result-progress-card span{color:var(--muted);font-size:.49rem;font-weight:900;letter-spacing:.11em}.result-wallet strong{margin:3px 0;color:var(--gold);font-size:1.05rem}.result-wallet small,.result-progress-card small{overflow:hidden;color:#9db8c4;font-size:.52rem;text-overflow:ellipsis;white-space:nowrap}.result-progress-card>div:first-child{display:flex;min-width:0;flex-direction:column}.result-progress-card strong{overflow:hidden;margin:2px 0 5px;font-size:.63rem;text-overflow:ellipsis;white-space:nowrap}.progress-track{width:100%;height:5px;overflow:hidden;border-radius:999px;background:#acdbea1f}.progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--gold));transition:width .3s ease-out}.result-progress-card small{margin-top:5px}.result-reward-message{grid-column:1 / -1;min-height:0;margin:0;color:var(--gold);font-size:.59rem;font-weight:900;letter-spacing:.08em;text-align:center}.is-gold{color:var(--gold)}.modal-card--wide{width:min(680px,94vw)}.basecamp-card{width:min(880px,96vw);align-items:stretch;padding:clamp(22px,4vw,36px)}.basecamp-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-right:48px}.basecamp-heading h2{margin:0;font-size:clamp(2.5rem,7vw,4.5rem)}.crystal-wallet{display:flex;min-width:130px;flex-direction:column;align-items:flex-end;border:1px solid rgba(255,212,93,.25);border-radius:11px;padding:9px 12px;background:#ffd45d12}.crystal-wallet span{color:#d9bd68;font-size:.54rem;font-weight:900;letter-spacing:.12em}.crystal-wallet strong{color:var(--gold);font-size:1.35rem;font-variant-numeric:tabular-nums}.garage-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:13px}.vehicle-card{position:relative;display:flex;min-width:0;min-height:228px;flex-direction:column;align-items:stretch;overflow:hidden;border:1px solid rgba(165,222,240,.16);border-radius:15px;padding:0;background:radial-gradient(circle at 50% 25%,color-mix(in srgb,var(--vehicle-glow) 22%,transparent),transparent 44%),#6babc30e;text-align:left;transition:.15s ease}.vehicle-card:hover{border-color:color-mix(in srgb,var(--vehicle-glow) 60%,white 12%);transform:translateY(-3px)}.vehicle-card.is-selected{border-color:var(--gold);box-shadow:0 0 24px #ffd45d21}.vehicle-swatch{position:relative;display:block;height:92px;background:linear-gradient(160deg,transparent 20%,rgba(255,255,255,.04))}.vehicle-swatch:before{position:absolute;top:27px;left:50%;width:82px;height:36px;border:5px solid var(--vehicle-deck);border-radius:50% 50% 35% 35%;background:linear-gradient(100deg,var(--vehicle-body),var(--vehicle-accent));box-shadow:-25px 19px 0 -14px var(--vehicle-deck),25px 19px 0 -14px var(--vehicle-deck),0 17px 20px var(--vehicle-glow);content:"";transform:translate(-50%) perspective(90px) rotateX(18deg)}.vehicle-card-content{display:flex;min-height:128px;flex:1;flex-direction:column;padding:11px}.vehicle-card-content>small{margin-bottom:5px;color:var(--cyan);font-size:.5rem;font-weight:900;letter-spacing:.11em}.vehicle-card-content strong{font-size:.8rem;letter-spacing:.03em}.vehicle-card-content p{flex:1;margin:6px 0 10px;color:var(--muted);font-size:.59rem;line-height:1.4}.vehicle-action{display:grid;min-height:34px;place-items:center;border-radius:7px;background:#69ddf01f;color:var(--cyan);font-size:.56rem;font-weight:950;letter-spacing:.08em}.vehicle-card.is-selected .vehicle-action{background:#ffd45d21;color:var(--gold)}.vehicle-card.is-unaffordable .vehicle-action{color:#8ca3ad;filter:grayscale(1)}.basecamp-note{margin:2px 0 0;color:#849eaa;font-size:.58rem;text-align:center}.progress-columns{display:grid;grid-template-columns:.95fr 1.35fr;gap:18px;margin-top:15px}.progress-columns h3{margin:0 0 8px;color:#b8d2dc;font-size:.64rem;letter-spacing:.14em}.progress-list{display:grid;gap:7px}.progress-item{display:grid;min-height:60px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;border:1px solid rgba(165,222,240,.13);border-radius:10px;padding:9px 11px;background:#75b9cf0b}.progress-item.is-complete{border-color:#ffd45d42;background:#ffd45d0e}.progress-copy{min-width:0}.progress-copy strong,.progress-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.progress-copy strong{font-size:.68rem}.progress-copy small{margin:3px 0 6px;color:var(--muted);font-size:.56rem}.progress-copy .progress-track{height:4px}.progress-value{min-width:54px;color:var(--gold);font-size:.55rem;font-weight:900;text-align:right}.close-button{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;background:#ffffff12;color:#cfe3eb;font-size:1.7rem}.guide-grid{display:grid;width:100%;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:15px}.guide-grid>div{display:flex;min-height:88px;align-items:center;gap:13px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#7dbed50f}.guide-grid b{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:10px;background:#63e8ff1f;color:var(--cyan);font-size:1.45rem}.guide-grid span{color:var(--muted);font-size:.76rem;line-height:1.35}.guide-grid strong{display:block;color:#fff;font-size:.69rem;letter-spacing:.11em}@media(hover:none),(pointer:coarse){.jump-button,.boost-button{display:grid}}@media(max-width:680px){.jump-button,.boost-button{display:grid}.menu{place-items:end center;padding:20px 20px max(34px,env(safe-area-inset-bottom));background:linear-gradient(0deg,rgba(2,13,28,.94) 0%,rgba(2,13,28,.36) 54%,transparent 75%)}.menu-panel{display:flex;flex-direction:column;align-items:center;text-align:center;border-right:1px solid rgba(174,222,239,.2)}.menu-panel h1{font-size:clamp(2.65rem,20cqi,4.8rem)}.tagline{margin:14px 0 16px}.controls-hint{display:none}.hud{top:max(10px,env(safe-area-inset-top));width:calc(100% - 132px);min-width:250px;grid-template-columns:minmax(54px,.82fr) minmax(110px,1.45fr) minmax(54px,.82fr);grid-template-rows:auto 22px;gap:2px 5px}.status-center{min-width:0;min-height:80px;gap:3px;padding:6px 10px 9px}.status-pills{flex-direction:row;gap:3px}.status-pill{min-height:22px;padding:0 4px;font-size:.42rem}.status-pill:first-child{min-width:36px;font-size:.58rem}.status-pill:last-child{min-width:64px}.score-card{min-height:64px;padding:7px 11px}.score-card span{font-size:.43rem}.score-card strong{font-size:clamp(.92rem,4.8vw,1.35rem)}.combo-meter span,.boost-meter span{font-size:.39rem}.route-progress{width:96%;gap:3px}.route-flag{width:12px;flex-basis:12px;font-size:.7rem}.icon-button{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:48px;height:48px}.icon-button--audio{right:auto;left:max(12px,env(safe-area-inset-left))}.speedometer,.boost-deck{display:none}.tutorial{flex-direction:column;gap:10px}.tutorial-card{width:min(330px,90vw);min-height:126px}.tutorial-icon{margin-bottom:6px;font-size:2.3rem}.tutorial>.primary-button{width:min(330px,90vw)}.guide-grid{grid-template-columns:1fr}.menu-stats,.basecamp-actions{width:min(380px,100%)}.basecamp-heading{align-items:flex-start;padding-right:42px}.crystal-wallet{min-width:104px}.garage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-card:last-child{grid-column:1 / -1}.progress-columns{grid-template-columns:1fr}.result-progression{grid-template-columns:1fr 1fr}.result-wallet{grid-column:1 / -1;min-height:58px}}@media(orientation:portrait){.menu{place-items:center;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));background:linear-gradient(0deg,#020d1cf2,#020d1c80 68%,#020d1c2e)}.menu-panel{display:flex;width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 28px);flex-direction:column;align-items:center;overflow:auto;border-right:1px solid rgba(174,222,239,.2);border-radius:20px;padding:clamp(18px,3.6vh,28px) clamp(18px,5vw,28px);text-align:center;scrollbar-width:none}.menu-panel::-webkit-scrollbar{display:none}.menu-panel .eyebrow{margin-bottom:8px;font-size:clamp(.56rem,2.5vw,.7rem);letter-spacing:.18em}.menu-panel h1{width:100%;font-size:clamp(2.65rem,20cqi,4.5rem);letter-spacing:-.065em;line-height:.82}.tagline{margin:clamp(12px,2.4vh,18px) 0 clamp(14px,2.8vh,20px);font-size:clamp(.78rem,3.4vw,1rem);letter-spacing:.055em}.menu-stats,.basecamp-actions,.menu-panel>.primary-button{width:100%}.menu-stats{grid-template-columns:minmax(0,1fr) auto;margin-bottom:14px}.menu-best{min-width:0;padding:11px 12px}.menu-best span{font-size:clamp(.5rem,2vw,.62rem);letter-spacing:.12em;white-space:nowrap}.menu-best strong{min-width:0;font-size:clamp(1.05rem,4.8vw,1.32rem)}.menu-wallet{min-width:92px;padding:7px 9px}.menu-wallet span{font-size:.48rem}.menu-wallet strong{font-size:1rem}.menu-panel>.primary-button{min-height:52px}.basecamp-actions{margin-top:7px}.text-button{min-height:38px}.controls-hint{display:none}}@media(max-height:540px){.hud{top:max(8px,env(safe-area-inset-top));width:min(780px,calc(100% - 140px));grid-template-columns:minmax(110px,160px) minmax(220px,310px) minmax(110px,160px);grid-template-rows:auto 22px;gap:2px clamp(12px,3vw,38px)}.score-card{min-height:66px;padding:8px 25px}.score-card strong{font-size:clamp(1.25rem,4vh,1.7rem)}.status-center{min-height:82px;gap:3px;padding:6px 28px 9px}.status-pill{min-height:24px}.icon-button{top:max(8px,env(safe-area-inset-top));width:48px;height:48px}.speedometer{display:grid;width:118px}.speedometer strong{font-size:2.25rem}.boost-deck{display:flex;width:255px;min-width:0;height:46px;padding-block:7px 5px}.menu{place-items:center start;padding-block:12px;padding-left:max(24px,env(safe-area-inset-left));background:linear-gradient(90deg,rgba(2,13,28,.91) 0%,rgba(2,13,28,.32) 58%,transparent 78%)}.menu-panel{align-items:flex-start;max-height:calc(100vh - 24px);padding:16px 26px;text-align:left}.menu-panel .eyebrow{margin-bottom:5px}.menu-panel h1{font-size:clamp(2.5rem,10vh,4rem)}.tagline{margin:6px 0 8px}.menu-stats{margin-bottom:8px}.menu-stats .menu-best{margin-bottom:0;padding-block:8px}.primary-button,.secondary-button{min-height:44px}.basecamp-actions{margin-top:5px}.basecamp-actions .secondary-button{min-height:40px}.text-button{min-height:28px}.controls-hint{display:none}.tutorial{flex-direction:row}.tutorial-card{width:220px;min-height:155px}.tutorial>.primary-button{width:160px}.modal-card{gap:7px;padding:22px 34px}.modal-card h2{margin-bottom:10px;font-size:3rem}.result-score strong{font-size:3rem}.guide-grid{grid-template-columns:1fr 1fr}.guide-grid>div{min-height:64px}.basecamp-card{width:min(940px,97vw);padding:18px 26px}.basecamp-heading h2{font-size:2.5rem}.garage-grid{gap:7px;margin-top:5px}.vehicle-card{min-height:165px}.vehicle-swatch{height:56px}.vehicle-swatch:before{top:13px;transform:translate(-50%) scale(.72) perspective(90px) rotateX(18deg)}.vehicle-card-content{min-height:100px;padding:8px}.vehicle-card-content p{margin:3px 0 5px}.progress-columns{gap:10px;margin-top:5px}.progress-item{min-height:48px;padding-block:6px}.result-progression{margin-bottom:2px}}@media(hover:none),(pointer:coarse){.speedometer,.boost-deck{display:none}}@media(max-width:300px){.status-center{display:none}.hud{width:calc(100% - 78px);min-width:0;grid-template-columns:1fr 1fr}.route-progress{display:none}.menu-panel h1{font-size:clamp(2.35rem,20cqi,3.2rem)}.jump-button,.boost-button{width:70px;height:70px}.tutorial-card{min-height:112px}}@media(min-aspect-ratio:21/9){.menu{padding-left:16vw}.hud{width:min(1040px,calc(100% - 340px))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
