/* Combat is a protected, wide stage. The surrounding map and its camera stay intact. */
.world-game .app.immersive .event-sheet:has(.autobattle-scene),
.world-game .app.immersive:has(.map-actions:not(:empty)) .event-sheet:has(.autobattle-scene),
.world-game .autobattle-result-sheet,
.app.immersive .event-sheet:has(.autobattle-scene){
  position:fixed;z-index:55;top:calc(64px + env(safe-area-inset-top,0px));bottom:auto;left:50%;right:auto;transform:translateX(-50%);pointer-events:auto;
  width:min(1320px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 84px - env(safe-area-inset-top,0px));
  padding:0;border:0;border-radius:12px;background:#181715;overflow:auto;
  box-shadow:0 24px 80px #040504b8;scrollbar-color:#a68c6d #24211d;scrollbar-width:thin;
}
body.autobattle-open .app.immersive::before,
body.autobattle-open:not(:has(.app.immersive))::after{content:"";position:fixed;inset:0;z-index:50;background:#080b07b3;pointer-events:auto}
body.autobattle-open :is(#camera-controls,.game-dock,.map-actions,#world-viewport){pointer-events:none}
.event-sheet:has(.autobattle-scene)>.event-close{display:none}
.autobattle-scene{--auto-ink:#f3eadb;--auto-muted:#c9bfae;--auto-bronze:#bfa67d;--auto-blood:#cb5148;--auto-heal:#ace4bd;--auto-ground:#181715;color:var(--auto-ink);font-size:14px;line-height:1.5;overflow:hidden;isolation:isolate}
.autobattle-scene *{box-sizing:border-box}
.autobattle-scene ::selection{background:#dfc08c;color:#171710}
.autobattle-scene :is(button,a):focus-visible{outline:2px solid #eacb91;outline-offset:4px}
.autobattle-scene button{font:inherit;cursor:pointer;min-height:44px}
.autobattle-scene button:disabled{cursor:default;opacity:.55}
.autobattle-scene .auto-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 28px;background:#1b1b18}
.world-game .app.immersive .event-sheet .autobattle-scene h2,.autobattle-scene h2{font-size:clamp(20px,2vw,28px);line-height:1.2;font-weight:650;letter-spacing:-.025em;margin:0;text-wrap:balance;color:var(--auto-ink)}
.auto-title p{color:var(--auto-muted);margin:5px 0 0;font-size:13px;font-variant-numeric:tabular-nums}
.auto-playback{display:flex;align-items:center;gap:16px;flex-shrink:0}
.auto-speeds{display:flex;background:#2b2923;border-radius:7px;padding:3px}
.auto-speeds button,.auto-pause{border:0;background:transparent;color:var(--auto-muted);padding:7px 12px;border-radius:5px;font-variant-numeric:tabular-nums}
.auto-speeds button[aria-pressed=true]{background:#d7bf96;color:#262117}
.auto-speeds button:hover:not([aria-pressed=true]),.auto-pause:hover{background:#3b382e;color:#fff0d6}
.auto-pause{color:var(--auto-ink);border:1px solid #796f5c;padding-inline:16px}
.auto-stage{position:relative;height:clamp(290px,32vw,430px);background:#252019;overflow:hidden}
.auto-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 61%;pointer-events:none}
.auto-stage-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0b0d081a 48%,#11130fb0 100%);pointer-events:none}
.auto-figure{position:absolute;top:6%;bottom:23%;width:22%;z-index:2;isolation:isolate}
.auto-figure[data-slot="0"]{left:1.5%;top:14%;width:21%}.auto-figure[data-slot="1"]{left:19%;top:10%;width:23%}.auto-figure[data-slot="2"]{left:37%;top:5%;width:23%}
.auto-foe{left:65%;top:-1%;width:33%;--auto-direction:-1}
.auto-figure-visual{position:absolute;inset:0;transform-origin:50% 90%}
.auto-inspect-hitbox{position:absolute;inset:0 0 -72px;width:100%;z-index:7;border:0;border-radius:7px;background:transparent;color:#f3eadb;cursor:pointer;padding:0}
.auto-inspect-hitbox>span{position:absolute;left:50%;bottom:76px;transform:translateX(-50%);padding:3px 9px;background:#181715ed;border-radius:5px;font-size:11px;opacity:0;transition:opacity 120ms ease-out}
.auto-inspect-hitbox:is(:hover,:focus-visible,[aria-expanded=true])>span{opacity:1}
.auto-enemy-hitbox>span{opacity:1}
.auto-infection{position:absolute;bottom:100%;left:50%;translate:-50% 0;z-index:4;white-space:nowrap;font-size:10px;padding:2px 5px;border-radius:4px;color:#f3e8a7;background:#3a381de8;pointer-events:none}
.auto-enemy-intent{display:grid;gap:3px;margin:0 0 16px;color:#efd4a8;font-size:13px}.auto-enemy-intent>span,.auto-monster-status{font-size:12px;color:var(--auto-muted)}.auto-monster-status:empty{display:none}
.auto-healing-budget{display:grid;gap:6px;margin:0 0 20px;max-width:72ch;color:var(--auto-muted);font-size:12px;line-height:1.55}
.auto-healing-budget strong{color:var(--auto-ink)}
.auto-artifact-effects{grid-column:2;margin:0;padding:0;list-style:none;display:grid;gap:5px;font-size:12px;line-height:1.5;color:#e7c790}
@media(max-width:650px){.auto-artifact-effects{grid-column:1}}
#auto-battle-details>.auto-healing-budget{margin:16px 28px}
@media(max-width:650px){#auto-battle-details>.auto-healing-budget{margin:16px}}
.auto-inspect-hitbox[aria-expanded=true]{outline:1px solid #d6bf9580;outline-offset:3px}
.auto-stage-identity{display:grid;gap:1px;margin-top:5px;font-size:10px;line-height:1.35;color:#eee1cb;text-shadow:0 1px 4px #000;overflow-wrap:anywhere}
.auto-archetype-description{max-width:70ch;color:var(--auto-muted);margin:0 0 16px}
.auto-summon{position:absolute;left:72%;bottom:5%;height:42%;width:42%;pointer-events:none;filter:drop-shadow(0 4px 5px #041c2170)}
.auto-summon>span{display:block;height:100%;margin:auto;background-repeat:no-repeat;background-position:0 0;opacity:.7;filter:grayscale(1) sepia(.4) hue-rotate(125deg) saturate(1.8) brightness(1.5)}
.auto-summon>small{display:block;position:absolute;left:50%;bottom:-13px;translate:-50% 0;white-space:nowrap;color:#c1ece4;background:#172b29e6;padding:1px 4px;border-radius:3px;font-size:9px}
.auto-poison-status{position:absolute;right:2%;top:10px;z-index:4;padding:5px 9px;color:#ceef99;background:#20321ef0;border-radius:5px;font-size:12px;line-height:1.4;pointer-events:none}.auto-poison-status>small{display:block;font-size:10px;color:#c7d8b5}
.auto-status-rail{position:absolute;top:12px;left:2%;right:2%;z-index:8;display:grid;grid-template-columns:18% 18% 22% 1fr;gap:2%;align-items:start;pointer-events:none}
.auto-unit-effects{display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:4px;min-width:0;max-height:112px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;pointer-events:auto}
.autobattle-scene .auto-effect-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:44px;min-height:44px;max-width:100%;padding:4px 8px;border:1px solid #796f5c;border-radius:5px;font:inherit;font-size:12px;line-height:1.25;background:#181715f2;color:#e8dcc6;pointer-events:auto;cursor:pointer;font-variant-numeric:tabular-nums}
.auto-effect-badge svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.auto-effect-badge.is-debuff{color:#ffd2bd;border-color:#9a6454}
.auto-effect-badge[data-effect-type*="poison"]{color:#d8edb2;border-color:#758257}
.auto-effect-badge[data-effect-type*="bleed"]{color:#ffc3b9;border-color:#a15b54}
.auto-effect-badge.is-buff{color:#f1d6a4}
.auto-effect-badge small{font-size:10px;white-space:nowrap;padding-left:5px;border-left:1px solid currentColor}
.auto-effect-badge:hover{background:#3a342a}
.auto-effect-name{overflow-wrap:anywhere}
.auto-effect-details{margin:0 0 20px;padding-bottom:16px;border-bottom:1px solid #514735}
.auto-effect-details ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:12px}
.auto-effect-details li{display:grid;gap:3px;line-height:1.5;font-size:12px;color:#c9bfae}
.auto-effect-details strong{color:#f3eadb;font-size:13px}
@media(max-width:650px){.auto-status-rail{left:1%;right:1%;grid-template-columns:21% 21% 21% 31%;gap:2%;top:8px}.auto-unit-effects{gap:3px;max-height:100px}.autobattle-scene .auto-effect-badge{min-height:44px;padding:4px;gap:3px;flex-wrap:wrap;font-size:11px}.auto-effect-badge .auto-effect-name{display:none}.auto-effect-badge svg{width:16px;height:16px}.auto-effect-badge small{font-size:10px;padding-left:3px}}
.auto-sprite{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;user-select:none;pointer-events:none;filter:drop-shadow(0 9px 7px #0509048c);transform-origin:50% 90%}
.auto-sheet-sprite{inset:auto auto 0 50%;translate:-50% 0;width:auto;height:100%;aspect-ratio:var(--frame-aspect,1.5);background-size:200% 200%;background-position:0 0;background-repeat:no-repeat}
.auto-portrait-sprite{inset:auto 9% 3%;width:82%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center;border-radius:5px}
.auto-figure-health{position:absolute;left:9%;right:9%;top:calc(100% + 8px)}
.auto-figure[data-slot="1"] .auto-figure-health{right:17%}
.auto-foe .auto-figure-health{left:10%;right:10%}
.auto-health-label{display:flex;justify-content:space-between;align-items:baseline;gap:7px;font-size:12px;font-weight:600;line-height:1.3;text-shadow:0 1px 4px #000;font-variant-numeric:tabular-nums}
.auto-health-label>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.auto-health-label>span:last-child{white-space:nowrap}.auto-health-label small{font-size:11px;color:#ddd2bf;font-weight:400}
.auto-health-track{height:7px;margin-top:5px;background:#40332c;overflow:hidden;border-radius:2px}
.auto-health-track>span{display:block;background:var(--auto-blood);height:100%;transform-origin:left;transition:transform 220ms ease-out}
.auto-figure.is-fallen .auto-sprite{filter:grayscale(1) brightness(.4);transform:translateY(8px)}
.auto-fallen-label{position:absolute;bottom:5%;left:50%;transform:translateX(-50%);font-size:11px;white-space:nowrap;background:#221a17e8;padding:3px 7px;color:#f0c7ae}
.auto-impact{position:absolute;z-index:4;top:17%;left:50%;font-size:clamp(25px,3.5vw,42px);font-weight:750;color:#fff2d5;text-shadow:0 3px 7px #140902;line-height:1;animation:auto-float calc(700ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1) both;pointer-events:none}
.auto-impact.healing{color:#b8ffd0}.auto-impact.effect{font-size:clamp(14px,2vw,23px)}
.auto-impact small{display:block;margin-bottom:5px;font-size:clamp(13px,1.5vw,18px);line-height:1.2;letter-spacing:.02em}
.auto-impact.critical{color:#ffe09b;font-weight:800}.auto-impact.miss{color:#eee4d4;font-size:clamp(13px,1.8vw,22px);white-space:nowrap}
.auto-impact:is(.critical,.miss){padding:7px 10px;background:#231b14;border-radius:5px;text-align:center;text-shadow:none;opacity:1!important}
.auto-figure.is-dodging:not(.is-fallen) .auto-figure-visual{animation:auto-dodge calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
@keyframes auto-dodge{0%,100%{transform:translateX(0)}30%{transform:translateX(-12px) rotate(-3deg)}65%{transform:translateX(-8px) rotate(-1deg)}}
.autobattle-scene[data-motion="melee"] .auto-figure.is-acting:not(.is-fallen) .auto-figure-visual,.autobattle-scene[data-motion="counter"] .auto-figure.is-acting:not(.is-fallen) .auto-figure-visual{animation:auto-lunge calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
.autobattle-scene[data-motion="ranged"] .auto-figure.is-acting:not(.is-fallen) .auto-figure-visual{animation:auto-recoil calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
.autobattle-scene:is([data-motion="heal"],[data-motion="guard"]) .auto-figure.is-acting:not(.is-fallen) .auto-figure-visual{animation:auto-channel calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
.auto-figure.is-hit:not(.is-fallen) .auto-figure-visual{animation:auto-hit calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
.auto-figure.is-healed:not(.is-fallen) .auto-figure-visual{animation:auto-heal calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1)}
.autobattle-scene:not([data-motion=""]):not(.is-complete) .auto-figure.is-acting:not(.is-fallen) .auto-sheet-sprite[data-animation-frames="4"]{animation:auto-attack-frames calc(800ms / var(--auto-speed,1)) steps(1,end)}
.autobattle-scene:not([data-motion=""]):not(.is-complete) .auto-figure.is-acting:not(.is-fallen) .auto-sheet-sprite[data-animation-frames="8"]{animation:auto-attack-frames-eight calc(800ms / var(--auto-speed,1)) steps(1,end)}
.auto-battle-fx{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;overflow:visible}
.auto-projectile{stroke:#ffdf9d;stroke-width:3;stroke-linecap:round;stroke-dasharray:6 94;stroke-dashoffset:100;animation:auto-projectile calc(800ms / var(--auto-speed,1)) ease-out both}
.auto-projectile-trail{stroke:#b38a45;stroke-width:7;stroke-linecap:round;stroke-dasharray:12 88;stroke-dashoffset:100;opacity:.4;animation:auto-projectile calc(800ms / var(--auto-speed,1)) ease-out both}
.auto-strike-mark{position:absolute;left:46%;top:43%;width:24%;height:5px;background:#ffe1b3;rotate:-40deg;transform-origin:left;box-shadow:0 3px 8px #55200f80;animation:auto-strike calc(800ms / var(--auto-speed,1)) ease-out both;pointer-events:none;z-index:4}
.auto-ward-ring{position:absolute;left:10%;right:10%;bottom:6%;height:25%;border:2px solid #a8e6c0;border-radius:50%;pointer-events:none;animation:auto-ward calc(800ms / var(--auto-speed,1)) cubic-bezier(.16,1,.3,1) both;z-index:3}
.is-warded .auto-ward-ring{height:75%;bottom:4%;border-color:#e4c586;border-radius:42% 42% 48% 48%;animation-name:auto-guard}
.autobattle-scene.is-paused :is(.auto-sprite,.auto-figure-visual,.auto-impact,.auto-projectile,.auto-projectile-trail,.auto-strike-mark,.auto-ward-ring){animation-play-state:paused}
.autobattle-scene.is-complete :is(.auto-strike-mark,.auto-ward-ring){display:none}
.auto-paused-caption{position:absolute;inset:40% auto auto 50%;transform:translateX(-50%);padding:8px 18px;background:#181715ed;color:#f2dfbb;z-index:5;border-radius:7px;font-size:16px;pointer-events:none}
.auto-action-readout{padding:14px 28px 16px;background:#25231e;min-height:86px;display:grid;grid-template-columns:minmax(130px,26%) 1fr;gap:24px;align-items:center}
.auto-action-readout>strong{font-size:19px;line-height:1.3;color:#f2d8ac;text-wrap:balance}.auto-action-readout p{font-size:14px;line-height:1.5;color:var(--auto-ink);margin:0;max-width:72ch}.auto-action-readout.is-heal>strong{color:var(--auto-heal)}
.auto-bottom{display:grid;grid-template-columns:minmax(0,3fr) minmax(200px,1fr);gap:28px;padding:20px 28px 25px}
.auto-detail-control{display:flex;justify-content:flex-end;padding:0 20px;background:#1b1b18}
.auto-details-toggle{display:inline-flex;align-items:center;gap:10px;background:transparent;border:0;color:var(--auto-muted);padding:8px;font-size:12px}
.auto-details-toggle:hover{color:var(--auto-ink)}.auto-details-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.auto-details-toggle[aria-expanded=true] svg{rotate:180deg}
#auto-battle-details[hidden]{display:none}.auto-enemy-note{margin:18px 28px 0;color:var(--auto-muted);font-size:13px;max-width:72ch}
.auto-roster{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;min-width:0}
.auto-roster-member{min-width:0;margin:0}
.auto-member-heading{display:flex;justify-content:space-between;gap:8px;align-items:baseline}
.world-game .app.immersive .event-sheet .autobattle-scene h3,.autobattle-scene h3,.auto-party-overview h3{font-size:15px;font-weight:650;line-height:1.4;margin:0;color:var(--auto-ink,#f3eadb)}
.auto-member-heading>span{font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--auto-muted)}
.auto-member-name{font-size:11px;line-height:1.5;color:var(--auto-muted);margin:4px 0 12px}.auto-member-name span{display:block;color:#b2a58e}
.auto-identity{display:flex;flex-wrap:wrap;gap:3px 10px;margin:0 0 10px;font-size:11px;line-height:1.5;color:#c9bfae}
.auto-faction-name{color:var(--faction-color,#c9bfae)}.auto-rarity{color:var(--rarity-color,#c9bfae)}.auto-character-id{color:#b2a58e;font-variant-numeric:tabular-nums}
.auto-animation-pending{margin:-5px 0 10px;font-size:11px;color:#bfb29e}
.auto-factions{display:flex;flex-wrap:wrap;gap:16px 24px;padding:18px 28px 0}.auto-faction{flex:1 1 140px;min-width:0}.auto-faction strong{display:block;font-size:12px;color:var(--faction-color,#c9bfae);font-weight:600}.auto-faction strong span{white-space:nowrap;color:#d7cdbb;font-weight:400;font-variant-numeric:tabular-nums}.auto-faction p{margin:4px 0 0;font-size:11px;line-height:1.45;color:#bfb29e}.auto-faction.is-active p{color:#eadfc9}
.auto-abilities{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.auto-abilities li{margin:0;display:grid;gap:2px}.auto-abilities strong{font-size:12px;line-height:1.4;font-weight:600;color:#e8d8bc}.auto-abilities span{font-size:11px;line-height:1.45;color:#c0b5a3}
.auto-abilities .auto-signature strong{color:#f4d995}.auto-abilities strong small{display:block;margin-top:3px;color:#dcc8a6;font-size:10px;font-weight:400}
.auto-fighter-inspector{padding:20px 28px 24px;background:#211f1a;border-top:1px solid #62543e}
.auto-fighter-inspector[hidden]{display:none}.auto-fighter-inspector>header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.auto-fighter-inspector>header h3{font-size:18px}.auto-fighter-inspector>header p:not(.auto-identity){font-size:12px;color:#c9bfae;margin:4px 0 8px}
.auto-fighter-inspector>header button{background:transparent;border:1px solid #796f5c;border-radius:5px;color:#e8d8bc;padding:8px 12px;font:inherit}
.auto-fighter-inspector>header button:hover{background:#3b382e}.auto-fighter-inspector .auto-identity{margin:0}
.auto-fighter-inspector .auto-abilities{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px}
.auto-fighter-inspector .auto-signature{grid-column:1/-1;padding-bottom:14px;border-bottom:1px solid #514735;max-width:72ch}
.auto-fighter-inspector .auto-abilities strong{font-size:13px}.auto-fighter-inspector .auto-abilities span{font-size:12px}
.auto-journal{min-width:0;padding-left:24px;border-left:1px solid #554b3c}
.auto-journal ol{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}.auto-journal li{font-size:12px;line-height:1.45;color:#d5c9b4;overflow-wrap:anywhere}.auto-journal li:first-child{color:#f0e5d2}.auto-journal>p{color:#b4a991;font-size:11px;line-height:1.45;margin:18px 0 0}
.auto-empty p{font-size:12px;color:#c9bfae;margin:12px 0 4px}.auto-empty>span{color:#b2a58e;font-size:11px;line-height:1.5;display:block}
.auto-outcome{font-size:20px;font-weight:650;flex-shrink:0}.auto-outcome.won{color:#d9c191}.auto-outcome.lost{color:#f2a695}
.auto-result{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 28px;background:#333322}.auto-result p{margin:0;color:#e5dcc6;font-size:14px;line-height:1.5}.auto-continue{border:0;border-radius:7px;padding:11px 20px;background:#d6bf95;color:#241e12;font-weight:650;flex-shrink:0}.auto-continue:hover{background:#ecd6ad}
.auto-party-overview{--auto-ink:#f3eadb;--auto-muted:#c9bfae}.auto-party-overview>p{font-size:13px;line-height:1.5;margin:0 0 20px}.auto-party-overview .auto-roster{grid-template-columns:1fr;gap:22px}.auto-party-overview .auto-abilities{gap:8px}.auto-party-overview .auto-missing{margin-top:20px;color:#c9bfae}
.auto-party-overview .auto-factions{padding:0 0 24px;gap:14px 20px}.auto-party-overview .auto-faction{flex-basis:130px}.auto-collection{margin-top:28px;padding-top:20px;border-top:1px solid #554b3c}.auto-collection>h3 span{display:block;font-weight:400;font-size:12px;color:#c9bfae;margin-top:4px}.auto-collection>p{font-size:12px;color:#c9bfae;margin:10px 0 16px}.auto-collection>ul{list-style:none;margin:0;padding:0;display:grid;gap:22px}.auto-owned-fighter{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:12px;align-items:center}.auto-owned-fighter>img{width:64px;height:64px;object-fit:cover;border-radius:5px}.auto-owned-details{min-width:0}.auto-owned-details h3{overflow-wrap:anywhere}.auto-owned-details>p{font-size:11px;line-height:1.5;margin:3px 0;color:#c9bfae}.auto-owned-details .auto-identity{margin-top:5px}.auto-owned-fighter button{min-height:44px;min-width:80px;padding:8px 10px;border:1px solid #796f5c;border-radius:6px;color:#f3eadb;background:#2b2923;font:inherit;font-size:12px;cursor:pointer}.auto-owned-fighter button:hover:enabled{background:#3b382e}.auto-owned-fighter button:disabled{opacity:.5;cursor:not-allowed}.auto-owned-fighter button:focus-visible{outline:2px solid #eacb91;outline-offset:4px}.auto-owned-details>.auto-selection-reason{font-size:11px;color:#d5c2a4}.auto-owned-fighter.is-selected h3{color:#e6d0a8}
@keyframes auto-attack-frames{0%{background-position:0 0}25%{background-position:100% 0}50%{background-position:0 100%}75%{background-position:100% 100%}100%{background-position:0 0}}
@keyframes auto-attack-frames-eight{0%{background-position:0 0}12.5%{background-position:33.333333% 0}25%{background-position:66.666667% 0}37.5%{background-position:100% 0}50%{background-position:0 100%}62.5%{background-position:33.333333% 100%}75%{background-position:66.666667% 100%}87.5%{background-position:100% 100%}100%{background-position:0 0}}
@keyframes auto-lunge{0%,100%{transform:translateX(0) rotate(0)}16%{transform:translateX(calc(-3% * var(--auto-direction,1))) rotate(calc(-2deg * var(--auto-direction,1)))}42%,52%{transform:translateX(calc(21% * var(--auto-direction,1))) rotate(calc(3deg * var(--auto-direction,1)))}}
@keyframes auto-recoil{0%,34%,100%{transform:translateX(0)}43%{transform:translateX(calc(-5% * var(--auto-direction,1))) rotate(calc(-1.5deg * var(--auto-direction,1)))}}
@keyframes auto-channel{0%,100%{transform:translateY(0);filter:brightness(1)}34%,50%{transform:translateY(-3px);filter:brightness(1.13)}}
@keyframes auto-hit{0%,37%,100%{transform:translateX(0);filter:brightness(1)}46%{transform:translateX(calc(-6% * var(--auto-direction,1)));filter:brightness(1.7) sepia(.3)}57%{transform:translateX(calc(2% * var(--auto-direction,1)));filter:brightness(1.1)}}
@keyframes auto-heal{0%,100%{filter:brightness(1)}40%{filter:brightness(1.25) saturate(1.12)}}
@keyframes auto-projectile{0%,28%{stroke-dashoffset:100;opacity:0}30%{stroke-dashoffset:100;opacity:1}53%{stroke-dashoffset:-6;opacity:1}57%,100%{stroke-dashoffset:-6;opacity:0}}
@keyframes auto-strike{0%,40%{transform:scaleX(0);opacity:0}47%{transform:scaleX(1);opacity:1}68%,100%{transform:scaleX(1.15);opacity:0}}
@keyframes auto-ward{0%,18%{transform:translateY(12px) scale(.8);opacity:0}35%{opacity:.9}80%,100%{transform:translateY(-70px) scale(1.13);opacity:0}}
@keyframes auto-guard{0%,15%{transform:scale(.88);opacity:0}38%,65%{transform:scale(1);opacity:.8}100%{transform:scale(1.04);opacity:0}}
@keyframes auto-float{from{transform:translate(-50%,10px);opacity:.6}to{transform:translate(-50%,-22px);opacity:1}}
@media(max-width:1050px){.auto-bottom{grid-template-columns:1fr;gap:20px}.auto-journal{padding:18px 0 0;border-left:0;border-top:1px solid #554b3c}.auto-journal ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.auto-journal>p{margin-top:12px}.auto-stage{height:clamp(270px,35vw,380px)}}
@media(max-width:650px){
  .world-game .app.immersive .event-sheet:has(.autobattle-scene),.world-game .app.immersive:has(.map-actions:not(:empty)) .event-sheet:has(.autobattle-scene),.world-game .autobattle-result-sheet,.app.immersive .event-sheet:has(.autobattle-scene){position:fixed;top:calc(52px + env(safe-area-inset-top,0px));bottom:auto;left:50%;right:auto;transform:translateX(-50%);width:calc(100vw - 12px);max-height:calc(100dvh - 60px - env(safe-area-inset-top,0px));border-radius:8px}
  .autobattle-scene .auto-header{padding:15px 14px;gap:12px;flex-wrap:wrap}.auto-title{flex:1 1 170px}.auto-title p{font-size:11px}.auto-playback{gap:8px}.auto-speeds button{padding:6px 10px;min-width:40px}.auto-pause{padding:7px 12px}.auto-stage{height:258px}
  .auto-figure[data-slot="0"]{left:-3%;width:25%;top:19%}.auto-figure[data-slot="1"]{left:16%;width:27%;top:16%}.auto-figure[data-slot="2"]{left:34%;width:30%;top:10%}.auto-foe{left:63%;width:39%;top:4%}.auto-figure{bottom:19%}.auto-figure-health{left:6%;right:6%}.auto-health-label{font-size:10px;gap:3px}.auto-health-label>span:first-child{display:none}.auto-health-label>span:last-child{margin-inline:auto}.auto-health-label small{font-size:10px}.auto-health-track{height:6px}
  .auto-action-readout{grid-template-columns:1fr;gap:5px;padding:13px 16px;min-height:96px}.auto-action-readout>strong{font-size:18px}.auto-action-readout p{font-size:13px}.auto-bottom{padding:20px 16px;gap:20px}.auto-roster{grid-template-columns:1fr;gap:18px}.auto-member-heading{justify-content:flex-start;gap:12px}.auto-member-heading>span{font-size:12px}.auto-member-name{margin:3px 0 8px;font-size:12px}.auto-member-name span{display:inline;margin-left:8px}.auto-abilities{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.auto-abilities strong{font-size:12px}.auto-abilities span{font-size:11px;line-height:1.5}.auto-journal ol{grid-template-columns:1fr;gap:8px}.auto-journal li{font-size:12px}.auto-journal>p{font-size:12px}.auto-result{padding:16px;flex-direction:column;gap:12px;align-items:stretch}.auto-continue{width:100%}.auto-result p{font-size:13px}.auto-outcome{font-size:17px}.auto-impact{font-size:28px}
  .auto-factions{padding:15px 16px 0}.auto-owned-fighter{grid-template-columns:54px minmax(0,1fr);gap:10px}.auto-owned-fighter>img{width:54px;height:54px}.auto-owned-fighter>button{grid-column:2;justify-self:start}.auto-identity{font-size:12px}.auto-animation-pending{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.autobattle-scene :is(.auto-sprite,.auto-figure-visual,.auto-impact,.auto-projectile,.auto-projectile-trail,.auto-strike-mark,.auto-ward-ring){animation:none!important}.autobattle-scene .auto-health-track>span{transition:none}.autobattle-scene .auto-impact{transform:translateX(-50%)}.autobattle-scene :is(.auto-battle-fx,.auto-strike-mark,.auto-ward-ring){display:none}.autobattle-scene .is-hit .auto-figure-health{color:#ffc7b2}.autobattle-scene .is-healed .auto-health-track>span{background:var(--auto-heal)}}
@media(max-width:650px){
  .auto-stage{height:350px}.auto-figure{bottom:39%}.auto-figure-health{left:0;right:3px}.auto-figure[data-slot="1"] .auto-figure-health{right:3px}
  .auto-figure[data-slot="0"]{left:1%;width:21%;top:16%}.auto-figure[data-slot="1"]{left:23%;width:21%;top:12%}.auto-figure[data-slot="2"]{left:45%;width:21%;top:7%}.auto-foe{left:68%;width:31%;top:3%}
  .auto-health-label{display:grid;gap:2px}.auto-health-label>span:first-child{display:block;font-size:10px;line-height:1.25;white-space:normal;min-height:38px;max-height:38px;overflow:hidden;text-align:center;overflow-wrap:anywhere}.auto-health-label>span:last-child{font-size:11px}
  .auto-stage-identity{font-size:9px;line-height:1.3;text-align:center;gap:3px}.auto-stage-identity>span{display:block;white-space:normal;overflow-wrap:anywhere}.auto-stage-identity>span:first-child>span{display:block;font-size:9px}
  .auto-inspect-hitbox{bottom:-96px}.auto-inspect-hitbox>span{bottom:102px;font-size:10px;padding:2px 6px}
  .auto-fighter-inspector{padding:18px 16px}.auto-fighter-inspector>header{gap:12px}.auto-fighter-inspector .auto-abilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.auto-fighter-inspector>header h3{font-size:16px}
}
