Skip to main content
  • Sass tokens are designed to be consumed via the @use syntax, as demonstrated below.
  • Sass tokens are built to @use anywhere you need them, without introducing any side-effects.

If you're interested in incorporating Bolt's design tokens into a third-party front end framework such as Angular Material, please refer to Bolt Adapters documentation.

Consuming Sass tokens, via the "Bolt" namespace:
@use "path/to/bolt/tokens" as Bolt;

.foobar {
  background: Bolt.$theme-background;
  border: 1px solid Bolt.$theme-outline;
  color: Bolt.$theme-onBackground;
}

Consumption via Sass @import is not recommended.

  • It can introduce subtle bugs in your code via unwanted side-effects.
  • Sass @import has been deprecated for removal in Sass 2.0

Bolt provides many runtime-fluid CSS custom properties whose values adapt to various configurations and styling contexts.

Unless explicitly documented, CSS custom properties should not be overridden in downstream project styles.

  • CSS custom properties are available via Bolt's precompiled CSS styles.
  • CSS custom properties are at the center of Bolt theming capabilities like Density, Global theming, and Contextual theming.
Consuming CSS custom properties:
@use "path/to/bolt/css";

body {
  background: var(--bolt-theme-surface);
  color: var(--bolt-theme-onSurface);
}

.custom-link {
  color: var(--bolt-context-link);
}

Only those tokens that are documented below are supported by Bolt for consumer use.

There are numerous undocumented tokens that may be available, but aren't meant for public consumption.

Spacing tokens are best applied to properties that configure white space and relative positioning.

  • Sass tokens have a constant, fixed value.
  • CSS tokens are affected by global density configuration
  • CSS tokens support
Token Details
3xs

3XS white space

Since
Default
2px
Sass
$space-3xs
CSS
--bolt-space-3xs
2xs

2XS white space

Default
4px
Sass
$space-2xs
CSS
--bolt-space-2xs
xs

XS white space

Default
8px
Sass
$space-xs
CSS
--bolt-space-xs
sm

SM white space

Default
12px
Sass
$space-sm
CSS
--bolt-space-sm
md

MD white space

Default
16px
Sass
$space-md
CSS
--bolt-space-md
lg

LG white space

Default
20px
Sass
$space-lg
CSS
--bolt-space-lg
xl

XL white space

Default
24px
Sass
$space-xl
CSS
--bolt-space-xl
2xl

2XL white space

Default
32px
Sass
$space-2xl
CSS
--bolt-space-2xl
3xl

3XL white space

Default
40px
Sass
$space-3xl
CSS
--bolt-space-3xl
4xl

4XL white space

Default
48px
Sass
$space-4xl
CSS
--bolt-space-4xl

Breakpoint tokens define the smallest viewport width for a given responsive breakpoint.

Token Details
2xs

Extra extra small (2XS) screens (e.g., wearables, smart phones in portrait orientation, etc.)

Value
0px
Sass
$screen-2xs
xs

Extra small screens (e.g., smart phones)

Value
360px
Sass
$screen-xs
sm

Small screens (e.g., smart phones in landscape)

Value
576px
Sass
$screen-sm
md

Medium screens (tablets, high-end smart phones in landscape, etc.)

Value
768px
Sass
$screen-md
lg

Large screens (laptops, desktop monitors, tablets in landscape, etc.)

Value
992px
Sass
$screen-lg
xl

HD displays (720p)

Value
1200px
Sass
$screen-xl
2xl

Wide HD displays

Value
1444px
Sass
$screen-2xl
3xl

Full HD displays (1080p)

Value
1752px
Sass
$screen-3xl

Radius tokens are best applied to round over sharp corners.

Token Details
default

default border radius

Value
4px
Sass
$radius-default

Elevation tokens are provided for logical z-index configuration (larger values placed closer than smaller values).

Elevation tokens do not apply nor correlate to any drop shadow implementations.

Token Details
low

Z-index value for minimal elevation

Value
1
Sass
$elevation-low
med

Z-index value for non-modal elevation

Value
50
Sass
$elevation-med
sticky

Z-index value for sticky content

Value
100
Sass
$elevation-sticky
overlay

Z-index value for overlay container

Value
500
Sass
$elevation-overlay
overlayContent

Z-index value for overlay content

Value
510
Sass
$elevation-overlayContent
top

Z-index value for highest elevation

Value
999
Sass
$elevation-top

Timing tokens are best applied as the duration configuration of animations, transitions, and other movement-based interactions.

Token Details
slowest

slowest time duration

Value
1500ms
Sass
$time-slowest
slow

slow time duration

Value
650ms
Sass
$time-slow
default

