/* Forest Frontier v0.10.0-rc49
 * Stabilization hotfix:
 * - essential one-shot combat feedback remains visible in every browser mode;
 * - desktop responsive emulation no longer loses the strike line or card impact;
 * - reduced-motion still disables ambient/continuous motion, not combat readability.
 */

/*
 * These are functional, one-shot combat signals rather than ambient motion.
 * Keep them active globally so desktop device emulation, coarse-pointer modes
 * and browser/OS accessibility combinations cannot silently remove them.
 */

body.theme-ashen.screen-battle-active .combatant-enemy.hit,
body.theme-ashen.screen-battle-active .combatant-enemy.hit-strong,
body.theme-ashen.screen-battle-active .combatant-enemy.hit-perfect,
body.theme-ashen.screen-battle-active .combatant-enemy.hit-critical,
body.theme-ashen.screen-battle-active .combatant-enemy.hit-power,
body.theme-ashen.screen-battle-active .combatant-enemy.response-counter,
body.theme-ashen.screen-battle-active .combatant-enemy.response-parry {
  animation: ffRc48ImpactEnemy .34s cubic-bezier(.2, .8, .2, 1) both !important;
}

body.theme-ashen.screen-battle-active .combatant-hero.hit,
body.theme-ashen.screen-battle-active .combatant-hero.hit-strong,
body.theme-ashen.screen-battle-active .combatant-hero.hit-perfect,
body.theme-ashen.screen-battle-active .combatant-hero.hit-critical,
body.theme-ashen.screen-battle-active .combatant-hero.hit-power,
body.theme-ashen.screen-battle-active .combatant-hero.poison-tick {
  animation: ffRc48ImpactHero .34s cubic-bezier(.2, .8, .2, 1) both !important;
}

/* Reduced motion keeps the signal, but halves the displacement. */
@media (prefers-reduced-motion: reduce) {
  body.theme-ashen.screen-battle-active .combatant-enemy.hit,
  body.theme-ashen.screen-battle-active .combatant-enemy.hit-strong,
  body.theme-ashen.screen-battle-active .combatant-enemy.hit-perfect,
  body.theme-ashen.screen-battle-active .combatant-enemy.hit-critical,
  body.theme-ashen.screen-battle-active .combatant-enemy.hit-power,
  body.theme-ashen.screen-battle-active .combatant-enemy.response-counter,
  body.theme-ashen.screen-battle-active .combatant-enemy.response-parry {
    animation-name: ffRc48ImpactEnemyReduced !important;
  }

  body.theme-ashen.screen-battle-active .combatant-hero.hit,
  body.theme-ashen.screen-battle-active .combatant-hero.hit-strong,
  body.theme-ashen.screen-battle-active .combatant-hero.hit-perfect,
  body.theme-ashen.screen-battle-active .combatant-hero.hit-critical,
  body.theme-ashen.screen-battle-active .combatant-hero.hit-power,
  body.theme-ashen.screen-battle-active .combatant-hero.poison-tick {
    animation-name: ffRc48ImpactHeroReduced !important;
  }
}

/* -------------------------------------------------------------------------
 * Chapter II personal reward: make the epic rarity explicit, not implied by art.
 * ---------------------------------------------------------------------- */

/* -------------------------------------------------------------------------
 * Patrol: compact but readable expected-income presentation.
 * ---------------------------------------------------------------------- */

/* Five ruins floors need ordinary page scrolling and a clear bottom runway. */
body.theme-ashen.screen-ruins-active #ruinsFloorList {
  overflow: visible !important;
  max-height: none !important;
  padding-bottom: calc(var(--ff-bottom-safe, 0px) + 18px);
}
