Foundations
Colors
Pure monochrome, dark-first. Emphasis is carried by contrast and weight — there is no accent hue in the primary palette. The brand violet (`accent-brand`) is intentionally siloed and used only for active tab labels and the AI escape hatch.
Semantic surfaces
--color-backgroundPage canvas.
--color-foregroundDefault text on background.
--color-cardElevated surface — panels, modals, popovers.
--color-card-foregroundText on card.
--color-popoverFloating menus and tooltips.
--color-popover-foregroundText on popover.
--color-primarySolid action surface (default Button).
--color-primary-foregroundText on primary.
--color-secondaryEqual-weight alternative to primary.
--color-secondary-foregroundText on secondary.
--color-mutedSubtle backgrounds — empty states, hovers.
--color-muted-foregroundDe-emphasised text, captions.
--color-accentHover surface for menus, breadcrumbs, items.
--color-accent-foregroundText on accent.
--color-borderAll chrome borders, dividers.
--color-inputForm field borders.
--color-ringFocus ring.
Status
--color-destructiveErrors, irreversible actions.
--color-destructive-foregroundText on destructive.
--color-warningCautionary states — soft yellow.
--color-warning-foregroundText on warning.
--color-successConfirmation, completed states.
--color-success-foregroundText on success.
--color-infoInformational banners, hints.
--color-info-foregroundText on info.
Brand
--color-accent-brandIris violet. Applied point-wise (active tab + AI affordance only).
Neutral ramp
14-stop grayscale. Use these directly only when no semantic token fits — most of the system reads from the semantic ones above.