/* FXHoster client-area motion; content remains usable without JavaScript. */
@keyframes fx-page-arrive {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: none; }
}
@keyframes fx-page-out { to { opacity: 0; } }
@keyframes fx-page-in { from { opacity: 0; } }

@media (prefers-reduced-motion: no-preference) {
  /* Native navigation: no click interception, timeout, or form resubmission. */
  @view-transition { navigation: auto; }
  ::view-transition-old(root) {
    animation: fx-page-out 220ms ease-out both;
    mix-blend-mode: normal;
  }
  ::view-transition-new(root) {
    animation: fx-page-in 320ms cubic-bezier(.2,.7,.2,1) both;
    mix-blend-mode: normal;
  }
  #main-body {
    animation: fx-page-arrive 700ms cubic-bezier(.2,.7,.2,1) both;
  }
}

@media print {
  #main-body { animation: none !important; opacity: 1 !important; transform: none !important; }
}
