Class Reference

Generated from dist/sulphuris.css โ€” 1231 base classes across 82 properties. Rebuild with npm run build to refresh.

Direction and breakpoint variants are not listed row by row. A โœ… in the Dir or Bp column means that class also exists in the forms described below.

Directions

The direction token is glued to the prefix, before the value: .m-16 โ†’ .mx-16.

Token Sets Example
t top .mt-16
r right .mr-16
b bottom .mb-16
l left .ml-16
x right, left .mx-16
y top, bottom .my-16

Breakpoints

The breakpoint token sits between the prefix and the value: .m-16 โ†’ .m-md-16. Combined with a direction: .mx-md-16. All queries are min-width, so the bare class is the mobile-first default.

Token Media query Example
sm min-width: 420px .m-sm-16
md min-width: 768px .m-md-16
lg min-width: 1024px .m-lg-16
xl min-width: 1366px .m-xl-16
xxl min-width: 1680px .m-xxl-16

Utilities

align-items

// src/core/layout/_flex.scss:14
@include generators.utility-class-generator('align', 'align-items', ('normal', 'center', 'start', 'end', 'baseline', 'stretch'));
Class Declarations Dir Bp
.align-baseline align-items: baseline โ€” โ€”
.align-center align-items: center โ€” โ€”
.align-end align-items: end โ€” โ€”
.align-normal align-items: normal โ€” โ€”
.align-start align-items: start โ€” โ€”
.align-stretch align-items: stretch โ€” โ€”

align-self

// src/core/layout/_flex.scss:16
@include generators.utility-class-generator('align-self', 'align-self', ('normal', 'center', 'start', 'end', 'baseline', 'stretch'));
Class Declarations Dir Bp
.align-self-baseline align-self: baseline โ€” โ€”
.align-self-center align-self: center โ€” โ€”
.align-self-end align-self: end โ€” โ€”
.align-self-normal align-self: normal โ€” โ€”
.align-self-start align-self: start โ€” โ€”
.align-self-stretch align-self: stretch โ€” โ€”

appearance

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.appearance-none -webkit-appearance: none; appearance: none โ€” โ€”

aspect-ratio

// src/core/layout/_aspect.scss:4
@include generators.utility-class-generator((
  prefix: 'aspect',
  property: 'aspect-ratio',
  values: (
    '1x1': '1 / 1',
    '4x3': '4 / 3',
    '3x2': '3 / 2',
    '16x9': '16 / 9',
    '21x9': '21 / 9',
    '9x16': '9 / 16'
  ),
  responsive: false
));
Class Declarations Dir Bp
.aspect-1x1 aspect-ratio: 1 / 1 โ€” โ€”
.aspect-3x2 aspect-ratio: 3 / 2 โ€” โ€”
.aspect-4x3 aspect-ratio: 4 / 3 โ€” โ€”
.aspect-9x16 aspect-ratio: 9 / 16 โ€” โ€”
.aspect-16x9 aspect-ratio: 16 / 9 โ€” โ€”
.aspect-21x9 aspect-ratio: 21 / 9 โ€” โ€”

background

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.bg-contain background-position: center; background-repeat: no-repeat; background-size: contain โ€” โ€”
.bg-cover background-position: center; background-repeat: no-repeat; background-size: cover โ€” โ€”

background-color

// src/core/style/_color.scss:53
@include generators.utility-class-generator((
  prefix: 'bg',
  property: 'background-color',
  values: $colors,
  responsive: false,
  variable: 'color'
));

Config values it reads:

// src/core/_config.scss:124
$colors: (
  foreground: #1a1a1d,
  background: #fff,
  black: #1a1a1d,
  white: #fff,
  primary: #f6c026,
  // Its own token rather than `primary`, because everything that reads it โ€”
  // links, focus rings, an active control โ€” is foreground and has a contrast
  // floor a brand color does not: `primary` is free to be a yellow that only
  // ever sits behind text, while this has to stay readable as text on
  // `background`. 8.6:1 here, 8:1 on the dark counterpart below.
  // Called `link` before 4.1, which named one of those uses and read as wrong
  // for the others; `--color-link` and `.text-link` still resolve, see
  // style/_color.scss.
  accent: #0f4eb3,
  // Status roles. Every value is a grade that $palettes already generates โ€”
  // these name one, they do not add a hue, so a project that retunes `red`
  // and re-picks `danger` from the new ladder stays in one palette.
  // They are label and body text on `background`, not just a border on a
  // tinted callout, so each clears 4.5:1 in its own mode. Since $palette-grades
  // pins every palette to the same lightness ladder, that is now one grade for
  // all four rather than four hand-picked ones: 600 on white, and 400 on the
  // dark background โ€” see the `dark` entry in $color-modes below.
  danger: #c40d20,   // red-600,    6.1:1
  success: #077f1e,  // green-600,  5.2:1
  warning: #98560e,  // orange-600, 5.7:1
  info: #2563ca      // blue-600,   5.7:1
);

// src/core/_config.scss:193
$palettes: (
  gray: #8c8c8e,
  yellow: #f6c026,
  orange: #f4912a,
  red: #e41328,
  violet: #752a6f,
  purple: #472573,
  indigo: #3f00ff,
  blue: #0f4eb3,
  teal: #00a4a4,
  green: #10af2e,
  lime: #a4c400,
);
Class Declarations Dir Bp
.bg-accent background-color: var(--color-accent) โ€” โ€”
.bg-background background-color: var(--color-background) โ€” โ€”
.bg-black background-color: var(--color-black) โ€” โ€”
.bg-blue-100 background-color: var(--color-blue-100) โ€” โ€”
.bg-blue-200 background-color: var(--color-blue-200) โ€” โ€”
.bg-blue-300 background-color: var(--color-blue-300) โ€” โ€”
.bg-blue-400 background-color: var(--color-blue-400) โ€” โ€”
.bg-blue-500 background-color: var(--color-blue-500) โ€” โ€”
.bg-blue-600 background-color: var(--color-blue-600) โ€” โ€”
.bg-blue-700 background-color: var(--color-blue-700) โ€” โ€”
.bg-blue-800 background-color: var(--color-blue-800) โ€” โ€”
.bg-blue-900 background-color: var(--color-blue-900) โ€” โ€”
.bg-danger background-color: var(--color-danger) โ€” โ€”
.bg-foreground background-color: var(--color-foreground) โ€” โ€”
.bg-gray-100 background-color: var(--color-gray-100) โ€” โ€”
.bg-gray-200 background-color: var(--color-gray-200) โ€” โ€”
.bg-gray-300 background-color: var(--color-gray-300) โ€” โ€”
.bg-gray-400 background-color: var(--color-gray-400) โ€” โ€”
.bg-gray-500 background-color: var(--color-gray-500) โ€” โ€”
.bg-gray-600 background-color: var(--color-gray-600) โ€” โ€”
.bg-gray-700 background-color: var(--color-gray-700) โ€” โ€”
.bg-gray-800 background-color: var(--color-gray-800) โ€” โ€”
.bg-gray-900 background-color: var(--color-gray-900) โ€” โ€”
.bg-green-100 background-color: var(--color-green-100) โ€” โ€”
.bg-green-200 background-color: var(--color-green-200) โ€” โ€”
.bg-green-300 background-color: var(--color-green-300) โ€” โ€”
.bg-green-400 background-color: var(--color-green-400) โ€” โ€”
.bg-green-500 background-color: var(--color-green-500) โ€” โ€”
.bg-green-600 background-color: var(--color-green-600) โ€” โ€”
.bg-green-700 background-color: var(--color-green-700) โ€” โ€”
.bg-green-800 background-color: var(--color-green-800) โ€” โ€”
.bg-green-900 background-color: var(--color-green-900) โ€” โ€”
.bg-indigo-100 background-color: var(--color-indigo-100) โ€” โ€”
.bg-indigo-200 background-color: var(--color-indigo-200) โ€” โ€”
.bg-indigo-300 background-color: var(--color-indigo-300) โ€” โ€”
.bg-indigo-400 background-color: var(--color-indigo-400) โ€” โ€”
.bg-indigo-500 background-color: var(--color-indigo-500) โ€” โ€”
.bg-indigo-600 background-color: var(--color-indigo-600) โ€” โ€”
.bg-indigo-700 background-color: var(--color-indigo-700) โ€” โ€”
.bg-indigo-800 background-color: var(--color-indigo-800) โ€” โ€”
.bg-indigo-900 background-color: var(--color-indigo-900) โ€” โ€”
.bg-info background-color: var(--color-info) โ€” โ€”
.bg-lime-100 background-color: var(--color-lime-100) โ€” โ€”
.bg-lime-200 background-color: var(--color-lime-200) โ€” โ€”
.bg-lime-300 background-color: var(--color-lime-300) โ€” โ€”
.bg-lime-400 background-color: var(--color-lime-400) โ€” โ€”
.bg-lime-500 background-color: var(--color-lime-500) โ€” โ€”
.bg-lime-600 background-color: var(--color-lime-600) โ€” โ€”
.bg-lime-700 background-color: var(--color-lime-700) โ€” โ€”
.bg-lime-800 background-color: var(--color-lime-800) โ€” โ€”
.bg-lime-900 background-color: var(--color-lime-900) โ€” โ€”
.bg-link background-color: var(--color-link) โ€” โ€”
.bg-orange-100 background-color: var(--color-orange-100) โ€” โ€”
.bg-orange-200 background-color: var(--color-orange-200) โ€” โ€”
.bg-orange-300 background-color: var(--color-orange-300) โ€” โ€”
.bg-orange-400 background-color: var(--color-orange-400) โ€” โ€”
.bg-orange-500 background-color: var(--color-orange-500) โ€” โ€”
.bg-orange-600 background-color: var(--color-orange-600) โ€” โ€”
.bg-orange-700 background-color: var(--color-orange-700) โ€” โ€”
.bg-orange-800 background-color: var(--color-orange-800) โ€” โ€”
.bg-orange-900 background-color: var(--color-orange-900) โ€” โ€”
.bg-primary background-color: var(--color-primary) โ€” โ€”
.bg-purple-100 background-color: var(--color-purple-100) โ€” โ€”
.bg-purple-200 background-color: var(--color-purple-200) โ€” โ€”
.bg-purple-300 background-color: var(--color-purple-300) โ€” โ€”
.bg-purple-400 background-color: var(--color-purple-400) โ€” โ€”
.bg-purple-500 background-color: var(--color-purple-500) โ€” โ€”
.bg-purple-600 background-color: var(--color-purple-600) โ€” โ€”
.bg-purple-700 background-color: var(--color-purple-700) โ€” โ€”
.bg-purple-800 background-color: var(--color-purple-800) โ€” โ€”
.bg-purple-900 background-color: var(--color-purple-900) โ€” โ€”
.bg-red-100 background-color: var(--color-red-100) โ€” โ€”
.bg-red-200 background-color: var(--color-red-200) โ€” โ€”
.bg-red-300 background-color: var(--color-red-300) โ€” โ€”
.bg-red-400 background-color: var(--color-red-400) โ€” โ€”
.bg-red-500 background-color: var(--color-red-500) โ€” โ€”
.bg-red-600 background-color: var(--color-red-600) โ€” โ€”
.bg-red-700 background-color: var(--color-red-700) โ€” โ€”
.bg-red-800 background-color: var(--color-red-800) โ€” โ€”
.bg-red-900 background-color: var(--color-red-900) โ€” โ€”
.bg-success background-color: var(--color-success) โ€” โ€”
.bg-teal-100 background-color: var(--color-teal-100) โ€” โ€”
.bg-teal-200 background-color: var(--color-teal-200) โ€” โ€”
.bg-teal-300 background-color: var(--color-teal-300) โ€” โ€”
.bg-teal-400 background-color: var(--color-teal-400) โ€” โ€”
.bg-teal-500 background-color: var(--color-teal-500) โ€” โ€”
.bg-teal-600 background-color: var(--color-teal-600) โ€” โ€”
.bg-teal-700 background-color: var(--color-teal-700) โ€” โ€”
.bg-teal-800 background-color: var(--color-teal-800) โ€” โ€”
.bg-teal-900 background-color: var(--color-teal-900) โ€” โ€”
.bg-violet-100 background-color: var(--color-violet-100) โ€” โ€”
.bg-violet-200 background-color: var(--color-violet-200) โ€” โ€”
.bg-violet-300 background-color: var(--color-violet-300) โ€” โ€”
.bg-violet-400 background-color: var(--color-violet-400) โ€” โ€”
.bg-violet-500 background-color: var(--color-violet-500) โ€” โ€”
.bg-violet-600 background-color: var(--color-violet-600) โ€” โ€”
.bg-violet-700 background-color: var(--color-violet-700) โ€” โ€”
.bg-violet-800 background-color: var(--color-violet-800) โ€” โ€”
.bg-violet-900 background-color: var(--color-violet-900) โ€” โ€”
.bg-warning background-color: var(--color-warning) โ€” โ€”
.bg-white background-color: var(--color-white) โ€” โ€”
.bg-yellow-100 background-color: var(--color-yellow-100) โ€” โ€”
.bg-yellow-200 background-color: var(--color-yellow-200) โ€” โ€”
.bg-yellow-300 background-color: var(--color-yellow-300) โ€” โ€”
.bg-yellow-400 background-color: var(--color-yellow-400) โ€” โ€”
.bg-yellow-500 background-color: var(--color-yellow-500) โ€” โ€”
.bg-yellow-600 background-color: var(--color-yellow-600) โ€” โ€”
.bg-yellow-700 background-color: var(--color-yellow-700) โ€” โ€”
.bg-yellow-800 background-color: var(--color-yellow-800) โ€” โ€”
.bg-yellow-900 background-color: var(--color-yellow-900) โ€” โ€”

border

// src/core/style/_border.scss:63
@include generators.utility-class-generator('border-', 'border', (0), '', '', config.$orientations);

Config values it reads:

// src/core/_config.scss:84
$orientations: (
  't': ('top'),
  'r': ('right'),
  'b': ('bottom'),
  'l': ('left'),
  'x': ('right', 'left'),
  'y': ('top', 'bottom')
);
Class Declarations Dir Bp
.border border-color: currentcolor; border-style: solid; border-width: 1px โ€” โ€”
.border-0 border: 0 โœ… t r b l x y โ€”
.border-b border-color: currentcolor; border-style: solid; border-width: 1px; border-top: none; border-left: none; border-right: none โ€” โ€”
.border-l border-color: currentcolor; border-style: solid; border-width: 1px; border-bottom: none; border-top: none; border-right: none โ€” โ€”
.border-r border-color: currentcolor; border-style: solid; border-width: 1px; border-bottom: none; border-top: none; border-left: none โ€” โ€”
.border-t border-color: currentcolor; border-style: solid; border-width: 1px; border-bottom: none; border-left: none; border-right: none โ€” โ€”
.border-x border-color: currentcolor; border-style: solid; border-width: 1px; border-bottom: none; border-top: none โ€” โ€”
.border-y border-color: currentcolor; border-style: solid; border-width: 1px; border-left: none; border-right: none โ€” โ€”

border-bottom-left-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-bl-0 border-bottom-left-radius: 0 โ€” โ€”

border-bottom-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-b-0 border-bottom-left-radius: 0; border-bottom-right-radius: 0 โ€” โ€”

border-bottom-right-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-br-0 border-bottom-right-radius: 0 โ€” โ€”

border-color

// src/core/style/_color.scss:61
@include generators.utility-class-generator((
  prefix: 'border',
  property: 'border-color',
  values: $colors,
  responsive: false,
  variable: 'color'
));

Config values it reads:

// src/core/_config.scss:124
$colors: (
  foreground: #1a1a1d,
  background: #fff,
  black: #1a1a1d,
  white: #fff,
  primary: #f6c026,
  // Its own token rather than `primary`, because everything that reads it โ€”
  // links, focus rings, an active control โ€” is foreground and has a contrast
  // floor a brand color does not: `primary` is free to be a yellow that only
  // ever sits behind text, while this has to stay readable as text on
  // `background`. 8.6:1 here, 8:1 on the dark counterpart below.
  // Called `link` before 4.1, which named one of those uses and read as wrong
  // for the others; `--color-link` and `.text-link` still resolve, see
  // style/_color.scss.
  accent: #0f4eb3,
  // Status roles. Every value is a grade that $palettes already generates โ€”
  // these name one, they do not add a hue, so a project that retunes `red`
  // and re-picks `danger` from the new ladder stays in one palette.
  // They are label and body text on `background`, not just a border on a
  // tinted callout, so each clears 4.5:1 in its own mode. Since $palette-grades
  // pins every palette to the same lightness ladder, that is now one grade for
  // all four rather than four hand-picked ones: 600 on white, and 400 on the
  // dark background โ€” see the `dark` entry in $color-modes below.
  danger: #c40d20,   // red-600,    6.1:1
  success: #077f1e,  // green-600,  5.2:1
  warning: #98560e,  // orange-600, 5.7:1
  info: #2563ca      // blue-600,   5.7:1
);

