CSS Variables Reference

Complete list of all Turbo Themes CSS custom properties.

CSS Variables Reference

Complete list of all CSS custom properties provided by Turbo Themes.

Background Variables

VariableDescriptionExample Value
--turbo-bg-baseMain page background#1e1e2e
--turbo-bg-surfaceCard and surface background#313244
--turbo-bg-overlayOverlay and dropdown background#45475a

Usage

body {
  background-color: var(--turbo-bg-base);
}

.card {
  background-color: var(--turbo-bg-surface);
}

.dropdown-menu {
  background-color: var(--turbo-bg-overlay);
}

Text Variables

VariableDescriptionExample Value
--turbo-text-primaryPrimary text color#cdd6f4
--turbo-text-secondarySecondary/muted text#a6adc8
--turbo-text-inverseText on colored backgrounds#1e1e2e

Usage

body {
  color: var(--turbo-text-primary);
}

.muted {
  color: var(--turbo-text-secondary);
}

.btn-primary {
  background: var(--turbo-brand-primary);
  color: var(--turbo-text-inverse);
}

Brand Variables

VariableDescriptionExample Value
--turbo-brand-primaryPrimary brand/accent color#89b4fa

Usage

.btn-primary {
  background-color: var(--turbo-brand-primary);
}

a {
  color: var(--turbo-brand-primary);
}

.highlight {
  border-left: 4px solid var(--turbo-brand-primary);
}

State Variables

VariableDescriptionExample Value
--turbo-state-successSuccess state color#a6e3a1
--turbo-state-warningWarning state color#f9e2af
--turbo-state-dangerDanger/error state color#f38ba8
--turbo-state-infoInfo state color#89dceb

Usage

.alert-success {
  background-color: var(--turbo-state-success);
  color: var(--turbo-text-inverse);
}

.alert-warning {
  background-color: var(--turbo-state-warning);
  color: var(--turbo-text-inverse);
}

.alert-danger {
  background-color: var(--turbo-state-danger);
  color: var(--turbo-text-inverse);
}

.alert-info {
  background-color: var(--turbo-state-info);
  color: var(--turbo-text-inverse);
}

Border Variables

VariableDescriptionExample Value
--turbo-border-defaultDefault border color#45475a

Usage

.card {
  border: 1px solid var(--turbo-border-default);
}

hr {
  border-color: var(--turbo-border-default);
}

input {
  border: 1px solid var(--turbo-border-default);
}

Syntax Highlighting Variables

For code blocks and syntax highlighting:

VariableDescriptionExample Value
--turbo-syntax-commentCode comments#6c7086
--turbo-syntax-keywordLanguage keywords#cba6f7
--turbo-syntax-stringString literals#a6e3a1
--turbo-syntax-numberNumeric values#fab387
--turbo-syntax-functionFunction names#89b4fa
--turbo-syntax-typeType annotations#f9e2af
--turbo-syntax-variableVariables#cdd6f4
--turbo-syntax-operatorOperators#89dceb

Usage

.token.comment {
  color: var(--turbo-syntax-comment);
}

.token.keyword {
  color: var(--turbo-syntax-keyword);
}

.token.string {
  color: var(--turbo-syntax-string);
}

.token.number {
  color: var(--turbo-syntax-number);
}

.token.function {
  color: var(--turbo-syntax-function);
}

Accent Variables

VariableDescriptionExample Value
--turbo-accent-linkLink color#89b4fa
--turbo-accent-link-hoverLink hover color#b4befe

Usage

a {
  color: var(--turbo-accent-link);
}

a:hover {
  color: var(--turbo-accent-link-hover);
}

Complete Example

Here’s a complete component using all token categories:

.card {
  /* Background */
  background-color: var(--turbo-bg-surface);

  /* Border */
  border: 1px solid var(--turbo-border-default);
  border-radius: 8px;

  /* Spacing */
  padding: 1.5rem;
}

.card-title {
  /* Text */
  color: var(--turbo-text-primary);
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.card-description {
  /* Muted text */
  color: var(--turbo-text-secondary);
  margin-bottom: 1rem;
}

.card-action {
  /* Brand color */
  background-color: var(--turbo-brand-primary);
  color: var(--turbo-text-inverse);
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 4px;
  cursor: pointer;
}

.card-action:hover {
  opacity: 0.9;
}

Browser Support

CSS custom properties are supported in all modern browsers:

  • Chrome 49+
  • Firefox 31+
  • Safari 9.1+
  • Edge 15+

For older browser support, consider using a PostCSS plugin to generate fallbacks.

Next Steps