Color
Background
color.bg4 tokensPage backgrounds. default for the main canvas, subtle for side panels and zones that sit behind content.
- Page canvas.neutral 0 · 950
Base styles
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css. - Recessed areas: table headers, code blocks, footers.neutral 100 · 900
- Tracks, skeletons, neutral fills.neutral 200 · 800
- Large flat color blocks that open a space: the home hero, section page headers, the Studio greeting, onboarding.primary 200 · 900Unused
Surface
color.surface8 tokensAnything that sits on the page: cards, inputs, menus. raised is for surfaces that also carry elevation.
- Panels, cards, inputs.neutral 0 · 900
10 components
- Floating layers: popovers, menus, dialogs, toasts.neutral 0 · 800
- Hover fill for rows, menu items, ghost controls.neutral 100 · 800
10 components
- Hover fill inside a raised surface.neutral 100 · 700
- Pressed fill.neutral 200 · 700
6 components
- Selected rows and items.accent 50 · 950
3 components
Components
- Tooltips and inverse chips.neutral 900 · 100
- Deep Harbor in both themes, for a mode the whole page is in (Banner appearance strong).primary 700
1 component
Components
Text
color.text8 tokensText and icons. default for body copy, muted for secondary info, disabled only for disabled controls, inverse on dark or brand fills, on-solid on feedback solid fills.
Approve the token change text.default
Edited 2 hours ago by Florian text.muted
Not available in compact density text.disabled
Read the contrast rules on hover text.link
3 matches in this file text.signal
Approve the token change text.default
Edited 2 hours ago by Florian text.muted
Not available in compact density text.disabled
Read the contrast rules on hover text.link
3 matches in this file text.signal
- Body text and icons.neutral 900 · 50
38 components
Components
- Accordion
- Alert
- Avatar
- Badge
- Banner
- Breadcrumb
- Button
- Card
- Checkbox
- CheckboxGroup
- Checklist
- ChoiceCard
- CodeBlock
- Combobox
- Dialog
- Drawer
- EmptyState
- Field
- Form
- Input
- Menu
- NumberField
- PageHeader
- Pagination
- Popover
- Progress
- RadioGroup
- SegmentedControl
- Select
- SidebarNav
- Slider
- Switch
- Table
- Tabs
- Tag
- Textarea
- Toast
- TokenValue
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css. - Secondary text.neutral 600 · 400
- Disabled text.neutral 400 · 600
- Text on surface.inverse.neutral 0 · 950
- Text and icons on feedback and danger solids.neutral 0
- Links in running text.link 700 · 300
- Links on hover.link 800 · 200
- Signal-colored text (match highlights, current step).accent 700 · 300
1 component
Components
Border
color.border5 tokensDividers and outlines. default for quiet separators, strong for control edges that must be found.
- Hairlines: card edges, dividers.neutral 200 · 800
- Row separators inside tables and lists.neutral 100 · 900
1 component
Components
- Edges that identify a control (inputs, checkboxes, switches).neutral 500
14 components
Components
- Accordion
- Checkbox
- ChoiceCard
- Combobox
- Drawer
- Input
- Kbd
- Link
- NumberField
- RadioGroup
- Select
- Slider
- Switch
- Textarea
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css. - A hairline that must read before the default one: hovered cards, group dividers, dashed placeholders.neutral 300 · 700
- Control edge on hover.neutral 600 · 400
10 components
Action
color.action18 tokensInteractive controls only. Never use action colors for decoration, or users will try to click it.
- Primary action fill (steel ink in the bridge brand).primary 700 · 300
- Primary action fill on hover.primary 800 · 200
1 component
Components
- Primary action fill when pressed.primary 900 · 100
1 component
Components
- Primary action label.neutral 0 · primary 950
1 component
Components
- Secondary action fill.neutral 0 · 900
1 component
Components
- Secondary action fill on hover.neutral 100 · 800
1 component
Components
- Secondary action fill when pressed.neutral 200 · 700
1 component
Components
- Secondary action label.neutral 900 · 50
1 component
Components
- Secondary action edge.neutral 300 · 600
1 component
Components
- Ghost action fill on hover.neutral 100 · 800
2 components
Components
- Ghost action fill when pressed.neutral 200 · 700
2 components
Components
- Ghost action label.neutral 800 · 100
1 component
Components
- Danger action fill.danger 600
1 component
Components
- Danger action fill on hover.danger 700
1 component
Components
- Danger action fill when pressed.danger 800
1 component
Components
- Danger action label.neutral 0
1 component
Components
- Disabled action fill.neutral 100 · 800
10 components
- Disabled action label.neutral 400 · 600
4 components
Components
Controls
color.control6 tokens- Unchecked checkbox, radio, input fill.neutral 0 · 900
7 components
- Checked checkbox, radio, switch track.primary 700 · 300
9 components
Components
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css. - Checked control fill on hover.primary 800 · 200
5 components
Components
- Check mark, radio dot, switch thumb when checked.neutral 0 · primary 950
6 components
- Unchecked switch track and slider rail edge.neutral 500
1 component
Components
- Switch thumb and slider handle.neutral 0 · 50
Signal
color.signal2 tokensSearch: bg.default signal.subtle · text.signal
signal.defaultSearch: bg.default signal.subtle · text.signal
signal.default- The signal: active indicators, progress, slider range.accent 600 · 400
- Soft signal fill: highlighted search matches.accent 100 · 900
1 component
Components
Overlay
color.overlay1 token- Backdrop behind dialogs and drawers.alpha steel-48 · black-64
Feedback
color.feedback21 tokensStatus and system messages. bg + text + border for inline messages, solid for compact labels like badges. Always pair with words.
Figma changes arrive as a pull request
Contrast checks pass
Unused tokens show up in Checks
A failing contrast pair blocks the release
Figma changes arrive as a pull request
Contrast checks pass
Unused tokens show up in Checks
A failing contrast pair blocks the release
- Fill of a status with no tone (neutral Badge, grey status chips): one step off the page and off cards in both themes.neutral 100 · 800
1 component
Components
- Success message background.success 50 · 950
- Success message edge.success 200 · 800
- Success message text.success 700 · 300
- Success message icon.success 600 · 400
- Success message solid fill, for compact labels like badges.success 600
1 component
Components
- Warning message background.warning 50 · 950
- Warning message edge.warning 200 · 800
- Warning message text.warning 700 · 300
- Warning message icon.warning 600 · 400
- Warning message solid fill, for compact labels like badges.warning 600
1 component
Components
- Danger message background.danger 50 · 950
- Danger message edge.danger 200 · 800
- Danger message text.danger 700 · 300
7 components
- Danger message icon.danger 600 · 400
- Danger message solid fill, for compact labels like badges.danger 600
1 component
Components
- Info message background.info 50 · 950
- Info message edge.info 200 · 800
- Info message text.info 700 · 300
1 component
Components
- Info message icon.info 600 · 400
- Info message solid fill, for compact labels like badges.info 600
1 component
Components
Chart
color.chart9 tokens- Series 1, the signal hue: the series a chart is about.accent 500 · 400Unused
- Series 2, the info hue.info 600 · 400Unused
- Series 3, the success hue.success 600 · 400Unused
- Series 4, the warning hue.warning 600 · 400Unused
- Series 5, the categorical extra hue.categorical 600 · 400Unused
- Series 6, neutral: "other" and baselines.neutral 500 · 400Unused
- Unfilled part of a bar, gauge or donut.neutral 100 · 800Unused
- Grid lines and axis rules.neutral 200 · 800Unused
- Axis labels and tick text.neutral 600 · 400Unused
Selection
color.selection1 tokenSemantic tokens give each color a job. Design and build with semantic tokens only, so a brand can repaint every screen at once.
selection.bgSemantic tokens give each color a job. Design and build with semantic tokens only, so a brand can repaint every screen at once.
selection.bg- Text selection highlight (::selection).accent 100 · 800
Base styles
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css.
Agent
color.agent1 token- Tile behind the AI agent mark (Avatar kind agent): the Harbor zone color, with the mark in action.primary.bg (Deep Harbor), the zone pair the build already checks.primary 200 · 900
1 component
Components
Illustration
color.illustration1 token- Behind line drawings (the Avatar illustrated faces): the Harbor zone color, kept light in dark so the black lines stay readable.primary 200 · 300
1 component
Components
Focus
focus1 tokenKeyboard focus ring. Shared by every focusable component so focus looks the same everywhere.
- Keyboard focus ring.accent 700 · 400
25 components
Components
- Accordion
- Breadcrumb
- Button
- Card
- Checkbox
- CodeBlock
- Combobox
- Drawer
- Form
- Input
- Link
- Menu
- NumberField
- Pagination
- RadioGroup
- SegmentedControl
- Select
- SidebarNav
- Slider
- Switch
- Table
- Tabs
- Tag
- Textarea
- Toast
Base styles
Read by
base.css, the global stylesheet apps import once with@bridge-ds/react/styles.css.
Primitive palette
Raw values. Components never use these directly; semantic tokens point to them. Use them when you propose a new semantic token, not when you design a screen.
white
black
steel
orange
crimson
teal
ochre
cable
slate
sea
plum
ink
harbor
alpha
Want to know exactly who uses a value? Paste a hex in search, or filter All tokens.