/* Cross-document page transitions (Chrome/Edge 126+; other browsers simply navigate).
   Kept in its own small stylesheet, linked first and free of @import: a pending
   @import could leave the opt-in unresolved while the new page is rendering,
   and Chrome would then skip the transition ("ViewTransition opt-in disabled"). */
@view-transition {
    navigation: auto;
}

::view-transition-old(root) { animation: page-fade-out .16s ease both; }
::view-transition-new(root) { animation: page-fade-in .38s cubic-bezier(.2, .7, .25, 1) both; }
@keyframes page-fade-out { to { opacity: 0; } }
@keyframes page-fade-in { from { opacity: 0; transform: translateY(.65rem); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
    ::view-transition-old(root), ::view-transition-new(root) { animation: none !important; }
}
