Style Guide

--h1

Heading

--h2

Heading

--h3

Heading

--h4

Heading

--h5
Heading
--h6
Heading
--text-xxl Body text sample
--text-xl Body text sample
--text-l Body text sample
--text-m Body text sample
--text-sm Body text sample
--text-xs Body text sample
--font-weight-normal (400) The quick brown fox jumps over the lazy dog
--font-weight-medium (500) The quick brown fox jumps over the lazy dog
--font-weight-bold (700) The quick brown fox jumps over the lazy dog

Primary

--primary
Variations
Super Light --primary-super-light
Light --primary-light
Semi Light --primary-semi-light
Semi Dark --primary-semi-dark
Dark --primary-dark
Super Dark --primary-super-dark

Secondary

--secondary
Variations
Super Light --secondary-super-light
Light --secondary-light
Semi Light --secondary-semi-light
Semi Dark --secondary-semi-dark
Dark --secondary-dark
Super Dark --secondary-super-dark

Accent

--accent
Variations
Super Light --accent-super-light
Light --accent-light
Semi Light --accent-semi-light
Semi Dark --accent-semi-dark
Dark --accent-dark
Super Dark --accent-super-dark

Base

--base
Variations
Super Light --base-super-light
Light --base-light
Semi Light --base-semi-light
Semi Dark --base-semi-dark
Dark --base-dark
Super Dark --base-super-dark

Neutral

--neutral
Variations
Super Light --neutral-super-light
Light --neutral-light
Semi Light --neutral-semi-light
Semi Dark --neutral-semi-dark
Dark --neutral-dark
Super Dark --neutral-super-dark

Surface

Background --surface-bg
Card --surface-card
Border --surface-border
Text Dark --text-dark
Text Muted --text-dark-muted

Primitives

White --white
Black --black

Success

--success
Variations
Super Light --success-super-light
Light --success-light
Semi Light --success-semi-light
Semi Dark --success-semi-dark
Dark --success-dark
Super Dark --success-super-dark

Warning

--warning
Variations
Super Light --warning-super-light
Light --warning-light
Semi Light --warning-semi-light
Semi Dark --warning-semi-dark
Dark --warning-dark
Super Dark --warning-super-dark

Danger

--danger
Variations
Super Light --danger-super-light
Light --danger-light
Semi Light --danger-semi-light
Semi Dark --danger-semi-dark
Dark --danger-dark
Super Dark --danger-super-dark

Info

--info
Variations
Super Light --info-super-light
Light --info-light
Semi Light --info-semi-light
Semi Dark --info-semi-dark
Dark --info-dark
Super Dark --info-super-dark

Spacing — Base Scale

--space-xs — 6px → 8px
--space-s — 9px → 12px
--space-m — 12px → 16px
--space-l — 18px → 24px
--space-xl — 24px → 32px
--space-xxl — 36px → 48px
--space-xxxl — 48px → 64px

Spacing — Section Scale

--section-space-xs — 48px → 64px
--section-space-s — 72px → 96px
--section-space-m — 96px → 128px
--section-space-l — 144px → 192px
--section-space-xl — 192px → 256px
--section-space-xxl — 288px → 384px

Spacing — Contextual

--gutter — var(--space-xxl)
--grid-gap — var(--space-xl)
--content-gap — var(--space-m)
--items-gap — var(--space-l)
--section-padding — var(--section-space-m)

Border

--border var(--border-width) var(--border-style) var(--surface-border)

Border Radius

--radius-sm 4px
--radius-md 8px
--radius-lg 12px
--radius-xl 18px
--radius-full 9999px

Transition

--transition: 250ms cubic-bezier(0, 0, 0.2, 1)

Hover the button to see the transition in action:

Buttons

Primary / Default Primary Button
Primary / sm Primary Small
Primary / lg Primary Large
Ghost / Default Ghost Button
Ghost / sm Ghost Small
Ghost / lg Ghost Large

Focus Style

Tab to or click the element below to see the focus ring:

--focus-ring: 2px solid var(--focus) | --focus-ring-offset: 3px

Modal / Dialog

Focus trap active • Escape closes • Backdrop click closes • Focus returns to trigger

Accordion

Single mode — only one panel open at a time. Add [data-accordion-single] to allow multiple.

Tabs

Arrow keys navigate between tabs. Home / End jump to first / last.

This is the Overview panel. Tabs follow the ARIA tablist / tabpanel pattern with roving tabindex so only the active tab is in the document's tab sequence.

Toast / Notifications

Toasts appear bottom-right. Auto-dismiss after 4s by default. Error variant is persistent until dismissed.

Uses aria-live="polite" • Persistent toasts use role="alert" • Slides in from the right • Reduced-motion safe

Cards

Mountain landscape at golden hour

Card Heading

Short supporting copy that describes the card content in a sentence or two.

Sunlit forest path

Card Heading

Short supporting copy that describes the card content in a sentence or two.

Aerial view of green hills

Card Heading

Short supporting copy that describes the card content in a sentence or two.

Rocky coastal cliffs

Card Heading

Short supporting copy that describes the card content in a sentence or two.