/* Static faction frames and a single portrait with three attached resource bars. */
body[data-faction] #game-ui .arcade-status{left:20px;right:auto;bottom:20px;top:auto;transform:none;width:190px;padding:8px 10px;background:var(--field-panel);border:1px solid var(--field-trim);border-top:3px solid var(--field-accent);border-radius:9px;box-shadow:0 3px 0 #09182099}
.arcade-status #health,.arcade-status #armor,.arcade-status #stamina,.arcade-status #personal-score{display:none!important}
.arcade-status .class-label{font-size:10px;line-height:1.3;min-height:13px;text-align:center;letter-spacing:.08em;margin:0 0 3px}
.vitals-core{position:relative;width:150px;height:90px;margin:0 auto}.class-medallion{position:absolute;left:0;top:3px;width:84px;height:84px;border:1px solid var(--field-accent);border-radius:50%;background:radial-gradient(ellipse at center,var(--field-button),#0c1c2799)}.class-medallion canvas{display:block;width:100%;height:100%;object-fit:contain}.class-medallion i{position:absolute;width:6px;height:6px;background:var(--field-trim);left:calc(50% - 3px);bottom:-3px;transform:rotate(45deg)}
.vital-curves{position:absolute;left:74px;top:1px;width:64px;height:88px;overflow:visible}.vital-track,.vital-fill{fill:none;stroke-width:7;stroke-linecap:round}.vital-track{stroke:#050d16bb}.vital-fill{stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset .12s linear}.vital-fill:nth-of-type(2){stroke:#ef867a}.vital-fill:nth-of-type(4){stroke:#d5c18a}.vital-fill:nth-of-type(6){stroke:#a9c67c}
.vital-values{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:3px auto 0;text-align:center;width:150px}.vital-values div{padding:0;border:0}.vital-values b{display:block;font-size:11.5px;line-height:1.25;font-variant-numeric:tabular-nums;white-space:nowrap}.vital-values small{display:block;line-height:1;height:14px;margin:0 0 2px}.vital-values svg{width:13px;height:13px;fill:currentColor;stroke:none}.vital-values div:nth-child(1) small{color:#ef867a}.vital-values div:nth-child(2) small{color:#d5c18a}.vital-values div:nth-child(3) small{color:#a9c67c}.arcade-status.critical{border-top-color:#f3987e}
.vitals-crest{position:absolute;right:-3px;top:-4px;width:19px;height:21px}.vitals-crest svg{width:100%;height:100%}
body[data-faction="1"] #game-ui .arcade-status{border-radius:3px 12px 4px 10px;border-left:3px solid var(--field-trim)}
.arcade-status .cargo-status{position:absolute;left:0;bottom:calc(100% + 10px);width:100%;margin:0;padding:7px 9px;background:var(--field-panel);border:1px solid var(--field-trim);border-radius:6px}.arcade-status .cargo-status:not(.carrying){display:none!important}
body[data-faction] #game-ui .battle-header{border-radius:8px 8px 15px 15px;border-bottom:3px solid var(--field-trim)}body[data-faction="1"] #game-ui .battle-header{border-radius:13px 5px 9px 3px;border-left:3px solid var(--field-trim)}
body[data-faction] #game-ui :is(.menu-button,.roster-button,.ability-button,.guard-button,.interact-button){box-shadow:0 3px 0 #09182088}body[data-faction] #game-ui .ability-button{border-color:var(--field-accent);background:var(--field-dark)}body[data-faction="1"] #game-ui :is(.ability-button,.guard-button){border-radius:12px 5px 10px 4px}
body[data-battle-controls="keyboard"] .keyboard-controls{left:50%;bottom:16px;transform:translateX(-50%)}
body[data-faction] .callin-hud{left:50%;right:auto;top:64%;bottom:auto;width:274px;transform:translate(-50%,-50%);animation:streak-enter .45s cubic-bezier(.18,.8,.25,1)}
.callin-open{position:relative;overflow:hidden;border-width:2px;min-height:75px;box-shadow:0 4px 0 #071119bb,0 0 0 3px #d5c18a24,inset 0 -4px var(--field-trim)}.callin-open:before{content:'';position:absolute;inset:-60px;pointer-events:none;background:linear-gradient(105deg,transparent 40%,#fff2c954 50%,transparent 60%);transform:translateX(-110%);animation:streak-shine 2.4s ease-out 1}.callin-copy em{font-size:10px}.callin-copy b{font-size:17px}.callin-open .callin-badge{font-size:31px;flex-basis:42px;height:46px}.callin-copy small{font-size:12px}
@keyframes streak-enter{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}65%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}100%{transform:translate(-50%,-50%) scale(1)}}@keyframes streak-shine{0%,15%{transform:translateX(-110%)}80%,100%{transform:translateX(110%)}}
body[data-battle-controls="touch"] #game-ui .arcade-status{left:50%;right:auto;bottom:calc(8px + env(safe-area-inset-bottom,0px));top:auto;width:min(154px,calc(100vw - 232px));transform:translateX(-50%);padding:5px 7px;border-top-width:2px}
body[data-battle-controls="touch"] .vitals-core{width:128px;height:77px}body[data-battle-controls="touch"] .class-medallion{left:0;top:2.56px;width:71.68px;height:71.68px}body[data-battle-controls="touch"] .vital-curves{left:63.15px;top:.85px;width:54.61px;height:75.09px}body[data-battle-controls="touch"] .vital-values{width:128px;margin-top:2px}body[data-battle-controls="touch"] .vital-values b{font-size:9px}body[data-battle-controls="touch"] .vital-values small{height:13px}body[data-battle-controls="touch"] .vital-values svg{width:12px;height:12px}body[data-battle-controls="touch"] .vitals-crest{width:15px;height:17px;right:-2px;top:-3px}
body[data-battle-controls="touch"] .arcade-status .class-label{font-size:7px;min-height:9px;margin-bottom:2px;max-height:18px;overflow:hidden}body[data-battle-controls="touch"] .arcade-status .cargo-status{bottom:calc(100% + 57px);font-size:9px}
body[data-battle-controls="touch"] .callin-hud{left:50%;right:auto;top:60%;bottom:auto;width:min(248px,68vw)}body[data-battle-controls="touch"] .callin-open{min-height:69px;gap:9px}body[data-battle-controls="touch"] .callin-copy b{font-size:15px}body[data-battle-controls="touch"] .callin-copy em{font-size:9px}body[data-battle-controls="touch"] .callin-copy small{font-size:11px}body[data-battle-controls="touch"] .callin-open .callin-badge{flex-basis:36px;height:40px;font-size:27px}
body[data-battle-controls="touch"] #ability{margin-bottom:30px}.arcade-status.hud-occluded{opacity:.5!important}
@media(max-width:370px){body[data-battle-controls="touch"] .vitals-core{width:108px;height:65px}body[data-battle-controls="touch"] .class-medallion{left:0;top:2.16px;width:60.48px;height:60.48px}body[data-battle-controls="touch"] .vital-curves{left:53.28px;top:.72px;width:46.08px;height:63.36px}body[data-battle-controls="touch"] .vital-values{width:108px;margin-top:2px}body[data-battle-controls="touch"] .vital-values b{font-size:8px}}
@media(max-height:500px){body[data-battle-controls="touch"] .callin-hud{top:30%;width:min(248px,40vw)}}
@media(prefers-reduced-motion:reduce){body[data-faction] .callin-hud,.callin-open:before{animation:none}.vital-fill{transition:none}}

.class-medallion canvas{border-radius:50%}.vital-values b[data-long="true"]{font-size:9.5px}body[data-battle-controls="touch"] .vital-values b[data-long="true"]{font-size:7.8px}
