Tokens

Design tokens

One source of truth for colour, radius, shadow, spacing, and motion. The theme ships these as CSS custom properties, so every component reads the same values.

Colour

Brand purple #825FFF is the canonical primary across every Ludo surface. Charts run on a fixed five-colour palette. Semantic hues carry their own background tints. Neutrals follow the zinc ramp. Click any swatch to copy its hex.

Brand

primary

#825FFF

--primary

pink

#F76CAF

--chart-3

yellow

#FFD059

--chart-2

green

#67E8AA

--chart-4

lilac

#C8B6FF

--chart-5

Chart

chart-1

#825FFF

--chart-1

chart-2

#FFD059

--chart-2

chart-3

#F76CAF

--chart-3

chart-4

#67E8AA

--chart-4

chart-5

#C8B6FF

--chart-5

Semantic

success

#10B981

--success

warning

#F59E0B

--warning

error

#EF4444

--error

info

#3B82F6

--info

Neutral

zinc-50

#FAFAFA

zinc-100

#F4F4F5

zinc-200

#E4E4E7

zinc-500

#71717A

zinc-900

#18181B

zinc-950

#09090B

Radius

Base radius is 0.5rem. The derived steps resolve to 4, 6, 8, and 12px.

sm

4px

md

6px

lg

8px

xl

12px

Shadow

A standard scale for elevation plus a soft set for calm panels and the hover lift. No coloured glows.

shadow-sm

table rows, inputs

shadow-md

raised cards

shadow-soft

panels at rest

shadow-hover

lift on hover

Spacing

Spacing follows the Tailwind v4 rhythm. These are the steps the kit leans on most.

10.25rem · 4px
20.5rem · 8px
30.75rem · 12px
41rem · 16px
61.5rem · 24px
82rem · 32px
102.5rem · 40px
123rem · 48px

Motion

Durations and easings are shared by the CSS keyframes and the framework-agnostic @ludo/motion source. Durations are Tailwind utilities, for example duration-fast.

Durations

TokenValueUtility
instant100msduration-instant
fast150msduration-fast
base200msduration-base
slow300msduration-slow
slower500msduration-slower
ambient8000msduration-ambient

Easings

TokenCurveUsed for
standardcubic-bezier(0.4, 0, 0.2, 1)default transitions
outcubic-bezier(0.16, 1, 0.3, 1)enter, draw-in
incubic-bezier(0.4, 0, 1, 1)exit, fade-out
emphasizedcubic-bezier(0.34, 1.56, 0.64, 1)pop, overshoot

Springs

TokenVisual durationBounceUsed for
snappy0.2s0popovers, badges
bouncy0.4s0.3playful accents

Stagger step is 50ms per child. See Motion for the presets and the reduced-motion policy.