Strongtie Design System
Getting StartedComponents

Command Palette

Search for a command to run...

Getting Started
  • Introduction
  • Setup Guide
  • Package Installation
  • Code Quality Setup
  • Migration Guide
  • Resources
Registry
  • Getting Started
  • Combobox
  • Datepicker
  • MultiSelect
  • Tree
Guides
  • Framework Recommendations
Foundations
  • States
  • Variables
Components
  • Accordion
  • Alert
  • Alert Dialog
  • Avatar
  • Badge
  • Breadcrumb
  • Button
  • Button Group
  • Calendar
  • Card
  • Carousel
  • Chart
  • Checkbox
  • Collapsible
  • Command
  • Combobox
  • Context Menu
  • Date Picker
  • Dialog
  • Drawer
  • Dropdown Menu
  • Empty
  • Field
  • Hover Card
  • Input
  • Input Group
  • Item
  • Kbd
  • Label
  • Menubar
  • Multi Select
  • Navigation Menu
  • Pagination
  • Popover
  • Progress
  • Radio Group
  • Scroll Area
  • Select
  • Separator
  • Sheet
  • Sidebar
  • Skeleton
  • Slider
  • Switch
  • Table
  • Tabs
  • Textarea
  • Toaster
  • Toggle
  • Toggle Group
  • Tooltip
  • Tree
2026 Simpson Strong-Tie
  1. Docs
  2. Foundations
  3. CSS Variables Reference

CSS Variables Reference

PreviousNext

Complete reference for all CSS custom properties (variables) available in the design system

Using shadcn/ui + Tailwind? These CSS variables are primarily for projects using the legacy @strongtie/design-system package or @strongtie/styles for non-React frameworks. For new projects, we recommend the ShadCN + Tailwind approach which uses Tailwind's built-in design tokens.

Font Size Tokens

Typography scale for consistent text sizing throughout the application.

VariableValuePurpose
--font-size-500.625rem (10px)Smallest text size for fine print or legal text
--font-size-750.75rem (12px)Small text, captions, or helper text
--font-size-1000.875rem (14px)Body text (small), labels, default size
--font-size-2001rem (16px)Default body text size
--font-size-3001.125rem (18px)Large body text, small headings
--font-size-4001.25rem (20px)Subheadings
--font-size-5001.375rem (22px)Medium headings (H3)
--font-size-6001.875rem (30px)Large headings (H2)
--font-size-7002.5rem (40px)Extra large headings (H1)
--font-size-8003.375rem (54px)Display text (large)
--font-size-9004.5rem (72px)Display text (extra large)
--font-size-10006rem (96px)Hero text, largest display size

Font Weight Tokens

Font weight scale for typography hierarchy.

VariableValuePurpose
--font-weight-light300Light text weight for decorative or large text
--font-weight-regular400Regular text weight for body copy
--font-weight-medium500Medium text weight for labels and emphasis
--font-weight-bold700Bold text weight for headings and strong emphasis

Spacing Tokens

Consistent spacing scale for margins, padding, and gaps.

VariableValuePurpose
--space-000rem (0px)No spacing
--space-500.125rem (2px)Minimum spacing, subtle separations
--space-750.25rem (4px)Extra small spacing
--space-900.375rem (6px)Small spacing variant
--space-1000.5rem (8px)Small spacing (base unit)
--space-2000.75rem (12px)Small-medium spacing
--space-2500.875rem (14px)Medium spacing variant
--space-3001rem (16px)Medium spacing (1 unit)
--space-3501.25rem (20px)Medium-large spacing
--space-4001.5rem (24px)Large spacing
--space-5002rem (32px)Extra large spacing
--space-5502.25rem (36px)Extra large spacing variant
--space-6002.5rem (40px)Double extra large spacing
--space-7003rem (48px)Section spacing (small)
--space-8004rem (64px)Section spacing (medium)
--space-9005rem (80px)Section spacing (large)
--space-10006rem (96px)Section spacing (extra large)

Corner Radius Tokens

Border radius values for consistent rounded corners.

