Colors
Semantic color tokens with light and dark theme values. All colors map to Tailwind utilities.
| Swatch | Token | Tailwind |
|---|---|---|
| --background | bg-background | |
| --foreground | bg-foreground | |
| --primary | bg-primary | |
| --primary-hover | bg-primary-hover | |
| --primary-foreground | bg-primary-foreground | |
| --secondary | bg-secondary | |
| --secondary-foreground | bg-secondary-foreground | |
| --card | bg-card | |
| --card-foreground | bg-card-foreground | |
| --muted | bg-muted | |
| --muted-foreground | bg-muted-foreground | |
| --accent | bg-accent | |
| --accent-foreground | bg-accent-foreground | |
| --destructive | bg-destructive | |
| --destructive-foreground | bg-destructive-foreground | |
| --border | bg-border |
Spacing
4px base unit spacing scale. Used for padding, margin, and gap.
Typography
Font size scale from xs to 6xl. Three font families: head (Archivo Black), sans (Space Grotesk), mono (Space Mono).
Font Families
Size Scale
Weights
Line Heights & Tracking
| Token | Value |
|---|---|
| --leading-none | 1 |
| --leading-tight | 1.25 |
| --leading-normal | 1.5 |
| --leading-relaxed | 1.625 |
| --tracking-tight | -0.025em |
| --tracking-normal | 0 |
Shadows
Hard pixel-offset shadows with no blur — the neobrutalist signature.
Border Radius
Default is 0 (sharp corners). Add the .with-radius class to get 0.5rem rounded corners.
Color Contrast (WCAG AA)
WCAG AA requires at least 4.5:1 contrast for normal text and 3:1 for large text (18px+ or 14px bold). Pairings that fail AA for normal text are flagged below.
light Theme
| Foreground | Background | Preview | Ratio | AA Normal | AA Large |
|---|---|---|---|---|---|
--foreground | --background | Aa | 21.0:1 | Pass | Pass |
--primary-foreground | --primary | Aa | 6.4:1 | Pass | Pass |
--primary | --background | Aa | 3.3:1 | Fail | Pass |
--destructive-foreground | --destructive | Aa | 4.0:1 | Fail | Pass |
--muted-foreground | --background | Aa | 7.5:1 | Pass | Pass |
--success-foreground | --success | Aa | 11.0:1 | Pass | Pass |
--warning-foreground | --warning | Aa | 13.5:1 | Pass | Pass |
--info-foreground | --info | Aa | 7.4:1 | Pass | Pass |
--error-foreground | --error | Aa | 5.6:1 | Pass | Pass |
--primary on --background: Use as background with dark foreground, not as text on white
--destructive-foreground on --destructive: Passes for large/bold text only
dark Theme
| Foreground | Background | Preview | Ratio | AA Normal | AA Large |
|---|---|---|---|---|---|
--foreground | --background | Aa | 12.3:1 | Pass | Pass |
--primary-foreground | --primary | Aa | 6.4:1 | Pass | Pass |
--muted-foreground | --background | Aa | 3.4:1 | Fail | Pass |
--card-foreground | --card | Aa | 9.1:1 | Pass | Pass |
--muted-foreground on --background: Fails AA for normal text; suitable for large/decorative text only