/* ===================================================================
   Carousel view transitions (preserved from previous)
   =================================================================== */
@media (prefers-reduced-motion: no-preference) {
  html[data-carousel-direction="forward"]::view-transition-old(root) { animation: carousel-out-left 0.25s ease both; }
  html[data-carousel-direction="forward"]::view-transition-new(root) { animation: carousel-in-right 0.25s ease both; }
  html[data-carousel-direction="back"]::view-transition-old(root) { animation: carousel-out-right 0.25s ease both; }
  html[data-carousel-direction="back"]::view-transition-new(root) { animation: carousel-in-left 0.25s ease both; }
}
@keyframes carousel-out-left  { to { transform: translateX(-30%); opacity: 0; } }
@keyframes carousel-in-right  { from { transform: translateX(30%);  opacity: 0; } }
@keyframes carousel-out-right { to { transform: translateX(30%);  opacity: 0; } }
@keyframes carousel-in-left   { from { transform: translateX(-30%); opacity: 0; } }
