@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800;900&family=DM+Sans:wght@400;500;600;700&family=DM+Mono:wght@400;500&display=swap');
:root{color-scheme:dark;--paper:#eee9d9;--muted:#acb7b5;--gold:#e6bd79;--ink:#101c24;--line:#ffffff26;--red:#e07360}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:var(--ink);color:var(--paper);font:14px 'DM Sans',sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:5px}a{color:inherit;text-decoration:none}button{color:inherit}button,select,input{border-radius:2px}button:hover{filter:brightness(1.15)}[hidden]{display:none!important}#game,#viewport,.screen,#hud{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%}.film-grain{position:absolute;inset:0;pointer-events:none;opacity:.05;z-index:2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E")}.screen{z-index:10}.title-screen{background:linear-gradient(90deg,rgba(9,19,26,.96),rgba(9,19,26,.78) 32%,rgba(9,19,26,.1) 73%),linear-gradient(0deg,rgba(9,19,26,.9),transparent 25%);display:flex;align-items:center;padding:95px 7vw 105px}.title-header{position:absolute;top:34px;left:4vw;right:4vw;display:flex;justify-content:space-between;font:11px 'DM Mono',monospace;letter-spacing:2px}.title-header a{font-weight:600}.title-header>span{color:var(--muted)}.eyebrow{font:10px 'DM Mono',monospace;letter-spacing:2.4px;color:var(--gold);margin:0 0 20px}.live-dot{display:inline-block;width:6px;height:6px;background:var(--gold);border-radius:50%;margin:0 9px 1px 0;box-shadow:0 0 16px #edb860}h1{font:900 clamp(75px,10.8vw,158px)/.79 'Barlow Condensed','Impact',sans-serif;letter-spacing:-2px;margin:27px 0;color:var(--paper);position:relative}h1 span{color:var(--gold)}h1 i{font-style:normal;color:var(--gold)}.tagline{font-size:clamp(18px,1.8vw,24px);line-height:1.35;font-weight:500;letter-spacing:-.5px;margin:26px 0 16px}.intro{line-height:1.7;color:var(--muted);font-size:13px}.start-actions{display:flex;gap:10px;margin:28px 0 20px}.primary,.secondary{border:1px solid var(--line);padding:15px 20px;font-size:12px;font-weight:600;transition:background .15s;min-height:46px}.primary{background:var(--gold);color:#172329;border-color:var(--gold);display:flex;align-items:center;justify-content:space-between;gap:32px}.secondary{background:#14222bd9}.name-field{font:9px 'DM Mono',monospace;letter-spacing:1.5px;display:flex;align-items:center;gap:18px;color:var(--muted)}.name-field input{width:145px;background:transparent;border:0;border-bottom:1px solid var(--line);padding:7px 0;color:var(--paper);font:12px 'DM Sans',sans-serif}.small-note{font-size:11px;line-height:1.6;color:var(--muted)}.title-coordinate{position:absolute;right:5vw;bottom:155px;display:grid;gap:22px;text-align:right;text-shadow:0 2px 8px #101c24}.title-coordinate span{font:10px/1.8 'DM Mono',monospace;letter-spacing:2px;color:#d0d6ce}.title-coordinate b{font:600 23px/1.1 'Barlow Condensed',sans-serif;letter-spacing:2px}.coordinate-line{height:1px;background:var(--gold);width:130px;margin-left:auto}.title-footer{position:absolute;bottom:32px;left:4vw;right:4vw;display:flex;gap:25px;border-top:1px solid var(--line);padding-top:23px;font-size:11px;color:var(--muted);align-items:center}.footer-end{margin-left:auto;font:9px 'DM Mono',monospace;letter-spacing:1px}kbd{display:inline-flex;align-items:center;justify-content:center;min-width:23px;padding:4px 6px;border:1px solid #b7c7c34a;background:#14202970;color:var(--paper);font:10px 'DM Mono',monospace;border-radius:3px;margin-right:4px}.modal-screen{display:flex;align-items:center;justify-content:center;background:#08131cbb;backdrop-filter:blur(12px);padding:25px;overflow:auto}.modal{width:min(590px,100%);background:#14232ef2;border:1px solid var(--line);padding:36px;box-shadow:0 30px 100px #0005;max-height:95vh;overflow:auto}.modal.narrow{width:380px}.modal h2{font:700 50px/.95 'Barlow Condensed',sans-serif;letter-spacing:-.5px;margin:0 0 22px}.modal p{color:var(--muted);line-height:1.6}.modal>.primary,.modal>.secondary{width:100%;margin-top:10px}.modal .eyebrow{color:var(--gold)}.text-button{display:block;text-align:center;background:none;border:0;font-size:12px;padding:13px;width:100%;color:var(--muted)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:28px 0}.settings-grid label{font-size:12px;display:flex;flex-direction:column;gap:9px}.settings-grid select{background:#0c1922;border:1px solid var(--line);color:var(--paper);padding:11px;width:100%}.settings-grid .check-label{flex-direction:row;align-items:center}.check-label input{accent-color:var(--gold)}.control-sheet{display:grid;gap:10px;padding:18px 0;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}#hud{z-index:3;pointer-events:none;background:linear-gradient(0deg,#06121b80,transparent 30%,transparent 78%,#06121b80)}.hud-top{position:absolute;top:28px;left:30px;right:30px;display:flex;align-items:flex-start;justify-content:space-between;text-shadow:0 2px 8px #0008}.location{display:grid;gap:5px;min-width:200px}.location .eyebrow{font-size:9px;margin:0;color:var(--muted)}.location strong{font-size:22px;letter-spacing:-.5px}.location #clock{font:11px 'DM Mono',monospace;color:var(--muted)}#wanted-panel{text-align:center}#stars{font:28px 'DM Sans',sans-serif;letter-spacing:6px;color:var(--gold)}#chase-state{font:9px 'DM Mono',monospace;letter-spacing:2px}.escape-track{height:3px;background:#ffffff20;width:170px;margin:10px auto}.escape-track i{display:block;width:0;height:100%;background:#9ad8b8;transition:width .2s linear}.wallet{padding-right:50px;position:relative;text-align:right;min-width:200px}.wallet .eyebrow{display:block;margin:0 0 6px;color:var(--muted);font-size:9px}.wallet strong{font:25px 'DM Mono',monospace}.tool{pointer-events:auto;position:absolute;right:0;top:3px;width:33px;height:33px;border:1px solid var(--line);background:#15242ca6}.hud-bottom{position:absolute;left:30px;right:30px;bottom:27px;display:flex;align-items:flex-end;justify-content:space-between;gap:15px}.map-wrap{width:190px;flex:none}#minimap{width:190px;height:190px;border:1px solid #b9c4b43d;border-radius:50%;background:#0c1b23bd;box-shadow:0 8px 35px #0004}.map-caption{display:flex;justify-content:space-between;font:8px 'DM Mono',monospace;letter-spacing:1px;margin-top:8px;color:var(--muted)}.context{align-self:flex-end;text-align:center;flex:1;min-width:0}#controls-hint{font-size:10px;color:#d3d9d2;text-shadow:0 2px 5px #000}#interaction{display:table;margin:0 auto 22px;padding:12px 17px;background:#10242bdf;border-left:2px solid var(--gold);font-size:12px;min-height:0}#interaction:empty{display:none}.telemetry{width:195px;flex:none;text-align:right}#car-name{font:10px 'DM Mono',monospace;letter-spacing:1px}.speed{display:flex;align-items:baseline;justify-content:flex-end;gap:8px}.speed strong{font:600 78px/1 'Barlow Condensed',sans-serif;font-variant-numeric:tabular-nums}.speed>span{font:9px 'DM Mono',monospace;color:var(--muted)}.condition{font:8px 'DM Mono',monospace;display:flex;align-items:center;gap:10px;justify-content:flex-end;margin:10px 0 16px}.condition>i{display:block;width:92px;height:3px;background:#fff3}.condition b{display:block;height:100%;width:100%;background:var(--gold)}.traffic-info{display:flex;align-items:center;justify-content:flex-end;gap:12px;font-size:10px;color:var(--muted)}#speed-limit{background:#eee9d9;color:#25313b;border:3px solid #b95c4b;border-radius:50%;height:31px;width:31px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:10px}.speeding{color:var(--red)!important}#objective{position:absolute;top:118px;left:30px;font-size:12px;display:flex;align-items:center;gap:10px;max-width:360px;line-height:1.5;text-shadow:0 2px 8px #000}.objective-dot{width:7px;height:7px;border:1px solid var(--gold);transform:rotate(45deg);flex:none}#notification{position:absolute;top:25%;left:50%;transform:translate(-50%,-6px);padding:14px 24px;background:#10242bef;border-top:2px solid var(--gold);opacity:0;transition:opacity .25s,transform .25s;max-width:550px;text-align:center;font-size:14px;line-height:1.6}#notification.visible{opacity:1;transform:translate(-50%,0)}#blood,#damage-flash{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 1.4s}#blood{background:radial-gradient(ellipse at 4% 18%,#971a25b0 0,transparent 32%),radial-gradient(ellipse at 93% 78%,#901822b0 0,transparent 28%);box-shadow:inset 0 0 100px #9c1d28b0}#damage-flash{box-shadow:inset 0 0 100px #d7955ba0}#cockpit{position:absolute;inset:0;z-index:-1;pointer-events:none}.dashboard{position:absolute;bottom:-60px;left:21%;right:21%;height:220px;background:linear-gradient(#28383bf5,#0b151bf5 20%);border-top:8px solid #465050;border-radius:45% 45% 0 0;box-shadow:0 -6px 25px #0006}.steering-wheel{position:absolute;bottom:-110px;left:10%;width:260px;height:260px;border:19px solid #11191c;border-radius:50%;box-shadow:inset 0 0 0 3px #4c5353,0 0 0 2px #3d4142}.steering-wheel:after{content:'';position:absolute;top:90px;left:0;right:0;height:44px;background:#182327;border-top:3px solid #3c4849}.dash-center{position:absolute;top:32px;right:12%;font:9px/2 'DM Mono',monospace;color:#b3c6bc;letter-spacing:1px}.dash-center span{font-size:30px;color:#d6eace}.dash-gauge{position:absolute;left:21%;top:35px;font:9px 'DM Mono',monospace;color:#cad0bf}.dash-gauge b{font-size:25px;color:var(--gold)}.property-modal{width:min(900px,100%)}.property-heading{display:flex;justify-content:space-between;align-items:baseline}.property-heading>strong{font:25px 'DM Mono',monospace;color:var(--gold)}#property-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.property-card{border:1px solid var(--line);padding:20px;background:#0c1b2466}.property-card h3{font:600 26px 'Barlow Condensed',sans-serif;margin:8px 0}.property-card small{font:9px 'DM Mono',monospace;letter-spacing:1px;color:var(--gold)}.property-card p{font-size:12px;min-height:38px}.property-card button{width:100%;padding:12px}.garage-heading{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:12px}.garage-heading h3{font:600 25px 'Barlow Condensed',sans-serif}.garage-heading span{font-size:11px;color:var(--muted)}#garage-list{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}#garage-list p{font-size:12px}.garage-car{padding:10px 15px;border:1px solid var(--line);background:#0d1c26;color:var(--paper);font-size:12px}.garage-car span{display:block;font-size:9px;color:var(--gold);margin-top:5px}.interior-panel{position:absolute;z-index:5;top:25px;left:30px;padding:20px;background:#11232ddd;border:1px solid var(--line);max-width:550px}.interior-panel h2{font:600 34px 'Barlow Condensed',sans-serif;margin:5px 0}.interior-panel .eyebrow{margin:0}.interior-panel p{font-size:11px;color:var(--muted)}.interior-panel>div{display:flex;gap:7px;flex-wrap:wrap}.interior-panel button{font-size:10px;padding:9px;min-height:35px}.danger{color:var(--red)!important}@media(max-height:780px){.title-screen{padding-top:80px;padding-bottom:80px}h1{font-size:105px;margin:17px 0}.tagline{font-size:20px;margin:18px 0 12px}.start-actions{margin:20px 0 13px}.title-copy>.eyebrow{margin-bottom:10px}.title-footer{bottom:22px;padding-top:15px}.intro{margin:10px 0}.modal{padding:26px}.modal h2{font-size:43px}}@media(max-width:850px){.title-coordinate{display:none}.title-screen{padding-left:6vw;background:linear-gradient(90deg,#0a1826ed,#0a182670)}.footer-end{display:none}.title-footer{gap:12px;font-size:10px}.hud-top{left:18px;right:18px}.location,.wallet{min-width:130px}.hud-bottom{left:18px;right:18px}.map-wrap,#minimap{width:145px}#minimap{height:145px}#controls-hint{display:none}.telemetry{width:150px}#objective{left:18px}#property-list{grid-template-columns:1fr}.settings-grid{gap:15px}.dashboard{left:17%;right:17%}}@media(prefers-reduced-motion:reduce){*{transition:none!important}.film-grain{display:none}}

#hud.indoors .hud-top,#hud.indoors #objective{visibility:hidden}
