/* ============================================================
   MOTION  —  Buddy Design System
   ------------------------------------------------------------
   Restrained, decisive motion. Animation explains state
   changes, never decorates. No bouncy spring on routine data
   operations. Always honor Reduce Motion.

   Timings & easings reconciled (June 2026) with the canonical
   Pointy brand guide (ssandke/shared-platform): "smooth,
   decisive, never bouncy."
   ============================================================ */

:root {
  /* ---------- Durations (canonical) ---------- */
  --motion-fast: 160ms; /* @kind other */ /* hover, focus, button press */
  --motion-base: 280ms; /* @kind other */ /* most transitions */
  --motion-slow: 380ms; /* @kind other */ /* sheets, full-screen reveals */

  /* ---------- Easing (canonical names) ----------
     --ease-default: sheets, panels, primary motion.
     --ease-snap: buttons, taps, micro-interactions. */
  --ease-default: cubic-bezier(0.32, 0.72, 0, 1); /* @kind other */
  --ease-snap: cubic-bezier(0.4, 0.0, 0.2, 1); /* @kind other */
  --ease-out: cubic-bezier(0.0, 0.0, 0.2, 1); /* @kind other */
  --ease-in: cubic-bezier(0.4, 0.0, 1, 1); /* @kind other */
  /* Back-compat aliases for earlier token names */
  --ease-standard: var(--ease-snap); /* @kind other */
  --ease-settle: var(--ease-default); /* @kind other */
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --motion-fast: 0ms; /* @kind other */
    --motion-base: 0ms; /* @kind other */
    --motion-slow: 0ms; /* @kind other */
  }
}
