@charset "UTF-8";
:root{color-scheme:dark;--ink:oklch(17% .012 130);--paper:oklch(91% .025 95);--muted:oklch(72% .025 95);--metal:oklch(27% .015 130);--line:oklch(44% .025 110);--hp:oklch(71% .17 32);--stamina:oklch(83% .145 90);--armor:oklch(77% .1 233);--ready:oklch(80% .1 144);--edge:clamp(14px,2.2vw,32px);font-family:"Courier New",monospace;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--paper);overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;border-radius:0}button:focus-visible{outline:3px solid var(--stamina);outline-offset:4px}button:disabled{cursor:not-allowed}button:active{transform:translateY(1px)}[hidden]{display:none!important}.sprite{position:absolute;width:0;height:0;overflow:hidden}svg{fill:currentColor;display:block}kbd{font:900 14px "Courier New",monospace;display:inline-grid;place-items:center;min-width:25px;height:25px;background:var(--paper);color:var(--ink);box-shadow:2px 2px 0 var(--ink);border:1px solid var(--ink)}
.vitals{position:absolute;top:var(--edge);left:var(--edge);width:215px;display:grid;gap:8px}.vital{display:flex;align-items:center;gap:9px;color:var(--hp);filter:drop-shadow(2px 2px 0 var(--ink))}.vital>svg{width:26px;height:26px;flex:none;stroke:var(--ink);stroke-width:1;paint-order:stroke;shape-rendering:crispEdges}.vital.stamina{color:var(--stamina)}.vital.armor{color:var(--armor)}.meter{flex:1;min-width:0}.meter-title{display:flex;justify-content:space-between;align-items:baseline;font-size:10px;font-weight:bold;text-shadow:1px 1px 0 var(--ink),-1px -1px 0 var(--ink)}.meter-title b{letter-spacing:1px}.meter-title span{font-size:10px;color:var(--paper)}.meter-title strong{font-size:18px}.segments{height:11px;border:2px solid var(--ink);background:var(--metal);position:relative;box-shadow:0 0 0 1px color-mix(in oklch,currentColor 35%,var(--ink))}.segments i{display:block;width:var(--fill);height:100%;background:currentColor}.segments:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 2px),var(--ink) calc(10% - 2px),var(--ink) 10%)}.street-status{position:absolute;top:calc(var(--edge) - 4px);right:var(--edge);text-align:right}.cash{font-family:Impact,"Arial Black",sans-serif;font-size:45px;line-height:1.15;color:var(--stamina);letter-spacing:1px;-webkit-text-stroke:5px var(--ink);paint-order:stroke fill;text-shadow:4px 4px 0 var(--ink);font-variant-numeric:tabular-nums}.cash>span{font-size:34px;margin-right:3px}.reputation{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:5px;color:var(--armor);text-shadow:2px 2px 0 var(--ink),-1px -1px 0 var(--ink)}.reputation>span{font-size:10px;font-weight:bold;letter-spacing:1px}.reputation>b{font-family:Impact,"Arial Black",sans-serif;font-size:26px;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.wanted{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin-top:8px;color:var(--hp);filter:drop-shadow(2px 2px 0 var(--ink))}.wanted svg{width:22px;height:22px;stroke:var(--ink);stroke-width:1;paint-order:stroke fill}.wanted svg.off{color:var(--metal);stroke:var(--muted)}.wanted>span{font-size:8px;font-weight:bold;color:var(--paper);margin-left:4px;text-shadow:1px 1px 0 var(--ink)}.district-goal{position:absolute;top:65px;left:50%;transform:translateX(-50%);text-align:center;text-shadow:2px 2px 0 var(--ink),-1px -1px 0 var(--ink);display:flex;flex-direction:column;align-items:center;gap:5px}.tiny-code{font-size:8px;letter-spacing:1.2px;color:var(--muted)}.district-goal>b{font-family:Impact,"Arial Black",sans-serif;font-size:25px;letter-spacing:2px;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.district-goal-stats{display:flex;gap:6px;align-items:center;font-size:8px;font-weight:bold;background:var(--ink);padding:5px 8px}.district-goal-stats strong{color:var(--stamina);font-size:10px}.district-goal-stats i{height:10px;width:1px;background:var(--line);margin:0 3px}
.radar{position:absolute;left:var(--edge);bottom:45px;width:178px;filter:drop-shadow(3px 3px 0 var(--ink))}.radar-top,.radar-bottom{display:flex;align-items:center;justify-content:space-between;background:var(--ink);padding:6px 7px;font-size:8px;font-weight:bold;letter-spacing:.5px}.radar-top b{color:var(--stamina)}.radar-map{width:100%;height:150px;border:4px solid var(--ink);border-top:0;border-bottom:0;image-rendering:pixelated}.radar-bottom{padding:6px 7px;font-size:7px}.map-owned{color:var(--ready)}.map-target{color:var(--stamina)}.mission-line{margin-top:9px;background:var(--ink);padding:7px;font-size:8px;line-height:1.6;display:flex;flex-wrap:wrap;gap:0 6px;align-items:center}.mission-line>span{color:var(--stamina);font-size:8px;display:block;width:100%;letter-spacing:1px}.mission-line b{margin-left:auto;color:var(--stamina)}.weapon{position:absolute;right:var(--edge);bottom:57px;width:192px;filter:drop-shadow(2px 2px 0 var(--ink))}.weapon-name{display:flex;gap:10px;align-items:center;justify-content:flex-end}.weapon-name svg{width:59px;height:34px;color:var(--paper);stroke:var(--ink);stroke-width:2;paint-order:stroke fill;shape-rendering:crispEdges}.weapon-name>span{font-size:10px;font-weight:bold;background:var(--ink);padding:4px 6px}.ammo{font-family:Impact,"Arial Black",sans-serif;font-size:45px;text-align:right;line-height:1.15;-webkit-text-stroke:4px var(--ink);paint-order:stroke fill}.ammo>span{font-size:25px;color:var(--muted);margin-left:5px}.ammo>button{display:flex;align-items:center;justify-content:flex-end;gap:7px;width:100%;margin-top:3px;padding:0;background:none;border:0;font:8px "Courier New",monospace;-webkit-text-stroke:0}.ammo button>span{background:var(--ink);padding:5px}.ammo kbd{min-width:20px;height:20px;font-size:12px}.medkit{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin:13px 0 0 auto;background:var(--ink);padding:5px 7px;border:1px solid var(--line)}.medkit>svg{color:var(--ready);width:16px;height:16px}.medkit>b{font-size:21px}.medkit>b span{font-size:13px;color:var(--muted)}.medkit>span{font-size:8px;letter-spacing:.5px}.medkit kbd{min-width:20px;height:20px;font-size:12px}
.loadout{position:absolute;bottom:41px;left:50%;transform:translateX(-50%);width:352px}.loadout-heading{display:flex;justify-content:space-between;font-size:8px;font-weight:bold;letter-spacing:1px;margin:0 2px 7px;text-shadow:1px 1px 0 var(--ink),-1px -1px 0 var(--ink)}.skill-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.skill{position:relative;display:flex;flex-direction:column;align-items:center;padding:10px 3px 6px;min-width:0;min-height:97px;background:var(--ink);border:2px solid var(--line);box-shadow:3px 3px 0 var(--ink);color:var(--paper);transition:border-color .15s ease-out}.skill:hover{border-color:var(--paper)}.skill .slot-key{position:absolute;top:-9px;left:5px;min-width:21px;height:21px;font-size:13px;background:var(--stamina)}.skill>svg{width:39px;height:33px;margin:5px 0;color:var(--paper);shape-rendering:crispEdges}.skill .skill-name{font-size:9px;font-weight:bold;margin-top:3px}.skill .skill-state{font-size:8px;color:var(--ready);margin-top:5px;min-height:10px}.skill.cooldown{border-color:var(--armor)}.skill.cooldown>svg{color:var(--armor);opacity:.4}.skill.cooldown .skill-state{color:var(--armor)}.skill .cooldown-number{position:absolute;top:25px;font-family:Impact,"Arial Black",sans-serif;font-size:26px;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.skill.empty{background:color-mix(in oklch,var(--ink) 85%,transparent);border-style:dashed}.skill.empty>svg{width:23px;opacity:.35}.skill.empty .skill-name,.skill.empty .skill-state{color:var(--muted)}.skill.locked>svg{opacity:.25}.skill.locked .skill-state{color:var(--stamina)}.skill .lock-small{width:15px;height:15px;position:absolute;top:29px;margin:0;color:var(--stamina);opacity:1}.bag-toggle{position:absolute;left:calc(50% + 193px);bottom:42px;min-width:73px;width:73px;min-height:98px;padding:9px 5px 7px;background:var(--metal);border:2px solid var(--line);box-shadow:3px 3px 0 var(--ink);display:flex;flex-direction:column;align-items:center;gap:5px}.bag-toggle:hover{border-color:var(--stamina)}.bag-toggle>svg{width:29px;height:29px;margin-top:6px;color:var(--stamina)}.bag-toggle>span:not(.bag-key){font-size:10px;font-weight:bold}.bag-toggle>small{font-size:6px;white-space:nowrap;color:var(--muted)}.bag-key{position:absolute;top:-10px;left:7px;background:var(--paper);color:var(--ink);padding:3px 7px;font-size:12px;font-weight:bold;border:1px solid var(--ink)}.context-action{position:absolute;bottom:173px;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:8px;white-space:nowrap}.context-action>span{background:var(--ink);padding:6px 8px;font-size:10px;font-weight:bold;letter-spacing:.5px}.context-action>small{width:100%;text-align:center;font-size:8px;text-shadow:1px 1px 0 var(--ink),-1px -1px 0 var(--ink);color:var(--paper)}.desktop-keys{position:absolute;bottom:16px;left:var(--edge);display:flex;gap:14px;font-size:9px;text-shadow:1px 1px 0 var(--ink),-1px -1px 0 var(--ink)}.desktop-keys b{color:var(--muted);font-size:8px;font-weight:normal}.scene-credit{position:absolute;bottom:15px;right:var(--edge);font-size:7px;color:var(--paper);background:var(--ink);padding:3px 5px}.feedback{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%);max-width:min(380px,calc(100% - 32px));padding:12px 15px;background:var(--ink);border:1px solid var(--stamina);box-shadow:4px 4px 0 var(--ink);font-size:12px;line-height:1.5;text-align:center}.touch-actions{display:none}
.bag-scrim{position:fixed;inset:0;background:rgba(13,19,14,.38);z-index:10}.bag-panel{position:fixed;z-index:11;top:24px;right:24px;bottom:24px;width:420px;background:var(--ink);border:2px solid var(--line);box-shadow:7px 7px 0 rgba(12,17,13,.8);display:flex;flex-direction:column}.bag-header{padding:20px 18px 17px;display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid var(--line)}.bag-header .tiny-code{color:var(--stamina)}h1{font-family:Impact,"Arial Black",sans-serif;font-size:30px;line-height:1;letter-spacing:1px;margin:9px 0 0;font-weight:normal}.close-button{width:36px;height:36px;flex:none;font:28px "Courier New",monospace;border:1px solid var(--line);background:var(--metal);line-height:1}.close-button:hover{color:var(--stamina);border-color:var(--stamina)}.bag-tabs{display:flex;flex:none;border-bottom:1px solid var(--line)}.bag-tabs>button{flex:1;background:var(--metal);border:0;border-bottom:3px solid transparent;padding:14px 8px 11px;font-size:11px;font-weight:bold}.bag-tabs>button[aria-selected=true]{background:var(--ink);color:var(--stamina);border-bottom-color:var(--stamina)}.bag-tabs>button span{font-size:9px;opacity:.7;margin-left:6px}.bag-content{overflow:auto;flex:1;min-height:0;overscroll-behavior:contain;padding:0 18px 18px;scrollbar-color:var(--line) var(--ink);scrollbar-width:thin}.bag-intro{font-size:10px;line-height:1.6;color:var(--muted);margin:16px 0}.bag-intro b{color:var(--paper)}.gear-list{display:flex;flex-direction:column;gap:7px}.gear-item{display:grid;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;text-align:left;background:var(--metal);border:1px solid var(--line);padding:10px}.gear-item[aria-pressed=true]{border:2px solid var(--stamina);padding:9px;background:color-mix(in oklch,var(--stamina) 8%,var(--ink))}.gear-item>svg{width:36px;height:30px;color:var(--paper)}.gear-item h2{font-size:12px;margin:0 0 5px}.gear-item p{font-size:9px;margin:0;color:var(--muted)}.gear-item .inventory-tag{font-size:8px;color:var(--ready);white-space:nowrap;text-align:right}.gear-item.locked>svg{color:var(--muted)}.gear-item.locked .inventory-tag{color:var(--stamina)}.item-detail{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.item-kicker{color:var(--stamina);font-size:8px;letter-spacing:1px}.item-detail h2{font-size:17px;line-height:1.3;margin:7px 0}.item-detail p{font-size:11px;line-height:1.6;color:var(--muted);margin:0 0 14px}.assignment-label{display:flex;justify-content:space-between;gap:8px;margin-top:15px;font-size:9px;font-weight:bold}.assignment-label span{color:var(--muted);font-size:8px;font-weight:normal}.assign-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:9px}.assign-slots>button{min-height:54px;border:1px solid var(--line);background:var(--metal);font-size:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.assign-slots>button b{font-size:17px;color:var(--stamina)}.assign-slots>button small{font-size:7px;color:var(--muted)}.assign-slots>button:hover{border-color:var(--stamina)}.assign-slots>button:disabled{opacity:.4}.assign-hint{margin-top:10px!important;font-size:9px!important}.detail-lock{display:flex;gap:8px;align-items:center;color:var(--stamina);font-size:10px;padding:10px;background:var(--metal);line-height:1.5}.detail-lock svg{width:17px;height:17px;flex:none}.quest-item{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line)}.quest-item>svg{width:37px;height:37px;flex:none;color:var(--stamina)}.quest-item h2{font-size:13px;line-height:1.5;margin:6px 0}.quest-item p{font-size:11px;color:var(--muted);line-height:1.6;margin:0 0 10px}.quest-state{font-size:9px;color:var(--ready)}.quest-note{display:flex;gap:9px;align-items:center;font-size:10px;line-height:1.7;color:var(--muted);padding:8px 0}.quest-note svg{width:20px;height:20px;flex:none;color:var(--muted)}.bag-footer{flex:none;padding:12px 18px;border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;justify-content:space-between}.bag-footer>span{font-size:9px;color:var(--muted);line-height:1.5}.bag-footer button{font-size:8px;border:0;background:none;text-decoration:underline;text-underline-offset:4px;color:var(--muted);padding:7px 0;flex:none}
.vitals .medkit{margin:1px auto 0 34px;padding:4px 6px;gap:7px}.vitals .medkit>b{font-size:18px}.vitals .medkit>span{font-size:7px}.skill.depleted>svg{color:var(--muted);opacity:.4}.skill.depleted .skill-state{color:var(--hp)}.skill.depleted{border-color:color-mix(in oklch,var(--hp) 45%,var(--ink))}.supply-strip{display:flex;align-items:center;gap:12px;padding:8px 0 13px;font-size:8px;color:var(--muted)}.supply-strip>span{font-size:7px;color:var(--ready)}.supply-strip b{font-weight:normal}.assignment-tools{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:8px;margin-top:12px;color:var(--muted)}.assignment-tools button{font-size:8px;padding:7px 8px;background:var(--metal);border:1px solid var(--line)}.assignment-tools button:hover{border-color:var(--paper)}.grade-preview{margin-top:16px;border-top:1px solid var(--line);padding-top:13px}.grade-preview>div{display:flex;align-items:center;gap:8px;margin-top:9px}.grade-preview svg{width:16px;height:16px;color:var(--muted)}.grade-preview b{font-size:12px}.grade-preview>div>span{font-size:8px;margin-left:auto;color:var(--stamina)}.grade-preview>p{font-size:9px;margin-top:9px;margin-bottom:0}.assign-slots>button small{font-size:6px;line-height:1.4;padding:0 2px}.skill.depleted .skill-state{font-size:7px}
.close-button{width:44px;height:44px}.bag-tabs>button{min-height:44px}.assignment-tools button{min-height:44px}.bag-footer button{min-height:44px}.touch-actions>button{height:44px;min-height:44px}
.ammo>b{font-weight:normal}.skill.selected{border-color:var(--stamina)}.skill.selected .skill-name{color:var(--stamina)}.placement-preview{position:absolute;left:50%;top:50%;width:180px;height:180px;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;color:var(--armor);z-index:3}.placement-ring{position:absolute;inset:0;border:2px dashed var(--armor);border-radius:50%;background:color-mix(in oklch,var(--armor) 12%,transparent);box-shadow:0 0 0 2px var(--ink)}.placement-preview>svg{position:relative;width:42px;height:30px;filter:drop-shadow(2px 2px 0 var(--ink))}.placement-preview>span{position:relative;background:var(--ink);padding:5px 7px;font-size:9px;margin-top:9px;font-weight:bold;color:var(--paper)}.placement-preview>small{position:relative;background:var(--ink);font-size:7px;padding:4px;color:var(--muted)}
.skill .resource-count{font-size:12px;font-weight:900;line-height:14px}.skill .resource-label{font-size:7px;font-weight:normal}.bag-assignment{flex:none;padding:12px 18px;border-top:1px solid var(--line);background:var(--ink)}.bag-assignment .assignment-label{margin-top:0}.bag-assignment .assign-slots{margin-top:8px}.bag-assignment .assign-slots>button{min-height:54px}
/* Approved PC HUD over the live Three.js world. */
body{user-select:none}#game,#game canvas{position:fixed;inset:0;display:block;width:100%;height:100%}#hud{position:fixed;inset:0;pointer-events:none}.vitals{width:228px}.street-status{min-width:210px}.street-status #police-status{display:block;font-size:9px;margin-top:4px;color:var(--paper);text-shadow:2px 2px var(--ink)}#wanted{font-size:28px;letter-spacing:5px;color:var(--metal);text-shadow:2px 2px var(--ink);-webkit-text-stroke:1px var(--muted)}#wanted.active-wanted{color:var(--hp);-webkit-text-stroke:1px var(--ink)}#pause{pointer-events:auto;float:right;margin-top:12px;background:var(--ink);border:1px solid var(--line);padding:7px 10px;font-size:9px}#medical-stat{position:relative}.vitals .medkit{pointer-events:auto;margin:10px 0 0 35px}.vitals .medkit:disabled{opacity:.5}#heal-track,#escape-track{height:3px;background:var(--metal);margin:4px 0 0 35px}#heal-progress,#escape-progress{display:block;height:100%;background:var(--ready)}#escape-track{margin:5px 0 0 auto;width:175px}#escape-progress{background:var(--armor)}.district-goal{top:28px;max-width:440px}.objective{margin-top:4px;font-size:10px;line-height:1.5;background:var(--ink);padding:7px 10px;max-width:440px}.objective.defending{color:var(--stamina)}.goal-track{height:2px;background:var(--metal);margin-top:6px}.goal-track i{display:block;height:100%;background:var(--stamina)}.radar{width:196px;bottom:40px}.radar-map{height:158px;opacity:.99;background:var(--ink)}.radar #camera-view{pointer-events:auto;width:100%;background:var(--ink);border:1px solid var(--armor);color:var(--armor);padding:8px;font-size:9px;margin-top:8px}.quest-panel{pointer-events:auto;background:var(--ink);margin-top:10px;font-size:9px}.quest-panel summary{padding:10px;cursor:pointer;list-style:none}.quest-panel summary span{float:right;color:var(--stamina)}#quest-list{max-height:260px;overflow:auto}.quest-row{padding:10px;border-top:1px solid var(--line)}.quest-row>div{display:flex;justify-content:space-between;gap:8px}.quest-row strong{font-size:10px}.quest-row span,.quest-row small{font-size:8px;color:var(--stamina)}.quest-row p{font-size:10px;line-height:1.5;margin:7px 0}.quest-row.completed{color:var(--ready)}.quest-row.completed p{display:none}.context{position:absolute;left:50%;bottom:173px;transform:translateX(-50%);max-width:520px;display:flex;align-items:center;gap:10px;text-align:left}.context>div{background:var(--ink);padding:8px 10px}.context strong{display:block;font-size:11px}.context small{display:block;font-size:9px;color:var(--muted);line-height:1.5;margin-top:4px}.context.danger{color:var(--hp)}#capture-track{position:absolute;bottom:-4px;left:36px;right:0;height:3px;background:var(--metal);padding:0}#capture-progress{display:block;height:100%;background:var(--stamina)}#capture-track.danger #capture-progress{background:var(--hp)}.loadout{width:392px;bottom:40px}.skill{min-height:106px;pointer-events:auto}.skill .skill-name{font-size:9px}.skill .resource-count{font-size:12px;font-weight:900}.skill .skill-state{min-height:15px}.skill .empty-plus{font-size:31px;color:var(--line);margin:4px 0 7px}.skill.empty .skill-name{color:var(--muted)}.bag-toggle{pointer-events:auto;left:calc(50% + 214px);bottom:40px;min-height:107px}.weapon{width:240px;bottom:49px}.weapon .ammo{font-size:43px;white-space:nowrap;text-align:right;line-height:1.3}.weapon .ammo>b{font-weight:normal}.weapon #reload-action{pointer-events:auto;display:flex;align-items:center;gap:7px;margin-left:auto;border:0;background:none;text-align:right;padding:5px 0;max-width:240px;font-size:9px;line-height:1.5}.weapon #ammo-detail{background:var(--ink);padding:5px 6px}#vehicle-health{display:block;text-align:right;background:var(--ink);padding:6px;margin-top:5px;color:var(--stamina)}.desktop-keys{bottom:13px}.feedback,#toast{pointer-events:none;opacity:0;top:24%;max-width:520px;line-height:1.6;transition:opacity .15s}.feedback.show{opacity:1}.bag-panel{width:470px;top:24px;bottom:24px;right:24px;pointer-events:auto}.bag-panel .bag-header h1{max-width:none}.bag-content{min-height:0}.bag-tabs>button{min-height:46px}.bag-footer{min-height:58px}.bag-footer>span{font-size:10px}.bag-assignment .assign-slots>button small{font-size:8px;line-height:1.5}.gear-item h2{font-size:13px}.gear-item p{font-size:10px}.inventory-empty{font-size:12px;line-height:1.8;color:var(--muted);padding:18px 0}.shop-wallet{padding:15px 18px;border-bottom:1px solid var(--line);color:var(--stamina);font-size:12px}.shop-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:17px 0;border-bottom:1px solid var(--line)}.shop-item>svg{width:40px;height:36px;color:var(--paper);margin-top:4px}.shop-item h2{font-size:14px;margin:0 0 8px}.shop-item h2 small{color:var(--stamina)}.shop-item p{font-size:11px;line-height:1.65;margin:0 0 8px;color:var(--muted)}.shop-item>div>small{font-size:10px;line-height:1.6;color:var(--armor)}.shop-buy{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.shop-buy button,.supply-row button{background:var(--metal);border:1px solid var(--stamina);color:var(--stamina);padding:10px;font-size:10px;min-height:40px}.shop-buy button:disabled,.supply-row button:disabled{border-color:var(--line);color:var(--muted);opacity:.7}.shop-buy>span{font-size:9px;line-height:1.5;color:var(--muted)}.supply-title{font-size:13px;letter-spacing:1px;margin:24px 0 12px}.supply-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px;align-items:center}.supply-row>span>small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.supply-row>small{grid-column:1/3;color:var(--muted);font-size:9px}#shop-bag{color:var(--stamina);font-size:9px}.bag-assignment{max-height:160px}.bag-panel h1{font-family:Impact,"Arial Black",sans-serif}.bag-scrim{pointer-events:auto;background:rgba(13,19,14,.48)}#reticle{position:absolute;width:18px;height:18px;transform:translate(-50%,-50%);border:1px solid var(--paper);box-shadow:0 0 0 1px var(--ink)}#reticle:before,#reticle:after{content:"";position:absolute;background:var(--paper)}#reticle:before{width:6px;height:2px;top:7px;left:5px}#reticle:after{height:6px;width:2px;top:5px;left:7px}#target-hint{position:absolute;left:50%;top:calc(50% + 42px);transform:translateX(-50%);background:var(--ink);padding:9px 12px;font-size:11px;text-align:center;color:var(--armor);max-width:340px;line-height:1.7}#target-hint.invalid{color:var(--hp)}#remote-return{pointer-events:auto;position:absolute;top:177px;left:50%;transform:translateX(-50%);padding:12px;background:var(--ink);border:1px solid var(--armor);color:var(--armor);font-size:11px}.modal{position:fixed;inset:0;background:rgba(16,24,18,.93);display:flex;align-items:center;padding:5vh 9vw;z-index:20;pointer-events:auto}.modal-card{width:590px;max-height:90vh;overflow:auto}h1{font-family:Impact,"Arial Black",sans-serif;font-size:68px;letter-spacing:-1px;line-height:1.04;margin:18px 0 22px}h1 span{color:var(--ready)}.modal-card>p{font-size:14px;line-height:1.7;color:var(--muted);max-width:65ch;margin:0}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--stamina)}.intro-guide{margin:25px 0;border-top:1px solid var(--line)}.intro-guide>div{display:flex;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.intro-guide b{color:var(--stamina);font-size:12px}.intro-guide p{margin:0;display:flex;flex-direction:column;gap:7px}.intro-guide strong{font-size:13px}.intro-guide span{font-size:11px;color:var(--muted);line-height:1.6}.modal-actions{display:flex;gap:12px;margin-top:25px}.primary,.secondary{min-height:50px;border:1px solid var(--ready);background:var(--ready);color:var(--ink);font-weight:bold;padding:0 22px;font-size:13px}.primary span{margin-left:35px}.secondary{background:var(--metal);color:var(--paper);border-color:var(--line)}.modal-card>p.modal-hint{font-size:10px;margin-top:16px}.modal-foot{position:absolute;bottom:25px;left:9vw;right:9vw;display:flex;justify-content:space-between;font-size:9px;color:var(--muted);letter-spacing:1px}#loading{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;justify-content:center;padding:10vw;background:var(--ink)}#loading p{font-size:14px;color:var(--muted)}.failure{color:var(--hp)!important}
@media(min-width:1700px){.vitals{width:246px}.radar{width:216px}.radar-map{height:174px}.loadout{width:416px}.bag-toggle{left:calc(50% + 228px)}.skill{min-height:112px}.bag-toggle{min-height:113px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* PC readability pass: essential copy 16px, secondary copy 14px at 100%. */
:root{--hud-scale:1;--hud-body:calc(16px * var(--hud-scale));--hud-small:calc(14px * var(--hud-scale));--hud-font:Arial,Helvetica,sans-serif}
body{--hud-body:calc(16px * var(--hud-scale));--hud-small:calc(14px * var(--hud-scale))}
body[data-hud-scale="125"]{--hud-scale:1.25}body[data-hud-scale="150"]{--hud-scale:1.5}
#hud,.bag-panel,.modal{font-family:var(--hud-font)}
kbd,.bag-key,.slot-key{font-family:"Courier New",monospace;font-size:16px}
.vitals{width:min(calc(265px * var(--hud-scale)),335px);gap:10px}
.meter-title,.meter-title span{font-size:var(--hud-small)}.meter-title b{letter-spacing:.3px}.meter-title strong{font-size:calc(20px * var(--hud-scale))}
.vital>svg{width:28px;height:28px}.segments{height:12px}
.vitals .medkit{margin-top:10px;min-height:38px;gap:7px}.vitals .medkit>span{font-size:var(--hud-small);letter-spacing:0}.vitals .medkit>b{font-size:calc(20px * var(--hud-scale))}.medkit kbd{font-size:16px;min-width:26px;height:26px}
.street-status{width:min(calc(245px * var(--hud-scale)),310px)}.cash{font-size:calc(40px * var(--hud-scale))}.reputation>span{font-size:var(--hud-small);letter-spacing:.3px}.reputation>b{font-size:calc(26px * var(--hud-scale))}
.street-status #police-status{font-size:var(--hud-small)}#pause{font-size:var(--hud-small);padding:8px 12px;min-height:36px;margin-top:8px}
.district-goal{top:var(--edge);width:min(calc(400px * var(--hud-scale)),460px);max-width:460px;gap:4px}.district-goal>b{display:none}.tiny-code{font-size:14px;letter-spacing:.6px}.district-goal-stats{font-size:14px;gap:6px;padding:6px 9px;white-space:nowrap}.district-goal-stats strong{font-size:16px}.district-goal-stats>span{font-size:14px}.objective{font-size:var(--hud-body);max-width:100%;padding:8px 10px;line-height:1.4}.goal-track{height:4px}
.quest-tracker{position:absolute;right:var(--edge);top:calc(var(--edge) + 205px * var(--hud-scale));width:min(calc(285px * var(--hud-scale)),355px);max-height:calc(100vh - var(--edge) - 205px * var(--hud-scale) - 205px);overflow:auto;background:var(--ink);border:1px solid var(--line);padding:14px 16px;line-height:1.4;scrollbar-width:thin;pointer-events:auto}
.tracker-kicker{display:block;font-size:var(--hud-small);color:var(--stamina);letter-spacing:.6px}.quest-tracker h2{font-size:calc(18px * var(--hud-scale));line-height:1.2;margin:7px 0 10px}.quest-tracker p{margin:0;font-size:var(--hud-body)}.tracker-progress{font-size:var(--hud-small);margin-top:12px;padding-top:10px;border-top:1px solid var(--line);color:var(--armor)}.quest-tracker .tracker-reward{font-size:var(--hud-small);margin-top:6px;color:var(--ready)}
#quest-track-toggle{font:14px/1.3 var(--hud-font);min-height:38px;margin-top:12px;padding:8px 10px;background:var(--metal);border:1px solid var(--line);color:var(--paper);width:100%;text-align:left}#quest-track-toggle:hover{border-color:var(--stamina);color:var(--stamina)}
.radar{width:min(calc(226px * var(--hud-scale)),280px);bottom:44px}.radar-map{height:min(calc(180px * var(--hud-scale)),205px)}.radar-top,.radar-bottom{font-size:14px;letter-spacing:0;padding:6px 8px}.radar #camera-view{font-size:14px;min-height:38px}.quest-panel{font-size:14px;margin-top:6px}.quest-panel summary{padding:10px}.quest-row strong,.quest-row p{font-size:16px}.quest-row span,.quest-row small{font-size:14px}.quest-row>div{flex-wrap:wrap}#quest-list{max-height:220px}
.loadout{width:min(calc(440px * var(--hud-scale)),500px);bottom:44px}.loadout-heading{font-size:14px;letter-spacing:.3px;margin-bottom:10px}.skill-row{gap:8px}.skill{min-height:calc(90px + 22px * var(--hud-scale));padding:11px 3px 7px}.skill .slot-key{font-size:16px;min-width:26px;height:26px;top:-10px}.skill>svg{width:32px;height:28px;margin:3px 0}.skill .skill-name{font-size:var(--hud-small);line-height:1.15;text-align:center;margin-top:4px;overflow-wrap:anywhere}.skill .skill-state,.skill.depleted .skill-state{font-size:var(--hud-small);min-height:20px;line-height:1.15;text-align:center}.skill .resource-count{font-size:var(--hud-small);line-height:1.15}.skill .empty-plus{font-size:27px;margin:2px 0 4px}.skill.empty .resource-count{font-size:14px}
.bag-toggle{left:calc(50% + min(220px * var(--hud-scale),250px) + 14px);bottom:44px;min-width:94px;width:104px;min-height:calc(90px + 22px * var(--hud-scale));padding:12px 5px 7px;gap:5px}.bag-toggle>svg{width:28px;height:28px;margin-top:3px}.bag-toggle>span:not(.bag-key){font-size:var(--hud-small)}.bag-toggle>small{font-size:14px;white-space:normal;line-height:1.05}.bag-key{font-size:16px;top:-11px;min-width:26px;text-align:center}
.weapon{width:260px;bottom:49px}.weapon-name{gap:7px}.weapon-name svg{width:45px;height:28px}.weapon-name>span{font-size:var(--hud-small)}.weapon .ammo{font-size:calc(34px * var(--hud-scale));line-height:1.2}.weapon #reload-action{font-size:var(--hud-small);max-width:260px}.weapon #reload-action kbd{min-width:26px;height:26px;font-size:16px}#vehicle-health{font-size:var(--hud-small)}
.context{bottom:calc(158px + 34px * var(--hud-scale));max-width:530px;gap:9px}.context strong{font-size:var(--hud-body);line-height:1.3}.context small{font-size:var(--hud-small);line-height:1.35}.context>div{padding:9px 12px}.context kbd{font-size:20px;min-width:32px;height:32px}
.desktop-keys{display:none}.feedback,#toast{top:27%;font-size:var(--hud-body);max-width:530px;padding:12px 18px}#target-hint{font-size:var(--hud-body);line-height:1.4}#remote-return{font-size:16px;top:160px;min-height:44px}
.bag-panel{width:min(610px,calc(100vw - 48px));top:20px;bottom:20px;right:20px}.bag-header{padding:15px 20px 14px;align-items:center}.bag-panel .bag-header h1{font-size:34px;letter-spacing:.4px;margin:6px 0 0;line-height:1}.bag-header .tiny-code{font-size:14px}.close-button{font-size:30px;width:44px;height:44px}.bag-content{padding:0 20px 18px}.bag-tabs>button{font-size:16px;min-height:48px;padding:12px}.bag-intro{font-size:16px;line-height:1.45;margin:14px 0}.supply-strip{font-size:14px;line-height:1.4;padding-bottom:14px}.gear-item{grid-template-columns:36px minmax(0,1fr) auto;gap:10px;padding:12px}.gear-item[aria-pressed=true]{padding:11px}.gear-item h2{font-size:18px;line-height:1.2}.gear-item p{font-size:14px;line-height:1.4}.gear-item .inventory-tag{font-size:14px}.inventory-empty{font-size:16px;line-height:1.5}.item-detail h2{font-size:22px}.item-detail p{font-size:16px;line-height:1.45}.assignment-tools{font-size:14px;line-height:1.4;align-items:flex-start}.assignment-tools button{font-size:14px;min-width:145px}.bag-assignment{padding:14px 20px;max-height:185px}.assignment-label{font-size:16px;flex-wrap:wrap}.assignment-label span{font-size:14px}.bag-assignment .assign-slots>button{min-height:62px}.assign-slots>button b{font-size:22px}.bag-assignment .assign-slots>button small{font-size:14px;line-height:1.2;overflow-wrap:anywhere}.bag-footer{padding:12px 20px;gap:12px;align-items:flex-start;min-height:62px}.bag-footer>span{font-size:14px;line-height:1.4}.bag-footer button,#shop-bag{font-size:14px;line-height:1.3;max-width:155px;text-align:left}.quest-item h2{font-size:18px}.quest-item p{font-size:16px;line-height:1.5}.item-kicker,.quest-state,.quest-note{font-size:14px;line-height:1.4}
.shop-wallet{font-size:16px;line-height:1.4;padding:12px 20px}.shop-item{grid-template-columns:36px minmax(0,1fr);gap:12px;padding:18px 0}.shop-item>svg{width:34px;height:30px}.shop-item h2{font-size:20px;margin:0 0 10px;line-height:1.2}.shop-item h2 small{font-size:14px;display:inline-block;margin-left:6px}.shop-item p{font-size:16px;line-height:1.45;margin:0 0 10px;color:var(--paper)}.shop-item p>b{display:block;font-size:14px;margin-bottom:4px;color:var(--muted)}.shop-item .grade-next{color:var(--ready)}.shop-item .grade-next>b{color:var(--ready)}.shop-item>div>small{font-size:14px;line-height:1.4;color:var(--muted)}.shop-buy{gap:9px;margin-top:12px}.shop-buy button,.supply-row button{font-size:16px;min-height:44px;padding:10px 12px}.shop-buy .shop-assign{border-color:var(--ready);color:var(--ready);background:var(--ink)}.shop-buy>span{width:100%;font-size:14px;line-height:1.4}.supply-title{font-size:20px;margin:24px 0 8px}.supply-row{font-size:16px;padding:14px 0}.supply-row>span>small,.supply-row>small{font-size:14px;line-height:1.4}.supply-row>small:empty{display:none}
.modal{padding:32px max(40px,8vw)}.modal-card{width:760px;max-width:100%;max-height:calc(100vh - 90px);padding:3px 6px 12px 3px}.modal-card h1{font-size:52px;line-height:1.05;margin:13px 0 18px}.modal-card>p{font-size:16px;line-height:1.5}.eyebrow{font-size:14px;letter-spacing:1px}.intro-guide{margin:18px 0}.intro-guide>div{gap:18px;padding:12px 0}.intro-guide b{font-size:16px}.intro-guide strong{font-size:18px}.intro-guide span{font-size:16px;line-height:1.4}.intro-guide p{gap:5px}.modal-actions{margin-top:20px;flex-wrap:wrap;gap:12px}.primary,.secondary{font-size:16px;min-height:48px;padding:10px 18px}.primary span{margin-left:16px}.modal-card>p.modal-hint,.modal-card>p.save-status{font-size:14px;line-height:1.45;margin-top:14px}.save-status:empty{display:none}.modal-foot{font-size:14px;letter-spacing:.3px;bottom:18px}.settings-panel{margin:20px 0;border-top:1px solid var(--line);padding-top:18px}.settings-panel h2{font-size:20px;margin:0 0 16px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}.settings-grid label{display:flex;flex-direction:column;gap:8px;font-size:16px}.settings-grid select{font:16px var(--hud-font);color:var(--paper);background:var(--metal);border:1px solid var(--line);min-height:44px;padding:8px}.settings-grid .setting-check{flex-direction:row;align-items:center;line-height:1.4}.setting-check input{width:20px;height:20px;accent-color:var(--ready);flex:none;margin:0 3px 0 0}.settings-panel>p{font-size:14px;color:var(--muted);line-height:1.5;margin:18px 0 0}select:focus-visible,input:focus-visible{outline:3px solid var(--stamina);outline-offset:3px}
/* Defeat is presentation over the existing three-second simulation recovery. */
body.is-dead #game canvas{filter:grayscale(1) contrast(.85)}.defeat-screen{position:fixed;inset:0;z-index:15;display:flex;align-items:center;pointer-events:none;background:oklch(15% .01 25 / .22)}.defeat-band{width:100%;text-align:center;background:oklch(13% .012 25 / .94);padding:24px 30px 28px;border-top:1px solid oklch(35% .04 25);border-bottom:1px solid oklch(35% .04 25)}.defeat-kicker{font:14px "Courier New",monospace;letter-spacing:4px;color:var(--muted)}.defeat-band h1{font-family:Impact,"Arial Black",sans-serif;font-size:96px;line-height:1;letter-spacing:3px;margin:12px 0 16px;color:oklch(65% .22 27);text-shadow:4px 5px 0 oklch(18% .035 27)}.defeat-band p{font:16px/1.5 var(--hud-font);margin:4px 0}.defeat-band #defeat-kept{color:var(--muted)}.defeat-countdown{margin-top:16px;font:14px "Courier New",monospace;letter-spacing:1px;color:var(--muted)}.defeat-countdown b{font-size:22px;color:var(--paper)}
.reward-popups{position:absolute;left:50%;top:34%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.reward-popup{font:bold 20px/1.3 var(--hud-font);color:var(--ready);background:var(--ink);border:1px solid var(--ready);padding:8px 14px;box-shadow:3px 3px 0 var(--ink);animation:reward-rise 1.8s ease-out forwards}.damage-indicator{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 4px oklch(65% .22 27 / .7),inset 0 0 60px oklch(55% .2 27 / .2)}
.damage-indicator[data-direction="known"]:before{content:"";position:absolute;left:50%;top:50%;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:18px solid var(--hp);filter:drop-shadow(0 2px 1px var(--ink));transform:translate(-50%,-50%) rotate(var(--damage-angle,0deg)) translateY(-110px)}.defeat-screen[data-reason="arrest"] .defeat-band h1{color:var(--armor);text-shadow:4px 5px 0 var(--ink)}
@keyframes reward-rise{0%{opacity:0;transform:translateY(12px)}12%,75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-18px)}}
body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation:none!important;transition:none!important}body.reduce-motion .damage-indicator{box-shadow:inset 0 0 0 3px var(--hp)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.damage-indicator{box-shadow:inset 0 0 0 3px var(--hp)}}
@media(min-width:1700px){.modal-card{width:820px}.modal-card h1{font-size:60px}}

/* Match information stays inside the established right objective tracker. */
.match-score{margin-top:10px;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:var(--hud-small)}
.match-score-heading{display:flex;justify-content:space-between;gap:8px;color:var(--muted);margin-bottom:8px}
#match-clock{font-variant-numeric:tabular-nums;font-weight:bold;color:var(--paper)}
.match-score-row{display:grid;grid-template-columns:1fr auto 35px;gap:8px;align-items:center;margin:6px 0;font-variant-numeric:tabular-nums}
.match-score-row>b{font-size:var(--hud-small);border-left:3px solid currentColor;padding-left:6px}.match-score-row>span{color:var(--paper)}.match-score-row>span:last-child{color:var(--muted);text-align:right}
.faction-player{color:#6de6b8}.faction-red{color:#ff7965}.faction-blue{color:#79baff}
.quest-tracker .match-attacks{font-size:var(--hud-small);color:var(--muted);margin-top:10px;line-height:1.4}
.match-results{margin-top:16px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:16px}
.match-results>p{margin:0 0 12px;color:var(--paper)}.match-result-row{display:flex;justify-content:space-between;gap:20px;margin:8px 0;font-variant-numeric:tabular-nums}.match-result-row>span{color:var(--paper)}

.management-panel .bag-header h1{font-size:28px;line-height:1.12}.management-panel .bag-content{padding-top:18px}.management-panel p{font-size:16px;line-height:1.5;color:var(--muted);margin:12px 0}.management-facts{display:flex;justify-content:space-between;gap:16px;font-size:16px;line-height:1.4}.management-facts>b{color:var(--stamina)}.management-panel h3{font-size:18px;line-height:1.4;margin:0 0 10px}.management-action,.management-orders button{min-height:44px;font-size:16px;background:var(--metal);border:1px solid var(--ready);color:var(--ready);padding:10px 12px;text-align:left}.management-action:disabled{opacity:.5;cursor:default;border-color:var(--line);color:var(--muted)}.management-panel small{display:block;font-size:14px;line-height:1.4;color:var(--stamina);margin-top:8px}.management-panel .management-note{font-size:14px;border-top:1px solid var(--line);padding-top:16px;margin-top:24px}.management-unit,.management-vehicle{border-top:1px solid var(--line);padding:20px 0;margin-top:18px}.management-unit h3{display:flex;justify-content:space-between;gap:12px}.management-unit h3>span{font-size:14px;color:var(--ready)}.management-unit label{display:block;font-size:14px;color:var(--muted);margin:12px 0 8px}.management-unit select{width:100%;min-height:44px;font-size:16px;color:var(--paper);background:var(--metal);border:1px solid var(--line);padding:8px}.management-orders{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.management-orders button{font-size:14px;flex:1;white-space:nowrap;border-color:var(--line);color:var(--paper);text-align:center}.management-orders button[aria-pressed=true]{border-color:var(--ready);color:var(--ready)}.management-ready{color:var(--ready)!important}

.quest-track-button{display:block;min-height:38px;font-size:14px;margin-top:10px;padding:8px 12px;background:var(--metal);border:1px solid var(--line);color:var(--ready)}

/* PC combat pass: passive HUD never intercepts aim or fire. */
#hud,#hud *{pointer-events:none!important}
.bag-panel,.bag-panel *, .modal,.modal *, .bag-scrim{pointer-events:auto}
.compact-kit{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);width:280px;height:64px;display:grid;grid-template-columns:224px 52px;gap:4px}
.compact-kit .loadout{position:static;left:auto;bottom:auto;transform:none;width:224px;height:64px}
.compact-kit .loadout-heading{display:none}.compact-kit .skill-row{height:64px;gap:4px}
.compact-kit .skill{min-height:0;height:64px;padding:17px 2px 3px;border-width:1px;box-shadow:1px 1px 0 var(--ink);overflow:hidden;transition:none}
.compact-kit .skill .slot-key{top:1px;left:3px;min-width:16px;height:16px;font-size:12px}
.compact-kit .skill>svg{width:24px;height:19px;margin:0}.compact-kit .skill .skill-name{display:none}
.compact-kit .skill .empty-plus{font-size:21px;line-height:23px;margin:0}
.compact-kit .skill .skill-state{font-size:12px;line-height:15px;min-height:15px;margin-top:2px}
.compact-kit .skill .resource-count{font-size:12px;line-height:15px;white-space:nowrap}.compact-kit .skill.empty .resource-count{font-size:12px}
.compact-kit .bag-toggle{position:static;left:auto;bottom:auto;min-width:0;width:52px;min-height:0;height:64px;padding:18px 2px 3px;gap:1px;border-width:1px;box-shadow:1px 1px 0 var(--ink);position:relative}
.compact-kit .bag-toggle>svg{width:23px;height:20px;margin:0}.compact-kit .bag-toggle>span:not(.bag-key){font-size:10px;line-height:14px}
.compact-kit .bag-toggle>small{display:none}.compact-kit .bag-key{top:1px;left:4px;padding:0 3px;min-width:16px;height:16px;font-size:12px}
.weapon{width:180px;max-width:180px;height:72px;max-height:72px;bottom:12px;right:var(--edge)}
.weapon-name{height:20px;gap:5px}.weapon-name svg{width:31px;height:19px}.weapon-name>span{font-size:12px;line-height:16px;padding:1px 4px}
.weapon .ammo{font-size:29px;line-height:30px}.weapon #reload-action{font-size:12px;line-height:18px;min-height:0;height:20px;margin:0;padding:0;max-width:180px;white-space:nowrap;text-align:right}
.weapon #reload-action kbd{min-width:18px;height:18px;font-size:12px}.weapon #ammo-detail{display:inline-block;max-width:144px;overflow:hidden;vertical-align:bottom;text-overflow:ellipsis}
#vehicle-health{position:absolute;right:0;bottom:75px;font-size:12px;white-space:nowrap}
.context{left:50%;bottom:84px;transform:translateX(-50%);width:max-content;max-width:min(360px,calc(100vw - 400px));gap:5px;align-items:center}
.context>div{padding:5px 7px;background:var(--ink)}.context strong{font-size:14px;line-height:18px;max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.context kbd{font-size:14px;min-width:25px;height:25px}.context small{display:none}#capture-track{left:30px;height:3px;bottom:-2px}
.district-goal{width:280px;max-width:280px;gap:2px}.district-goal>.tiny-code{font-size:12px}.district-goal .objective{display:none}.district-goal-stats{font-size:12px;padding:4px 6px;gap:4px;max-width:280px}.district-goal-stats strong{font-size:14px}.district-goal-stats>span{font-size:12px}
.vitals{width:230px;gap:7px}.meter-title,.meter-title span{font-size:12px}.meter-title strong{font-size:18px}.segments{height:10px}.vital>svg{width:24px;height:24px}.vitals .medkit{margin-top:6px;min-height:28px;padding:3px 5px}.vitals .medkit>span{font-size:12px}.vitals .medkit>b{font-size:18px}.medkit kbd{min-width:20px;height:20px;font-size:12px}
.radar{width:164px;bottom:12px}.radar-map{height:132px}.radar-top,.radar-bottom{font-size:11px;padding:4px 5px}.radar #quests,.radar #camera-view{display:none}
.quest-tracker{width:220px;top:calc(var(--edge) + 162px);max-height:212px;overflow:hidden;padding:8px 10px}.tracker-kicker{font-size:11px;line-height:15px;letter-spacing:0}.quest-tracker h2{font-size:14px;margin:5px 0;line-height:17px}.quest-tracker>p{font-size:13px;line-height:17px}.quest-tracker .tracker-progress,.quest-tracker .tracker-reward,#quest-track-toggle{display:none}
.match-score{font-size:12px;margin-top:5px;padding-bottom:5px}.match-score-heading{font-size:11px;margin-bottom:4px}.match-score-row{grid-template-columns:1fr auto 30px;gap:4px;margin:3px 0}.match-score-row>b{font-size:10px;line-height:14px;padding-left:4px}.quest-tracker .match-attacks{font-size:11px;line-height:14px;margin-top:5px}
.faction-player{color:#f26f62}.faction-red{color:#e7c762}.faction-blue{color:#79baff}
.management-supplies{margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
#toast{top:calc(var(--edge) + 48px);max-width:420px;padding:7px 10px;font-size:14px}.reward-popups{top:22%;gap:4px}.reward-popup{font-size:16px;padding:5px 9px}

#vehicle-health{position:static;text-align:right;font-size:12px;line-height:16px;max-width:180px;overflow:hidden;text-overflow:ellipsis}.weapon:has(#vehicle-health:not([hidden])) #reload-action{display:none}

.meter-title,.meter-title span{font-size:14px}.compact-kit .skill .resource-count{font-size:14px;line-height:16px}
.street-status{width:200px;min-width:0}.street-status .cash{font-size:36px}.street-status .reputation>b{font-size:22px}.street-status .reputation>span{font-size:12px}.street-status #wanted{font-size:23px;letter-spacing:4px}.street-status #police-status{font-size:12px}.street-status #pause{font-size:12px;min-height:28px;padding:4px 8px;margin-top:6px}

/* Keep the GTA-like corner treatment, reveal a target under the passive strip. */
.compact-kit,.weapon,.radar,.context{transition:opacity .1s ease-out}
body.hud-aim-low .compact-kit,body.hud-aim-low .weapon,body.hud-aim-low .radar,body.hud-aim-low .context{opacity:.15}
