/* fx.css — Mythos Pixel: screen feedback + reduced motion.
   (Particles/weather/actors are drawn by the canvas itself.) */

/* ── screen feedback ────────────────────────────────── */
body.shake #stage { animation: stage-shake .35s steps(8); }
@keyframes stage-shake {
  20% { transform: translate(-4px, 1px); }
  40% { transform: translate(4px, -1px); }
  60% { transform: translate(-3px, 1px); }
  80% { transform: translate(2px, 0); }
}
body.flash #stage::before {
  content: ''; position: absolute; inset: 0; z-index: 5; background: #fff; pointer-events: none;
  animation: white-flash .22s steps(3) forwards;
}
@keyframes white-flash { from { opacity: .8; } to { opacity: 0; } }

/* ── reduced motion: consequences stay visible, spectacle calms ── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  #ledger, #workbench { transition-duration: .15s !important; }
  #meter-fill, #meter-knob { transition-duration: .15s !important; }
}
