.combat-model-wrap{position:relative;margin:18px 0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#152f27}
.combat-model{height:340px;contain:layout paint}
.combat-model canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab;outline-offset:-5px}
.combat-model canvas:active{cursor:grabbing}
.combat-camera-hint{position:absolute;bottom:10px;left:12px;right:12px;margin:0;text-align:center;pointer-events:none;color:var(--muted);font-size:10px}
.combat-model-status{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:var(--muted);font-size:12px}
.combat-model-status[hidden]{display:none}
.battle-history-title{font-size:12px;margin:18px 0 10px}
.combat-defensive{grid-column:1/-1;display:flex;align-items:center;gap:7px;font-size:11px;cursor:pointer;margin-top:7px}
.combat-defensive input{width:16px;height:16px;accent-color:var(--accent);margin:0;flex-shrink:0}
.combat-skill .combat-defensive-hint{grid-column:1/-1;line-height:1.5;font-size:9px;letter-spacing:0}
.combat-skill.combat-training{border:2px solid var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}
@media(max-width:600px){.combat-model{height:260px}}
