Skip to main content

CSS Variables API Reference

Complete reference of all CSS custom properties (variables) used in @osdk/react-components.

Table of Contents

Overview

This package provides CSS custom properties for theming OSDK React components. All tokens can be overridden using CSS custom properties to create custom themes.

The token system has two main categories:

  1. Blueprint Token Mappings: OSDK-namespaced aliases to Blueprint's design tokens
  2. OSDK Component Tokens: Component-specific semantic tokens

Token Architecture

Blueprint Core (@blueprintjs/core)
↓ (imported via @import)
Blueprint Tokens (--bp-*)
↓ (mapped to)
OSDK Tokens (--osdk-*)
↓ (applied to)
React Components

Blueprint Token Mappings

These tokens provide OSDK-namespaced aliases to Blueprint's design system tokens. They reference Blueprint's --bp-* tokens which are imported from @blueprintjs/core.

Surface Tokens

Control layout, spacing, shadows, and z-index layering.

VariableMaps to Blueprint TokenDescription
--osdk-surface-z-index-1--bp-surface-z-index-1Z-index layer 1
--osdk-surface-z-index-2--bp-surface-z-index-2Z-index layer 2
--osdk-surface-z-index-3--bp-surface-z-index-3Z-index layer 3
--osdk-surface-z-index-4--bp-surface-z-index-4Z-index layer 4
--osdk-surface-border-radius--bp-surface-border-radiusStandard border radius (4px)
--osdk-surface-layer-primary--bp-surface-layer-primaryPrimary surface layer color
--osdk-surface-border-width--bp-surface-border-widthStandard border width (1px)
--osdk-surface-border-color-default--bp-surface-border-color-defaultDefault border color
--osdk-surface-border-color-strong--bp-surface-border-color-strongStrong/emphasized border color
--osdk-surface-background-color-default-rest--bp-surface-background-color-default-restDefault rest state background for surfaces
--osdk-surface-background-color-default-hover--bp-surface-background-color-default-hoverHover state background for surfaces
--osdk-surface-background-color-default-active--bp-surface-background-color-default-activeActive state background for surfaces
--osdk-surface-background-color-danger-rest--bp-surface-background-color-danger-restDanger rest state background
--osdk-surface-background-color-danger-hover--bp-surface-background-color-danger-hoverDanger hover state background
--osdk-surface-background-color-danger-active--bp-surface-background-color-danger-activeDanger active state background
--osdk-surface-spacing--bp-surface-spacingBase spacing unit (4px)
--osdk-surface-shadow-2--bp-surface-shadow-2Shadow for tooltips and popovers

Typography Tokens

Control text appearance.

VariableMaps to Blueprint TokenDescription
--osdk-typography-family-default--bp-typography-family-defaultDefault font family
--osdk-typography-color-muted--bp-typography-color-mutedMuted/subtle text color
--osdk-typography-color-default-rest--bp-typography-color-default-restDefault text color
--osdk-typography-color-danger-rest--bp-typography-color-danger-restDanger text color
--osdk-typography-color-danger-active--bp-typography-color-danger-activeDanger active text color
--osdk-typography-size-body-x-small--bp-typography-size-body-x-smallExtra-small body text size
--osdk-typography-size-body-small--bp-typography-size-body-smallSmall body text size
--osdk-typography-size-body-medium--bp-typography-size-body-mediumMedium body text size (13px)
--osdk-typography-size-body-large--bp-typography-size-body-largeLarge body text size
--osdk-typography-line-height-default--bp-typography-line-height-defaultDefault line height
--osdk-typography-weight-default--bp-typography-weight-defaultDefault font weight
--osdk-typography-weight-bold--bp-typography-weight-boldBold font weight

Intent Tokens

Semantic colors for interactive elements and states.

VariableMaps to Blueprint TokenDescription
--osdk-intent-default-rest--bp-intent-default-restDefault rest state
--osdk-intent-default-hover--bp-intent-default-hoverDefault hover state
--osdk-intent-default-active--bp-intent-default-activeDefault active/pressed state
--osdk-intent-default-disabled--bp-intent-default-disabledDefault disabled state
--osdk-intent-default-foreground--bp-intent-default-foregroundText color on default backgrounds
--osdk-intent-primary-rest--bp-intent-primary-restPrimary rest state
--osdk-intent-primary-hover--bp-intent-primary-hoverPrimary hover state
--osdk-intent-primary-active--bp-intent-primary-activePrimary active/pressed state
--osdk-intent-primary-disabled--bp-intent-primary-disabledPrimary disabled state
--osdk-intent-primary-foreground--bp-intent-primary-foregroundText color on primary backgrounds
--osdk-intent-success-rest--bp-intent-success-restSuccess rest state
--osdk-intent-success-hover--bp-intent-success-hoverSuccess hover state
--osdk-intent-success-active--bp-intent-success-activeSuccess active/pressed state
--osdk-intent-success-disabled--bp-intent-success-disabledSuccess disabled state
--osdk-intent-success-foreground--bp-intent-success-foregroundText color on success backgrounds
--osdk-intent-warning-rest--bp-intent-warning-restWarning rest state
--osdk-intent-warning-hover--bp-intent-warning-hoverWarning hover state
--osdk-intent-warning-active--bp-intent-warning-activeWarning active/pressed state
--osdk-intent-warning-disabled--bp-intent-warning-disabledWarning disabled state
--osdk-intent-warning-foreground--bp-intent-warning-foregroundText color on warning backgrounds
--osdk-intent-danger-rest--bp-intent-danger-restDanger rest state
--osdk-intent-danger-hover--bp-intent-danger-hoverDanger hover state
--osdk-intent-danger-active--bp-intent-danger-activeDanger active/pressed state
--osdk-intent-danger-disabled--bp-intent-danger-disabledDanger disabled state
--osdk-intent-danger-foreground--bp-intent-danger-foregroundText color on danger backgrounds

Iconography Tokens

Control icon sizing and color.

VariableDefault ValueDescription
--osdk-iconography-size-smallvar(--osdk-typography-size-body-large)Small icon size
--osdk-iconography-color-mutedvar(--osdk-intent-default-rest)Muted icon color

Emphasis Tokens

Control focus ring, transitions, and emphasis styling.

VariableMaps to Blueprint TokenDescription
--osdk-emphasis-focus-width--bp-emphasis-focus-widthFocus ring width
--osdk-emphasis-focus-color--bp-emphasis-focus-colorFocus ring color
--osdk-emphasis-focus-offset--bp-emphasis-focus-offsetFocus ring offset
--osdk-emphasis-transition-duration--bp-emphasis-transition-durationDefault transition duration
--osdk-emphasis-ease-default--bp-emphasis-ease-defaultDefault easing function

Palette Tokens

Raw color palette tokens.

VariableMaps to Blueprint TokenDescription
--osdk-palette-gray-1--bp-palette-gray-1Gray 1
--osdk-palette-gray-2--bp-palette-gray-2Gray 2
--osdk-palette-gray-4--bp-palette-gray-4Gray 4
--osdk-palette-dark-gray-2--bp-palette-dark-gray-2Dark gray 2
--osdk-palette-dark-gray-3--bp-palette-dark-gray-3Dark gray 3
--osdk-palette-light-gray-1--bp-palette-light-gray-1Light gray 1
--osdk-palette-light-gray-3--bp-palette-light-gray-3Light gray 3
--osdk-palette-light-gray-4--bp-palette-light-gray-4Light gray 4
--osdk-palette-light-gray-5--bp-palette-light-gray-5Light gray 5
--osdk-palette-white--bp-palette-whiteWhite
--osdk-palette-black--bp-palette-blackBlack

Semantic Color Tokens

Semantic tokens that abstract palette usage for better maintainability.

Background Colors

VariableDefault ValueDescription
--osdk-background-primaryvar(--osdk-palette-white)Primary background color (white)
--osdk-background-secondaryvar(--osdk-palette-light-gray-5)Secondary background color (light gray)
--osdk-background-tertiaryvar(--osdk-palette-light-gray-4)Tertiary background color (alternate rows)
--osdk-background-skeleton-fromcolor-mix(in srgb, var(--osdk-palette-gray-1) 5%, transparent)Skeleton loading animation start color
--osdk-background-skeleton-tocolor-mix(in srgb, var(--osdk-palette-gray-1) 40%, transparent)Skeleton loading animation end color
--osdk-background-backdropcolor-mix(in srgb, var(--osdk-palette-black) 50%, transparent)Modal backdrop base color

Custom Colors

These tokens are pre-calculated colors with opacity for specific UI effects.

VariableDefault ValueDescription
--osdk-custom-color-gray-1color-mix(in srgb, var(--osdk-palette-gray-1) 5%, transparent)Gray at 5% opacity
--osdk-custom-color-gray-2color-mix(in srgb, var(--osdk-palette-gray-1) 8%, transparent)Gray at 8% opacity
--osdk-custom-color-gray-3color-mix(in srgb, var(--osdk-palette-gray-1) 10%, transparent)Gray at 10% opacity
--osdk-custom-color-gray-4color-mix(in srgb, var(--osdk-palette-gray-1) 20%, transparent)Gray at 20% opacity
--osdk-custom-color-light-gray-1color-mix(in srgb, var(--osdk-palette-light-gray-1) 60%, transparent)Light gray at 60% opacity
--osdk-custom-color-light-gray-2color-mix(in srgb, var(--osdk-palette-light-gray-5) 50%, transparent)Light gray at 50% opacity
--osdk-custom-color-primary-1color-mix(in srgb, var(--osdk-intent-primary-rest) 50%, transparent)Primary color at 50% opacity

OSDK Component Tokens

