TokenResolves toLight valueDark note
Primary
--color-primaryPrimary actions, links, brand surfaces.--violet-500#7100FFunchanged
--color-primary-hoverPrimary hover / pressed.--violet-700#5400BFunchanged
--color-primary-subtleSoft violet fills, chips.--violet-100#E9DEFF--violet-900
--color-primary-faintFaint backgrounds, gradient start.--violet-50#F4EFFF--violet-faint-dark
--color-primary-strongHigh-contrast text on light tints.--violet-900#2E0066--violet-900
Text & links
--color-linkInline links, violet text, interactive icons.--violet-500#7100FF--violet-bright
--color-on-primary-mutedMuted text on violet surfaces.--violet-on-muted#E6DCFFunchanged
--color-textDefault body and heading text.--ink#120B22--text-dark
--color-text-mutedSecondary text.--ink-50#5B5470--text-muted-dark
--color-text-subtlePlaceholders, tertiary labels.--ink-30#8079A0--text-subtle-dark
Accents
--color-accentOne highlight moment per screen.--lime#C6FF3Dunchanged
--color-accent-softGentle lime fill, gradient end.--lime-soft#EAFFC2unchanged
--color-punctuationTags, punctuation, sparing emphasis.--pink#FF3D9Aunchanged
--color-punctuation-softSoft pink badge fills.--pink-soft#FFD9ECunchanged
On-colour pairs
--color-on-primaryText on violet (AA).--white#FFFFFFunchanged
--color-on-accentText on lime (AA). Never violet on lime.--ink#120B22unchanged
--color-on-punctuationText on pink (AA).--ink#120B22unchanged
--color-on-punctuation-softText on pink-soft (AA).--pink-deep#9B0F50unchanged
Structure
--color-bgPage background.--paper#FBFAFF--bg-dark
--color-surfaceCards, inputs, nav.--surface#FFFFFF--surface-dark
--color-borderSignature border colour.--ink#120B22--border-dark
--color-dividerHairline dividers in UI.--line#E7E2F2--divider-dark
--color-focusFocus ring colour (violet shadow).--violet-500#7100FFunchanged
Disabled
--color-disabled-bgDisabled control background.--grey-fill#F1EEF7--surface-2-dark
--color-disabled-textDisabled label text.--grey-text#A39CB5--text-disabled-dark
--color-disabled-borderDisabled control border.--grey-border#C9C3D6--divider-dark
Status
--color-successSuccess messages, badges.--green#16A34Aunchanged
--color-warningWarnings, in-progress.--amber#FFB020unchanged
--color-errorErrors, validation.--red#FF3D5Dunchanged
--shadow-sm3px 3px 0 inkBadges, pills, small chips.
--shadow4px 4px 0 inkDefault — cards, panels.
--shadow-lg5px 5px 0 inkHero cards, marketing callouts.
--shadow-lime4px 4px 0 limeVary rhythm on cards — don’t use one colour everywhere.
--shadow-violet4px 4px 0 violetInput focus ring; highlighted cards.
--shadow-pink4px 4px 0 pinkSparing accent; blog covers.
--border2px solid inkShorthand for signature sticker border.
--bw-hairline1.5pxBadges and pills.
--bw-default2pxDefault ink border width.
--r-sm9pxBadges, pills, section-tag.
--r-md12pxButtons, nav pill.
--r-lg16pxCards, panels, large containers.
--r-pill999pxFull-pill chips, toggles.