@font-face{font-family:Barlow;src:url('fonts/display.ttf') format('truetype');font-weight:900;font-display:swap}:root{color-scheme:dark;--orange:#ff652f;--lime:#d8e875;--paper:#ecebdc;--ink:#161817}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:var(--ink);color:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button{cursor:pointer;color:inherit;border:0}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--lime);outline-offset:4px}button:active{transform:translateY(2px)}button:disabled{opacity:.45;cursor:default}[hidden]{display:none!important}#game,#world{position:fixed;inset:0;width:100%;height:100%}#world{touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 180px #090c0a88}.vignette:after{content:'';position:absolute;inset:0;opacity:.15;background:repeating-linear-gradient(0deg,transparent 0 3px,#0003 3px 4px)}header{position:absolute;z-index:3;left:32px;right:32px;top:max(24px,env(safe-area-inset-top));display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}header a,header button{pointer-events:auto}.brand{font-family:Barlow,sans-serif;font-size:25px;font-style:italic;line-height:.9;color:var(--paper);text-decoration:none}.brand span{color:var(--orange)}.brand small{font:10px Arial,sans-serif;letter-spacing:2px;display:block;margin-top:9px}.top-buttons{display:flex;gap:8px}.top-buttons button{height:42px;width:44px;background:#151b19ba;border:1px solid #ffffff38;font-size:23px}.top-buttons #sound[aria-pressed=false]{color:#a4a49a}.race-hud{text-align:center;display:none}.race-hud span{display:block;letter-spacing:3px;font-size:12px}.race-hud strong{font:52px/.95 Barlow,sans-serif;font-style:italic;font-variant-numeric:tabular-nums}.running .race-hud{display:block}#intro{position:absolute;inset:0;background:linear-gradient(90deg,#111512f0,#101613b8 34%,#10161300 75%);padding:118px 6vw 50px;overflow:auto}.intro-copy{position:relative;max-width:510px}.eyebrow{font-size:12px;letter-spacing:2.4px;font-weight:bold;display:flex;align-items:center;gap:10px;color:var(--lime)}.eyebrow i{width:7px;height:7px;background:var(--lime)}h1{font:italic clamp(88px,11vw,158px)/.73 Barlow,Impact,sans-serif;letter-spacing:-2px;position:relative;margin:34px 0 22px;transform:rotate(-3deg);transform-origin:left center}h1 span{color:var(--orange)}h1 sup{font-size:28px;position:absolute;top:7px;margin-left:13px;color:var(--orange)}.pitch{font-size:19px;line-height:1.3;margin:24px 0 18px;font-weight:bold}.win-options{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:1px}.win-options b{display:block;font:25px Barlow,sans-serif;letter-spacing:0}.win-options em{color:#9b9c8b;font-style:normal;font-size:26px}.car-choices{display:flex;gap:6px;margin:24px 0 15px}.car-choices button{background:#1c2320aa;border:1px solid #b9beb445;padding:10px 14px;font:18px Barlow,sans-serif}.car-choices button[aria-pressed=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.contract{display:flex;align-items:center;gap:14px;margin-bottom:14px;max-width:395px}.contract label{font-size:10px;letter-spacing:1.5px;color:#c3c5b7}.contract select{background:transparent;color:var(--paper);padding:8px;border:0;border-bottom:1px solid #8d978d;font-size:13px;flex:1;min-width:0}.contract option{background:var(--ink)}.primary{background:var(--orange);color:#151a16;padding:15px 23px;font:italic 27px Barlow,sans-serif;display:flex;justify-content:space-between;align-items:center;width:min(100%,395px);box-shadow:5px 5px 0 #0a100a66}.primary:hover{background:#ff8956}.primary span{font:32px Arial}.controls-note{font-size:12px;color:#b1b6a7;line-height:1.7;margin-top:17px}.car-stamp{position:absolute;right:7%;bottom:13%;text-align:right;transform:rotate(-3deg)}.car-stamp span{font:14px monospace;color:var(--orange);display:block;letter-spacing:3px}.car-stamp strong{font:italic clamp(40px,5vw,76px) Barlow,sans-serif;display:block}.car-stamp small{font-size:15px}.back{position:fixed;bottom:22px;left:32px;font-size:11px;letter-spacing:1px;color:#bec2b5;text-decoration:none}.playing-only{display:none}.running .playing-only{display:flex}.running #intro{display:none}#objectives{position:absolute;top:99px;left:32px;gap:18px;font-size:10px;letter-spacing:1px}#objectives b{font:24px Barlow,sans-serif;display:block;letter-spacing:0}.running #scoreWrap{position:absolute;top:99px;right:32px;display:flex;align-items:flex-end;flex-direction:column}#scoreWrap small{font-size:10px;letter-spacing:2px}#scoreWrap strong{font:38px Barlow,sans-serif}#combo{color:var(--lime);font-size:12px;height:15px}#notice{position:absolute;left:50%;top:24%;transform:translate(-50%,-8px) rotate(-2deg);opacity:0;transition:opacity .15s,transform .15s;pointer-events:none;background:var(--orange);color:#151a16;padding:10px 23px;font:italic clamp(23px,3vw,38px) Barlow,sans-serif;text-align:center;white-space:nowrap}#notice.show{opacity:1;transform:translate(-50%,0) rotate(-2deg)}#dashboard{position:absolute;left:32px;bottom:35px;align-items:center;gap:24px;background:linear-gradient(90deg,#101613d9,#10161300);padding:14px 40px 14px 0}.speed{min-width:84px}.speed strong{font:italic 74px/.85 Barlow,sans-serif}.speed span{display:block;font-size:11px;letter-spacing:3px;margin-top:8px;color:#c8cebe}.meters{width:185px;display:grid;gap:15px}.meters label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;margin-bottom:5px}.meters b{font-weight:normal;color:#bfc6b4}.meters i{display:block;height:7px;background:#fffffa2b;transform:skewX(-15deg);overflow:hidden}.meters em{display:block;height:100%;width:100%;background:var(--lime);transition:width .1s}#nitroBar{background:var(--orange)}.running #map{display:block;position:absolute;right:32px;bottom:28px;width:160px;height:160px;border:1px solid #cdd2c23b;background:#0a1410aa;clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%)}.shortcuts{position:absolute;left:32px;bottom:15px;align-items:center;gap:20px;font-size:10px;color:#c1c5b6}.shortcuts button{background:none;padding:0;font-size:13px}.shortcuts button span{font-size:10px;margin-left:7px}#damageFlash{position:absolute;inset:0;pointer-events:none;opacity:0;box-shadow:inset 0 0 180px #e54a1b;z-index:2}dialog{border:1px solid #9da78b44;background:#17201cf5;color:var(--paper);padding:35px;max-width:480px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-shadow:12px 12px 0 #050a084d}dialog::backdrop{background:#080e0b99;backdrop-filter:blur(5px)}dialog h2{font:italic 51px/.95 Barlow,sans-serif;margin:24px 0 18px}dialog p{font-size:14px;line-height:1.7;color:#bfc6b5}.secondary{width:100%;padding:13px;margin-top:12px;background:transparent;border:1px solid #ffffff35;font-size:14px}.result-score{border-block:1px solid #a9b09542;padding:20px 0;margin:20px 0;display:grid}.result-score small{letter-spacing:2px;font-size:11px}.result-score strong{font:72px Barlow,sans-serif}.result-score span{color:var(--lime);font-size:13px}#touchControls{display:none}#fatal{position:absolute;z-index:20;inset:0;background:#17201c;padding:15vh 10vw}#fatal a{color:var(--orange)}
@media(pointer:coarse){.running #touchControls{display:flex;position:absolute;inset:auto 18px max(18px,env(safe-area-inset-bottom));justify-content:space-between;pointer-events:none;gap:15px}.steering,.pedals{display:flex;gap:7px;align-items:flex-end}.pedals{max-width:210px;flex-wrap:wrap;justify-content:flex-end}#touchControls button{pointer-events:auto;touch-action:none;background:#142019c7;border:1px solid #eef1d653;min-width:58px;height:58px;font:bold 20px Barlow,sans-serif;user-select:none}#touchControls button.held{background:var(--orange);color:#152016}#touchControls [data-control=gas]{height:82px;background:#dae776d1;color:#101713}#touchControls [data-control=boost]{color:var(--orange)}.shortcuts{bottom:116px}.shortcuts>span{display:none}#dashboard{bottom:132px}#map{bottom:135px!important}}
@media(max-height:760px) and (min-width:701px){#intro{padding-top:95px}h1{font-size:110px;margin:28px 0 15px}.pitch{margin:18px 0 12px;font-size:17px}.car-choices{margin:15px 0 10px}.controls-note{margin-top:10px}.win-options b{font-size:22px}.primary{padding:11px 20px}.back{bottom:13px}.contract{margin-bottom:10px}}
@media(max-width:700px){header{left:18px;right:18px;top:max(18px,env(safe-area-inset-top))}.brand{font-size:21px}.brand small{font-size:8px;letter-spacing:1px}.top-buttons button{height:35px;width:37px}.race-hud span{font-size:9px;letter-spacing:1px}.race-hud strong{font-size:40px}#intro{padding:107px 24px 50px;background:linear-gradient(90deg,#111512de,#10161375)}h1{font-size:105px;margin:28px 0 20px}.pitch{font-size:17px}.win-options{gap:9px}.car-choices button{padding:10px;font-size:16px}.car-stamp{display:none}.intro-copy{max-width:360px}.primary{font-size:25px}.controls-note{font-size:11px}.back{left:24px;font-size:10px}#objectives{left:18px;top:81px;gap:12px;font-size:8px}#objectives b{font-size:22px}.running #scoreWrap{right:18px;top:81px}#scoreWrap strong{font-size:29px}#scoreWrap small{font-size:8px}#dashboard{left:18px;gap:13px;padding:10px 15px 10px 0}.speed{min-width:55px}.speed strong{font-size:51px}.speed span{font-size:9px}.meters{width:115px;gap:12px}.meters label{font-size:8px}.running #map{width:105px;height:105px;right:18px}.shortcuts{left:18px}#notice{top:24%;max-width:95%;font-size:24px;white-space:normal}dialog{padding:25px}dialog h2{font-size:43px}}
@media(max-height:520px){#intro{padding-top:80px;padding-bottom:20px}.intro-copy{max-width:400px}h1{font-size:76px;display:inline-block;margin:10px 0;line-height:.74}.pitch,.win-options,.controls-note,.back{display:none}.car-choices{margin:12px 0 7px}.car-choices button{padding:6px 12px}.contract{margin:7px 0}.primary{padding:8px 18px;font-size:22px}.car-stamp{display:block;bottom:13%;right:5%}#dashboard{bottom:24px;left:180px}.running #map{height:90px;width:90px;bottom:120px!important}.shortcuts{left:200px;bottom:9px}#objectives{top:75px}.running #scoreWrap{top:75px}#notice{top:30%}.meters{width:115px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.vignette:after{display:none}}