Component-specific semantic tokens that may reference Blueprint tokens or define custom values.

Shared Styling

VariableDefault ValueDescription
--osdk-focus-outlinevar(--osdk-emphasis-focus-width) solid var(--osdk-emphasis-focus-color)Focus ring style
--osdk-focus-visible-outline-offsetvar(--osdk-emphasis-focus-offset)Focus ring offset from element
--osdk-surface-bordervar(--osdk-surface-border-width) solid var(--osdk-surface-border-color-default)Reusable border shorthand

Drag Handle

Shared tokens for drag handle styling across components.

VariableDefault ValueDescription
--osdk-drag-handle-colorvar(--osdk-typography-color-muted)Drag handle icon color
--osdk-drag-handle-color-hovervar(--osdk-typography-color-default-rest)Drag handle hover color
--osdk-drag-handle-cursorgrabDrag handle cursor
--osdk-drag-handle-cursor-activegrabbingDrag handle active cursor

Button

Styling for button components.

Primary Button

VariableDefault ValueDescription
--osdk-button-primary-colorvar(--osdk-intent-primary-foreground)Primary button text color
--osdk-button-primary-bgvar(--osdk-intent-primary-rest)Primary button background
--osdk-button-primary-bg-hovervar(--osdk-intent-primary-hover)Primary button hover background
--osdk-button-primary-bg-activevar(--osdk-intent-primary-active)Primary button active background

Secondary Button

VariableDefault ValueDescription
--osdk-button-secondary-colorvar(--osdk-typography-color-default-rest)Secondary button text color
--osdk-button-secondary-bgvar(--osdk-background-secondary)Secondary button background
--osdk-button-secondary-bg-hovervar(--osdk-surface-background-color-default-hover)Secondary button hover background
--osdk-button-secondary-bg-activevar(--osdk-surface-background-color-default-active)Secondary button active background

Checkbox

Styling for checkbox components.

VariableDefault ValueDescription
--osdk-checkbox-icon-sizevar(--osdk-iconography-size-small)Size of checkmark icon
--osdk-checkbox-paddingcalc(var(--osdk-surface-spacing) * 0.5)Internal padding
--osdk-checkbox-bordervar(--osdk-surface-border)Border style
--osdk-checkbox-bgtransparentUnchecked background
--osdk-checkbox-bg-hovervar(--osdk-surface-background-color-default-hover)Unchecked hover background
--osdk-checkbox-bg-activevar(--osdk-surface-background-color-default-active)Unchecked active background
--osdk-checkbox-bg-checkedvar(--osdk-intent-primary-rest)Checked background
--osdk-checkbox-bg-checked-hovervar(--osdk-intent-primary-hover)Checked hover background
--osdk-checkbox-bg-checked-activevar(--osdk-intent-primary-active)Checked active background
--osdk-checkbox-checked-foregroundvar(--osdk-intent-primary-foreground)Checkmark color

CBAC Picker

Styling for classification-based access control picker components.

VariableDefault ValueDescription
--osdk-cbac-banner-paddingcalc(var(--osdk-surface-spacing) * 1) calc(var(--osdk-surface-spacing) * 2)Banner padding
--osdk-cbac-banner-font-sizevar(--osdk-typography-size-body-small)Banner font size
--osdk-cbac-banner-font-weightvar(--osdk-typography-weight-bold)Banner font weight
--osdk-cbac-banner-text-aligncenterBanner text alignment
--osdk-cbac-banner-border-radiusvar(--osdk-surface-border-radius)Banner border radius
--osdk-cbac-banner-border-colorvar(--osdk-surface-border-color-default)Banner border color
--osdk-cbac-banner-placeholder-bgvar(--osdk-intent-default-disabled)Placeholder banner background
--osdk-cbac-banner-placeholder-colorvar(--osdk-typography-color-default-rest)Placeholder banner text color

Marking Button

VariableDefault ValueDescription
--osdk-cbac-marking-button-paddingcalc(var(--osdk-surface-spacing) * 0.5) calc(var(--osdk-surface-spacing) * 1.5)Marking button padding
--osdk-cbac-marking-button-border-radius0Marking button border radius
--osdk-cbac-marking-button-font-sizevar(--osdk-typography-size-body-small)Marking button font size
--osdk-cbac-marking-button-gapvar(--osdk-surface-spacing)Marking button gap
--osdk-cbac-marking-button-color-defaultvar(--osdk-typography-color-default-rest)Default state text color
--osdk-cbac-marking-button-bg-defaulttransparentDefault state background
--osdk-cbac-marking-button-border-color-defaultvar(--osdk-surface-border-color-default)Default state border color
--osdk-cbac-marking-button-color-selectedvar(--osdk-intent-primary-foreground)Selected state text color
--osdk-cbac-marking-button-bg-selectedvar(--osdk-intent-primary-rest)Selected state background
--osdk-cbac-marking-button-border-color-selectedvar(--osdk-intent-primary-rest)Selected state border color
--osdk-cbac-marking-button-bg-selected-hovervar(--osdk-cbac-marking-button-bg-selected)Selected hover background
--osdk-cbac-marking-button-color-impliedvar(--osdk-intent-primary-rest)Implied state text color
--osdk-cbac-marking-button-bg-impliedtransparentImplied state background
--osdk-cbac-marking-button-border-color-impliedvar(--osdk-surface-border-color-default)Implied state border color
--osdk-cbac-marking-button-color-disallowedvar(--osdk-intent-default-disabled)Disallowed state text color
--osdk-cbac-marking-button-bg-disallowedtransparentDisallowed state background
--osdk-cbac-marking-button-border-color-disallowedvar(--osdk-intent-default-disabled)Disallowed state border color

Picker Layout

VariableDefault ValueDescription
--osdk-cbac-picker-paddingcalc(var(--osdk-surface-spacing) * 2)Picker container padding
--osdk-cbac-picker-category-gapcalc(var(--osdk-surface-spacing) * 3)Gap between categories
--osdk-cbac-picker-category-title-font-sizevar(--osdk-typography-size-body-small)Category title font size
--osdk-cbac-picker-category-title-font-weightvar(--osdk-typography-weight-default)Category title font weight
--osdk-cbac-picker-category-title-colorvar(--osdk-typography-color-default-rest)Category title color
--osdk-cbac-picker-category-title-letter-spacingnormalCategory title letter spacing
--osdk-cbac-picker-marking-grid-columns4Number of columns in marking grid
--osdk-cbac-picker-marking-grid-border-colorvar(--osdk-surface-border-color-default)Marking grid border color

Info Banner

VariableDefault ValueDescription
--osdk-cbac-info-banner-bgvar(--osdk-intent-primary-subtle)Info banner background
--osdk-cbac-info-banner-colorvar(--osdk-intent-primary-rest)Info banner text color
--osdk-cbac-info-banner-paddingcalc(var(--osdk-surface-spacing) * 1.5) calc(var(--osdk-surface-spacing) * 2)Info banner padding
--osdk-cbac-info-banner-font-sizevar(--osdk-typography-size-body-small)Info banner font size
--osdk-cbac-info-banner-border-radiusvar(--osdk-surface-border-radius)Info banner border radius

Validation Warning

VariableDefault ValueDescription
--osdk-cbac-validation-warning-bgvar(--osdk-intent-warning-subtle)Warning background
--osdk-cbac-validation-warning-colorvar(--osdk-intent-warning-rest)Warning text color
--osdk-cbac-validation-warning-paddingcalc(var(--osdk-surface-spacing) * 1.5) calc(var(--osdk-surface-spacing) * 2)Warning padding
--osdk-cbac-validation-warning-font-sizevar(--osdk-typography-size-body-small)Warning font size
--osdk-cbac-validation-warning-border-radiusvar(--osdk-surface-border-radius)Warning border radius
--osdk-cbac-validation-warning-chip-bgvar(--osdk-surface-background-color-default)Warning chip background
--osdk-cbac-validation-warning-max-height200pxWarning max height
--osdk-cbac-validation-warning-chip-border-colorvar(--osdk-surface-border-color-default)Warning chip border color

Popover

VariableDefault ValueDescription
--osdk-cbac-popover-max-width400pxPopover max width
--osdk-cbac-popover-paddingcalc(var(--osdk-surface-spacing) * 3)Popover padding
--osdk-cbac-popover-section-gapcalc(var(--osdk-surface-spacing) * 2)Gap between popover sections
--osdk-cbac-popover-pill-paddingcalc(var(--osdk-surface-spacing) * 0.5) calc(var(--osdk-surface-spacing) * 1.5)Pill padding
--osdk-cbac-popover-pill-border-radiusvar(--osdk-surface-border-radius)Pill border radius

Skeleton

VariableDefault ValueDescription
--osdk-cbac-skeleton-pill-width120pxSkeleton pill width
--osdk-cbac-skeleton-pill-height24pxSkeleton pill height
--osdk-cbac-skeleton-line-height16pxSkeleton line height
--osdk-cbac-skeleton-line-narrow-width80%Skeleton narrow line width

Warning Callout

VariableDefault ValueDescription
--osdk-cbac-warning-callout-bgvar(--osdk-intent-warning-subtle)Warning callout background
--osdk-cbac-warning-callout-colorvar(--osdk-intent-warning-rest)Warning callout text color
--osdk-cbac-warning-callout-paddingcalc(var(--osdk-surface-spacing) * 1.5) calc(var(--osdk-surface-spacing) * 2)Warning callout padding
--osdk-cbac-warning-callout-border-radiusvar(--osdk-surface-border-radius)Warning callout border radius
--osdk-cbac-warning-callout-font-sizevar(--osdk-typography-size-body-small)Warning callout font size