// src/core/_config.scss:193
$palettes: (
  gray: #8c8c8e,
  yellow: #f6c026,
  orange: #f4912a,
  red: #e41328,
  violet: #752a6f,
  purple: #472573,
  indigo: #3f00ff,
  blue: #0f4eb3,
  teal: #00a4a4,
  green: #10af2e,
  lime: #a4c400,
);
Class Declarations Dir Bp
.border-accent border-color: var(--color-accent) โ€” โ€”
.border-background border-color: var(--color-background) โ€” โ€”
.border-black border-color: var(--color-black) โ€” โ€”
.border-blue-100 border-color: var(--color-blue-100) โ€” โ€”
.border-blue-200 border-color: var(--color-blue-200) โ€” โ€”
.border-blue-300 border-color: var(--color-blue-300) โ€” โ€”
.border-blue-400 border-color: var(--color-blue-400) โ€” โ€”
.border-blue-500 border-color: var(--color-blue-500) โ€” โ€”
.border-blue-600 border-color: var(--color-blue-600) โ€” โ€”
.border-blue-700 border-color: var(--color-blue-700) โ€” โ€”
.border-blue-800 border-color: var(--color-blue-800) โ€” โ€”
.border-blue-900 border-color: var(--color-blue-900) โ€” โ€”
.border-danger border-color: var(--color-danger) โ€” โ€”
.border-foreground border-color: var(--color-foreground) โ€” โ€”
.border-gray-100 border-color: var(--color-gray-100) โ€” โ€”
.border-gray-200 border-color: var(--color-gray-200) โ€” โ€”
.border-gray-300 border-color: var(--color-gray-300) โ€” โ€”
.border-gray-400 border-color: var(--color-gray-400) โ€” โ€”
.border-gray-500 border-color: var(--color-gray-500) โ€” โ€”
.border-gray-600 border-color: var(--color-gray-600) โ€” โ€”
.border-gray-700 border-color: var(--color-gray-700) โ€” โ€”
.border-gray-800 border-color: var(--color-gray-800) โ€” โ€”
.border-gray-900 border-color: var(--color-gray-900) โ€” โ€”
.border-green-100 border-color: var(--color-green-100) โ€” โ€”
.border-green-200 border-color: var(--color-green-200) โ€” โ€”
.border-green-300 border-color: var(--color-green-300) โ€” โ€”
.border-green-400 border-color: var(--color-green-400) โ€” โ€”
.border-green-500 border-color: var(--color-green-500) โ€” โ€”
.border-green-600 border-color: var(--color-green-600) โ€” โ€”
.border-green-700 border-color: var(--color-green-700) โ€” โ€”
.border-green-800 border-color: var(--color-green-800) โ€” โ€”
.border-green-900 border-color: var(--color-green-900) โ€” โ€”
.border-indigo-100 border-color: var(--color-indigo-100) โ€” โ€”
.border-indigo-200 border-color: var(--color-indigo-200) โ€” โ€”
.border-indigo-300 border-color: var(--color-indigo-300) โ€” โ€”
.border-indigo-400 border-color: var(--color-indigo-400) โ€” โ€”
.border-indigo-500 border-color: var(--color-indigo-500) โ€” โ€”
.border-indigo-600 border-color: var(--color-indigo-600) โ€” โ€”
.border-indigo-700 border-color: var(--color-indigo-700) โ€” โ€”
.border-indigo-800 border-color: var(--color-indigo-800) โ€” โ€”
.border-indigo-900 border-color: var(--color-indigo-900) โ€” โ€”
.border-info border-color: var(--color-info) โ€” โ€”
.border-lime-100 border-color: var(--color-lime-100) โ€” โ€”
.border-lime-200 border-color: var(--color-lime-200) โ€” โ€”
.border-lime-300 border-color: var(--color-lime-300) โ€” โ€”
.border-lime-400 border-color: var(--color-lime-400) โ€” โ€”
.border-lime-500 border-color: var(--color-lime-500) โ€” โ€”
.border-lime-600 border-color: var(--color-lime-600) โ€” โ€”
.border-lime-700 border-color: var(--color-lime-700) โ€” โ€”
.border-lime-800 border-color: var(--color-lime-800) โ€” โ€”
.border-lime-900 border-color: var(--color-lime-900) โ€” โ€”
.border-link border-color: var(--color-link) โ€” โ€”
.border-orange-100 border-color: var(--color-orange-100) โ€” โ€”
.border-orange-200 border-color: var(--color-orange-200) โ€” โ€”
.border-orange-300 border-color: var(--color-orange-300) โ€” โ€”
.border-orange-400 border-color: var(--color-orange-400) โ€” โ€”
.border-orange-500 border-color: var(--color-orange-500) โ€” โ€”
.border-orange-600 border-color: var(--color-orange-600) โ€” โ€”
.border-orange-700 border-color: var(--color-orange-700) โ€” โ€”
.border-orange-800 border-color: var(--color-orange-800) โ€” โ€”
.border-orange-900 border-color: var(--color-orange-900) โ€” โ€”
.border-primary border-color: var(--color-primary) โ€” โ€”
.border-purple-100 border-color: var(--color-purple-100) โ€” โ€”
.border-purple-200 border-color: var(--color-purple-200) โ€” โ€”
.border-purple-300 border-color: var(--color-purple-300) โ€” โ€”
.border-purple-400 border-color: var(--color-purple-400) โ€” โ€”
.border-purple-500 border-color: var(--color-purple-500) โ€” โ€”
.border-purple-600 border-color: var(--color-purple-600) โ€” โ€”
.border-purple-700 border-color: var(--color-purple-700) โ€” โ€”
.border-purple-800 border-color: var(--color-purple-800) โ€” โ€”
.border-purple-900 border-color: var(--color-purple-900) โ€” โ€”
.border-red-100 border-color: var(--color-red-100) โ€” โ€”
.border-red-200 border-color: var(--color-red-200) โ€” โ€”
.border-red-300 border-color: var(--color-red-300) โ€” โ€”
.border-red-400 border-color: var(--color-red-400) โ€” โ€”
.border-red-500 border-color: var(--color-red-500) โ€” โ€”
.border-red-600 border-color: var(--color-red-600) โ€” โ€”
.border-red-700 border-color: var(--color-red-700) โ€” โ€”
.border-red-800 border-color: var(--color-red-800) โ€” โ€”
.border-red-900 border-color: var(--color-red-900) โ€” โ€”
.border-success border-color: var(--color-success) โ€” โ€”
.border-teal-100 border-color: var(--color-teal-100) โ€” โ€”
.border-teal-200 border-color: var(--color-teal-200) โ€” โ€”
.border-teal-300 border-color: var(--color-teal-300) โ€” โ€”
.border-teal-400 border-color: var(--color-teal-400) โ€” โ€”
.border-teal-500 border-color: var(--color-teal-500) โ€” โ€”
.border-teal-600 border-color: var(--color-teal-600) โ€” โ€”
.border-teal-700 border-color: var(--color-teal-700) โ€” โ€”
.border-teal-800 border-color: var(--color-teal-800) โ€” โ€”
.border-teal-900 border-color: var(--color-teal-900) โ€” โ€”
.border-violet-100 border-color: var(--color-violet-100) โ€” โ€”
.border-violet-200 border-color: var(--color-violet-200) โ€” โ€”
.border-violet-300 border-color: var(--color-violet-300) โ€” โ€”
.border-violet-400 border-color: var(--color-violet-400) โ€” โ€”
.border-violet-500 border-color: var(--color-violet-500) โ€” โ€”
.border-violet-600 border-color: var(--color-violet-600) โ€” โ€”
.border-violet-700 border-color: var(--color-violet-700) โ€” โ€”
.border-violet-800 border-color: var(--color-violet-800) โ€” โ€”
.border-violet-900 border-color: var(--color-violet-900) โ€” โ€”
.border-warning border-color: var(--color-warning) โ€” โ€”
.border-white border-color: var(--color-white) โ€” โ€”
.border-yellow-100 border-color: var(--color-yellow-100) โ€” โ€”
.border-yellow-200 border-color: var(--color-yellow-200) โ€” โ€”
.border-yellow-300 border-color: var(--color-yellow-300) โ€” โ€”
.border-yellow-400 border-color: var(--color-yellow-400) โ€” โ€”
.border-yellow-500 border-color: var(--color-yellow-500) โ€” โ€”
.border-yellow-600 border-color: var(--color-yellow-600) โ€” โ€”
.border-yellow-700 border-color: var(--color-yellow-700) โ€” โ€”
.border-yellow-800 border-color: var(--color-yellow-800) โ€” โ€”
.border-yellow-900 border-color: var(--color-yellow-900) โ€” โ€”

border-left-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-l-0 border-bottom-left-radius: 0; border-top-left-radius: 0 โ€” โ€”

border-radius

// src/core/style/_border.scss:99
@include generators.utility-class-generator('rounded', 'border-radius', config.$border-radiuses, 'px', '', false, false);

Config values it reads:

// src/core/_config.scss:74
$border-radiuses: 0,4,6,8,16,24,32;
Class Declarations Dir Bp
.round border-radius: 50% โ€” โ€”
.rounded border-radius: var(--radius) โ€” โ€”
.rounded-0 border-radius: 0 โ€” โ€”
.rounded-4 border-radius: 0.25rem โ€” โ€”
.rounded-6 border-radius: 0.375rem โ€” โ€”
.rounded-8 border-radius: 0.5rem โ€” โ€”
.rounded-16 border-radius: 1rem โ€” โ€”
.rounded-24 border-radius: 1.5rem โ€” โ€”
.rounded-32 border-radius: 2rem โ€” โ€”
.rounded-full border-radius: 9999px โ€” โ€”

border-right-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-r-0 border-bottom-right-radius: 0; border-top-right-radius: 0 โ€” โ€”

border-style

// src/core/style/_border.scss:62
@include generators.utility-class-generator('border', 'border-style', ('solid', 'dashed', 'dotted'), '', '', false, false);
Class Declarations Dir Bp
.border-dashed border-style: dashed โ€” โ€”
.border-dotted border-style: dotted โ€” โ€”
.border-solid border-style: solid โ€” โ€”

border-top-left-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-tl-0 border-top-left-radius: 0 โ€” โ€”

border-top-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-t-0 border-top-left-radius: 0; border-top-right-radius: 0 โ€” โ€”

border-top-right-radius

Hand-written in src/core/style/_border.scss.

Class Declarations Dir Bp
.rounded-tr-0 border-top-right-radius: 0 โ€” โ€”

border-width

// src/core/style/_border.scss:61
@include generators.utility-class-generator('border', 'border-width', config.$border-sizes, 'px', '', $rem: false);

Config values it reads:

// src/core/_config.scss:73
$border-sizes: 2,3,4,6,8;
Class Declarations Dir Bp
.border-2 border-width: 2px โ€” โ€”
.border-3 border-width: 3px โ€” โ€”
.border-4 border-width: 4px โ€” โ€”
.border-6 border-width: 6px โ€” โ€”
.border-8 border-width: 8px โ€” โ€”

bottom

// src/core/layout/_position.scss:6
@include generators.utility-class-generator('b', 'bottom', config.$sizes, 'px');
// src/core/layout/_position.scss:11
@include generators.utility-class-generator('b', 'bottom', config.$negative-sizes, 'px');
// src/core/layout/_position.scss:16
@include generators.utility-class-generator('b', 'bottom', config.$percent-sizes, '%', 'p');
// src/core/layout/_position.scss:21
@include generators.utility-class-generator('b', 'bottom', config.$negative-percent-sizes, '%', 'p');

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;
$percent-sizes:  5,10,15,20,25,50,75,100;

// src/core/_config.scss:35
$negative-percent-sizes: -25,-50,-75,-100;
Class Declarations Dir Bp
.b--1 bottom: -0.0625rem โ€” โ€”
.b--2 bottom: -0.125rem โ€” โ€”
.b--3 bottom: -0.1875rem โ€” โ€”
.b--4 bottom: -0.25rem โ€” โ€”
.b--8 bottom: -0.5rem โ€” โ€”
.b--12 bottom: -0.75rem โ€” โ€”
.b--14 bottom: -0.875rem โ€” โ€”
.b--16 bottom: -1rem โ€” โ€”
.b--24 bottom: -1.5rem โ€” โ€”
.b--25p bottom: -25% โ€” โ€”
.b--32 bottom: -2rem โ€” โ€”
.b--40 bottom: -2.5rem โ€” โ€”
.b--48 bottom: -3rem โ€” โ€”
.b--50p bottom: -50% โ€” โ€”
.b--56 bottom: -3.5rem โ€” โ€”
.b--64 bottom: -4rem โ€” โ€”
.b--75p bottom: -75% โ€” โ€”
.b--100p bottom: -100% โ€” โ€”
.b-0 bottom: 0 โ€” โ€”
.b-1 bottom: 0.0625rem โ€” โ€”
.b-2 bottom: 0.125rem โ€” โ€”
.b-3 bottom: 0.1875rem โ€” โ€”
.b-4 bottom: 0.25rem โ€” โ€”
.b-5p bottom: 5% โ€” โ€”
.b-6 bottom: 0.375rem โ€” โ€”
.b-8 bottom: 0.5rem โ€” โ€”
.b-10p bottom: 10% โ€” โ€”
.b-12 bottom: 0.75rem โ€” โ€”
.b-14 bottom: 0.875rem โ€” โ€”
.b-15p bottom: 15% โ€” โ€”
.b-16 bottom: 1rem โ€” โ€”
.b-20p bottom: 20% โ€” โ€”
.b-24 bottom: 1.5rem โ€” โ€”
.b-25p bottom: 25% โ€” โ€”
.b-32 bottom: 2rem โ€” โ€”
.b-40 bottom: 2.5rem โ€” โ€”
.b-48 bottom: 3rem โ€” โ€”
.b-50p bottom: 50% โ€” โ€”
.b-56 bottom: 3.5rem โ€” โ€”
.b-64 bottom: 4rem โ€” โ€”
.b-75p bottom: 75% โ€” โ€”
.b-80 bottom: 5rem โ€” โ€”
.b-96 bottom: 6rem โ€” โ€”
.b-100p bottom: 100% โ€” โ€”
.b-128 bottom: 8rem โ€” โ€”
.b-256 bottom: 16rem โ€” โ€”

box-shadow

// src/core/style/_effects.scss:15
@include generators.utility-class-generator((
  prefix: 'shadow',
  property: 'box-shadow',
  values: config.$shadows,
  responsive: false,
  variable: 'shadow'
));

Config values it reads:

// src/core/_config.scss:432
$shadows: (
  'sm': 0 1px 2px rgb(0 0 0 / 5%),
  'md': 0 4px 6px -1px rgb(0 0 0 / 10%),
  'lg': 0 10px 15px -3px rgb(0 0 0 / 10%),
  'xl': 0 20px 25px -5px rgb(0 0 0 / 10%),
  'none': none
);
Class Declarations Dir Bp
.shadow-lg box-shadow: var(--shadow-lg) โ€” โ€”
.shadow-md box-shadow: var(--shadow-md) โ€” โ€”
.shadow-none box-shadow: var(--shadow-none) โ€” โ€”
.shadow-sm box-shadow: var(--shadow-sm) โ€” โ€”
.shadow-xl box-shadow: var(--shadow-xl) โ€” โ€”

box-sizing

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.content-box box-sizing: content-box โ€” โ€”

color

// src/core/style/_color.scss:27
@include generators.utility-class-generator((
  prefix: 'text',
  property: 'color',
  values: $colors,
  // Color per breakpoint is a fringe need; every color ร— grade ร— breakpoint ร—
  // 3 properties was ~23% of the build. Theme changes go through the CSS
  // variables instead.
  responsive: false,
  variable: true
));

Config values it reads:

// src/core/_config.scss:124
$colors: (
  foreground: #1a1a1d,
  background: #fff,
  black: #1a1a1d,
  white: #fff,
  primary: #f6c026,
  // Its own token rather than `primary`, because everything that reads it โ€”
  // links, focus rings, an active control โ€” is foreground and has a contrast
  // floor a brand color does not: `primary` is free to be a yellow that only
  // ever sits behind text, while this has to stay readable as text on
  // `background`. 8.6:1 here, 8:1 on the dark counterpart below.
  // Called `link` before 4.1, which named one of those uses and read as wrong
  // for the others; `--color-link` and `.text-link` still resolve, see
  // style/_color.scss.
  accent: #0f4eb3,
  // Status roles. Every value is a grade that $palettes already generates โ€”
  // these name one, they do not add a hue, so a project that retunes `red`
  // and re-picks `danger` from the new ladder stays in one palette.
  // They are label and body text on `background`, not just a border on a
  // tinted callout, so each clears 4.5:1 in its own mode. Since $palette-grades
  // pins every palette to the same lightness ladder, that is now one grade for
  // all four rather than four hand-picked ones: 600 on white, and 400 on the
  // dark background โ€” see the `dark` entry in $color-modes below.
  danger: #c40d20,   // red-600,    6.1:1
  success: #077f1e,  // green-600,  5.2:1
  warning: #98560e,  // orange-600, 5.7:1
  info: #2563ca      // blue-600,   5.7:1
);

// src/core/_config.scss:193
$palettes: (
  gray: #8c8c8e,
  yellow: #f6c026,
  orange: #f4912a,
  red: #e41328,
  violet: #752a6f,
  purple: #472573,
  indigo: #3f00ff,
  blue: #0f4eb3,
  teal: #00a4a4,
  green: #10af2e,
  lime: #a4c400,
);
Class Declarations Dir Bp
.text-accent color: var(--color-accent) โ€” โ€”
.text-background color: var(--color-background) โ€” โ€”
.text-black color: var(--color-black) โ€” โ€”
.text-blue-100 color: var(--color-blue-100) โ€” โ€”
.text-blue-200 color: var(--color-blue-200) โ€” โ€”
.text-blue-300 color: var(--color-blue-300) โ€” โ€”
.text-blue-400 color: var(--color-blue-400) โ€” โ€”
.text-blue-500 color: var(--color-blue-500) โ€” โ€”
.text-blue-600 color: var(--color-blue-600) โ€” โ€”
.text-blue-700 color: var(--color-blue-700) โ€” โ€”
.text-blue-800 color: var(--color-blue-800) โ€” โ€”
.text-blue-900 color: var(--color-blue-900) โ€” โ€”
.text-color-current color: currentColor โ€” โ€”
.text-color-inherit color: inherit โ€” โ€”
.text-current color: currentColor โ€” โ€”
.text-danger color: var(--color-danger) โ€” โ€”
.text-foreground color: var(--color-foreground) โ€” โ€”
.text-gray-100 color: var(--color-gray-100) โ€” โ€”
.text-gray-200 color: var(--color-gray-200) โ€” โ€”
.text-gray-300 color: var(--color-gray-300) โ€” โ€”
.text-gray-400 color: var(--color-gray-400) โ€” โ€”
.text-gray-500 color: var(--color-gray-500) โ€” โ€”
.text-gray-600 color: var(--color-gray-600) โ€” โ€”
.text-gray-700 color: var(--color-gray-700) โ€” โ€”
.text-gray-800 color: var(--color-gray-800) โ€” โ€”
.text-gray-900 color: var(--color-gray-900) โ€” โ€”
.text-green-100 color: var(--color-green-100) โ€” โ€”
.text-green-200 color: var(--color-green-200) โ€” โ€”
.text-green-300 color: var(--color-green-300) โ€” โ€”
.text-green-400 color: var(--color-green-400) โ€” โ€”
.text-green-500 color: var(--color-green-500) โ€” โ€”
.text-green-600 color: var(--color-green-600) โ€” โ€”
.text-green-700 color: var(--color-green-700) โ€” โ€”
.text-green-800 color: var(--color-green-800) โ€” โ€”
.text-green-900 color: var(--color-green-900) โ€” โ€”
.text-indigo-100 color: var(--color-indigo-100) โ€” โ€”
.text-indigo-200 color: var(--color-indigo-200) โ€” โ€”
.text-indigo-300 color: var(--color-indigo-300) โ€” โ€”
.text-indigo-400 color: var(--color-indigo-400) โ€” โ€”
.text-indigo-500 color: var(--color-indigo-500) โ€” โ€”
.text-indigo-600 color: var(--color-indigo-600) โ€” โ€”
.text-indigo-700 color: var(--color-indigo-700) โ€” โ€”
.text-indigo-800 color: var(--color-indigo-800) โ€” โ€”
.text-indigo-900 color: var(--color-indigo-900) โ€” โ€”
.text-info color: var(--color-info) โ€” โ€”
.text-inherit color: inherit โ€” โ€”
.text-lime-100 color: var(--color-lime-100) โ€” โ€”
.text-lime-200 color: var(--color-lime-200) โ€” โ€”
.text-lime-300 color: var(--color-lime-300) โ€” โ€”
.text-lime-400 color: var(--color-lime-400) โ€” โ€”
.text-lime-500 color: var(--color-lime-500) โ€” โ€”
.text-lime-600 color: var(--color-lime-600) โ€” โ€”
.text-lime-700 color: var(--color-lime-700) โ€” โ€”
.text-lime-800 color: var(--color-lime-800) โ€” โ€”
.text-lime-900 color: var(--color-lime-900) โ€” โ€”
.text-link color: var(--color-link) โ€” โ€”
.text-orange-100 color: var(--color-orange-100) โ€” โ€”
.text-orange-200 color: var(--color-orange-200) โ€” โ€”
.text-orange-300 color: var(--color-orange-300) โ€” โ€”
.text-orange-400 color: var(--color-orange-400) โ€” โ€”
.text-orange-500 color: var(--color-orange-500) โ€” โ€”
.text-orange-600 color: var(--color-orange-600) โ€” โ€”
.text-orange-700 color: var(--color-orange-700) โ€” โ€”
.text-orange-800 color: var(--color-orange-800) โ€” โ€”
.text-orange-900 color: var(--color-orange-900) โ€” โ€”
.text-primary color: var(--color-primary) โ€” โ€”
.text-purple-100 color: var(--color-purple-100) โ€” โ€”
.text-purple-200 color: var(--color-purple-200) โ€” โ€”
.text-purple-300 color: var(--color-purple-300) โ€” โ€”
.text-purple-400 color: var(--color-purple-400) โ€” โ€”
.text-purple-500 color: var(--color-purple-500) โ€” โ€”
.text-purple-600 color: var(--color-purple-600) โ€” โ€”
.text-purple-700 color: var(--color-purple-700) โ€” โ€”
.text-purple-800 color: var(--color-purple-800) โ€” โ€”
.text-purple-900 color: var(--color-purple-900) โ€” โ€”
.text-red-100 color: var(--color-red-100) โ€” โ€”
.text-red-200 color: var(--color-red-200) โ€” โ€”
.text-red-300 color: var(--color-red-300) โ€” โ€”
.text-red-400 color: var(--color-red-400) โ€” โ€”
.text-red-500 color: var(--color-red-500) โ€” โ€”
.text-red-600 color: var(--color-red-600) โ€” โ€”
.text-red-700 color: var(--color-red-700) โ€” โ€”
.text-red-800 color: var(--color-red-800) โ€” โ€”
.text-red-900 color: var(--color-red-900) โ€” โ€”
.text-success color: var(--color-success) โ€” โ€”
.text-teal-100 color: var(--color-teal-100) โ€” โ€”
.text-teal-200 color: var(--color-teal-200) โ€” โ€”
.text-teal-300 color: var(--color-teal-300) โ€” โ€”
.text-teal-400 color: var(--color-teal-400) โ€” โ€”
.text-teal-500 color: var(--color-teal-500) โ€” โ€”
.text-teal-600 color: var(--color-teal-600) โ€” โ€”
.text-teal-700 color: var(--color-teal-700) โ€” โ€”
.text-teal-800 color: var(--color-teal-800) โ€” โ€”
.text-teal-900 color: var(--color-teal-900) โ€” โ€”
.text-transparent color: transparent โ€” โ€”
.text-violet-100 color: var(--color-violet-100) โ€” โ€”
.text-violet-200 color: var(--color-violet-200) โ€” โ€”
.text-violet-300 color: var(--color-violet-300) โ€” โ€”
.text-violet-400 color: var(--color-violet-400) โ€” โ€”
.text-violet-500 color: var(--color-violet-500) โ€” โ€”
.text-violet-600 color: var(--color-violet-600) โ€” โ€”
.text-violet-700 color: var(--color-violet-700) โ€” โ€”
.text-violet-800 color: var(--color-violet-800) โ€” โ€”
.text-violet-900 color: var(--color-violet-900) โ€” โ€”
.text-warning color: var(--color-warning) โ€” โ€”
.text-white color: var(--color-white) โ€” โ€”
.text-yellow-100 color: var(--color-yellow-100) โ€” โ€”
.text-yellow-200 color: var(--color-yellow-200) โ€” โ€”
.text-yellow-300 color: var(--color-yellow-300) โ€” โ€”
.text-yellow-400 color: var(--color-yellow-400) โ€” โ€”
.text-yellow-500 color: var(--color-yellow-500) โ€” โ€”
.text-yellow-600 color: var(--color-yellow-600) โ€” โ€”
.text-yellow-700 color: var(--color-yellow-700) โ€” โ€”
.text-yellow-800 color: var(--color-yellow-800) โ€” โ€”
.text-yellow-900 color: var(--color-yellow-900) โ€” โ€”

column-gap