VariableValuePurpose
--corner-radius-000rem (0px)No rounding (square corners)
--corner-radius-500.03125rem (0.5px)Minimal rounding
--corner-radius-750.25rem (4px)Small rounding for buttons, inputs
--corner-radius-1000.375rem (6px)Medium rounding
--corner-radius-2000.5rem (8px)Standard rounding for cards, containers
--corner-radius-3000.625rem (10px)Large rounding
--corner-radius-4000.75rem (12px)Extra large rounding
--corner-radius-5001rem (16px)Maximum standard rounding
--corner-radius-9999100vhPill shape (fully rounded)

Line Height Tokens

Line height values for optimal text readability.

VariableValuePurpose
--line-height-1001.2Tight line height for headings
--line-height-2001.3Compact line height for UI text
--line-height-3001.5Default line height for body text
--line-height-4001.7Loose line height for enhanced readability

Border Width Tokens

Border width scale for consistent stroke weights.

VariableValuePurpose
--border-width-1001pxThin border (default)
--border-width-2002pxMedium border
--border-width-3003pxThick border (focus states)
--border-width-4004pxExtra thick border

Opacity Tokens

Opacity scale for transparency effects.

VariableValuePurpose
--opacity-000Fully transparent
--opacity-100.110% opacity
--opacity-200.220% opacity
--opacity-300.330% opacity
--opacity-400.440% opacity
--opacity-500.550% opacity (half transparent)
--opacity-600.660% opacity (disabled state)
--opacity-700.770% opacity
--opacity-800.880% opacity
--opacity-900.990% opacity
--opacity-1001Fully opaque

Tint Tokens

White overlay colors with varying opacity levels for creating lighter variants.

VariableColorPurpose
--tint-100rgba(255, 255, 255, 0.9)Lightest tint (90% white)
--tint-200rgba(255, 255, 255, 0.8)Very light tint (80% white)
--tint-300rgba(255, 255, 255, 0.7)Light tint (70% white)
--tint-400rgba(255, 255, 255, 0.6)Medium-light tint (60% white)
--tint-500rgba(255, 255, 255, 0.5)Medium tint (50% white)
--tint-600rgba(255, 255, 255, 0.4)Medium-dark tint (40% white)
--tint-700rgba(255, 255, 255, 0.3)Dark tint (30% white)
--tint-800rgba(255, 255, 255, 0.2)Very dark tint (20% white)
--tint-900rgba(255, 255, 255, 0.1)Darkest tint (10% white)
--tint-1000rgba(255, 255, 255, 0)Transparent

Shade Tokens

Black overlay colors with varying opacity levels for creating darker variants.

VariableColorPurpose
--shade-100rgba(0, 0, 0, 0.9)Darkest shade (90% black)
--shade-200rgba(0, 0, 0, 0.8)Very dark shade (80% black) - used for modal backgrounds
--shade-300rgba(0, 0, 0, 0.7)Dark shade (70% black)
--shade-400rgba(0, 0, 0, 0.6)Medium-dark shade (60% black)
--shade-500rgba(0, 0, 0, 0.5)Medium shade (50% black)
--shade-600rgba(0, 0, 0, 0.4)Medium-light shade (40% black)
--shade-700rgba(0, 0, 0, 0.3)Light shade (30% black)
--shade-800rgba(0, 0, 0, 0.2)Very light shade (20% black)
--shade-900rgba(0, 0, 0, 0.1)Lightest shade (10% black)
--shade-1000rgba(0, 0, 0, 0)Transparent

Color Ramp Tokens

Full color palette with granular shades. Each color family has values from 000 (lightest) to 999 (darkest).

Neutral (Gray) Colors

