Token base
Canvas, accent, text, focus, spacing, radius, motion, and icon scale still originate in the shared .dashboard token block.
--primitive-canvas--primitive-red--primitive-space-*
Select a preset here and every UI primitive route inherits the same dashboard-root token skin. Individual token edits stay scoped to the playground until promoted.
Theme playground is a reusable Oak Flats Muffler Men UI primitive with documented states, accessibility expectations, theme behavior, and implementation evidence.
Theme playground: Select a preset here and every UI primitive route inherits the same dashboard-root token skin. Individual token edits stay scoped to the playground until promoted.
This route is the cascade proof for completed Shared DNA work. It does not replace Foundations, Surfaces, Typography, or Icons. It shows which upstream rules are consumed, which token sources are authoritative, and where the local playground is intentionally scoped.
Canvas, accent, text, focus, spacing, radius, motion, and icon scale still originate in the shared .dashboard token block.
--primitive-canvas--primitive-red--primitive-space-*Panel, border, carbon weave, metallic red clearcoat, amber hover, chrome edge, and recessed depth remain derived from surface rules.
--primitive-panel--primitive-metallic-red--primitive-chrome-edgeTheme presets can swap approved font stacks, but type roles, line-height, tracking, and dense-table scale stay owned by Typography.
--primitive-font-display--primitive-font-body--primitive-text-smTheming exposes icon foreground proof while supplier marks and Carbon and Red wells keep the icon route's sizing, stroke, and plate rules.
--primitive-icon-obsidian--primitive-icon-strokesupplier platesThe CSS variable block remains the base source. The control catalog and style profiles are existing Source of Truth systems. Theming uses a dashboard-root preset scope for route-wide skins, with local editors reserved for proof and handoff snapshots.
src/app/ui-primitives/ui-primitives.module.cssThe .dashboard scope owns the full --primitive-* contract, with light and dark palettes switched by html[data-primitive-theme].
179 catalogued controlssrc/app/ui-primitives/builder/theme-catalogThe 00 Theme control route reads this metadata for labels, groups, levels, and controllable surfaces. Theming references it as the canonical control inventory.
Source route, not a duplicate listsrc/app/ui-primitives/builder/theme/profilesThe 00 Style picker applies token-override profiles through ThemeProvider. This page documents that boundary instead of forking profile persistence.
5 approved profilessrc/app/ui-primitives/components/theming/theme-tokens.tsTheme presets now persist through the dashboard-root primitive shell, while local token editors remain wrapper-scoped for safe inspection and export snapshots.
6 presets / 19 tokensDefault Oak Flats palette — red / amber / teal on obsidian.
mufflermen-classic+Style profileCarbon ProMachined carbon-fibre surfaces, metallic-black panels, metallic-red CTAs with amber hover, and chrome hairlines.
carbon-proAttached classic light-glass workshop skin — dark shell, chrome frost, red signal.
classic-glass+Style profileGlass GarageFrosted layered transparency — translucent glass panels, soft hairlines, floating shadows, red/yellow accents glowing through the frost.
glass-garageTeal-forward dyno-shop palette — cooler surfaces, electric accents.
performance-teal+Style profileMotorsportAggressive race livery — deep matte carbon, hard red/amber accent lines, sharp edges, and snappy reactive motion.
motorsportWarm cream and oxblood — period-correct heritage muffler shop.
heritage-cream+Style profileClean LightPremium light mode — airy panels, crisp hairlines, restrained shadows, and disciplined red/amber accents on a pale editorial canvas.
clean-lightConcrete greys with a single acid yellow accent.
brutalist-mono+Style profileNeo WorkshopNeumorphic soft-extruded controls — raised and pressed surfaces sculpted from dual-light inset shadows, strong contrast, quiet red/amber accents.
neo-workshopIcy cyan, cobalt and chrome — clinical and bright.
glacier+Style profileClean LightPremium light mode — airy panels, crisp hairlines, restrained shadows, and disciplined red/amber accents on a pale editorial canvas.
clean-lightRoot color and scale tokens inherited before this route adds scoped overrides.
canvasbodyredambertealgreenPanel, line, red depth, and material treatment consumed by the preview.
panelpanel-stronglineline-strongred-darkApproved font stacks and text emphasis tokens without rewriting type roles.
mutedtext-strongfont-displayfont-display-altfont-bodyfont-monofont-mono-technoIcon foreground token proof while source-backed logo rules remain protected.
icon-obsidianTheme presets, token controls, inspectors, exports, and style-profile overlays are now gathered under the Theming section. The sidebar no longer splits theme control and style profiles into separate source-truth destinations.
179 catalogued token controls grouped by level and category.
Profile overlayStyle profiles5 profile overlays for material, radius, shadow, fields, focus, and motion.
Theme presetsPreset cards6 approved palette and type presets that drive the dashboard-root shell.
InspectionToken inspectorScoped proof surface for inspecting inherited and overridden --primitive-* values.
HandoffExport snapshotsPromotion handoff for the current preset and local controller override state.
Preset cards persist a ThemePresetId and the shared .dashboard root applies the typed --primitive-* variables for every route. Local colour and font pickers still write only to their controller wrapper, so experiments do not overwrite the global shell.
Token colour picker — tune individual colour tokens with native colour and CSS-value inputs. Inspect primitive states
Each tile below reads from the same `--primitive-*` tokens scoped on the controller wrapper. Re-skin once, every primitive responds.
Production-floor primitives styled by the token cascade. Tap a preset to see the whole subtree re-paint.