// src/core/layout/_gap.scss:9
@include generators.utility-class-generator('gap-x', 'column-gap', $gap-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.gap-x-0 column-gap: 0 โ€” โ€”
.gap-x-1 column-gap: 0.0625rem โ€” โ€”
.gap-x-2 column-gap: 0.125rem โ€” โ€”
.gap-x-3 column-gap: 0.1875rem โ€” โ€”
.gap-x-4 column-gap: 0.25rem โ€” โ€”
.gap-x-6 column-gap: 0.375rem โ€” โ€”
.gap-x-8 column-gap: 0.5rem โ€” โ€”
.gap-x-12 column-gap: 0.75rem โ€” โ€”
.gap-x-14 column-gap: 0.875rem โ€” โ€”
.gap-x-16 column-gap: 1rem โ€” โ€”
.gap-x-24 column-gap: 1.5rem โ€” โ€”
.gap-x-32 column-gap: 2rem โ€” โ€”
.gap-x-40 column-gap: 2.5rem โ€” โ€”
.gap-x-48 column-gap: 3rem โ€” โ€”
.gap-x-56 column-gap: 3.5rem โ€” โ€”
.gap-x-64 column-gap: 4rem โ€” โ€”
.gap-x-80 column-gap: 5rem โ€” โ€”
.gap-x-96 column-gap: 6rem โ€” โ€”
.gap-x-128 column-gap: 8rem โ€” โ€”
.gap-x-256 column-gap: 16rem โ€” โ€”

cursor

// src/core/style/_effects.scss:32
@include generators.utility-class-generator(
  'cursor',
  'cursor',
  ('auto', 'default', 'pointer', 'wait', 'text', 'move', 'grab', 'grabbing', 'not-allowed', 'help', 'progress', 'none'),
  '',
  '',
  false,
  false
);
Class Declarations Dir Bp
.cursor-auto cursor: auto โ€” โ€”
.cursor-default cursor: default โ€” โ€”
.cursor-grab cursor: grab โ€” โ€”
.cursor-grabbing cursor: grabbing โ€” โ€”
.cursor-help cursor: help โ€” โ€”
.cursor-move cursor: move โ€” โ€”
.cursor-none cursor: none โ€” โ€”
.cursor-not-allowed cursor: not-allowed โ€” โ€”
.cursor-pointer cursor: pointer โ€” โ€”
.cursor-progress cursor: progress โ€” โ€”
.cursor-text cursor: text โ€” โ€”
.cursor-wait cursor: wait โ€” โ€”

display

// src/core/layout/_display.scss:3
@include generators.utility-class-generator('d', 'display', ('block', 'inline', 'flex', 'inline-block', 'none', 'table', 'table-cell', 'inline-flex', 'grid', 'inline-grid'));
Class Declarations Dir Bp
.d-block display: block โ€” โ€”
.d-flex display: flex โ€” โ€”
.d-grid display: grid โ€” โ€”
.d-inline display: inline โ€” โ€”
.d-inline-block display: inline-block โ€” โ€”
.d-inline-flex display: inline-flex โ€” โ€”
.d-inline-grid display: inline-grid โ€” โ€”
.d-none display: none โ€” โ€”
.d-table display: table โ€” โ€”
.d-table-cell display: table-cell โ€” โ€”

filter

Hand-written in src/core/style/_filters.scss.

Class Declarations Dir Bp
.filter-invert filter: invert(1) โ€” โ€”

flex

// src/core/layout/_flex.scss:9
@include generators.utility-class-generator('flex', 'flex', (1: '1 1 0%', 'auto': '1 1 auto', 'none': 'none'));
Class Declarations Dir Bp
.flex-1 flex: 1 1 0% โ€” โ€”
.flex-auto flex: 1 1 auto โ€” โ€”
.flex-none flex: none โ€” โ€”

flex-direction

// src/core/layout/_flex.scss:3
@include generators.utility-class-generator('flex', 'flex-direction', ('row', 'row-reverse', 'column', 'column-reverse'));
Class Declarations Dir Bp
.flex-column flex-direction: column โ€” โ€”
.flex-column-reverse flex-direction: column-reverse โ€” โ€”
.flex-row flex-direction: row โ€” โ€”
.flex-row-reverse flex-direction: row-reverse โ€” โ€”
.grid-reverse flex-direction: row-reverse โ€” โ€”

flex-grow

// src/core/layout/_flex.scss:11
@include generators.utility-class-generator('flex-grow', 'flex-grow', (0, 1, 2, 3));
Class Declarations Dir Bp
.flex-grow-0 flex-grow: 0 โ€” โ€”
.flex-grow-1 flex-grow: 1 โ€” โ€”
.flex-grow-2 flex-grow: 2 โ€” โ€”
.flex-grow-3 flex-grow: 3 โ€” โ€”

flex-shrink

// src/core/layout/_flex.scss:13
@include generators.utility-class-generator('flex-shrink', 'flex-shrink', (0, 1));
Class Declarations Dir Bp
.flex-shrink-0 flex-shrink: 0 โ€” โ€”
.flex-shrink-1 flex-shrink: 1 โ€” โ€”

flex-wrap

// src/core/layout/_flex.scss:4
@include generators.utility-class-generator('flex', 'flex-wrap', ('wrap', 'nowrap', 'wrap-reverse'));
Class Declarations Dir Bp
.flex-nowrap flex-wrap: nowrap โ€” โ€”
.flex-wrap flex-wrap: wrap โ€” โ€”
.flex-wrap-reverse flex-wrap: wrap-reverse โ€” โ€”

font-family

Hand-written in src/core/style/_typography.scss.

Class Declarations Dir Bp
.font-heading font-family: var(--font-heading) โ€” โ€”
.font-mono font-family: var(--font-mono) โ€” โ€”
.font-paragraph font-family: var(--font-paragraph) โ€” โ€”

font-size

// src/core/style/_typography.scss:116
@include generators.utility-class-generator('fs', 'font-size', $font-size-map);
Class Declarations Dir Bp
.fs-12 font-size: 0.75rem โ€” โ€”
.fs-14 font-size: 0.875rem โ€” โ€”
.fs-16 font-size: 1rem โ€” โ€”
.fs-20 font-size: 1.25rem โ€” โ€”
.fs-24 font-size: 1.5rem โ€” โ€”
.fs-32 font-size: 2rem โ€” โ€”
.fs-48 font-size: 3rem โ€” โ€”
.fs-64 font-size: 4rem โ€” โ€”
.fs-96 font-size: 6rem โ€” โ€”

font-style

Hand-written in src/core/style/_typography.scss.

Class Declarations Dir Bp
.font-italic font-style: italic โ€” โ€”

font-weight

Hand-written in src/core/style/_typography.scss.

Class Declarations Dir Bp
.font-black font-weight: 900 โ€” โ€”
.font-bold font-weight: 700 โ€” โ€”
.font-light font-weight: 300 โ€” โ€”
.font-medium font-weight: 500 โ€” โ€”
.font-normal font-weight: 400 โ€” โ€”
.font-semi-bold font-weight: 600 โ€” โ€”
.font-thin font-weight: 100 โ€” โ€”
.font-ultra-bold font-weight: 800 โ€” โ€”
.font-ultra-light font-weight: 200 โ€” โ€”

gap

// src/core/layout/_gap.scss:8
@include generators.utility-class-generator('gap', 'gap', $gap-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.gap-0 gap: 0 โ€” โ€”
.gap-1 gap: 0.0625rem โ€” โ€”
.gap-2 gap: 0.125rem โ€” โ€”
.gap-3 gap: 0.1875rem โ€” โ€”
.gap-4 gap: 0.25rem โ€” โ€”
.gap-6 gap: 0.375rem โ€” โ€”
.gap-8 gap: 0.5rem โ€” โ€”
.gap-12 gap: 0.75rem โ€” โ€”
.gap-14 gap: 0.875rem โ€” โ€”
.gap-16 gap: 1rem โ€” โ€”
.gap-24 gap: 1.5rem โ€” โ€”
.gap-32 gap: 2rem โ€” โ€”
.gap-40 gap: 2.5rem โ€” โ€”
.gap-48 gap: 3rem โ€” โ€”
.gap-56 gap: 3.5rem โ€” โ€”
.gap-64 gap: 4rem โ€” โ€”
.gap-80 gap: 5rem โ€” โ€”
.gap-96 gap: 6rem โ€” โ€”
.gap-128 gap: 8rem โ€” โ€”
.gap-256 gap: 16rem โ€” โ€”

grid-auto-flow

// src/core/layout/_grid.scss:60
@include generators.utility-class-generator('grid-flow', 'grid-auto-flow', (
  'row': 'row',
  'column': 'column',
  'dense': 'dense',
  'row-dense': 'row dense',
  'column-dense': 'column dense'
));
Class Declarations Dir Bp
.grid-flow-column grid-auto-flow: column โ€” โ€”
.grid-flow-column-dense grid-auto-flow: column dense โ€” โ€”
.grid-flow-dense grid-auto-flow: dense โ€” โ€”
.grid-flow-row grid-auto-flow: row โ€” โ€”
.grid-flow-row-dense grid-auto-flow: row dense โ€” โ€”

grid-column

// src/core/layout/_grid.scss:58
@include generators.utility-class-generator('grid-column-span', 'grid-column', generators.grid-span-map(config.$columns));

Config values it reads:

// src/core/_config.scss:114
$columns: 12;
Class Declarations Dir Bp
.grid-column-span-1 grid-column: span 1 / span 1 โ€” โ€”
.grid-column-span-2 grid-column: span 2 / span 2 โ€” โ€”
.grid-column-span-3 grid-column: span 3 / span 3 โ€” โ€”
.grid-column-span-4 grid-column: span 4 / span 4 โ€” โ€”
.grid-column-span-5 grid-column: span 5 / span 5 โ€” โ€”
.grid-column-span-6 grid-column: span 6 / span 6 โ€” โ€”
.grid-column-span-7 grid-column: span 7 / span 7 โ€” โ€”
.grid-column-span-8 grid-column: span 8 / span 8 โ€” โ€”
.grid-column-span-9 grid-column: span 9 / span 9 โ€” โ€”
.grid-column-span-10 grid-column: span 10 / span 10 โ€” โ€”
.grid-column-span-11 grid-column: span 11 / span 11 โ€” โ€”
.grid-column-span-12 grid-column: span 12 / span 12 โ€” โ€”
.grid-column-span-full grid-column: 1 / -1 โ€” โ€”

grid-row

// src/core/layout/_grid.scss:59
@include generators.utility-class-generator('grid-row-span', 'grid-row', generators.grid-span-map(config.$rows));

Config values it reads:

// src/core/_config.scss:119
$rows: 6;
Class Declarations Dir Bp
.grid-row-span-1 grid-row: span 1 / span 1 โ€” โ€”
.grid-row-span-2 grid-row: span 2 / span 2 โ€” โ€”
.grid-row-span-3 grid-row: span 3 / span 3 โ€” โ€”
.grid-row-span-4 grid-row: span 4 / span 4 โ€” โ€”
.grid-row-span-5 grid-row: span 5 / span 5 โ€” โ€”
.grid-row-span-6 grid-row: span 6 / span 6 โ€” โ€”
.grid-row-span-full grid-row: 1 / -1 โ€” โ€”

grid-template-columns

// src/core/layout/_grid.scss:56
@include generators.utility-class-generator('grid-cols', 'grid-template-columns', generators.grid-track-map(config.$columns));

Config values it reads:

// src/core/_config.scss:114
$columns: 12;
Class Declarations Dir Bp
.grid-cols-1 grid-template-columns: repeat(1, minmax(0, 1fr)) โ€” โ€”
.grid-cols-2 grid-template-columns: repeat(2, minmax(0, 1fr)) โ€” โ€”
.grid-cols-3 grid-template-columns: repeat(3, minmax(0, 1fr)) โ€” โ€”
.grid-cols-4 grid-template-columns: repeat(4, minmax(0, 1fr)) โ€” โ€”
.grid-cols-5 grid-template-columns: repeat(5, minmax(0, 1fr)) โ€” โ€”
.grid-cols-6 grid-template-columns: repeat(6, minmax(0, 1fr)) โ€” โ€”
.grid-cols-7 grid-template-columns: repeat(7, minmax(0, 1fr)) โ€” โ€”
.grid-cols-8 grid-template-columns: repeat(8, minmax(0, 1fr)) โ€” โ€”
.grid-cols-9 grid-template-columns: repeat(9, minmax(0, 1fr)) โ€” โ€”
.grid-cols-10 grid-template-columns: repeat(10, minmax(0, 1fr)) โ€” โ€”
.grid-cols-11 grid-template-columns: repeat(11, minmax(0, 1fr)) โ€” โ€”
.grid-cols-12 grid-template-columns: repeat(12, minmax(0, 1fr)) โ€” โ€”

grid-template-rows

// src/core/layout/_grid.scss:57
@include generators.utility-class-generator('grid-rows', 'grid-template-rows', generators.grid-track-map(config.$rows));

Config values it reads:

// src/core/_config.scss:119
$rows: 6;
Class Declarations Dir Bp
.grid-rows-1 grid-template-rows: repeat(1, minmax(0, 1fr)) โ€” โ€”
.grid-rows-2 grid-template-rows: repeat(2, minmax(0, 1fr)) โ€” โ€”
.grid-rows-3 grid-template-rows: repeat(3, minmax(0, 1fr)) โ€” โ€”
.grid-rows-4 grid-template-rows: repeat(4, minmax(0, 1fr)) โ€” โ€”
.grid-rows-5 grid-template-rows: repeat(5, minmax(0, 1fr)) โ€” โ€”
.grid-rows-6 grid-template-rows: repeat(6, minmax(0, 1fr)) โ€” โ€”

height

// src/core/layout/_dimension.scss:38
@include generators.utility-class-generator('h', 'height', $height-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.h-0 height: 0 โ€” โ€”
.h-1 height: 0.0625rem โ€” โ€”
.h-2 height: 0.125rem โ€” โ€”
.h-3 height: 0.1875rem โ€” โ€”
.h-4 height: 0.25rem โ€” โ€”
.h-5p height: 5% โ€” โ€”
.h-6 height: 0.375rem โ€” โ€”
.h-8 height: 0.5rem โ€” โ€”
.h-10p height: 10% โ€” โ€”
.h-12 height: 0.75rem โ€” โ€”
.h-14 height: 0.875rem โ€” โ€”
.h-15p height: 15% โ€” โ€”
.h-16 height: 1rem โ€” โ€”
.h-20p height: 20% โ€” โ€”
.h-24 height: 1.5rem โ€” โ€”
.h-25p height: 25% โ€” โ€”
.h-25vh height: 25vh โ€” โ€”
.h-32 height: 2rem โ€” โ€”
.h-40 height: 2.5rem โ€” โ€”
.h-48 height: 3rem โ€” โ€”
.h-50p height: 50% โ€” โ€”
.h-50vh height: 50vh โ€” โ€”
.h-56 height: 3.5rem โ€” โ€”
.h-64 height: 4rem โ€” โ€”
.h-75p height: 75% โ€” โ€”
.h-75vh height: 75vh โ€” โ€”
.h-80 height: 5rem โ€” โ€”
.h-96 height: 6rem โ€” โ€”
.h-100p height: 100% โ€” โ€”
.h-100vh height: 100vh โ€” โ€”
.h-128 height: 8rem โ€” โ€”
.h-256 height: 16rem โ€” โ€”
.h-auto height: auto โ€” โ€”
.h-inherit height: inherit โ€” โ€”

inset

// src/core/layout/_position.scss:25
@include generators.utility-class-generator('inset', 'inset', config.$sizes, 'px');
// src/core/layout/_position.scss:26
@include generators.utility-class-generator('inset', 'inset', config.$negative-sizes, 'px');
// src/core/layout/_position.scss:27
@include generators.utility-class-generator('inset', 'inset', config.$percent-sizes, '%', 'p');
// src/core/layout/_position.scss:28
@include generators.utility-class-generator('inset', 'inset', ('auto'));

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;
$percent-sizes:  5,10,15,20,25,50,75,100;
Class Declarations Dir Bp
.inset--1 inset: -0.0625rem โ€” โ€”
.inset--2 inset: -0.125rem โ€” โ€”
.inset--3 inset: -0.1875rem โ€” โ€”
.inset--4 inset: -0.25rem โ€” โ€”
.inset--8 inset: -0.5rem โ€” โ€”
.inset--12 inset: -0.75rem โ€” โ€”
.inset--14 inset: -0.875rem โ€” โ€”
.inset--16 inset: -1rem โ€” โ€”
.inset--24 inset: -1.5rem โ€” โ€”
.inset--32 inset: -2rem โ€” โ€”
.inset--40 inset: -2.5rem โ€” โ€”
.inset--48 inset: -3rem โ€” โ€”
.inset--56 inset: -3.5rem โ€” โ€”
.inset--64 inset: -4rem โ€” โ€”
.inset-0 inset: 0 โ€” โ€”
.inset-1 inset: 0.0625rem โ€” โ€”
.inset-2 inset: 0.125rem โ€” โ€”
.inset-3 inset: 0.1875rem โ€” โ€”
.inset-4 inset: 0.25rem โ€” โ€”
.inset-5p inset: 5% โ€” โ€”
.inset-6 inset: 0.375rem โ€” โ€”
.inset-8 inset: 0.5rem โ€” โ€”
.inset-10p inset: 10% โ€” โ€”
.inset-12 inset: 0.75rem โ€” โ€”
.inset-14 inset: 0.875rem โ€” โ€”
.inset-15p inset: 15% โ€” โ€”
.inset-16 inset: 1rem โ€” โ€”
.inset-20p inset: 20% โ€” โ€”
.inset-24 inset: 1.5rem โ€” โ€”
.inset-25p inset: 25% โ€” โ€”
.inset-32 inset: 2rem โ€” โ€”
.inset-40 inset: 2.5rem โ€” โ€”
.inset-48 inset: 3rem โ€” โ€”
.inset-50p inset: 50% โ€” โ€”
.inset-56 inset: 3.5rem โ€” โ€”
.inset-64 inset: 4rem โ€” โ€”
.inset-75p inset: 75% โ€” โ€”
.inset-80 inset: 5rem โ€” โ€”
.inset-96 inset: 6rem โ€” โ€”
.inset-100p inset: 100% โ€” โ€”
.inset-128 inset: 8rem โ€” โ€”
.inset-256 inset: 16rem โ€” โ€”
.inset-auto inset: auto โ€” โ€”

justify-content

// src/core/layout/_flex.scss:15
@include generators.utility-class-generator('justify', 'justify-content', ('normal', 'center', 'start', 'end', 'space-between', 'space-around', 'space-evenly'));
Class Declarations Dir Bp
.justify-center justify-content: center โ€” โ€”
.justify-end justify-content: end โ€” โ€”
.justify-normal justify-content: normal โ€” โ€”
.justify-space-around justify-content: space-around โ€” โ€”
.justify-space-between justify-content: space-between โ€” โ€”
.justify-space-evenly justify-content: space-evenly โ€” โ€”
.justify-start justify-content: start โ€” โ€”

justify-self

// src/core/layout/_flex.scss:17
@include generators.utility-class-generator('justify-self', 'justify-self', ('normal', 'center', 'start', 'end', 'stretch'));
Class Declarations Dir Bp
.justify-self-center justify-self: center โ€” โ€”
.justify-self-end justify-self: end โ€” โ€”
.justify-self-normal justify-self: normal โ€” โ€”
.justify-self-start justify-self: start โ€” โ€”
.justify-self-stretch justify-self: stretch โ€” โ€”

left

// src/core/layout/_position.scss:7
@include generators.utility-class-generator('l', 'left', config.$sizes, 'px');
// src/core/layout/_position.scss:12
@include generators.utility-class-generator('l', 'left', config.$negative-sizes, 'px');
// src/core/layout/_position.scss:17
@include generators.utility-class-generator('l', 'left', config.$percent-sizes, '%', 'p');
// src/core/layout/_position.scss:22
@include generators.utility-class-generator('l', 'left', config.$negative-percent-sizes, '%', 'p');

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;
$percent-sizes:  5,10,15,20,25,50,75,100;

// src/core/_config.scss:35
$negative-percent-sizes: -25,-50,-75,-100;
Class Declarations Dir Bp
.l--1 left: -0.0625rem โ€” โ€”
.l--2 left: -0.125rem โ€” โ€”
.l--3 left: -0.1875rem โ€” โ€”
.l--4 left: -0.25rem โ€” โ€”
.l--8 left: -0.5rem โ€” โ€”
.l--12 left: -0.75rem โ€” โ€”
.l--14 left: -0.875rem โ€” โ€”
.l--16 left: -1rem โ€” โ€”
.l--24 left: -1.5rem โ€” โ€”
.l--25p left: -25% โ€” โ€”
.l--32 left: -2rem โ€” โ€”
.l--40 left: -2.5rem โ€” โ€”
.l--48 left: -3rem โ€” โ€”
.l--50p left: -50% โ€” โ€”
.l--56 left: -3.5rem โ€” โ€”
.l--64 left: -4rem โ€” โ€”
.l--75p left: -75% โ€” โ€”
.l--100p left: -100% โ€” โ€”
.l-0 left: 0 โ€” โ€”
.l-1 left: 0.0625rem โ€” โ€”
.l-2 left: 0.125rem โ€” โ€”
.l-3 left: 0.1875rem โ€” โ€”
.l-4 left: 0.25rem โ€” โ€”
.l-5p left: 5% โ€” โ€”
.l-6 left: 0.375rem โ€” โ€”
.l-8 left: 0.5rem โ€” โ€”
.l-10p left: 10% โ€” โ€”
.l-12 left: 0.75rem โ€” โ€”
.l-14 left: 0.875rem โ€” โ€”
.l-15p left: 15% โ€” โ€”
.l-16 left: 1rem โ€” โ€”
.l-20p left: 20% โ€” โ€”
.l-24 left: 1.5rem โ€” โ€”
.l-25p left: 25% โ€” โ€”
.l-32 left: 2rem โ€” โ€”
.l-40 left: 2.5rem โ€” โ€”
.l-48 left: 3rem โ€” โ€”
.l-50p left: 50% โ€” โ€”
.l-56 left: 3.5rem โ€” โ€”
.l-64 left: 4rem โ€” โ€”
.l-75p left: 75% โ€” โ€”
.l-80 left: 5rem โ€” โ€”
.l-96 left: 6rem โ€” โ€”
.l-100p left: 100% โ€” โ€”
.l-128 left: 8rem โ€” โ€”
.l-256 left: 16rem โ€” โ€”

line-height

// src/core/style/_typography.scss:117
@include generators.utility-class-generator('lh', 'line-height', config.$line-heights);

Config values it reads:

// src/core/_config.scss:335
$line-heights: (
  1: 1,
  'tight': 1.25,
  'normal': 1.6,
  'loose': 1.75
);
Class Declarations Dir Bp
.lh-1 line-height: 1 โ€” โ€”
.lh-loose line-height: 1.75 โ€” โ€”
.lh-normal line-height: 1.6 โ€” โ€”
.lh-tight line-height: 1.25 โ€” โ€”

margin

// src/core/layout/_grid.scss:49
@include generators.grid-offset-generator(config.$columns);
// src/core/layout/_margin.scss:14
@include generators.utility-class-generator((
  prefix: 'm',
  property: 'margin',
  values: $margin-sizes,
  unit: 'px',
  orientations: config.$orientations
));

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;

// src/core/_config.scss:84
$orientations: (
  't': ('top'),
  'r': ('right'),
  'b': ('bottom'),
  'l': ('left'),
  'x': ('right', 'left'),
  'y': ('top', 'bottom')
);

// src/core/_config.scss:114
$columns: 12;
Class Declarations Dir Bp
.col-offset-0 margin-left: 0% โ€” โ€”
.col-offset-1 margin-left: 8.3333333333% โ€” โ€”
.col-offset-2 margin-left: 16.6666666667% โ€” โ€”
.col-offset-3 margin-left: 25% โ€” โ€”
.col-offset-4 margin-left: 33.3333333333% โ€” โ€”
.col-offset-5 margin-left: 41.6666666667% โ€” โ€”
.col-offset-6 margin-left: 50% โ€” โ€”
.col-offset-7 margin-left: 58.3333333333% โ€” โ€”
.col-offset-8 margin-left: 66.6666666667% โ€” โ€”
.col-offset-9 margin-left: 75% โ€” โ€”
.col-offset-10 margin-left: 83.3333333333% โ€” โ€”
.col-offset-11 margin-left: 91.6666666667% โ€” โ€”
.grid-gutter margin-left: -0.5rem; margin-right: -0.5rem โ€” โ€”
.m--1 margin: -0.0625rem โœ… t r b l x y โ€”
.m--2 margin: -0.125rem โœ… t r b l x y โ€”
.m--3 margin: -0.1875rem โœ… t r b l x y โ€”
.m--4 margin: -0.25rem โœ… t r b l x y โ€”
.m--8 margin: -0.5rem โœ… t r b l x y โ€”
.m--12 margin: -0.75rem โœ… t r b l x y โ€”
.m--14 margin: -0.875rem โœ… t r b l x y โ€”
.m--16 margin: -1rem โœ… t r b l x y โ€”
.m--24 margin: -1.5rem โœ… t r b l x y โ€”
.m--32 margin: -2rem โœ… t r b l x y โ€”
.m--40 margin: -2.5rem โœ… t r b l x y โ€”
.m--48 margin: -3rem โœ… t r b l x y โ€”
.m--56 margin: -3.5rem โœ… t r b l x y โ€”
.m--64 margin: -4rem โœ… t r b l x y โ€”
.m-0 margin: 0 โœ… t r b l x y โ€”
.m-1 margin: 0.0625rem โœ… t r b l x y โ€”
.m-2 margin: 0.125rem โœ… t r b l x y โ€”
.m-3 margin: 0.1875rem โœ… t r b l x y โ€”
.m-4 margin: 0.25rem โœ… t r b l x y โ€”
.m-6 margin: 0.375rem โœ… t r b l x y โ€”
.m-8 margin: 0.5rem โœ… t r b l x y โ€”
.m-12 margin: 0.75rem โœ… t r b l x y โ€”
.m-14 margin: 0.875rem โœ… t r b l x y โ€”
.m-16 margin: 1rem โœ… t r b l x y โ€”
.m-24 margin: 1.5rem โœ… t r b l x y โ€”
.m-32 margin: 2rem โœ… t r b l x y โ€”
.m-40 margin: 2.5rem โœ… t r b l x y โ€”
.m-48 margin: 3rem โœ… t r b l x y โ€”
.m-56 margin: 3.5rem โœ… t r b l x y โ€”
.m-64 margin: 4rem โœ… t r b l x y โ€”
.m-80 margin: 5rem โœ… t r b l x y โ€”
.m-96 margin: 6rem โœ… t r b l x y โ€”
.m-128 margin: 8rem โœ… t r b l x y โ€”
.m-256 margin: 16rem โœ… t r b l x y โ€”
.m-auto margin: auto โœ… t r b l x y โ€”

max-height

// src/core/layout/_dimension.scss:45
@include generators.utility-class-generator('max-h', 'max-height', $max-height-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.max-h-0 max-height: 0 โ€” โ€”
.max-h-1 max-height: 0.0625rem โ€” โ€”
.max-h-2 max-height: 0.125rem โ€” โ€”
.max-h-3 max-height: 0.1875rem โ€” โ€”
.max-h-4 max-height: 0.25rem โ€” โ€”
.max-h-5p max-height: 5% โ€” โ€”
.max-h-6 max-height: 0.375rem โ€” โ€”
.max-h-8 max-height: 0.5rem โ€” โ€”
.max-h-10p max-height: 10% โ€” โ€”
.max-h-12 max-height: 0.75rem โ€” โ€”
.max-h-14 max-height: 0.875rem โ€” โ€”
.max-h-15p max-height: 15% โ€” โ€”
.max-h-16 max-height: 1rem โ€” โ€”
.max-h-20p max-height: 20% โ€” โ€”
.max-h-24 max-height: 1.5rem โ€” โ€”
.max-h-25p max-height: 25% โ€” โ€”
.max-h-25vh max-height: 25vh โ€” โ€”
.max-h-32 max-height: 2rem โ€” โ€”
.max-h-40 max-height: 2.5rem โ€” โ€”
.max-h-48 max-height: 3rem โ€” โ€”
.max-h-50p max-height: 50% โ€” โ€”
.max-h-50vh max-height: 50vh โ€” โ€”
.max-h-56 max-height: 3.5rem โ€” โ€”
.max-h-64 max-height: 4rem โ€” โ€”
.max-h-75p max-height: 75% โ€” โ€”
.max-h-75vh max-height: 75vh โ€” โ€”
.max-h-80 max-height: 5rem โ€” โ€”
.max-h-96 max-height: 6rem โ€” โ€”
.max-h-100p max-height: 100% โ€” โ€”
.max-h-100vh max-height: 100vh โ€” โ€”
.max-h-128 max-height: 8rem โ€” โ€”
.max-h-256 max-height: 16rem โ€” โ€”
.max-h-none max-height: none โ€” โ€”

max-width

// src/core/layout/_dimension.scss:44
@include generators.utility-class-generator('max-w', 'max-width', $max-width-sizes, 'px');
// src/core/layout/_grid.scss:50
@include generators.grid-column-max-generator(config.$columns);

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;

// src/core/_config.scss:114
$columns: 12;
Class Declarations Dir Bp
.col-1-max max-width: 8.6666666667rem โ€” โ€”
.col-2-max max-width: 17.3333333333rem โ€” โ€”
.col-3-max max-width: 26rem โ€” โ€”
.col-4-max max-width: 34.6666666667rem โ€” โ€”
.col-5-max max-width: 43.3333333333rem โ€” โ€”
.col-6-max max-width: 52rem โ€” โ€”
.col-7-max max-width: 60.6666666667rem โ€” โ€”
.col-8-max max-width: 69.3333333333rem โ€” โ€”
.col-9-max max-width: 78rem โ€” โ€”
.col-10-max max-width: 86.6666666667rem โ€” โ€”
.col-11-max max-width: 95.3333333333rem โ€” โ€”
.max-w-0 max-width: 0 โ€” โ€”
.max-w-1 max-width: 0.0625rem โ€” โ€”
.max-w-2 max-width: 0.125rem โ€” โ€”
.max-w-3 max-width: 0.1875rem โ€” โ€”
.max-w-4 max-width: 0.25rem โ€” โ€”
.max-w-5p max-width: 5% โ€” โ€”
.max-w-6 max-width: 0.375rem โ€” โ€”
.max-w-8 max-width: 0.5rem โ€” โ€”
.max-w-10p max-width: 10% โ€” โ€”
.max-w-12 max-width: 0.75rem โ€” โ€”
.max-w-14 max-width: 0.875rem โ€” โ€”
.max-w-15p max-width: 15% โ€” โ€”
.max-w-16 max-width: 1rem โ€” โ€”
.max-w-20p max-width: 20% โ€” โ€”
.max-w-24 max-width: 1.5rem โ€” โ€”
.max-w-25p max-width: 25% โ€” โ€”
.max-w-25vw max-width: 25vw โ€” โ€”
.max-w-32 max-width: 2rem โ€” โ€”
.max-w-40 max-width: 2.5rem โ€” โ€”
.max-w-48 max-width: 3rem โ€” โ€”
.max-w-50p max-width: 50% โ€” โ€”
.max-w-50vw max-width: 50vw โ€” โ€”
.max-w-56 max-width: 3.5rem โ€” โ€”
.max-w-64 max-width: 4rem โ€” โ€”
.max-w-75p max-width: 75% โ€” โ€”
.max-w-75vw max-width: 75vw โ€” โ€”
.max-w-80 max-width: 5rem โ€” โ€”
.max-w-96 max-width: 6rem โ€” โ€”
.max-w-100p max-width: 100% โ€” โ€”
.max-w-100vw max-width: 100vw โ€” โ€”
.max-w-128 max-width: 8rem โ€” โ€”
.max-w-256 max-width: 16rem โ€” โ€”
.max-w-none max-width: none โ€” โ€”

min-height

// src/core/layout/_dimension.scss:43
@include generators.utility-class-generator('min-h', 'min-height', $min-height-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.min-h-0 min-height: 0 โ€” โ€”
.min-h-1 min-height: 0.0625rem โ€” โ€”
.min-h-2 min-height: 0.125rem โ€” โ€”
.min-h-3 min-height: 0.1875rem โ€” โ€”
.min-h-4 min-height: 0.25rem โ€” โ€”
.min-h-5p min-height: 5% โ€” โ€”
.min-h-6 min-height: 0.375rem โ€” โ€”
.min-h-8 min-height: 0.5rem โ€” โ€”
.min-h-10p min-height: 10% โ€” โ€”
.min-h-12 min-height: 0.75rem โ€” โ€”
.min-h-14 min-height: 0.875rem โ€” โ€”
.min-h-15p min-height: 15% โ€” โ€”
.min-h-16 min-height: 1rem โ€” โ€”
.min-h-20p min-height: 20% โ€” โ€”
.min-h-24 min-height: 1.5rem โ€” โ€”
.min-h-25p min-height: 25% โ€” โ€”
.min-h-25vh min-height: 25vh โ€” โ€”
.min-h-32 min-height: 2rem โ€” โ€”
.min-h-40 min-height: 2.5rem โ€” โ€”
.min-h-48 min-height: 3rem โ€” โ€”
.min-h-50p min-height: 50% โ€” โ€”
.min-h-50vh min-height: 50vh โ€” โ€”
.min-h-56 min-height: 3.5rem โ€” โ€”
.min-h-64 min-height: 4rem โ€” โ€”
.min-h-75p min-height: 75% โ€” โ€”
.min-h-75vh min-height: 75vh โ€” โ€”
.min-h-80 min-height: 5rem โ€” โ€”
.min-h-96 min-height: 6rem โ€” โ€”
.min-h-100p min-height: 100% โ€” โ€”
.min-h-100vh min-height: 100vh โ€” โ€”
.min-h-128 min-height: 8rem โ€” โ€”
.min-h-256 min-height: 16rem โ€” โ€”
.min-h-auto min-height: auto โ€” โ€”

min-width

// src/core/layout/_dimension.scss:42
@include generators.utility-class-generator('min-w', 'min-width', $min-width-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.min-w-0 min-width: 0 โ€” โ€”
.min-w-1 min-width: 0.0625rem โ€” โ€”
.min-w-2 min-width: 0.125rem โ€” โ€”
.min-w-3 min-width: 0.1875rem โ€” โ€”
.min-w-4 min-width: 0.25rem โ€” โ€”
.min-w-5p min-width: 5% โ€” โ€”
.min-w-6 min-width: 0.375rem โ€” โ€”
.min-w-8 min-width: 0.5rem โ€” โ€”
.min-w-10p min-width: 10% โ€” โ€”
.min-w-12 min-width: 0.75rem โ€” โ€”
.min-w-14 min-width: 0.875rem โ€” โ€”
.min-w-15p min-width: 15% โ€” โ€”
.min-w-16 min-width: 1rem โ€” โ€”
.min-w-20p min-width: 20% โ€” โ€”
.min-w-24 min-width: 1.5rem โ€” โ€”
.min-w-25p min-width: 25% โ€” โ€”
.min-w-25vw min-width: 25vw โ€” โ€”
.min-w-32 min-width: 2rem โ€” โ€”
.min-w-40 min-width: 2.5rem โ€” โ€”
.min-w-48 min-width: 3rem โ€” โ€”
.min-w-50p min-width: 50% โ€” โ€”
.min-w-50vw min-width: 50vw โ€” โ€”
.min-w-56 min-width: 3.5rem โ€” โ€”
.min-w-64 min-width: 4rem โ€” โ€”
.min-w-75p min-width: 75% โ€” โ€”
.min-w-75vw min-width: 75vw โ€” โ€”
.min-w-80 min-width: 5rem โ€” โ€”
.min-w-96 min-width: 6rem โ€” โ€”
.min-w-100p min-width: 100% โ€” โ€”
.min-w-100vw min-width: 100vw โ€” โ€”
.min-w-128 min-width: 8rem โ€” โ€”
.min-w-256 min-width: 16rem โ€” โ€”
.min-w-auto min-width: auto โ€” โ€”

object-fit

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.object-contain object-fit: contain โ€” โ€”
.object-cover object-fit: cover โ€” โ€”
.object-fill object-fit: fill โ€” โ€”

opacity

// src/core/style/_effects.scss:24
@include generators.utility-class-generator((
  prefix: 'opacity',
  property: 'opacity',
  values: (0: 0, 25: 0.25, 50: 0.5, 75: 0.75, 100: 1),
  responsive: false
));
Class Declarations Dir Bp
.opacity-0 opacity: 0 โ€” โ€”
.opacity-25 opacity: 0.25 โ€” โ€”
.opacity-50 opacity: 0.5 โ€” โ€”
.opacity-75 opacity: 0.75 โ€” โ€”
.opacity-100 opacity: 1 โ€” โ€”

order

// src/core/layout/_flex.scss:22
@include generators.utility-class-generator('order', 'order', (-1: -1, 0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 'first': -9999, 'last': 9999));
Class Declarations Dir Bp
.order--1 order: -1 โ€” โ€”
.order-0 order: 0 โ€” โ€”
.order-1 order: 1 โ€” โ€”
.order-2 order: 2 โ€” โ€”
.order-3 order: 3 โ€” โ€”
.order-4 order: 4 โ€” โ€”
.order-5 order: 5 โ€” โ€”
.order-6 order: 6 โ€” โ€”
.order-first order: -9999 โ€” โ€”
.order-last order: 9999 โ€” โ€”

overflow

// src/core/layout/_overflow.scss:5
@include generators.utility-class-generator('overflow', 'overflow', ('hidden', 'visible', 'auto', 'clip', 'scroll'));
Class Declarations Dir Bp
.overflow-auto overflow: auto โ€” โ€”
.overflow-clip overflow: clip โ€” โ€”
.overflow-hidden overflow: hidden โ€” โ€”
.overflow-scroll overflow: scroll โ€” โ€”
.overflow-visible overflow: visible โ€” โ€”

overflow-x

// src/core/layout/_overflow.scss:6
@include generators.utility-class-generator('overflow-x', 'overflow-x', ('hidden', 'visible', 'auto', 'clip', 'scroll'));
Class Declarations Dir Bp
.overflow-x-auto overflow-x: auto โ€” โ€”
.overflow-x-clip overflow-x: clip โ€” โ€”
.overflow-x-hidden overflow-x: hidden โ€” โ€”
.overflow-x-scroll overflow-x: scroll โ€” โ€”
.overflow-x-visible overflow-x: visible โ€” โ€”

overflow-y

// src/core/layout/_overflow.scss:7
@include generators.utility-class-generator('overflow-y', 'overflow-y', ('hidden', 'visible', 'auto', 'clip', 'scroll'));
Class Declarations Dir Bp
.overflow-y-auto overflow-y: auto โ€” โ€”
.overflow-y-clip overflow-y: clip โ€” โ€”
.overflow-y-hidden overflow-y: hidden โ€” โ€”
.overflow-y-scroll overflow-y: scroll โ€” โ€”
.overflow-y-visible overflow-y: visible โ€” โ€”

padding

// src/core/layout/_padding.scss:7
@include generators.utility-class-generator((
  prefix: 'p',
  property: 'padding',
  values: $padding-sizes,
  unit: 'px',
  orientations: config.$orientations
));

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;

// src/core/_config.scss:84
$orientations: (
  't': ('top'),
  'r': ('right'),
  'b': ('bottom'),
  'l': ('left'),
  'x': ('right', 'left'),
  'y': ('top', 'bottom')
);
Class Declarations Dir Bp
.p-0 padding: 0 โœ… t r b l x y โ€”
.p-1 padding: 0.0625rem โœ… t r b l x y โ€”
.p-2 padding: 0.125rem โœ… t r b l x y โ€”
.p-3 padding: 0.1875rem โœ… t r b l x y โ€”
.p-4 padding: 0.25rem โœ… t r b l x y โ€”
.p-6 padding: 0.375rem โœ… t r b l x y โ€”
.p-8 padding: 0.5rem โœ… t r b l x y โ€”
.p-12 padding: 0.75rem โœ… t r b l x y โ€”
.p-14 padding: 0.875rem โœ… t r b l x y โ€”
.p-16 padding: 1rem โœ… t r b l x y โ€”
.p-24 padding: 1.5rem โœ… t r b l x y โ€”
.p-32 padding: 2rem โœ… t r b l x y โ€”
.p-40 padding: 2.5rem โœ… t r b l x y โ€”
.p-48 padding: 3rem โœ… t r b l x y โ€”
.p-56 padding: 3.5rem โœ… t r b l x y โ€”
.p-64 padding: 4rem โœ… t r b l x y โ€”
.p-80 padding: 5rem โœ… t r b l x y โ€”
.p-96 padding: 6rem โœ… t r b l x y โ€”
.p-128 padding: 8rem โœ… t r b l x y โ€”
.p-256 padding: 16rem โœ… t r b l x y โ€”

place-content

// src/core/layout/_grid.scss:71
@include generators.utility-class-generator('place-content', 'place-content', ('normal', 'center', 'start', 'end', 'stretch', 'space-between', 'space-around'));
Class Declarations Dir Bp
.place-content-center place-content: center โ€” โ€”
.place-content-end place-content: end โ€” โ€”
.place-content-normal place-content: normal โ€” โ€”
.place-content-space-around place-content: space-around โ€” โ€”
.place-content-space-between place-content: space-between โ€” โ€”
.place-content-start place-content: start โ€” โ€”
.place-content-stretch place-content: stretch โ€” โ€”

place-items

// src/core/layout/_grid.scss:70
@include generators.utility-class-generator('place', 'place-items', ('normal', 'center', 'start', 'end', 'stretch'));
Class Declarations Dir Bp
.place-center place-items: center โ€” โ€”
.place-end place-items: end โ€” โ€”
.place-normal place-items: normal โ€” โ€”
.place-start place-items: start โ€” โ€”
.place-stretch place-items: stretch โ€” โ€”

pointer-events

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.events-all pointer-events: all โ€” โ€”
.events-auto pointer-events: auto โ€” โ€”
.events-none pointer-events: none โ€” โ€”

position

// src/core/layout/_position.scss:43
@include generators.utility-class-generator('position', 'position', ('static', 'absolute', 'fixed', 'relative', 'sticky'));
Class Declarations Dir Bp
.position-absolute position: absolute โ€” โ€”
.position-fixed position: fixed โ€” โ€”
.position-relative position: relative โ€” โ€”
.position-static position: static โ€” โ€”
.position-sticky position: sticky โ€” โ€”
// src/core/layout/_position.scss:5
@include generators.utility-class-generator('r', 'right', config.$sizes, 'px');
// src/core/layout/_position.scss:10
@include generators.utility-class-generator('r', 'right', config.$negative-sizes, 'px');
// src/core/layout/_position.scss:15
@include generators.utility-class-generator('r', 'right', config.$percent-sizes, '%', 'p');
// src/core/layout/_position.scss:20
@include generators.utility-class-generator('r', 'right', config.$negative-percent-sizes, '%', 'p');

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;
$percent-sizes:  5,10,15,20,25,50,75,100;

// src/core/_config.scss:35
$negative-percent-sizes: -25,-50,-75,-100;
Class Declarations Dir Bp
.r--1 right: -0.0625rem โ€” โ€”
.r--2 right: -0.125rem โ€” โ€”
.r--3 right: -0.1875rem โ€” โ€”
.r--4 right: -0.25rem โ€” โ€”
.r--8 right: -0.5rem โ€” โ€”
.r--12 right: -0.75rem โ€” โ€”
.r--14 right: -0.875rem โ€” โ€”
.r--16 right: -1rem โ€” โ€”
.r--24 right: -1.5rem โ€” โ€”
.r--25p right: -25% โ€” โ€”
.r--32 right: -2rem โ€” โ€”
.r--40 right: -2.5rem โ€” โ€”
.r--48 right: -3rem โ€” โ€”
.r--50p right: -50% โ€” โ€”
.r--56 right: -3.5rem โ€” โ€”
.r--64 right: -4rem โ€” โ€”
.r--75p right: -75% โ€” โ€”
.r--100p right: -100% โ€” โ€”
.r-0 right: 0 โ€” โ€”
.r-1 right: 0.0625rem โ€” โ€”
.r-2 right: 0.125rem โ€” โ€”
.r-3 right: 0.1875rem โ€” โ€”
.r-4 right: 0.25rem โ€” โ€”
.r-5p right: 5% โ€” โ€”
.r-6 right: 0.375rem โ€” โ€”
.r-8 right: 0.5rem โ€” โ€”
.r-10p right: 10% โ€” โ€”
.r-12 right: 0.75rem โ€” โ€”
.r-14 right: 0.875rem โ€” โ€”
.r-15p right: 15% โ€” โ€”
.r-16 right: 1rem โ€” โ€”
.r-20p right: 20% โ€” โ€”
.r-24 right: 1.5rem โ€” โ€”
.r-25p right: 25% โ€” โ€”
.r-32 right: 2rem โ€” โ€”
.r-40 right: 2.5rem โ€” โ€”
.r-48 right: 3rem โ€” โ€”
.r-50p right: 50% โ€” โ€”
.r-56 right: 3.5rem โ€” โ€”
.r-64 right: 4rem โ€” โ€”
.r-75p right: 75% โ€” โ€”
.r-80 right: 5rem โ€” โ€”
.r-96 right: 6rem โ€” โ€”
.r-100p right: 100% โ€” โ€”
.r-128 right: 8rem โ€” โ€”
.r-256 right: 16rem โ€” โ€”

rotate

// src/core/style/_transform.scss:24
@include generators.utility-class-generator('rotate', 'rotate', (-180: -180, -90: -90, -45: -45, 0: 0, 45: 45, 90: 90, 180: 180), 'deg');
Class Declarations Dir Bp
.rotate--45 rotate: -45deg โ€” โ€”
.rotate--90 rotate: -90deg โ€” โ€”
.rotate--180 rotate: -180deg โ€” โ€”
.rotate-0 rotate: 0deg โ€” โ€”
.rotate-45 rotate: 45deg โ€” โ€”
.rotate-90 rotate: 90deg โ€” โ€”
.rotate-180 rotate: 180deg โ€” โ€”

row-gap

// src/core/layout/_gap.scss:10
@include generators.utility-class-generator('gap-y', 'row-gap', $gap-sizes, 'px');

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
Class Declarations Dir Bp
.gap-y-0 row-gap: 0 โ€” โ€”
.gap-y-1 row-gap: 0.0625rem โ€” โ€”
.gap-y-2 row-gap: 0.125rem โ€” โ€”
.gap-y-3 row-gap: 0.1875rem โ€” โ€”
.gap-y-4 row-gap: 0.25rem โ€” โ€”
.gap-y-6 row-gap: 0.375rem โ€” โ€”
.gap-y-8 row-gap: 0.5rem โ€” โ€”
.gap-y-12 row-gap: 0.75rem โ€” โ€”
.gap-y-14 row-gap: 0.875rem โ€” โ€”
.gap-y-16 row-gap: 1rem โ€” โ€”
.gap-y-24 row-gap: 1.5rem โ€” โ€”
.gap-y-32 row-gap: 2rem โ€” โ€”
.gap-y-40 row-gap: 2.5rem โ€” โ€”
.gap-y-48 row-gap: 3rem โ€” โ€”
.gap-y-56 row-gap: 3.5rem โ€” โ€”
.gap-y-64 row-gap: 4rem โ€” โ€”
.gap-y-80 row-gap: 5rem โ€” โ€”
.gap-y-96 row-gap: 6rem โ€” โ€”
.gap-y-128 row-gap: 8rem โ€” โ€”
.gap-y-256 row-gap: 16rem โ€” โ€”

scale

// src/core/style/_transform.scss:21
@include generators.utility-class-generator('scale', 'scale', (0: 0, 50: 0.5, 75: 0.75, 100: 1, 110: 1.1, 125: 1.25, 150: 1.5));
Class Declarations Dir Bp
.scale-0 scale: 0 โ€” โ€”
.scale-50 scale: 0.5 โ€” โ€”
.scale-75 scale: 0.75 โ€” โ€”
.scale-100 scale: 1 โ€” โ€”
.scale-110 scale: 1.1 โ€” โ€”
.scale-125 scale: 1.25 โ€” โ€”
.scale-150 scale: 1.5 โ€” โ€”

scrollbar-width

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.hide-native-scrollbar scrollbar-width: none โ€” โ€”

text-align

// src/core/style/_typography.scss:119
@include generators.utility-class-generator('text', 'text-align', ('left', 'right', 'center'), '', '', false, true);
Class Declarations Dir Bp
.text-center text-align: center โ€” โ€”
.text-left text-align: left โ€” โ€”
.text-right text-align: right โ€” โ€”

text-decoration

// src/core/style/_typography.scss:125
@include generators.utility-class-generator('text', 'text-decoration', ('underline', 'overline', 'line-through', (value: 'none', alias: 'text-decoration-none')), '', '', false, true);
Class Declarations Dir Bp
.text-decoration-none text-decoration: none โ€” โ€”
.text-line-through text-decoration: line-through โ€” โ€”
.text-none text-decoration: none โ€” โ€”
.text-overline text-decoration: overline โ€” โ€”
.text-underline text-decoration: underline โ€” โ€”

text-transform

// src/core/style/_typography.scss:126
@include generators.utility-class-generator('text', 'text-transform', ('uppercase', 'lowercase', 'capitalize', 'full-width', 'full-size-kana', (value: 'none', prefix: 'text-transform')), '', '', false, true);
Class Declarations Dir Bp
.text-capitalize text-transform: capitalize โ€” โ€”
.text-full-size-kana text-transform: full-size-kana โ€” โ€”
.text-full-width text-transform: full-width โ€” โ€”
.text-lowercase text-transform: lowercase โ€” โ€”
.text-transform-none text-transform: none โ€” โ€”
.text-uppercase text-transform: uppercase โ€” โ€”

text-wrap

// src/core/style/_typography.scss:163
@include generators.utility-class-generator('text', 'text-wrap', ('balance', 'pretty'), '', '', false, false);
Class Declarations Dir Bp
.text-balance text-wrap: balance โ€” โ€”
.text-pretty text-wrap: pretty โ€” โ€”

top

// src/core/layout/_position.scss:4
@include generators.utility-class-generator('t', 'top', config.$sizes, 'px');
// src/core/layout/_position.scss:9
@include generators.utility-class-generator('t', 'top', config.$negative-sizes, 'px');
// src/core/layout/_position.scss:14
@include generators.utility-class-generator('t', 'top', config.$percent-sizes, '%', 'p');
// src/core/layout/_position.scss:19
@include generators.utility-class-generator('t', 'top', config.$negative-percent-sizes, '%', 'p');

Config values it reads:

// src/core/_config.scss:27
$sizes:          0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;
$negative-sizes: -1,-2,-3,-4,-8,-12,-14,-16,-24,-32,-40,-48,-56,-64;
$percent-sizes:  5,10,15,20,25,50,75,100;

// src/core/_config.scss:35
$negative-percent-sizes: -25,-50,-75,-100;
Class Declarations Dir Bp
.t--1 top: -0.0625rem โ€” โ€”
.t--2 top: -0.125rem โ€” โ€”
.t--3 top: -0.1875rem โ€” โ€”
.t--4 top: -0.25rem โ€” โ€”
.t--8 top: -0.5rem โ€” โ€”
.t--12 top: -0.75rem โ€” โ€”
.t--14 top: -0.875rem โ€” โ€”
.t--16 top: -1rem โ€” โ€”
.t--24 top: -1.5rem โ€” โ€”
.t--25p top: -25% โ€” โ€”
.t--32 top: -2rem โ€” โ€”
.t--40 top: -2.5rem โ€” โ€”
.t--48 top: -3rem โ€” โ€”
.t--50p top: -50% โ€” โ€”
.t--56 top: -3.5rem โ€” โ€”
.t--64 top: -4rem โ€” โ€”
.t--75p top: -75% โ€” โ€”
.t--100p top: -100% โ€” โ€”
.t-0 top: 0 โ€” โ€”
.t-1 top: 0.0625rem โ€” โ€”
.t-2 top: 0.125rem โ€” โ€”
.t-3 top: 0.1875rem โ€” โ€”
.t-4 top: 0.25rem โ€” โ€”
.t-5p top: 5% โ€” โ€”
.t-6 top: 0.375rem โ€” โ€”
.t-8 top: 0.5rem โ€” โ€”
.t-10p top: 10% โ€” โ€”
.t-12 top: 0.75rem โ€” โ€”
.t-14 top: 0.875rem โ€” โ€”
.t-15p top: 15% โ€” โ€”
.t-16 top: 1rem โ€” โ€”
.t-20p top: 20% โ€” โ€”
.t-24 top: 1.5rem โ€” โ€”
.t-25p top: 25% โ€” โ€”
.t-32 top: 2rem โ€” โ€”
.t-40 top: 2.5rem โ€” โ€”
.t-48 top: 3rem โ€” โ€”
.t-50p top: 50% โ€” โ€”
.t-56 top: 3.5rem โ€” โ€”
.t-64 top: 4rem โ€” โ€”
.t-75p top: 75% โ€” โ€”
.t-80 top: 5rem โ€” โ€”
.t-96 top: 6rem โ€” โ€”
.t-100p top: 100% โ€” โ€”
.t-128 top: 8rem โ€” โ€”
.t-256 top: 16rem โ€” โ€”

transition

Hand-written in src/core/style/_effects.scss.

Class Declarations Dir Bp
.transition-none transition: none โ€” โ€”

translate

// src/core/style/_transform.scss:17
@include generators.utility-class-generator('translate-x', 'translate', (-100: '-100%', -50: '-50%', 0: '0', 50: '50%', 100: '100%'));
// src/core/style/_transform.scss:18
@include generators.utility-class-generator('translate-y', 'translate', (-100: '0 -100%', -50: '0 -50%', 0: '0', 50: '0 50%', 100: '0 100%'));
Class Declarations Dir Bp
.translate-x--50 translate: -50% โ€” โ€”
.translate-x--100 translate: -100% โ€” โ€”
.translate-x-0 translate: 0 โ€” โ€”
.translate-x-50 translate: 50% โ€” โ€”
.translate-x-100 translate: 100% โ€” โ€”
.translate-y--50 translate: 0 -50% โ€” โ€”
.translate-y--100 translate: 0 -100% โ€” โ€”
.translate-y-0 translate: 0 โ€” โ€”
.translate-y-50 translate: 0 50% โ€” โ€”
.translate-y-100 translate: 0 100% โ€” โ€”

user-select

Hand-written in src/core/layout/_misc.scss.

Class Declarations Dir Bp
.no-select -webkit-user-select: none; user-select: none โ€” โ€”

visibility

// src/core/layout/_visibility.scss:3
@include generators.utility-class-generator('v', 'visibility', ('hidden', 'visible'));
Class Declarations Dir Bp
.v-hidden visibility: hidden โ€” โ€”
.v-visible visibility: visible โ€” โ€”

white-space

Hand-written in src/core/style/_typography.scss.

Class Declarations Dir Bp
.text-nowrap white-space: nowrap โ€” โ€”

width

// src/core/layout/_dimension.scss:37
@include generators.utility-class-generator('w', 'width', $width-sizes, 'px');
// src/core/layout/_grid.scss:48
@include generators.grid-column-generator(config.$columns);

Config values it reads:

// src/core/_config.scss:27
$sizes: 0,1,2,3,4,6,8,12,14,16,24,32,40,48,56,64,80,96,128,256;

// src/core/_config.scss:114
$columns: 12;
Class Declarations Dir Bp
.col-1 width: 8.3333333333% โ€” โ€”
.col-2 width: 16.6666666667% โ€” โ€”
.col-3 width: 25% โ€” โ€”
.col-4 width: 33.3333333333% โ€” โ€”
.col-5 width: 41.6666666667% โ€” โ€”
.col-6 width: 50% โ€” โ€”
.col-7 width: 58.3333333333% โ€” โ€”
.col-8 width: 66.6666666667% โ€” โ€”
.col-9 width: 75% โ€” โ€”
.col-10 width: 83.3333333333% โ€” โ€”
.col-11 width: 91.6666666667% โ€” โ€”
.col-12 width: 100% โ€” โ€”
.w-0 width: 0 โ€” โ€”
.w-1 width: 0.0625rem โ€” โ€”
.w-2 width: 0.125rem โ€” โ€”
.w-3 width: 0.1875rem โ€” โ€”
.w-4 width: 0.25rem โ€” โ€”
.w-5p width: 5% โ€” โ€”
.w-6 width: 0.375rem โ€” โ€”
.w-8 width: 0.5rem โ€” โ€”
.w-10p width: 10% โ€” โ€”
.w-12 width: 0.75rem โ€” โ€”
.w-14 width: 0.875rem โ€” โ€”
.w-15p width: 15% โ€” โ€”
.w-16 width: 1rem โ€” โ€”
.w-20p width: 20% โ€” โ€”
.w-24 width: 1.5rem โ€” โ€”
.w-25p width: 25% โ€” โ€”
.w-25vw width: 25vw โ€” โ€”
.w-32 width: 2rem โ€” โ€”
.w-40 width: 2.5rem โ€” โ€”
.w-48 width: 3rem โ€” โ€”
.w-50p width: 50% โ€” โ€”
.w-50vw width: 50vw โ€” โ€”
.w-56 width: 3.5rem โ€” โ€”
.w-64 width: 4rem โ€” โ€”
.w-75p width: 75% โ€” โ€”
.w-75vw width: 75vw โ€” โ€”
.w-80 width: 5rem โ€” โ€”
.w-96 width: 6rem โ€” โ€”
.w-100p width: 100% โ€” โ€”
.w-100vw width: 100vw โ€” โ€”
.w-128 width: 8rem โ€” โ€”
.w-256 width: 16rem โ€” โ€”
.w-auto width: auto โ€” โ€”
.w-inherit width: inherit โ€” โ€”

z-index

// src/core/layout/_position.scss:44
@include generators.utility-class-generator('z', 'z-index', (config.$z-index));

Config values it reads:

// src/core/_config.scss:43
$z-index: -1,0,1,2,10,20,50,100;
Class Declarations Dir Bp
.z--1 z-index: -1 โ€” โ€”
.z-0 z-index: 0 โ€” โ€”
.z-1 z-index: 1 โ€” โ€”
.z-2 z-index: 2 โ€” โ€”
.z-10 z-index: 10 โ€” โ€”
.z-20 z-index: 20 โ€” โ€”
.z-50 z-index: 50 โ€” โ€”
.z-100 z-index: 100 โ€” โ€”

multi-property

// src/core/style/_typography.scss:45
@include generators.typography-generator(config.$typography);

Config values it reads:

// src/core/_config.scss:391
$typography: (
  'h1, .h1': (
    desktop: (48px, null, $heading-line-height, bold),
    mobile: (32px, null, $heading-line-height, bold)
  ),
  'h2, .h2': (
    desktop: (32px, null, $heading-line-height, bold),
    mobile: (24px, null, $heading-line-height, bold)
  ),
  'h3, .h3': (
    desktop: (24px, null, $heading-line-height, bold),
    mobile: (20px, null, $heading-line-height, bold)
  ),
  'h4, .h4': (
    desktop: (20px, null, $heading-line-height, bold),
    mobile: (18px, null, $heading-line-height, bold)
  ),
  'h5, .h5': ($base-font-size, null, $heading-line-height, bold),
  'h6, .h6': (14px, null, $heading-line-height, bold),
  '.p1': (24px, null, $paragraph-line-height),
  '.p2': (20px, null, $paragraph-line-height),
  'p': ($base-font-size, null, $paragraph-line-height),
  '.p3, figcaption': (14px, null, $paragraph-line-height),
  '.p4, small': (12px, null, $paragraph-line-height),
  '.supertitle': (14px, 2px, $paragraph-line-height, 500, uppercase)
);
Class Declarations Dir Bp
.absolute-center left: 50%; position: absolute; top: 50%; transform: translate3d(-50%, -50%, 0) โ€” โ€”
.absolute-center-horizontal left: 50%; position: absolute; transform: translateX(-50%) โ€” โ€”
.absolute-center-vertical position: absolute; top: 50%; transform: translateY(-50%) โ€” โ€”
.absolute-cover height: 100%; left: 0; position: absolute; top: 0; width: 100% โ€” โ€”
.btn align-items: center; -webkit-appearance: none; appearance: none; background: none; border: 0; margin: 0; padding: 1rem 2rem; text-decoration: none; color: var(--color-foreground); background-color: var(--color-primary); border-radius: 0.25rem; cursor: pointer; display: inline-flex; justify-content: center; min-height: 3.5rem โ€” โ€”
.btn-inverted background-color: var(--color-foreground); color: var(--color-background) โ€” โ€”
.btn-outline background: transparent; border: solid 2px var(--color-foreground); color: var(--color-foreground); padding: 0.875rem 1.875rem โ€” โ€”
.container margin-left: auto; margin-right: auto; max-width: 105rem; padding-left: 1rem; padding-right: 1rem โ€” โ€”
.grid display: flex; flex-flow: row wrap โ€” โ€”
.h1 font-size: 2rem; line-height: 1.25; font-weight: bold โ€” โ€”
.h2 font-size: 1.5rem; line-height: 1.25; font-weight: bold โ€” โ€”
.h3 font-size: 1.25rem; line-height: 1.25; font-weight: bold โ€” โ€”
.h4 font-size: 1.125rem; line-height: 1.25; font-weight: bold โ€” โ€”
.h5 font-size: 1rem; line-height: 1.25; font-weight: bold โ€” โ€”
.h6 font-size: 0.875rem; line-height: 1.25; font-weight: bold โ€” โ€”
.line-clamp-1 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 1; line-clamp: 1 โ€” โ€”
.line-clamp-2 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2 โ€” โ€”
.line-clamp-3 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3 โ€” โ€”
.line-clamp-4 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 4; line-clamp: 4 โ€” โ€”
.line-clamp-5 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 5; line-clamp: 5 โ€” โ€”
.line-clamp-6 display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 6; line-clamp: 6 โ€” โ€”
.p1 font-size: 1.5rem; line-height: 1.6 โ€” โ€”
.p2 font-size: 1.25rem; line-height: 1.6 โ€” โ€”
.p3 font-size: 0.875rem; line-height: 1.6 โ€” โ€”
.p4 font-size: 0.75rem; line-height: 1.6 โ€” โ€”
.prose max-width: 45rem; overflow-wrap: break-word โ€” โ€”
.sr-only clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px โ€” โ€”
.supertitle font-size: 0.875rem; letter-spacing: 0.1428571429em; line-height: 1.6; font-weight: 500; text-transform: uppercase โ€” โ€”
.truncate overflow: hidden; white-space: nowrap; text-overflow: ellipsis โ€” โ€”

CSS variables

Custom properties emitted from the config maps. Override them at runtime to retheme without rebuilding.

// src/core/style/_color.scss:11
@include generators.css-variable-generator('color', $colors);
// src/core/style/_color.scss:130
@include generators.css-variable-generator('color', $mode-colors);
// src/core/style/_effects.scss:11
@include generators.css-variable-generator('shadow', config.$shadows);

Config values it reads:

// src/core/_config.scss:124
$colors: (
  foreground: #1a1a1d,
  background: #fff,
  black: #1a1a1d,
  white: #fff,
  primary: #f6c026,
  // Its own token rather than `primary`, because everything that reads it โ€”
  // links, focus rings, an active control โ€” is foreground and has a contrast
  // floor a brand color does not: `primary` is free to be a yellow that only
  // ever sits behind text, while this has to stay readable as text on
  // `background`. 8.6:1 here, 8:1 on the dark counterpart below.
  // Called `link` before 4.1, which named one of those uses and read as wrong
  // for the others; `--color-link` and `.text-link` still resolve, see
  // style/_color.scss.
  accent: #0f4eb3,
  // Status roles. Every value is a grade that $palettes already generates โ€”
  // these name one, they do not add a hue, so a project that retunes `red`
  // and re-picks `danger` from the new ladder stays in one palette.
  // They are label and body text on `background`, not just a border on a
  // tinted callout, so each clears 4.5:1 in its own mode. Since $palette-grades
  // pins every palette to the same lightness ladder, that is now one grade for
  // all four rather than four hand-picked ones: 600 on white, and 400 on the
  // dark background โ€” see the `dark` entry in $color-modes below.
  danger: #c40d20,   // red-600,    6.1:1
  success: #077f1e,  // green-600,  5.2:1
  warning: #98560e,  // orange-600, 5.7:1
  info: #2563ca      // blue-600,   5.7:1
);

// src/core/_config.scss:173
$palette-grades: (
  100: (96%, 0.5),
  200: (90%, 0.7),
  300: (82%, 0.85),
  400: (72%, 0.95),
  500: (62%, 1),
  600: (52%, 1),
  700: (42%, 0.95),
  800: (32%, 0.85),
  900: (22%, 0.7)
);

// src/core/_config.scss:193
$palettes: (
  gray: #8c8c8e,
  yellow: #f6c026,
  orange: #f4912a,
  red: #e41328,
  violet: #752a6f,
  purple: #472573,
  indigo: #3f00ff,
  blue: #0f4eb3,
  teal: #00a4a4,
  green: #10af2e,
  lime: #a4c400,
);

// src/core/_config.scss:432
$shadows: (
  'sm': 0 1px 2px rgb(0 0 0 / 5%),
  'md': 0 4px 6px -1px rgb(0 0 0 / 10%),
  'lg': 0 10px 15px -3px rgb(0 0 0 / 10%),
  'xl': 0 20px 25px -5px rgb(0 0 0 / 10%),
  'none': none
);

:root

Variable Value
--radius 0.25rem

:root

Variable Value
--color-foreground #1a1a1d
--color-background #fff
--color-black #1a1a1d
--color-white #fff
--color-primary #f6c026
--color-accent #0f4eb3
--color-danger #c40d20
--color-success #077f1e
--color-warning #98560e
--color-info #2563ca
--color-gray-100 rgb(242, 242, 242)
--color-gray-200 rgb(222, 222, 222)
--color-gray-300 rgb(196, 196, 197)
--color-gray-400 rgb(164, 164, 166)
--color-gray-500 rgb(134, 134, 136)
--color-gray-600 rgb(105, 105, 107)
--color-gray-700 rgb(77, 77, 79)
--color-gray-800 rgb(51, 51, 52)
--color-gray-900 rgb(26, 26, 27)
--color-yellow-100 rgb(254, 241, 210)
--color-yellow-200 rgb(252, 218, 139)
--color-yellow-300 rgb(234, 190, 79)
--color-yellow-400 rgb(201, 158, 44)
--color-yellow-500 rgb(166, 128, 21)
--color-yellow-600 rgb(130, 100, 14)
--color-yellow-700 rgb(96, 74, 15)
--color-yellow-800 rgb(63, 49, 14)
--color-yellow-900 rgb(33, 26, 9)
--color-orange-100 rgb(252, 239, 229)
--color-orange-200 rgb(248, 215, 188)
--color-orange-300 rgb(248, 180, 122)
--color-orange-400 rgb(231, 139, 48)
--color-orange-500 rgb(192, 111, 25)
--color-orange-600 rgb(152, 86, 14)
--color-orange-700 rgb(112, 63, 13)
--color-orange-800 rgb(74, 42, 11)
--color-orange-900 rgb(39, 22, 7)
--color-red-100 rgb(250, 239, 237)
--color-red-200 rgb(247, 213, 209)
--color-red-300 rgb(249, 174, 167)
--color-red-400 rgb(253, 116, 108)
--color-red-500 rgb(246, 25, 45)
--color-red-600 rgb(196, 13, 32)
--color-red-700 rgb(144, 17, 25)
--color-red-800 rgb(95, 18, 19)
--color-red-900 rgb(50, 11, 10)
--color-violet-100 rgb(249, 238, 247)
--color-violet-200 rgb(243, 210, 238)
--color-violet-300 rgb(239, 169, 230)
--color-violet-400 rgb(235, 106, 223)
--color-violet-500 rgb(198, 78, 188)
--color-violet-600 rgb(156, 59, 148)
--color-violet-700 rgb(115, 44, 109)
--color-violet-800 rgb(75, 31, 71)
--color-violet-900 rgb(40, 17, 37)
--color-purple-100 rgb(242, 240, 247)
--color-purple-200 rgb(225, 218, 239)
--color-purple-300 rgb(202, 188, 232)
--color-purple-400 rgb(175, 148, 225)
--color-purple-500 rgb(151, 106, 219)
--color-purple-600 rgb(123, 69, 194)
--color-purple-700 rgb(90, 52, 142)
--color-purple-800 rgb(59, 36, 93)
--color-purple-900 rgb(31, 19, 49)
--color-indigo-100 rgb(239, 241, 249)
--color-indigo-200 rgb(214, 221, 246)
--color-indigo-300 rgb(179, 193, 248)
--color-indigo-400 rgb(137, 156, 253)
--color-indigo-500 rgb(98, 114, 255)
--color-indigo-600 rgb(70, 57, 255)
--color-indigo-700 rgb(52, 4, 217)
--color-indigo-800 rgb(32, 19, 141)
--color-indigo-900 rgb(15, 15, 74)
--color-blue-100 rgb(239, 242, 247)
--color-blue-200 rgb(213, 223, 238)
--color-blue-300 rgb(177, 197, 230)
--color-blue-400 rgb(131, 166, 223)
--color-blue-500 rgb(84, 133, 216)
--color-blue-600 rgb(37, 99, 202)
--color-blue-700 rgb(13, 70, 161)
--color-blue-800 rgb(4, 45, 113)
--color-blue-900 rgb(5, 24, 60)
--color-teal-100 rgb(208, 252, 251)
--color-teal-200 rgb(127, 244, 244)
--color-teal-300 rgb(80, 220, 219)
--color-teal-400 rgb(36, 187, 187)
--color-teal-500 rgb(0, 154, 154)
--color-teal-600 rgb(0, 121, 121)
--color-teal-700 rgb(10, 89, 88)
--color-teal-800 rgb(14, 58, 58)
--color-teal-900 rgb(9, 31, 30)
--color-green-100 rgb(224, 251, 223)
--color-green-200 rgb(155, 249, 156)
--color-green-300 rgb(83, 231, 95)
--color-green-400 rgb(43, 197, 63)
--color-green-500 rgb(14, 162, 42)
--color-green-600 rgb(7, 127, 30)
--color-green-700 rgb(14, 94, 25)
--color-green-800 rgb(15, 62, 19)
--color-green-900 rgb(10, 32, 11)
--color-lime-100 rgb(231, 253, 171)
--color-lime-200 rgb(208, 237, 116)
--color-lime-300 rgb(181, 212, 71)
--color-lime-400 rgb(151, 179, 31)
--color-lime-500 rgb(122, 146, 0)
--color-lime-600 rgb(95, 115, 0)
--color-lime-700 rgb(70, 84, 7)
--color-lime-800 rgb(46, 56, 11)
--color-lime-900 rgb(24, 29, 8)
--danger var(--color-danger)
--success var(--color-success)
--warning var(--color-warning)
--info var(--color-info)
--bg var(--color-background)
--fg var(--color-foreground)
--fg-muted var(--color-gray-600)
--border var(--color-gray-300)
--accent var(--color-accent)

:root

Variable Value
--color-link var(--color-accent)

[data-color-scheme=dark]

Variable Value
--color-foreground #fff
--color-background #1a1a1d
--color-black #1a1a1d
--color-white #fff
--color-primary #3f00ff
--color-accent #8ab4ff
--color-danger #fd746c
--color-success #2bc53f
--color-warning #e78b30
--color-info #83a6df
--color-gray-100 rgb(26, 26, 27)
--color-gray-200 rgb(51, 51, 52)
--color-gray-300 rgb(77, 77, 79)
--color-gray-400 rgb(105, 105, 107)
--color-gray-500 rgb(134, 134, 136)
--color-gray-600 rgb(164, 164, 166)
--color-gray-700 rgb(196, 196, 197)
--color-gray-800 rgb(222, 222, 222)
--color-gray-900 rgb(242, 242, 242)
--color-yellow-100 rgb(33, 26, 9)
--color-yellow-200 rgb(63, 49, 14)
--color-yellow-300 rgb(96, 74, 15)
--color-yellow-400 rgb(130, 100, 14)
--color-yellow-500 rgb(166, 128, 21)
--color-yellow-600 rgb(201, 158, 44)
--color-yellow-700 rgb(234, 190, 79)
--color-yellow-800 rgb(252, 218, 139)
--color-yellow-900 rgb(254, 241, 210)
--color-orange-100 rgb(39, 22, 7)
--color-orange-200 rgb(74, 42, 11)
--color-orange-300 rgb(112, 63, 13)
--color-orange-400 rgb(152, 86, 14)
--color-orange-500 rgb(192, 111, 25)
--color-orange-600 rgb(231, 139, 48)
--color-orange-700 rgb(248, 180, 122)
--color-orange-800 rgb(248, 215, 188)
--color-orange-900 rgb(252, 239, 229)
--color-red-100 rgb(50, 11, 10)
--color-red-200 rgb(95, 18, 19)
--color-red-300 rgb(144, 17, 25)
--color-red-400 rgb(196, 13, 32)
--color-red-500 rgb(246, 25, 45)
--color-red-600 rgb(253, 116, 108)
--color-red-700 rgb(249, 174, 167)
--color-red-800 rgb(247, 213, 209)
--color-red-900 rgb(250, 239, 237)
--color-violet-100 rgb(40, 17, 37)
--color-violet-200 rgb(75, 31, 71)
--color-violet-300 rgb(115, 44, 109)
--color-violet-400 rgb(156, 59, 148)
--color-violet-500 rgb(198, 78, 188)
--color-violet-600 rgb(235, 106, 223)
--color-violet-700 rgb(239, 169, 230)
--color-violet-800 rgb(243, 210, 238)
--color-violet-900 rgb(249, 238, 247)
--color-purple-100 rgb(31, 19, 49)
--color-purple-200 rgb(59, 36, 93)
--color-purple-300 rgb(90, 52, 142)
--color-purple-400 rgb(123, 69, 194)
--color-purple-500 rgb(151, 106, 219)
--color-purple-600 rgb(175, 148, 225)
--color-purple-700 rgb(202, 188, 232)
--color-purple-800 rgb(225, 218, 239)
--color-purple-900 rgb(242, 240, 247)
--color-indigo-100 rgb(15, 15, 74)
--color-indigo-200 rgb(32, 19, 141)
--color-indigo-300 rgb(52, 4, 217)
--color-indigo-400 rgb(70, 57, 255)
--color-indigo-500 rgb(98, 114, 255)
--color-indigo-600 rgb(137, 156, 253)
--color-indigo-700 rgb(179, 193, 248)
--color-indigo-800 rgb(214, 221, 246)
--color-indigo-900 rgb(239, 241, 249)
--color-blue-100 rgb(5, 24, 60)
--color-blue-200 rgb(4, 45, 113)
--color-blue-300 rgb(13, 70, 161)
--color-blue-400 rgb(37, 99, 202)
--color-blue-500 rgb(84, 133, 216)
--color-blue-600 rgb(131, 166, 223)
--color-blue-700 rgb(177, 197, 230)
--color-blue-800 rgb(213, 223, 238)
--color-blue-900 rgb(239, 242, 247)
--color-teal-100 rgb(9, 31, 30)
--color-teal-200 rgb(14, 58, 58)
--color-teal-300 rgb(10, 89, 88)
--color-teal-400 rgb(0, 121, 121)
--color-teal-500 rgb(0, 154, 154)
--color-teal-600 rgb(36, 187, 187)
--color-teal-700 rgb(80, 220, 219)
--color-teal-800 rgb(127, 244, 244)
--color-teal-900 rgb(208, 252, 251)
--color-green-100 rgb(10, 32, 11)
--color-green-200 rgb(15, 62, 19)
--color-green-300 rgb(14, 94, 25)
--color-green-400 rgb(7, 127, 30)
--color-green-500 rgb(14, 162, 42)
--color-green-600 rgb(43, 197, 63)
--color-green-700 rgb(83, 231, 95)
--color-green-800 rgb(155, 249, 156)
--color-green-900 rgb(224, 251, 223)
--color-lime-100 rgb(24, 29, 8)
--color-lime-200 rgb(46, 56, 11)
--color-lime-300 rgb(70, 84, 7)
--color-lime-400 rgb(95, 115, 0)
--color-lime-500 rgb(122, 146, 0)
--color-lime-600 rgb(151, 179, 31)
--color-lime-700 rgb(181, 212, 71)
--color-lime-800 rgb(208, 237, 116)
--color-lime-900 rgb(231, 253, 171)

[data-theme=dark]

Variable Value
--color-foreground #fff
--color-background #1a1a1d
--color-black #1a1a1d
--color-white #fff
--color-primary #3f00ff
--color-accent #8ab4ff
--color-danger #fd746c
--color-success #2bc53f
--color-warning #e78b30
--color-info #83a6df
--color-gray-100 rgb(26, 26, 27)
--color-gray-200 rgb(51, 51, 52)
--color-gray-300 rgb(77, 77, 79)
--color-gray-400 rgb(105, 105, 107)
--color-gray-500 rgb(134, 134, 136)
--color-gray-600 rgb(164, 164, 166)
--color-gray-700 rgb(196, 196, 197)
--color-gray-800 rgb(222, 222, 222)
--color-gray-900 rgb(242, 242, 242)
--color-yellow-100 rgb(33, 26, 9)
--color-yellow-200 rgb(63, 49, 14)
--color-yellow-300 rgb(96, 74, 15)
--color-yellow-400 rgb(130, 100, 14)
--color-yellow-500 rgb(166, 128, 21)
--color-yellow-600 rgb(201, 158, 44)
--color-yellow-700 rgb(234, 190, 79)
--color-yellow-800 rgb(252, 218, 139)
--color-yellow-900 rgb(254, 241, 210)
--color-orange-100 rgb(39, 22, 7)
--color-orange-200 rgb(74, 42, 11)
--color-orange-300 rgb(112, 63, 13)
--color-orange-400 rgb(152, 86, 14)
--color-orange-500 rgb(192, 111, 25)
--color-orange-600 rgb(231, 139, 48)
--color-orange-700 rgb(248, 180, 122)
--color-orange-800 rgb(248, 215, 188)
--color-orange-900 rgb(252, 239, 229)
--color-red-100 rgb(50, 11, 10)
--color-red-200 rgb(95, 18, 19)
--color-red-300 rgb(144, 17, 25)
--color-red-400 rgb(196, 13, 32)
--color-red-500 rgb(246, 25, 45)
--color-red-600 rgb(253, 116, 108)
--color-red-700 rgb(249, 174, 167)
--color-red-800 rgb(247, 213, 209)
--color-red-900 rgb(250, 239, 237)
--color-violet-100 rgb(40, 17, 37)
--color-violet-200 rgb(75, 31, 71)
--color-violet-300 rgb(115, 44, 109)
--color-violet-400 rgb(156, 59, 148)
--color-violet-500 rgb(198, 78, 188)
--color-violet-600 rgb(235, 106, 223)
--color-violet-700 rgb(239, 169, 230)
--color-violet-800 rgb(243, 210, 238)
--color-violet-900 rgb(249, 238, 247)
--color-purple-100 rgb(31, 19, 49)
--color-purple-200 rgb(59, 36, 93)
--color-purple-300 rgb(90, 52, 142)
--color-purple-400 rgb(123, 69, 194)
--color-purple-500 rgb(151, 106, 219)
--color-purple-600 rgb(175, 148, 225)
--color-purple-700 rgb(202, 188, 232)
--color-purple-800 rgb(225, 218, 239)
--color-purple-900 rgb(242, 240, 247)
--color-indigo-100 rgb(15, 15, 74)
--color-indigo-200 rgb(32, 19, 141)
--color-indigo-300 rgb(52, 4, 217)
--color-indigo-400 rgb(70, 57, 255)
--color-indigo-500 rgb(98, 114, 255)
--color-indigo-600 rgb(137, 156, 253)
--color-indigo-700 rgb(179, 193, 248)
--color-indigo-800 rgb(214, 221, 246)
--color-indigo-900 rgb(239, 241, 249)
--color-blue-100 rgb(5, 24, 60)
--color-blue-200 rgb(4, 45, 113)
--color-blue-300 rgb(13, 70, 161)
--color-blue-400 rgb(37, 99, 202)
--color-blue-500 rgb(84, 133, 216)
--color-blue-600 rgb(131, 166, 223)
--color-blue-700 rgb(177, 197, 230)
--color-blue-800 rgb(213, 223, 238)
--color-blue-900 rgb(239, 242, 247)
--color-teal-100 rgb(9, 31, 30)
--color-teal-200 rgb(14, 58, 58)
--color-teal-300 rgb(10, 89, 88)
--color-teal-400 rgb(0, 121, 121)
--color-teal-500 rgb(0, 154, 154)
--color-teal-600 rgb(36, 187, 187)
--color-teal-700 rgb(80, 220, 219)
--color-teal-800 rgb(127, 244, 244)
--color-teal-900 rgb(208, 252, 251)
--color-green-100 rgb(10, 32, 11)
--color-green-200 rgb(15, 62, 19)
--color-green-300 rgb(14, 94, 25)
--color-green-400 rgb(7, 127, 30)
--color-green-500 rgb(14, 162, 42)
--color-green-600 rgb(43, 197, 63)
--color-green-700 rgb(83, 231, 95)
--color-green-800 rgb(155, 249, 156)
--color-green-900 rgb(224, 251, 223)
--color-lime-100 rgb(24, 29, 8)
--color-lime-200 rgb(46, 56, 11)
--color-lime-300 rgb(70, 84, 7)
--color-lime-400 rgb(95, 115, 0)
--color-lime-500 rgb(122, 146, 0)
--color-lime-600 rgb(151, 179, 31)
--color-lime-700 rgb(181, 212, 71)
--color-lime-800 rgb(208, 237, 116)
--color-lime-900 rgb(231, 253, 171)

:root

Variable Value
--font-heading Roboto, sans-serif
--font-paragraph Nunito, sans-serif
--font-mono monospace

:root

Variable Value
--transition-duration 250ms
--transition-easing cubic-bezier(0.86, 0, 0.07, 1)
--shadow-sm 0 1px 2px rgba(0, 0, 0, 0.05)
--shadow-md 0 4px 6px -1px rgba(0, 0, 0, 0.1)
--shadow-lg 0 10px 15px -3px rgba(0, 0, 0, 0.1)
--shadow-xl 0 20px 25px -5px rgba(0, 0, 0, 0.1)
--shadow-none none

Structural selectors

Rules that are not a single utility class โ€” resets, component internals and context-dependent rules.

Selector Declarations
button.reset align-items: center; -webkit-appearance: none; appearance: none; background: none; border: 0; margin: 0; padding: 0; text-decoration: none; color: inherit
.btn-outline.btn-inverted border-color: var(--color-background); color: var(--color-background)
ul.reset list-style: none; margin: 0; padding: 0; text-indent: 0
ol.reset list-style: none; margin: 0; padding: 0; text-indent: 0
html line-height: 1.6
body color: var(--color-foreground); font-family: var(--font-paragraph); background-color: var(--color-background); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale
h1 font-size: 2rem; line-height: 1.25; font-weight: bold
h2 font-size: 1.5rem; line-height: 1.25; font-weight: bold
h3 font-size: 1.25rem; line-height: 1.25; font-weight: bold
h4 font-size: 1.125rem; line-height: 1.25; font-weight: bold
h5 font-size: 1rem; line-height: 1.25; font-weight: bold
h6 font-size: 0.875rem; line-height: 1.25; font-weight: bold
p font-size: 1rem; line-height: 1.6
figcaption font-size: 0.875rem; line-height: 1.6
small font-size: 0.75rem; line-height: 1.6
h1 font-family: var(--font-heading)
h2 font-family: var(--font-heading)
h3 font-family: var(--font-heading)
h4 font-family: var(--font-heading)
h5 font-family: var(--font-heading)
h6 font-family: var(--font-heading)
h1 margin-bottom: 0.33em
h2 margin-bottom: 0.42em
h3 margin-bottom: 0.5em
h4 margin-bottom: 0.65em
h5 margin-bottom: 0.8em
h6 margin-bottom: 1em
.prose a color: var(--color-accent); text-decoration: underline
.prose a:hover text-decoration: none
.prose :is(p, ul, ol, dl, pre, table, figure, blockquote) margin: 0 0 1em
.prose :is(h1, h2, h3, h4, h5, h6) margin-top: 1.25em
.prose li margin: 0.25em 0
.prose li > :is(ul, ol) margin-bottom: 0
.prose > :first-child margin-top: 0
.prose > :last-child margin-bottom: 0
.prose :is(img, video, iframe, embed, object, svg) max-width: 100%
.prose :is(img, video) height: auto
.prose iframe width: 100%; height: auto; aspect-ratio: 16/9
.prose figcaption color: color-mix(in srgb, var(--color-foreground) 65%, transparent)
.prose table display: block; width: max-content; max-width: 100%; overflow-x: auto; border-collapse: collapse
.prose :is(th, td) padding: 0.5em 0.75em; border: 1px solid color-mix(in srgb, var(--color-foreground) 15%, transparent); text-align: left
.prose thead th background-color: color-mix(in srgb, var(--color-foreground) 5%, transparent)
.prose :is(pre, code, kbd, samp) font-family: var(--font-mono)
.prose :not(pre) > code padding: 0.15em 0.4em; border: 1px solid color-mix(in srgb, var(--color-foreground) 15%, transparent); border-radius: 0.25rem; background-color: color-mix(in srgb, var(--color-foreground) 5%, transparent); font-size: 0.875em
.prose pre padding: 1em; border: 1px solid color-mix(in srgb, var(--color-foreground) 15%, transparent); border-radius: 0.375rem; overflow-x: auto; background-color: color-mix(in srgb, var(--color-foreground) 5%, transparent); font-size: 0.875em
.prose blockquote padding-left: 1em; border-left: 3px solid color-mix(in srgb, var(--color-foreground) 15%, transparent); color: color-mix(in srgb, var(--color-foreground) 65%, transparent)
.prose hr margin: 2em 0; border: 0; border-top: 1px solid color-mix(in srgb, var(--color-foreground) 15%, transparent)
* box-sizing: border-box
[hidden] display: none
.hide-native-scrollbar::-webkit-scrollbar display: none
.grid-gutter.container margin-left: auto; margin-right: auto; padding-left: 0.5rem; padding-right: 0.5rem
.grid-gutter > [class*=col-] padding-left: 0.5rem; padding-right: 0.5rem
.grid-reverse .col-offset-0 margin-left: auto; margin-right: 0%
.grid-reverse .col-offset-1 margin-left: auto; margin-right: 8.3333333333%
.grid-reverse .col-offset-2 margin-left: auto; margin-right: 16.6666666667%
.grid-reverse .col-offset-3 margin-left: auto; margin-right: 25%
.grid-reverse .col-offset-4 margin-left: auto; margin-right: 33.3333333333%
.grid-reverse .col-offset-5 margin-left: auto; margin-right: 41.6666666667%
.grid-reverse .col-offset-6 margin-left: auto; margin-right: 50%
.grid-reverse .col-offset-7 margin-left: auto; margin-right: 58.3333333333%
.grid-reverse .col-offset-8 margin-left: auto; margin-right: 66.6666666667%
.grid-reverse .col-offset-9 margin-left: auto; margin-right: 75%
.grid-reverse .col-offset-10 margin-left: auto; margin-right: 83.3333333333%
.grid-reverse .col-offset-11 margin-left: auto; margin-right: 91.6666666667%
html -webkit-text-size-adjust: 100%; tab-size: 2
body margin: 0
hr height: 0; color: inherit
pre font-size: 1em
code font-size: 1em
kbd font-size: 1em
samp font-size: 1em
abbr[title] text-decoration: underline dotted
b font-weight: bolder
strong font-weight: bolder
small font-size: 80%
sub font-size: 75%; line-height: 0; position: relative; vertical-align: baseline
sup font-size: 75%; line-height: 0; position: relative; vertical-align: baseline
sub bottom: -0.25em
sup top: -0.5em
table border-color: inherit; text-indent: 0
button font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0
input font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0
optgroup font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0
select font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0
textarea font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0
button text-transform: none
select text-transform: none
button -webkit-appearance: button
[type=button] -webkit-appearance: button
[type=reset] -webkit-appearance: button
[type=submit] -webkit-appearance: button
::-moz-focus-inner border-style: none; padding: 0
:-moz-focusring outline: auto
:-moz-ui-invalid box-shadow: none
progress vertical-align: baseline
::-webkit-inner-spin-button height: auto
::-webkit-outer-spin-button height: auto
[type=search] -webkit-appearance: textfield; outline-offset: -2px
::-webkit-search-decoration -webkit-appearance: none
::-webkit-file-upload-button -webkit-appearance: button; font: inherit
summary display: list-item