@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-latin-400-normal-Byf51wtH.woff2) format("woff2"),url(/assets/anton-latin-400-normal-AUNGEG_V.woff) format("woff")}@font-face{font-family:Anton;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/anton-latin-ext-400-normal-SyiqE2Jt.woff2) format("woff2"),url(/assets/anton-latin-ext-400-normal-BMODBQc6.woff) format("woff")}:root{--ink: #111;--yellow: #ffd400;--white: #f5f3ea;--banner-font: "Anton", Impact, "Arial Black", sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ink);color:var(--white);font-family:system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none}#game{position:fixed;inset:0;width:100%;height:100%;display:block}#hud{position:fixed;inset:0;pointer-events:none}#score{position:absolute;top:max(12px,env(safe-area-inset-top));right:16px;font:34px/1 var(--banner-font);color:var(--yellow);letter-spacing:1px;text-shadow:2px 2px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000}.banner{position:absolute;left:50%;transform:translate(-50%);font:30px/1.1 var(--banner-font);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;color:var(--white);text-shadow:2px 2px 0 #000,-1px -1px 0 #000,1px -1px 0 #000,-1px 1px 0 #000;opacity:0}.banner.show{animation:banner 2.8s ease-out forwards}#street{top:18%}#vehicle{bottom:22%;color:var(--yellow);font-size:26px}@keyframes banner{0%{opacity:0;transform:translate(-50%) scale(1.15)}10%{opacity:1;transform:translate(-50%) scale(1)}75%{opacity:1}to{opacity:0}}#minimap{position:absolute;left:16px;bottom:max(16px,env(safe-area-inset-bottom));width:170px;height:170px;border:3px solid #000;border-radius:50%;box-shadow:0 0 0 2px #ffffff59;background:#3d5530}.chip{position:absolute;left:140px;bottom:max(16px,env(safe-area-inset-bottom));pointer-events:auto;font:14px/1 var(--banner-font);text-transform:uppercase;color:var(--ink);background:var(--yellow);border:2px solid #000;border-radius:6px;padding:8px 10px;min-height:36px;cursor:pointer}#osm{position:absolute;right:8px;bottom:4px;font-size:11px;color:#ffffffbf;text-shadow:0 0 3px #000}#start{position:fixed;inset:0;background:#05070d;overflow:hidden}#start[hidden],#pause[hidden],#bigmap[hidden],.panel[hidden]{display:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.logo-fill,.logo-bg{position:absolute;inset:0;width:100%;height:100%}.logo-fill{object-fit:cover;filter:blur(28px) brightness(.45) saturate(1.2);transform:scale(1.1)}.logo-bg{object-fit:contain;animation:drift 14s ease-in-out infinite alternate}@keyframes drift{0%{transform:scale(1)}to{transform:scale(1.03)}}#start:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000000d1,#00000073 26%,#0000 45%);pointer-events:none}.menu{position:absolute;z-index:1;left:max(4vw,env(safe-area-inset-left));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:6px}.menu button{position:relative;font:clamp(30px,5vw,54px)/1.05 var(--banner-font);text-transform:uppercase;letter-spacing:1px;color:var(--white);background:none;border:0;padding:6px 0 6px 38px;min-height:48px;cursor:pointer;text-shadow:3px 3px 0 #000;transition:color .15s,transform .15s}.menu button:before{content:"▶";position:absolute;left:0;top:50%;transform:translateY(-50%);font-size:.5em;color:var(--yellow);opacity:0;transition:opacity .15s}.menu button.active,.menu button:hover:not(:disabled){color:var(--yellow);transform:translate(8px)}.menu button.active:before{opacity:1;animation:blink .8s steps(2) infinite}.menu button:disabled{color:#777;cursor:default}@keyframes blink{50%{opacity:.2}}#start-status{margin:10px 0 0 38px;min-height:1.4em;color:#ccc}.panel{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);overflow-y:auto;background:#080c16f0;border:2px solid rgba(80,200,255,.6);border-radius:16px;box-shadow:0 0 40px #28b4ff4d;padding:22px 24px}.panel h2{margin:0 0 16px;font:38px var(--banner-font);text-transform:uppercase;color:var(--yellow)}.panel h3{margin:22px 0 8px;font:20px var(--banner-font);text-transform:uppercase;color:#9be3ff}.option{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;flex-wrap:wrap}.option>span{font-size:17px}.choice{display:flex;gap:6px}.choice button,.panel .back{font:15px var(--banner-font);text-transform:uppercase;color:var(--white);background:#1b2233;border:2px solid #3a4a66;border-radius:8px;padding:8px 12px;min-height:44px;cursor:pointer}.choice button.selected{background:var(--yellow);color:var(--ink);border-color:#000}.panel .back{margin-top:22px;background:var(--yellow);color:var(--ink);border-color:#000;padding:10px 26px}.credits{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0}.credits dt{font:15px var(--banner-font);text-transform:uppercase;color:#9be3ff}.credits dd{margin:0}.thanks{color:#ccc;margin:18px 0 0}.keys{list-style:none;padding:0;margin:0;display:grid;gap:6px;color:#ddd;font-size:15px}kbd{display:inline-block;font:13px var(--banner-font);background:#222;border:1px solid #555;border-bottom-width:3px;border-radius:5px;padding:2px 7px;color:var(--yellow)}.touch-only{display:none}body.touch .touch-only{display:grid}body.touch .desktop-only{display:none}#pause,#bigmap{position:fixed;inset:0;background:#000000b8;display:grid;place-items:center;align-content:center;text-align:center}#pause h2{font:60px var(--banner-font);text-transform:uppercase;margin:0;color:var(--yellow)}#bigmap{grid-template-rows:1fr auto;padding:16px}#bigmap-canvas{width:100%;height:100%;min-height:0}#bigmap p{margin:8px 0 0;color:#ccc}#touch{display:none}body.touch #touch{display:block}body.touch #minimap{inset:60px 16px auto auto;width:120px;height:120px}body.touch .chip{inset:64px 150px auto auto}#joystick{position:fixed;left:max(24px,env(safe-area-inset-left));bottom:max(24px,env(safe-area-inset-bottom));width:150px;height:150px;border-radius:50%;background:#ffffff1f;border:2px solid rgba(255,255,255,.35);touch-action:none}#knob{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:#ffd400d9;border:2px solid #000}#buttons{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(2,84px);gap:10px}#buttons button{min-height:64px;font:15px var(--banner-font);text-transform:uppercase;color:var(--white);background:#0000008c;border:2px solid rgba(255,255,255,.5);border-radius:14px;touch-action:none}#buttons button.down{background:#ffd400cc;color:var(--ink)}#btn-action{grid-column:span 2;background:#ffd400d9!important;color:var(--ink)!important}#btn-gas{background:#288c3c99!important}#btn-brake{background:#aa282899!important}body:not(.in-car) .car-only{display:none}
