:root{--ink:#f4f7fb;--muted:#b7c2d3;--panel:#0a10209e;--accent:#4fd18b;--danger:#ff5a5a;--warn:#ffc84a;color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0b1020;width:100%;height:100%;margin:0;overflow:hidden}.app{position:fixed;inset:0}.app canvas{touch-action:none;display:block}.hud{pointer-events:none;padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));position:absolute;inset:0}.hud-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.panel{background:var(--panel);-webkit-backdrop-filter:blur(6px);border:1px solid #ffffff1f;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px}.big{font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.value{font-variant-numeric:tabular-nums;text-align:right;min-width:2.2em;font-weight:700}.health .bar{background:#ffffff26;border-radius:6px;width:clamp(110px,22vw,220px);height:10px;overflow:hidden}.bar-fill{background:linear-gradient(90deg, #36b56e, var(--accent));height:100%;transition:width .15s ease-out}.bar-fill.low{background:linear-gradient(90deg, #c83131, var(--danger))}.crosshair{--gap:6px;pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.crosshair i{background:#ffffffeb;transition:opacity .12s;position:absolute;box-shadow:0 0 2px #000000d9}.crosshair .ch-l,.crosshair .ch-r{width:8px;height:2px;top:-1px}.crosshair .ch-t,.crosshair .ch-b{width:2px;height:8px;left:-1px}.crosshair .ch-l{right:var(--gap)}.crosshair .ch-r{left:var(--gap)}.crosshair .ch-t{bottom:var(--gap)}.crosshair .ch-b{top:var(--gap)}.crosshair .ch-dot{border-radius:50%;width:3px;height:3px;top:-1.5px;left:-1.5px}.crosshair[data-aim="1"] .ch-l,.crosshair[data-aim="1"] .ch-r,.crosshair[data-aim="1"] .ch-t,.crosshair[data-aim="1"] .ch-b{opacity:.35}.hint{left:50%;bottom:max(18px, env(safe-area-inset-bottom));background:var(--panel);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;max-width:92vw;padding:8px 14px;font-size:13px;position:absolute;overflow:hidden;transform:translate(-50%)}.touch-layer{pointer-events:none;position:absolute;inset:0}.lookpad{pointer-events:auto;touch-action:none;position:absolute;inset:0}.joystick{left:max(22px, env(safe-area-inset-left));bottom:max(26px, env(safe-area-inset-bottom));pointer-events:auto;touch-action:none;background:#ffffff1a;border:2px solid #ffffff40;border-radius:50%;place-items:center;width:128px;height:128px;display:grid;position:absolute}.joystick-knob{background:#ffffff8c;border-radius:50%;width:56px;height:56px;box-shadow:0 2px 8px #00000059}.touch-buttons{right:max(18px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom));pointer-events:none;grid-template-columns:repeat(2,auto);align-items:end;gap:12px;display:grid;position:absolute}.touch-btn{pointer-events:auto;touch-action:none;width:68px;height:68px;color:var(--ink);background:#0a10208c;border:2px solid #ffffff59;border-radius:50%;font-size:13px;font-weight:700}.touch-btn small{opacity:.8;font-size:10px;font-weight:600;display:block}.touch-btn:active{background:#4fd18b73}.stat{align-items:center;gap:7px;line-height:1.1;display:flex}.stat-icon,.health-icon{color:var(--muted);place-items:center;display:grid}.health-icon{color:#ff6b81}.stat-text{flex-direction:column;align-items:flex-start;display:flex}.score{gap:14px}.big small{color:var(--muted);font-size:14px;font-weight:600}.announce{letter-spacing:.04em;text-shadow:0 2px 12px #0009;opacity:0;white-space:nowrap;font-size:clamp(22px,4vw,40px);font-weight:800;transition:opacity .3s,transform .3s;position:absolute;top:22%;left:50%;transform:translate(-50%,-10px)}.announce.show{opacity:1;transform:translate(-50%)}.hitmarker{--hm:#fffffff2;pointer-events:none;filter:drop-shadow(0 0 1px #000000e6);width:26px;height:26px;animation:.25s ease-out forwards fade;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.hitmarker.head{--hm:#ffd34d;width:30px;height:30px}.hitmarker.down{--hm:#ff4d4d;width:36px;height:36px;animation-duration:.5s}.hitmarker:before,.hitmarker:after{content:"";position:absolute}.hitmarker:before{background:linear-gradient(var(--hm) 30%, transparent 30% 70%, var(--hm) 70%);width:3px;top:0;bottom:0;left:50%;transform:translate(-50%)}.hitmarker:after{background:linear-gradient(90deg, var(--hm) 30%, transparent 30% 70%, var(--hm) 70%);height:3px;top:50%;left:0;right:0;transform:translateY(-50%)}.stat-btn{all:unset;cursor:pointer;pointer-events:auto;border-radius:8px;display:block}.stat-btn:focus-visible{outline:2px solid #ffffffb3}.weapon-stat .label{text-overflow:ellipsis;white-space:nowrap;max-width:108px;overflow:hidden}.weapon-stat.low .big{color:#ffc857}.weapon-stat.empty .big{color:#ff6b6b;animation:.3s ease-in-out 2 blink-empty}@keyframes blink-empty{50%{opacity:.35}}.bar{position:relative}.armor-fill{background:#5aa9ff;height:35%;transition:width .15s ease-out;position:absolute;bottom:0;left:0;box-shadow:0 0 4px #5aa9ffb3}.hurt-dirs{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}.hurt-dir{width:190px;height:190px;transition:opacity .1s;position:absolute;top:0;left:0}.hurt-dir i{filter:drop-shadow(0 0 4px #f009);border-bottom:22px solid #ff4040d9;border-left:18px solid #0000;border-right:18px solid #0000;width:0;height:0;position:absolute;top:0;left:50%;transform:translate(-50%)}@media (width<=640px),(height<=480px){.hurt-dir{width:150px;height:150px}}.damage-flash{background:radial-gradient(#0000 45%,#ff1e1e8c);animation:.45s ease-out forwards fade;position:absolute;inset:0}.low-health{background:radial-gradient(#0000 55%,#c8000059);animation:1.2s ease-in-out infinite pulse;position:absolute;inset:0}@keyframes fade{0%{opacity:1}to{opacity:0}}@keyframes pulse{50%{opacity:.35}}.overlay{-webkit-backdrop-filter:blur(4px);background:#060a168c;place-items:center;padding:20px;animation:.25s ease-out overlay-in;display:grid;position:absolute;inset:0}.overlay.gameover{background:radial-gradient(#3c06068c,#06040ad9)}@keyframes overlay-in{0%{opacity:0}}.card{text-align:center;background:#0e1426eb;border:1px solid #ffffff1f;border-radius:18px;width:min(420px,100%);padding:26px 24px;box-shadow:0 20px 60px #00000080}.card h1{letter-spacing:.02em;margin:0 0 16px;font-size:clamp(30px,7vw,44px)}.gameover .card h1{color:#ff6b6b}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px;display:grid}.stats div{background:#ffffff0f;border-radius:12px;flex-direction:column;gap:4px;padding:10px 6px;display:flex}.stats strong{font-variant-numeric:tabular-nums;font-size:22px}.actions{flex-direction:column;gap:10px;display:flex}.actions button{font:inherit;color:var(--ink);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:12px;padding:13px 16px;font-size:16px;font-weight:700}.actions button:hover{background:#ffffff24}.actions button.primary{background:var(--accent);color:#06210f;border-color:#0000}.actions button.danger{color:#ff8d8d}.touch-btn.fire{background:#c832328c;width:84px;height:84px;font-size:15px}.touch-btn.small{width:56px;height:56px;font-size:11px}.overlay{place-items:safe center;overflow-y:auto}@media (height<=520px){.card{width:min(560px,100%);padding:14px 16px}.card h1{margin-bottom:8px;font-size:26px}.stats{gap:6px;margin-bottom:10px}.stats div{padding:6px}.stats strong{font-size:18px}.actions{flex-direction:row}.actions button{flex:1;padding:10px 8px;font-size:14px}}.hud-left{align-items:flex-start;gap:10px;min-width:0;display:flex}.hud-vitals{flex-direction:column;align-items:flex-start;gap:8px;min-width:0;display:flex}.hud-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.hud-buttons{margin-right:calc(66px + env(safe-area-inset-right,0px) - max(14px, env(safe-area-inset-right,0px)));align-items:center;gap:8px;display:flex}.hud-stats{margin-top:max(8px, min(env(safe-area-inset-top,0px), 12px));flex-direction:column;align-items:flex-end;gap:6px;display:flex}.icon-btn{pointer-events:auto;background:var(--panel);width:44px;height:44px;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(6px);border:1px solid #ffffff2e;border-radius:12px;flex:none;place-items:center;display:grid}.icon-btn:disabled{opacity:.4}.eye-btn.on{color:#9fd8ff;border-color:#78c8ffb3}.hud-ghost>:not(.hud-top):not(.injured-veil),.hud-ghost .hud-top>:not(.hud-right),.hud-ghost .hud-right>:not(.hud-buttons),.hud-ghost .hud-buttons>:not(.eye-btn),.touch-layer.ghost>*{opacity:0!important}.injured-veil{pointer-events:none;background:radial-gradient(#14181e26,#14181e99);place-items:center;display:grid;position:absolute;inset:0}.injured-card{pointer-events:auto;background:var(--panel);max-width:min(86vw,360px);color:var(--ink);text-align:center;-webkit-backdrop-filter:blur(6px);border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:16px 20px;display:flex}.injured-card strong{font-size:20px}.injured-cause{opacity:.75;font-size:13px}.injured-skip{color:#fff;cursor:pointer;background:#d7262e;border:1px solid #ffffff40;border-radius:10px;min-height:44px;margin-top:4px;padding:0 16px;font-weight:600}.rescue-status{background:var(--panel);color:var(--ink);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:13px;display:flex;position:absolute;top:calc(60% + 44px);left:50%;transform:translate(-50%)}.rescue-dot{background:#2a6cff;border-radius:50%;width:10px;height:10px;animation:.8s steps(2,end) infinite rescue-blink}@keyframes rescue-blink{50%{background:#d7262e}}.zoom-btns{flex-direction:column;gap:6px;display:flex}.pets{flex-direction:column;align-items:stretch;gap:4px;padding:6px 10px}.pet{align-items:center;gap:8px;font-size:12px;display:flex}.pet-name{width:3.4em;font-weight:700}.pet-bar{background:#ffffff26;border-radius:4px;width:clamp(48px,8vw,80px);height:6px;overflow:hidden}.pet-state{color:var(--muted);white-space:nowrap}.pet.alert .pet-state,.pet.attack .pet-state{color:var(--warn)}.pet.down .pet-state{color:var(--danger)}.minimap{border:2px solid #ffffff59;border-radius:50%;width:clamp(110px,15vw,170px);height:clamp(110px,15vw,170px);box-shadow:0 4px 16px #00000059}.vehicle-hud{left:50%;bottom:max(16px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;transform:translate(-50%)}.speedo{background:var(--panel);border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:14px;padding:6px 16px;display:flex}.speedo .big{text-align:right;min-width:2.2ch;font-size:30px}.gauge{align-items:baseline;gap:5px;display:flex}.speedo .big.gear{min-width:1ch}.vehicle-health{background:#ffffff26;border-radius:5px;width:64px;height:8px;overflow:hidden}.flight-warning{letter-spacing:.06em;text-transform:uppercase;background:#c82828bf;border:1px solid #ffa0a099;border-radius:999px;padding:5px 16px;font-size:14px;font-weight:800;animation:.8s steps(2,start) infinite warn-blink}@keyframes warn-blink{to{opacity:.55}}.touch-btn.up{background:#4fa0ff80}.prompt{background:var(--panel);color:var(--ink);white-space:nowrap;border:1px solid #ffffff1f;border-radius:999px;padding:7px 14px;font-size:13px}.prompt.solo{border-color:#ffd34d99;font-size:15px;font-weight:700;position:absolute;top:60%;left:50%;transform:translate(-50%)}.prompt.solo.ad-prompt{pointer-events:auto;color:var(--ink);white-space:normal;text-align:center;cursor:pointer;border-color:#25d366d9;border-radius:18px;flex-direction:column;align-items:center;gap:2px;max-width:min(92vw,520px);padding:8px 18px;text-decoration:none;display:flex}.ad-prompt-main{font-weight:800}.ad-prompt-sub{opacity:.8;font-size:11px;font-weight:600}a.touch-btn.ad-link{touch-action:manipulation;box-sizing:border-box;background:#127846bf;border-color:#25d366e6;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;display:flex}.ad-card{z-index:60;left:50%;top:calc(env(safe-area-inset-top,0px) + 72px);max-width:min(92vw,560px);color:var(--ink);pointer-events:auto;background:#08141ef0;border:1px solid #25d366d9;border-radius:16px;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex;position:absolute;transform:translate(-50%);box-shadow:0 10px 30px #00000073}.ad-card-text{flex-direction:column;gap:2px;min-width:0;font-size:13px;display:flex}.ad-card-text span{opacity:.8;font-size:11px}.ad-card-go{color:#05301c;white-space:nowrap;background:#25d366;border-radius:999px;flex:none;padding:8px 14px;font-size:13px;font-weight:800;text-decoration:none}.ad-card-close{width:32px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:50%;flex:none;font-size:18px;line-height:1}@media (width<=520px){.ad-card{text-align:center;flex-wrap:wrap;justify-content:center}}.touch-buttons.vehicle{flex-direction:column;align-items:flex-end;gap:10px;display:flex}.touch-row{align-items:flex-end;gap:12px;display:flex}.touch-btn.gas{background:#2eaa6299}.touch-btn.back{background:#7880968c}.touch-btn.brake{background:#c832328c}.touch-btn.pedal,.touch-btn.gas{font-size:12px}.touch-btn.drive{color:#1b1400;background:#ffc42899}.hud.touch .hint{top:calc(max(12px, env(safe-area-inset-top)) + 64px);white-space:normal;text-align:center;border-radius:14px;width:max-content;max-width:min(80vw,420px);bottom:auto}.hud.touch .vehicle-hud{bottom:auto;top:calc(max(12px, env(safe-area-inset-top)) + 4px)}@media (width<=640px),(height<=480px){.stat .label:not(.keep),.pet-state{display:none}.icon-btn{width:40px;height:40px}}@media (width<=640px) and (orientation:portrait){.hud-left{flex-direction:column}.hud.touch .vehicle-hud{top:calc(max(12px, env(safe-area-inset-top)) + 200px)}}@media (width<=640px){.health .bar{width:80px}.score{gap:10px}.label{font-size:10px}.big{font-size:18px}.panel{padding:6px 10px}.minimap{width:96px;height:96px}.pets{gap:3px;padding:4px 8px}.pet{gap:6px;font-size:11px}.hud.touch .hint{top:auto;bottom:200px}.touch-btn{width:60px;height:60px}.touch-btn.fire{width:76px;height:76px}.touch-btn.small{width:52px;height:52px}.joystick{width:116px;height:116px}.touch-buttons.vehicle .touch-row:last-child{flex-flow:row-reverse wrap-reverse;justify-content:flex-start;gap:8px;max-width:150px}.touch-buttons.vehicle .touch-row:last-child .gas{order:-1}.speedo{gap:9px;padding:5px 12px}.speedo .big{font-size:20px}.vehicle-health{width:44px}}@media (height<=480px){.minimap{width:84px;height:84px}.hud.touch .hint{display:none}}.time-controls{pointer-events:auto;gap:6px;display:flex}.time-controls select,.time-controls button{font:inherit;min-height:34px;color:var(--ink);cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:9px;padding:4px 10px;font-size:13px;font-weight:600}.time-controls select{flex:1;min-width:0}.time-controls select option{color:var(--ink);background:#141c33}.time-controls button.on{background:var(--accent);color:#06210f;border-color:#0000}.pause-time{text-align:left;background:#ffffff0f;border-radius:12px;flex-direction:column;gap:8px;margin-bottom:14px;padding:10px 12px;display:flex}@media (width<=640px){.time-controls select,.time-controls button{min-height:30px;padding:3px 8px;font-size:12px}}.zone .big,.zone .stat-icon{color:#7ee2a8}.zone.danger .big,.zone.danger .stat-icon{color:#ff6b5f}.fps{background:var(--panel);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-align:center;min-width:62px;color:var(--muted);border:1px solid #ffffff1f;border-radius:9px;align-self:flex-end;padding:5px 8px;font-size:12px;font-weight:700}.fps span{color:var(--ink)}.fps[data-level=good] span{color:var(--accent)}.fps[data-level=ok] span{color:var(--warn)}.perf-controls button{flex:1;min-width:0}@media (width<=640px){.fps{min-width:52px;padding:4px 6px;font-size:11px}}.chute-stat{border-right:1px solid #ffffff24;margin-right:12px;padding-right:12px}.chute-stat .big{color:#ffd23f;font-size:15px;font-weight:800}.chute-stat.chute .big{color:#4fd18b}.chute-stat.fall .big{color:#ff6b4a}.air-state{letter-spacing:.05em;text-transform:uppercase;color:#ffd23f;font-size:13px;font-weight:800}.touch-btn.chute{font-size:12px}.death-cause{opacity:.85;margin:0 0 12px;font-size:15px}.vehicle-menu{pointer-events:auto;-webkit-backdrop-filter:blur(8px);background:#0a1020d1;border:1px solid #ffffff29;border-radius:14px;flex-direction:column;gap:6px;min-width:min(260px,80vw);padding:10px;display:flex;position:absolute;top:34%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 28px #0006}.vehicle-menu-title{justify-content:space-between;align-items:center;padding:0 2px 0 4px;display:flex}.vehicle-menu-close{font:inherit;width:32px;height:32px;color:var(--ink);cursor:pointer;background:#ffffff14;border:0;border-radius:8px}.vehicle-action{font:inherit;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;background:#ffffff12;border:1px solid #ffffff24;border-radius:10px;align-items:center;gap:10px;padding:6px 12px;font-size:15px;font-weight:700;display:flex}.vehicle-action:active{background:#4fd18b59}.vehicle-action kbd{font:inherit;text-align:center;background:#ffffff24;border-radius:6px;min-width:22px;padding:1px 6px;font-size:12px}.vehicle-action-label{flex:1}.vehicle-action-state{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:12px}.vehicle-menu-hint{color:var(--muted);text-align:center;font-size:12px}.touch-row.top{flex-wrap:wrap;justify-content:flex-end}.touch-btn.menu.on,.touch-btn.crouch.on,.touch-btn.aim.on{background:#4fd18b8c}.touch-btn.yaw{font-size:11px}@media (width<=640px){.touch-row.top{gap:8px;max-width:180px}.vehicle-menu{top:40%}}@media (height<=480px){.vehicle-menu{top:50%}.touch-btn.small{width:48px;height:48px}}.minimap-btn{pointer-events:auto;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0;display:block;position:relative}.minimap-btn .minimap{display:block}.map-tag{color:var(--ink);white-space:nowrap;background:#0a1020d9;border:1px solid #fff3;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:11px;font-weight:700;display:flex;position:absolute;bottom:-6px;left:50%;transform:translate(-50%)}.map-tag kbd{font:inherit;background:#ffffff29;border-radius:4px;padding:0 4px;font-size:10px}.world-map{z-index:5;padding:max(12px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));background:#060a16f0;flex-direction:column;gap:10px;animation:.15s ease-out overlay-in;display:flex;position:absolute;inset:0}.world-map-head{margin-right:calc(66px + env(safe-area-inset-right,0px) - max(14px, env(safe-area-inset-right,0px)));flex-wrap:wrap;align-items:center;gap:6px 14px;min-height:44px;display:flex}.world-map-head h2{align-items:center;gap:6px;margin:0;font-size:20px;display:flex}.world-map-sub{color:var(--muted);font-size:13px}.world-map-close{font:inherit;min-height:44px;color:var(--ink);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff38;border-radius:12px;align-items:center;gap:6px;padding:0 14px 0 10px;font-size:15px;font-weight:700;display:flex}.world-map-close:active{background:#4fd18b59}.world-map-body{flex:1;gap:12px;min-height:0;display:flex}.world-map-view{background:#0f2a3a;border:1px solid #ffffff1f;border-radius:14px;flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.world-map-canvas{width:100%;height:100%;position:absolute;inset:0}.world-map-list{flex:0 0 240px;font-size:13px;overflow-y:auto}.world-map-list h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:4px 0 6px;font-size:11px}.world-map-list ol,.world-map-list ul{gap:5px;margin:0 0 10px;padding:0;list-style:none;display:grid}.world-map-list li{align-items:center;gap:8px;display:flex}.world-map-list small{color:var(--muted)}.pin{border:1.5px solid #fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:10px;font-weight:800;display:grid}.pin.landmark{background:#b58cff}.pin.market{color:#2a1a00;background:#ffb02e}.key{border-radius:50%;flex:none;width:14px;height:14px}.key.you{background:#4fb3ff;border:2px solid #fff}.key.danger{background:#ff463c59;border:1.5px solid #ff5a50e6}.key.ride{background:#ffd34d;width:8px;height:8px;margin:0 3px}@media (orientation:portrait){.world-map-body{flex-direction:column}.world-map-view{flex:auto;min-height:220px}.world-map-list{flex:0 auto;grid-template-columns:1fr 1fr;align-content:start;gap:0 12px;max-height:42%;display:grid}.world-map-list h3:first-of-type,.world-map-list ol:first-of-type{grid-column:1/-1}.world-map-list ol:first-of-type{grid-template-columns:1fr 1fr}}@media (height<=480px){.world-map{gap:6px}.world-map-list{flex-basis:210px;font-size:12px}.world-map-list small{display:none}}@media (width<=640px) and (orientation:portrait){.hud-vitals{align-items:stretch;width:96px}.health{flex-wrap:wrap;justify-content:space-between;gap:5px 6px;padding:6px 8px}.health .bar{order:3;width:100%}.pets{padding:4px 8px}.pet-bar{flex:1;width:auto;min-width:0}.hud.touch .vehicle-hud{top:calc(max(12px, env(safe-area-inset-top)) + 222px)}}.touch-btn.iconic{place-items:center;padding:0;display:grid}.chute-stat.chute .stat-icon{color:#4fd18b}.chute-stat.fall .stat-icon{color:#ff6b4a}@media (width<=640px),(height<=480px){.zone .big,.chute-stat:not(.fall) .big{display:none}.chute-stat{margin-right:8px;padding-right:8px}.icon-btn{border-radius:10px;width:36px;height:36px}.touch-btn{width:54px;height:54px}.touch-btn.fire{width:66px;height:66px}.touch-btn.small{width:44px;height:44px}.joystick{width:104px;height:104px}.joystick-knob{width:46px;height:46px}}@media (width<=640px) and (orientation:portrait){.minimap{width:88px;height:88px}.hud-vitals{width:88px}}@media (height<=480px){.minimap{width:72px;height:72px}}@media (width>=641px) and (height>=481px){.panel{border-radius:10px;gap:8px;padding:6px 10px}.label{font-size:10px}.big{font-size:17px}.big small{font-size:12px}.chute-stat .big{font-size:13px}.value{font-size:14px}.health .bar{width:clamp(90px,13vw,150px);height:8px}.minimap{width:clamp(100px,11vw,136px);height:clamp(100px,11vw,136px)}.icon-btn{border-radius:10px;width:40px;height:40px}.score{gap:12px}.stat{gap:6px}.stat-icon svg{width:15px;height:15px}.pets{gap:3px;padding:5px 9px}.pet{gap:7px;font-size:11px}.pet-bar{width:clamp(44px,6vw,64px);height:5px}.fps{min-width:54px;padding:4px 7px;font-size:11px}.hint,.prompt{padding:6px 12px;font-size:12px}.speedo{gap:12px;padding:5px 14px}.speedo .big{font-size:24px}}@media (height<=480px){.zoom-btns{flex-direction:row}.hud-left{flex-direction:column}.hud-vitals{align-items:stretch;gap:6px;width:88px}.panel{padding:5px 9px}.health{flex-wrap:wrap;justify-content:space-between;gap:4px 6px;padding:5px 8px}.health .bar{order:3;width:100%;height:8px}.pets{gap:3px;padding:4px 8px}.pet{gap:6px;font-size:11px}.pet-bar{flex:1;width:auto;min-width:0}.label{font-size:9px}.big{font-size:17px}.big small{font-size:12px}.score{gap:10px}.hud-stats{gap:5px}.fps{min-width:52px;padding:3px 6px;font-size:11px}.speedo{gap:9px;padding:4px 12px}.speedo .big{font-size:20px}.vehicle-health{width:44px}}.announce{white-space:normal;text-align:center;text-wrap:balance;width:max-content;max-width:min(92vw,760px);line-height:1.15}@media (width<=640px) and (orientation:portrait){.announce{max-width:calc(100vw - 32px);font-size:20px;top:clamp(236px,36%,320px)}}@media (height<=480px){.announce{max-width:calc(100vw - 300px);font-size:20px}}.hint{white-space:normal;text-align:center;width:max-content;max-width:min(92vw,560px);animation:7s ease-in-out forwards hint-life;overflow:visible}@keyframes hint-life{0%{opacity:0}8%,78%{opacity:1}to{opacity:0}}.hud.touch .hint{max-width:min(80vw,420px)}.touch-btn.iconic.captioned{flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex}.touch-btn .touch-cap{letter-spacing:.01em;opacity:.92;font-size:10px;font-weight:700;line-height:1;display:block}.touch-btn.small.captioned .icon{width:20px;height:20px}.touch-btn.small .touch-cap{font-size:9px}@media (width<=640px),(height<=480px){.touch-btn.small{width:48px;height:48px}.touch-btn.captioned:not(.small):not(.fire) .icon{width:22px;height:22px}.touch-btn.fire.captioned .icon{width:28px;height:28px}.hud-stats{gap:8px}.hud-stats .panel{padding:8px 12px}.hud-stats .score{gap:12px}.hud-stats .stat{gap:7px}.hud-stats .stat-icon .icon{width:18px;height:18px}.hud-stats .big{font-size:20px}.hud-stats .big small{font-size:14px}.hud-stats .label{font-size:11px}.hud-stats .zone .big,.hud-stats .chute-stat .big{font-size:13px;font-weight:800;display:block}.hud-stats .chute-stat{margin-right:10px;padding-right:10px}}.start{pointer-events:auto;background:#0b1020;place-items:safe center;padding:20px;transition:background-color .7s ease-out;display:grid;position:absolute;inset:0;overflow-y:auto}.start.ready{background:#060a1661}.start-card{width:min(440px,100%)}.start-card h1{margin-bottom:8px}.start-tag{color:var(--muted);margin:0 0 18px;font-size:15px;line-height:1.4}.start-keys{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px;padding:0;list-style:none;display:grid}.start-keys li{color:var(--muted);background:#ffffff0f;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 6px;font-size:13px;display:flex}.start-keys kbd{font:inherit;color:var(--ink);white-space:nowrap;font-size:14px;font-weight:800}.start-play:disabled{color:var(--muted);cursor:progress;background:#ffffff1a}.start-progress{background:#ffffff1a;border-radius:2px;height:4px;margin-top:12px;overflow:hidden}.start-progress:after{content:"";background:var(--accent);border-radius:2px;width:40%;height:100%;animation:1.2s ease-in-out infinite alternate start-slide;display:block}@keyframes start-slide{0%{transform:translate(-20%)}to{transform:translate(170%)}}.start-more{color:var(--muted);margin:12px 0 0;font-size:12px}@media (height<=520px){.start-tag{margin-bottom:10px;font-size:13px}.start-keys{margin-bottom:10px}.start-keys li{gap:3px;padding:6px}.start-more{margin-top:8px}}.perf-controls{flex-wrap:wrap}.controls-help{display:block}.controls-help summary{cursor:pointer;pointer-events:auto;padding:2px 0}.controls-help[open] summary{margin-bottom:4px}.controls-help dl{touch-action:pan-y;gap:5px;max-height:34vh;margin:0;font-size:13px;display:grid;overflow-y:auto}.controls-help dl div{grid-template-columns:7.5em 1fr;gap:10px;display:grid}.controls-help dt{font-weight:700}.controls-help dd{color:var(--muted);margin:0}.start:before{content:"";z-index:-1;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 300' preserveAspectRatio='xMidYMax slice'%3E%3Cg fill='%232a3d63'%3E%3Crect x='0' y='172' width='60' height='128'/%3E%3Crect x='68' y='198' width='81' height='102'/%3E%3Crect x='152' y='186' width='74' height='114'/%3E%3Crect x='233' y='196' width='77' height='104'/%3E%3Crect x='320' y='201' width='53' height='99'/%3E%3Crect x='376' y='103' width='67' height='197'/%3E%3Crect x='446' y='187' width='55' height='113'/%3E%3Crect x='511' y='195' width='67' height='105'/%3E%3Crect x='581' y='195' width='54' height='105'/%3E%3Crect x='643' y='154' width='43' height='146'/%3E%3Crect x='688' y='176' width='75' height='124'/%3E%3Crect x='769' y='174' width='66' height='126'/%3E%3Crect x='845' y='132' width='47' height='168'/%3E%3Crect x='902' y='164' width='83' height='136'/%3E%3Crect x='988' y='162' width='77' height='138'/%3E%3Crect x='1072' y='70' width='46' height='230'/%3E%3Crect x='1121' y='195' width='76' height='105'/%3E%3Crect x='1202' y='74' width='71' height='226'/%3E%3Crect x='1281' y='130' width='89' height='170'/%3E%3Crect x='1379' y='94' width='77' height='206'/%3E%3Crect x='1463' y='147' width='59' height='153'/%3E%3Crect x='1526' y='148' width='84' height='152'/%3E%3C/g%3E%3Cg fill='%23141f38'%3E%3Crect x='-20' y='183' width='88' height='117'/%3E%3Crect x='73' y='190' width='84' height='110'/%3E%3Crect x='172' y='200' width='81' height='100'/%3E%3Crect x='260' y='188' width='51' height='112'/%3E%3Crect x='323' y='192' width='56' height='108'/%3E%3Crect x='383' y='242' width='74' height='58'/%3E%3Crect x='469' y='204' width='62' height='96'/%3E%3Crect x='539' y='232' width='60' height='68'/%3E%3Crect x='611' y='232' width='96' height='68'/%3E%3Crect x='714' y='181' width='118' height='119'/%3E%3Crect x='843' y='148' width='94' height='152'/%3E%3Crect x='942' y='155' width='117' height='145'/%3E%3Crect x='1071' y='219' width='57' height='81'/%3E%3Crect x='1141' y='225' width='115' height='75'/%3E%3Crect x='1270' y='150' width='88' height='150'/%3E%3Crect x='1368' y='184' width='92' height='116'/%3E%3Crect x='1465' y='243' width='85' height='57'/%3E%3Crect x='1557' y='217' width='58' height='83'/%3E%3C/g%3E%3Cg fill='%23ffd77a' fill-opacity='.55'%3E%3Crect x='-10' y='219' width='7' height='9'/%3E%3Crect x='26' y='219' width='7' height='9'/%3E%3Crect x='44' y='241' width='7' height='9'/%3E%3Crect x='44' y='285' width='7' height='9'/%3E%3Crect x='101' y='204' width='7' height='9'/%3E%3Crect x='119' y='270' width='7' height='9'/%3E%3Crect x='218' y='214' width='7' height='9'/%3E%3Crect x='200' y='280' width='7' height='9'/%3E%3Crect x='218' y='280' width='7' height='9'/%3E%3Crect x='288' y='202' width='7' height='9'/%3E%3Crect x='288' y='224' width='7' height='9'/%3E%3Crect x='288' y='268' width='7' height='9'/%3E%3Crect x='333' y='272' width='7' height='9'/%3E%3Crect x='429' y='256' width='7' height='9'/%3E%3Crect x='411' y='278' width='7' height='9'/%3E%3Crect x='497' y='218' width='7' height='9'/%3E%3Crect x='515' y='218' width='7' height='9'/%3E%3Crect x='515' y='262' width='7' height='9'/%3E%3Crect x='549' y='246' width='7' height='9'/%3E%3Crect x='567' y='268' width='7' height='9'/%3E%3Crect x='585' y='268' width='7' height='9'/%3E%3Crect x='621' y='268' width='7' height='9'/%3E%3Crect x='724' y='239' width='7' height='9'/%3E%3Crect x='742' y='239' width='7' height='9'/%3E%3Crect x='742' y='283' width='7' height='9'/%3E%3Crect x='760' y='283' width='7' height='9'/%3E%3Crect x='889' y='162' width='7' height='9'/%3E%3Crect x='853' y='184' width='7' height='9'/%3E%3Crect x='925' y='184' width='7' height='9'/%3E%3Crect x='925' y='206' width='7' height='9'/%3E%3Crect x='853' y='228' width='7' height='9'/%3E%3Crect x='889' y='228' width='7' height='9'/%3E%3Crect x='853' y='272' width='7' height='9'/%3E%3Crect x='889' y='272' width='7' height='9'/%3E%3Crect x='1024' y='169' width='7' height='9'/%3E%3Crect x='1042' y='191' width='7' height='9'/%3E%3Crect x='1024' y='235' width='7' height='9'/%3E%3Crect x='952' y='257' width='7' height='9'/%3E%3Crect x='970' y='257' width='7' height='9'/%3E%3Crect x='1006' y='257' width='7' height='9'/%3E%3Crect x='1042' y='279' width='7' height='9'/%3E%3Crect x='1081' y='233' width='7' height='9'/%3E%3Crect x='1099' y='233' width='7' height='9'/%3E%3Crect x='1117' y='233' width='7' height='9'/%3E%3Crect x='1099' y='255' width='7' height='9'/%3E%3Crect x='1081' y='277' width='7' height='9'/%3E%3Crect x='1151' y='283' width='7' height='9'/%3E%3Crect x='1169' y='283' width='7' height='9'/%3E%3Crect x='1205' y='283' width='7' height='9'/%3E%3Crect x='1241' y='283' width='7' height='9'/%3E%3Crect x='1280' y='164' width='7' height='9'/%3E%3Crect x='1316' y='186' width='7' height='9'/%3E%3Crect x='1298' y='208' width='7' height='9'/%3E%3Crect x='1334' y='208' width='7' height='9'/%3E%3Crect x='1334' y='252' width='7' height='9'/%3E%3Crect x='1414' y='198' width='7' height='9'/%3E%3Crect x='1414' y='220' width='7' height='9'/%3E%3Crect x='1378' y='242' width='7' height='9'/%3E%3Crect x='1432' y='242' width='7' height='9'/%3E%3Crect x='1378' y='286' width='7' height='9'/%3E%3Crect x='1493' y='257' width='7' height='9'/%3E%3Crect x='1475' y='279' width='7' height='9'/%3E%3Crect x='1493' y='279' width='7' height='9'/%3E%3Crect x='1567' y='275' width='7' height='9'/%3E%3C/g%3E%3C/svg%3E") bottom/auto 46% repeat-x,radial-gradient(at 50% 100%,#ffaa5a59,#0000 60%),linear-gradient(#0e1a38 0%,#23386a 55%,#4d5a8a 82%,#7a6a8a 100%);transition:opacity .9s ease-out;position:absolute;inset:0}.start{isolation:isolate}.start.ready:before{opacity:0}@media (width>=641px) and (height>=481px){.announce{max-width:min(760px,100vw - 680px);font-size:clamp(20px,2.4vw,32px)}}@media (width>=641px) and (width<=1080px) and (height>=481px){.announce{max-width:min(600px,100vw - 180px);top:max(22%,300px)}}@media (width<=640px) and (orientation:portrait){.announce{max-width:calc(100vw - 124px);font-size:19px}}@media (height<=480px){.announce{max-width:calc(100vw - 420px);font-size:18px}}.icon-btn{flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:0;display:flex}.icon-btn .btn-cap{letter-spacing:.01em;opacity:.9;white-space:nowrap;font-size:9px;font-weight:700;line-height:1;display:block}.icon-btn:has(.btn-cap) svg{width:16px;height:16px}.prompt.vehicle-keys{white-space:normal;text-align:center;max-width:min(92vw,560px);animation:7s ease-in-out forwards hint-life}.controls-vehicle dd{color:var(--ink)}@media (width<=640px),(height<=480px){.icon-btn{width:40px;height:40px}}.perf-details{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.start-quality{text-align:left;background:#ffffff0f;border-radius:12px;flex-direction:column;gap:6px;margin-top:14px;padding:10px 12px;display:flex}@media (height<=520px){.start-quality{margin-top:8px;padding:6px 10px}.start-quality .perf-details{display:none}}.map-district{text-overflow:ellipsis;max-width:calc(100% + 12px);color:var(--ink);white-space:nowrap;pointer-events:none;background:#0a1020d9;border:1px solid #fff3;border-radius:999px;padding:1px 8px;font-size:10px;font-weight:700;line-height:1.5;position:absolute;top:-6px;left:50%;overflow:hidden;transform:translate(-50%)}.map-loading{text-overflow:ellipsis;color:#ffd98a;white-space:nowrap;pointer-events:none;background:#3c2800d9;border:1px solid #ffbe3cb3;border-radius:999px;max-width:100%;padding:0 7px;font-size:9px;font-weight:700;line-height:1.6;animation:.9s ease-in-out infinite alternate map-loading-pulse;position:absolute;top:14px;left:50%;overflow:hidden;transform:translate(-50%)}@keyframes map-loading-pulse{0%{opacity:.6}to{opacity:1}}@media (prefers-reduced-motion:reduce){.map-loading{animation:none}}.start-districts{text-align:left;flex-direction:column;gap:6px;margin-top:14px;display:flex}.start-districts ul{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.start-districts li{color:var(--muted);white-space:nowrap;opacity:.7;border:1px solid #ffffff29;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;transition:opacity .3s,background-color .3s,color .3s}.start-districts li.on{opacity:1;color:var(--ink);background:#78dca029;border-color:#78dca080}.start-districts li.on:before{content:"✓ ";color:#7fe0a8}@media (height<=520px){.start-districts{gap:4px;margin-top:8px}.start-districts ul{display:none}}.hud-left,.hud-right{zoom:var(--hud-scale,1)}.mission-chip{flex-direction:column;align-items:flex-start;gap:2px;max-width:230px;padding:6px 10px}.mission-chip strong{font-size:14px;line-height:1.2}.mission-brief{color:var(--muted);font-size:12px;line-height:1.3}.mission-brief em{color:var(--ink);white-space:nowrap;font-style:normal;font-weight:700}@media (width<=900px),(height<=560px){.mission-chip{display:none}}.save-note{color:var(--muted);align-self:center;font-size:12px}.start-save{color:var(--muted);margin:10px 0 0;font-size:12px}.systems-status dd{white-space:normal}.vehicle-name{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#ffffffdb;text-shadow:0 1px 3px #000000b3;pointer-events:none;margin-top:4px;font-size:12px;font-weight:700}
