/* Approved battle interface v2; live DOM controls and counters remain interactive. */
.battle-stage{--battle-gold:#e8cb72;--battle-brown:#493015;--battle-ink:#211406}
.battle-hud{left:20px;right:auto;width:920px;height:162px;top:558px;border:0;border-radius:0;background:url('./assets/hd/battle-ui-v2/ui_battle_hud.webp') center/100% 100% no-repeat;box-shadow:none}
.battle-hud::before{display:none}
.source-action{bottom:0;filter:none}
.source-action.remove{left:35px;width:69px;height:75px}
.source-action.save{left:114px;width:91px;height:76px}
.source-action.formation{left:668px;width:70px;height:76px}
.source-action.start{left:747px;width:90px;height:77px}
.source-action.leave{left:850px;width:72px;height:78px}
.battle-help-link{top:64px;right:23px;width:37px;height:37px;padding:0;border:0;border-radius:50%;background:none}
.battle-help-link img{width:100%;height:100%;display:block;pointer-events:none}
.battle-avatar{left:70px;top:0;width:75px;height:73px}
.battle-avatar.enemy{right:63px}
.battle-avatar.approved-guardian-avatar{border:0;border-radius:0;background:none;object-fit:contain;width:83px;height:77px}
.troop-tray{left:55px;top:20px;gap:4px 14px}
.troop-slot{border:0;background:#201810;box-shadow:none}
.troop-slot img{width:64px;height:64px;object-fit:fill}
.troop-slot .troop-count{bottom:3px;right:4px;font-size:16px;color:#fff18b;text-shadow:1px 1px 2px #100b04,-1px -1px #100b04}
.troop-slot.selected{outline:2px solid #fff478;box-shadow:0 0 8px #ffda56}
.hero-tray{top:20px;left:528px;gap:8px}
.hero-slot{height:134px;color:var(--battle-gold)}
.hero-slot.deployed img{height:134px}
.tray-arrow.unit-prev{left:11px}.tray-arrow.unit-next{left:445px}.tray-arrow.hero-prev{left:494px}
.strength-value{font-size:17px;color:#fff3b9}
.combat-heroes{padding-top:12px}
@media (prefers-reduced-motion:reduce){.source-action,.strength-fill,.hero-bar i{transition:none}}