Marking Tooltip

VariableDefault ValueDescription
--osdk-cbac-marking-tooltip-max-width280pxMarking tooltip max width
--osdk-cbac-marking-tooltip-paddingcalc(var(--osdk-surface-spacing) * 1.5)Marking tooltip padding
--osdk-cbac-marking-tooltip-font-sizevar(--osdk-typography-size-body-small)Marking tooltip font size
--osdk-cbac-marking-tooltip-z-indexvar(--osdk-tooltip-z-index)Marking tooltip z-index

Miscellaneous

VariableDefault ValueDescription
--osdk-cbac-expand-icon-colorvar(--osdk-typography-color-muted)Expand icon color
--osdk-cbac-disabled-opacity0.6Disabled state opacity
--osdk-cbac-overflow-button-paddingvar(--osdk-cbac-marking-button-padding)Overflow button padding
--osdk-cbac-overflow-button-font-sizevar(--osdk-cbac-marking-button-font-size)Overflow button font size
--osdk-cbac-overflow-list-max-height240pxOverflow list max height

DateTime Picker

Styling for date and time picker components.

Input

VariableDefault ValueDescription
--osdk-datetime-input-error-border-colorvar(--osdk-intent-danger-rest)Input error border color
--osdk-datetime-input-min-heightvar(--osdk-input-min-height)Input minimum height
--osdk-datetime-input-paddingvar(--osdk-input-padding)Input padding
--osdk-datetime-input-border-radiusvar(--osdk-input-border-radius)Input border radius
--osdk-datetime-input-bgvar(--osdk-input-bg)Input background
--osdk-datetime-input-bg-hovervar(--osdk-input-bg-hover)Input hover background
--osdk-datetime-input-colorvar(--osdk-input-color)Input text color
--osdk-datetime-input-font-familyvar(--osdk-input-font-family)Input font family
--osdk-datetime-input-font-sizevar(--osdk-input-font-size)Input font size
--osdk-datetime-input-line-heightvar(--osdk-input-line-height, var(--osdk-typography-line-height-default))Input line height
--osdk-datetime-input-placeholder-colorvar(--osdk-input-placeholder-color)Input placeholder color
--osdk-datetime-input-border-widthvar(--osdk-input-border-width)Input border width
--osdk-datetime-input-border-colorvar(--osdk-input-border-color)Input border color
--osdk-datetime-input-border-color-focusvar(--osdk-input-border-color-focus)Input focused border color
--osdk-datetime-input-focus-widthvar(--osdk-input-focus-width)Input focus ring width
--osdk-datetime-input-focus-colorvar(--osdk-input-focus-color)Input focus ring color
--osdk-datetime-input-focus-offsetvar(--osdk-input-focus-offset)Input focus ring offset
--osdk-datetime-input-transition-durationvar(--osdk-input-transition-duration)Input transition duration
--osdk-datetime-input-transition-easevar(--osdk-input-transition-ease)Input transition easing

Popover

VariableDefault ValueDescription
--osdk-datetime-popover-bgvar(--osdk-background-primary)Popover background
--osdk-datetime-popover-paddingcalc(var(--osdk-surface-spacing) * 2)Popover padding
--osdk-datetime-popover-z-indexvar(--osdk-surface-z-index-3)Popover z-index
--osdk-datetime-popover-shadowvar(--osdk-surface-shadow-2)Popover shadow

Calendar

VariableDefault ValueDescription
--osdk-datetime-calendar-font-familyvar(--osdk-typography-family-default)Calendar font family
--osdk-datetime-calendar-font-sizevar(--osdk-typography-size-body-small)Calendar font size
--osdk-datetime-calendar-cell-sizecalc(var(--osdk-surface-spacing) * 8)Calendar cell size
--osdk-datetime-calendar-gap2pxCalendar grid gap
--osdk-datetime-calendar-caption-font-sizevar(--osdk-typography-size-body-medium)Caption font size
--osdk-datetime-calendar-caption-font-weightvar(--osdk-typography-weight-bold)Caption font weight
--osdk-datetime-calendar-caption-gapvar(--osdk-surface-spacing)Caption dropdowns gap
--osdk-datetime-calendar-weekday-colorvar(--osdk-typography-color-muted)Weekday header color
--osdk-datetime-calendar-weekday-font-sizevar(--osdk-typography-size-body-x-small)Weekday header font size
--osdk-datetime-calendar-day-colorvar(--osdk-typography-color-default)Day text color
--osdk-datetime-calendar-day-hover-bgvar(--osdk-surface-background-color-default-hover)Day hover background
--osdk-datetime-calendar-day-hover-colorvar(--osdk-typography-color-default)Day hover text color
--osdk-datetime-calendar-day-active-bgvar(--osdk-surface-background-color-default-active)Day active background
--osdk-datetime-calendar-day-border-radiusvar(--osdk-surface-border-radius)Day border radius
--osdk-datetime-calendar-selected-bgvar(--osdk-intent-primary-rest)Selected day background
--osdk-datetime-calendar-selected-colorvar(--osdk-intent-primary-foreground)Selected day text color
--osdk-datetime-calendar-selected-hover-bgvar(--osdk-intent-primary-hover)Selected day hover background
--osdk-datetime-calendar-today-font-weightvar(--osdk-typography-weight-bold)Today font weight
--osdk-datetime-calendar-range-middle-bgcolor-mix(in srgb, var(--osdk-intent-primary-rest) 15%, transparent)Range middle background
--osdk-datetime-calendar-disabled-colorvar(--osdk-intent-default-disabled)Disabled day color
--osdk-datetime-calendar-outside-colorvar(--osdk-typography-color-muted)Outside month day color
--osdk-datetime-calendar-outside-opacity0.4Outside month day opacity
--osdk-datetime-calendar-nav-button-sizecalc(var(--osdk-surface-spacing) * 5)Nav button size
--osdk-datetime-calendar-nav-button-border-radiusvar(--osdk-surface-border-radius)Nav button border radius
--osdk-datetime-calendar-nav-button-hover-bgvar(--osdk-surface-background-color-default-hover)Nav button hover background
--osdk-datetime-calendar-nav-disabled-colorvar(--osdk-typography-color-muted)Nav disabled color
--osdk-datetime-calendar-focus-outline1px solid var(--osdk-input-border-color-focus)Calendar focus outline
--osdk-datetime-calendar-months-gapcalc(var(--osdk-surface-spacing) * 4)Gap between calendar months
--osdk-datetime-calendar-dropdown-padding2px var(--osdk-surface-spacing)Dropdown padding
--osdk-datetime-calendar-dropdown-border-radiusvar(--osdk-input-border-radius)Dropdown border radius
--osdk-datetime-calendar-fallback-width280pxFallback/loading width
--osdk-datetime-calendar-fallback-height300pxFallback/loading height

Dialog

Styling for dialog/modal components.

VariableDefault ValueDescription
--osdk-dialog-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 4)Base dialog padding
--osdk-dialog-backdrop-bgvar(--osdk-background-backdrop)Backdrop overlay color
--osdk-dialog-header-paddingvar(--osdk-dialog-padding)Header section padding
--osdk-dialog-title-font-sizevar(--osdk-typography-size-body-medium)Dialog title font size
--osdk-dialog-title-font-weightvar(--osdk-typography-weight-bold)Dialog title font weight
--osdk-dialog-title-colorvar(--osdk-typography-color-default-rest)Dialog title color
--osdk-dialog-bgvar(--osdk-background-primary)Dialog background color
--osdk-dialog-shadowvar(--osdk-surface-shadow-2)Dialog box shadow
--osdk-dialog-min-width500pxMinimum dialog width
--osdk-dialog-min-height300pxMinimum dialog height
--osdk-dialog-max-width1000pxMaximum dialog width
--osdk-dialog-max-height600pxMaximum dialog height
--osdk-dialog-body-paddingvar(--osdk-dialog-padding)Body section padding
--osdk-dialog-footer-paddingvar(--osdk-dialog-padding)Footer section padding

Draggable

Styling for draggable list item components.

VariableDefault ValueDescription
--osdk-draggable-item-bgvar(--osdk-background-primary)Draggable item background
--osdk-draggable-item-bordervar(--osdk-surface-border)Draggable item border
--osdk-draggable-item-border-radiusvar(--osdk-surface-border-radius)Draggable item border radius
--osdk-draggable-item-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 3)Draggable item padding
--osdk-draggable-item-gapvar(--osdk-surface-spacing)Gap between item elements
--osdk-draggable-item-drag-icon-colorvar(--osdk-drag-handle-color)Drag handle icon color
--osdk-draggable-item-drag-icon-color-hovervar(--osdk-drag-handle-color-hover)Drag handle icon hover color
--osdk-draggable-item-icon-sizevar(--osdk-iconography-size-small)Drag handle icon size

File Picker

Styling for file picker components.

Trigger

VariableDefault ValueDescription
--osdk-file-picker-trigger-heightvar(--osdk-input-min-height)Trigger height
--osdk-file-picker-trigger-paddingvar(--osdk-input-padding)Trigger padding
--osdk-file-picker-trigger-border-radiusvar(--osdk-input-border-radius)Trigger border radius
--osdk-file-picker-trigger-bordervar(--osdk-input-border-width) solid var(--osdk-input-border-color)Trigger border
--osdk-file-picker-trigger-border-color-focusvar(--osdk-input-border-color-focus)Trigger focused border color
--osdk-file-picker-trigger-border-color-errorvar(--osdk-input-border-color-error)Trigger error border color
--osdk-file-picker-trigger-bgvar(--osdk-input-bg)Trigger background
--osdk-file-picker-trigger-bg-hovervar(--osdk-input-bg-hover)Trigger hover background
--osdk-file-picker-trigger-colorvar(--osdk-input-color)Trigger text color
--osdk-file-picker-trigger-font-sizevar(--osdk-input-font-size)Trigger font size
--osdk-file-picker-trigger-font-familyvar(--osdk-input-font-family)Trigger font family
--osdk-file-picker-trigger-placeholder-colorvar(--osdk-input-placeholder-color)Trigger placeholder color

