/* Native route continuity keeps fixed app chrome stable and transitions only
   the operational workspace. Motion Mini replaces CSS entrances once its
   exact-pinned, idle-loaded runtime is ready; CSS remains the offline fallback. */
@supports (view-transition-name: none) {
  :root { view-transition-name: none; }
  #view { view-transition-name: refera-workspace; }
  ::view-transition-old(refera-workspace) {
    animation: refera-view-out var(--refera-motion-duration-fast) var(--refera-motion-easing-standard) both;
  }
  ::view-transition-new(refera-workspace) {
    animation: refera-view-in var(--refera-motion-duration-standard) var(--refera-motion-easing-emphasized) both;
  }
}

@keyframes refera-view-out {
  to { opacity: 0; transform: translateY(-2px); }
}

@keyframes refera-view-in {
  from { opacity: 0; transform: translateY(3px); }
}

[data-motion-enhanced="true"] { animation: none !important; }

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