/* ==========================================================
   IROZON DESIGN TOKENS — Motion
   Irozon Motion & Interaction Foundations v1.

   Philosophy: quiet at rest, precise and alive during interaction.
   Motion communicates state change, hierarchy, cause/effect, continuity
   and feedback — never decoration for its own sake. See site/motion.html
   for the full principles, live demonstrations and interaction recipes
   this scale is built to serve.

   Two small scales cover nearly every Irozon interaction: four durations,
   four easings. Reach for a fifth value only when a real interaction
   genuinely can't be served by these — don't add one-off timings back in.
   ========================================================== */
:root {
  /* ---- Duration ---- */
  /* Press/active feedback, a toggle's flip — the floor of what still
     reads as connected to the input rather than laggy. */
  --motion-duration-instant: 100ms;
  /* Hover state changes, small icon nudges — quick, not urgent. */
  --motion-duration-fast: 150ms;
  /* The default: dropdowns, tabs, popovers, selection indicators. */
  --motion-duration-standard: 220ms;
  /* Larger spatial movement — drawers, modals, panel-level transitions. */
  --motion-duration-deliberate: 400ms;

  /* ---- Easing ---- */
  /* General-purpose default when nothing more specific applies. */
  --motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  /* Something appearing: fast out of the gate, settles gently. Never
     used for something leaving. */
  --motion-ease-enter: cubic-bezier(0, 0, 0.2, 1);
  /* Something leaving: eases in, then accelerates away — dismissal
     should feel quick, not lingering. */
  --motion-ease-exit: cubic-bezier(0.4, 0, 1, 1);
  /* The most consequential/large movements only (a drawer or modal's
     spatial travel) — a longer, more pronounced deceleration than
     --motion-ease-standard. Still no overshoot or bounce. */
  --motion-ease-emphasized: cubic-bezier(0.2, 0, 0, 1);

  /* ---- Legacy aliases ----
     This site's own chrome (sidebar, theme toggle, jump-nav, buttons)
     was built against these names before the v1 canonical scale above
     existed. Point them at the canonical tokens rather than keeping
     duplicate magic numbers around — one source of truth. New work
     should reach for --motion-duration-* / --motion-ease-* directly. */
  --dur-instant: var(--motion-duration-fast);
  --dur-standard: var(--motion-duration-standard);
  --dur-large: var(--motion-duration-deliberate);
  --ease-standard: var(--motion-ease-standard);

  /* Reserved — NOT part of the canonical scale. A single deliberately
     springy exception (slight overshoot) tied to the Signature CTA
     reveal only. Do not reuse for anything else; a system built on
     springs everywhere stops feeling premium and starts feeling busy. */
  --ease-signature: cubic-bezier(0.34, 1.56, 0.64, 1);
}