VariableHex ValuePurpose
--sst-color-neutral-000#ffffffPure white
--sst-color-neutral-025#f7f7f7Near white
--sst-color-neutral-050#f5f5f5Background, very light gray
--sst-color-neutral-075#e9e9e9Light border color
--sst-color-neutral-100#e3e3e3Border color
--sst-color-neutral-150#d4d4d4Subtle border
--sst-color-neutral-200#c6c6c6Light gray
--sst-color-neutral-250#b9b9b9Gray variant
--sst-color-neutral-300#abababMedium-light gray
--sst-color-neutral-350#9d9d9dGray variant
--sst-color-neutral-400#909090Medium gray
--sst-color-neutral-450#848484Gray variant
--sst-color-neutral-500#777777Mid-tone gray, muted text
--sst-color-neutral-550#6a6a6aDark-medium gray
--sst-color-neutral-600#5e5e5eSecondary text color
--sst-color-neutral-650#525252Gray variant
--sst-color-neutral-700#474747Dark gray
--sst-color-neutral-750#3b3b3bVery dark gray
--sst-color-neutral-800#303030Near black gray
--sst-color-neutral-850#262626Gray variant
--sst-color-neutral-900#1c1c1cAlmost black
--sst-color-neutral-950#111111Near pure black, primary text
--sst-color-neutral-999#000000Pure black

Neutral Warm (Gray Warm) Colors

VariableHex ValuePurpose
--sst-color-neutral-warm-000#ffffffPure white
--sst-color-neutral-warm-025#f9f7f6Warm near white
--sst-color-neutral-warm-050#f6f4f2Warm background
--sst-color-neutral-warm-075#ece9e5Warm light gray
--sst-color-neutral-warm-100#e6e2ddWarm border
--sst-color-neutral-warm-150 to --sst-color-neutral-warm-999Various warm graysWarm-toned neutral scale

Orange Colors (Brand Primary)

VariableHex ValuePurpose
--sst-color-orange-000#ffffffPure white
--sst-color-orange-025#fff5f2Lightest orange tint
--sst-color-orange-050#ffece5Very light orange
--sst-color-orange-075#ffe2d8Light orange background
--sst-color-orange-100#ffd9cbLight orange
--sst-color-orange-150 to --sst-color-orange-350VariousOrange scale variants
--sst-color-orange-400#ff5308Brand orange (primary)
--sst-color-orange-450#ec4c07Brand orange hover
--sst-color-orange-500#d64405Brand orange active
--sst-color-orange-550 to --sst-color-orange-999VariousDarker orange variants

Yellow Colors

VariableHex ValuePurpose
--sst-color-yellow-000#ffffffPure white
--sst-color-yellow-025#fff8e3Lightest yellow
--sst-color-yellow-050 to --sst-color-yellow-100VariousLight yellows
--sst-color-yellow-150#ffd040Warning yellow background
--sst-color-yellow-200 to --sst-color-yellow-700VariousYellow scale
--sst-color-yellow-750#493a0bWarning yellow foreground
--sst-color-yellow-800 to --sst-color-yellow-999VariousDark yellow/gold variants

Blue Colors

VariableHex ValuePurpose
--sst-color-blue-000#ffffffPure white
--sst-color-blue-025#f4f8ffLightest blue
--sst-color-blue-050 to --sst-color-blue-450VariousLight to medium blues
--sst-color-blue-500#206eecInfo/link blue, focus color
--sst-color-blue-550 to --sst-color-blue-999VariousDarker blue variants

Red Colors

VariableHex ValuePurpose
--sst-color-red-000#ffffffPure white
--sst-color-red-025#fff5f4Lightest red
--sst-color-red-050 to --sst-color-red-450VariousLight to medium reds
--sst-color-red-500#ef0028Error/destructive red
--sst-color-red-550#d70023Destructive red (active)
--sst-color-red-600 to --sst-color-red-999VariousDarker red variants

Green Colors

VariableHex ValuePurpose
--sst-color-green-000#ffffffPure white
--sst-color-green-025#f2faefLightest green
--sst-color-green-050 to --sst-color-green-450VariousLight to medium greens
--sst-color-green-500#368813Success green (secondary)
--sst-color-green-550#2f7a10Success green (active)
--sst-color-green-600 to --sst-color-green-999VariousDarker green variants

Purple Colors

VariableHex ValuePurpose
--sst-color-purple-000#ffffffPure white
--sst-color-purple-025 to --sst-color-purple-999Various purplesComplete purple scale for decorative use

Pink Colors

