Token flow shows how a color becomes a design token: the raw value, the
palette step that names it, and the role people use in code. Switch the site
theme and the values change underneath while the role's name stays put.
Base
Primitive
Semantic
Base oklch(0.205 0 0)oklch(0.205 0 0)oklch(0.205 0 0)Primitive neutral-900neutral-900neutral-900
Semantic bg-primaryPrimary actions, headings
Base oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)Primitive red-700red-700red-700
Semantic text-destructiveErrors and irreversible actions
Base oklch(0.922 0 0)oklch(0.922 0 0)oklch(0.922 0 0)Primitive neutral-200neutral-200neutral-200
Semantic border-borderHairlines and inputs
Token flowThree of fibo's roles, each with what it is for. Switch the site theme to watch them flip.
The tiers run left to right and stack top to bottom on narrow screens.
orientation="vertical" stacks them at every width, for a narrow column or
a card.
Base
Primitive
Semantic
Base oklch(0.205 0 0)oklch(0.205 0 0)oklch(0.205 0 0)Primitive neutral-900neutral-900neutral-900
Semantic bg-primaryPrimary actions, headings
Base oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)Primitive red-700red-700red-700
Semantic text-destructiveErrors and irreversible actions
Base oklch(0.922 0 0)oklch(0.922 0 0)oklch(0.922 0 0)Primitive neutral-200neutral-200neutral-200
Semantic border-borderHairlines and inputs
VerticalThe three roles stacked, with their use lines.
The plate follows the site theme. When it changes, rows with a dark pair
scramble to their new values and the swatches fade across, while the role
names hold still.
Base
Primitive
Semantic
Base oklch(0.205 0 0)oklch(0.205 0 0)oklch(0.205 0 0)Primitive neutral-900neutral-900neutral-900
Semantic bg-primary
Base oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)oklch(0.505 0.213 27.518)Primitive red-700red-700red-700
Semantic text-destructive
Base oklch(0.922 0 0)oklch(0.922 0 0)oklch(0.922 0 0)Primitive neutral-200neutral-200neutral-200
Semantic border-border
Theme: light
Theme changeFlips between light and dark every few seconds, so the scramble plays.
Base
Primitive
Semantic
Base oklch(0.985 0 0)oklch(0.985 0 0)oklch(0.985 0 0)Primitive neutral-50neutral-50neutral-50
Semantic bg-primary
Base oklch(0.704 0.191 22.216)oklch(0.704 0.191 22.216)oklch(0.704 0.191 22.216)Primitive red-400red-400red-400
A pulse runs along each wire while the plate is on screen, staggered by row.
It stops off screen, even when you pass your own ref, and neither the
pulse nor the scramble plays when someone has asked for reduced motion.