Alias tier — map semantic colour roles to your raw palette shades. Components reference these aliases (e.g. "primary", "danger") rather than specific hex values, so changing a mapping here cascades through every component that uses it.
Primary
Primary
Primary Hover
Primary Active
On Primary
Surface
Surface Default
Surface Muted
Surface Raised
On Surface Default
On Surface Muted
Border
Border Default
Border Strong
Border Focus
Danger
Danger
Danger Surface
On Danger
On Danger Surface
Success
Success
Success Surface
On Success
On Success Surface
Warning
Warning
Warning Surface
On Warning
On Warning Surface
Info
Info
Info Surface
On Info
On Info Surface
Disabled
Disabled
On Disabled
Live Preview
Large body text for lead paragraphs.
Default body text in the surface colour.
Small text for captions and secondary content.
Extra-small text for fine print and labels.
Muted text for supporting information.
Code
const theme = createTheme(tokens);
export default theme;
Buttons
Badges
Inputs
Radio Group
Box / Card
Elevated box with medium radius and padding.
Alerts
Avatars
Accordion
Content for the first accordion section.
Content for the second accordion section.
Content for the third accordion section.
Breadcrumb
Tabs
Overview panel content.
Details panel content.
Settings panel content.
Separator
Horizontal separator shown above and below.
Slider
Progress & Skeleton
Page Surface
Body text on the default page background.
Muted text for secondary information.
Muted Section
Body text on a muted surface.
Card content elevated above the muted surface.
Primary Section (Cascade)
Body text inherits on-primary colour via cascade.
Muted text also resolves to on-primary.
Card Grid on Muted
Card content on a raised surface over muted background.
Another card verifying consistent contrast and spacing.
Form Controls
Alert Variants
Nested Composition
Your current plan includes all features.