/* Same-origin, cross-document enhancement. Unsupported browsers follow links normally. */
@view-transition { navigation: auto; }
:root {
  --navigation-enter-x: 8px;
  --navigation-exit-x: -8px;
}
:root[data-navigation-direction="back"] {
  --navigation-enter-x: -8px;
  --navigation-exit-x: 8px;
}
::view-transition { pointer-events: none; }
::view-transition-group(root) { animation: none; }
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 200ms;
  animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
  animation-fill-mode: both;
  mix-blend-mode: normal;
}
::view-transition-old(root) { animation-name: navigation-leave; }
::view-transition-new(root) { animation-name: navigation-enter; }
@keyframes navigation-leave {
  to { opacity: 0; transform: translateX(var(--navigation-exit-x)); }
}
@keyframes navigation-enter {
  from { opacity: 0; transform: translateX(var(--navigation-enter-x)); }
}
@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  ::view-transition-group(root),
  ::view-transition-old(root),
  ::view-transition-new(root) { animation: none !important; }
}