default time duration

Value
350ms
Sass
$time-default
fast

fast time duration

Value
150ms
Sass
$time-fast
Hover over an example to preview a timing token.

Bolt's color tokens include two dynamic sets of colors and one static set, for use in different scenarios.

Color tokens can be used anywhere a CSS color is applicable.

As of Bolt 7.11.0, Bolt's colors include updated values and an expanded palette in alignment with Nationwide Brand updates.

Context colors (dynamic)
Respond to both contextual theme (background color) and global theme (light/dark mode).
Use when styling elements whose visibility would be affected by a background color.
For example, text or icons.
Theme colors (dynamic)
Respond only to global theme (light/dark mode).
Use when styling elements that should not be affected by the background color of a parent.
For example, a tile's surface follows global theme, regardless of local context.
Brand palette colors (static)
These colors reflect the Nationwide brand.
They have a constant value and do not change with theme nor context.

For more information, see contextual themes.

Background color for a contextual container

Accessible foreground color for use on a context.surface background

MUST pass 4.5:1 contrast vs context.surface token

Lower-emphasis, accessible foreground color for use on a context.surface background

MUST pass 4.5:1 contrast vs context.surface token

Stroke color used for important boundaries within a contextual container

MUST pass 3:1 contrast vs context.surface token

Stroke color used for decorative elements within a contextual container

MAY pass 3:1 contrast vs context.surface token

Default color used to indicate that an element within a contextual container has interactive focus

MUST pass 3:1 contrast vs context.surface token

Default foreground color for hyperlinks within a contextual container

MUST pass 4.5:1 contrast vs context.surface token

Generic accent color for use within a contextual container

MUST pass 3:1 contrast vs context.surface token

Background color for emphasized interaction states of context.accent themed elements within a contextual container

MUST pass 4.5:1 contrast vs context.onAccent token

Background color for strongly emphasized interaction states of context.accent themed elements within a contextual container

MUST pass 4.5:1 contrast vs context.onAccent token

Accessible foreground color for use on any context.accent themed background within a contextual container

MUST pass 4.5:1 contrast vs context.accent, context.accentHigh, and context.accentHighest tokens

For more information, see global theme.

Sass tokens have a static value and are forever coupled to the default theme.

CSS tokens must be used to support non-default themes like dark mode.

Default background color of an application

Container background color with lowest emphasis against theme.surface token

Container background color with low emphasis against theme.surface token

Container background color with medium emphasis against theme.surface token

Container background color with high emphasis against theme.surface token

Container background color with highest emphasis against theme.surface token

Darkest surface color

2nd-darkest surface color

Surface color midway between surfaceDimmest and surfaceBrightest

2nd-brightest surface color

Brightest surface color

Default background color for inputs

Input background color for emphasized interaction states

Input background color for strongly emphasized interaction states

Accessible foreground color for use on theme-based surfaces

For best results in localized theming contexts, use context.onSurface instead.

Lower-emphasis, accessible foreground color for use on theme-based surfaces

For best results in localized theming contexts, use context.onSurfaceVariant instead.

Background color that highly contrasts against theme.surface token

Accessible foreground color for use on theme.inverseSurface background

Default stroke color used for important boundaries, like a text field outline

This color is not guaranteed to pass accessible color contrast against theme-based accents.

This color should pass accessible color contrast against theme-based surfaces.

For best results in localized theming contexts, use context.outline instead.

Default stroke color used for decorative elements, like dividers

This color is not guaranteed to pass accessible color contrast against theme-based surfaces or accents.

For best results in localized theming contexts, use context.outlineVariant instead.

Default color used to indicate that an element has interactive focus

For best results in localized theming contexts, use context.focus instead.

Color used for drop shadows applied to elevated elements like tooltips and menus

Background color used for full-page, semi-transparent overlays arranged between page content and modal containers

Default scrim opacity

Default foreground color for hyperlinks

For best results in localized theming contexts, use context.link instead.

Generic accent color

For best results in localized theming contexts, use context.accent instead.

Background color for emphasized interaction states of theme.accent themed elements

For best results in localized theming contexts, use context.accentHigh instead.

Background color for strongly emphasized interaction states of theme.accent themed elements

For best results in localized theming contexts, use context.accentHighest instead.

Accessible foreground color for use on any theme.accent themed background

For best results in localized theming contexts, use context.onAccent instead.

May also be used as an outline around a theme.accent background

Primary brand accent color

Background color for emphasized interaction states of theme.primary themed elements

Background color for strongly emphasized interaction states of theme.primary themed elements

Color for actionable elements on a theme.inverseSurface background

Accessible foreground color for use on a theme.primary themed background

