:root, :host so they work in both regular DOM and Shadow DOM.
CSS custom properties inherit through Shadow DOM boundaries, so --theme-* overrides set on
:root re-theme every <juo-*> component automatically.
Base units
Space scale
Font size scale
Radius scale
Color palettes
- tint —
--tint-{shade}— shades: 25, 50, 75, 100, 200, 300, 400, 500, 600, 700, 800, 900 - success —
--success-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 - warning —
--warning-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 - error —
--error-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 - info —
--info-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 - callout —
--callout-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900 - accent —
--accent-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, white, black, contrast - secondary —
--secondary-{shade}— shades: 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, white, black - neutral —
--color-neutral-{shade}— shades: 0, 25, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950, 1000
--color-neutral-* is an alias of the tint palette and automatically inherits warm/cold/custom
tint behavior driven by data-tint.
Customization
Override--theme-* tokens on :root to restyle all <juo-*> components globally.
No custom attributes or build steps required.
Tailwind preset
- Tailwind v4
- Tailwind v3
- Spacing —
p-8,gap-16,m-24, etc. — steps: 2, 4, 6, 8, 12, 16, 24, 32, 48 - Radii —
rounded-0,rounded-1,rounded-2,rounded-3,rounded-4,rounded-5,rounded-full,rounded-card-1,rounded-card-2,rounded-card-3,rounded-thumbnail,rounded-buttons - Font sizes —
text-12,text-14,text-16,text-20,text-24,text-32 - Colors — all palettes above as
bg/text/border/ring-{palette}-{shade}