Focus Ring

VariableDefault ValueDescription
--osdk-file-picker-trigger-focus-widthvar(--osdk-input-focus-width)Focus ring width
--osdk-file-picker-trigger-focus-colorvar(--osdk-input-focus-color)Focus ring color
--osdk-file-picker-trigger-focus-offsetvar(--osdk-input-focus-offset)Focus ring offset

Transitions

VariableDefault ValueDescription
--osdk-file-picker-transition-durationvar(--osdk-input-transition-duration)Transition duration
--osdk-file-picker-transition-easevar(--osdk-input-transition-ease)Transition easing

Clear Button

VariableDefault ValueDescription
--osdk-file-picker-clear-sizecalc(var(--osdk-surface-spacing) * 4)Clear button size
--osdk-file-picker-clear-margin0 calc(var(--osdk-surface-spacing) * 1)Clear button margin
--osdk-file-picker-clear-colorvar(--osdk-typography-color-muted)Clear button color
--osdk-file-picker-clear-color-hovervar(--osdk-typography-color-default-rest)Clear button hover color

Browse Button

VariableDefault ValueDescription
--osdk-file-picker-browse-bgvar(--osdk-button-secondary-bg)Browse button background
--osdk-file-picker-browse-bg-hovervar(--osdk-button-secondary-bg-hover)Browse button hover background
--osdk-file-picker-browse-bg-activevar(--osdk-button-secondary-bg-active)Browse button active background
--osdk-file-picker-browse-colorvar(--osdk-button-secondary-color)Browse button text color
--osdk-file-picker-browse-paddingcalc(var(--osdk-surface-spacing) * 1.5) calc(var(--osdk-surface-spacing) * 3)Browse button padding
--osdk-file-picker-browse-border-leftvar(--osdk-input-border-width) solid var(--osdk-input-border-color)Browse button left border

Filter List

Styling for filter list components including search, checkboxes, listogram, and range inputs.

Container

VariableDefault ValueDescription
--osdk-filter-list-bgvar(--osdk-background-primary)Container background
--osdk-filter-list-bordervar(--osdk-surface-border)Container border
--osdk-filter-list-border-radiusvar(--osdk-surface-border-radius)Container border radius
--osdk-filter-list-padding0Container padding
--osdk-filter-list-gap0Container gap
--osdk-filter-list-shadow0px 1px 3px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px -1px rgba(0, 0, 0, 0.1)Container shadow
--osdk-filter-list-addButton-padding-top0Add button top padding
--osdk-filter-list-addButton-container-bgvar(--osdk-background-primary)Add button container background
--osdk-filter-list-addButton-container-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 3)Add button container padding
--osdk-filter-list-addButton-container-border-topvar(--osdk-surface-border)Add button container top border
--osdk-filter-list-addButton-bordervar(--osdk-surface-border)Add button border
--osdk-filter-list-addButton-heightcalc(var(--osdk-surface-spacing) * 7.5)Add button height

Content

VariableDefault ValueDescription
--osdk-filter-list-content-gap0Content gap
--osdk-filter-list-empty-text-colorvar(--osdk-typography-color-muted)Empty state text color
--osdk-filter-list-empty-font-sizevar(--osdk-typography-size-body-small)Empty state font size

Collapsed

VariableDefault ValueDescription
--osdk-filter-list-collapsed-widthcalc(var(--osdk-surface-spacing) * 10)Collapsed state width
--osdk-filter-list-collapsed-label-font-familyvar(--osdk-typography-family-default)Collapsed label font family
--osdk-filter-list-collapsed-label-font-sizevar(--osdk-typography-size-body-small)Collapsed label font size
--osdk-filter-list-collapsed-label-colorvar(--osdk-typography-color-default-rest)Collapsed label color
VariableDefault ValueDescription
--osdk-filter-header-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 3)Header padding
--osdk-filter-header-padding-bottom0Header bottom padding
--osdk-filter-header-border-bottomvar(--osdk-surface-border)Header bottom border
--osdk-filter-header-gapcalc(var(--osdk-surface-spacing) * 2)Header gap
--osdk-filter-header-titleContainer-gapvar(--osdk-surface-spacing)Title container gap
--osdk-filter-header-font-familyvar(--osdk-typography-family-default)Header font family
--osdk-filter-header-font-sizevar(--osdk-typography-size-body-medium)Header font size
--osdk-filter-header-font-weightvar(--osdk-typography-weight-bold)Header font weight
--osdk-filter-header-colorvar(--osdk-typography-color-default-rest)Header text color
--osdk-filter-header-icon-colorvar(--osdk-typography-color-muted)Header icon color
--osdk-filter-header-activeCount-font-sizevar(--osdk-typography-size-body-small)Active count font size
--osdk-filter-header-activeCount-colorvar(--osdk-typography-color-muted)Active count color
--osdk-filter-header-button-paddingcalc(var(--osdk-surface-spacing) * 1)Header button padding
--osdk-filter-header-button-bgtransparentHeader button background
--osdk-filter-header-button-border-radiusvar(--osdk-surface-border-radius)Header button border radius
--osdk-filter-header-button-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Header button transition
--osdk-filter-header-button-bg-hovervar(--osdk-custom-color-gray-1)Header button hover background
--osdk-filter-header-button-bg-activevar(--osdk-custom-color-gray-2)Header button active background
--osdk-filter-header-reset-font-sizevar(--osdk-typography-size-body-small)Reset button font size
--osdk-filter-header-reset-colorvar(--osdk-intent-primary-rest)Reset button color
--osdk-filter-header-reset-color-disabledvar(--osdk-typography-color-muted)Reset button disabled color
--osdk-filter-header-reset-paddingcalc(var(--osdk-surface-spacing) * 1) calc(var(--osdk-surface-spacing) * 1.5)Reset button padding
--osdk-filter-header-reset-bordervar(--osdk-surface-border-width) solid var(--osdk-intent-primary-rest)Reset button border
--osdk-filter-header-reset-border-disabledvar(--osdk-surface-border-width) solid var(--osdk-typography-color-muted)Reset button disabled border
--osdk-filter-header-reset-border-radiusvar(--osdk-surface-border-radius)Reset button border radius
--osdk-filter-header-collapse-icon-sizecalc(var(--osdk-surface-spacing) * 1.5)Collapse icon size
--osdk-filter-header-collapse-icon-border-widthvar(--osdk-surface-border-width)Collapse icon border width
--osdk-filter-header-collapse-icon-colorvar(--osdk-typography-color-muted)Collapse icon color

Filter Item

VariableDefault ValueDescription
--osdk-filter-item-gapcalc(var(--osdk-surface-spacing) * 1)Item gap
--osdk-filter-item-border-radiusvar(--osdk-surface-border-radius)Item border radius
--osdk-filter-item-paddingcalc(var(--osdk-surface-spacing) * 3) calc(var(--osdk-surface-spacing) * 3)Item padding
--osdk-filter-item-label-font-familyvar(--osdk-typography-family-default)Item label font family
--osdk-filter-item-label-font-sizevar(--osdk-typography-size-body-small)Item label font size
--osdk-filter-item-label-font-weightvar(--osdk-typography-weight-bold)Item label font weight
--osdk-filter-item-label-colorvar(--osdk-typography-color-muted)Item label color

Filter Item Drag Handle

VariableDefault ValueDescription
--osdk-filter-item-drag-handle-paddingcalc(var(--osdk-surface-spacing) * 0.5)Drag handle padding
--osdk-filter-item-drag-handle-bgtransparentDrag handle background
--osdk-filter-item-drag-handle-border-radiusvar(--osdk-surface-border-radius)Drag handle border radius
--osdk-filter-item-drag-handle-colorvar(--osdk-drag-handle-color)Drag handle color
--osdk-filter-item-drag-handle-color-hovervar(--osdk-drag-handle-color-hover)Drag handle hover color
--osdk-filter-item-drag-handle-bg-hovervar(--osdk-custom-color-gray-1)Drag handle hover background
--osdk-filter-item-drag-handle-focus-outline-colorvar(--osdk-emphasis-focus-color)Drag handle focus outline color
--osdk-filter-item-dragging-opacity0.5Dragging item opacity
--osdk-filter-item-drag-overlay-shadowvar(--osdk-surface-shadow-2)Drag overlay shadow
--osdk-filter-item-drag-overlay-border-radiusvar(--osdk-surface-border-radius)Drag overlay border radius
--osdk-filter-item-drag-overlay-bgvar(--osdk-background-primary)Drag overlay background

Filter Item Header Actions

VariableDefault ValueDescription
--osdk-filter-item-header-action-paddingcalc(var(--osdk-surface-spacing) * 0.5)Action button padding
--osdk-filter-item-header-action-colorvar(--osdk-typography-color-muted)Action button color
--osdk-filter-item-header-action-bg-hovervar(--osdk-custom-color-gray-1)Action button hover background
--osdk-filter-item-header-action-border-radiusvar(--osdk-surface-border-radius)Action button border radius

Exclude Dropdown