May also be used as an outline around a theme.primary background

Background color for a theme.primary themed container

Accessible foreground color for use on a theme.primaryContainer background

Secondary brand accent color

Background color for emphasized interaction states of theme.secondary themed elements

Background color for strongly emphasized interaction states of theme.secondary themed elements

Accessible foreground color for use on a theme.secondary themed background

May also be used as an outline around a theme.secondary background

Background color for a theme.secondary themed container

Accessible foreground color for use on a theme.secondaryContainer background

Tertiary brand accent color

Background color for emphasized interaction states of theme.tertiary themed elements

Background color for strongly emphasized interaction states of theme.tertiary themed elements

Accessible foreground color for use on a theme.tertiary themed background

May also be used as an outline around a theme.tertiary background

Background color for a theme.tertiary themed container

Accessible foreground color for use on a theme.tertiaryContainer background

Error status color

Accessible foreground color for use on a theme.error background

May also be used as an outline around a theme.error background

Background color for a theme.error themed container

Accessible foreground color for use on a theme.errorContainer background

Warning status color

Accessible foreground color for use on a theme.warning background

May also be used as an outline around a theme.warning background

Background color for a theme.warning themed container

Accessible foreground color for use on a theme.warningContainer background

Info status color

Accessible foreground color for use on a theme.info background

May also be used as an outline around a theme.info background

Background color for a theme.info themed container

Accessible foreground color for use on a theme.infoContainer background

Success status color

Accessible foreground color for use on a theme.success background

May also be used as an outline around a theme.success background

Background color for a theme.success themed container

Accessible foreground color for use on a theme.successContainer background

Brand palette tokens represent brand-compliant colors for use in Bolt-based UIs.

  • Brand palette tokens have a static value (regardless of format).
  • "On" tokens are provided for each brand color.

Palette / Vibrant Blue

Accessible foreground color on a palette.vibrantBlue background

Palette / Dark Vibrant Blue

Accessible foreground color on a palette.darkVibrantBlue background

Palette / White

Accessible foreground color on a palette.white background

Palette / N Crop Blue

Accessible foreground color on a palette.nCropBlue background

Palette / Dark Blue

Accessible foreground color on a palette.darkBlue background

Palette / Medium Blue

Accessible foreground color on a palette.mediumBlue background

Palette / Light Blue

Accessible foreground color on a palette.lightBlue background

Palette / Ultralight Blue

Accessible foreground color on a palette.ultralightBlue background

Palette / Mint

Accessible foreground color on a palette.mint background

Palette / Dark Mint

Accessible foreground color on a palette.darkMint background

Palette / Sea Blue

Accessible foreground color on a palette.seaBlue background

Palette / Dark Sea Blue

Accessible foreground color on a palette.darkSeaBlue background

Palette / Lavender

Accessible foreground color on a palette.lavender background

Palette / Deep Purple

Accessible foreground color on a palette.deepPurple background

Palette / Dark Green

Accessible foreground color on a palette.darkGreen background

Palette / Green

Accessible foreground color on a palette.green background

Palette / Sunburst Orange

Accessible foreground color on a palette.sunburstOrange background

Palette / Burnt Orange

Accessible foreground color on a palette.burntOrange background

Palette / Lemon Yellow

Accessible foreground color on a palette.lemonYellow background

Palette / Wheat

Accessible foreground color on a palette.wheat background

Palette / Charcoal

Accessible foreground color on a palette.charcoal background

Palette / Ultralight Gray

Accessible foreground color on a palette.ultralightGray background

Palette / Light Gray

Accessible foreground color on a palette.lightGray background

Palette / Medium Gray

Accessible foreground color on a palette.mediumGray background

Palette / Dark Gray

Accessible foreground color on a palette.darkGray background

Palette / Medium Fossil

Accessible foreground color on a palette.mediumFossil background

Palette / Light Fossil

Accessible foreground color on a palette.lightFossil background

Palette / Ultralight Fossil

Accessible foreground color on a palette.ultralightFossil background

Palette / Dark Fossil

Accessible foreground color on a palette.darkFossil background

Deprecated tokens will be removed in a future major release of Bolt.

Palette / Cherry Red

Accessible foreground color on a palette.cherryRed background

Palette / Mustard

Accessible foreground color on a palette.mustard background

Palette / Pale Gray

Accessible foreground color on a palette.paleGray background

Palette / Fossil

Accessible foreground color on a palette.fossil background

Display settings

Note: not all settings persist across pages

Default Compact (-1) Sparse (+1) XL (default) 2XL 3XL Default Min Max Light (default) System Dark Branded (default) Unbranded