Design Tokens
Every value below is read live from the running document, so this page cannot drift from src/styles/tokens.css. Each token is annotated with where the design actually uses it.
- tokens
- 37
- groups
- 8
- type steps
- 10
- colour you choose
- 1
Typography
Ten steps. Size, tracking and default line-height travel together, because the design tightens tracking as type grows.
$27,829.83
Account balance
size="display"$1,154.00
Available cashback, page titles
size="title"£ 369.41
Exchange amounts
size="amount"Page not found
Placeholder headings
size="subtitle"Recent transactions
Card titles
size="heading"$160 /month
Instalment figures
size="stat"Sarah Rosewood
Row titles, values
size="body"Your Balance
Field labels, quiet links
size="label"Monthly Plan
Captions, meta, hints
size="caption"+10%
Badges
size="micro"Weight is a separate prop. Each size carries the weight the design pairs it with most often, so <Text size="caption" /> already looks right.
Theme
One hue drives every emphasis in the library. Pick another and watch all 614 components follow — nothing below is hard-coded.
Label on accent
12.3:1
AAAText on wash
16.0:1
AAAOnly --color-accent is chosen. Strong, soft and ink are derived from it — which is why a deep accent gets white labels and a pale one gets near-black, without anybody configuring the pair.
Surfaces
Five stacked planes, from the page behind the window to the cards on top of it.
canvas
#f4f7f0Page behind the app window
shell
#fffThe app window itself
app
#f6f7f4Content area inside the window
surface
#fffCards, nav track, floating menus
surface-muted
#f4f5f5Inner fields, inactive icon tiles
surface-sunken
#fafafaRate rows, list-row hover
Lines
Hairlines separating surfaces. `line-strong` is the hover/emphasis step.
line
#eeefeeCard and tile borders
line-strong
#e3e5e3Border on hover, filled control hover
track
#edefeaUnfilled meter pips
Text
A three-step ink hierarchy carries every label in the dashboard.
ink
#17191cPrimary text, values, headings
ink-soft
#5c6165Secondary text, inactive nav
ink-faint
#6a7075Captions, meta, placeholders
Accent & status
One accent hue does all the emphasis work; status colours are reserved.
accent
#c8f24eLogo, active pill, primary action, badges
accent-strong
#c0f428Accent hover, filled meters, focus ring
accent-soft
#eff8d3Tinted accent backgrounds
accent-ink
#1e2509Text on accent
success
#2d7135Positive amounts
warning
#f5a524Warnings
danger
#c42630Errors, destructive actions
Radius
Radius grows with the size of the container it wraps.
glyph
calc(12px * 1)Icon tiles, rate rows
tile
calc(14px * 1)Inner tiles, dropdown menus
field
calc(16px * 1)Exchange amount fields
card
calc(20px * 1)Cards
banner
calc(24px * 1)Hero banner
window
calc(32px * 1)The app window frame
Elevation
Four elevations. Everything else is flat and separated by a hairline instead.
tile
0 1px 2px #141b0f0dNav track, rail tiles, header cluster
card
0 1px 2px #141b0f0a, 0 8px 24px -12px #141b0f14Cards
float
0 4px 16px -4px #141b0f24, 0 1px 3px #141b0f0fDropdowns, carousel chevrons, banner CTA
window
0 40px 90px -30px #1f2c1447The floating app window
Motion
The dashboard animates colour only. These mirror the default transition it relies on.
fast
.15sHover and focus colour transitions
slow
.25sDrawer and disclosure transitions
Layers
Fixed stacking values. Dialogs, drawers and popovers rise from --z-overlay in the order they open, so a panel opened inside a dialog sits above it.
raised
10Swap button over the exchange fields
sticky
20Carousel chevrons over the card band
overlay
50The first overlay on the stack; each one opened after it sits higher
popover
60In-flow menus not on the overlay stack
toast
1000Status messages, above every overlay
tooltip
1100The label under the pointer, above everything
Spacing & breakpoints
The library uses Tailwind's default 4px spacing scale unmodified, and its default breakpoints. Only the measurements below are design-specific.
Grid gutter
Between cards, in both directions
16pxCard band height
Each of the two card rows at xl and above
306pxHeader height
Fixed, at every breakpoint
76pxIcon rail width
Left rail from lg up
42pxBanner height
Below sm / from sm up
150px / 160pxContent max width
The design viewport
1512pxBreakpoints
Drawer / rail / framed window
md 768 · lg 1024 · xl 1280