VariableDefault ValueDescription
--osdk-filter-item-exclude-dropdown-font-familyvar(--osdk-typography-family-default)Dropdown font family
--osdk-filter-item-exclude-dropdown-font-sizevar(--osdk-typography-size-body-small)Dropdown font size
--osdk-filter-item-exclude-dropdown-colorvar(--osdk-typography-color-default-rest)Dropdown text color
--osdk-filter-item-exclude-dropdown-trigger-colorvar(--osdk-intent-primary-rest)Dropdown trigger color
--osdk-filter-item-exclude-dropdown-trigger-border-radiusvar(--osdk-surface-border-radius)Dropdown trigger border radius
--osdk-filter-item-exclude-dropdown-separator-colorvar(--osdk-surface-border-color)Dropdown separator color
--osdk-filter-item-exclude-dropdown-min-widthcalc(var(--osdk-surface-spacing) * 30)Dropdown minimum width

Overflow / Dropdown Menu

VariableDefault ValueDescription
--osdk-filter-item-menu-bgvar(--osdk-background-primary)Menu background
--osdk-filter-item-menu-shadowvar(--osdk-surface-shadow-2)Menu shadow
--osdk-filter-item-menu-bordervar(--osdk-surface-border)Menu border
--osdk-filter-item-menu-border-radiusvar(--osdk-surface-border-radius)Menu border radius
--osdk-filter-item-menu-paddingcalc(var(--osdk-surface-spacing) * 0.5)Menu padding
--osdk-filter-item-menu-item-paddingcalc(var(--osdk-surface-spacing) * 1) calc(var(--osdk-surface-spacing) * 2)Menu item padding
--osdk-filter-item-menu-item-font-familyvar(--osdk-typography-family-default)Menu item font family
--osdk-filter-item-menu-item-font-sizevar(--osdk-typography-size-body-small)Menu item font size
--osdk-filter-item-menu-item-colorvar(--osdk-typography-color-default-rest)Menu item text color
--osdk-filter-item-menu-item-bg-hovervar(--osdk-custom-color-gray-1)Menu item hover background
--osdk-filter-item-menu-item-border-radiusvar(--osdk-surface-border-radius)Menu item border radius
--osdk-filter-item-menu-separator-colorvar(--osdk-surface-border-color)Menu separator color
--osdk-filter-item-menu-check-sizecalc(var(--osdk-surface-spacing) * 3)Menu check icon size

Shared Input Tokens

VariableDefault ValueDescription
--osdk-filter-input-bgvar(--osdk-background-primary)Input background
--osdk-filter-input-bordervar(--osdk-surface-border)Input border
--osdk-filter-input-border-radiusvar(--osdk-surface-border-radius)Input border radius
--osdk-filter-input-paddingcalc(var(--osdk-surface-spacing) * 1) calc(var(--osdk-surface-spacing) * 2)Input padding
--osdk-filter-input-gapvar(--osdk-surface-spacing)Input gap
--osdk-filter-input-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Input transition
--osdk-filter-input-focus-bordervar(--osdk-intent-primary-rest)Input focused border
--osdk-filter-input-focus-outline-widthvar(--osdk-emphasis-focus-width)Focus outline width
--osdk-filter-input-focus-outline-colorvar(--osdk-emphasis-focus-color)Focus outline color
--osdk-filter-input-focus-outline-offsetvar(--osdk-emphasis-focus-offset)Focus outline offset
--osdk-filter-input-icon-colorvar(--osdk-typography-color-muted)Input icon color
--osdk-filter-input-font-familyvar(--osdk-typography-family-default)Input font family
--osdk-filter-input-font-sizevar(--osdk-typography-size-body-small)Input font size
--osdk-filter-input-colorvar(--osdk-typography-color-default-rest)Input text color
--osdk-filter-input-placeholder-colorvar(--osdk-typography-color-muted)Input placeholder color
--osdk-filter-input-clear-paddingcalc(var(--osdk-surface-spacing) * 0.5)Clear button padding
--osdk-filter-input-clear-bgtransparentClear button background
--osdk-filter-input-clear-border-radiusvar(--osdk-surface-border-radius)Clear button border radius
--osdk-filter-input-clear-bg-hovervar(--osdk-custom-color-gray-1)Clear hover background
--osdk-filter-input-clear-bg-activevar(--osdk-custom-color-gray-2)Clear active background

Shared Message Tokens

VariableDefault ValueDescription
--osdk-filter-message-font-familyvar(--osdk-typography-family-default)Message font family
--osdk-filter-message-font-sizevar(--osdk-typography-size-body-small)Message font size
--osdk-filter-message-paddingvar(--osdk-surface-spacing)Message padding
--osdk-filter-message-color-mutedvar(--osdk-typography-color-muted)Muted message color
--osdk-filter-message-color-dangervar(--osdk-intent-danger-rest)Danger message color

Tag Tokens

VariableDefault ValueDescription
--osdk-filter-tag-container-gapcalc(var(--osdk-surface-spacing) * 1)Tag container gap
--osdk-filter-tag-gapcalc(var(--osdk-surface-spacing) * 0.5)Tag internal gap
--osdk-filter-tag-paddingcalc(var(--osdk-surface-spacing) * 0.5) calc(var(--osdk-surface-spacing) * 1)Tag padding
--osdk-filter-tag-border-radiusvar(--osdk-surface-border-radius)Tag border radius
--osdk-filter-tag-bgvar(--osdk-custom-color-gray-1)Tag background
--osdk-filter-tag-font-familyvar(--osdk-typography-family-default)Tag font family
--osdk-filter-tag-font-sizevar(--osdk-typography-size-body-small)Tag font size
--osdk-filter-tag-line-height1.4Tag line height
--osdk-filter-tag-colorvar(--osdk-typography-color-default-rest)Tag text color
--osdk-filter-tag-remove-colorvar(--osdk-typography-color-muted)Tag remove button color
--osdk-filter-tag-remove-font-sizevar(--osdk-typography-size-body-medium)Tag remove button font size
--osdk-filter-tag-remove-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Tag remove transition
--osdk-filter-tag-remove-color-hovervar(--osdk-typography-color-default-rest)Tag remove hover color

Error Boundary Tokens

VariableDefault ValueDescription
--osdk-error-boundary-gapcalc(var(--osdk-surface-spacing) * 2)Error boundary gap
--osdk-error-boundary-paddingcalc(var(--osdk-surface-spacing) * 2)Error boundary padding
--osdk-error-boundary-border-radiusvar(--osdk-surface-border-radius)Error boundary border radius
--osdk-error-boundary-bgvar(--osdk-surface-background-color-danger-rest)Error boundary background
--osdk-error-boundary-font-sizevar(--osdk-typography-size-body-small)Error boundary font size
--osdk-error-boundary-text-colorvar(--osdk-typography-color-danger-rest)Error boundary text color
--osdk-error-boundary-button-paddingcalc(var(--osdk-surface-spacing) * 1) calc(var(--osdk-surface-spacing) * 2)Retry button padding
--osdk-error-boundary-button-border-colorcurrentColorRetry button border color
--osdk-error-boundary-button-border-radiusvar(--osdk-surface-border-radius)Retry button border radius
--osdk-error-boundary-button-font-sizevar(--osdk-typography-size-body-x-small)Retry button font size
--osdk-error-boundary-button-colorinheritRetry button text color
--osdk-error-boundary-button-hover-bgvar(--osdk-custom-color-gray-1)Retry button hover background

Checkbox List Tokens

VariableDefault ValueDescription
--osdk-filter-checkbox-list-gapcalc(var(--osdk-surface-spacing) * 0.5)Checkbox list gap
--osdk-filter-checkbox-row-paddingcalc(var(--osdk-surface-spacing) * 0.5) 0Checkbox row padding
--osdk-filter-checkbox-row-bg-hovervar(--osdk-surface-background-color-default-hover)Checkbox row hover background
--osdk-filter-checkbox-row-border-radiusvar(--osdk-surface-border-radius)Checkbox row border radius
--osdk-filter-checkbox-label-gapvar(--osdk-surface-spacing)Checkbox label gap
--osdk-filter-checkbox-value-font-familyvar(--osdk-typography-family-default)Checkbox value font family
--osdk-filter-checkbox-value-font-sizevar(--osdk-typography-size-body-medium)Checkbox value font size
--osdk-filter-checkbox-value-line-height1.4Checkbox value line height
--osdk-filter-checkbox-value-colorvar(--osdk-typography-color-default-rest)Checkbox value color
--osdk-filter-checkbox-color-dot-sizecalc(var(--osdk-surface-spacing) * 2)Color dot indicator size

Toggle Tokens

VariableDefault ValueDescription
--osdk-filter-toggle-label-gapvar(--osdk-surface-spacing)Toggle label gap
--osdk-filter-toggle-label-font-familyvar(--osdk-typography-family-default)Toggle label font family
--osdk-filter-toggle-label-font-sizevar(--osdk-typography-size-body-medium)Toggle label font size
--osdk-filter-toggle-label-line-height1.4Toggle label line height
--osdk-filter-toggle-label-colorvar(--osdk-typography-color-default-rest)Toggle label color

Listogram Tokens

