Resources
Design tokens
All design tokens are CSS custom properties injected by ThemeProvider. They automatically update when the theme or color mode changes.
Usage
Tokens are available as CSS custom properties and as Tailwind utility classes through the preset.
/* CSS custom property */
background: hsl(var(--color-primary));
/* Tailwind class */
<div className="bg-primary text-primary-fg" />Background & Foreground
Base surface and text colors for the page.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-bg | bg-bg / text-bg | Page background | |
--color-fg | bg-fg / text-fg | Primary text color |
Card
Surface colors for card-like containers.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-card | bg-card | Card background | |
--color-card-fg | text-card-fg | Card text color |
Popover
Colors for floating elements like dropdowns and tooltips.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-popover | bg-popover | Popover background | |
--color-popover-fg | text-popover-fg | Popover text |
Primary
Main brand color used for buttons, links, and interactive focus rings.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-primary | bg-primary | Primary action color | |
--color-primary-fg | text-primary-fg | Text on primary | |
--color-primary-hover | bg-primary-hover | Hovered primary | |
--color-primary-active | bg-primary-active | Pressed primary |
Secondary
Subdued variant for secondary actions.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-secondary | bg-secondary | Secondary background | |
--color-secondary-fg | text-secondary-fg | Secondary text |
Muted
Low-contrast surfaces and placeholder text.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-muted | bg-muted | Muted background | |
--color-muted-fg | text-muted-foreground | Muted / dimmed text |
Accent
Hover and selection highlight.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-accent | bg-accent | Hover highlight | |
--color-accent-fg | text-accent-foreground | Text on accent |
Semantic
Status colors for feedback states.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-destructive | bg-destructive | Error / danger | |
--color-destructive-fg | text-destructive-fg | Text on destructive | |
--color-success | bg-success / text-success | Success state | |
--color-success-fg | text-success-fg | Text on success | |
--color-warning | bg-warning / text-warning | Warning state | |
--color-warning-fg | text-warning-fg | Text on warning | |
--color-info | bg-info / text-info | Info state | |
--color-info-fg | text-info-fg | Text on info |
Border & Input
Stroke and input field colors.
| Swatch | Token | Tailwind | Description |
|---|---|---|---|
--color-border | border-border | Default border | |
--color-border-strong | border-border-strong | Emphasized border | |
--color-input | border-input | Input border | |
--color-ring | ring-ring | Focus ring |
Themes change token values
Switching between themes (slate, zinc, rose) or modes (light, dark) replaces all token values simultaneously. Your components automatically adapt — no class swapping needed.