VariableHex ValuePurpose
--sst-color-pink-000#ffffffPure white
--sst-color-pink-025 to --sst-color-pink-999Various pinksComplete pink scale for decorative use

Surface Tokens

Semantic tokens for backgrounds, borders, and text on various surfaces.

Primary Surface

VariableColorPurpose
--surface-primary-background#ffffff (gray-000)Main background color for the application
--surface-primary-foreground#111111 (gray-950)Primary text color on main background
--surface-primary-border#e9e9e9 (gray-075)Borders on primary surface
--surface-primary-muted-foreground#777777 (gray-500)Muted/secondary text on primary surface
--surface-primary-muted-background#f5f5f5 (gray-050)Muted background areas

Secondary Surface

VariableColorPurpose
--surface-secondary-background#f7f7f7 (gray-025)Secondary surface background (cards, panels)
--surface-secondary-foreground#5e5e5e (gray-600)Text on secondary surfaces
--surface-secondary-border#e3e3e3 (gray-100)Borders on secondary surfaces

Auxiliary Surface

VariableColorPurpose
--surface-auxiliary-background#f5f5f5 (gray-050)Tertiary surface background
--surface-auxiliary-foregroundvar(--surface-primary-background)Text on auxiliary surfaces
--surface-auxiliary-border#d4d4d4 (gray-150)Borders on auxiliary surfaces

Modal Surface

VariableColorPurpose
--surface-modal-backgroundrgba(0, 0, 0, 0.8)Modal overlay/backdrop color

Action Tokens

Semantic tokens for interactive elements like buttons and links.

Default Actions (Primary Buttons)

VariableColorPurpose
--action-default-background#1c1c1c (gray-900)Default button background
--action-default-foreground#ffffff (gray-000)Default button text
--action-default-hover-background#474747 (gray-700)Default button hover state
--action-default-hover-foreground#ffffff (gray-000)Default button hover text
--action-default-active-background#303030 (gray-800)Default button active/pressed state
--action-default-active-foreground#ffffff (gray-000)Default button active text

Selected State

VariableColorPurpose
--action-selected-background#f5f5f5 (gray-050)Selected item background
--action-focus-foreground#111111 (gray-950)Focus state text color

Secondary Actions

VariableColorPurpose
--action-secondary-background#f5f5f5 (gray-050)Secondary button background
--action-secondary-foregroundvar(--surface-primary-foreground)Secondary button text
--action-secondary-hover-background#f7f7f7 (gray-025)Secondary button hover
--action-secondary-hover-foreground#111111 (gray-950)Secondary button hover text
--action-secondary-active-background#e9e9e9 (gray-075)Secondary button active state
--action-secondary-active-foreground#111111 (gray-950)Secondary button active text

Destructive Actions

VariableColorPurpose
--action-destructive-background#ef0028 (red-500)Destructive button background
--action-destructive-foreground#ffffff (gray-000)Destructive button text
--action-destructive-hover-background#ff002b (red-450)Destructive button hover
--action-destructive-hover-foreground#ffffff (gray-000)Destructive button hover text
--action-destructive-active-background#d70023 (red-550)Destructive button active state
--action-destructive-active-foreground#ffffff (gray-000)Destructive button active text

Outline Actions

VariableColorPurpose
--action-outline-background#ffffff (gray-000)Outline button background
--action-outline-foregroundvar(--surface-primary-foreground)Outline button text
--action-outline-hover-background#f5f5f5 (gray-050)Outline button hover
--action-outline-active-foreground#e9e9e9 (gray-075)Outline button active text
--action-outline-border#e3e3e3 (gray-100)Outline button border

Ghost Actions

VariableColorPurpose
--action-ghost-background#ffffff (gray-000)Ghost button background
--action-ghost-foregroundvar(--surface-primary-foreground)Ghost button text
--action-ghost-hover-background#f5f5f5 (gray-050)Ghost button hover state

Link Actions

VariableColorPurpose
--action-link-foreground#206eec (blue-500)Link text color
--action-link-hover-foreground#1859c2 (blue-600)Link hover color

Control Tokens

Semantic tokens for form controls (checkboxes, radio buttons, switches, inputs).

