/* Approved Compact Tactical layout. Armory palette/type; HUD geometry follows reference. */
body.playing:not(.debriefing)>main>header,
body.playing:not(.debriefing)>main>.command,
body.playing:not(.debriefing)>main>.utility,
body.playing .game>.hud,
body.playing .game>.skill-dock,
body.playing #status,
body.playing #guardian-brace,body.playing #guardian-armor{display:none!important}
body.playing:not(.debriefing)>main{max-width:none;padding:0}
body.playing:not(.debriefing) .game{border:0;border-radius:0;max-width:100%;margin:0 auto}
body.playing:not(.debriefing) #game{display:block;margin:0 auto;max-width:100%;max-height:100dvh;width:auto;height:auto}
@media(pointer:fine){body.playing:not(.debriefing) #game{width:min(100vw,calc(100dvh * 1280 / 650));height:auto}}
/* Direct camera: one viewport-sized raster, with world aspect handled by the renderer. */
body.playing.camera-viewport-fit:not(.debriefing)>main{width:100%;height:100dvh}
body.playing.camera-viewport-fit:not(.debriefing) .game{width:100%;height:100dvh;max-height:none}
body.playing.camera-viewport-fit:not(.debriefing) #game{width:100%;height:100%;max-height:none;aspect-ratio:auto}
#gameplay-hud-v1{position:absolute;z-index:7;pointer-events:none;color:var(--a73-text);font:calc(20 * var(--hud-unit))/1.25 var(--a73-font);font-synthesis:none;text-align:left}
#gameplay-hud-v1[hidden],#gameplay-hud-v1 [hidden]{display:none!important}
.tactical-panel-v1{position:relative;border:1px solid #788580;background:color-mix(in srgb,var(--a73-bg) 90%,transparent);border-radius:0;padding:calc(16 * var(--hud-unit)) calc(20 * var(--hud-unit));box-shadow:inset 0 0 0 2px var(--a73-line)}
.tactical-panel-v1::before{content:'';position:absolute;left:calc(8 * var(--hud-unit));top:calc(7 * var(--hud-unit));width:calc(18 * var(--hud-unit));height:calc(4 * var(--hud-unit));background:var(--a73-amber)}
.hud-player-v1{position:absolute;left:1.6%;top:3%;display:flex;align-items:center;gap:calc(22 * var(--hud-unit));min-height:calc(58 * var(--hud-unit));padding-block:calc(16 * var(--hud-unit))}
#hud-name{font-size:calc(22 * var(--hud-unit));font-weight:400;white-space:nowrap}
#hud-hearts{display:flex;gap:calc(9 * var(--hud-unit))}
#hud-hearts .pixel-heart{display:block;width:calc(28 * var(--hud-unit));height:calc(27 * var(--hud-unit));background-size:contain;background-repeat:no-repeat;image-rendering:pixelated}
#hud-protection{display:flex;align-items:center;width:calc(22 * var(--hud-unit));height:calc(26 * var(--hud-unit))}
#hud-protection:empty{display:none}
#hud-protection svg{width:100%;height:100%}
#hud-protection[data-empty=true]{opacity:.38}
#hud-health-note{position:absolute;top:calc(100% + 5 * var(--hud-unit));left:0;color:var(--a73-muted);font-size:calc(14 * var(--hud-unit));white-space:nowrap}
[data-critical=true] #hud-health-note{color:#ef443e}
.hud-center-v1{position:absolute;top:2.7%;left:50%;transform:translateX(-50%);width:calc(362 * var(--hud-unit));display:grid;gap:calc(10 * var(--hud-unit));text-align:center}
#hud-operation{display:grid;gap:calc(4 * var(--hud-unit));padding:calc(8 * var(--hud-unit)) calc(20 * var(--hud-unit))}
#hud-operation-type{font-size:calc(17 * var(--hud-unit));color:var(--a73-amber)}
#hud-objective{font-size:calc(22 * var(--hud-unit));font-weight:400;line-height:1.25}
#hud-objective-progress{font-size:calc(15 * var(--hud-unit));color:var(--a73-amber)}
#hud-boss{padding:calc(7 * var(--hud-unit)) calc(16 * var(--hud-unit));display:grid;gap:calc(4 * var(--hud-unit));font-size:calc(16 * var(--hud-unit))}
#hud-boss::before{display:none}
#hud-boss-bar{height:calc(13 * var(--hud-unit));background:var(--a73-line);display:block}
#hud-boss-bar i{display:block;height:100%;background:#ef443e}
.hud-right-v1{position:absolute;right:1.6%;top:3%;display:flex;gap:calc(28 * var(--hud-unit));align-items:stretch}
#hud-score{display:flex;align-items:center;gap:calc(34 * var(--hud-unit));min-width:calc(188 * var(--hud-unit));font-size:calc(22 * var(--hud-unit));justify-content:space-between}
#hud-score-value{color:var(--a73-amber);font-size:calc(28 * var(--hud-unit));font-weight:400}
#gameplay-hud-v1 #pause{position:static!important;pointer-events:auto;display:block!important;min-width:0;width:calc(59 * var(--hud-unit));height:calc(59 * var(--hud-unit));min-height:0;padding:0;border:1px solid #788580;border-radius:0;background:var(--a73-bg);color:var(--a73-text);font-size:0;box-shadow:none}
#gameplay-hud-v1 #pause::after{content:'';display:inline-block;width:calc(14 * var(--hud-unit));height:calc(24 * var(--hud-unit));border-left:calc(4 * var(--hud-unit)) solid currentColor;border-right:calc(4 * var(--hud-unit)) solid currentColor}
#gameplay-hud-v1 #pause>*{display:none}
.hud-actions-v1{position:absolute;left:1.35%;bottom:2.7%;display:flex;gap:calc(7 * var(--hud-unit));max-width:97.3%;transform:scale(1.25);transform-origin:left bottom}
/* Width follows each operative label; status wraps inside its stable slot. */
.hud-action-v1{box-sizing:border-box;display:grid;grid-template-columns:calc(32 * var(--hud-unit)) auto;align-items:center;gap:calc(8 * var(--hud-unit));flex:none;height:calc(67.6 * var(--hud-unit));padding:calc(6 * var(--hud-unit)) calc(8 * var(--hud-unit))}
#hud-attack{--hud-status-width:10ch}
#hud-ultimate{--hud-status-width:12ch}
.hud-action-v1 .hud-icon-v1{display:block;flex-shrink:0;width:calc(32 * var(--hud-unit));height:calc(32 * var(--hud-unit));background:var(--a73-text);mask-size:contain;mask-repeat:no-repeat;mask-position:center;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}
.hud-action-v1 img{width:100%;height:100%;object-fit:contain;visibility:hidden}
.hud-skill-copy-v1{display:grid;gap:calc(4 * var(--hud-unit));width:max(var(--hud-label-width),var(--hud-status-width,13ch));min-width:0;font-size:calc(14 * var(--hud-unit))}
.hud-action-header-v1{display:flex;align-items:flex-start;justify-content:space-between;gap:calc(8 * var(--hud-unit));min-width:0}
.hud-binding-v1{flex:none;font-size:calc(12 * var(--hud-unit));white-space:nowrap}
.hud-label-v1{font-size:calc(14 * var(--hud-unit));white-space:nowrap}
.hud-value-v1{min-width:0;font-size:calc(14 * var(--hud-unit));font-weight:400;color:var(--a73-amber);white-space:normal;text-align:right;font-variant-numeric:tabular-nums}
#hud-attack .hud-binding-v1{display:none}
#hud-grenade{--hud-status-width:9ch;grid-template-columns:calc(24 * var(--hud-unit)) auto}
#hud-grenade .hud-icon-v1{width:calc(24 * var(--hud-unit))}
.hud-action-v1 .hud-grenade-icon-v1{position:relative;background:transparent}
.hud-grenade-icon-v1 svg{position:absolute;inset:0;width:100%;height:100%}
.hud-action-v1[data-state=cooldown] .hud-icon-v1,.hud-action-v1[data-state=charging] .hud-icon-v1{opacity:.5}
.hud-action-v1[data-state=unavailable]{color:var(--a73-muted)}
.hud-action-v1[data-state=unavailable] .hud-icon-v1{opacity:.38}
.hud-action-v1[data-state=unavailable] .hud-value-v1{color:var(--a73-muted)}
.hud-action-v1::before{display:none}
.hud-action-v1[data-state=unavailable]::after{content:'×';position:absolute;left:calc(32 * var(--hud-unit));color:#ef443e;font-size:calc(42 * var(--hud-unit))}
#gameplay-pause-v1{width:min(480px,92vw);max-height:92dvh;overflow:auto;padding:26px;border:1px solid #788580;border-radius:0;background:var(--a73-bg);color:var(--a73-text);font-family:var(--a73-font);font-synthesis:none}
#gameplay-pause-v1::backdrop{background:#03080bdb}
#gameplay-pause-v1 h2{font-size:27px;font-weight:400;margin:0 0 18px;color:var(--a73-amber)}
#gameplay-pause-v1 .pause-actions-v1{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pause-actions-v1 button{font:14px/1.25 var(--a73-font);min-height:42px}
.pause-actions-v1 [data-pause=resume]{grid-column:1/-1}
#pause-audio-v1 details{padding-top:18px;font-size:12px}
#pause-audio-v1 label{display:flex;align-items:center;gap:12px;margin-top:12px}
#pause-audio-v1 input{flex:1;min-width:0}
#gameplay-hud-v1 button:focus-visible,#gameplay-pause-v1 button:focus-visible{outline:3px solid var(--a73-text);outline-offset:3px}
@media(pointer:coarse){
 /* Keep the original Thumb Arc and skill buttons. Keyboard cards never cover them. */
 #gameplay-hud-v1 .hud-actions-v1{display:none}
 #gameplay-hud-v1 .hud-center-v1{width:23.2%;top:2.7%}
 #gameplay-hud-v1 #hud-name{font-size:calc(20 * var(--hud-unit))}
 #gameplay-hud-v1 .hud-player-v1{gap:calc(12 * var(--hud-unit))}
 #gameplay-hud-v1 #hud-operation-type{font-size:calc(18 * var(--hud-unit))}
 #gameplay-hud-v1 #hud-objective{font-size:calc(20 * var(--hud-unit))}
 #gameplay-hud-v1 .hud-right-v1{right:max(1.6%,env(safe-area-inset-right));gap:calc(12 * var(--hud-unit))}
 #gameplay-hud-v1 .hud-player-v1{left:max(1.6%,env(safe-area-inset-left))}
 #gameplay-hud-v1 #pause{width:36px;height:36px}
 #gameplay-hud-v1 .hud-player-v1,#gameplay-hud-v1 .hud-center-v1,#gameplay-hud-v1 .hud-right-v1{top:max(3%,env(safe-area-inset-top))}
 #gameplay-pause-v1{padding:18px}
 #gameplay-pause-v1 .pause-actions-v1{gap:8px}
}
