tokens/themes/ (per data-theme). Structure (typography roles, motion, spacing, elevation) lives in tokens/design/.Semantic colors for the active theme. Use the toolbar toggle for light vs dark mode.
Emphasis ramp for data visualizations (1 = lightest, 5 = strongest).
Surfaces specific to the sidebar primitive.
Derived from --radius. Use Tailwind rounded-* utilities.
rounded-sm--radius-sm
rounded-md--radius-md
rounded-lg--radius-lg
rounded-xl--radius-xl
rounded-2xl--radius-2xl
rounded-3xl--radius-3xl
rounded-4xl--radius-4xl
Intent-named tokens in tokens/design/spacing.css. Shifts with data-density and data-gutter.
1px; use in CSS. Default Tailwind p-px applies the theme scale.
var(--space-px)Horizontal page inset (data-gutter).
px-gutterControl and dense surface padding (data-density).
p-inset-tightDefault padded surfaces such as cards (data-density).
p-insetRoomier than inset; 1.2× card padding.
p-inset-looseTight rows: chips, icon + label (data-density).
gap-clusterDefault vertical or horizontal gap between siblings.
gap-stackMajor block separation; section vertical rhythm.
mt-sectionTailwind numeric step scale (rem multiples of 0.25). Prefer semantic spacing when the intent is fixed (gutter, section, card inset).
10.25rem20.50rem30.75rem41.00rem61.50rem82.00rem123.00rem164.00rem205.00rem246.00rem328.00remShadow ladder and stacking layers in tokens/design/elevation.css. Shadow steps shift with data-elevation in the theme editor; use --app-shadow-* in Tailwind (not @theme shadow keys).
--shadow-1--app-shadow-sm · 1 / sm
Resting surfaces - cards, inputs, subtle lift.
shadow-[var(--app-shadow-sm)]--shadow-2--app-shadow-md · 2 / md
Raised panels and hover depth.
shadow-[var(--app-shadow-md)]--shadow-3--app-shadow-lg · 3 / lg
Popovers, menus, prominent cards.
shadow-[var(--app-shadow-lg)]--shadow-4--app-shadow-xl · 4 / xl
Modals and floating chrome.
shadow-[var(--app-shadow-xl)]Default document stacking.
z-[var(--z-base)]Slightly above siblings (sticky rows, active cards).
z-[var(--z-raised)]Sticky headers and category bars.
z-[var(--z-sticky)]Scrims behind dialogs and sheets.
z-[var(--z-overlay)]Menus, selects, popovers.
z-[var(--z-dropdown)]Dialog and sheet panels.
z-[var(--z-modal)]Tooltips above most chrome.
z-[var(--z-tooltip)]Toasts and global notifications.
z-[var(--z-toast)]Durations, easings, composed transitions, geometry, placeholders, and app `animation` shorthands. Keyframes for `--app-*` come from `tw-animate-css` (enter, exit, accordion-*, caret-blink). Primitives also use `animate-in`, `zoom-in-95`, etc. Clamped by `prefers-reduced-motion` in `tokens/motion-reduced.css`.
0ms; instant or disabled feel.
duration-(--duration-instant)Short feedback windows.
duration-(--duration-fast)Default micro-interaction length.
duration-(--duration-base)Sheets, medium surfaces.
duration-(--duration-moderate)Large or ambient transitions.
duration-(--duration-slow)Long tier before crawl.
duration-(--duration-slower)Slowest tier (~10s) — decorative loops, text gradients, shader drift.
duration-(--duration-ambient)No delay before transition or keyframe start.
var(--delay-none)Stagger or short wait before a motion step.
var(--delay-short)Alias for ambient loops — text gradients, WebGPU shaders, hero drift.
animation-duration: var(--duration-shader-loop)Scrim / backdrop open and close.
duration-(--duration-overlay)Dropdowns, tooltips, popovers.
duration-(--duration-popover)Paired with color transitions.
duration-(--duration-hover)Sidebar show/hide or rail.
duration-(--duration-sidebar)Dialog content motion.
duration-(--duration-dialog)View or route cross-fade (when used).
duration-(--duration-page)Stepped or non-smooth use.
var(--ease-linear)Accelerate in.
var(--ease-in)Decelerate out; common for enter.
var(--ease-out)Symmetrical in/out.
var(--ease-in-out)Default product easing (overridden per theme in some files).
var(--ease-standard)stronger deceleration (e.g. dialog).
var(--ease-emphasized)Themed text and border color changes.
transition: var(--transition-colors)Opacity fades.
transition: var(--transition-opacity)Transform moves (enter/exit).
transition: var(--transition-transform)Elevation and shadow changes.
transition: var(--transition-shadow)Filter and backdrop-filter (blur).
transition: var(--transition-filter)Slide offset; same order of magnitude as tw-animate slide-*-2.
translate-y-[var(--motion-slide-sm)]Larger travel for drawers or sheets.
translate-y-[var(--motion-slide-md)]Enter zoom baseline (0.95 ≈ zoom-in-95).
scale-[var(--motion-scale-from)]Exit zoom baseline.
scale-[var(--motion-scale-to)]No scroll timeline. Safe default.
animation-timeline: var(--animation-timeline-default)alias for no named timeline (discoverable name).
animation-timeline: var(--animation-timeline-none)Illustrative scroll() root; use when scroll-driven support is available.
animation-timeline: var(--animation-timeline-scroll-y)Motion path start.
offset-distance: var(--motion-path-offset-0)Motion path end.
offset-distance: var(--motion-path-offset-100)Generic `enter` keyframe from tw-animate-css.
animation: var(--app-animation-in)Generic `exit` keyframe from tw-animate-css.
animation: var(--app-animation-out)Scrim enter.
animation: var(--app-animation-overlay-in)Scrim exit.
animation: var(--app-animation-overlay-out)Aligned with duration-popover + enter.
animation: var(--app-animation-popover)Dialog enter emphasis.
animation: var(--app-animation-dialog)Radix / accordion content expand.
animation: var(--app-animation-accordion-down)Radix / accordion content collapse.
animation: var(--app-animation-accordion-up)OTP / caret blink; disabled in prefers-reduced-motion (see token file).
animation: var(--app-animation-caret)Headline emphasis only — one phrase per title. Utilities clip gradient fills to glyphs and loop slowly via `text-gradient-shift`; static fallback when `background-clip: text` is unsupported or `prefers-reduced-motion` is on. `bg-gradient-*` reuses the same stops for spotlight card surfaces. Four roles: primary, accent, harmony-1, harmony-2 — knobs in `tokens/themes/gradient-harmony.css`. Formulas: `tokens/design/text-gradients.css`.
Primary (slow)
Design systems that scale
Accent (slow)
Design systems that scale
Harmony 1 (slow)
Design systems that scale
Harmony 2 (slow)
Design systems that scale
Shared angle for text and surface gradient utilities.
145degHue offset (degrees) from --primary for accent stops. Default complement: 180.
tokens/themes/gradient-harmony.cssHue offset (degrees) from --primary for harmony-1 stops. Default: 120.
tokens/themes/gradient-harmony.cssHue offset (degrees) from --primary for harmony-2 stops. Default: 60.
tokens/themes/gradient-harmony.cssSlow headline loop — maps to `--duration-ambient` (~10s).
className="text-gradient-primary text-gradient-slow"Loop duration for animated headline gradients (`text-gradient-*`).
animation: text-gradient-shift var(--text-gradient-duration)Background width for the shifting gradient (200% = pan room).
background-size: var(--text-gradient-size) autoPrimary headline gradient — light stop (from --primary).
className="text-gradient-primary"Primary headline gradient — deep stop.
paired with --text-gradient-primary-fromAccent stop (primary hue + --text-gradient-harmony-accent-h, default 180°).
className="text-gradient-accent"Accent gradient deep stop (same hue as accent-from).
paired with --text-gradient-accent-fromHarmony-1 stop (primary hue + --text-gradient-harmony-1-h, default 120°).
className="text-gradient-harmony-1"Harmony-1 gradient deep stop (same hue as harmony-1-from).
paired with --text-gradient-harmony-1-fromHarmony-2 stop (primary hue + --text-gradient-harmony-2-h, default 60°).
className="text-gradient-harmony-2"Harmony-2 gradient deep stop (same hue as harmony-2-from).
paired with --text-gradient-harmony-2-fromWash/mesh/shimmer fill strength and tint for .marketing-surface.
Strength of wash, mesh, or shimmer layers on `.marketing-surface`.
color-mix(... calc(var(--surface-fill-opacity) * 100%), ...)Primary-tinted stop for marketing fill gradients.
data-surface-fill=wash on preview root + .marketing-surfaceSemantic font assignments. Edit roles in tokens/design/typography.css.
font-displayHero headline
font-headingSection title
font-bodyParagraph copy that flows for a while.
font-uiButtons, nav, dense interfaces
font-captionHelper, footnote, meta
font-accent italicEditorial emphasis
font-eyebrow uppercase tracking-wider text-xsKicker
Tailwind text-* sizes.
text-xsThe quick brown fox jumps over the lazy dog
text-smThe quick brown fox jumps over the lazy dog
text-baseThe quick brown fox jumps over the lazy dog
text-lgThe quick brown fox jumps over the lazy dog
text-xlThe quick brown fox jumps over the lazy dog
text-2xlThe quick brown fox jumps over the lazy dog
text-3xlThe quick brown fox jumps over the lazy dog
text-4xlThe quick brown fox jumps over the lazy dog