/* Inert game HUD. Input and interactive shell controls remain engine-owned. */
#app { --mm-minimap-bg:#14263bf2; --mm-minimap-border:#50bcde; --mm-minimap-radius:6px; }
.mb-hud { position:absolute; inset:0; pointer-events:none; color:#ecf6ff; font:700 13px/1.25 system-ui,sans-serif; text-shadow:0 1px 2px #061222; }
.mb-status { position:absolute; bottom:var(--mb-bottom,12px); right:12px; width:212px; padding:8px 11px; background:#14263bdc; border:1px solid #68859b; border-radius:6px; }
.mb-score { color:#fff; font-size:14px; letter-spacing:.5px; }
.mb-class { color:#a3d8ed; font-size:9px; margin:3px 0 6px; }
.mb-objective { color:#ffe38a; font-size:8px; }
.mb-city-result { color:#ffe38a; text-align:center; padding:10px; font:700 15px/1.4 system-ui,sans-serif; }
.mb-meter { position:relative; height:4px; background:#09192a; margin:8px 0 6px 34px; border-radius:2px; }
.mb-meter span { position:absolute; right:calc(100% + 6px); top:-4px; font-size:9px; color:#c1d8e6; }
.mb-meter i { display:block; width:100%; height:100%; transform-origin:left; border-radius:2px; }
.mb-xp { background:linear-gradient(90deg,#ad61ec,#e589ff); }
.mb-jet { background:linear-gradient(90deg,#25b5cf,#7cf4ff); }
.mb-dash { background:linear-gradient(90deg,#ecac30,#ffe184); }
.mb-empty span { color:#f5b96d; }
.mb-loadout { position:absolute; bottom:42px; left:170px; right:264px; display:flex; flex-wrap:wrap; justify-content:center; gap:4px; }
.mb-loadout span { background:#15283dc9; border:1px solid #688fa8; border-radius:4px; padding:4px 6px; color:#e2f5ff; font-size:9px; }
.mb-help { position:absolute; bottom:12px; left:170px; right:264px; text-align:center; font-size:9px; color:#c3dce8; }
.mb-reward { position:absolute; top:70px; left:50%; transform:translateX(-50%) translateY(-5px); padding:8px 14px; border:1px solid #ffd45b; border-radius:5px; background:#203d4fed; color:#ffe38a; opacity:0; transition:opacity .15s,transform .15s; white-space:nowrap; }
.mb-show { opacity:1; transform:translateX(-50%); }
.mb-loading { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); padding:14px 22px; background:#172c43eb; border:1px solid #53c9e6; border-radius:6px; text-align:center; }
.mb-loading[hidden] { display:none; }
.mb-bounties { position:absolute; top:var(--mb-map-bottom,178px); left:10px; width:144px; box-sizing:border-box; padding:7px; background:#14263be8; border:1px solid #68859b; border-radius:5px; font-size:10px; }
.mb-map-size { color:#9ab8cd; font-size:8px; letter-spacing:.8px; margin-bottom:5px; }
.mb-bounties strong { display:block; color:#ffe078; font-size:10px; letter-spacing:.7px; }
.mb-targets { color:#a6bdcc; margin-top:5px; font-size:9px; }
.mb-bounty { border-top:1px solid #52677c80; padding:5px 0 2px; }
.mb-bounty span { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; color:#ecf6ff; }
.mb-bounty b { display:block; margin-top:2px; color:#ffe078; font-size:9px; }
.mm-minimap [data-kind^="bounty"] { z-index:3; background:#172a3c; box-shadow:0 0 0 2px #ffc95a,0 0 9px #ffc95a88; }
.mm-minimap [data-kind^="bounty"]::after { position:absolute; inset:-2px; display:grid; place-items:center; color:#fff5c0; font:900 10px/1 system-ui,sans-serif; text-shadow:0 1px 2px #000; }
.mm-minimap [data-kind="bounty1"]::after { content:'1'; }
.mm-minimap [data-kind="bounty2"]::after { content:'2'; }
.mm-minimap [data-kind="bounty3"]::after { content:'3'; }
.mb-reticle { position:absolute; width:20px; height:20px; margin:-12px; border:2px solid #7cf4ff; border-radius:50%; box-shadow:0 0 0 2px #102438aa,0 0 10px #48dbed66; }
.mb-reticle::before,.mb-reticle::after { content:''; position:absolute; background:#fff4bc; }
.mb-reticle::before { left:9px; top:-5px; width:2px; height:30px; }
.mb-reticle::after { left:-5px; top:9px; width:30px; height:2px; }
.mb-hit { position:absolute; transform:translate(-50%,-50%); color:#fff8bf; font:900 36px/1 system-ui; text-shadow:0 0 5px #111,0 0 12px #ffbf49; }
.mb-hit.mb-kill { color:#ffd457; font-size:48px; }
.mb-hit[hidden] { display:none; }
.mb-picked { filter:brightness(1.9); box-shadow:0 0 8px #e589ff; }
.mb-damaged { box-shadow:inset 0 0 24px #ff635d88; }
@media(max-width:900px) { .mb-loadout{display:none}.mb-help{left:120px;right:264px;font-size:8px} }
@media(max-width:700px) { #app{--mm-minimap-w:100px;--mm-minimap-h:100px}.mb-bounties{width:100px;padding:5px}.mb-bounty b{font-size:8px}.mb-status{width:170px;padding:7px 9px}.mb-score{font-size:12px}.mb-help{display:none}.mb-reward{font-size:11px;max-width:80%;white-space:normal;text-align:center} }
