.ev-chest { animation: ev-chest-card .26s ease-out both; }
.ev-chest-art { animation: ev-chest-rise .42s cubic-bezier(.2, 1.35, .45, 1) .08s both; }
.ev-chest-lid { animation: ev-chest-lid .5s cubic-bezier(.3, 1.55, .5, 1) .56s both; }
.ev-chest-glow { animation: ev-chest-light .55s ease-out .62s both; }
.ev-chest-inside { animation: ev-chest-light .35s ease-out .6s both; }
.ev-chest-row { animation: ev-chest-row .32s cubic-bezier(.2, 1.2, .4, 1) calc(1.05s + var(--i, 0) * .2s) both; }
@keyframes ev-chest-card { from { opacity: 0; transform: scale(.96); } }
@keyframes ev-chest-rise { from { opacity: 0; transform: translateY(.9rem) scale(.88); } }
@keyframes ev-chest-lid { from { transform: none; } }
@keyframes ev-chest-light { from { opacity: 0; } }
@keyframes ev-chest-row { from { opacity: 0; transform: translateY(.45rem) scale(.98); } }
@media (prefers-reduced-motion: reduce) {
  .ev-chest, .ev-chest-art, .ev-chest-lid, .ev-chest-glow, .ev-chest-inside, .ev-chest-row { animation: none; }
}
.reduce-motion :is(.ev-chest, .ev-chest-art, .ev-chest-lid, .ev-chest-glow, .ev-chest-inside, .ev-chest-row) { animation: none; }
