/* One battle vocabulary and overlay hierarchy across browser and camera AR. */
.shared-battle .panel{width:min(640px,94vw);max-height:85dvh;overflow:auto}
.battle-arena{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.battle-side{text-align:center;min-width:0}.battle-side h3{font-size:1rem}.battle-side p{font-size:.82rem}
.battle-side img{width:clamp(80px,20vw,120px);height:clamp(80px,20vw,120px);object-fit:contain;image-rendering:pixelated}
.battle-hp-track{height:10px;background:#172820;border-radius:8px;overflow:hidden}.battle-hp-fill{height:100%;background:#79dba3;transition:width .35s ease}.battle-hp-fill.you{background:#83baf3}
.battle-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.battle-message{min-height:2.8em;font-size:.9rem;color:#e5deb6}
body .coop-battle.shared-battle{inset:0;display:none;align-items:center;justify-content:center;width:auto;padding:12px;background:rgba(5,15,12,.5)}body .coop-battle.shared-battle.active{display:flex}
body:has(.overlay.active) #coopFeed,body.menu-open #coopFeed,body.collection-open #coopFeed{visibility:hidden;pointer-events:none}
body:has(.overlay.active) #arPlacementControls,body:has(.overlay.active) #mobilePad{visibility:hidden}
body .overlay.active{z-index:16000}body #trainerBagModal.active,body .library-overlay.active{z-index:17000}
.library-list{display:grid;gap:12px;max-height:60dvh;overflow:auto}.library-list article{padding:14px;border:1px solid #607669;border-radius:12px;background:#20392d}.library-list h3{font-size:1rem;margin:0 0 8px}.library-list p{font-size:.95rem;line-height:1.55;margin:0}
.library-overlay .row{justify-content:space-between}.mode-vr #coopBattle.shared-battle{display:none}
body:has(#trainerBagModal.active) .shared-battle,body:has(#adventureLibrary.active) .shared-battle{visibility:hidden}
#adventureLogButton{position:fixed;right:12px;bottom:12px;z-index:35}body:has(.overlay.active) #adventureLogButton{visibility:hidden}
.marker-ar-active #adventureLogButton{bottom:calc(env(safe-area-inset-bottom) + 16px)}
@media(max-width:600px){.battle-actions{grid-template-columns:1fr 1fr}.shared-battle .panel{padding:16px}.battle-arena{gap:10px}}
@media(prefers-reduced-motion:reduce){.battle-hp-fill{transition:none}}
