:root{color:#f4e8d0;font-synthesis:none;background:#171a20;font-family:Arial,sans-serif}*{box-sizing:border-box}html,body,main,#game{width:100%;height:100%;margin:0;overflow:hidden}body{min-width:300px;min-height:300px}#game{background:#171a20;place-items:center;display:grid;position:relative}canvas{display:block}#loading{z-index:3;background:#171a20;place-content:center;justify-items:center;gap:12px;transition:opacity .18s;display:grid;position:absolute;inset:0}#loading.is-hidden{opacity:0;pointer-events:none}#loading strong{letter-spacing:.12em;font-size:clamp(26px,5vw,54px)}#loading p{color:#b9b9b4;margin:0}.loading-track{background:#343a40;border-radius:99px;width:min(340px,72vw);height:10px;overflow:hidden}#loading-bar{border-radius:inherit;background:#ff6847;width:0;height:100%;transition:width .18s;display:block}#loading-percent{color:#33e6e6;font-variant-numeric:tabular-nums}#race-ready{background:#343a40b8;border:1px solid #f4e8d0;border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:3px;padding:9px 10px;display:grid}#race-ready[hidden]{display:none}#race-ready p{color:#b9b9b4;margin:0;font-size:9px;line-height:1.25}#race-ready .ready-copy>p:first-child{color:#33e6e6;letter-spacing:.16em;font-size:9px;font-weight:800}#race-ready h1{color:#f4e8d0;letter-spacing:.06em;margin:2px 0;font-size:17px;line-height:1}#start-race{color:#171a20;letter-spacing:.05em;cursor:pointer;background:#ff6847;border:2px solid #f4e8d0;border-radius:999px;min-width:172px;padding:10px 16px;font:800 13px/1 Arial,sans-serif;box-shadow:0 3px #171a20}#start-race:hover{filter:brightness(1.08)}#start-race:active{translate:0 2px;box-shadow:0 1px #171a20}#start-race:focus-visible{outline-offset:4px;outline:3px solid #33e6e6}#end-race{z-index:3;color:#f4e8d0;letter-spacing:.06em;cursor:pointer;background:#171a20e0;border:1px solid #f4e8d0;border-radius:999px;padding:9px 13px;font:800 11px/1 Arial,sans-serif;position:absolute;top:14px;left:14px}#end-race[hidden]{display:none}#end-race:hover{background:#343a40f0;border-color:#ff6847}#end-race:focus-visible{outline-offset:3px;outline:3px solid #33e6e6}#race-result{z-index:4;text-align:center;background:#171a20f0;border:2px solid #f4e8d0;border-radius:20px;width:min(440px,100% - 32px);max-height:calc(100% - 28px);padding:26px 24px 22px;position:absolute;top:50%;left:50%;overflow:auto;translate:-50% -50%;box-shadow:0 12px #00000052}#race-result[hidden]{display:none}#result-kicker{color:#33e6e6;letter-spacing:.2em;margin:0 0 8px;font-size:12px;font-weight:800}#result-medal{color:#171a20;letter-spacing:.08em;background:#b87333;border:8px solid #f4e8d0;border-radius:50%;place-items:center;width:116px;height:116px;margin:0 auto;font-size:19px;display:grid;box-shadow:inset 0 0 0 5px #171a202e,0 7px #00000047}#race-result[data-medal=silver] #result-medal{background:#c9d0d5}#race-result[data-medal=gold] #result-medal{background:#f2c94c}#race-result[data-medal=none] #result-medal,#race-result[data-medal=invalid] #result-medal{color:#f4e8d0;background:#343a40;border-color:#70777d}#race-result[data-medal=invalid] #result-medal{color:#ff6847}#result-reason{color:#f4e8d0;margin:12px 0 0;font-size:16px;line-height:1.35}#result-time{color:#f4e8d0;font-variant-numeric:tabular-nums;margin:14px 0 12px;font-size:28px;font-weight:800}.car-style-card{color:#f4e8d0;text-align:left;justify-content:center;align-items:center;gap:16px;margin:-4px 0 14px;display:flex}.car-style-card small{color:#33e6e6;letter-spacing:.14em;margin-bottom:3px;font-size:9px;font-weight:900;display:block}.car-style-card strong{max-width:230px;font-size:12px;line-height:1.25;display:block}.result-mastery{text-align:left;background:#343a40bf;border-radius:10px;margin:0 0 16px;padding:10px 12px}.result-mastery>p,#result-journey>p:first-child,#mastery-panel>p{color:#33e6e6;letter-spacing:.14em;margin:0 0 6px;font-size:10px;font-weight:800}#result-mastery-goals,#mastery-goals{gap:4px;margin:0;padding:0;list-style:none;display:grid}#result-mastery-goals li,#mastery-goals li{color:#b9b9b4;grid-template-columns:18px 1fr auto;align-items:baseline;gap:3px;font-size:12px;line-height:1.25;display:grid}#result-mastery-goals li:before,#mastery-goals li:before{content:"○";color:#70777d;font-weight:900}#result-mastery-goals li[data-complete=true],#mastery-goals li[data-complete=true]{color:#f4e8d0}#result-mastery-goals li[data-complete=true]:before,#mastery-goals li[data-complete=true]:before{content:"★";color:#f2c94c}#result-mastery-goals li[data-new=true]:after{content:"NEW";color:#33e6e6;letter-spacing:.1em;font-size:9px;font-weight:900}#result-journey{text-align:left;background:#f2c94c12;border:1px solid #f2c94ca6;border-radius:10px;margin:-6px 0 16px;padding:10px 12px}#result-stars{color:#f2c94c;font-size:14px;display:block}#result-track-unlocks{color:#33e6e6;margin:7px 0 0;padding:0;font-size:12px;font-weight:800;list-style:none}#result-track-unlocks[hidden]{display:none}#result-next-goal{color:#d4d2c9;margin:7px 0 0;font-size:11px;line-height:1.35}#new-rewards{text-align:left;background:#33e6e614;border:1px solid #33e6e6;border-radius:10px;margin:-6px 0 16px;padding:10px 12px}#new-rewards[hidden]{display:none}#new-rewards>p{color:#33e6e6;letter-spacing:.14em;margin:0 0 7px;font-size:10px;font-weight:900}#new-reward-list{gap:6px;display:grid}.new-reward{grid-template-columns:24px 1fr auto;align-items:center;gap:1px 8px;display:grid}.reward-swatch{background:var(--reward-color);border:2px solid #f4e8d0;border-radius:50%;grid-row:1/3;width:22px;height:22px}.new-reward strong{font-size:13px}.new-reward small{color:#b9b9b4;letter-spacing:.08em;grid-column:2;font-size:9px}.new-reward button{color:#171a20;cursor:pointer;background:#33e6e6;border:1px solid #f4e8d0;border-radius:999px;grid-area:1/3/3;padding:7px 10px;font:800 11px/1 Arial,sans-serif}#result-leaderboard-status{color:#b9b9b4;margin:-4px 0 14px;font-size:11px;line-height:1.3}.result-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex;position:relative}.result-actions button{color:#171a20;letter-spacing:.06em;cursor:pointer;background:#ff6847;border:2px solid #f4e8d0;border-radius:999px;padding:12px 22px;font:800 16px/1 Arial,sans-serif;box-shadow:0 5px #171a20}#next-track{background:#33e6e6}#review-mastery{color:#f4e8d0;background:#343a40}#medal-celebration{pointer-events:none;position:absolute;inset:0}#medal-celebration[hidden]{display:none}#medal-celebration i{background:#ff6847;border-radius:3px;width:9px;height:22px;animation:.9s cubic-bezier(.12,.7,.3,1) both medal-pop;position:absolute;top:46%;left:50%}#medal-celebration i:nth-child(2n){background:#33e6e6}#medal-celebration i:nth-child(3n){background:#e348ff}#medal-celebration i:first-child{--x:-142px;--y:-98px;--r:-54deg}#medal-celebration i:nth-child(2){--x:-90px;--y:-138px;--r:32deg;animation-delay:40ms}#medal-celebration i:nth-child(3){--x:-36px;--y:-122px;--r:76deg;animation-delay:90ms}#medal-celebration i:nth-child(4){--x:132px;--y:-100px;--r:48deg;animation-delay:20ms}#medal-celebration i:nth-child(5){--x:84px;--y:-142px;--r:-42deg;animation-delay:70ms}#medal-celebration i:nth-child(6){--x:36px;--y:-126px;--r:18deg;animation-delay:.11s}#medal-celebration i:nth-child(7){--x:-128px;--y:72px;--r:62deg;animation-delay:60ms}#medal-celebration i:nth-child(8){--x:126px;--y:70px;--r:-68deg;animation-delay:.1s}@keyframes medal-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)rotate(0)}22%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1) rotate(var(--r))}}@media (prefers-reduced-motion:reduce){#medal-celebration i{opacity:0;animation:none}}.result-actions button:focus-visible{outline-offset:4px;outline:3px solid #33e6e6}#progression{z-index:2;background:#171a20e0;border:1px solid #70777d;border-radius:10px;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;width:min(560px,100% - 28px);max-height:calc(100% - 28px);padding:9px 12px;display:grid;position:absolute;top:14px;left:50%;overflow:auto;translate:-50%}#progression[hidden]{display:none}#progression label{color:#33e6e6;letter-spacing:.12em;font-size:11px;font-weight:800}#track-select{color:#f4e8d0;background:#343a40;border:1px solid #70777d;border-radius:5px;min-width:0;padding:5px 7px;font:700 12px/1 Arial,sans-serif}#track-status{color:#d4d2c9;text-align:center;text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;margin:0;font-size:11px;line-height:1.25;overflow:hidden}#journey-panel{background:#343a406b;border:1px solid #70777d8c;border-radius:8px;grid-column:1/-1;margin-top:3px;padding:8px}.journey-heading,.reward-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.journey-heading p,.reward-heading p,.track-path-group>p{color:#33e6e6;letter-spacing:.13em;margin:0;font-size:9px;font-weight:900}.journey-heading strong{color:#f2c94c;letter-spacing:.04em;font-size:11px}#journey-next-goal{color:#f4e8d0;background:#ff68471a;border-left:3px solid #ff6847;margin:6px 0 8px;padding:6px 8px;font-size:10px;font-weight:800;line-height:1.3}#track-path{gap:7px;display:grid}.track-path-group{min-width:0}.track-path-group>p{color:#b9b9b4;margin-bottom:4px}.bonus-path-group>p{color:#e348ff}.track-path-group ol{grid-template-columns:repeat(5,minmax(88px,1fr));gap:4px;min-width:476px;margin:0;padding:0;list-style:none;display:grid}.track-path-group li{min-width:0}.track-path-group button{color:#f4e8d0;text-align:left;cursor:pointer;background:#343a40;border:1px solid #70777d;border-radius:6px;grid-template-columns:25px minmax(0,1fr);align-items:center;gap:5px;width:100%;min-height:44px;padding:4px 5px;display:grid}.track-path-group button:hover:not(:disabled){border-color:#33e6e6}.track-path-group button:focus-visible{outline-offset:2px;outline:2px solid #33e6e6}.track-path-group button[data-state=current]{background:#ff684724;border-color:#ff6847;box-shadow:inset 0 0 0 1px #ff6847}.track-path-group button[data-state=locked]{color:#b9b9b4;cursor:not-allowed;background:#171a20a6}.path-number{color:#171a20;background:#33e6e6;border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;font-weight:900;display:grid}button[data-state=current] .path-number{background:#ff6847}button[data-state=locked] .path-number{color:#b9b9b4;background:#171a20}.track-path-group button strong,.track-path-group button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.track-path-group button strong{font-size:9px;line-height:1.2}.track-path-group button small{color:#b9b9b4;margin-top:2px;font-size:7px;line-height:1.2}.track-path-group button[data-state=locked] small{white-space:normal;overflow:visible}.reward-heading{margin-top:8px}.reward-heading small{color:#b9b9b4;font-size:8px}#reward-path{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:4px;display:grid}#reward-path article{background:#343a40;border:1px solid #70777d;border-radius:6px;min-width:0;padding:5px 6px}#reward-path article[data-state=unlocked]{background:#33e6e614;border-color:#33e6e6}#reward-path article strong,#reward-path article span,#reward-path article small{display:block}#reward-path article strong{color:#f2c94c;font-size:9px}#reward-path article span{color:#f4e8d0;text-overflow:ellipsis;white-space:nowrap;margin:2px 0;font-size:8px;font-weight:800;line-height:1.2;overflow:hidden}#reward-path article small{color:#b9b9b4;font-size:7px;line-height:1.2}#mastery-panel{border-top:1px solid #70777d8c;grid-column:1/-1;margin-top:4px;padding-top:7px}#mastery-goals li{font-size:11px}#cosmetics-panel{border-top:1px solid #70777d8c;grid-column:1/-1;padding-top:6px}#cosmetics-panel summary{color:#33e6e6;letter-spacing:.12em;cursor:pointer;justify-content:space-between;font-size:10px;font-weight:800;display:flex}#cosmetics-panel summary strong{color:#f2c94c;letter-spacing:.04em;font-size:10px}.garage-layout{grid-template-columns:112px 1fr;align-items:center;gap:8px;padding-top:9px;display:grid}.cosmetic-fields{grid-template-columns:auto 1fr;align-items:center;gap:5px 8px;display:grid}.cosmetic-fields label{color:#b9b9b4!important;font-size:9px!important}.cosmetic-fields select{color:#f4e8d0;background:#343a40;border:1px solid #70777d;border-radius:5px;min-width:0;padding:4px 6px;font:700 11px/1 Arial,sans-serif}#garage-status{color:#b9b9b4;text-align:center;margin:7px 0 0;font-size:9px;line-height:1.25}#career-controls{border-top:1px solid #70777d8c;grid-column:1/-1;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;padding-top:7px;display:grid}#career-controls strong,#career-controls small{display:block}#career-controls strong{color:#f4e8d0;letter-spacing:.12em;font-size:10px}#career-controls small{color:#b9b9b4;margin-top:2px;font-size:8px}#reset-career{color:#f4e8d0;cursor:pointer;background:#ff68471f;border:1px solid #ff6847;border-radius:5px;padding:5px 8px;font:800 10px/1 Arial,sans-serif}#reset-career:hover{background:#ff68473d}#reset-career:focus-visible{outline-offset:2px;outline:2px solid #33e6e6}#reset-career-status{color:#33e6e6;grid-column:1/-1;margin:2px 0 0;font-size:9px;line-height:1.25}.car-preview{--car-paint:#ff6847;--car-livery:#f4e8d0;--car-exhaust:#fff;filter:drop-shadow(4px 5px #00000040);width:102px;height:54px;margin:0 auto;position:relative}.preview-body{z-index:2;background:var(--car-paint);border:3px solid #171a20;border-radius:13px;width:72px;height:36px;position:absolute;top:9px;left:15px;overflow:hidden}.preview-livery{background:var(--car-livery);width:13px;position:absolute;inset:0 auto 0 12px}.car-preview[data-livery=twin-stripe] .preview-livery{background:linear-gradient(90deg, var(--car-livery) 0 6px, transparent 6px 11px, var(--car-livery) 11px);width:18px}.car-preview[data-livery=night-split] .preview-livery{width:42px;left:5px;transform:skew(34deg)}.preview-glass{background:#23666e;border:2px solid #33e6e6b3;border-radius:7px;width:24px;height:20px;position:absolute;top:5px;left:37px}.preview-wheel{z-index:1;background:#171a20;border-radius:3px;width:20px;height:8px;position:absolute}.wheel-front-left{top:4px;left:59px}.wheel-front-right{bottom:4px;left:59px}.wheel-rear-left{top:4px;left:19px}.wheel-rear-right{bottom:4px;left:19px}.preview-exhaust{background:var(--car-exhaust);opacity:.7;width:15px;height:10px;box-shadow:-7px 0 0 -1px color-mix(in srgb, var(--car-exhaust) 55%, transparent);border-radius:50%;position:absolute;top:22px;left:2px}#result-car-style .car-preview{flex:none;margin:-5px;transform:scale(.78)}#leaderboard{z-index:2;background:#171a20eb;border:1px solid #70777d;border-radius:10px;width:min(250px,100% - 28px);padding:10px 12px;font-size:11px;position:absolute;bottom:14px;right:14px}.leaderboard-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}#leaderboard h2{color:#33e6e6;letter-spacing:.12em;margin:0;font-size:12px}#leaderboard button,#leaderboard input{color:#f4e8d0;background:#343a40;border:1px solid #70777d;border-radius:5px;font:700 11px/1 Arial,sans-serif}#leaderboard button{cursor:pointer;padding:6px 8px}#leaderboard button:hover{border-color:#33e6e6}#leaderboard button:focus-visible,#leaderboard input:focus-visible,#account-panel summary:focus-visible{outline-offset:2px;outline:2px solid #33e6e6}.nickname-field{color:#b9b9b4;letter-spacing:.08em;grid-template-columns:auto 1fr;align-items:center;gap:7px;margin-top:9px;font-weight:800;display:grid}#nickname{min-width:0;padding:5px 6px}#leaderboard-status{color:#d4d2c9;margin:8px 0 6px;line-height:1.3}#leaderboard-times{font-variant-numeric:tabular-nums;gap:3px;min-height:18px;margin:0 0 7px;padding-left:24px;display:grid}#leaderboard-times li{padding-left:2px}#leaderboard-times span{float:right;color:#f4e8d0;font-weight:800}#retry-score{width:100%;margin-bottom:7px;color:#171a20!important;background:#ff6847!important}#account-panel{color:#b9b9b4}#account-panel summary{cursor:pointer}#sign-in-form{gap:6px;margin-top:8px;display:grid}#sign-in-form label{grid-template-columns:52px 1fr;align-items:center;gap:6px;display:grid}#sign-in-form input{min-width:0;padding:6px}@media (width<=900px),(height<=620px){#leaderboard{max-height:42vh;overflow:auto}#leaderboard-times{display:none}}@media (width<=520px){#race-ready{grid-template-columns:1fr}#start-race{width:100%}#journey-panel{overflow-x:auto}#reward-path{grid-template-columns:repeat(4,108px);min-width:444px}}@media (height<=620px){#race-result{padding:14px 18px 12px}#result-medal{border-width:5px;width:72px;height:72px;font-size:14px}#result-time{margin:8px 0;font-size:22px}.car-style-card{margin-bottom:8px}.result-mastery,#new-rewards{margin-bottom:9px;padding:7px 10px}#result-mastery-goals li{font-size:11px}.result-actions button{padding:9px 16px;font-size:13px}}