VariableColorPurpose
--control-background#ffffff (gray-000)Input/control background
--control-border#e3e3e3 (gray-100)Input/control border
--control-focusvar(--surface-primary-foreground)Control focus state color
--control-selected-background#111111 (gray-950)Selected control background (checked)
--control-selected-foreground#ffffff (gray-000)Selected control foreground (checkmark)
--control-selected-border#111111 (gray-950)Selected control border
--control-unselected-background#ffffff (gray-000)Unselected control background
--control-unselected-border#6a6a6a (gray-550)Unselected control border
--control-switch-background#e3e3e3 (gray-100)Switch toggle background (off state)

Feedback Tokens

Semantic tokens for alerts, toasts, badges, and status indicators.

Default Feedback

VariableColorPurpose
--feedback-default-background#1c1c1c (gray-900)Default feedback background
--feedback-default-foreground#ffffff (gray-000)Default feedback text
--feedback-default-focusvar(--surface-primary-foreground)Default feedback focus

Secondary Feedback

VariableColorPurpose
--feedback-secondary-background#f5f5f5 (gray-050)Secondary feedback background
--feedback-secondary-foregroundvar(--surface-primary-foreground)Secondary feedback text

Outline Feedback

VariableColorPurpose
--feedback-outline-background#ffffff (gray-000)Outline feedback background
--feedback-outline-foregroundvar(--surface-primary-foreground)Outline feedback text
--feedback-outline-border#e9e9e9 (gray-075)Outline feedback border

Info Feedback (Blue)

VariableColorPurpose
--feedback-info-background#206eec (blue-500)Info alert background (filled)
--feedback-info-foreground#ffffff (gray-000)Info alert text (filled)
--feedback-info-secondary-background#ffffff (gray-000)Info alert background (outlined)
--feedback-info-secondary-foreground#206eec (blue-500)Info alert text (outlined)

Success Feedback (Green)

VariableColorPurpose
--feedback-success-background#2f7a10 (green-550)Success alert background (filled)
--feedback-success-foreground#ffffff (gray-000)Success alert text (filled)
--feedback-success-secondary-background#ffffff (gray-000)Success alert background (outlined)
--feedback-success-secondary-foreground#368813 (green-500)Success alert text (outlined)

Warning Feedback (Yellow)

VariableColorPurpose
--feedback-warning-background#ffd040 (yellow-150)Warning alert background (filled)
--feedback-warning-foreground#493a0b (yellow-750)Warning alert text (filled)
--feedback-warning-secondary-background#3b3b3b (gray-750)Warning alert background (dark variant)
--feedback-warning-secondary-foreground#ffd040 (yellow-150)Warning alert text (dark variant)

Critical Feedback (Red)

VariableColorPurpose
--feedback-critical-background#d70023 (red-550)Critical/error alert background (filled)
--feedback-critical-foreground#ffffff (gray-000)Critical/error alert text (filled)
--feedback-critical-secondary-background#ffffff (gray-000)Critical/error alert background (outlined)
--feedback-critical-secondary-foreground#ef0028 (red-500)Critical/error alert text (outlined)

Shadow Tokens

Box shadow and drop shadow tokens for elevation and depth.

Box Shadows

VariableValuePurpose
--shadow-default0px 1px 3px 0px rgba(0, 0, 0, 0.10), 0px 1px 2px 0px rgba(0, 0, 0, 0.06)Default shadow for cards and elevated elements
--shadow-small0px 1px 2px 0px rgba(0, 0, 0, 0.05)Small shadow for subtle elevation
--shadow-medium0px 4px 6px -1px rgba(0, 0, 0, 0.10), 0px 2px 4px -1px rgba(0, 0, 0, 0.06)Medium shadow for dropdowns and popovers
--shadow-large0px 10px 15px -3px rgba(0, 0, 0, 0.10), 0px 4px 6px -2px rgba(0, 0, 0, 0.05)Large shadow for modals and prominent elements

Drop Shadows (for filter property)

