/* Clear battle controls and states, with the existing arena and art intact. */
.game-battle #phase-hint.deployment-preview{font-size:10px;line-height:1.2;color:#d0e9d4}
@media(min-height:501px){.game-battle .arena-content:has(#phase-hint.deployment-preview){--phase-row:56px}}
@media(max-height:500px){.game-battle #phase-hint.deployment-preview{font-size:9px}}
.battle-build-hud{display:flex;gap:6px;align-items:center;justify-content:flex-end;white-space:nowrap;font-size:9px;line-height:12px;color:#c8e5c9;font-variant-numeric:tabular-nums}.battle-build-hud span:first-child{color:#edc88e}.battle-build-panel{border:1px solid #a8d8bb38;border-radius:12px;background:#14302b66;padding:12px;margin:10px 0}.battle-build-panel h3{margin:0 0 8px;font-size:14px}.battle-build-panel dl{display:grid;gap:8px;margin:0}.battle-build-panel dl>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.battle-build-panel dt{font-size:11px;color:#c6d2d5}.battle-build-panel dd{margin:0;text-align:right;font-size:12px;color:#cde9cb;font-weight:700}.battle-build-panel p{font-size:11px!important;line-height:1.5!important;color:#aebfc3;margin:10px 0 0!important}
.game-battle .top{height:44px;gap:8px;margin-bottom:8px}
.game-battle .top-controls{gap:4px;min-width:0}
.game-battle .top .icon-button{width:44px;height:44px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;flex:none}
.game-battle .top .icon-button>.exp-icon{width:19px;height:19px}
.game-battle .inspect-button{min-width:44px;min-height:44px;border:1px solid #9bc9c52e;border-radius:10px;background:#16303966;flex:none}
.game-battle .battle-journal-button{min-height:44px;border-radius:10px;padding-inline:10px}
.game-battle .hand-heading{min-height:44px;gap:7px;position:relative;z-index:35}
.game-battle .hand-section{grid-template-rows:44px minmax(0,1fr) 50px;gap:3px}
.game-battle .hand{pointer-events:none}
.game-battle .hand .battle-card{pointer-events:auto}
.game-battle .hand-heading>span{white-space:nowrap;letter-spacing:.08em}
.game-battle .selection-help{gap:7px;min-height:50px;height:50px}
.game-battle .selection-help:has(.selected-card-detail){padding:2px 4px}
.game-battle .selection-help button{min-height:44px;border-radius:10px}
.game-battle .selection-help .selected-card-detail{padding-inline:9px;background:#1b343c;border:1px solid #92cfba30}
.game-battle .selected-card-detail b{font-size:11px}
.game-battle .selection-help>button:last-child{min-width:44px}
.game-battle .battle-card.unaffordable .cost{color:#ffb5be;background:#451f32e8}
.game-battle .battle-card.unaffordable .card-copy{color:#dce5ec}
.game-battle .battle-card.selected{border-color:#d2fff0;box-shadow:0 0 0 2px #a1e9cc7a,0 10px 30px #0007}
.game-battle .battle-keyboard-hint{display:none}
.game-battle .battle-resolving-hint{color:#c4dfd8;letter-spacing:.02em}
.game-battle .battle-card[aria-disabled="true"]{cursor:default}
.game-battle #phase-hint.target-blocked{color:#ffd1ad;font-weight:600}
.game-battle .target-zone[aria-disabled="true"]{cursor:default}
.game-battle .target-zone.legal-target:focus-visible{outline:3px solid #e6fff4;outline-offset:-3px;box-shadow:inset 0 0 0 5px #173d35,inset 0 0 22px #90eed02a}
.game-battle .unit-stats{font-variant-numeric:tabular-nums}
.game-battle .status-chips .burn-chip{background:#633522;color:#ffe0bc;border-color:#f8b16f70}
.game-battle .status-chips .stun-chip{background:#39325e;color:#e3d8ff;border-color:#b6a6e170}
.game-battle .hero-state{font-style:normal;color:#b7d7f2;letter-spacing:.02em}
.game-battle .empty-hand{max-width:280px;text-align:center;line-height:1.6;padding:14px;color:#b9cbd2}
.game-battle .dread-active #phase-hint,body.dread-active #phase-hint{color:#f0bbbf}
.game-battle :is(button,summary,input):focus-visible{outline:3px solid #c1fff0;outline-offset:2px}
.card-showcase .showcase-tools button{min-height:44px}
.card-inspection .modal-close,.help-modal .modal-close,.utility-modal .modal-close{min-width:44px;min-height:44px}
.modal.card-inspection{position:relative}
.card-inspection .modal-close{position:absolute;right:12px;top:12px;width:44px;height:44px;margin:0}
.card-inspection .showcase-synergy{width:100%}
.showcase-archetypes{row-gap:7px}
.card-showcase .showcase-note{padding:10px 12px;background:#20323b;border:1px solid #bfd6dc24;border-radius:10px}
.utility-modal .utility-actions>button{min-height:44px}
.game-battle .battle-journal-list li{overflow-wrap:anywhere}
@media(min-width:1000px) and (min-height:600px){
 .modal.card-inspection,.exp-modal.inspect{display:block;width:min(740px,100%);max-width:740px;height:auto;padding:48px 22px 20px}
 .card-showcase{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;max-width:none;width:100%;gap:12px 22px}
 .card-showcase>.showcase-stage{grid-column:1;grid-row:1/20;width:280px;max-width:280px;align-self:start;justify-self:start}
 .card-showcase>:not(.showcase-stage){grid-column:2;min-width:0}
 .card-inspection>.end-turn{position:static;width:190px;margin:16px 0 0 auto}
}
@media(max-width:420px){
 .game-battle .top-controls>[data-action="fullscreen"]{display:none}
 .game-battle .top-controls{gap:3px}
 .game-battle .top .icon-button{border-radius:10px}
 .game-battle .hand-heading>span{font-size:9px}
 .game-battle .battle-journal-button{font-size:8px;padding-inline:7px;gap:4px}
 .game-battle .battle-journal-button>.exp-icon{width:14px;height:14px}
}
@media(max-aspect-ratio:4/3){
 .game-battle .battle-main{grid-template-rows:minmax(0,1fr) clamp(210px,35dvh,270px)!important}
}
@media(max-height:480px) and (min-width:600px){
 .game-battle .top{margin-bottom:4px}
}
@media(hover:hover) and (pointer:fine){
 .game-battle .battle-pointer-hint{display:none}
 .game-battle .battle-keyboard-hint{display:inline}
}

/* Active conditions stay visible in the arena; the journal explains them at
   reading size without opening by default or exposing face-down supports. */
.game-battle .hero-health:has(.hero-conditions){position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-height:0;padding:1px 1px 0}
.game-battle .hero-health:has(.hero-conditions) .hero-heading{align-items:flex-start;min-height:0}
.game-battle .hero-health:has(.hero-conditions) .hero-heading>span:first-child{flex:1;min-width:0}
.game-battle .hero-health:has(.hero-conditions) .hero-heading>span:first-child>small{display:none!important}
.game-battle .hero-health:has(.hero-conditions) .hero-heading strong,.game-battle .hero-health:has(.hero-conditions) .hp{line-height:1.15}
.game-battle .hero-health:has(.hero-conditions) .health{flex:none;height:4px;margin-top:0}
.game-battle .hero-conditions{position:absolute;left:1px;right:1px;bottom:6px;display:flex;justify-content:center;flex-wrap:nowrap;gap:3px;max-width:none;margin:0;white-space:nowrap}
.game-battle .hero-condition{font:800 8px/1.2 system-ui,sans-serif;font-style:normal;letter-spacing:0;padding:2px 4px;border:1px solid #9bbfd350;border-radius:4px;background:#17343b;color:#c4e9ed;white-space:nowrap}
.game-battle .hero-condition.burn-condition{background:#633522;color:#ffe0bc;border-color:#f8b16f70}
.game-battle .hero-condition.mark-condition{background:#493a24;color:#ffdda2;border-color:#e9c87b66}
.game-battle .status-chips{gap:3px;align-content:flex-start}
.game-battle .status-chips i{font-size:8px;line-height:1.15;padding:2px 3px;max-width:100%}
.battle-field-report{flex:none;min-width:0;border:1px solid #adcbd02e;border-radius:12px;background:#16262f;overflow:hidden}
.battle-field-report>summary{display:flex;align-items:center;gap:8px;justify-content:space-between;min-height:48px;padding:10px 12px;cursor:pointer;list-style:none;font-size:13px;font-weight:700;color:#dcf4ea;touch-action:manipulation}
.battle-field-report>summary::-webkit-details-marker{display:none}
.battle-field-report>summary small{margin-left:auto;font-size:10px;font-weight:500;color:#b5d0cc;white-space:nowrap}
.battle-field-report>summary:after{content:'+';font:500 20px/1 system-ui;width:16px;text-align:center;flex:none}
.battle-field-report[open]>summary:after{content:'−'}
.battle-field-report>summary:focus-visible{outline:3px solid #c1fff0;outline-offset:-4px;border-radius:11px}
.battle-field-report[open]>summary{border-bottom:1px solid #adcbd02e}
.battle-field-body{display:grid;gap:15px;padding:13px 12px;overflow-wrap:anywhere}
.battle-field-body h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;font-size:14px;line-height:1.4;color:#def5e9}
.battle-field-body h3 small{font-size:11px;font-weight:500;color:#b5cbc9}
.battle-field-body p.battle-report-note,.battle-field-body p.battle-report-clear{margin:0;max-width:none;font-size:12px;line-height:1.55;color:#b8cbd0}
.battle-field-side,.battle-reflex-readout,.battle-hazard-readout{display:grid;gap:8px;min-width:0}
.battle-field-side+.battle-field-side,.battle-reflex-readout,.battle-hazard-readout{padding-top:12px;border-top:1px solid #adcbd023}
.battle-field-body ul{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.battle-field-body li{font-size:12px;line-height:1.5}
.battle-field-body .battle-hero-effects li{padding:8px 9px;border-radius:7px;background:#25404a;color:#cce9ec}
.battle-field-body .battle-hero-effects .burn-condition{background:#3c2b26;color:#ffdcbd}
.battle-field-body .battle-hero-effects .mark-condition{background:#393324;color:#f5d49c}
.battle-unit-readouts>li,.battle-reflex-readout li,.battle-hazard-readout li{display:grid;gap:3px;padding:9px;border:1px solid #adcbd01a;border-radius:8px;background:#0c1b2399;color:#bacdd2}
.battle-unit-readouts strong,.battle-reflex-readout strong,.battle-hazard-readout strong{font-size:12px;color:#e0eee9}
.battle-field-body .battle-unit-effects{color:#dfc8ef}
.battle-reflex-readout .reflex-short{border-color:#efac9266;background:#3d292466}
.battle-reflex-readout .reflex-short span{color:#ffd3ba}
.battle-reflex-readout .reflex-funded span{color:#addfc8}
.battle-hazard-readout .hazard-active{border-color:#dc9e9766;background:#3a252c99}
.battle-hazard-readout .hazard-active strong{color:#ffc7bd}
/* The attack forecast is a read-only public-board briefing inside the same
   single-scroller journal used for field conditions and recent events. */
.attack-forecast{display:grid;gap:9px;min-width:0;padding:13px 12px;border:1px solid #78d8bc45;border-radius:12px;background:linear-gradient(135deg,#173a3d,#152938)}
.attack-forecast>h3{font-size:15px;line-height:1.35;color:#d7fff0;text-transform:uppercase;letter-spacing:.06em}
.attack-forecast-intro,.attack-forecast-uncertainty,.attack-forecast-unavailable{max-width:none;margin:0;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.attack-forecast-intro{color:#c4ddda}
.attack-forecast-uncertainty{padding:9px 10px;border-left:3px solid #e6b579;background:#332b286e;color:#ffe0bc}
.attack-forecast-unavailable{padding:10px;border-radius:8px;background:#38282d;color:#ffd1c5}
.attack-forecast-list{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.attack-forecast-row{display:grid;gap:8px;min-width:0;padding:10px;border:1px solid #b9e3db26;border-radius:9px;background:#0d2029b8}
.attack-forecast-row>header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
.attack-forecast-row>header strong,.attack-forecast-row.skipped strong,.attack-forecast-row.empty strong{min-width:0;font-size:13px;line-height:1.35;color:#e5f5ed;overflow-wrap:anywhere}
.attack-forecast-row>header span{flex:none;font-size:11px;line-height:1.35;color:#b9d7d1;text-align:right}
.attack-forecast-row dl{display:grid;gap:6px;margin:0}
.attack-forecast-row dl>div{display:grid;grid-template-columns:minmax(94px,.75fr) minmax(0,1.25fr);gap:9px;align-items:baseline}
.attack-forecast-row dt{font-size:11px;line-height:1.4;color:#9ec3be}
.attack-forecast-row dd{margin:0;font-size:12px;line-height:1.45;color:#f1f4e8;overflow-wrap:anywhere}
.attack-forecast-row p,.attack-forecast-row>span{margin:0;font-size:11px;line-height:1.5;color:#becbc8;overflow-wrap:anywhere}
.attack-forecast-row.skipped,.attack-forecast-row.empty{background:#1a2831b8}
.attack-forecast-row.skipped>span,.attack-forecast-row.empty>span{color:#f2c8ac}
@media(max-width:420px){
 .attack-forecast{padding:11px 10px}
 .attack-forecast-row{padding:9px}
 .attack-forecast-row>header{display:grid;gap:3px}
 .attack-forecast-row>header span{text-align:left}
 .attack-forecast-row dl>div{grid-template-columns:1fr;gap:1px}
 .attack-forecast-intro,.attack-forecast-uncertainty,.attack-forecast-unavailable,.attack-forecast-row dd{font-size:11px}
}
/* One parent scroll area keeps the report and events reachable on short screens. */
.utility-modal:has(.battle-field-report) .battle-journal-list{max-height:none;overflow:visible;flex:none}
.utility-modal:has(.battle-field-report)>.end-turn{position:sticky;bottom:0;z-index:1;flex:none;min-height:44px;box-shadow:0 -8px 14px #111a23d9}
/* Item decisions use the same objects as their animations and exact visible
   gains. One body scroller leaves the heading and exit outside the item rows. */
.utility-modal:has(.satchel-body){overflow:hidden}
.utility-modal:has(.satchel-body)>.modal-close{position:absolute;top:16px;right:16px;margin:0;width:44px;height:44px;z-index:2}
.utility-modal:has(.satchel-body)>h2{padding-right:44px}
.utility-modal:has(.satchel-body)>:not(.satchel-body){flex:none}
.satchel-body{display:flex;flex-direction:column;gap:14px;flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;padding:0 2px 3px}
.satchel-body>*{flex:none}
.utility-modal:has(.satchel-items) .satchel-snapshot{margin:0;font-size:12px;line-height:1.5;color:#c4dcd5}
.utility-modal:has(.satchel-items) .satchel-items{margin:0;gap:14px;flex:none}
.utility-modal:has(.satchel-items) .satchel-item{padding:13px;display:grid;gap:12px;min-width:0}
.satchel-item-heading{display:flex;align-items:center;gap:11px;min-width:0}
.satchel-item-heading>div:last-child{min-width:0}
.satchel-item-heading small{font-size:8px;letter-spacing:.7px;line-height:1.5;color:#a9c6bf;margin:0 0 3px}
.satchel-item-heading h3{font-size:18px;line-height:1.2;overflow-wrap:anywhere}
.satchel-item-heading span{display:block;color:#aec7ce;font-size:11px;line-height:1.4;margin-top:4px}
.satchel-object{flex:0 0 52px;width:52px;height:62px;display:grid;place-items:center;color:#bce0e7}
.satchel-object>.item-glyph{width:100%;height:100%}
.utility-modal .satchel-item p.satchel-description{font-size:13px;line-height:1.5;max-width:none;margin:0;color:#d3dfdf}
.satchel-preview{display:grid;gap:9px;padding:11px;background:#172e35;border:1px solid #9bc9c12b;border-radius:9px;min-width:0}
.satchel-preview>strong{font-size:14px;line-height:1.35;color:#c2efdc;overflow-wrap:anywhere}
.satchel-preview dl{display:grid;gap:7px;margin:0}
.satchel-preview dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.satchel-preview dt{font-size:11px;line-height:1.4;color:#b7ced0}
.satchel-preview dd{font-size:14px;font-weight:750;line-height:1.4;color:#f0f6e9;font-variant-numeric:tabular-nums;white-space:nowrap;margin:0}
.satchel-preview dd>span[aria-hidden]{color:#7fbca6;margin-inline:4px}
.utility-modal .satchel-preview p{font-size:12px;line-height:1.5;color:#c4d3cd;max-width:none;margin:0;overflow-wrap:anywhere}
.utility-modal .satchel-item p.satchel-blocked{font-size:12px;line-height:1.5;color:#f6c6ad;max-width:none;margin:0;padding:8px 10px;border-left:2px solid #d99d7d;background:#3a282366;border-radius:3px}
.utility-modal .satchel-item .exp-button{font-size:13px;min-height:46px}
.utility-modal:has(.satchel-body)>.satchel-back{position:static;flex:none;min-height:44px;box-shadow:none}
.satchel-preview .sr-only{position:absolute;clip:rect(0,0,0,0);clip-path:inset(50%);width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;white-space:nowrap;border:0}
@media(max-height:480px) and (min-width:600px){
 .utility-modal:has(.satchel-body){padding:16px;gap:10px}
 .utility-modal:has(.satchel-body)>.eyebrow{display:none}
 .utility-modal:has(.satchel-body)>h2{font-size:22px;line-height:1.2;padding-right:56px}
 .utility-modal:has(.satchel-body)>.modal-close{top:8px;right:12px}
}
@media(max-width:600px){
 .game-battle .hero-health:has(.hero-conditions){padding-top:0}
 .game-battle .hero-health:has(.hero-conditions) .health{height:3px}
 .game-battle .hero-conditions{gap:2px;bottom:5px}
 .game-battle .hero-condition{font-size:7px;padding:1px 3px}
 .game-battle .status-chips i{font-size:7px;line-height:1.15;padding:2px 3px}
}
@media(max-height:480px) and (min-width:600px){
 .game-battle .hero-health:has(.hero-conditions){padding-top:0}
 .game-battle .hero-health:has(.hero-conditions) .health{height:3px}
 .game-battle .hero-conditions{gap:2px;bottom:5px}
 .game-battle .hero-condition{font-size:7px;padding:1px 3px}
 .game-battle .status-chips i{font-size:7px;padding:2px 3px}
}

/* Reading utilities share one scroll area; titles and exits stay in view. */
.utility-reading-modal{position:relative;overflow:hidden;align-items:stretch;gap:14px;padding:22px;min-height:0;text-align:left}
.utility-header{position:relative;display:flex;flex-direction:column;gap:8px;flex:none;min-height:44px;padding-right:44px}
.utility-header>.modal-close{position:absolute;top:-6px;right:-6px;min-width:44px;min-height:44px;width:44px;height:44px;margin:0}
.utility-header>h2{margin:0;font-size:24px;line-height:1.15;overflow-wrap:anywhere}
.utility-header>.eyebrow{font-size:9px;line-height:1.4}
.utility-reading-modal .utility-body{display:flex;flex-direction:column;gap:14px;flex:1 1 auto;min-height:0;min-width:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scroll-padding-block:12px;padding:2px 3px 4px}
.utility-body>*{flex:none}
.utility-body:focus-visible{outline:2px solid #b6ecdb;outline-offset:-2px;border-radius:5px}
.utility-reading-modal .utility-footer{display:flex;align-items:center;flex-wrap:wrap;gap:10px;flex:none;min-width:0;padding-top:3px;border-top:1px solid #adcbd026}
.utility-footer>button{min-height:44px;flex:1;justify-content:center}
.utility-footer>.end-turn{font-size:11px}
.utility-footer>.ghost{font-size:12px}
.utility-reading-modal .utility-footer>.satchel-back{position:static;min-height:44px;box-shadow:none}
.utility-reading-modal.help-modal{align-items:stretch;width:min(560px,100%);gap:14px}
.help-modal .utility-body>p.guide-copy{font-size:14px;line-height:1.8;min-height:0;max-width:none;margin:0;text-align:left;overflow-wrap:anywhere}
.help-modal .utility-body>p.utility-page-status{font-size:11px;line-height:1.4;min-height:0;max-width:none;margin:0;color:#a6cec4;text-align:left}
.help-modal .utility-footer>.legacy-pager{flex:1 1 auto;gap:10px;justify-content:flex-start;min-height:44px}
.help-modal .legacy-pager>button{width:44px;height:44px;min-width:44px;min-height:44px}
.help-modal .legacy-pager>span{font-size:12px}
.help-modal .utility-footer>[data-action="motion"]{position:static;flex:0 1 auto;min-height:44px;white-space:nowrap}
.utility-reading-modal .battle-journal-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.utility-reading-modal .battle-journal-stats b{font-size:21px;line-height:1.25;font-variant-numeric:tabular-nums}
.utility-reading-modal .battle-journal-stats span{font-size:10px;line-height:1.4;letter-spacing:0}
.utility-reading-modal p.battle-draw-note{margin:0;max-width:none;border:1px solid #acd3c92e;border-radius:9px;padding:10px 11px;background:#1c343c;color:#d0e8de;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.battle-recent-events{display:grid;gap:6px;min-width:0}
.battle-recent-events>h3{font-size:14px;line-height:1.4;color:#def5e9}
.utility-body .battle-journal-list{max-height:none;min-height:0;overflow:visible;flex:none}
.utility-reading-modal .utility-note{font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.utility-reading-modal :is(button,summary,a,input):focus-visible{outline:3px solid #c1fff0;outline-offset:2px}
@media(max-width:420px){
 .utility-reading-modal{padding:20px 16px 16px;gap:12px}
 .utility-header>h2{font-size:22px}
 .help-modal .utility-footer>.legacy-pager{flex-basis:100%;justify-content:center}
 .help-modal .utility-footer>[data-action="motion"]{flex:1}
}
@media(max-height:480px) and (min-aspect-ratio:4/3){
 .utility-reading-modal,.utility-reading-modal.help-modal{padding:16px;gap:10px}
 .utility-header{gap:3px}
 .utility-header>.eyebrow{display:none}
 .utility-header>h2{font-size:22px}
 .utility-reading-modal .utility-footer{gap:8px}
 .help-modal .utility-body>p.guide-copy{font-size:13px;line-height:1.65}
}

/* Let the measured fan fit its grid track, including selected-card controls. */
.game-battle .hand-section{min-width:0;grid-template-columns:minmax(0,1fr)}
.game-battle .hand-section>*{min-width:0;max-width:100%}
.game-battle .selection-help .selected-card-detail{min-width:0;flex:1;overflow:hidden}
.game-battle .selection-help .selected-card-detail b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.game-battle .stamina-caption .reflex-budget.is-short{color:#ffd4aa}

.game-battle .stamina-caption .reflex-budget{font-size:10px;line-height:1.2;letter-spacing:.02em}

/* Short landscape: keep end-turn / hand actions reachable and unclipped. */
@media(max-height:420px) and (orientation:landscape){
 .game-battle .action-bar,
 .game-battle .hand-controls,
 .game-battle .battle-toolbar{
  gap:6px;
 }
 .game-battle :is(.action-bar,.hand-controls,.battle-toolbar) .exp-button,
 .game-battle :is(.action-bar,.hand-controls,.battle-toolbar) button{
  min-height:44px;
  min-width:44px;
 }
 .game-battle{overflow-x:hidden}
}
html.calm-motion .game-battle :is(.attack-flash,.shake,.impact-pulse){animation:none!important}
@media(prefers-reduced-motion:reduce){
 .game-battle :is(.attack-flash,.shake,.impact-pulse){animation:none!important}
}
