Puck AI beta
Read docs
API ReferenceThemingGlobal

Global theming

CSS properties for theming the entire Puck user interface.

.Container {
  --puck-color-interactive: #0f5fff;
  --puck-color-focus-ring: #3b82f6;
}

Colors

TokenDefaultUsed for
--puck-color-surface#ffffffPanel, field and menu backgrounds
--puck-color-surface-muted#f5f5f5Canvas and disabled field backgrounds
--puck-color-surface-subtle#fafafaApp layout, sidebar and toolbar backgrounds
--puck-color-surface-inverse#181818Action bar background
--puck-color-border#dcdcdcDefault borders and dividers
--puck-color-border-hover#767676Input border on hover and focus
--puck-color-border-muted#efefefSubtle dividers and separators
--puck-color-border-inverse#767676Separators on inverse surfaces
--puck-color-text#000000Default body and field text
--puck-color-text-secondary#5a5a5aField labels and disabled field text
--puck-color-text-muted#767676Drawer categories, drag handles and zone labels
--puck-color-text-subtle#abababDisabled icons, loaders and helper text
--puck-color-text-inverse#ffffffText on inverse and primary surfaces
--puck-color-interactive#0158adPrimary actions, links and active states
--puck-color-interactive-hover#014292Links and primary button hover
--puck-color-interactive-active#002c77Links and primary button active
--puck-color-interactive-subtle#e7eef7Active plugin bar, category and outline backgrounds
--puck-color-interactive-soft#f3f6fbSecondary button and selected item backgrounds
--puck-color-interactive-soft-hover#f7faffRow and item hover backgrounds
--puck-color-interactive-neutral-hover#efefefIcon button hover background
--puck-color-interactive-inverse-hover#6499cfInteractive hover color on inverse surfaces
--puck-color-interactive-inverse-active#88b0daInteractive active color on inverse surfaces
--puck-color-focus-ring#3479beKeyboard focus outlines
--puck-color-selection-bgcolor-mix(in srgb, #cfdff0 30%, transparent)Slot, drop zone and selected overlay background
--puck-color-selection-border#abc7e5Selected and drop zone outline borders
--puck-color-highlight#d89abaOutline layer icons and decorative accents
--puck-color-bg-disabled#abababDisabled button background
--puck-color-text-disabled#404040Disabled button text
--puck-color-overlay-backdropcolor-mix(in srgb, #000000 75%, transparent)Modal backdrop

Opacity

TokenDefaultUsed for
--puck-opacity-text-inverse0.75Action bar label opacity

Spacing

TokenDefaultUsed for
--puck-space-14pxSmall gaps, padding and margins throughout
--puck-space-28pxMedium spacing in buttons, plugin bar and menus
--puck-space-312pxDefault field padding and drawer items
--puck-space-416pxLarge panel, section and field padding
--puck-space-524pxExternal input panels and slot indicator height
--puck-space-chrome-guttervar(--puck-space-4)Header and canvas gutter padding

Radius

TokenDefaultUsed for
--puck-radius-none0Square-cornered plugin bar tabs and button variants
--puck-radius-xs2pxBreadcrumb and sidebar section hover chips
--puck-radius-s3pxRadius scale step, not currently consumed
--puck-radius-m4pxDefault radius for buttons, fields and controls
--puck-radius-l8pxAction bar, modal and select dropdown
--puck-radius-pill30pxViewport size control buttons
--puck-radius-round100%Loader spinner ring

Border Width

TokenDefaultUsed for
--puck-border-width-hairline0.5pxAction bar and rich text menu dividers
--puck-border-width-regular1pxDefault borders and outlines across UI
--puck-border-width-focus2pxFocus ring outlines and drop zone outlines
--puck-border-width-strong4pxPlugin bar active tab and accent borders

Motion

TokenDefaultUsed for
--puck-duration-fast50msHover and focus transitions across UI controls
--puck-duration-medium150msLayout, sidebar and slot resize transitions
--puck-duration-slow250msCanvas fade-in transition
--puck-ease-exitease-inEasing for most hover and collapse transitions
--puck-ease-emphasizedease-in-outEasing for viewport controls slide
--puck-ease-entranceease-outEasing for canvas and sidebar entrance

Typography

TokenDefaultUsed for
--puck-font-familyInter, -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica Neue, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI SymbolDefault editor UI font family
--puck-font-family-monospacedui-monospace, "Cascadia Code", "Source Code Pro", Menlo, Consolas, "DejaVu Sans Mono", monospaceHeader path display font
--puck-font-weight-regular400Default button font weight
--puck-font-weight-medium500Active fields, labels and action bar
--puck-font-weight-semibold600Field labels, plugin bar items and headers
--puck-font-weight-bold700Heading component text
--puck-font-weight-heavy800Largest heading variant
--puck-letter-spacing-ui0.05chButton label letter spacing
--puck-letter-spacing-heading0.08chLargest heading letter spacing
--puck-space-m-unitless24Referenced by line-height calculations only

Icon Size

TokenDefaultUsed for
--puck-icon-size-s16pxAction bar and inline control icons
--puck-icon-size-m18pxSelect and rich text menu icons
--puck-icon-size-l24pxIcon size scale step, not currently consumed

Functional

TokenDefaultUsed for
--puck-slot-min-empty-height128pxMinimum height of empty slots
--puck-user-sidebar-left-width186px–320px (responsive)User override for left sidebar width
--puck-user-sidebar-right-width186px–320px (responsive)User override for right sidebar width