VariableValuePurpose
--dropshadow-defaultdrop-shadow(0px 1px 3px rgba(0, 0, 0, 0.10)) drop-shadow(0px 1px 2px rgba(0, 0, 0, 0.06))Default drop shadow filter
--dropshadow-smdrop-shadow(0px 1px 2px rgba(0, 0, 0, 0.05))Small drop shadow filter
--dropshadow-mddrop-shadow(0px 4px 6px rgba(0, 0, 0, 0.10)) drop-shadow(0px 2px 4px rgba(0, 0, 0, 0.06))Medium drop shadow filter
--dropshadow-lrgdrop-shadow(0px 10px 15px rgba(0, 0, 0, 0.10)) drop-shadow(0px 4px 6px rgba(0, 0, 0, 0.05))Large drop shadow filter

Other Tokens

Focus and Disabled States

VariableValuePurpose
--focus-color#c6c6c6 (gray-200)Focus ring color
--focus-widthvar(--border-width-300)Focus ring width (3px)
--focus-borderoklch(70.8% 0 0)Focus border color
--disabledvar(--opacity-60)Opacity for disabled elements (60%)

Animation/Transition (Reduced Motion Support)

VariableValuePurpose
--tx-svariesShort transition duration (0s if prefers-reduced-motion)
--tx-mvariesMedium transition duration (0s if prefers-reduced-motion)
--tx-lvariesLong transition duration (0s if prefers-reduced-motion)
--tx-xvariesExtra long transition duration (0s if prefers-reduced-motion)
--tx-xxvariesExtra extra long transition duration (0s if prefers-reduced-motion)
--interactive-feedbacktranslateY(-.075em) scale(1.01)Interactive element transform (none if prefers-reduced-motion)

Usage Guidelines

Semantic Tokens vs. Color Ramp

  • Use semantic tokens (surface, action, control, feedback) for UI components and application styling. These tokens provide consistent meaning and adapt automatically if themes change.
  • Use color ramp tokens (--sst-color-neutral-, --sst-color-orange-, etc.) sparingly, typically only when defining custom semantic tokens or brand-specific elements.

Example Usage

/* ✅ Good - Using semantic tokens */
.button {
  background-color: var(--action-default-background);
  color: var(--action-default-foreground);
  border-radius: var(--corner-radius-75);
  padding: var(--space-200) var(--space-400);
}
 
/* ⚠️ Use with caution - Direct color ramp usage */
.brand-highlight {
  background-color: var(--sst-color-orange-400);
}
 
/* ✅ Good - Using spacing and typography tokens */
.card {
  padding: var(--space-500);
  font-size: var(--font-size-200);
  line-height: var(--line-height-300);
  border-radius: var(--corner-radius-200);
  box-shadow: var(--shadow-default);
}

Color Scheme Support

Currently, styles only supports light mode. The :root element uses color-scheme: only light. Dark mode support may be added in future versions.


Additional Resources

  • Styles Repository
  • Installation Guide
  • Component Documentation
States and State ManagementGetting Started

On This Page

Font Size TokensFont Weight TokensSpacing TokensCorner Radius TokensLine Height TokensBorder Width TokensOpacity TokensTint TokensShade TokensColor Ramp TokensNeutral (Gray) ColorsNeutral Warm (Gray Warm) ColorsOrange Colors (Brand Primary)Yellow ColorsBlue ColorsRed ColorsGreen ColorsPurple ColorsPink ColorsSurface TokensPrimary SurfaceSecondary SurfaceAuxiliary SurfaceModal SurfaceAction TokensDefault Actions (Primary Buttons)Selected StateSecondary ActionsDestructive ActionsOutline ActionsGhost ActionsLink ActionsControl TokensFeedback TokensDefault FeedbackSecondary FeedbackOutline FeedbackInfo Feedback (Blue)Success Feedback (Green)Warning Feedback (Yellow)Critical Feedback (Red)Shadow TokensBox ShadowsDrop Shadows (for filter property)Other TokensFocus and Disabled StatesAnimation/Transition (Reduced Motion Support)Usage GuidelinesSemantic Tokens vs. Color RampExample UsageColor Scheme SupportAdditional Resources

Contribute

  • Report an issue
  • Request a feature
  • Edit this page