VariableDefault ValueDescription
--osdk-filter-listogram-gapvar(--osdk-surface-spacing)Listogram gap
--osdk-filter-listogram-row-gapcalc(var(--osdk-surface-spacing) * 2)Listogram row gap
--osdk-filter-listogram-row-paddingvar(--osdk-surface-spacing)Listogram row padding
--osdk-filter-listogram-row-border-radiusvar(--osdk-surface-border-radius)Listogram row border radius
--osdk-filter-listogram-row-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Listogram row transition
--osdk-filter-listogram-row-bg-hovervar(--osdk-surface-background-color-default-hover)Listogram row hover background
--osdk-filter-listogram-row-bg-activevar(--osdk-surface-background-color-default-active)Listogram row active background
--osdk-filter-listogram-row-focus-outlinevar(--osdk-emphasis-focus-width) solid var(--osdk-emphasis-focus-color)Listogram row focus outline
--osdk-filter-listogram-row-focus-offsetvar(--osdk-emphasis-focus-offset)Listogram row focus offset
--osdk-filter-listogram-label-font-familyvar(--osdk-typography-family-default)Listogram label font family
--osdk-filter-listogram-label-font-sizevar(--osdk-typography-size-body-medium)Listogram label font size
--osdk-filter-listogram-label-colorvar(--osdk-typography-color-default-rest)Listogram label color
--osdk-filter-listogram-bar-heightcalc(var(--osdk-surface-spacing) * 2)Bar height
--osdk-filter-listogram-bar-widthcalc(var(--osdk-surface-spacing) * 12.5)Bar width
--osdk-filter-listogram-bar-bgvar(--osdk-palette-gray-100)Bar background
--osdk-filter-listogram-bar-border-radiusvar(--osdk-surface-border-radius)Bar border radius
--osdk-filter-listogram-bar-colorvar(--osdk-intent-primary-rest)Bar fill color
--osdk-filter-listogram-bar-fill-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Bar fill transition
--osdk-filter-listogram-count-font-familyvar(--osdk-typography-family-default)Count font family
--osdk-filter-listogram-count-font-sizevar(--osdk-typography-size-body-small)Count font size
--osdk-filter-listogram-count-colorvar(--osdk-typography-color-muted)Count color
--osdk-filter-listogram-view-all-font-sizevar(--osdk-typography-size-body-small)View all font size
--osdk-filter-listogram-view-all-colorvar(--osdk-typography-color-muted)View all color
--osdk-filter-listogram-selected-colorvar(--osdk-intent-primary-rest)Selected item color

Range Input Tokens

VariableDefault ValueDescription
--osdk-filter-range-gapcalc(var(--osdk-surface-spacing) * 2.5)Range gap
--osdk-filter-range-histogram-padding-bottomcalc(var(--osdk-surface-spacing) * 1)Histogram bottom padding
--osdk-filter-range-histogram-padding-inlinecalc(var(--osdk-surface-spacing) * 2)Histogram inline padding
--osdk-filter-range-histogram-heightcalc(var(--osdk-surface-spacing) * 15)Histogram height
--osdk-filter-range-histogram-bar-gapcalc(var(--osdk-surface-spacing) * 0.5)Histogram bar gap
--osdk-filter-range-histogram-bar-min-widthvar(--osdk-surface-spacing)Histogram bar minimum width
--osdk-filter-range-histogram-bar-colorvar(--osdk-palette-gray-200)Histogram bar color
--osdk-filter-range-histogram-bar-active-colorvar(--osdk-intent-primary-rest)Histogram active bar color
--osdk-filter-range-histogram-bar-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Histogram bar transition
--osdk-filter-range-inputs-gapcalc(var(--osdk-surface-spacing) * 0.5)Range inputs gap
--osdk-filter-range-input-wrapper-gapvar(--osdk-surface-spacing)Input wrapper gap
--osdk-filter-range-label-font-familyvar(--osdk-typography-family-default)Range label font family
--osdk-filter-range-label-font-sizevar(--osdk-typography-size-body-small)Range label font size
--osdk-filter-range-label-colorvar(--osdk-typography-color-muted)Range label color
--osdk-filter-range-separator-colorvar(--osdk-typography-color-muted)Range separator color

Timeline Input Tokens

VariableDefault ValueDescription
--osdk-filter-timeline-labels-gapvar(--osdk-surface-spacing)Timeline labels gap
--osdk-filter-timeline-labels-font-familyvar(--osdk-typography-family-default)Timeline labels font family
--osdk-filter-timeline-labels-font-sizevar(--osdk-typography-size-body-small)Timeline labels font size
--osdk-filter-timeline-labels-colorvar(--osdk-typography-color-muted)Timeline labels color
--osdk-filter-timeline-button-paddingcalc(var(--osdk-surface-spacing) * 0.5)Timeline button padding
--osdk-filter-timeline-button-colorvar(--osdk-iconography-color-muted)Timeline button color
--osdk-filter-timeline-button-border-radiusvar(--osdk-surface-border-radius)Timeline button border radius
--osdk-filter-timeline-button-bg-hovervar(--osdk-surface-background-color-default-hover)Timeline button hover background
--osdk-filter-timeline-button-color-hovervar(--osdk-typography-color-default-rest)Timeline button hover color
--osdk-filter-timeline-brush-colorvar(--osdk-typography-color-muted)Timeline brush color
--osdk-filter-timeline-input-font-sizevar(--osdk-typography-size-body-medium)Timeline input font size

Null Value Wrapper Tokens

VariableDefault ValueDescription
--osdk-filter-null-wrapper-gapvar(--osdk-surface-spacing)Null wrapper gap
--osdk-filter-null-row-paddingcalc(var(--osdk-surface-spacing) * 1) 0Null row padding
--osdk-filter-null-row-border-topnoneNull row top border
--osdk-filter-null-label-gapvar(--osdk-surface-spacing)Null label gap
--osdk-filter-null-label-font-familyvar(--osdk-typography-family-default)Null label font family
--osdk-filter-null-label-font-sizevar(--osdk-typography-size-body-medium)Null label font size
--osdk-filter-null-label-line-height1.4Null label line height
--osdk-filter-null-label-colorvar(--osdk-typography-color-default-rest)Null label color
--osdk-filter-null-count-font-familyvar(--osdk-typography-family-default)Null count font family
--osdk-filter-null-count-font-sizevar(--osdk-typography-size-body-small)Null count font size
--osdk-filter-null-count-colorvar(--osdk-typography-color-muted)Null count color

Multi-Select Tokens

VariableDefault ValueDescription
--osdk-filter-multiselect-gapcalc(var(--osdk-surface-spacing) * 2)Multi-select gap
--osdk-filter-multiselect-inputRow-gapvar(--osdk-surface-spacing)Multi-select input row gap
--osdk-filter-multiselect-count-font-familyvar(--osdk-typography-family-default)Count font family
--osdk-filter-multiselect-count-font-sizevar(--osdk-typography-size-body-small)Count font size
--osdk-filter-multiselect-count-colorvar(--osdk-typography-color-muted)Count color

Date Filter Tokens

VariableDefault ValueDescription
--osdk-filter-select-container-gapvar(--osdk-surface-spacing)Select container gap
--osdk-filter-date-clear-font-familyvar(--osdk-typography-family-default)Date clear font family
--osdk-filter-date-clear-font-sizevar(--osdk-typography-size-body-small)Date clear font size
--osdk-filter-date-clear-colorvar(--osdk-intent-primary-rest)Date clear color
--osdk-filter-date-clear-paddingcalc(var(--osdk-surface-spacing) * 0.5)Date clear padding

Single Select Tokens

VariableDefault ValueDescription
--osdk-filter-select-clear-paddingcalc(var(--osdk-surface-spacing) * 0.5)Select clear padding
--osdk-filter-select-clear-colorvar(--osdk-typography-color-muted)Select clear color
--osdk-filter-select-clear-border-radiusvar(--osdk-surface-border-radius)Select clear border radius
--osdk-filter-select-clear-transitionvar(--osdk-emphasis-transition-duration) var(--osdk-emphasis-ease-default)Select clear transition
--osdk-filter-select-clear-color-hovervar(--osdk-typography-color-default-rest)Select clear hover color
--osdk-filter-select-clear-bg-hovervar(--osdk-custom-color-gray-1)Select clear hover background

Text Tags Tokens

VariableDefault ValueDescription
--osdk-filter-texttags-gapvar(--osdk-surface-spacing)Text tags gap

Skeleton Loading

VariableDefault ValueDescription
--osdk-filter-skeleton-text-heightcalc(var(--osdk-surface-spacing) * 1.5)Skeleton text height
--osdk-filter-skeleton-count-widthcalc(var(--osdk-surface-spacing) * 2.5)Skeleton count width
--osdk-filter-content-fade-durationvar(--osdk-emphasis-transition-duration)Content fade transition duration

Form

Styling for form components.

Layout

VariableDefault ValueDescription
--osdk-form-content-paddingcalc(var(--osdk-surface-spacing) * 4)Form content padding
--osdk-form-field-gapcalc(var(--osdk-surface-spacing) * 4)Gap between fields

Header

VariableDefault ValueDescription
--osdk-form-header-border-colorvar(--osdk-surface-border-color-default)Header border color
--osdk-form-header-font-sizevar(--osdk-typography-size-body-large)Header font size
--osdk-form-header-font-weightvar(--osdk-typography-weight-bold)Header font weight
--osdk-form-header-colorvar(--osdk-typography-color-default-rest)Header text color
--osdk-form-header-block-paddingcalc(var(--osdk-surface-spacing) * 3)Header block padding
--osdk-form-header-inline-paddingvar(--osdk-form-content-padding)Header inline padding
VariableDefault ValueDescription
--osdk-form-footer-border-colorvar(--osdk-surface-border-color-default)Footer border color
--osdk-form-footer-error-colorvar(--osdk-form-error-color)Footer error indicator color
--osdk-form-footer-error-font-sizevar(--osdk-typography-size-body-medium)Footer error font size

Labels

VariableDefault ValueDescription
--osdk-form-label-font-sizevar(--osdk-typography-size-body-medium)Label font size
--osdk-form-label-font-weightvar(--osdk-typography-weight-bold)Label font weight
--osdk-form-label-colorvar(--osdk-typography-color-default-rest)Label text color
--osdk-form-label-field-gapcalc(var(--osdk-surface-spacing) * 1.5)Gap between label and field

