Mercurial
diff design_system/src/styles/tokens.css @ 258:60a876c4587a
[ui] Add semantic primitive ownership
Build a layered Zenbu token and sizing system, make authored controls use native-underneath primitives, migrate mrjunejune without imposing visual surfaces, and document/enforce HTML ownership in the catalog and wiki.
Co-authored-by: Copilot <[email protected]>
| author | MrJuneJune <me@mrjunejune.com> |
|---|---|
| date | Wed, 05 Aug 2026 05:25:40 -0700 |
| parents | 30c2196d03d4 |
| children |
line wrap: on
line diff
--- a/design_system/src/styles/tokens.css Tue Aug 04 16:49:11 2026 -0700 +++ b/design_system/src/styles/tokens.css Wed Aug 05 05:25:40 2026 -0700 @@ -1,3 +1,7 @@ +@import url("./reference.css"); +@import url("./semantic.css"); +@import url("./density.css"); + :root { color-scheme: light; @@ -170,6 +174,7 @@ --zen-color-danger-muted: var(--zen-color-red-100); --zen-color-disabled: var(--zen-color-neutral-300); --zen-color-selection: var(--zen-color-amber-200); + --zen-color-link-decoration: var(--zen-color-clay); --zen-color-code-surface: #111318; --zen-color-code-text: #f4f4f5; --zen-color-gridline: rgba(127, 127, 127, 0.08); @@ -185,22 +190,71 @@ --zen-color-data-9: var(--zen-color-clay); --zen-color-data-10: var(--zen-color-blue-400); - --zen-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; - --zen-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace; - --zen-font-size-xs: 0.75rem; - --zen-font-size-sm: 0.875rem; - --zen-font-size-md: 1rem; - --zen-font-size-lg: 1.25rem; - --zen-font-size-xl: clamp(1.75rem, 4vw, 3rem); - --zen-line-height: 1.55; + /* Compatibility aliases. New code consumes --zenbu-sys-* tokens. */ + --zen-font-sans: var(--zenbu-sys-font-family-ui); + --zen-font-mono: var(--zenbu-sys-font-family-code); + --zen-font-size-xs: var(--zenbu-sys-font-size-xs); + --zen-font-size-sm: var(--zenbu-sys-font-size-sm); + --zen-font-size-md: var(--zenbu-sys-font-size-md); + --zen-font-size-lg: var(--zenbu-sys-font-size-lg); + --zen-font-size-xl: var(--zenbu-sys-font-size-xl); + --zen-font-size-2xl: var(--zenbu-sys-font-size-2xl); + --zen-font-size-3xl: var(--zenbu-sys-type-page-title-size); + --zen-line-height-xs: var(--zenbu-sys-line-height-xs); + --zen-line-height-sm: var(--zenbu-sys-line-height-sm); + --zen-line-height-md: var(--zenbu-sys-line-height-md); + --zen-line-height-lg: var(--zenbu-sys-line-height-lg); + --zen-line-height-xl: var(--zenbu-sys-line-height-xl); + --zen-line-height: var(--zenbu-sys-type-body-line-height); + --zen-font-weight-regular: var(--zenbu-sys-font-weight-regular); + --zen-font-weight-medium: var(--zenbu-sys-font-weight-medium); + --zen-font-weight-strong: var(--zenbu-sys-font-weight-strong); + --zen-font-weight-display: var(--zenbu-sys-font-weight-display); + + --zen-space-1: var(--zenbu-ref-space-1); + --zen-space-2: var(--zenbu-ref-space-2); + --zen-space-3: var(--zenbu-ref-space-3); + --zen-space-4: var(--zenbu-ref-space-4); + --zen-space-5: var(--zenbu-ref-space-6); + --zen-space-6: var(--zenbu-ref-space-8); + --zen-space-7: var(--zenbu-ref-space-12); - --zen-space-1: 0.25rem; - --zen-space-2: 0.5rem; - --zen-space-3: 0.75rem; - --zen-space-4: 1rem; - --zen-space-5: 1.5rem; - --zen-space-6: 2rem; - --zen-space-7: 3rem; + --zen-padding-xs: var(--zenbu-sys-padding-xs); + --zen-padding-sm: var(--zenbu-sys-padding-sm); + --zen-padding-md: var(--zenbu-sys-padding-md); + --zen-padding-lg: var(--zenbu-sys-padding-lg); + --zen-padding-xl: var(--zenbu-sys-padding-xl); + + --zen-control-height-xs: var(--zenbu-sys-control-height-xs); + --zen-control-height-sm: var(--zenbu-sys-control-height-sm); + --zen-control-height-md: var(--zenbu-sys-control-height-md); + --zen-control-height-lg: var(--zenbu-sys-control-height-lg); + --zen-control-height-xl: var(--zenbu-sys-control-height-xl); + --zen-control-padding-block-xs: var(--zenbu-sys-control-padding-block-xs); + --zen-control-padding-block-sm: var(--zenbu-sys-control-padding-block-sm); + --zen-control-padding-block-md: var(--zenbu-sys-control-padding-block-md); + --zen-control-padding-block-lg: var(--zenbu-sys-control-padding-block-lg); + --zen-control-padding-block-xl: var(--zenbu-sys-control-padding-block-xl); + --zen-control-padding-inline-xs: var(--zenbu-sys-control-padding-inline-xs); + --zen-control-padding-inline-sm: var(--zenbu-sys-control-padding-inline-sm); + --zen-control-padding-inline-md: var(--zenbu-sys-control-padding-inline-md); + --zen-control-padding-inline-lg: var(--zenbu-sys-control-padding-inline-lg); + --zen-control-padding-inline-xl: var(--zenbu-sys-control-padding-inline-xl); + --zen-control-gap-xs: var(--zenbu-sys-control-gap-xs); + --zen-control-gap-sm: var(--zenbu-sys-control-gap-sm); + --zen-control-gap-md: var(--zenbu-sys-control-gap-md); + --zen-control-gap-lg: var(--zenbu-sys-control-gap-lg); + --zen-control-gap-xl: var(--zenbu-sys-control-gap-xl); + --zen-control-line-height-xs: var(--zenbu-sys-control-line-height-xs); + --zen-control-line-height-sm: var(--zenbu-sys-control-line-height-sm); + --zen-control-line-height-md: var(--zenbu-sys-control-line-height-md); + --zen-control-line-height-lg: var(--zenbu-sys-control-line-height-lg); + --zen-control-line-height-xl: var(--zenbu-sys-control-line-height-xl); + --zen-icon-size-xs: var(--zenbu-sys-icon-size-xs); + --zen-icon-size-sm: var(--zenbu-sys-icon-size-sm); + --zen-icon-size-md: var(--zenbu-sys-icon-size-md); + --zen-icon-size-lg: var(--zenbu-sys-icon-size-lg); + --zen-icon-size-xl: var(--zenbu-sys-icon-size-xl); --zen-radius-sm: 0.35rem; --zen-radius-md: 0.7rem;