Themes & density

The playground below is a single container with data-theme and data-density attributes. Setting data-theme flips color-scheme, which drives the light-dark() tokens; data-density resizes controls via the control tokens. No JavaScript is needed in the framework — the toggles here just change two attributes.

Theme
Density

Live preview

This whole panel uses --pl-color-bg, --pl-color-text, and --pl-color-border. The control below uses --pl-control-block-size — change density to see it resize.

A control-height bar

Palette

Reduced motion, contrast & forced colors

prefers-reduced-motion zeroes --pl-motion-scale. prefers-contrast: more strengthens structural boundaries and focus affordances. forced-colors (Windows High Contrast) remaps the semantic tokens to system colors. Toggle these in your OS or DevTools rendering pane to verify.