Validation

VariableDefault ValueDescription
--osdk-form-required-colorvar(--osdk-intent-danger-rest)Required indicator color
--osdk-form-error-font-sizevar(--osdk-typography-size-body-small)Error message font size
--osdk-form-error-colorvar(--osdk-typography-color-danger-rest)Error message color

Input

Shared styling for input components.

VariableDefault ValueDescription
--osdk-input-min-height30pxInput minimum height
--osdk-input-paddingcalc(var(--osdk-surface-spacing) * 1.5) calc(var(--osdk-surface-spacing) * 2.5)Input padding
--osdk-input-border-radiusvar(--osdk-surface-border-radius)Input border radius
--osdk-input-border-widthvar(--osdk-surface-border-width)Input border width
--osdk-input-border-colorvar(--osdk-surface-border-color-default)Input border color
--osdk-input-border-color-focusvar(--osdk-intent-primary-rest)Input focused border
--osdk-input-border-color-errorvar(--osdk-intent-danger-rest)Input error border
--osdk-input-bgvar(--osdk-surface-background-color-default-rest)Input background
--osdk-input-bg-hovervar(--osdk-surface-background-color-default-hover)Input hover background
--osdk-input-colorvar(--osdk-typography-color-default-rest)Input text color
--osdk-input-placeholder-colorvar(--osdk-typography-color-muted)Input placeholder color
--osdk-input-font-sizevar(--osdk-typography-size-body-medium)Input font size
--osdk-input-font-familyvar(--osdk-typography-family-default)Input font family
--osdk-input-transition-durationvar(--osdk-emphasis-transition-duration)Transition duration
--osdk-input-transition-easevar(--osdk-emphasis-ease-default)Transition easing
--osdk-input-focus-widthvar(--osdk-emphasis-focus-width)Focus ring width
--osdk-input-focus-colorvar(--osdk-emphasis-focus-color)Focus ring color
--osdk-input-focus-offsetvar(--osdk-emphasis-focus-offset)Focus ring offset
--osdk-input-disabled-opacity0.5Disabled opacity

Markdown Renderer

Styling for markdown renderer components.

VariableDefault ValueDescription
--osdk-markdown-renderer-bgvar(--osdk-background-primary)Container background
--osdk-markdown-renderer-bordervar(--osdk-surface-border)Container border
--osdk-markdown-renderer-paddingcalc(var(--osdk-surface-spacing) * 3)Container padding
--osdk-markdown-renderer-line-height1.6Content line height
--osdk-markdown-renderer-heading-margin-top1.5emHeading top margin
--osdk-markdown-renderer-heading-margin-bottom0.5emHeading bottom margin
--osdk-markdown-renderer-paragraph-spacing1emParagraph spacing
--osdk-markdown-renderer-code-bgvar(--osdk-background-secondary)Code block background
--osdk-markdown-renderer-code-inline-padding2px 6pxInline code padding
--osdk-markdown-renderer-code-inline-border-radius3pxInline code border radius
--osdk-markdown-renderer-blockquote-border3px solid var(--osdk-intent-primary-rest)Blockquote border
--osdk-markdown-renderer-link-colorvar(--osdk-intent-primary-rest)Link color
--osdk-markdown-renderer-table-bordervar(--osdk-surface-border-color)Table border color

Object Set

Styling for object set display components.

VariableDefault ValueDescription
--osdk-object-set-gapcalc(var(--osdk-surface-spacing) * 2)Object set gap
--osdk-object-set-min-height30pxMinimum height
--osdk-object-set-paddingcalc(var(--osdk-surface-spacing) * 1.5) 0Object set padding
--osdk-object-set-colorvar(--osdk-typography-color-default-rest)Text color
--osdk-object-set-placeholder-colorvar(--osdk-typography-color-muted)Placeholder text color
--osdk-object-set-font-familyvar(--osdk-typography-family-default)Font family
--osdk-object-set-font-sizevar(--osdk-typography-size-body-medium)Font size
--osdk-object-set-line-heightvar(--osdk-typography-line-height-default)Line height
--osdk-object-set-error-colorvar(--osdk-intent-danger-rest)Error state color
--osdk-object-set-icon-skeleton-widthcalc(var(--osdk-surface-spacing) * 4)Icon skeleton width
--osdk-object-set-label-skeleton-widthcalc(var(--osdk-surface-spacing) * 30)Label skeleton width

PDF Viewer

Styling for PDF viewer components.

Container

VariableDefault ValueDescription
--osdk-pdf-viewer-bgvar(--osdk-background-primary)Viewer background
--osdk-pdf-viewer-bordervar(--osdk-surface-border)Viewer border

Toolbar

VariableDefault ValueDescription
--osdk-pdf-viewer-toolbar-bgvar(--osdk-background-secondary)Toolbar background
--osdk-pdf-viewer-toolbar-bordervar(--osdk-surface-border)Toolbar border
--osdk-pdf-viewer-toolbar-colorvar(--osdk-typography-color-default-rest)Toolbar text color
--osdk-pdf-viewer-toolbar-gapvar(--osdk-surface-spacing)Toolbar gap
VariableDefault ValueDescription
--osdk-pdf-viewer-search-highlightcolor-mix(in srgb, var(--osdk-intent-warning-rest) 40%, transparent)Search highlight color
--osdk-pdf-viewer-search-activecolor-mix(in srgb, var(--osdk-intent-warning-rest) 70%, transparent)Active search result color
--osdk-pdf-viewer-search-bar-bgvar(--osdk-background-primary)Search bar background

Annotations

VariableDefault ValueDescription
--osdk-pdf-viewer-annotation-highlightcolor-mix(in srgb, var(--osdk-intent-primary-rest) 30%, transparent)Annotation highlight color
--osdk-pdf-viewer-annotation-underlinevar(--osdk-intent-primary-rest)Annotation underline color
--osdk-pdf-viewer-annotation-commentvar(--osdk-intent-warning-rest)Annotation comment color
--osdk-pdf-viewer-annotation-pinvar(--osdk-intent-danger-rest)Annotation pin color

Page

VariableDefault ValueDescription
--osdk-pdf-viewer-page-shadowvar(--osdk-surface-shadow-2)Page shadow
--osdk-pdf-viewer-page-gapvar(--osdk-surface-spacing)Gap between pages
VariableDefault ValueDescription
--osdk-pdf-viewer-sidebar-width200pxSidebar width
--osdk-pdf-viewer-sidebar-bgvar(--osdk-background-secondary)Sidebar background
--osdk-pdf-viewer-sidebar-bordervar(--osdk-surface-border)Sidebar border
--osdk-pdf-viewer-sidebar-active-bordervar(--osdk-intent-primary-rest)Active thumbnail border
--osdk-pdf-viewer-sidebar-thumbnail-gapvar(--osdk-surface-spacing)Thumbnail gap

Radio

Styling for radio button components.

VariableDefault ValueDescription
--osdk-radio-sizecalc(var(--osdk-surface-spacing) * 4)Radio button size
--osdk-radio-indicator-sizecalc(var(--osdk-surface-spacing) * 2)Radio indicator dot size
--osdk-radio-gapcalc(var(--osdk-surface-spacing) * 2)Gap between radio and label
--osdk-radio-item-gapcalc(var(--osdk-surface-spacing) * 2)Gap between radio items
--osdk-radio-bordervar(--osdk-surface-border)Radio border style
--osdk-radio-bgtransparentUnchecked background
--osdk-radio-bg-hovervar(--osdk-surface-background-color-default-hover)Unchecked hover background
--osdk-radio-bg-checkedvar(--osdk-intent-primary-rest)Checked background
--osdk-radio-bg-checked-hovervar(--osdk-intent-primary-hover)Checked hover background
--osdk-radio-bg-checked-activevar(--osdk-intent-primary-active)Checked active background
--osdk-radio-indicator-colorvar(--osdk-intent-primary-foreground)Indicator dot color

Switch

Styling for toggle switch components. These tokens use CSS fallback values with override tokens.

VariableDefault ValueDescription
--osdk-switch-track-widthvar(--osdk-switch-track-width-override, 28px)Track width
--osdk-switch-track-heightvar(--osdk-switch-track-height-override, 16px)Track height
--osdk-switch-thumb-sizevar(--osdk-switch-thumb-size-override, 12px)Thumb size
--osdk-switch-thumb-offsetvar(--osdk-switch-thumb-offset-override, 2px)Thumb offset from track edge

The switch component also supports additional override tokens via CSS fallback values:

Override TokenFallbackDescription
--osdk-switch-border-radiusvar(--osdk-surface-border-radius)Track border radius
--osdk-switch-transition-durationvar(--osdk-emphasis-transition-duration)Transition duration
--osdk-switch-transition-easevar(--osdk-emphasis-ease-default)Transition easing
--osdk-switch-track-bgvar(--osdk-intent-default-rest)Unchecked track background
--osdk-switch-track-bg-hovervar(--osdk-intent-default-hover)Unchecked track hover background
--osdk-switch-track-bg-activevar(--osdk-intent-default-active)Unchecked track active background
--osdk-switch-track-bg-checkedvar(--osdk-intent-primary-rest)Checked track background
--osdk-switch-track-bg-checked-hovervar(--osdk-intent-primary-hover)Checked track hover background
--osdk-switch-track-bg-checked-activevar(--osdk-intent-primary-active)Checked track active background
--osdk-switch-thumb-bgvar(--osdk-palette-white)Thumb background
--osdk-switch-focus-widthvar(--osdk-emphasis-focus-width)Focus ring width
--osdk-switch-focus-colorvar(--osdk-emphasis-focus-color)Focus ring color
--osdk-switch-focus-offsetvar(--osdk-emphasis-focus-offset)Focus ring offset

