html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#0b1520;font-family:Segoe UI,system-ui,-apple-system,sans-serif;color:#fff;user-select:none}#game{display:block;width:100vw;height:100vh}#ui{position:fixed;inset:0;pointer-events:none}#loading{position:fixed;inset:0;background:linear-gradient(160deg,#ff7a59,#d44b8a 45%,#2a2a6a);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:50;transition:opacity .6s}#loading.hidden{opacity:0;pointer-events:none}#loading .title{font-size:64px;font-weight:900;letter-spacing:8px;text-shadow:0 0 24px #ff5aa0,0 4px 0 #6a1040;font-family:Impact,Arial Black,sans-serif}#loading .title span{display:block;font-size:28px;letter-spacing:18px;color:#ffe86a;text-shadow:0 0 18px #ffb000}#loading .bar{width:360px;height:10px;background:#0006;border-radius:6px;margin-top:28px;overflow:hidden}#loadbar{height:100%;width:0%;background:linear-gradient(90deg,#ffe86a,#ff5aa0);transition:width .2s}#loadtext{margin-top:12px;font-size:14px;opacity:.85;letter-spacing:2px}.hud{position:absolute;font-weight:700;text-shadow:0 2px 4px #000c}#hud-top-right{right:24px;top:20px;text-align:right}#money{font-size:26px;color:#6ef08a;font-family:Impact,Arial Black,sans-serif;letter-spacing:1px}#wanted{font-size:22px;letter-spacing:3px;color:#fff;min-height:28px}#wanted .star{opacity:.18}#wanted .star.on{opacity:1;color:#ffd43a;text-shadow:0 0 8px #ffb000}#weapon{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:6px}#weapon canvas{width:72px;height:44px;background:#0007;border:2px solid #fff4;border-radius:6px}#ammo{font-size:18px;color:#fff}#clock{font-size:16px;color:#ffe86a;margin-top:4px}#bars{position:absolute;left:24px;bottom:24px;width:260px}#bars .bar{height:12px;background:#0008;border:2px solid #fff5;border-radius:4px;margin-top:6px;overflow:hidden}#bars .bar div{height:100%}#hp div{background:#e8394a}#armor div{background:#9ad6ff}#stamina div{background:#ffd43a}#minimap{position:absolute;left:24px;bottom:90px;width:220px;height:220px;border-radius:50%;border:3px solid #fff8;overflow:hidden;box-shadow:0 0 18px #0009;background:#1a2a3a}#minimap canvas{position:absolute;left:0;top:0}#district{position:absolute;left:24px;bottom:316px;font-size:20px;color:#ffe86a;font-family:Impact,Arial Black,sans-serif;letter-spacing:2px;opacity:0;transition:opacity .5s}#objective{position:absolute;left:50%;bottom:40px;transform:translate(-50%);background:#0009;padding:8px 18px;border-radius:8px;font-size:16px;color:#ffe86a;max-width:70vw;text-align:center;opacity:0;transition:opacity .3s}#subtitle{position:absolute;left:50%;bottom:100px;transform:translate(-50%);font-size:18px;color:#fff;max-width:70vw;text-align:center;opacity:0;transition:opacity .2s;padding:6px 14px;background:#0007;border-radius:6px}#subtitle b{color:#ffd43a}#banner{position:absolute;left:50%;top:22%;transform:translate(-50%);font-family:Impact,Arial Black,sans-serif;font-size:56px;letter-spacing:6px;color:#fff;text-shadow:0 0 22px #ff5aa0,0 4px 0 #400;opacity:0;transition:opacity .4s;text-align:center}#banner small{display:block;font-size:22px;letter-spacing:3px;color:#ffe86a;font-family:Segoe UI,system-ui,sans-serif}#prompt{position:absolute;left:50%;top:60%;transform:translate(-50%);font-size:15px;color:#fff;background:#0008;padding:6px 12px;border-radius:6px;opacity:0}#prompt b{color:#ffd43a}#crosshair{position:absolute;left:50%;top:50%;width:14px;height:14px;margin:-7px 0 0 -7px;border:2px solid #fff;border-radius:50%;box-shadow:0 0 4px #000;opacity:0}#crosshair.on{opacity:.9}#hitmark{position:absolute;left:50%;top:50%;width:22px;height:22px;margin:-11px 0 0 -11px;opacity:0;color:#f33;font-size:22px;line-height:22px;text-align:center}#vignette{position:absolute;inset:0;box-shadow:inset 0 0 160px 40px #c8000000;transition:box-shadow .2s}#fx{position:absolute;inset:0;mix-blend-mode:screen;opacity:0;background:radial-gradient(circle at 50% 50%,#f0a2,#0fa3 60%,#fa04)}#fade{position:absolute;inset:0;background:#000;opacity:0;transition:opacity .5s}#menu{position:fixed;inset:0;background:#000b;display:none;flex-direction:column;align-items:center;justify-content:center;z-index:40;pointer-events:auto}#menu.on{display:flex}#menu h1{font-family:Impact,Arial Black,sans-serif;font-size:48px;letter-spacing:6px;margin:0 0 20px;color:#ffe86a;text-shadow:0 0 20px #ff5aa0}#menu .btn{font-size:20px;padding:10px 40px;margin:6px;background:#fff2;border:2px solid #fff6;border-radius:8px;cursor:pointer;letter-spacing:2px}#menu .btn:hover{background:#ff5aa055;border-color:#ff5aa0}#menu .row{display:flex;gap:8px;align-items:center;margin:6px;font-size:16px}#menu input[type=range]{width:200px}#menu .help{margin-top:18px;font-size:14px;color:#ddd;columns:2;column-gap:40px;max-width:760px;line-height:1.7}#menu .help b{color:#ffd43a}#bigmap{position:fixed;inset:0;background:#000c;display:none;align-items:center;justify-content:center;z-index:30}#bigmap.on{display:flex}#bigmap canvas{border:3px solid #fff6;border-radius:8px;box-shadow:0 0 40px #000}#missionlist{position:absolute;right:24px;top:140px;font-size:13px;color:#ddd;text-align:right;opacity:0;transition:opacity .3s}#stats{position:absolute;left:8px;top:8px;font:11px monospace;color:#9f9;background:#0006;padding:3px 6px;border-radius:4px;white-space:pre;display:none}#wheel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:none;gap:8px;background:#000a;padding:12px;border-radius:14px}#wheel.on{display:flex}#wheel .slot{width:80px;height:60px;border:2px solid #fff4;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px}#wheel .slot.sel{border-color:#ffd43a;background:#ffd43a22}#wheel .slot canvas{width:60px;height:34px}#settings{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#0009;z-index:80;pointer-events:auto}#settings.on{display:flex}#settings .panel{width:min(900px,94vw);max-height:90vh;overflow:auto;background:#080c16f5;border:1px solid #ff5aa0;border-radius:10px;padding:14px 22px 12px;color:#fff;font:14px/1.5 Segoe UI,system-ui,sans-serif;box-shadow:0 0 40px #ff5aa059}#settings .head{display:flex;justify-content:space-between;align-items:center;font:900 24px Impact,Arial Black,sans-serif;letter-spacing:4px;color:#ff5aa0}#settings .close{background:none;border:1px solid #fff5;color:#fff;border-radius:6px;padding:2px 10px;cursor:pointer;font-size:16px}#settings .cols{display:flex;gap:32px;flex-wrap:wrap}#settings .col{flex:1 1 360px}#settings h3{margin:12px 0 4px;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#ffe86a}#settings .srow{display:flex;align-items:center;gap:10px;padding:3px 0}#settings .lbl{flex:1}#settings .lbl small{display:block;color:#9aa4b4;font-size:11px}#settings select,#settings button.key{background:#1c2434;color:#fff;border:1px solid #fff4;border-radius:6px;padding:4px 8px;font:inherit}#settings button.key{min-width:110px;cursor:pointer}#settings button.key.waiting{border-color:#ffd43a;color:#ffd43a}#settings button.mini{font-size:11px;padding:1px 8px;margin-left:8px;background:#1c2434;color:#fff;border:1px solid #fff4;border-radius:6px;cursor:pointer}#settings input[type=range]{width:150px}#settings .val{width:44px;text-align:right;color:#ffd43a}#settings .note,#settings .foot{color:#9aa4b4;font-size:12px;margin-top:10px}#bigmap .btn,#startscreen .btn{font-size:18px;padding:8px 32px;margin:6px;background:#fff2;border:2px solid #fff6;border-radius:8px;cursor:pointer;letter-spacing:2px;color:#fff}#bigmap .btn:hover,#startscreen .btn:hover{background:#ff5aa055;border-color:#ff5aa0}#bigmap .btn{pointer-events:auto}#bigmap-settings{position:absolute;top:24px;right:28px}#bigmap #bigmap-close{position:absolute;bottom:24px;left:50%;margin:0;transform:translate(-50%)}#startscreen{display:flex;flex-direction:column;align-items:center;margin-top:26px}#startscreen .sub{color:#ffe86a;font-size:13px;letter-spacing:1px;margin-bottom:8px}#startscreen .btn.primary{background:#ff5aa055;border-color:#ff5aa0}#loadmenu{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#0009;z-index:80;pointer-events:auto}#loadmenu.on{display:flex}#loadmenu .panel{width:min(760px,94vw);max-height:88vh;overflow:auto;background:#080c16f5;border:1px solid #ff5aa0;border-radius:10px;padding:14px 22px 12px;color:#fff;font:14px/1.5 Segoe UI,system-ui,sans-serif;box-shadow:0 0 40px #ff5aa059}#loadmenu .head{display:flex;justify-content:space-between;align-items:center;font:900 24px Impact,Arial Black,sans-serif;letter-spacing:4px;color:#ff5aa0;margin-bottom:8px}#loadmenu .close{background:none;border:1px solid #fff5;color:#fff;border-radius:6px;padding:2px 10px;cursor:pointer;font-size:16px}#loadmenu .lrow{display:grid;grid-template-columns:28px 1fr auto auto;gap:12px;align-items:center;padding:6px 10px;border-radius:6px;cursor:pointer}#loadmenu .lrow:hover{background:#ffffff12}#loadmenu .lrow.sel{background:#ff5aa047;outline:1px solid #ff5aa0}#loadmenu .n{color:#ffd43a}#loadmenu .lbl{font-weight:600}#loadmenu .meta{color:#cfd6e0;font-size:12px}#loadmenu .date{color:#8a94a6;font-size:12px}#loadmenu .empty{color:#cfd6e0;padding:10px 0}#loadmenu .foot{color:#9aa4b4;font-size:12px;margin-top:10px}#loadmenu .foot b{color:#fff}
