/* ═══ 19. REDUCED MOTION ═════════════════════════════════════════════ */

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    /* Duration alone isn't enough for staggered entrances (.idp-tile): without
       zeroing delay too, tiles would still reveal one-by-one over ~200ms, just
       with each individual pop now instant instead of smooth. */
    animation-delay: 0ms !important;
  }
}

/* ═══ 20. POPOVER ENTRANCE ═══════════════════════════════════════════
   Shared fade+settle for every transient popover/menu (user menu, activity
   feed, custom-select list, status picker, delete-confirm). display:none →
   non-none (how each of these is shown — [hidden] toggling, or fresh
   insertion for the JS-built ones) always restarts a CSS animation, so this
   replays correctly on every open with no JS changes needed. Mirrors the
   .attn-tip / .pm-history-in treatment instead of leaving these five as the
   only surfaces that still snap into place. */
@keyframes menu-pop-in {
  from { opacity: 0; transform: translateY(4px); }
}
