:root{color-scheme:dark;--ink:#edf0e8;--muted:#a3b0b2;--mint:#c9f7c0;--orange:#ff805b;--navy:#101925}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--navy);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid var(--mint);outline-offset:5px}button:disabled{cursor:default}#world,.vignette{position:fixed;inset:0;width:100%;height:100%}#world{touch-action:none}.vignette{pointer-events:none;background:linear-gradient(90deg,rgba(12,21,31,.98) 0%,rgba(12,21,31,.93) 26%,rgba(12,21,31,.48) 49%,rgba(12,21,31,.02) 72%);transition:opacity .8s}.playing .vignette{opacity:0}.brand{position:absolute;top:34px;left:42px;display:flex;align-items:center;gap:13px;z-index:3;font-size:13px;letter-spacing:2.2px;line-height:1.5}.brand b{font-weight:400;color:var(--mint)}.brand small{display:block;color:#8d9ba4;font-size:7px;letter-spacing:2.6px;margin-top:3px}.brand-icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid #83939770;border-radius:50%;font-size:21px;font-weight:900;letter-spacing:-5px;padding-right:5px;transform:rotate(-12deg);color:var(--mint)}.brand-icon span{position:absolute;margin-left:19px;color:var(--orange)}.global-actions{position:absolute;top:33px;right:40px;display:flex;gap:10px;z-index:7}.icon-button{border:1px solid #8da2aa40;background:#111c2ac9;border-radius:50%;width:45px;height:45px;display:flex;gap:3px;align-items:center;justify-content:center;font-size:22px;backdrop-filter:blur(8px)}.icon-button span{font-size:7px;align-self:center;letter-spacing:.5px}.icon-button:hover{background:#263c47}.menu{position:absolute;z-index:2;left:7%;top:50%;transform:translateY(-43%);width:520px;max-width:46vw}.eyebrow{font-size:9px;letter-spacing:2.3px;color:var(--mint);font-weight:600}.status-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 10px #c9f7c070;margin-right:8px;vertical-align:middle}.menu h1{font-size:clamp(46px,5.8vw,86px);line-height:.96;letter-spacing:-4.5px;font-weight:900;margin:27px 0 22px}.menu h1 em{font-style:normal;color:var(--mint)}.intro{font-size:14px;line-height:1.7;color:#a7b5bb;margin-bottom:28px}.setup{max-width:405px}.section-label{font-size:9px;letter-spacing:1.6px;color:#80959f;font-weight:600}.section-label span{color:#c1cdd0;margin-left:9px;font-size:8px}.mode-options{display:flex;gap:9px;margin-top:11px}.mode{display:flex;gap:12px;text-align:left;align-items:center;padding:16px 12px;background:#1c2a34a0;border:1px solid #41545c80;border-radius:5px;flex:1;position:relative;transition:.2s}.mode.active{background:#c9f7c00c;border-color:#c9f7c0a0}.mode:hover{border-color:#c9f7c0a0}.mode-symbol{font-size:21px;color:var(--mint)}.mode b{display:block;font-size:9px;letter-spacing:1.2px}.mode small{display:block;margin-top:6px;font-size:8px;color:#9dabb3;white-space:nowrap}.mode i{position:absolute;top:7px;right:7px;width:4px;height:4px;border-radius:100%;background:#50616b}.mode.active i{background:var(--mint)}.paint-row{display:flex;align-items:center;justify-content:space-between;margin:22px 0}.swatches{display:flex;gap:11px}.swatch{border:none;border-radius:100%;background:var(--paint);width:15px;height:15px;position:relative}.swatch.active:after{content:'';position:absolute;inset:-4px;border:1px solid var(--paint);border-radius:100%}.primary{display:flex;align-items:center;justify-content:space-between;background:var(--mint);border:1px solid var(--mint);color:#152821;width:100%;padding:19px 23px;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:1.8px;transition:background .2s,transform .2s}.primary span{font-size:23px;line-height:.5;font-weight:400}.primary:hover{background:#e0ffdb;transform:translateY(-2px)}.menu-controls{display:flex;gap:17px;margin-top:21px;font-size:8px;color:#83979f;align-items:center;white-space:nowrap}kbd{font-family:inherit;background:#293a4260;border:1px solid #61747e50;border-radius:3px;font-size:8px;padding:3px 4px;min-width:17px;display:inline-block;text-align:center;color:#bac6c9;margin:0 1px}.track-card{position:absolute;bottom:112px;right:44px;z-index:2;border:1px solid #b0bec32c;background:linear-gradient(135deg,#233141e0,#16212ee6);backdrop-filter:blur(15px);width:280px;border-radius:6px;padding:24px}.track-number{font-size:24px;color:var(--mint);font-weight:300;display:flex;align-items:center;gap:17px}.track-number span{font-size:8px;letter-spacing:2.5px;color:#aebcc5}.track-card h2{font-size:25px;letter-spacing:-1px;margin:19px 0 7px;font-weight:500}.track-card p{color:#9baab3;font-size:11px;margin:0 0 20px}.track-tags{display:flex;gap:9px;font-size:6px;letter-spacing:1px;color:#b7c7cd}.track-tags span{padding:7px;border:1px solid #a2b4bf30;border-radius:2px}.track-bottom{border-top:1px solid #9caeb529;margin-top:23px;padding-top:17px;font-size:6px;letter-spacing:.8px;color:#91a2ad;display:flex;align-items:center;gap:2px}.track-bottom .status-dot{width:4px;height:4px}.track-bottom b{margin-left:auto;color:var(--mint);font-size:6px}.menu-footer{position:absolute;z-index:2;bottom:28px;left:42px;right:42px;display:flex;justify-content:space-between;color:#8499a3;font-size:7px;letter-spacing:2px}.tiny-arrow{color:var(--mint);font-size:14px;margin-left:10px}.hidden{display:none!important}.playing .brand{top:25px;left:30px}.playing .brand small{display:none}.playing .brand{font-size:10px}.playing .brand-icon{width:29px;height:29px;font-size:16px}.playing .global-actions{top:23px;right:25px}.hud{position:absolute;inset:0;pointer-events:none}.race-top{position:absolute;top:90px;left:31px;right:31px;display:flex;justify-content:space-between}.lap-card,.timer-card{background:#10202bc9;backdrop-filter:blur(12px);border:1px solid #a0c6cf23;border-radius:5px;padding:18px 22px}.lap-card .section-label{font-size:8px;color:#b8d0cf}#lapDisplay{font-size:12px;letter-spacing:2px;margin:10px 0}#lapDisplay b{font-size:36px;font-weight:500;margin-left:6px;color:var(--mint)}#lapDisplay>span{color:#7f9ba5;font-size:14px;margin-left:5px}#checkpoint{font-size:8px;letter-spacing:1.6px;color:#8faab2}.timer-card{text-align:right;align-self:flex-start;min-width:200px}#timer{font-size:27px;letter-spacing:1px;font-variant-numeric:tabular-nums;margin:8px 0}.best{font-size:7px;letter-spacing:1.3px;color:#91aab3}.best b{font-size:9px;font-weight:500;margin-left:8px;color:var(--mint)}.minimap-wrap{position:absolute;bottom:57px;left:29px;padding:7px 10px 14px;background:#10202bc9;border:1px solid #a0c6cf23;backdrop-filter:blur(12px);border-radius:5px}.minimap-wrap canvas{display:block;width:172px;height:142px}.minimap-wrap>span{display:flex;justify-content:space-between;font-size:7px;letter-spacing:2px;color:#a9c2c7;margin:0 7px}.minimap-wrap i{font-style:normal;color:var(--mint)}.speed-widget{position:absolute;bottom:56px;right:32px;width:176px;padding:13px 17px 16px;background:#10202bdb;border:1px solid #a0c6cf23;border-radius:5px}.speed-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.speed-top>span:first-child{font-size:6px;letter-spacing:1.1px;color:var(--mint)}#gear{border:1px solid #738f9855;padding:4px 6px;font-size:10px;color:var(--mint)}.speed-widget>div:nth-child(2){display:flex;align-items:baseline;gap:10px}.speed-widget b{font-size:68px;font-weight:400;letter-spacing:-5px;font-variant-numeric:tabular-nums;line-height:1.2}.speed-widget div>span{font-size:8px;color:#91aab3;letter-spacing:1px}.speed-meter{height:3px;background:#4b656b60;margin-top:7px}.speed-meter i{display:block;width:0;height:3px;background:var(--mint);transition:width .1s}.boost-widget{position:absolute;bottom:65px;left:50%;transform:translateX(-50%);width:200px}.boost-widget>div:first-child{display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;margin-bottom:9px;text-shadow:0 2px 4px #000}.boost-widget span:first-child{color:var(--mint)}#boostStatus{font-size:6px;letter-spacing:1px;color:#acbfbb}.boost-track{height:5px;transform:skew(-20deg);background:#122a33;border:1px solid #7eaeab40}.boost-track i{display:block;background:var(--mint);width:100%;height:100%;box-shadow:0 0 10px #c9f7c050}.game-hint{position:absolute;bottom:23px;left:50%;transform:translateX(-50%);font-size:8px;white-space:nowrap;color:#aac0c7;text-shadow:0 2px 4px #000}.game-hint>span{margin:0 8px;color:#617b87}.countdown{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);font-size:100px;font-weight:900;font-style:italic;color:var(--mint);text-shadow:0 5px 0 #122b2b,0 0 50px #c9f7c080;pointer-events:none;z-index:5}.countdown small{display:block;font-size:10px;letter-spacing:5px;font-style:normal;font-weight:400;text-align:center;margin-top:10px}.toast{position:absolute;top:28%;left:50%;transform:translate(-50%,-15px);opacity:0;color:var(--mint);background:#10202be6;border:1px solid #c9f7c040;border-radius:4px;padding:13px 23px;font-size:10px;letter-spacing:2px;transition:.3s;pointer-events:none;z-index:6;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}.overlay{position:absolute;inset:0;z-index:9;background:#09151dc4;backdrop-filter:blur(12px);display:grid;place-items:center;padding:24px}.dialog{width:390px;max-width:100%;padding:36px;background:#142630ee;border:1px solid #c9f7c030;border-radius:10px;text-align:center;box-shadow:0 30px 100px #0005}.dialog h2{font-size:46px;font-weight:900;letter-spacing:-2px;margin:20px 0 15px;color:var(--mint)}.dialog p{font-size:12px;line-height:1.7;color:#a5b9be;margin-bottom:27px}.dialog .primary{margin-top:16px}.secondary{width:100%;padding:17px;border:1px solid #b2c6ca40;background:#24394280;border-radius:4px;font-size:10px;letter-spacing:2px;margin-top:10px}.secondary:hover{background:#364c55}.text-button{border:0;background:none;font-size:8px;letter-spacing:2px;padding:20px;color:#b6c8cc}.dialog-controls{border-top:1px solid #9aacb033;padding-top:20px;font-size:8px;line-height:2.4;color:#839ca5}.dialog-controls b{color:#c6d7d8;font-weight:400}.finish-time{font-size:40px;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-1px}.lap-times{display:flex;justify-content:space-between;margin:25px 0;padding:15px 0;border-block:1px solid #9aacb033;font-size:8px;line-height:2.4;color:#8aa3ab}.lap-times b{display:block;font-size:12px;color:#d8e4e2;font-weight:400;font-variant-numeric:tabular-nums}.touch-controls{position:absolute;inset:auto 16px 20px;display:none;align-items:flex-end;justify-content:space-between;z-index:4;pointer-events:none;touch-action:none}.touch-controls button{pointer-events:auto;touch-action:none;border-radius:13px;border:1px solid #c9f7c050;background:#132f3edb;backdrop-filter:blur(10px);height:65px;min-width:62px;font-size:17px;user-select:none;-webkit-user-select:none}.touch-controls button.held{background:#c9f7c050;border-color:var(--mint)}.touch-steer{display:flex;gap:10px}.touch-pedals{display:flex;gap:10px;align-items:flex-end}.touch-pedals button{font-size:9px;letter-spacing:1px}.touch-pedals .gas{height:83px;background:#c9f7c0df;color:#142b25;border-color:var(--mint);font-weight:700}.touch-controls .touch-boost{height:45px;min-width:68px;font-size:8px;letter-spacing:1px;margin-bottom:6px;color:var(--mint)}
@media(min-width:1600px){.menu{left:9%}.track-card{right:6%;bottom:130px}}
@media(max-height:760px) and (min-width:761px){.menu{top:52%;transform:translateY(-43%)}.menu h1{font-size:60px;margin:22px 0 16px}.intro{margin-bottom:20px}.paint-row{margin:18px 0}.brand{top:23px}.track-card{bottom:80px}.menu-controls{margin-top:16px}.mode{padding:13px 12px}.primary{padding:17px 22px}}
@media(pointer:coarse),(max-width:760px){.playing .touch-controls{display:flex}.playing .boost-widget{bottom:128px}.playing .speed-widget{bottom:125px}.playing .minimap-wrap{bottom:127px}.game-hint{display:none}.menu-controls{font-size:0}.menu-controls:after{content:'HOLD BRAKE + STEER AT SPEED TO DRIFT';font-size:7px;letter-spacing:1px}.menu-controls>*{display:none}}
@media(max-width:760px){.brand{top:22px;left:23px;font-size:10px}.brand small{font-size:6px;letter-spacing:1.6px}.brand-icon{width:33px;height:33px;font-size:18px}.global-actions{right:20px;top:22px}.icon-button{width:38px;height:38px}.menu{top:48%;left:7%;width:86%;max-width:440px;transform:translateY(-39%)}.menu h1{font-size:clamp(47px,10.5vw,72px);letter-spacing:-3px;line-height:.98;margin:21px 0 17px}.intro{font-size:12px;margin-bottom:25px}.eyebrow{font-size:7px;letter-spacing:1.6px}.setup{max-width:370px}.vignette{background:linear-gradient(90deg,#0c151ff2,#0c151fc9 45%,#0c151f70),linear-gradient(0deg,#0c151f50,transparent)}.track-card{display:none}.menu-footer{left:23px;right:23px;bottom:22px;font-size:6px;letter-spacing:1.2px}.menu-footer>span:last-child{display:none}.mode{padding:15px 11px}.mode small{font-size:8px}.playing .brand{left:18px;top:20px}.playing .brand>div{font-size:8px;letter-spacing:1.2px}.playing .global-actions{right:16px;top:17px}.race-top{left:16px;right:16px;top:73px}.lap-card,.timer-card{padding:12px;min-width:0}.lap-card .section-label{font-size:6px;letter-spacing:.8px}#lapDisplay{margin:6px 0;font-size:9px}#lapDisplay b{font-size:27px}#checkpoint{font-size:6px;letter-spacing:.7px}.timer-card .section-label{font-size:7px}#timer{font-size:19px;margin:7px 0}.best{font-size:5px;letter-spacing:.7px}.best b{font-size:7px;margin-left:4px}.minimap-wrap{left:16px;bottom:50px;padding:3px 4px 10px}.minimap-wrap canvas{width:105px;height:85px}.minimap-wrap>span{font-size:5px;letter-spacing:1px}.speed-widget{right:16px;width:115px;padding:10px 12px;bottom:50px}.speed-widget b{font-size:45px;letter-spacing:-3px}.speed-widget div>span{font-size:6px}.speed-top>span:first-child{font-size:5px;letter-spacing:.3px}#gear{font-size:7px;padding:2px 4px}.boost-widget{width:110px;bottom:67px}.boost-widget>div:first-child{font-size:6px;letter-spacing:1px;gap:10px}#boostStatus{font-size:5px;letter-spacing:0}.toast{top:30%;font-size:8px;letter-spacing:1px;padding:12px 16px}.dialog{padding:29px}.dialog h2{font-size:41px}.countdown{font-size:80px}}
@media(max-height:620px){.menu{top:52%;transform:translateY(-40%)}.menu h1{font-size:44px;margin:14px 0}.intro{display:none}.setup{max-width:360px}.mode-options{margin-top:8px}.mode{padding:11px}.paint-row{margin:17px 0}.menu-controls{margin-top:13px}.menu-footer{bottom:14px}.playing .race-top{top:65px}.playing .lap-card{padding:10px 14px}#lapDisplay{margin:1px 0}.minimap-wrap{display:none}.touch-controls{bottom:12px}.playing .boost-widget{bottom:25px}.playing .speed-widget{bottom:110px}.dialog{padding:20px;width:360px}.dialog h2{font-size:35px;margin:12px 0}.dialog p{margin-bottom:15px}.dialog-controls{display:none}.dialog .primary{margin-top:10px}.lap-times{margin:12px 0}}

/* The expanded garage and campaign. */
.garage-menu{top:105px;transform:none;width:520px;max-width:48vw;max-height:calc(100dvh - 150px);overflow-y:auto;overflow-x:hidden;padding:3px 13px 8px 3px;scrollbar-width:thin;scrollbar-color:#6a8b8750 transparent}.garage-menu h1{font-size:51px;letter-spacing:-2.8px;line-height:.98;margin:17px 0 12px}.garage-menu .intro{font-size:11px;margin:0 0 20px}.garage-menu .setup{max-width:100%}.garage-menu .mode-options{margin-top:0}.garage-menu .mode{padding:13px 12px;justify-content:center}.garage-menu .mode b{font-size:8px}.garage-menu .mode small{font-size:7px}.selection-section{margin-top:19px}.selection-section>.section-label{display:flex;align-items:center}.selection-section>.section-label b{margin-left:auto;color:#7c9d9d;font-size:6px;letter-spacing:.8px;font-weight:400}.chapter-options{display:flex;gap:7px;margin-top:10px}.chapter-option{flex:1;min-width:0;background:#1d303a9c;border:1px solid #6f92923b;border-radius:4px;padding:10px 3px;color:#a7bcbc}.chapter-option b{display:block;font-size:16px;font-weight:400;color:var(--mint)}.chapter-option small{display:block;font-size:6px;margin-top:5px;white-space:nowrap}.chapter-option.active{border-color:#c9f7c0a0;background:#c9f7c012}.chapter-option:disabled{opacity:.35}.chapter-summary{padding:12px 2px 0}.chapter-summary>span{font-size:12px;letter-spacing:.2px;color:var(--mint)}.chapter-summary p{font-size:10px;line-height:1.5;color:#a1b7bc;margin:6px 0}.chapter-summary>small{color:#72918f;font-size:6px;letter-spacing:.8px}.car-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}.car-option{min-width:0;background:#1d303a9c;border:1px solid #6f92923b;border-radius:4px;padding:2px 6px 10px;text-align:left}.car-option.active{border-color:#c9f7c0a0;background:#c9f7c012}.car-option:hover,.track-option:hover{border-color:#c9f7c080}.car-option canvas{width:100%;height:auto;display:block}.car-option>b{display:block;font-size:10px;font-weight:500;white-space:nowrap}.car-option>small{font-size:5px;letter-spacing:.5px;color:#8facb0;display:block;margin:5px 0 8px}.car-stats{display:flex;gap:4px}.car-stats>span{height:2px;flex:1;background:#718f8c40}.car-stats i{height:2px;background:var(--mint);display:block}.car-description{color:#9ab1b8;font-size:9px;line-height:1.5;min-height:14px;margin:9px 2px 0}.track-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.track-option{display:flex;align-items:center;gap:8px;padding:4px 10px;background:#1d303a9c;border:1px solid #6f92923b;border-radius:4px;text-align:left}.track-option.active{border-color:#c9f7c0a0;background:#c9f7c012}.track-option canvas{width:54px;height:43px}.track-option b{display:block;font-size:10px;font-weight:500}.track-option small{display:block;color:#86a6ab;font-size:5px;letter-spacing:.6px;margin-top:6px}.garage-menu .paint-row{margin:19px 0}.garage-menu .primary{padding:17px 20px}.garage-menu .menu-controls{gap:12px;margin-top:17px}.save-notice{color:#6e8a92;font-size:7px;line-height:1.5;margin:13px 0 0}.track-card{bottom:95px;width:290px;padding:23px}.track-number>#trackNumber{font-size:23px;color:var(--mint);letter-spacing:0}.track-number>#trackTag{font-size:7px;letter-spacing:1.6px}#trackPreview{width:100%;height:125px;display:block;margin:5px 0 0}.track-card h2{margin-top:8px}.track-tags{font-size:5px;gap:5px}.track-tags span{padding:7px 5px}.camera-button{width:64px;border-radius:22px;font-size:18px}.camera-button>span{font-size:5px;letter-spacing:.6px}.story-dialog{width:460px;text-align:left;padding:33px}.story-dialog h2{font-size:35px;letter-spacing:-1.5px;line-height:1.05;margin:19px 0 10px}.story-dialog>p{font-size:10px;margin-bottom:22px}.story-dialogue p{display:flex;gap:13px;align-items:flex-start;margin:0 0 16px;font-size:12px;line-height:1.6}.story-dialogue b{flex:0 0 36px;color:var(--mint);font-size:9px;padding-top:3px}.story-dialogue span{color:#c5d3d2}.story-objective{border-block:1px solid #95b0ab25;padding:16px 0;margin:20px 0}.story-objective span{display:block;font-size:7px;letter-spacing:1.7px;color:var(--mint);margin-bottom:9px}.story-objective b{display:block;font-size:12px;font-weight:400}.story-objective small{display:block;font-size:9px;color:#89a7ad;margin-top:8px}.story-dialog .text-button{display:block;margin:auto}.story-outro{text-align:left;font-size:10px;line-height:1.6;color:#b5c9ca;border-top:1px solid #91a9ae2a;padding-top:8px}.story-outro b{color:var(--mint);font-size:8px;margin-right:4px}.finish-time{font-size:33px}.dialog #finishTitle{font-size:35px;line-height:1.05}.dialog:has(#finishTitle){max-height:calc(100dvh - 35px);overflow:auto;padding:26px 30px}.dialog:has(#finishTitle) p{margin-bottom:15px;font-size:10px}.dialog #again.secondary{background:#25404a;border-color:#9bb8b840;color:#cddfda;justify-content:center;font-size:9px;padding:13px}.dialog #nextChapter{font-size:9px}.dialog .lap-times{margin:15px 0;padding:10px 0}.menu-footer{pointer-events:none}
@media(max-width:1000px){.garage-menu{max-width:55vw}.track-card{right:25px;width:245px;padding:19px}.track-tags{flex-wrap:wrap}.track-bottom{flex-wrap:wrap;font-size:5px}.track-bottom b{font-size:5px}.brand{left:30px}.garage-menu h1{font-size:45px}}
@media(max-width:760px){.garage-menu{top:100px;left:6%;width:88%;max-width:none;max-height:calc(100dvh - 140px);padding-right:8px}.garage-menu h1{font-size:42px;margin-top:16px;margin-bottom:10px}.garage-menu .intro{font-size:10px;margin-bottom:16px}.garage-menu .mode{padding:12px 8px}.garage-menu .mode small{font-size:6px}.car-option>b{font-size:8px}.car-option>small{font-size:4px;letter-spacing:.25px}.car-option{padding-inline:5px}.selection-section{margin-top:16px}.garage-menu .menu-controls{margin-top:14px}.garage-menu .paint-row{margin:18px 0}.playing .brand>div{font-size:7px;letter-spacing:.8px}.playing .brand{gap:7px;left:14px}.playing .global-actions{gap:6px;right:13px}.playing .icon-button{width:32px;height:32px;font-size:18px}.playing .camera-button{width:51px}.playing .camera-button span{font-size:4px}.playing .brand-icon{width:23px;height:23px;font-size:14px}.track-option{padding:3px 6px;gap:5px}.track-option canvas{width:44px;height:38px}.track-option b{font-size:9px}.track-option small{font-size:4px}.chapter-option small{font-size:5px}.story-dialog{padding:27px}.story-dialog h2{font-size:31px}.story-dialogue p{font-size:11px}.story-dialogue b{flex-basis:30px}.selection-section>.section-label b{font-size:5px}.story-dialog{max-height:calc(100dvh - 40px);overflow:auto}.playing .race-top{top:68px}.playing .minimap-wrap{bottom:127px}.playing .speed-widget{bottom:125px}.playing .boost-widget{bottom:128px}}
@media(max-height:650px){.garage-menu{top:80px;max-height:calc(100dvh - 110px)}.garage-menu h1{font-size:33px;margin:12px 0}.garage-menu .intro{display:block;margin-bottom:14px}.garage-menu .menu-controls{display:none}.garage-menu .selection-section{margin-top:14px}.story-dialog{max-height:calc(100dvh - 30px);overflow:auto}.story-dialog h2{font-size:28px}.story-dialogue p{font-size:10px;margin-bottom:10px}.story-objective{margin:12px 0;padding:12px 0}}
@media(max-width:350px){.car-options{grid-template-columns:1fr 1fr}.car-option{display:grid;grid-template-columns:55px 1fr;align-items:center}.car-option canvas{grid-row:1/4;width:55px}.car-stats{margin-top:4px}.playing .brand>div{display:none}.chapter-option small{font-size:4px}}

.drift-widget{position:absolute;bottom:108px;left:50%;transform:translate(-50%,8px);width:200px;padding:11px 14px 10px;background:#172e39e8;border:1px solid #ffbb8555;border-radius:5px;text-align:center;opacity:0;transition:opacity .18s,transform .18s;pointer-events:none}.drift-widget.active{opacity:1;transform:translate(-50%,0)}.drift-widget b{display:block;color:#ffc28b;font-size:13px;letter-spacing:3px;font-style:italic}.drift-widget>span{display:block;font-size:6px;letter-spacing:1.2px;color:#b3c8c8;margin-top:6px}.drift-widget>div{height:2px;background:#ffbb8525;margin-top:8px}.drift-widget i{display:block;height:2px;width:0;background:#ffc28b;box-shadow:0 0 8px #ffc28b60}
@media(pointer:coarse),(max-width:760px){.drift-widget{bottom:165px;width:112px;padding:9px 7px}.drift-widget b{font-size:9px;letter-spacing:1.2px}.drift-widget>span{font-size:4px;letter-spacing:.6px}.drift-widget>div{margin-top:6px}}
@media(max-height:620px) and (min-width:761px){.drift-widget{bottom:100px}}

.audio-panel{position:fixed;top:87px;right:26px;z-index:20;width:280px;padding:21px;background:#142833f5;border:1px solid #b8e8c33d;border-radius:9px;box-shadow:0 18px 60px #0005;backdrop-filter:blur(18px)}.audio-heading{display:flex;align-items:center;justify-content:space-between;color:var(--mint);font-size:8px;letter-spacing:2.5px}.audio-heading button{border:0;background:none;color:#acc7ca;font-size:25px;line-height:20px;padding:0 3px}.audio-panel .radio-label{font-size:6px;letter-spacing:1.8px;color:#7e9ba5;margin:23px 0 6px}.audio-panel h2{font-size:23px;line-height:1.1;font-weight:500;letter-spacing:-.6px;margin:0 0 10px}.audio-panel #audioStatus{font-size:9px;line-height:1.5;color:#a8c1c5;min-height:27px;margin-bottom:18px}.audio-panel label{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#d2e4df}.audio-panel output{color:var(--mint);font-size:9px;font-variant-numeric:tabular-nums}.audio-panel input[type=range]{display:block;appearance:none;width:100%;height:5px;margin:15px 0 25px;border-radius:5px;background:#577d8060;accent-color:var(--mint);cursor:pointer;touch-action:pan-x}.audio-panel input[type=range]::-webkit-slider-thumb{appearance:none;width:17px;height:17px;border-radius:100%;background:var(--mint);box-shadow:0 0 12px #c9f7c030}.audio-master{width:100%;padding:13px;border:1px solid #c9f7c077;border-radius:4px;background:#c9f7c010;color:var(--mint);font-size:8px;letter-spacing:2px}.audio-master:hover{background:#c9f7c024}.audio-panel>small{display:block;margin-top:15px;font-size:6px;line-height:1.6;color:#7e9ba5}.audio-panel>small kbd{font-size:6px;min-width:13px;padding:2px 3px}
@media(max-width:760px){.audio-panel{top:65px;right:13px;width:260px;max-width:calc(100vw - 26px);padding:18px}.audio-panel h2{font-size:22px}}
@media(max-height:520px){.audio-panel{top:60px;max-height:calc(100dvh - 75px);overflow:auto}.audio-panel .radio-label{margin-top:10px}.audio-panel #audioStatus{min-height:0;margin-bottom:10px}.audio-panel input[type=range]{margin-bottom:18px}}

/* Nightfall Festival garage and event board. */
.garage-menu{left:5%;width:540px;max-width:47vw;top:110px;max-height:calc(100dvh - 150px);padding-right:16px}.garage-menu h1{font-size:50px}.garage-menu .intro{font-size:12px;color:#b0c5c8;margin-bottom:12px}.season-strip{display:flex;gap:25px;padding:0 0 18px;border-bottom:1px solid #aac7bb24;margin-bottom:18px}.season-strip>span{font-size:19px;color:var(--mint);letter-spacing:-.5px}.season-strip b{font-size:7px;color:#93aeae;letter-spacing:1.7px;font-weight:400;margin-left:5px}.garage-menu .mode-options{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.garage-menu .mode{padding:13px 6px}.garage-menu .mode b{font-size:7px;letter-spacing:1px}.garage-menu .mode small{font-size:6px;margin-top:6px}.garage-menu .mode.active{box-shadow:inset 0 -2px 0 #c9f7c0}.car-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.car-option{padding:0 9px 12px;background:linear-gradient(145deg,#223c466e,#14242d8c);transition:background .2s,border-color .2s}.car-option canvas{margin-bottom:2px}.car-option>b{font-size:12px}.car-option>small{font-size:6px;margin:5px 0 10px;letter-spacing:.6px}.car-option.active{border-color:#c9f7c09c;background:linear-gradient(145deg,#c9f7c017,#14242db0)}.car-option:hover{background:#33504b60}.car-stats{gap:6px}.car-stats>span,.car-stats i{height:3px}.track-options{max-height:228px;overflow:auto;padding:2px 5px 4px 2px;scrollbar-width:thin;scrollbar-color:#6a8b8750 transparent}.track-option{padding:6px 8px}.track-option canvas{width:50px}.track-option b{font-size:10px}.track-option small{font-size:5px}.event-options{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.event-option{position:relative;display:flex;align-items:center;gap:9px;min-width:0;text-align:left;padding:13px 10px;background:#1d303a9c;border:1px solid #6f92923b;border-radius:5px}.event-option.active{border-color:#f8bc8a99;background:#f8bc8a0e}.event-option:hover{border-color:#f8bc8a77}.event-symbol{font-size:26px;line-height:1;color:#f8bc8a;width:25px;text-align:center}.event-option b{display:block;font-size:10px;font-weight:500}.event-option small{display:block;font-size:5px;letter-spacing:.8px;color:#9bb9bb;margin-top:6px}.event-option i{font-style:normal;font-size:6px;color:#f8bc8a66;margin-left:auto;align-self:flex-start}.event-brief{padding:14px 2px 0}.event-brief>span{font-size:6px;letter-spacing:1.7px;color:#f8bc8a}.event-brief h3{font-size:19px;font-weight:500;margin:6px 0 7px}.event-brief p{font-size:10px;color:#9eb9bd;line-height:1.6;margin:0 0 11px}.event-brief>div{border-top:1px solid #b3cec226;padding-top:10px}.event-brief b{display:block;font-size:8px;color:#dfdfc5;font-weight:400;line-height:1.5}.event-brief>div>span{display:block;font-size:6px;letter-spacing:1px;color:#7e9e9e;margin-top:7px}.showroom{position:absolute;top:16%;right:3.7%;width:44%;z-index:2;pointer-events:none}.showroom-heading{display:flex;justify-content:space-between;padding-inline:30px;font-size:6px;letter-spacing:2px;color:#809f9f}.showroom-heading b{font-weight:400;color:#b8d7c2}#carShowcase{display:block;width:100%;height:auto;margin-top:-10px}.showroom-caption{display:flex;align-items:center;justify-content:space-between;margin:-20px 8% 0}.showroom-caption small{font-size:7px;letter-spacing:2px;color:#f4b387}.showroom-caption h2{font-size:36px;font-weight:500;letter-spacing:-1.5px;margin:8px 0 8px}.showroom-caption p{font-size:10px;line-height:1.6;color:#9ab5b5;max-width:270px;margin:0}.showroom-stamp{font-size:8px;line-height:1.6;letter-spacing:2.5px;color:#a1c4b84d;border:1px solid #a1c4b82b;border-radius:50%;width:87px;height:87px;display:grid;align-content:center;text-align:center;transform:rotate(-10deg)}.track-card{bottom:70px;right:5%;width:40%;padding:17px 22px;display:grid;grid-template-columns:145px 1fr;column-gap:20px}.track-number{grid-column:1/3;justify-content:space-between;margin-bottom:5px}#trackPreview{grid-column:1;grid-row:2/5;height:105px;margin:0}.track-card h2{font-size:22px;margin:13px 0 4px}.track-card p{font-size:10px;line-height:1.5;margin:0 0 9px}.track-tags{align-self:start;flex-wrap:wrap;gap:5px}.track-bottom{grid-column:1/3;margin-top:12px;padding-top:12px}.track-bottom,.track-bottom b{font-size:6px}.event-hud{position:absolute;left:50%;top:90px;transform:translateX(-50%);width:220px;padding:15px 18px;background:#10202be6;border:1px solid #f8bc8a55;border-radius:5px;text-align:center;box-shadow:0 8px 35px #0002}.event-hud>span{font-size:7px;letter-spacing:1.5px;color:#f8bc8a}.event-hud>div:nth-child(2){display:flex;justify-content:center;gap:7px;align-items:baseline;margin:8px 0}.event-hud b{font-size:34px;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums}.event-hud small{font-size:6px;letter-spacing:1px;color:#b8c9c6}.event-hud p{font-size:6px;letter-spacing:.8px;color:#a4bfbd;margin:0 0 9px}.event-progress{height:3px;background:#f8bc8a25}.event-progress i{display:block;height:100%;width:0;background:#f8bc8a}.event-hud footer{font-size:5px;letter-spacing:.6px;color:#829f9e;margin-top:9px;line-height:1.5}.drift-widget b{font-size:11px;letter-spacing:1.5px}.overlay{overflow:auto}.dialog:has(#finishTitle){margin:auto}
@media(min-width:1600px){.garage-menu{left:7%;width:580px}.showroom{right:5%;width:44%;top:17%}.showroom-caption h2{font-size:44px}.track-card{right:7%;width:37%;bottom:85px}}
@media(max-width:1100px){.garage-menu{max-width:50vw;left:4%;width:505px}.garage-menu h1{font-size:44px}.showroom{right:1%;width:43%;top:20%}.showroom-caption h2{font-size:29px}.showroom-caption p{font-size:9px;max-width:230px}.showroom-stamp{display:none}.track-card{width:40%;right:3%;grid-template-columns:100px 1fr;column-gap:12px;padding:15px}.track-card h2{font-size:18px}.track-card p{font-size:9px}.car-option>b{font-size:10px}.car-option>small{font-size:5px}.event-option{gap:5px;padding:11px 7px}.event-option b{font-size:9px}.event-symbol{width:22px}.event-hud{width:180px}.event-hud b{font-size:28px}}
@media(max-width:760px){.garage-menu{left:5%;width:90%;max-width:none;top:95px;max-height:calc(100dvh - 122px);padding-right:10px}.garage-menu h1{font-size:41px}.garage-menu .intro{font-size:11px}.season-strip{gap:25px;padding-bottom:14px;margin-bottom:15px}.season-strip>span{font-size:17px}.season-strip b{font-size:6px}.showroom{display:none}.track-card{display:none}.garage-menu .mode{padding:13px 4px}.garage-menu .mode b{font-size:6px}.garage-menu .mode small{font-size:5px}.car-option>b{font-size:11px}.car-option>small{font-size:5px}.car-options{gap:7px}.car-option{padding:0 7px 10px}.event-option{padding:13px 8px;gap:7px}.event-option b{font-size:10px}.event-option small{font-size:4.5px}.event-symbol{font-size:24px}.event-hud{top:174px;width:180px;padding:10px 13px}.event-hud b{font-size:27px}.event-hud>span{font-size:6px}.event-hud footer{font-size:4.5px}.event-hud p{font-size:5px}.drift-widget b{font-size:8px;letter-spacing:.8px}.car-description{font-size:9px}.track-options{max-height:235px}}
@media(max-height:680px) and (min-width:761px){.garage-menu{top:87px;max-height:calc(100dvh - 115px)}.garage-menu h1{font-size:35px}.showroom{top:12%;width:40%}.showroom-caption h2{font-size:29px}.showroom-caption p{font-size:8px}.track-card{bottom:48px;width:37%;padding:12px 16px}.track-card h2{margin-top:5px}#trackPreview{height:80px}.track-number{margin:0}.track-bottom{display:none}.event-hud{top:75px;padding:10px 14px}.event-hud b{font-size:26px}}
@media(max-height:520px){.event-hud{top:72px;left:50%;width:150px;padding:7px 10px}.event-hud b{font-size:23px}.event-hud footer,.event-hud p{display:none}.event-hud>div:nth-child(2){margin:3px 0}.playing .timer-card{max-width:150px}.garage-menu{top:78px;max-height:calc(100dvh - 95px)}}
@media(max-width:350px){.car-options{grid-template-columns:repeat(2,minmax(0,1fr))}.car-option{display:block}.car-option canvas{width:100%}.event-option b{font-size:8px}.event-option small{font-size:4px}.garage-menu .mode small{display:none}.event-hud{top:165px}}

/* Club Credits and a garage you grow by driving. */
.wallet{display:flex;gap:8px;align-items:center;min-width:116px;padding:6px 13px 6px 8px;border:1px solid #e6c48645;border-radius:28px;background:#172830e8;backdrop-filter:blur(12px)}.credit-coin{display:grid;place-items:center;width:29px;height:29px;border:1px solid #f1cb83;border-radius:50%;font-size:15px;font-weight:800;color:#f1cb83;box-shadow:inset 0 0 0 3px #f1cb8314}.wallet small{display:block;font-size:5px;letter-spacing:1.25px;color:#b7b39a;white-space:nowrap}.wallet b{display:block;font-size:16px;font-weight:500;color:#ffe2a3;line-height:1.2;font-variant-numeric:tabular-nums;margin-top:3px}.car-option .car-access{display:flex;align-items:center;justify-content:space-between;margin:8px 0 10px;font-size:7px;letter-spacing:.8px;color:#f0c686}.car-option .is-owned{color:#a9d8bb}.car-option.locked{border-style:dashed}.car-option.locked canvas{opacity:.82}.car-option.locked.active{border-style:solid;border-color:#f0c68680;background:linear-gradient(145deg,#f0c68610,#14242db0)}.car-shop{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #a1c0b32c;background:#18303a80;border-radius:5px;padding:12px;margin-top:12px}.car-shop b{display:block;font-size:7px;letter-spacing:1.2px;color:#f1cf92;font-weight:500}.car-shop small{display:block;margin-top:7px;font-size:8px;line-height:1.5;color:#a8bebb;max-width:230px}.unlock-car{flex-shrink:0;border:1px solid #efcf91;background:#efcf91;color:#1c2a24;border-radius:4px;padding:13px 12px;font-size:8px;font-weight:800;letter-spacing:.6px}.unlock-car:hover{background:#ffe4b1}.unlock-car:disabled{background:#efcf910e;color:#b6a88d;border-color:#efcf9133;opacity:.75}.primary:disabled{cursor:default;color:#aeb7a7;background:#43514c;border-color:#6f7f7045;transform:none}.earn-help{margin-top:14px;border:1px solid #8ba99a26;border-radius:4px;padding:12px}.earn-help summary{display:flex;justify-content:space-between;list-style:none;cursor:pointer;font-size:6px;letter-spacing:1.1px;color:#aec7bc}.earn-help summary::-webkit-details-marker{display:none}.earn-help summary>span{font-size:11px;color:#edcd92;line-height:.6}.earn-help p{font-size:9px;line-height:1.7;color:#98b6b5;margin:11px 0 6px}.earn-help p b{color:#d5ddc6;font-weight:400}.earn-help>small{display:block;margin-top:10px;font-size:7px;line-height:1.5;color:#dbc795}.run-wallet{position:absolute;left:31px;top:248px;width:195px;padding:11px 16px;background:#122630df;border:1px solid #e7cb7d36;border-radius:5px}.run-wallet>span{font-size:6px;letter-spacing:1.7px;color:#b3b99b}.run-wallet b{display:block;color:#f6d494;font-size:19px;font-weight:500;margin:6px 0;font-variant-numeric:tabular-nums}.run-wallet small{font-size:4.5px;letter-spacing:.6px;color:#89a2a1;display:block;line-height:1.5}.payout{padding:15px;margin:19px 0;border:1px solid #e4c78a4a;border-radius:6px;background:#e4c78a08;text-align:left}.payout-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.payout-head>span{font-size:7px;letter-spacing:1.5px;color:#cfbc90}.payout-head>b{font-size:23px;font-weight:500;color:#ffe1a4;font-variant-numeric:tabular-nums}.payout #payoutLines>span{display:flex;justify-content:space-between;gap:10px;font-size:9px;line-height:1.6;color:#acc5c0;padding:4px 0}.payout #payoutLines b{color:#e3d9b8;font-weight:400;font-variant-numeric:tabular-nums}.payout>small{display:block;font-size:6px;color:#7e9e98;line-height:1.6;border-top:1px solid #b5c09a25;margin-top:9px;padding-top:10px}.playing .wallet{padding:4px 10px 4px 6px;min-width:105px}.playing .wallet .credit-coin{width:25px;height:25px;font-size:13px}.playing .wallet b{font-size:14px}.playing .wallet small{font-size:4px}
@media(max-width:1100px){.car-shop{padding:10px;gap:8px}.unlock-car{padding:12px 9px;font-size:7px}.car-shop small{font-size:7px}.run-wallet{width:180px}}
@media(max-width:760px){.wallet{min-width:99px;padding:5px 10px 5px 6px;gap:6px}.credit-coin{width:25px;height:25px;font-size:13px}.wallet b{font-size:14px}.wallet small{font-size:4px}.brand>div{font-size:8px;letter-spacing:1px}.brand small{font-size:5px;letter-spacing:1px}.car-option .car-access{font-size:6px;margin:7px 0 8px;letter-spacing:.4px}.car-shop{padding:11px;gap:10px}.car-shop small{font-size:8px}.unlock-car{font-size:7px}.car-shop b{font-size:6px}.run-wallet{left:16px;top:174px;width:119px;padding:10px 11px}.run-wallet b{font-size:16px;margin:4px 0}.run-wallet>span{font-size:5px;letter-spacing:1px}.run-wallet small{font-size:4px;letter-spacing:0}.playing .wallet{min-width:83px;gap:4px;padding:3px 7px 3px 4px}.playing .wallet small{display:none}.playing .wallet b{font-size:12px;margin-top:0}.playing .wallet .credit-coin{height:22px;width:22px;font-size:11px}.playing .brand>div{display:none}.playing .global-actions{gap:5px}.payout{padding:13px}.payout-head>b{font-size:21px}}
@media(max-height:620px){.run-wallet{top:auto;bottom:55px;left:29px;width:153px}.playing .run-wallet small{display:none}.run-wallet b{display:inline-block;font-size:17px;margin:0 0 0 10px}.payout{margin:13px 0;padding:12px}}
@media(max-width:350px){.wallet small{display:none}.wallet{min-width:77px;gap:5px}.wallet b{margin:0;font-size:13px}.brand>div{font-size:7px}.brand small{display:none}.car-shop{display:block}.car-shop .unlock-car{width:100%;margin-top:10px}.playing .brand-icon{display:none}.playing .global-actions{left:12px;right:12px;justify-content:flex-end}.playing .wallet{margin-right:auto}.event-hud{top:167px}}
