/**
 * Axismundi — Material Design 3 motion tokens.
 *
 * M3's Expressive components use the motion physics system, which is springs.
 * CSS cannot run a spring, so the theme uses the conversion M3 publishes for the
 * web: each `curve-*` below is a spring already turned into a cubic-bezier and a
 * duration. The two halves are one value -- use them together.
 *
 * Split by axis. Spatial is geometry: position, size, shape, rotation. Effects
 * is paint: colour, opacity. Spatial curves overshoot and effects curves do not.
 *
 * The original easing and duration tokens are still available to use as a
 * fallback, and are currently used for animating transitions -- a looping
 * keyframe animation cannot take a curve whose duration is part of its value.
 */

:root {
	/* Duration scale. */
	--md-sys-motion-duration-short1: 50ms;
	--md-sys-motion-duration-short2: 100ms;
	--md-sys-motion-duration-short3: 150ms;
	--md-sys-motion-duration-short4: 200ms;
	--md-sys-motion-duration-medium1: 250ms;
	--md-sys-motion-duration-medium2: 300ms;
	--md-sys-motion-duration-medium3: 350ms;
	--md-sys-motion-duration-medium4: 400ms;
	--md-sys-motion-duration-long1: 450ms;
	--md-sys-motion-duration-long2: 500ms;
	--md-sys-motion-duration-long3: 550ms;
	--md-sys-motion-duration-long4: 600ms;
	--md-sys-motion-duration-extra-long1: 700ms;
	--md-sys-motion-duration-extra-long2: 800ms;
	--md-sys-motion-duration-extra-long3: 900ms;
	--md-sys-motion-duration-extra-long4: 1000ms;

	/* Easing set. Pair with any duration. */
	--md-sys-motion-easing-linear: cubic-bezier(0, 0, 1, 1);
	--md-sys-motion-easing-standard: cubic-bezier(0.2, 0, 0, 1);
	--md-sys-motion-easing-standard-accelerate: cubic-bezier(0.3, 0, 1, 1);
	--md-sys-motion-easing-standard-decelerate: cubic-bezier(0, 0, 0, 1);
	--md-sys-motion-easing-emphasized: cubic-bezier(0.2, 0, 0, 1);
	--md-sys-motion-easing-emphasized-accelerate: cubic-bezier(0.3, 0, 0.8, 0.15);
	--md-sys-motion-easing-emphasized-decelerate: cubic-bezier(0.05, 0.7, 0.1, 1);

	/* Springs converted for the web (M3 Expressive). */
	--md-sys-motion-curve-fast-spatial: cubic-bezier(0.42, 1.67, 0.21, 0.9);
	--md-sys-motion-curve-fast-spatial-duration: 350ms;
	--md-sys-motion-curve-default-spatial: cubic-bezier(0.38, 1.21, 0.22, 1);
	--md-sys-motion-curve-default-spatial-duration: 500ms;
	--md-sys-motion-curve-slow-spatial: cubic-bezier(0.39, 1.29, 0.35, 0.98);
	--md-sys-motion-curve-slow-spatial-duration: 650ms;

	--md-sys-motion-curve-fast-effects: cubic-bezier(0.31, 0.94, 0.34, 1);
	--md-sys-motion-curve-fast-effects-duration: 150ms;
	--md-sys-motion-curve-default-effects: cubic-bezier(0.34, 0.8, 0.34, 1);
	--md-sys-motion-curve-default-effects-duration: 200ms;
	--md-sys-motion-curve-slow-effects: cubic-bezier(0.34, 0.88, 0.34, 1);
	--md-sys-motion-curve-slow-effects-duration: 300ms;
}
