/* Motion is composed and short. No bounce, no spring, no attention-seeking loops.
   Everything eases out; nothing overshoots. */
:root{
  --ease-out:cubic-bezier(.22,.61,.36,1); /* @kind other */
  --ease-in-out:cubic-bezier(.4,0,.2,1); /* @kind other */
  --ease-entrance:cubic-bezier(.16,.84,.44,1); /* @kind other */

  --dur-instant:90ms; /* @kind other */
  --dur-fast:160ms; /* @kind other */
  --dur-base:220ms; /* @kind other */
  --dur-slow:360ms; /* @kind other */
  --dur-reveal:600ms; /* @kind other */

  --transition-control:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out); /* @kind other */
  --transition-surface:transform var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out); /* @kind other */

  /* Hover lift on cards — 2px, never more */
  --lift-hover:translateY(-2px); /* @kind other */
  --press-scale:scale(.985); /* @kind other */
}
@media (prefers-reduced-motion:reduce){
  :root{
    --dur-fast:0ms; /* @kind other */
    --dur-base:0ms; /* @kind other */
    --dur-slow:0ms; /* @kind other */
    --dur-reveal:0ms; /* @kind other */
    --lift-hover:none; /* @kind other */
    --press-scale:none; /* @kind other */
  }
}
