@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=Barlow:wght@400;500;600;700;800&display=swap');
:root{--lime:#c8fa51;--text:#f0f4ef;--muted:#9eacb3;--panel:#0b151c;--line:#ffffff20;font-family:Barlow,Arial,sans-serif;color:var(--text);background:#080f17;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:4px}button{border:1px solid var(--line);background:#0c1921c9}button:hover:not(:disabled){border-color:var(--lime)}[hidden]{display:none!important}#game,.vignette{position:fixed;inset:0;width:100%;height:100%;display:block}.vignette{pointer-events:none;background:linear-gradient(90deg,#040c15dc 0%,#040c1530 42%,transparent 66%),linear-gradient(0deg,#020810ab,transparent 25%,transparent 80%,#050e1980)}#masthead{position:fixed;top:0;left:0;right:0;height:90px;display:flex;align-items:center;gap:28px;padding:0 38px;z-index:5;border-bottom:1px solid #ffffff12;background:linear-gradient(#080e16b0,transparent)}.brand{color:var(--text);text-decoration:none;font-size:22px;font-weight:800;letter-spacing:1.5px;display:flex;align-items:center;gap:12px}.brand small{font-size:10px;letter-spacing:3px;display:block;margin-top:2px;color:var(--lime)}.brand-mark{position:relative;width:40px;height:38px;background:var(--lime);color:#0a1117;font-size:35px;line-height:38px;font-weight:900;transform:skew(-10deg);padding-left:7px;letter-spacing:-7px}.brand-mark span{font-size:24px;position:absolute;left:22px;top:-11px;letter-spacing:0}.build-tag{font-size:12px;letter-spacing:1.5px;color:var(--muted);margin-left:auto}.build-tag span{padding:0 10px;color:#ffffff40}.icon-button{border:0;border-left:1px solid var(--line);background:none;padding:10px 0 10px 22px;font-size:11px;letter-spacing:1px}#garage{position:fixed;inset:90px 0 0;overflow:auto;scrollbar-width:thin}.loadout{width:365px;margin:26px 0 28px 38px;position:relative;z-index:2}.eyebrow{font-size:11px;letter-spacing:2px;color:#b6c3cc;font-weight:600}.eyebrow>span{color:var(--lime);margin-right:9px}h1,h2{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;text-transform:uppercase;line-height:.94;letter-spacing:.5px;margin:17px 0 0}h1{font-size:42px}h1 em{font-style:normal;color:var(--lime)}.intro{font-size:13px;color:var(--muted);margin:12px 0 22px}.section-label{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:1.25px;color:var(--muted);margin:17px 0 8px;font-weight:600}.live-label{color:var(--lime)}.map-card{padding:15px 17px;width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(110deg,#224035c9,#0d202acd);border:1px solid #c8fa5170;border-left:3px solid var(--lime)}.map-card small{display:block;font-size:9px;letter-spacing:1.5px;color:#b4c7c3}.map-card strong{display:block;font-family:'Barlow Condensed',Impact,sans-serif;text-transform:uppercase;font-size:31px;line-height:1.3}.map-card span>span{font-size:12px;color:#bdcbc9}.map-card b{color:var(--lime);padding-left:14px}.map-stamp{font-weight:800;font-family:'Barlow Condensed',Impact,sans-serif;font-size:28px!important;line-height:1.05;color:var(--lime)!important;text-align:right}.map-stamp small{font-size:20px;color:var(--lime);opacity:.5}.future-maps{display:flex;gap:8px;margin-top:7px}.future-maps button{width:50%;font-size:10px;padding:9px;text-align:left;color:#a1adb5;background:#101c2580}.future-maps strong{margin-left:5px;font-size:12px}.future-maps small{display:block;font-size:8px;letter-spacing:1px;color:#778891;margin:4px 0 0 19px}.equipment{display:flex;align-items:center;padding:11px 13px;width:100%;text-align:left;border-color:#c8fa5150;gap:14px}.equipment strong,.rider-options strong{display:block;font-size:14px;font-weight:600}.equipment small,.rider-options small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.item-symbol{font-size:28px;color:var(--lime)}.check{color:var(--lime);margin-left:auto}.wheel-options{display:flex;gap:7px}.wheel-options button{width:33.333%;position:relative;padding:8px 4px;background:#101b2490}.wheel-options button.selected{border-color:#c8fa5150}.wheel-options button>span{display:block;font-size:23px;line-height:1.05;color:#a8b6bb}.wheel-options button.selected>span{color:var(--lime)}.wheel-options strong{display:block;font-size:10px;font-weight:500;margin-top:5px}.wheel-options button:disabled{opacity:.5}.wheel-options small{font-size:7px;position:absolute;right:5px;top:6px}.rider-options{display:flex;gap:8px}.rider-options button{display:flex;align-items:center;gap:9px;width:50%;padding:10px;text-align:left}.rider-options .selected{border-color:#c8fa5150}.rider-options small{font-size:8px;letter-spacing:.5px}.rider-options button:not(.selected) .check{visibility:hidden}.swatch{width:25px;height:32px;display:block;background:linear-gradient(0deg,#122330 40%,#54c6b7 40%,#54c6b7 67%,#b77752 67%);border-radius:10px 10px 5px 5px}.swatch.maya{background:linear-gradient(0deg,#233045 40%,#b679e6 40%,#b679e6 67%,#8b513e 67%)}#start{background:var(--lime);color:#101b12;border:0;width:100%;padding:15px 17px;margin-top:20px;display:flex;justify-content:space-between;font-weight:800;letter-spacing:1.3px;font-size:14px}#start:disabled{opacity:.6}#load-status{font-size:10px;color:#b2bdbf;text-align:center;min-height:13px;margin:8px 0}.scene-caption{position:fixed;right:42px;bottom:91px;text-align:right;pointer-events:none}.scene-caption h2{font-size:83px;color:#f5f7ee;text-shadow:0 3px 25px #00141c}.scene-caption .eyebrow{color:var(--lime)}.track-stats{display:flex;justify-content:flex-end;gap:29px;margin-top:21px}.track-stats strong{font-family:'Barlow Condensed',Impact,sans-serif;display:block;font-size:24px;font-weight:600}.track-stats small{display:block;font-size:8px;color:#adbac2;letter-spacing:1px;margin-top:3px}.scene-caption p{color:#a6b5bf;font-size:10px;margin-top:21px}.preview-controls{position:fixed;bottom:24px;right:42px;display:flex;gap:22px;align-items:center;font-size:10px;letter-spacing:1px}.preview-controls button{font-size:10px;padding:9px 12px}.preview-controls label{display:flex;align-items:center;gap:10px;color:#bac7cd}.preview-controls input{width:90px;accent-color:var(--lime)}#hud{position:fixed;inset:0;pointer-events:none}#hud button{pointer-events:auto}.timer-block{position:absolute;top:115px;left:38px}.timer-block small{display:block;font-size:11px;letter-spacing:2px;color:var(--lime)}.timer-block strong{font-family:'Barlow Condensed',monospace;font-size:60px;display:block;font-variant-numeric:tabular-nums;line-height:1.2}.timer-block>span{font-size:11px;color:#bbcbd0;letter-spacing:1.5px}.race-top{position:absolute;top:113px;right:38px;display:flex;gap:8px}.race-top button{padding:10px 12px;font-size:11px}kbd{font:inherit;border:1px solid #ffffff35;padding:2px 4px;border-radius:3px;font-size:10px;color:#cbd4d6}.race-top kbd{margin-left:8px}.race-bottom{position:absolute;bottom:95px;left:38px;right:38px;display:flex;gap:35px;align-items:end}.speed-block{width:170px}.speed-block>span{display:flex;align-items:baseline;gap:8px}.speed-block strong{font-family:'Barlow Condensed',Impact,sans-serif;font-size:72px;line-height:.9}.speed-block small{font-size:11px;color:var(--muted)}.speed-block b{font-size:9px;display:block;color:var(--lime);letter-spacing:1.5px;margin:12px 0}.speed-meter,.route-meter{height:3px;background:#ffffff25}.speed-meter i,.route-meter i{display:block;height:100%;background:var(--lime);width:0}.route-block{flex:1;max-width:340px;margin-bottom:1px}.route-block>div:first-child{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;margin-bottom:12px}.route-block strong{color:var(--lime)}#minimap{margin-left:auto;width:180px;height:150px;background:#08121aaa;border:1px solid #ffffff18;border-radius:5px}.drive-controls{position:absolute;bottom:26px;left:38px;right:38px;display:flex;justify-content:space-between;align-items:center}.keyboard-hint{font-size:9px;color:#b7c4cc;letter-spacing:1px}.keyboard-hint span{margin:0 8px}#reverse{padding:12px 16px;font-size:11px;letter-spacing:1px;display:flex;align-items:center;gap:9px}#reverse>span{font-size:24px;line-height:.8}#reverse b{font-size:9px;color:var(--lime)}#reverse[aria-pressed=true]{background:var(--lime);color:#09130a}#reverse[aria-pressed=true] b{color:#243814}#countdown{position:absolute;top:35%;left:0;right:0;text-align:center;font-family:'Barlow Condensed',Impact,sans-serif;font-size:140px;font-weight:800;color:var(--lime);text-shadow:0 2px 45px #192d09}#toast{position:absolute;top:26%;left:20%;right:20%;text-align:center;color:var(--lime);font-size:14px;letter-spacing:2px;text-shadow:0 2px 10px #000}#modal{position:fixed;inset:0;z-index:10;background:#040c14bd;backdrop-filter:blur(9px);display:grid;place-items:center;padding:20px}.modal-card{width:min(450px,100%);padding:35px;background:#0e1b25;border:1px solid #ffffff25;border-top:3px solid var(--lime)}.modal-card h2{font-size:53px;margin-top:17px}.modal-card p{font-size:14px;color:#aebfc9;line-height:1.5}.modal-actions{display:grid;gap:9px;margin-top:25px}.modal-actions button{padding:14px;font-size:12px;letter-spacing:1px}.modal-actions button:first-child{background:var(--lime);color:#0a1613;border:0;font-weight:800}#finish-time{font-family:'Barlow Condensed',monospace;font-size:57px;color:var(--lime)}#joystick{display:none;pointer-events:auto;position:absolute;width:112px;height:112px;bottom:25px;left:22px;background:#0b19296e;border:1px solid #ffffff45;border-radius:100%;touch-action:none}#stick{width:44px;height:44px;position:absolute;left:33px;top:33px;border:1px solid #c8fa5190;border-radius:100%;background:#c8fa5140;pointer-events:none}
@media(min-width:1100px) and (max-height:830px){#masthead{height:72px}#garage{top:72px}.loadout{margin-top:17px;width:330px}h1{font-size:35px}.intro{margin:9px 0 13px}.section-label{margin-top:12px}.map-card{padding:9px 14px}.map-card strong{font-size:27px}.equipment{padding:8px 11px}.wheel-options button{padding:6px 3px}.rider-options button{padding:8px}#start{margin-top:15px;padding:13px}.scene-caption h2{font-size:70px}}
@media(max-width:900px){#masthead{height:72px;padding:0 22px}.brand{font-size:17px}.brand small{font-size:8px}.build-tag{font-size:9px}.icon-button{font-size:9px}#garage{top:72px}.loadout{margin:23px;width:315px}h1{font-size:36px}.scene-caption{right:24px;bottom:98px}.scene-caption h2{font-size:55px}.scene-caption .eyebrow{font-size:9px}.track-stats{gap:17px}.track-stats strong{font-size:20px}.scene-caption p{max-width:180px;margin-left:auto}.preview-controls{right:24px;gap:10px}.preview-controls label{display:none}.timer-block{top:95px;left:22px}.race-top{top:95px;right:22px}.race-bottom{left:22px;right:22px;gap:20px}.drive-controls{left:22px;right:22px}.keyboard-hint{font-size:8px}}
@media(pointer:coarse){#joystick{display:block}.keyboard-hint{display:none}.drive-controls{justify-content:flex-end}.race-bottom{bottom:155px}.race-bottom .route-block{display:none}.speed-block{width:120px}.speed-block strong{font-size:55px}#reverse{min-height:52px}}
@media(max-width:600px){#masthead{height:66px;padding:0 16px;gap:12px}.brand-mark{width:31px;height:30px;font-size:28px;line-height:30px}.brand-mark span{left:17px;font-size:19px}.brand{font-size:16px;gap:9px}.brand small{letter-spacing:2px}.build-tag{display:none}.icon-button{margin-left:auto;font-size:8px;padding-left:12px}#garage{top:66px;background:linear-gradient(0deg,#061019e8 45%,#06101930 100%)}.loadout{width:auto;margin:255px 16px 24px}.loadout>.eyebrow,.loadout>h1,.loadout>.intro{display:none}.scene-caption{position:absolute;top:25px;left:19px;right:auto;bottom:auto;text-align:left}.scene-caption h2{font-size:43px;margin-top:9px}.scene-caption .eyebrow{font-size:8px;max-width:180px;letter-spacing:1.5px}.track-stats{margin-top:15px;justify-content:flex-start;gap:16px}.track-stats strong{font-size:17px}.track-stats small{font-size:7px}.scene-caption p{display:none}.preview-controls{position:absolute;top:203px;bottom:auto;right:16px}.preview-controls button{font-size:9px}.section-label{font-size:10px;margin-top:14px}.map-card{padding:11px 14px}.map-card strong{font-size:29px}.equipment strong,.rider-options strong{font-size:14px}#load-status{font-size:11px}.timer-block{top:87px;left:17px}.timer-block strong{font-size:42px}.timer-block>span{font-size:9px}.race-top{top:83px;right:15px;flex-direction:column;gap:6px}.race-top button{font-size:9px;padding:8px}.race-top kbd{display:none}.race-bottom{left:18px;right:16px;bottom:159px}.route-block{display:none}#minimap{width:120px;height:100px}.speed-block strong{font-size:52px}.speed-block{width:105px}.drive-controls{right:16px;bottom:46px}#reverse{font-size:9px;padding:12px 10px;display:block;max-width:154px}#reverse span{vertical-align:middle;margin-right:5px}#reverse b{display:block;margin-top:8px}#joystick{display:block}.keyboard-hint{display:none}#toast{font-size:11px;left:8%;right:8%;top:28%}#countdown{font-size:100px}.modal-card{padding:25px}.modal-card h2{font-size:45px}}
@media(max-height:520px) and (pointer:coarse){#masthead{height:48px}.timer-block,.race-top{top:62px}.timer-block strong{font-size:35px}.race-bottom{bottom:90px;left:150px}.speed-block strong{font-size:36px}#minimap{height:90px;width:110px}.drive-controls{bottom:16px}#joystick{bottom:15px}#garage{top:48px}.loadout{margin:20px;width:310px}.scene-caption{top:auto;bottom:80px;left:auto;right:20px}.scene-caption h2{font-size:43px}.preview-controls{top:auto;bottom:22px}.scene-caption p{display:none}}
.brand{position:relative;display:block;padding-bottom:11px}.brand img{display:block;width:180px;height:auto}.brand-subtitle{font-size:8px;letter-spacing:3px;color:var(--lime);position:absolute;right:0;bottom:0}.wheel-options{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.wheel-options button{width:100%;min-height:69px;padding:9px 4px}.wheel-options strong{font-size:10px;line-height:1.25}.wheel-options .white-led{color:white;text-shadow:0 0 8px #fff}.wheel-options .rgb-led{color:#72e0f5;text-shadow:-4px 0 6px #e955bb,4px 0 6px #84ff75}.wheel-note{font-size:10px;line-height:1.3;color:#91a2ae;margin:7px 0 0}.preview-controls select{font:inherit;background:#0c1921;color:#dbe6e9;border:1px solid #ffffff35;padding:7px;max-width:105px}.scene-caption{top:123px;bottom:auto}.scene-caption h2{font-size:58px}.scene-caption .track-stats{gap:20px}.scene-caption p{max-width:280px;margin-left:auto}.vignette{background:linear-gradient(90deg,#040c15e6 0%,#040c1520 41%,transparent 64%),linear-gradient(0deg,#02081080,transparent 23%,transparent 85%,#050e1960)}
@media(max-width:900px){.brand img{width:150px}.scene-caption{top:105px;right:22px}.scene-caption h2{font-size:45px}.preview-controls .graphics-label{display:flex;font-size:10px}}
@media(max-width:600px){.brand img{width:145px}.brand-subtitle{font-size:7px;letter-spacing:2px}.scene-caption{top:20px;right:auto}.scene-caption h2{font-size:37px}.preview-controls{top:211px;right:16px;gap:8px}.preview-controls .graphics-label{display:flex;font-size:9px;gap:5px}.preview-controls select{padding:5px}.loadout{margin-top:268px}.wheel-options strong{font-size:11px}.wheel-note{font-size:11px}.wheel-options button{min-height:73px}}
/* Chair catalogue and full-height showroom. */
.chair-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.chair-tile{position:relative;display:flex;align-items:center;text-align:left;gap:7px;min-height:72px;padding:7px;border-radius:3px;min-width:0}
.chair-tile img,.chair-placeholder{width:43px;height:58px;object-fit:contain;flex:none}
.chair-tile strong{display:block;font-size:13px;line-height:1.2}.chair-tile small{display:block;font-size:8px;letter-spacing:.7px;color:#9eacb3;margin-top:5px}
.chair-tile.selected{border-color:var(--lime);background:#b9ed4820}.chair-tile .check{position:absolute;top:5px;right:6px;font-size:10px;color:var(--lime)}
.chair-tile.forthcoming{opacity:.68;background:#0b1826b8}.chair-placeholder{position:relative;border:1px dashed #8095a640;border-radius:5px;background:linear-gradient(135deg,#52627220,transparent)}.chair-placeholder:after{content:'?';display:grid;place-items:center;height:100%;font-size:24px;color:#8197aa}
@media(min-width:601px){.loadout{width:345px;margin-left:28px;padding:16px;background:#07131dda;border:1px solid #ffffff12;border-radius:7px}.loadout h1{font-size:34px}.loadout .intro{font-size:12px;margin:10px 0}.loadout .section-label{margin-top:13px}.scene-caption{top:12px;right:26px;display:flex;align-items:center;gap:16px;text-align:right}.scene-caption h2{font-size:29px;margin:0}.scene-caption h2 br{display:none}.scene-caption>.eyebrow,.scene-caption>p{display:none}.scene-caption .track-stats{margin:0;gap:15px}.scene-caption .track-stats strong{font-size:18px}.scene-caption .track-stats small{font-size:7px}.preview-controls{position:fixed;bottom:15px;right:24px}.loadout #start{position:sticky;bottom:10px;box-shadow:0 0 15px #08131c}}
@media(max-width:600px){#garage{background:none}.loadout{margin:calc(100dvh - 130px) 12px 20px;padding:16px;background:#07131df5;border:1px solid #ffffff25;border-radius:14px}.loadout:before{content:'YOUR LOADOUT · SCROLL TO CONFIGURE';display:block;color:var(--lime);font-size:10px;letter-spacing:1.5px;text-align:center;margin:0 0 18px}.scene-caption{top:13px;left:17px;right:17px;display:flex;align-items:center;justify-content:space-between}.scene-caption h2{font-size:25px;margin:0}.scene-caption h2 br{display:none}.scene-caption>.eyebrow,.scene-caption .track-stats{display:none}.preview-controls{top:calc(100dvh - 185px);right:18px}.chair-tile{min-height:77px}.chair-tile strong{font-size:14px}.vignette{background:linear-gradient(0deg,#02081080,transparent 25%,transparent 85%,#050e1960)}}
.alias-label{display:block;margin:20px 0;font-size:12px;letter-spacing:2px}.alias-label input{display:block;width:100%;margin-top:8px;padding:14px;background:#11222d;border:1px solid #526771;border-radius:5px;color:white;font:inherit;font-size:16px;letter-spacing:0}.solo-button{width:100%;padding:12px;margin-top:8px;background:transparent;color:#c8fa51;border:1px solid #526771}#online-lobby{position:fixed;inset:0;z-index:25;background:#07111be8;display:grid;place-items:center;padding:90px 20px 25px;overflow:auto}#online-lobby[hidden]{display:none}.lobby-card{width:min(700px,100%);padding:30px;background:#10212d;border:1px solid #4b6571;border-radius:12px}.lobby-card h2{font-size:clamp(28px,5vw,44px);margin:15px 0}.lobby-card button{padding:15px;background:#c8fa51;color:#081119;border:0;border-radius:4px;font-weight:800;cursor:pointer}.lobby-actions{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.lobby-actions button[hidden]{display:none}#game-list>button{display:block;width:100%;margin:10px 0;text-align:left;background:#203746;color:white}.starting-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid-seat{padding:25px 12px;background:#213b4a;border:1px solid #526771;border-radius:6px;overflow-wrap:anywhere}.online-help{font-size:12px;line-height:1.7;color:#a8beca}#online-standings{position:absolute;top:110px;left:25px;max-width:calc(100vw - 50px);background:#07111bcc;padding:10px;font-size:12px;pointer-events:none}#online-results p{margin:8px 0;font-size:15px}.modal-card{max-height:90vh;overflow-y:auto}
form input:not([type=checkbox]){display:block;width:100%;margin:10px 0;padding:12px;background:#11222d;color:white;border:1px solid #526771;border-radius:4px}form label{display:block;margin:12px 0;font-size:13px}form a{color:#c8fa51}form button{padding:12px;background:#c8fa51;color:#07111b;border:0;border-radius:4px}