Table

Styling for table components including headers, rows, and cells.

Base Border Properties

VariableDefault ValueDescription
--osdk-table-border-colorvar(--osdk-surface-border-color-default)Base color for all table borders
--osdk-table-border-widthvar(--osdk-surface-border-width)Base width for all table borders

Semantic Border Variables

VariableDefault ValueDescription
--osdk-table-bordervar(--osdk-table-border-width) solid var(--osdk-table-border-color)Base table border (outermost edges)
--osdk-table-header-dividervar(--osdk-table-border)Vertical divider between header cells
--osdk-table-cell-dividervar(--osdk-table-border-width) solid transparentVertical divider between row cells
--osdk-table-row-dividervar(--osdk-table-border)Horizontal divider between rows
--osdk-table-pinned-column-bordervar(--osdk-table-border)Border for pinned columns

Header Styling

VariableDefault ValueDescription
--osdk-table-header-height50pxTable header row height
--osdk-table-header-bgvar(--osdk-background-secondary)Table header background color
--osdk-table-header-fontWeightvar(--osdk-typography-weight-bold)Header text weight
--osdk-table-header-fontSizevar(--osdk-typography-size-body-small)Header text size
--osdk-table-header-colorvar(--osdk-typography-color-muted)Header text color

Row Backgrounds

VariableDefault ValueDescription
--osdk-table-row-bg-defaultvar(--osdk-background-primary)Default row background
--osdk-table-row-bg-alternatevar(--osdk-background-tertiary)Alternate row background for striping
--osdk-table-row-bg-hovercolor-mix(in srgb, var(--osdk-intent-primary-hover) 10%, var(--osdk-background-primary))Row hover background
--osdk-table-row-bg-activecolor-mix(in srgb, var(--osdk-intent-primary-hover) 10%, var(--osdk-background-primary))Active/selected row background

Row Border Colors (Hover/Active States)

VariableDefault ValueDescription
--osdk-table-row-border-color-hovervar(--osdk-intent-primary-rest)Border color for hovered rows
--osdk-table-row-border-color-activevar(--osdk-intent-primary-rest)Border color for selected rows

Cell Styling

VariableDefault ValueDescription
--osdk-table-cell-padding0 calc(var(--osdk-surface-spacing) * 2)Cell padding
--osdk-table-cell-fontSizevar(--osdk-typography-size-body-medium)Cell text size
--osdk-table-cell-colorvar(--osdk-typography-color-default-rest)Cell text color

Editable Cell Styling

VariableDefault ValueDescription
--osdk-table-cell-editable-bordervar(--osdk-surface-border-width) solid var(--osdk-surface-border-color-strong)Border for editable cells in edit mode
--osdk-table-cell-edited-bordervar(--osdk-surface-border-width) solid var(--osdk-intent-primary-rest)Border for edited cells with pending changes
--osdk-table-cell-edited-border-errorvar(--osdk-surface-border-width) solid var(--osdk-intent-danger-rest)Border for cells with validation errors
--osdk-table-cell-editable-bgvar(--osdk-background-primary)Background for editable cells

Edit Container

VariableDefault ValueDescription
--osdk-table-edit-container-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 4)Padding for the edit controls container
--osdk-table-edit-container-min-heightcalc(var(--osdk-surface-spacing) * 12)Minimum height for edit controls container

Header Menu

Styling for the column header dropdown menu.

VariableDefault ValueDescription
--osdk-table-header-menu-paddingcalc(var(--osdk-surface-spacing) * 0.25)Menu button padding
--osdk-table-header-menu-bgvar(--osdk-custom-color-light-gray-2)Menu button background
--osdk-table-header-menu-bordervar(--osdk-surface-border-width) solid var(--osdk-custom-color-gray-4)Menu button border
--osdk-table-header-menu-colorvar(--osdk-typography-color-muted)Menu icon color
--osdk-table-header-menu-color-activevar(--osdk-typography-color-default-rest)Menu icon active color
--osdk-table-header-menu-icon-colorvar(--osdk-table-header-menu-color)Menu icon color (chevron)
--osdk-table-header-menu-bg-hovervar(--osdk-custom-color-gray-1)Menu button hover background
--osdk-table-header-menu-bg-activevar(--osdk-custom-color-gray-2)Menu button active background

Resizer

Styling for column resize handles.

VariableDefault ValueDescription
--osdk-table-resizer-color-hovervar(--osdk-custom-color-primary-1)Resize handle hover color
--osdk-table-resizer-color-activevar(--osdk-intent-primary-rest)Resize handle active color

Skeleton Loading

VariableDefault ValueDescription
--osdk-table-skeleton-color-fromvar(--osdk-background-skeleton-from)Skeleton animation start color
--osdk-table-skeleton-color-tovar(--osdk-background-skeleton-to)Skeleton animation end color

Column Config Dialog

VariableDefault ValueDescription
--osdk-table-column-config-dialog-min-width800pxMinimum width for column config dialog
--osdk-table-column-config-dialog-min-height400pxMinimum height for column config dialog
--osdk-table-column-config-visible-columns-bgvar(--osdk-background-secondary)Background for visible columns section

Time Picker

Styling for time picker components.

VariableDefault ValueDescription
--osdk-time-picker-margin-topcalc(var(--osdk-surface-spacing) * 2)Top margin
--osdk-time-picker-padding-topcalc(var(--osdk-surface-spacing) * 2)Top padding
--osdk-time-picker-border-topvar(--osdk-surface-border)Top border
--osdk-time-picker-gapcalc(var(--osdk-surface-spacing) * 4)Gap between elements
--osdk-time-picker-input-font-familyvar(--osdk-input-font-family)Input font family
--osdk-time-picker-input-font-sizevar(--osdk-input-font-size)Input font size
--osdk-time-picker-input-paddingvar(--osdk-input-padding)Input padding
--osdk-time-picker-input-bordervar(--osdk-input-border-width) solid var(--osdk-input-border-color)Input border
--osdk-time-picker-input-border-radiusvar(--osdk-input-border-radius)Input border radius
--osdk-time-picker-input-bgvar(--osdk-input-bg)Input background
--osdk-time-picker-input-colorvar(--osdk-input-color)Input text color
--osdk-time-picker-input-border-color-focusvar(--osdk-input-border-color-focus)Focused border color
--osdk-time-picker-input-focus-outlinevar(--osdk-input-focus-width) solid var(--osdk-input-focus-color)Focus outline
--osdk-time-picker-input-focus-offsetvar(--osdk-input-focus-offset)Focus offset

Tooltip

Styling for tooltip components.

VariableDefault ValueDescription
--osdk-tooltip-z-indexvar(--osdk-surface-z-index-4)Tooltip z-index
--osdk-tooltip-paddingcalc(var(--osdk-surface-spacing) * 2) calc(var(--osdk-surface-spacing) * 4)Tooltip padding
--osdk-tooltip-bgvar(--osdk-background-primary)Tooltip background
--osdk-tooltip-border-colorvar(--osdk-palette-gray-4)Tooltip border color
--osdk-tooltip-shadowvar(--osdk-surface-shadow-2)Tooltip shadow
--osdk-tooltip-max-width300pxTooltip max width

Creating a Custom Theme

To create a custom theme, override the tokens at the appropriate level. You can either:

  1. Override OSDK tokens directly for quick customization
  2. Override Blueprint tokens to change the entire design system

Example: Override OSDK Tokens

@layer osdk.styles, custom.theme;

@import "@osdk/react-components/styles.css" layer(osdk.styles);

@layer custom.theme {
:root {
/* Change table styling */
--osdk-table-header-bg: #f0f0f0;
--osdk-table-row-bg-default: white;
--osdk-table-border-color: #e0e0e0;

/* Customize editable table styling */
--osdk-table-cell-editable-border: 1px solid #3b82f6;
--osdk-table-cell-edited-border: 2px solid #10b981;
--osdk-table-cell-edited-border-error: 2px solid #ef4444;
--osdk-table-cell-editable-bg: #f0f9ff;

/* Customize primary intent colors */
--osdk-intent-primary-rest: #2563eb;
--osdk-intent-primary-hover: #1d4ed8;
--osdk-intent-primary-active: #1e40af;
}
}

Example: Override Blueprint Tokens

For more comprehensive theming, override the Blueprint tokens that the OSDK tokens reference:

@layer osdk.styles, custom.theme;

@import "@osdk/react-components/styles.css" layer(osdk.styles);

@layer custom.theme {
:root {
/* Change the entire primary color system */
--bp-intent-primary-rest: #2563eb;
--bp-intent-primary-hover: #1d4ed8;
--bp-intent-primary-active: #1e40af;

/* Override palette colors */
--bp-palette-light-gray-5: #fafafa;

/* Change typography */
--bp-typography-size-body-medium: 14px;
--bp-typography-weight-bold: 600;

/* Adjust surface properties */
--bp-surface-border-radius: 8px;
--bp-surface-spacing: 8px;
}
}

Theme Architecture Best Practices

  1. Use CSS Layers: Always import the default tokens into a layer, then add your custom overrides in a higher-priority layer. This ensures your custom theme takes precedence without specificity issues.

  2. Override at the right level:

    • Override OSDK component tokens (--osdk-*) for component-specific changes
    • Override Blueprint tokens (--bp-*) for system-wide design changes
  3. Leverage the mapping: Since OSDK tokens map to Blueprint tokens, changing a Blueprint token will automatically affect all OSDK tokens that reference it.