/* Transições entre páginas com suporte à preferência por movimento reduzido. */
@view-transition {
  navigation: auto;
}

::view-transition-old(root) {
  animation: page-exit 260ms cubic-bezier(0.4, 0, 1, 1) both;
}

::view-transition-new(root) {
  animation: page-enter 440ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes page-exit {
  to {
    opacity: 0;
    transform: translateX(-18px) scale(0.985);
  }
}

@keyframes page-enter {
  from {
    opacity: 0;
    filter: blur(5px);
    transform: translateY(28px) scale(0.97);
  }
}

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