Axon 911 Frontend DocsAxon 911 Frontend Docs
Axon 911 Frontend Docs
    Loading navigation…
U
User
Switch to light mode
  1. Foundations
  2. Tokens

Tokens

CSS custom properties shipped by @prepared911/ui.

@prepared911/ui/tokens.css publishes the design system's CSS custom properties. Prefer these names over hard-coded lengths and colors.
Where values live
Light tokens are declared on :where(:root), at zero specificity, so a class or attribute on the same element wins. Dark tokens are declared under [data-theme='dark']. Set that attribute on the document element, or on a region that must stay dark. Do not import a Sass theme module.
@prepared911/ui/reset.css is a separate, optional document base. It is not part of tokens.css.
Public names
Use the semantic tier. Reference tokens prefixed --ref- and slot tokens such as --default-* are generator internals.
  • Color: --color-bg-*, --color-fg-*, --color-border-*, --color-fill-*, --color-accent-*, --color-status-*, and --color-palette-* for data series.
  • Space: --space-* (4, 8, 12, 16, …). --space-16 is 1rem.
  • Radius: --radius-sm, --radius-md, --radius-lg, --radius-control, --radius-pill, and the other --radius-* roles.
  • Type: --font-family-sans, --font-family-mono, and --text-<role>-* bundles (page, section, title, body-large, body-medium, label, caption, code-1, overline, and their emphasis roles).
  • Motion: --duration-*, --easing-*, and the composed --motion-* transitions.
  • Elevation: --elevation-raised-shadow, --elevation-overlay-shadow, --elevation-modal-shadow.
Color
NameTypeDefaultDescription
--color-bg-defaultcolorlight on :where(:root)Page canvas. The dark value is under [data-theme='dark'].
--color-fg-defaultcolorper appearanceBody and heading text.
--color-fg-subtlecolorper appearanceSecondary text.
--color-fg-mutedcolorper appearanceCaptions, labels, and metadata. Use it at 16px or semibold.
--color-border-defaultcolorper appearanceCard and panel edges.
--color-accent-defaultcolorper appearancePrimary accent fill.
--color-status-destructive-fgcolorper appearanceDestructive text on its own status background. Warning, success, and informative follow the same slot pattern.
Space, radius, and type
NameTypeDefaultDescription
--space-4 … --space-128dimension0.25rem–8remSpacing scale. Box padding and gap take these steps as numbers (16 is --space-16).
--radius-controldimension0.5remDefault corner radius for buttons and fields.
--text-body-large-fontfont shorthand400 0.875rem/1.25remDefault Text role. Emphasis roles are separate tokens, such as --text-body-large-emphasis-font.
--text-page-fontfont shorthand700 2.25rem/2.75remPage title role. The heading element is chosen with Text's as prop, not by the role.
Motion
NameTypeDefaultDescription
--duration-fasttime100msShort feedback. --duration-default is 150ms.
--easing-standardeasingcubic-bezierDefault easing. Glide and spring tokens are separate (--easing-glide-*, --spring-*).
--motion-statetransitionduration + easingShared control state transition.
Imports
After tokens.css is loaded, every public custom property on this page is available to the app stylesheet.
Previous
Semantics
Next
Animated Number / Usage
On this page
Where values live
Public names
Imports