Durations
Each duration performs its own function on a loop — the press flash, the toggle, the fill, the expanding panel, the arriving window — every change takes exactly its token's pace.
--duration-instant
50ms — Perceptual micro-change — a press flash.
--duration-fast
100ms — Small state changes — a toggle flips.
--duration-normal
150ms — Most transitions — a fill completes.
--duration-slow
250ms — Large, deliberate change — a panel expands.
--duration-immersion
500ms — Immersive surfaces — a window arrives.
Easings
The character of the movement at a fixed pace — every track runs the same slow duration, only the curve changes.
Standard settles, in accelerates away, out glides to rest.
--ease-standard
decelerate-settle — The default throughout the system.
--ease-in
accelerates — Reserved for exit.
--ease-out
decelerates — Reserved for enter.
Motion
The composed pairs — duration and curve travel together, exactly like a text role pairs size and weight. One pass per replay.
Enter settles, exit clears — the pairs carry both pace and character.
--motion-fast
Small state changes — hovers, presses.
--motion-normal
The everyday transition.
--motion-slow
Large, deliberate change.
--motion-enter
Content entering — settles on the enter curve.
--motion-exit
Content leaving — clears fast.
--motion-immersion
Immersive surfaces — windows and layers.