Home

Token system

Monochrome, no brand color. Two layers: primitives (constants, invariant across modes) and semantic tokens (alias primitives, flip between light and dark). Toggle the theme — every semantic swatch inverts at runtime, because the utilities point at CSS variables, not baked values.

Primitives — warm neutral scale

n0

#FFFFFF

n50

#F6F5F2

n100

#EDEBE6

n200

#DEDBD3

n400

#A3A099

n600

#6B6862

n700

#3A3835

n800

#2A2926

n900

#1C1B18

n975

#0C0C0B

Primitives — state (error / success / warning)

red-600

#B4443C

red-400

#D98A82

green-600

#4A7A56

green-400

#8FB89A

amber-600

#B4863C

amber-400

#D9B37F

Semantic — surfaces

PreviewSemanticUtilityLightDark
surface/pagebg-pagen50n975
surface/panelbg-paneln0n900
surface/subbg-subn100n800
surface/inputbg-fieldn50n800

Semantic — text

PreviewSemanticUtilityLightDark
Aatext/primarytext-inkn900n50
Aatext/secondarytext-ink-2n600n400
Aatext/tertiarytext-ink-3n400n600
Aatext/errortext-errorred-600red-400
Aatext/successtext-successgreen-600green-400
Aatext/warningtext-warningamber-600amber-400

Semantic — interactive & borders

PreviewSemanticUtilityLightDark
interactive/primarybg-actionn900n0
border/defaultborder-linen200n700
border/strongborder-line-strongn400n600