:root{--ink:#192c45;--muted:#56677d;--orange:#ff743d;--yellow:#ffcb64;--car-color:#f45f44;--car-light:#ff9670;--viewport-height:100svh;--race-font:"Avenir Next Condensed","Arial Narrow","DIN Condensed",Impact,sans-serif;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;height:var(--viewport-height);overflow:hidden}h1,h2,h3,p{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;min-height:44px;border:0;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #087bcd;outline-offset:4px}button:disabled{cursor:default}button:hover{filter:brightness(1.05)}button:active{transform:translateY(1px)}[hidden]{display:none!important}.page-shell{height:100%;position:relative;isolation:isolate;overflow-y:auto;background:#98d3dc}#road{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:-2}.site-header{height:75px;display:flex;align-items:center;gap:22px;padding:12px 4.3%;position:relative}.site-header img{width:158px;display:block;filter:drop-shadow(0 1px 4px #ffffff70)}.site-header>span{font-size:10px;font-weight:800;letter-spacing:2px;opacity:.7}.utility{position:absolute;top:max(15px,env(safe-area-inset-top));right:max(20px,env(safe-area-inset-right));display:flex;gap:8px;z-index:15}.utility button{position:relative;width:44px;height:44px;border:1px solid #ffffff70;border-radius:13px;background:#fff9;font-size:25px}.sound-off{font-size:13px;position:absolute;right:6px;bottom:5px}.menu{max-width:1420px;margin:auto;min-height:0;height:calc(var(--viewport-height) - 112px);display:grid;grid-template-columns:1.15fr 0.85fr;gap:clamp(25px,5vw,85px);align-items:center;padding:10px 4.3% 20px}.hero{align-self:center;min-width:0}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:850;display:inline-flex;align-items:center;gap:8px}.live-dot{height:7px;width:7px;background:#ea7044;border-radius:50%}h1{font-size:clamp(64px,8.1vw,120px);line-height:.97;letter-spacing:-7px;font-style:italic;font-weight:950;position:relative;margin:18px 0 12px;text-shadow:0 3px #fff5}h1 span{color:#e95633}h1 i{display:block;height:6px;width:95%;background:linear-gradient(90deg,#ed603a 0 75%,transparent 75% 77%,#ed603a 77% 85%,transparent 85% 87%,#ed603a 87% 92%,transparent 92% 94%,#ed603a 94%);transform:skewX(-22deg);margin-top:13px}.tagline{font-size:clamp(23px,2.5vw,36px);font-weight:800;letter-spacing:-1px}.intro{font-size:16px;line-height:1.65;margin-top:12px;color:#263c54}.garage{background:linear-gradient(145deg,#f9fcfbc9,#e5f2f6b8);border:1px solid #fff9;border-radius:22px;margin-top:24px;box-shadow:0 15px 40px #33455814;overflow:hidden;backdrop-filter:blur(16px)}.garage-top{display:flex;justify-content:space-between;padding:16px 22px 0;font-weight:800;font-size:10px;letter-spacing:2px;color:#4f697b}.garage-top span:last-child{opacity:.5}#garage-car{display:block;width:90%;height:clamp(130px,19vh,200px);margin:auto}.paint-row{padding:0 20px 16px;display:flex;align-items:center;gap:13px;font-size:11px;font-weight:750}.colors{display:flex;gap:5px}.colors button{background:transparent;width:44px;position:relative;border-radius:50%}.colors button:before{content:"";display:block;background:var(--swatch);width:25px;height:25px;border-radius:50%;margin:auto;box-shadow:inset 0 0 0 1px #0001}.colors button[aria-pressed=true]:after{content:"";position:absolute;inset:4px;border:2px solid var(--ink);border-radius:50%}.garage-note{margin-left:auto;color:#64798a;font-weight:500}.arcade-card{padding:clamp(22px,2.6vw,38px);background:linear-gradient(135deg,#fffdf5f5,#eff7f9f0);border:1px solid #fff;border-radius:25px;box-shadow:0 24px 65px #24375529;backdrop-filter:blur(18px)}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.badge{background:#18334c;color:#fff;font-size:9px;letter-spacing:1.5px;padding:7px 10px;border-radius:5px;font-weight:800}.arcade-card h2{font-size:clamp(27px,2.6vw,36px);letter-spacing:-1.3px;margin-top:15px}.arcade-card>p{font-size:14px;color:var(--muted);line-height:1.55;margin-top:8px}.route{list-style:none;padding:0;margin:18px 0;display:grid;gap:7px}.route li{display:flex;align-items:center;gap:14px;padding:10px 13px;border:1px solid #24405910;background:#dce7ea3d;border-radius:11px}.route li:first-child{background:#fff2d7;border-color:#edb85f65}.route-num{font-size:13px;font-weight:900;color:#8193a2}.route li:first-child .route-num{color:#de7437}.route strong{display:block;font-size:13px}.route small{display:block;color:#687b8b;font-size:10px;margin-top:2px}.route-art{margin-left:auto;font-size:27px;color:#ac8862}.record{display:flex;flex-direction:column;gap:6px;padding:13px 0;border-top:1px solid #233c541a}.record span{font-size:9px;letter-spacing:1.4px;color:#687b8b;font-weight:800}.record strong{font-size:15px}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;border-radius:12px;background:linear-gradient(110deg,#ffbd56,#ff874b);box-shadow:0 5px 0 #ce6c3425;min-height:55px;font-size:17px;font-weight:850;padding:12px 20px}.primary span{font-size:25px}.menu-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:9px;color:#71808d;font-size:11px}.text-button{font-size:12px;background:transparent;padding:0 5px;font-weight:700}.site-footer{height:37px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:11px;color:#263c54}.site-footer a{color:inherit}body:not([data-mode=menu]) .site-header,body:not([data-mode=menu]) .site-footer{display:none}body[data-mode=menu] #road{opacity:.8}body[data-mode=menu] .page-shell:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,#e9f5f7ee 0%,#e9f5f7b3 40%,#e9f5f733 100%);pointer-events:none}
/* The road gets the full viewport; HUD is deliberately compact. */
#game-ui{min-height:440px;height:100%;position:relative;pointer-events:none}.hud{position:absolute;left:24px;right:190px;top:18px;display:flex;gap:12px;align-items:start}.hud>div{padding:10px 17px;border:1px solid #fff7;border-radius:13px;background:#fffdeae8;box-shadow:0 5px 22px #14213810}.hud small{display:block;font-size:9px;letter-spacing:1.5px;font-weight:800;color:#567087}.hud strong{display:block;font-size:19px}.time-chip{min-width:105px}.time-chip strong{font-size:28px;line-height:1.1;font-variant-numeric:tabular-nums}.time-chip strong span{font-size:14px;padding-left:4px}.time-chip.urgent{color:#bd382f;background:#fff0e6}.distance{position:absolute;top:99px;left:25px;width:210px;height:5px;background:#1b36512b;border-radius:10px}.distance>div{height:100%;width:0;background:#1f6576;border-radius:10px}.distance>span{position:absolute;top:11px;font-size:10px;font-weight:850;letter-spacing:1px;color:#15394c}.problem-panel{position:absolute;top:20px;left:50%;transform:translateX(-50%);text-align:center;min-width:310px;max-width:45vw;padding:13px 27px 12px;background:#fffcf5f5;border:1px solid white;border-radius:17px;box-shadow:0 9px 40px #14243826}.problem-panel>span{font-size:9px;letter-spacing:2px;font-weight:850;color:#526d7f}.problem-panel>strong{display:block;font-size:clamp(30px,3.2vw,46px);letter-spacing:-1px;line-height:1.25}.problem-panel>div:not(.answer-time){font-size:11px;color:#546a7b;padding-top:3px}.answer-time{height:3px;background:#172d4310;margin-top:11px;border-radius:4px;overflow:hidden}.answer-time>div{height:100%;background:#ee9451;transform-origin:left}.race-message{position:absolute;top:185px;left:50%;transform:translateX(-50%);font-size:18px;font-weight:850;color:#fff9dc;text-align:center;text-shadow:0 2px 6px #142236;white-space:pre-line}.speed{position:absolute;bottom:29px;left:30px;color:#fff8e5;text-shadow:0 2px 12px #101727}.speed>strong{font-size:48px;font-style:italic;line-height:1;font-variant-numeric:tabular-nums}.speed>span{font-size:10px;margin-left:7px;font-weight:800;letter-spacing:1px}.turbo-track{width:125px;height:5px;background:#ffffff30;border-radius:3px;margin:8px 0 5px;overflow:hidden}.turbo-track>div{height:100%;background:#83faff}.speed small{font-size:10px;letter-spacing:2px;font-weight:800}.lane-controls{pointer-events:auto;position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.lane-controls button{width:80px;height:53px;border-radius:13px;color:#fff8e5;border:1px solid #ffffff60;background:#132137b5;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center}.lane-controls button span{font-size:29px;line-height:1}.lane-controls button[aria-pressed=true]{border-color:#ffe19a;box-shadow:inset 0 0 0 1px #ffe19a;background:#ffe19a;color:#213349}.keyboard-hint{position:absolute;bottom:33px;right:25px;color:#ffffff9e;font-size:10px}.overlay{position:absolute;inset:0;z-index:12;background:#152b446e;backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;padding:22px;overflow-y:auto;min-height:100%}.modal{background:#f8faf5;border:1px solid #fff;border-radius:25px;padding:30px;width:min(510px,100%);box-shadow:0 22px 90px #10213944;max-height:100%;overflow-y:auto}.modal h2{font-size:35px;letter-spacing:-1.2px;margin:10px 0 15px}.modal p{font-size:14px;line-height:1.7;color:#52667a;margin:9px 0}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions button{border-radius:10px;padding:12px 17px;font-weight:800;background:#e5ebed}.modal-actions .primary{background:linear-gradient(110deg,#ffbd56,#ff874b)}.modal-actions>button{flex:1}.help-equation{font-size:32px;font-weight:850;text-align:center;margin:20px 0!important;color:#21394e!important}.help-answers{display:flex;gap:10px}.help-answers button{flex:1;background:#e4edf0;font-size:25px;font-weight:850;border-radius:10px;height:60px}.help-answers button:disabled{opacity:.4}.help-feedback{min-height:24px}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.stats-grid>div{padding:13px;border-radius:12px;background:#e9eef0}.stats-grid strong{display:block;font-size:23px}.stats-grid small{font-size:11px;color:#5c7183}.result-types{font-size:12px;width:100%;border-collapse:collapse}.result-types td,.result-types th{text-align:left;padding:8px 3px;border-bottom:1px solid #263c5415}.result-types th{font-weight:600;color:#5a6d7c}.rules-list{padding-left:22px;font-size:14px;line-height:1.6}.rules-list li{margin:9px 0}.muted{color:#61778a}.new-record{color:#bc5625!important;font-weight:800}.countdown{position:absolute;inset:35% 0 auto;text-align:center;color:#fff8e5;font-size:100px;font-weight:950;font-style:italic;text-shadow:0 8px 0 #1d344d40}
@media(min-width:1100px){.hud{right:auto}.score-chip{position:fixed;top:18px;right:185px}.problem-panel{top:18px}}
@media(max-height:730px) and (min-width:901px){.site-header{height:60px}.menu{height:calc(var(--viewport-height) - 90px);gap:35px;padding-top:0;padding-bottom:5px}.site-footer{height:30px}.hero h1{font-size:clamp(66px,8.5vw,112px);margin-top:12px}.intro{font-size:14px;margin-top:6px}.garage{margin-top:14px}.garage-top{padding-top:10px}#garage-car{height:130px}.paint-row{padding-bottom:8px}.arcade-card{padding:20px 25px}.arcade-card h2{margin-top:8px;font-size:29px}.arcade-card>p{font-size:12px}.route{margin:12px 0;gap:5px}.route li{padding:7px 11px}.route small{display:none}.route-art{font-size:22px}.record{padding:10px 0}.menu-bottom{margin-top:3px}.primary{min-height:49px}.garage-note{display:none}}
@media(max-height:650px) and (min-width:901px){.site-header{height:52px}.site-header img{width:132px}.menu{height:calc(var(--viewport-height) - 82px)}h1 i{height:4px;margin-top:8px}.hero h1{font-size:76px;margin:8px 0}.hero>.eyebrow{font-size:9px}.tagline{font-size:25px}.intro{line-height:1.4;font-size:12px}.garage{margin-top:10px}#garage-car{height:100px}.garage-top{font-size:9px}.paint-row{padding:0 12px 3px}.arcade-card{padding:16px 22px}.arcade-card h2{font-size:26px}.arcade-card>p{display:none}.route{margin:10px 0}.route li{padding:5px 10px}.record{gap:4px;padding:9px 0}.record strong{font-size:13px}.problem-panel{min-width:290px;max-width:40vw;padding:9px 15px}.problem-panel>strong{font-size:31px}.problem-panel>div:not(.answer-time){font-size:10px}.hud{left:15px;gap:7px}.hud>div{padding:9px 11px}.hud strong{font-size:16px}.time-chip{min-width:75px}.time-chip strong{font-size:25px}.distance{left:16px;width:170px;top:90px}.race-message{top:140px}.speed{bottom:22px}.speed>strong{font-size:36px}.modal{padding:23px}.modal h2{font-size:28px;margin:7px 0 10px}.modal p{margin:5px 0}.modal-actions{margin-top:13px}}
@media(max-width:1100px){.garage-note{display:none}.hud .score-chip{display:none}.problem-panel{left:57%;min-width:270px}.utility{gap:5px;right:12px}.keyboard-hint{display:none}}
@media(max-width:900px) and (orientation:portrait){.site-header{height:70px}.site-header>span{display:none}.menu{height:auto;min-height:calc(var(--viewport-height) - 107px);grid-template-columns:1fr;gap:18px;padding:15px 6% 22px;max-width:650px;align-content:center}.hero h1{font-size:90px;margin:12px 0;letter-spacing:-6px}.tagline{font-size:28px}.intro{font-size:13px}.garage{margin-top:15px;position:relative}.garage-top{padding-top:12px}#garage-car{height:135px}.paint-row{padding-bottom:8px}.arcade-card{padding:22px}.arcade-card h2{font-size:28px}.arcade-card>p{display:none}.route{grid-template-columns:1fr 1fr;gap:7px;margin:13px 0}.route li{padding:10px;gap:8px}.route small{display:none}.route-art{font-size:22px}.record{padding:11px 0}.menu-bottom{margin-top:2px}.problem-panel{left:50%;top:150px;max-width:85vw;width:360px}.problem-panel>strong{font-size:40px}.hud{left:20px;top:20px;right:150px}.hud>div{padding:10px 15px}.hud .score-chip{display:block}.distance{top:110px;left:20px;width:calc(100% - 40px)}.distance>span{font-size:10px}.race-message{top:292px;font-size:17px;width:95%}.speed{left:20px;bottom:100px}.lane-controls{bottom:22px;width:calc(100% - 40px);gap:12px}.lane-controls button{width:auto;flex:1;height:64px}.utility{top:20px}.stage-chip strong{font-size:17px}.score-chip strong{font-size:17px}}
@media(max-width:600px){.site-header{height:60px;padding-left:20px}.site-header img{width:127px}.menu{padding:10px 20px 15px;gap:14px}.hero>.eyebrow{font-size:8px;letter-spacing:1.5px}.hero h1{font-size:65px;letter-spacing:-5px;margin:11px 0}.tagline{font-size:23px}.intro{font-size:12px}.garage{margin-top:12px}.garage-top{font-size:8px}#garage-car{height:100px}.paint-row{font-size:10px;gap:7px;padding-left:13px}.colors{gap:0}.arcade-card{padding:18px}.arcade-card h2{font-size:25px}.route strong{font-size:11px}.route-num{font-size:10px}.route-art{display:none}.card-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.badge{font-size:8px}.record strong{font-size:13px}.hud{left:12px;top:14px;gap:7px;right:100px}.hud>div{padding:8px 10px}.hud .score-chip{display:none}.hud small{font-size:8px;letter-spacing:1px}.hud strong{font-size:15px}.time-chip{min-width:72px}.time-chip strong{font-size:25px}.utility{top:14px;right:12px;gap:5px}.utility button{width:44px}.utility #fullscreen{display:none}.distance{top:91px;left:13px;width:calc(100% - 26px)}.problem-panel{top:133px;padding:10px 16px;width:310px;min-width:0}.problem-panel>strong{font-size:35px}.race-message{top:261px;font-size:15px}.speed>strong{font-size:35px}.turbo-track{width:100px}.modal{padding:22px}.modal h2{font-size:29px}.modal-actions{flex-wrap:wrap}.modal-actions button{min-width:130px}.help-equation{font-size:27px!important}}
@media(max-width:900px) and (orientation:landscape){.menu{grid-template-columns:1fr 1fr;gap:22px;height:auto;min-height:430px;padding:5px 24px 15px}.site-header{height:55px}.site-header>span{display:none}.hero h1{font-size:60px;letter-spacing:-4px}.intro{font-size:12px}.tagline{font-size:23px}.garage{margin-top:12px}#garage-car{height:100px}.garage-top{font-size:8px}.paint-row{padding:0 8px 5px;font-size:9px;gap:3px}.colors{gap:0}.arcade-card{padding:17px}.arcade-card h2{font-size:25px}.arcade-card>p{display:none}.route{margin:11px 0;gap:4px}.route li{padding:4px 10px}.route small{display:none}.route-art{font-size:21px}.card-heading .eyebrow{font-size:8px}.record{padding:9px 0}.record strong{font-size:12px}.hud{left:12px}.stage-chip{display:none}.problem-panel{left:50%;top:15px;padding:8px 15px;min-width:270px}.problem-panel>strong{font-size:30px}.distance{left:12px;width:120px;top:94px}.race-message{top:135px;font-size:15px}.lane-controls{left:auto;right:15px;transform:none;bottom:20px;gap:6px}.lane-controls button{width:65px}.speed>strong{font-size:34px}}
@media(max-height:499px){.page-shell{overflow-y:auto}.menu{height:auto;min-height:410px}.overlay{position:fixed;align-items:flex-start}.modal{margin:auto;max-height:calc(var(--viewport-height) - 44px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

@media(max-height:650px) and (min-width:901px){.arcade-card{padding:14px 22px}.route li{padding:3px 10px}.route-art{font-size:18px}.route{gap:4px}.record{padding:8px 0}}

@media(max-height:650px) and (min-width:901px){.modal .stats-grid{margin:10px 0}.modal .stats-grid>div{padding:10px}.modal .result-types td,.modal .result-types th{padding:6px 3px}.modal .muted{font-size:11px}}
/* Visual artwork v2 */
#garage-photo{display:block;width:92%;height:clamp(132px,20vh,214px);object-fit:contain;margin:0 auto;transform:scale(1.35);filter:drop-shadow(0 16px 15px #26374f35)}
#garage-photo[hidden],#garage-car[hidden],#garage-photo:not([hidden]) + #garage-car{display:none!important}.primary:disabled{opacity:.72;cursor:wait;filter:saturate(.65)}
body[data-mode=menu] #road{opacity:0}
body[data-mode=menu] .page-shell:after{content:"";position:absolute;inset:0;z-index:-3;background:url("assets/menu/menu-background.webp") center/cover no-repeat;opacity:1}
body[data-mode=menu] .page-shell:before{display:none}
.route li{position:relative;overflow:hidden}.route li:before{content:"";position:absolute;inset:0;background:var(--route-image) center/cover;opacity:.14;mix-blend-mode:multiply}.route li>*{position:relative}
.route li:nth-child(1){--route-image:url("assets/menu/coast-route.webp")}.route li:nth-child(2){--route-image:url("assets/menu/desert-route.webp")}.route li:nth-child(3){--route-image:url("assets/menu/mountain-route.webp")}.route li:nth-child(4){--route-image:url("assets/menu/city-route.webp")}
.hud>div,.problem-panel{background:linear-gradient(145deg,#fffdf7f5,#edf3eef0);border-color:#fff;box-shadow:0 8px 32px #14243820, inset 0 1px #fff}.problem-panel{border-bottom:3px solid #d8754e}.lane-controls button{border-color:#e6f8ff65;box-shadow:inset 0 1px #ffffff23,0 8px 24px #1122382c}.lane-controls button[aria-pressed=true]{box-shadow:inset 0 0 0 2px #fff7cb,0 0 26px #ffd17770}.modal{background:linear-gradient(145deg,#fffcf4,#edf3ef);border:2px solid #fff;box-shadow:0 28px 100px #10213970}.race-message{filter:drop-shadow(0 3px 4px #142236)}
@media(max-height:650px) and (min-width:901px){#garage-photo{height:104px}}
@media(max-width:900px) and (orientation:portrait){#garage-photo{height:140px}}
@media(max-width:600px){#garage-photo{height:103px}}
@media(max-width:900px) and (orientation:landscape){#garage-photo{height:102px}}
.race-message.wrong{padding:8px 14px;border:1px solid #ffd7bd80;border-radius:10px;background:#70372dcc;color:#fff4dc;font-size:15px;line-height:1.25;letter-spacing:.04em}
.collision-message{position:absolute;z-index:4;left:50%;bottom:142px;transform:translateX(-50%);min-width:300px;padding:10px 16px;border:1px solid #ffe4a2;border-radius:12px;background:#8b392de8;color:#fff8dc;font-size:15px;font-weight:900;line-height:1.25;letter-spacing:.035em;text-align:center;text-transform:uppercase;text-shadow:0 2px 5px #35140f;box-shadow:0 8px 25px #25151b6b;animation:collision-pop .18s ease-out}
.transition-banner{--arrival-accent:#ffd064;pointer-events:none;position:absolute;z-index:5;left:50%;top:48%;width:min(760px,88vw);padding:16px 28px 14px;transform:translate(-50%,-50%);color:#fff8dc;text-align:center;text-transform:uppercase;text-shadow:0 3px 5px #071522,0 0 22px #071522;will-change:opacity,transform}
.transition-banner::before,.transition-banner::after{content:"";display:block;width:min(430px,72%);height:3px;margin:0 auto 12px;background:linear-gradient(90deg,transparent,var(--arrival-accent) 20% 80%,transparent);box-shadow:0 0 15px color-mix(in srgb,var(--arrival-accent) 70%,transparent)}
.transition-banner::after{height:1px;margin:11px auto 0;opacity:.8}
.transition-banner strong,.transition-banner span{display:block}.transition-banner strong{font-family:var(--race-font);font-size:clamp(32px,4.7vw,66px);font-style:italic;letter-spacing:.035em;line-height:1}.transition-banner span{margin-top:9px;color:var(--arrival-accent);font-size:clamp(10px,1.1vw,14px);font-weight:950;letter-spacing:.2em}
.stage-chip.arriving{border-color:color-mix(in srgb,var(--arrival-accent) 70%,#9de9e7);filter:brightness(calc(1 + var(--arrival-pulse,0)))}
.collision-message small{display:block;margin-top:3px;font-size:9px;letter-spacing:.15em}
@keyframes collision-pop{from{transform:translateX(-50%) scale(.86)}to{transform:translateX(-50%) scale(1)}}
.fraction-problem{display:flex!important;align-items:center;justify-content:center;gap:.18em;min-height:1.42em}
.fraction{display:inline-grid;grid-template-rows:1fr 1fr;min-width:1.35em;vertical-align:middle;text-align:center;font-size:.78em;line-height:.88;letter-spacing:0}
.fraction>span:first-child{padding:0 .16em .08em;border-bottom:.085em solid currentColor}
.fraction>span:last-child{padding:.08em .16em 0}
.race-message.wrong .fraction{margin:0 .2em;font-size:.9em}.race-message.wrong>small{display:block;margin-top:4px;font-size:.72em;letter-spacing:.1em}
.hero h1{font-style:normal;letter-spacing:-.018em;text-shadow:0 2px 0 #fff8,0 5px 18px #20344a18}
.hero h1 span{display:inline-block;margin-left:.035em;color:#ff5437;-webkit-text-stroke:.7px #96362e;text-shadow:0 2px 0 #7f302b,0 7px 18px #4d201f35}
body[data-mode=menu] .garage{background:linear-gradient(145deg,#f9fcfbe8,#e7f2f1dc);box-shadow:0 18px 52px #142b3e36}
body[data-mode=menu] .arcade-card{background:linear-gradient(135deg,#fffdf5f2,#eff7f3ed);box-shadow:0 26px 75px #12283e4a}
body[data-mode=menu] .site-footer{position:relative;color:#fff9e8;text-shadow:0 2px 8px #142638,0 1px 2px #142638}

/* Menu hub 1.3: main menu, garage and illustrated route are separate views. */
.menu-hub{display:block;max-width:none;padding:6px 4.3% 18px}
.menu-view{width:min(1280px,100%);height:100%;margin:auto;min-height:0}
.main-menu{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,430px);gap:clamp(35px,8vw,130px);align-items:center}
.main-menu-copy{align-self:center}.main-menu-copy h1{font-size:clamp(72px,10vw,138px);margin:18px 0 14px}.main-menu-copy .tagline{color:#fffaf0;text-shadow:0 3px 15px #16283e,0 1px 2px #16283e}
.main-menu-copy>.eyebrow{color:#fffaf0;text-shadow:0 2px 8px #16283e}
.main-actions{padding:clamp(22px,3vw,34px);border:1px solid #fff;border-radius:25px;background:linear-gradient(145deg,#fffdf4f2,#eef6f2eb);box-shadow:0 26px 75px #12283e59}
.main-record{padding:0 0 18px;border-top:0;border-bottom:1px solid #213b5320}.main-record strong{font-size:17px}
.main-start{margin-top:20px;min-height:66px;font-size:20px;box-shadow:0 8px 0 #b95a3038,0 16px 34px #8e382b25}
.destination-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.destination-button{min-width:0;padding:12px;border:1px solid #25405724;border-radius:13px;background:#fffaf0;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;text-align:left;box-shadow:0 7px 20px #17304712}
.destination-button>span:nth-child(2){min-width:0}.destination-button strong,.destination-button small{display:block}.destination-button strong{font-size:14px}.destination-button small{margin-top:2px;color:#687b8b;font-size:10px;white-space:nowrap}.destination-button>span:last-child{font-size:23px}.destination-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#f4a95e;color:#17334d;font-size:18px}.route-button .destination-icon{background:#78d2d7}
.rules-button{display:block;margin:13px auto 0;padding:0 12px;background:transparent;color:#556b7d;font-size:12px;font-weight:750;text-decoration:underline;text-decoration-color:#8193a266;text-underline-offset:4px}
.submenu{position:relative;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px}.submenu[hidden]{display:none!important}
.submenu-bar{position:relative;z-index:3;display:flex;align-items:center;gap:16px;width:max-content;max-width:100%;padding:8px 16px 8px 8px;border:1px solid #fff;border-radius:16px;background:#fffaf0f0;box-shadow:0 8px 26px #14283f38}
.submenu-bar>div span,.submenu-bar>div strong{display:block}.submenu-bar>div span{font-size:9px;letter-spacing:1.7px;font-weight:850;color:#6b7e8e}.submenu-bar>div strong{font-size:18px}.back-button{display:flex;align-items:center;gap:7px;min-height:46px;padding:8px 13px;border-radius:11px;background:#17334d;color:#fffaf0;font-size:13px;font-weight:800}
.garage-stage{position:relative;min-height:0;overflow:hidden;border:2px solid #fff9;border-radius:26px;background:url("assets/menu/garage-background.webp") center 58%/cover no-repeat;box-shadow:0 26px 70px #10283e5c}
.garage-stage:before{content:"";position:absolute;left:0;right:0;bottom:0;height:24%;background:linear-gradient(transparent,#0c20354d);pointer-events:none}
.garage-stage #garage-photo{position:absolute;left:50%;bottom:3%;width:min(69%,850px);height:78%;margin:0;object-fit:contain;transform:translateX(-50%) scale(1.12);filter:drop-shadow(0 24px 22px #14203373)}
.garage-stage #garage-car{position:absolute;left:50%;bottom:9%;width:min(70%,700px);transform:translateX(-50%)}
.paint-panel{position:absolute;z-index:2;left:24px;bottom:22px;display:flex;align-items:center;gap:12px;padding:10px 15px;border:1px solid #fff;border-radius:14px;background:#fffaf0ed;box-shadow:0 10px 30px #16283f42}.paint-panel>span{font-size:9px;letter-spacing:1.5px;font-weight:850}.paint-panel>strong{min-width:45px;font-size:12px}
.world-map{position:relative;min-height:0;overflow:hidden;border:2px solid #fff9;border-radius:26px;background:url("assets/menu/route-world.webp") center/cover no-repeat;box-shadow:0 26px 70px #10283e5c}
.world-stops{list-style:none;margin:0;padding:0}.world-stops li{position:absolute;width:clamp(145px,17vw,220px);display:grid;grid-template-columns:37px 1fr;align-items:center;border:2px solid #fff;border-radius:13px;background:#fffaf0;box-shadow:0 11px 28px #10223880;overflow:hidden}.world-stops img{grid-column:1/-1;width:100%;height:clamp(55px,7.5vw,88px);object-fit:cover;border-bottom:2px solid #fff}.world-stops li>span{width:29px;height:29px;margin:7px 0 7px 7px;border-radius:50%;display:grid;place-items:center;background:#f46a43;color:#fff;font-size:11px;font-weight:900}.world-stops li>div{padding:6px 8px 6px 2px}.world-stops strong,.world-stops small{display:block}.world-stops strong{font-size:12px}.world-stops small{font-size:9px;color:#687b8b;margin-top:2px}.stop-coast{left:7%;bottom:6%}.stop-desert{right:12%;bottom:8%}.stop-mountain{left:49%;top:21%}.stop-city{right:3%;top:5%}

@media(max-height:650px) and (min-width:901px){.menu-hub{height:calc(var(--viewport-height) - 82px);padding-top:0}.main-menu-copy h1{font-size:92px}.main-actions{padding:18px 22px}.main-record{padding-bottom:12px}.main-start{min-height:54px;margin-top:14px}.destination-buttons{margin-top:10px}.rules-button{margin-top:6px}.submenu{gap:7px}.submenu-bar{padding-top:5px;padding-bottom:5px}.back-button{min-height:44px}.world-stops img{height:52px}.world-stops li{width:170px}.world-stops small{display:none}.garage-stage #garage-photo{height:82%}}
@media(max-width:900px) and (orientation:portrait){.menu-hub{height:auto;min-height:calc(var(--viewport-height) - 107px);padding:12px 5% 18px}.main-menu{min-height:calc(var(--viewport-height) - 137px);grid-template-columns:1fr;align-content:center;gap:24px}.main-menu-copy{text-align:center}.main-menu-copy h1{font-size:clamp(70px,16vw,105px)}.main-menu-copy>.eyebrow{justify-content:center}.main-actions{width:min(520px,100%);margin:auto}.submenu{height:calc(var(--viewport-height) - 137px);min-height:620px}.garage-stage #garage-photo{width:92%;height:72%;bottom:12%}.world-map{min-height:650px;background-position:55% center}.world-stops li{width:170px}.world-stops img{height:62px}.stop-coast{left:3%;bottom:5%}.stop-desert{right:3%;bottom:25%}.stop-mountain{left:5%;top:25%}.stop-city{right:3%;top:5%}}
@media(max-width:600px){.main-menu-copy h1{font-size:67px}.main-menu{gap:15px}.main-actions{padding:17px}.main-start{min-height:58px;margin-top:14px}.destination-buttons{grid-template-columns:1fr}.destination-button{padding:9px 12px}.rules-button{margin-top:7px}.submenu-bar>div strong{font-size:15px}.back-button span{display:none}.paint-panel{left:12px;right:12px;bottom:12px;justify-content:center}.garage-stage #garage-photo{width:115%;height:67%;bottom:17%}.world-stops li{width:148px}.world-stops img{height:53px}.world-stops small{display:none}}
@media(max-width:900px) and (orientation:landscape){.menu-hub{height:auto;min-height:430px;padding:0 24px 12px}.main-menu{grid-template-columns:1fr 360px;gap:25px;min-height:375px}.main-menu-copy h1{font-size:68px}.main-actions{padding:14px 17px}.main-record{padding-bottom:9px}.main-start{min-height:50px;margin-top:9px}.destination-buttons{margin-top:8px}.destination-button{padding:7px 9px}.rules-button{margin-top:2px}.submenu{height:375px;gap:6px}.submenu-bar{padding-top:3px;padding-bottom:3px}.world-stops li{width:145px}.world-stops img{height:45px}.world-stops small{display:none}.garage-stage #garage-photo{height:88%}}


/* Racing typography stays in the menu; equations keep the neutral reading font. */
.main-menu-copy h1{font-family:var(--race-font);font-style:italic;font-stretch:condensed;letter-spacing:-.045em}
.main-menu-copy .tagline{font-family:var(--race-font);font-style:italic;font-stretch:condensed;font-weight:900;letter-spacing:.025em;text-transform:uppercase}
.main-start{font-family:var(--race-font);font-style:italic;font-stretch:condensed;font-weight:950;letter-spacing:.035em;text-transform:uppercase}
.destination-button strong,.submenu-bar>div strong,.world-stops strong,.paint-panel>strong{font-family:var(--race-font);font-style:italic;font-stretch:condensed;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
.destination-button strong{font-size:16px}.submenu-bar>div strong{font-size:21px}.world-stops strong{font-size:14px}
.main-record strong{font-family:var(--race-font);font-style:italic;font-stretch:condensed;font-size:20px;font-weight:850;letter-spacing:.015em}
.main-menu-copy>.eyebrow,.main-record>span,.submenu-bar>div span,.paint-panel>span{font-family:var(--race-font);font-style:italic;letter-spacing:.22em}
.rules-button{font-family:var(--race-font);font-stretch:condensed;font-weight:800;letter-spacing:.035em;text-transform:uppercase}

/* TurboDivision wordmark: long, low and pitched forward like the cover lettering. */
.main-menu-copy h1{font-size:clamp(52px,7.2vw,102px);white-space:nowrap;transform:skewX(-7deg);transform-origin:left center;letter-spacing:-.055em;text-shadow:0 3px 0 #fff8,0 7px 18px #172a4338}
.main-menu-copy h1 span{margin-left:.035em;color:#ff5138;-webkit-text-stroke:.65px #8e302b;text-shadow:0 2px 0 #7b2d29,0 8px 20px #4d201f45}
@media(max-height:650px) and (min-width:901px){.main-menu-copy h1{font-size:72px}}
@media(max-width:900px) and (orientation:portrait){.main-menu-copy h1{font-size:clamp(48px,11.5vw,82px);transform:skewX(-6deg)}}
@media(max-width:600px){.main-menu-copy h1{font-size:46px;letter-spacing:-.06em}}
@media(max-width:900px) and (orientation:landscape){.main-menu-copy h1{font-size:54px}}

/* Exact transparent cover wordmark, with the CSS title retained as a load fallback. */
.main-menu-copy h1{width:min(100%,760px);margin:10px 0 5px;transform:none;line-height:1}
.menu-wordmark{display:none;width:100%;height:auto;filter:drop-shadow(0 8px 12px #172a4345)}
.main-menu-copy h1.wordmark-ready .menu-wordmark{display:block}
.main-menu-copy h1.wordmark-ready .wordmark-fallback{display:none!important}
.wordmark-fallback{display:block!important;margin:0!important;color:var(--ink)!important;white-space:nowrap;transform:skewX(-7deg);transform-origin:left center}
.wordmark-fallback b{font:italic 950 1em/1 var(--race-font);letter-spacing:-.055em}
.wordmark-fallback b+ b{margin-left:.035em;color:#ff5138;-webkit-text-stroke:.65px #8e302b;text-shadow:0 2px 0 #7b2d29,0 8px 20px #4d201f45}
.wordmark-fallback i{width:100%}
@media(max-width:900px) and (orientation:portrait){.main-menu-copy h1{width:min(100%,680px);margin-left:auto;margin-right:auto}}

/* Illustrated navigation icons replace the temporary symbols. */
.destination-button{grid-template-columns:46px 1fr auto;padding:9px 11px}
.destination-icon{width:44px;height:44px;border-radius:12px;overflow:hidden;background:linear-gradient(145deg,#ffbd63,#ff864c)}
.route-button .destination-icon{background:linear-gradient(145deg,#84e1e3,#55bfc9)}
.destination-icon img{display:block;width:42px;height:42px;object-fit:contain;filter:drop-shadow(0 2px 2px #142b3e30)}
@media(max-height:650px) and (min-width:901px),(max-width:900px) and (orientation:landscape){.destination-button{grid-template-columns:40px 1fr auto;padding:6px 9px}.destination-icon{width:38px;height:38px}.destination-icon img{width:36px;height:36px}}

/* Gameplay 2.0: earned boost, five-stop route and compact race controls. */
.boost-progress{display:flex;width:126px;gap:6px;margin:8px 0 5px}
.boost-progress i{display:block;flex:1;height:6px;border:1px solid #fff7;border-radius:6px;background:#ffffff28;box-shadow:inset 0 1px 2px #0b172a55}
.boost-progress i.filled{border-color:#fff3a4;background:linear-gradient(90deg,#ffca55,#fff3a4);box-shadow:0 0 12px #ffd359b8}
.boost-button{pointer-events:auto;position:absolute;right:25px;bottom:24px;z-index:3;width:152px;height:58px;padding:7px 13px;border:1px solid #fff8;border-radius:15px;color:#183047;background:linear-gradient(135deg,#ffe263,#ff9a46);box-shadow:0 6px 0 #a3472d88,0 13px 28px #111c2c55;text-align:left;transition:filter .16s,transform .16s,box-shadow .16s}
.boost-button strong,.boost-button small{display:block}.boost-button strong{font-family:var(--race-font);font-size:23px;font-style:italic;line-height:1;letter-spacing:.07em}.boost-button small{margin-top:4px;font-size:8px;font-weight:850;letter-spacing:.12em}
.boost-button:disabled{color:#e8edf0;background:#32445aaa;border-color:#ffffff45;box-shadow:0 4px 0 #101a29aa,0 10px 22px #111c2c44;opacity:.78}
.boost-button.ready{animation:boost-ready 1.2s ease-in-out infinite alternate}.boost-button.active{color:#172c45;background:linear-gradient(135deg,#8ffaff,#fff789);box-shadow:0 4px 0 #438995,0 0 30px #84f8ffd1}
@keyframes boost-ready{to{filter:brightness(1.12);box-shadow:0 6px 0 #a3472d88,0 0 30px #ffd65dc4}}
.keyboard-hint{right:25px;bottom:94px;text-align:right}
.route li:nth-child(5){--route-image:url("assets/menu/stadium-route.webp")}
.stop-coast{left:2%;bottom:3%}.stop-desert{left:28%;right:auto;bottom:6%}.stop-mountain{left:46%;top:27%}.stop-city{right:22%;top:3%}.stop-stadium{right:1%;top:34%}

@media(max-height:650px) and (min-width:901px){.boost-button{right:18px;bottom:18px;width:138px;height:52px}.boost-button strong{font-size:20px}.keyboard-hint{right:18px;bottom:78px}}
@media(max-width:900px) and (orientation:portrait){.boost-button{right:20px;bottom:100px;width:145px}.stop-coast{left:3%;bottom:3%}.stop-desert{right:3%;left:auto;bottom:5%}.stop-mountain{left:5%;top:25%}.stop-city{right:3%;top:4%}.stop-stadium{right:3%;top:42%}}
@media(max-width:600px){.boost-button{right:12px;bottom:94px;width:128px;height:54px}.boost-button strong{font-size:20px}.boost-progress{width:104px}.collision-message{bottom:158px;min-width:270px;font-size:13px}.stop-coast{left:2%;bottom:3%}.stop-desert{right:2%;bottom:4%}.stop-mountain{left:2%;top:19%}.stop-city{right:2%;top:2%}.stop-stadium{right:2%;top:36%}}
@media(max-width:900px) and (orientation:landscape){.boost-button{right:15px;bottom:82px;width:201px;height:48px;display:flex;align-items:center;justify-content:space-between}.boost-button small{margin:0}.boost-progress{width:100px}.world-stops li{width:130px}.world-stops img{height:35px}.world-stops li>span{width:24px;height:24px;margin:4px}.world-stops li>div{padding:3px}.world-stops strong{font-size:11px}.stop-coast{left:1%;bottom:2%}.stop-desert{left:23%;right:auto;bottom:4%}.stop-mountain{left:43%;top:28%}.stop-city{right:21%;top:2%}.stop-stadium{right:1%;top:33%}}
@media(prefers-reduced-motion:reduce){.boost-button.ready,.collision-message{animation:none}.transition-banner{transform:translate(-50%,-50%)!important}.stage-chip.arriving{filter:none;border-color:var(--arrival-accent)}}
@media(max-width:900px) and (orientation:portrait){.transition-banner{top:48%;width:92vw}.transition-banner strong{font-size:clamp(30px,8vw,50px)}}
@media(max-width:900px) and (orientation:landscape){.transition-banner{top:51%;width:70vw;padding:9px 18px}.transition-banner strong{font-size:clamp(28px,6vw,44px)}}
@media(max-height:550px){.modal{padding:13px 19px}.modal .eyebrow{font-size:8px}.modal h2{font-size:23px;margin:2px 0 5px}.modal p{font-size:11px;line-height:1.32;margin:3px 0}.modal .stats-grid{gap:5px;margin:5px 0}.modal .stats-grid>div{padding:5px 9px}.modal .stats-grid strong{font-size:18px;line-height:1}.modal .stats-grid small{font-size:9px}.modal .result-types{font-size:10px}.modal .result-types td,.modal .result-types th{padding:3px}.modal-actions{margin-top:7px}.modal-actions button{min-height:44px;padding:6px 12px}}

/* Gameplay 2.5: cockpit-HUD og pitlane-dialoger. */
body:not([data-mode=menu]) .utility button{
  color:#f8f4dc;
  border:1px solid #8ee8e888;
  border-radius:8px 14px 8px 14px;
  background:linear-gradient(145deg,#23445edb,#10283fef);
  box-shadow:inset 0 1px #ffffff28,0 4px 0 #081827aa,0 10px 24px #07142155;
  backdrop-filter:blur(9px);
}
body:not([data-mode=menu]) .utility button:hover{filter:brightness(1.15) saturate(1.1)}
.hud>div{
  --hud-accent:#71dfe2;
  overflow:hidden;
  color:#fff8df;
  border:1px solid #9de9e75c;
  border-left:4px solid var(--hud-accent);
  border-radius:7px 15px 7px 15px;
  background:linear-gradient(145deg,#244b65ed,#112b45f2);
  box-shadow:inset 0 1px #ffffff20,0 5px 0 #071a2a99,0 12px 30px #07152238;
  backdrop-filter:blur(10px);
}
.hud>div:not(.score-chip){position:relative}
.hud>div::after{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:38px;
  height:4px;
  background:repeating-linear-gradient(135deg,var(--hud-accent) 0 8px,transparent 8px 12px);
  opacity:.9;
}
.hud small{color:#b9d7df}
.stage-chip{--hud-accent:#67e1dc!important}
.time-chip{--hud-accent:#ffd064!important}
.score-chip{--hud-accent:#ff8058!important}
.time-chip.urgent{
  color:#fff5de;
  border-color:#ff9b6e;
  border-left-color:#ff624b;
  background:linear-gradient(145deg,#75362fee,#401f2af2);
  animation:urgent-panel .65s ease-in-out infinite alternate;
}
.time-chip.urgent small{color:#ffd4bd}
@keyframes urgent-panel{to{box-shadow:inset 0 1px #ffffff24,0 5px 0 #43151caa,0 0 22px #ff654d88}}
.distance{height:6px;border:1px solid #b8edf24d;background:#102a42b8;box-shadow:0 3px 10px #07152255}
.distance>div{background:linear-gradient(90deg,#65e1dc,#ffd062 58%,#ff7650);box-shadow:0 0 12px #6ee5df99}
.distance>span{color:#f9f4dc;text-shadow:0 2px 5px #071521,0 0 8px #071521}
.problem-panel{
  overflow:hidden;
  border:1px solid #fff8da;
  border-radius:7px 19px 7px 19px;
  background:linear-gradient(145deg,#fffaf0f8,#eaf5f1f5);
  box-shadow:0 5px 0 #bd573b,0 14px 42px #07152247,inset 0 1px #fff;
}
.problem-panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:repeating-linear-gradient(120deg,#ff774f 0 22px,#ffc85f 22px 42px,#1d566b 42px 52px);
}
.problem-panel>span{color:#285a6c;font-family:var(--race-font);font-style:italic;letter-spacing:.22em}
.answer-time{height:4px;background:#18344b1c}
.answer-time>div{background:linear-gradient(90deg,#49cfd0,#ffd060 55%,#ff704c);box-shadow:0 0 9px #ff9c4b99}
.overlay{
  background:radial-gradient(circle at 50% 40%,#244b6666 0 18%,#07182bc9 72%);
  backdrop-filter:blur(10px) saturate(.72);
}
.modal{
  position:relative;
  color:#f8f5df;
  border:1px solid #7de4e2;
  border-radius:9px 25px 9px 25px;
  background:linear-gradient(145deg,#203f59f7,#10283ffb 58%,#0b2035fb);
  box-shadow:0 0 0 4px #071929b8,0 8px 0 #061522cc,0 34px 100px #020912b8,inset 0 1px #ffffff20;
}
.modal::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:7px;
  border-radius:8px 24px 0 0;
  background:repeating-linear-gradient(120deg,#ff744d 0 26px,#ffc85c 26px 49px,#68dfe0 49px 59px);
}
.modal::after{
  content:"";
  position:absolute;
  top:24px;
  right:25px;
  width:72px;
  height:18px;
  opacity:.13;
  background:conic-gradient(#fff 25%,transparent 0 50%,#fff 0 75%,transparent 0) 0 0/18px 18px;
  pointer-events:none;
}
.modal .eyebrow{color:#6fe2df;font-family:var(--race-font);font-style:italic;letter-spacing:.24em}
.modal h2{color:#fff7dd;font-family:var(--race-font);font-style:italic;font-weight:950;letter-spacing:.005em;text-transform:uppercase;text-shadow:0 3px #071725}
.modal p{color:#c8d8df}
.modal .muted{color:#8faab7}
.modal .new-record{color:#ffd066!important}
.modal-actions button{
  color:#f5f5e7;
  border:1px solid #8adfe044;
  border-radius:7px 14px 7px 14px;
  background:linear-gradient(145deg,#294c65,#19364f);
  box-shadow:0 4px 0 #06172499;
  font-family:var(--race-font);
  font-style:italic;
  font-size:17px;
  letter-spacing:.035em;
  text-transform:uppercase;
}
.modal-actions .primary{
  color:#152d45;
  border-color:#ffe18a;
  background:linear-gradient(110deg,#ffd264,#ff774d);
  box-shadow:0 4px 0 #9c422e,0 0 20px #ff9a4c30;
}
.stats-grid>div{
  position:relative;
  overflow:hidden;
  color:#fff8e3;
  border:1px solid #ffffff26;
  border-radius:7px 14px 7px 14px;
  background:#18344b;
  box-shadow:inset 0 1px #ffffff17,0 5px 14px #06172552;
}
.stats-grid>div::after{content:"";position:absolute;inset:auto -16px -23px auto;width:62px;height:62px;border:8px solid currentColor;border-radius:50%;opacity:.08}
.stats-grid>div:nth-child(1){color:#ffe087;background:linear-gradient(135deg,#6b4c28,#3c3540)}
.stats-grid>div:nth-child(2){color:#83eced;background:linear-gradient(135deg,#155264,#223c53)}
.stats-grid>div:nth-child(3){color:#ff9a76;background:linear-gradient(135deg,#713b34,#3c3040)}
.stats-grid>div:nth-child(4){color:#a8efad;background:linear-gradient(135deg,#295245,#26394b)}
.stats-grid strong{font-family:var(--race-font);font-style:italic;font-weight:950;color:inherit}
.stats-grid small{color:#d7e2df;font-weight:750;letter-spacing:.03em}
.result-types{
  color:#e7eff0;
  border:1px solid #74dfe038;
  outline:5px solid #091d30;
  outline-offset:-5px;
  background:#0b2135a8;
}
.result-types td,.result-types th{border-bottom-color:#79d9dc2b}
.result-types th{color:#6fe1df;font-family:var(--race-font);font-style:italic;font-weight:850;letter-spacing:.04em;text-transform:uppercase}
.rules-list{color:#d8e4e5}.rules-list strong{color:#ffd36b}
body[data-mode=results] .modal{border-color:#ffd06a}
body[data-mode=results] .modal::before{background:repeating-linear-gradient(90deg,#fff5dc 0 16px,#122a42 16px 32px,#ff754d 32px 48px,#122a42 48px 64px)}
body[data-mode=paused] .modal{border-color:#ffba5b}
body[data-mode=paused] .modal h2{font-size:38px}
@media(prefers-reduced-motion:reduce){.time-chip.urgent{animation:none}}
@media(max-height:650px) and (min-width:901px){.modal{padding:23px}.modal h2{font-size:28px;margin:7px 0 10px}.modal p{margin:5px 0}.modal-actions{margin-top:13px}}
@media(max-height:550px){.modal{padding:13px 19px}.modal::after{display:none}.modal .eyebrow{font-size:8px}.modal h2,body[data-mode=paused] .modal h2{font-size:23px;margin:2px 0 5px}.modal p{font-size:11px;line-height:1.32;margin:3px 0}.modal .stats-grid{gap:5px;margin:5px 0}.modal .stats-grid>div{padding:5px 9px}.modal .stats-grid strong{font-size:18px;line-height:1}.modal .stats-grid small{font-size:9px}.modal .result-types{font-size:10px}.modal .result-types td,.modal .result-types th{padding:3px}.modal-actions{margin-top:7px}.modal-actions button{min-height:44px;padding:6px 12px}}

/* Gameplay 2.5.1: startmenuens pitlane-kontrolpanel. */
body[data-mode=menu] .main-actions{
  position:relative;
  overflow:hidden;
  color:#f8f5df;
  border:1px solid #72dfdf;
  border-radius:9px 25px 9px 25px;
  background:linear-gradient(145deg,#234660f2,#122d47f7 58%,#0b2035f7);
  box-shadow:0 0 0 4px #0a20306b,0 8px 0 #071b2a99,0 28px 75px #0715228c,inset 0 1px #ffffff1f;
  backdrop-filter:blur(14px) saturate(1.08);
}
body[data-mode=menu] .main-actions::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0 0 auto;
  height:7px;
  background:repeating-linear-gradient(120deg,#ff744d 0 28px,#ffc85c 28px 52px,#6ce0df 52px 63px);
}
body[data-mode=menu] .main-actions::after{
  content:"";
  position:absolute;
  z-index:0;
  top:25px;
  right:27px;
  width:76px;
  height:19px;
  opacity:.14;
  background:conic-gradient(#fff 25%,transparent 0 50%,#fff 0 75%,transparent 0) 0 0/19px 19px;
  pointer-events:none;
}
body[data-mode=menu] .main-record,
body[data-mode=menu] .main-start,
body[data-mode=menu] .destination-buttons,
body[data-mode=menu] .rules-button{position:relative;z-index:1}
body[data-mode=menu] .main-record{border-bottom-color:#77e0df35}
body[data-mode=menu] .main-record>span{color:#70e3df}
body[data-mode=menu] .main-record strong{color:#fff3d5;text-shadow:0 2px #071726}
body[data-mode=menu] .main-start{
  color:#152d45;
  border:1px solid #ffe18a;
  border-radius:7px 16px 7px 16px;
  background:linear-gradient(110deg,#ffd264,#ff774d);
  box-shadow:0 6px 0 #9c422e,0 14px 30px #07152266,0 0 20px #ff9a4c2b;
}
body[data-mode=menu] .main-start:hover{filter:brightness(1.07) saturate(1.08)}
body[data-mode=menu] .destination-button{
  position:relative;
  overflow:hidden;
  color:#f8f5df;
  border:1px solid #7bdedf42;
  border-radius:7px 14px 7px 14px;
  background:linear-gradient(145deg,#294d66,#19364f);
  box-shadow:inset 0 1px #ffffff19,0 5px 0 #07182791,0 10px 20px #07152235;
}
body[data-mode=menu] .destination-button::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--destination-accent)}
body[data-mode=menu] .garage-button{--destination-accent:#ff7d59}
body[data-mode=menu] .route-button{--destination-accent:#67dfdf}
body[data-mode=menu] .destination-button strong{color:#fff5dd}
body[data-mode=menu] .destination-button small{color:#b8cfd6}
body[data-mode=menu] .destination-button>span:last-child{color:var(--destination-accent);text-shadow:0 0 10px currentColor}
body[data-mode=menu] .destination-icon{border:1px solid #fff5b966;box-shadow:inset 0 1px #fff8,0 0 14px #ff8a4b2e}
body[data-mode=menu] .route-button .destination-icon{box-shadow:inset 0 1px #fff8,0 0 14px #69e2e15c}
body[data-mode=menu] .rules-button{color:#8fe8e5;text-decoration-color:#8fe8e579}
body[data-mode=menu] .rules-button:hover{color:#fff1bd}
@media(max-height:650px) and (min-width:901px){body[data-mode=menu] .main-actions{padding:18px 22px}}
@media(max-width:600px){body[data-mode=menu] .main-actions{padding:17px}}
@media(max-width:900px) and (orientation:landscape){body[data-mode=menu] .main-actions{padding:14px 17px}body[data-mode=menu] .main-actions::after{display:none}}

/* Gameplay 2.5.3: garage og rute deler startmenuens pitlane-look. */
body[data-mode=menu] .submenu-bar{
  overflow:hidden;
  color:#f8f5df;
  border-color:#72dfdf;
  border-radius:7px 19px 7px 19px;
  background:linear-gradient(145deg,#234660f4,#122d47f8 58%,#0b2035f8);
  box-shadow:0 0 0 4px #0a20306b,0 6px 0 #071b2a99,0 18px 45px #07152270,inset 0 1px #ffffff1f;
}
body[data-mode=menu] .submenu-bar::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0 0 auto;
  height:6px;
  background:repeating-linear-gradient(120deg,#ff744d 0 25px,#ffc85c 25px 46px,#6ce0df 46px 56px);
}
body[data-mode=menu] .submenu-bar::after{
  content:"";
  position:absolute;
  z-index:0;
  top:18px;
  right:17px;
  width:55px;
  height:14px;
  opacity:.12;
  background:conic-gradient(#fff 25%,transparent 0 50%,#fff 0 75%,transparent 0) 0 0/14px 14px;
  pointer-events:none;
}
body[data-mode=menu] .submenu-bar>*{position:relative;z-index:1}
body[data-mode=menu] .submenu-bar>div{padding-right:54px}
body[data-mode=menu] .submenu-bar>div span{color:#70e3df}
body[data-mode=menu] .submenu-bar>div strong{color:#fff3d5;text-shadow:0 2px #071726}
body[data-mode=menu] .back-button{
  color:#fff4d9;
  border:1px solid #ffca6691;
  border-radius:6px 13px 6px 13px;
  background:linear-gradient(145deg,#31536a,#17344d);
  box-shadow:inset 4px 0 #ff7a52,0 4px 0 #07172599;
}
body[data-mode=menu] .back-button:hover{color:#fff;background:linear-gradient(145deg,#3b6078,#1e415c)}
body[data-mode=menu] .garage-stage,
body[data-mode=menu] .world-map{
  border-color:#69dadbb8;
  box-shadow:0 0 0 4px #0a20306b,0 8px 0 #071b2a8c,0 28px 70px #07152287;
}
body[data-mode=menu] .paint-panel{
  overflow:hidden;
  color:#f8f5df;
  border-color:#72dfdf;
  border-radius:7px 17px 7px 17px;
  background:linear-gradient(145deg,#234a63f5,#102c45f8);
  box-shadow:inset 0 1px #ffffff1f,0 6px 0 #071b2aa6,0 15px 35px #07152287;
}
body[data-mode=menu] .paint-panel::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(#ff754d 0 34%,#ffd064 34% 68%,#66dddd 68%)}
body[data-mode=menu] .paint-panel>span{color:#72e1df}
body[data-mode=menu] .paint-panel>strong{color:#fff3d5}
body[data-mode=menu] .paint-panel .colors button::before{box-shadow:inset 0 0 0 2px #ffffff9c,0 3px 8px #0615228c}
body[data-mode=menu] .paint-panel .colors button[aria-pressed=true]::after{inset:3px;border-color:#ffd267;box-shadow:0 0 0 2px #102a41,0 0 13px #ffd267a3}
body[data-mode=menu] .world-stops li{
  --stop-accent:#ff7853;
  color:#f8f5df;
  border-color:#72dfdf;
  border-radius:7px 15px 7px 15px;
  background:linear-gradient(145deg,#23465fef,#102b44f5);
  box-shadow:inset 4px 0 var(--stop-accent),0 5px 0 #071b2aa6,0 12px 28px #0715229c;
}
body[data-mode=menu] .world-stops li:nth-child(2){--stop-accent:#ffd05f}
body[data-mode=menu] .world-stops li:nth-child(3){--stop-accent:#72ddd7}
body[data-mode=menu] .world-stops li:nth-child(4){--stop-accent:#aa83ff}
body[data-mode=menu] .world-stops li:nth-child(5){--stop-accent:#ff7650}
body[data-mode=menu] .world-stops img{border-bottom-color:#72dfdf80}
body[data-mode=menu] .world-stops li>span{color:#122b43;background:var(--stop-accent);box-shadow:0 0 13px color-mix(in srgb,var(--stop-accent) 58%,transparent)}
body[data-mode=menu] .world-stops strong{color:#fff4da;text-shadow:0 2px #071725}
body[data-mode=menu] .world-stops small{color:#b9d0d7}
@media(max-height:650px) and (min-width:901px){body[data-mode=menu] .submenu-bar::after{display:none}body[data-mode=menu] .submenu-bar>div{padding-right:4px}}
@media(max-width:600px){body[data-mode=menu] .submenu-bar::after{display:none}body[data-mode=menu] .submenu-bar>div{padding-right:0}}

/* Gameplay 2.6.1: diskret fullscreen-kontrol i menuen. */
body[data-mode=menu] .utility button{
  color:#f8f4dc;
  border:1px solid #72dfdf;
  border-radius:8px 14px 8px 14px;
  background:linear-gradient(145deg,#23445ee8,#10283ff5);
  box-shadow:inset 0 1px #ffffff24,0 4px 0 #081827a8,0 10px 24px #0714214f;
  backdrop-filter:blur(9px);
}
body[data-mode=menu] .utility button:hover{filter:brightness(1.12) saturate(1.08)}
