zeus-css 1.0.12 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,112 @@
1
+ # Changelog
2
+
3
+ All notable changes to zeus-css are documented in this file.
4
+ Format loosely follows [Keep a Changelog](https://keepachangelog.com/).
5
+
6
+ ## [1.0.13]
7
+
8
+ ### Fixed
9
+
10
+ - **Package tarball no longer ships a stale nested copy of the framework.**
11
+ `scss/dist/*.css` (a 1.0.0-era build with 12 instances of `outline: none`
12
+ instead of the current 7 — an accessibility fix that had already shipped
13
+ in the real `dist/`), the nested `scss/package.json`, `.stylelintrc.json`,
14
+ and dev-only build scripts are no longer included in `files`. Unpacked
15
+ package size drops from carrying a full second copy of the framework to
16
+ just the intended source.
17
+ - **`exports["."].sass` now resolves to `./scss/foundation/foundation.scss`**
18
+ instead of `./scss/zeus.scss`. The latter is an intentional zero-emission
19
+ bridge (four `@forward` statements, no CSS) meant for component
20
+ `.module.scss` files via the `zeus-css/zeus` subpath — it was never meant
21
+ to be the target of the bare `zeus-css` import. `@use "pkg:zeus-css"` (or
22
+ any bundler's `sass` condition resolution) now returns the actual
23
+ framework instead of silently compiling to nothing.
24
+ - Fixed a compile crash (`Invalid index 2 for a list with 1 elements`) when
25
+ `$zeus-breakpoints` is overridden down to a single entry. The breakpoint
26
+ sort in `root-generator.scss` now guards `$n > 1` before entering the
27
+ loop.
28
+ - `<main>` no longer collapses to near-zero width as a flex item. It was
29
+ included (with `body` and `.container`) in the container-query
30
+ `container-type: inline-size` reset, which removes it from normal
31
+ content-based sizing; unlike `body`/`.container`, `<main>` in a flex
32
+ context has no other width source. Removed from that selector, matching
33
+ the reasoning already applied to `.grid`.
34
+ - `[hidden]` can now be overridden. The reset declared
35
+ `display: none !important` inside `@layer reset` — the first layer in
36
+ cascade order — and layer order reverses for `!important` declarations,
37
+ so nothing later (layered or not) could win. The `!important` is gone,
38
+ and the selector is now `:where([hidden]):not([hidden="until-found"])`
39
+ so `hidden="until-found"` content stays reachable by in-page find, per
40
+ the HTML spec's own recommended selector for this rule.
41
+ - Fluid typography no longer rounds to visible 1.6px steps. The shared
42
+ clamp() engine's `$step` defaults to `0.1` in the *output* unit — fine at
43
+ 0.1px for spacing, but 0.1rem (1.6px) for type. Typography now compiles
44
+ with `$step: 0.01` / `$accuracy: 3`, and declared min/max endpoints are
45
+ now reached in practice instead of stopping ~1.6px short.
46
+ - `overflow-wrap: anywhere` removed from the `body` reset. It was declared
47
+ alongside `word-break: break-word`, which already handles overflow
48
+ safely; `anywhere` additionally breaks inside words that don't need it,
49
+ including in narrow columns where it isn't wanted.
50
+ - Added `border-style: solid` to the universal box-sizing reset. Elements
51
+ reset with `border: 0` (`button`, `input`, `textarea`, `select`) stayed
52
+ invisible even after a consumer later added `border-width`/`border-color`,
53
+ because `border-style` defaulted to `none`. Same fix Tailwind's preflight
54
+ uses.
55
+ - `bin/init.js` now exits non-zero on a failed scaffold instead of
56
+ swallowing the error and exiting 0, and responds to `--help`/`-h` with
57
+ usage instead of running the full init routine against the current
58
+ directory.
59
+ - `peerDependencies.sass` raised from `^1.60.0` to `^1.79.0`, matching the
60
+ actual floor required by the relative `oklch(from ...)` color syntax and
61
+ the `pkg:` importer used in the docs.
62
+ - Removed the `postinstall` script (`bin/postinstall.js`) and its
63
+ `package.json` hook. It only printed a discovery hint for
64
+ `npx zeus-css init`, already covered in the README — not worth pnpm 10
65
+ blocking lifecycle scripts by default, or the supply-chain-scanner flags
66
+ a postinstall script draws for no functional benefit.
67
+ - Corrected the README's `@property` claim — coverage is the base semantic
68
+ color palette (5 tokens), not "key tokens" broadly; derived color
69
+ variants, spacing, and typography remain plain custom properties.
70
+ - Removed `body-md`, `body-md-bold`, `body-md-semibold`, and `body-md-medium`
71
+ from the typography token map — they were byte-for-byte duplicates of
72
+ `body`/`body-bold`/`body-semibold`/`body-medium`. `--text-body` is now
73
+ the single source; regenerated `zeus.tokens.json`, `cheatsheet.md`, and
74
+ `llms.txt` (both the `scss/` copies and the package-root mirrors, which
75
+ had drifted out of sync). The two real consumers of `--text-body-md`
76
+ (`FinalHeader.module.scss`, `CtaBlock.module.scss`, both outside this
77
+ package) were migrated to `--text-body` — same value, no visual change.
78
+ - Fixed an unrelated bug found while migrating `CtaBlock.module.scss`:
79
+ `.installBox` set `font-size: var(--text-body)`, but `--text-body` is a
80
+ `font` *shorthand* (weight/size/line-height/family), not a bare size —
81
+ invalid as a `font-size` value, so it silently fell back to inherited.
82
+ Replaced with `font: var(--text-code);`, matching the token its sibling
83
+ widget (`TheZeusHero.module.scss` `.install`) already uses, per the
84
+ file's own "kept in visual sync" comment.
85
+ - Documented that Zeus intentionally ships one color palette with no
86
+ `prefers-color-scheme` / light-dark switching — not a gap, a design
87
+ decision. `zeus-theme()` is for swapping the whole palette (e.g. a
88
+ different brand), not a light/dark toggle. See README Features.
89
+ - Fixed a silent-drop bug in color token emission: explicitly setting a
90
+ derived color key in `$zeus-colors` (e.g. `primary-light`) made
91
+ `semantic-colors.scss` skip emitting it, on the assumption that
92
+ `root-generator.scss`'s generic pipeline would emit it instead — but that
93
+ pipeline deliberately excludes `$zeus-colors`. The variable vanished from
94
+ the compiled CSS entirely; with `$zeus-enable-property-registration`
95
+ left at its default it was masked by `@property`'s `initial-value`
96
+ incidentally supplying the same value, but disabling that flag exposed
97
+ the break directly. `_emit-static-color-vars` now always emits every
98
+ variant, using the explicit override when present and the derived value
99
+ otherwise.
100
+
101
+ ### Known issues (tracked, not in this release)
102
+
103
+ - `round()`/`oklch(from ...)` are used throughout the compiled CSS with no
104
+ `@supports` fallback, so browsers without CSS `round()` support drop the
105
+ affected `clamp()` declarations entirely. Needs a systematic
106
+ progressive-enhancement pass, not a patch-sized fix.
107
+ - Class naming mixes three conventions (`z-*` BEM components, `btn-*` and
108
+ `.container` utilities, both covered by `$zeus-use-prefix`). Decided:
109
+ keep as-is rather than a breaking rename — `$zeus-use-prefix` defaults
110
+ to `false`, so `.container`/`btn-*` are unprefixed unless opted in; this
111
+ is now called out explicitly in `API.md` as a collision risk when
112
+ running alongside another framework.
package/README.md CHANGED
@@ -77,7 +77,7 @@ $zeus-colors: (
77
77
  Then compile `zeus.theme.scss` and link **that** output instead of `zeus-css/dist/zeus.css`:
78
78
 
79
79
  ```bash
80
- sass --load-path=node_modules zeus.theme.scss zeus.theme.css
80
+ sass zeus.theme.scss zeus.theme.css
81
81
  ```
82
82
 
83
83
  Re-run this command after any edit to `zeus.config.scss` / `zeus.customize.scss`. Running `npx zeus-css init` again never overwrites files you already have.
@@ -130,5 +130,6 @@ module.exports = {
130
130
 
131
131
  - **Fluid Linear Interpolation Engine**: Mathematical clamp generator for automatic responsive font sizes and spacing without media-query soup.
132
132
  - **Recursive Token Pipeline**: Automatically traverses and transforms complex Sass maps into CSS Custom Properties.
133
- - **CSS @property Type Safety**: Native browser-level type-safety for key tokens.
133
+ - **CSS @property Type Safety**: Native browser-level type-safety (syntax validation + fallback) for the base semantic color palette — derived color variants, spacing, and typography tokens are plain custom properties.
134
134
  - **Zero-Emission SCSS API**: Uses Sass `@forward` to expose core design tools without emitting a single duplicate byte of CSS.
135
+ - **Single palette by design**: Zeus does not ship `prefers-color-scheme` / light-dark mode switching — one color palette applies everywhere. Use `zeus-theme()` if you need a different palette entirely (e.g. per-brand), not as a light/dark toggle.
package/bin/init.js CHANGED
@@ -2,6 +2,20 @@
2
2
  const fs = require('fs');
3
3
  const path = require('path');
4
4
 
5
+ if (process.argv.includes('--help') || process.argv.includes('-h')) {
6
+ console.log(`
7
+ Usage: npx zeus-css init
8
+
9
+ Ejects local zeus.config.scss / zeus.customize.scss / zeus.theme.scss (and
10
+ zeus-css-env.d.ts in TypeScript projects) into the current directory so you
11
+ can override the framework's defaults and recompile.
12
+
13
+ Options:
14
+ -h, --help Show this help and exit
15
+ `);
16
+ process.exit(0);
17
+ }
18
+
5
19
  const projectRoot = process.cwd();
6
20
  const configTargetPath = path.join(projectRoot, 'zeus.config.scss');
7
21
  const customizeTargetPath = path.join(projectRoot, 'zeus.customize.scss');
@@ -86,6 +100,18 @@ try {
86
100
  $zeus-button-variants: localCustomize.$zeus-button-variants
87
101
  `;
88
102
 
103
+ // Relative path from the project root to this package's own scss/ files.
104
+ // A bare "zeus-css/..." specifier only resolves via npm-aware tooling
105
+ // (bundler resolution, or `sass --load-path=node_modules`) — computing a
106
+ // real relative path instead also works for someone who just downloaded
107
+ // this folder (no npm, no node_modules) and compiles with plain `sass`,
108
+ // and is no worse for the normal npm case since __dirname already points
109
+ // at wherever npm/pnpm/yarn actually resolved this package on disk.
110
+ const packageRoot = path.join(__dirname, '..');
111
+ const toPosix = (p) => p.split(path.sep).join('/');
112
+ const zeusBridgeRelPath = toPosix(path.relative(projectRoot, path.join(packageRoot, 'scss', 'zeus.scss')));
113
+ const zeusFoundationRelPath = toPosix(path.relative(projectRoot, path.join(packageRoot, 'scss', 'foundation', 'foundation.scss')));
114
+
89
115
  // 2. Generate the Bridge file — configured tokens/mixins/functions for
90
116
  // .module.scss files. Emits zero CSS on its own (see zeus-css/scss/zeus.scss).
91
117
  const bridgeContent = `// ╔══════════════════════════════════════════════════════════════╗
@@ -102,10 +128,10 @@ try {
102
128
  @use "./zeus.config.scss" as localConfig;
103
129
  @use "./zeus.customize.scss" as localCustomize;
104
130
 
105
- @use "zeus-css/scss/zeus.scss" with (${configArgs});
131
+ @use "${zeusBridgeRelPath}" with (${configArgs});
106
132
 
107
133
  // Expose the configured framework so you can import it elsewhere
108
- @forward "zeus-css/scss/zeus.scss";
134
+ @forward "${zeusBridgeRelPath}";
109
135
  `;
110
136
 
111
137
  writeIfMissing(
@@ -126,14 +152,14 @@ try {
126
152
  // precompiled zeus-css/dist/zeus.css always ships with the framework
127
153
  // defaults and never sees your local edits.
128
154
  //
129
- // sass --load-path=node_modules zeus.theme.scss zeus.theme.css
155
+ // sass zeus.theme.scss zeus.theme.css
130
156
  //
131
157
  // Then link zeus.theme.css instead of zeus-css/dist/zeus.css.
132
158
 
133
159
  @use "./zeus.config.scss" as localConfig;
134
160
  @use "./zeus.customize.scss" as localCustomize;
135
161
 
136
- @use "zeus-css/scss/foundation/foundation.scss" with (${configArgs});
162
+ @use "${zeusFoundationRelPath}" with (${configArgs});
137
163
  `;
138
164
 
139
165
  writeIfMissing(
@@ -171,8 +197,9 @@ declare module '*.scss';
171
197
  console.log('1. For component .module.scss files, use the bridge (no CSS emitted):');
172
198
  console.log(' @use "./zeus.scss" as *;');
173
199
  console.log('2. For your actual themed stylesheet, compile zeus.theme.scss and link its output instead of zeus-css/dist/zeus.css:');
174
- console.log(' sass --load-path=node_modules zeus.theme.scss zeus.theme.css');
200
+ console.log(' sass zeus.theme.scss zeus.theme.css');
175
201
  console.log('3. Edit zeus.config.scss or zeus.customize.scss and recompile to update the framework globally.');
176
202
  } catch (e) {
177
203
  console.error('❌ Failed to extract Zeus config files', e);
204
+ process.exit(1);
178
205
  }
package/dist/zeus.css CHANGED
@@ -21,6 +21,8 @@
21
21
  *::before,
22
22
  *::after {
23
23
  box-sizing: border-box;
24
+ border-width: 0;
25
+ border-style: solid;
24
26
  }
25
27
  :where(h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd, pre) {
26
28
  margin: 0;
@@ -63,8 +65,8 @@
63
65
  color: inherit;
64
66
  text-decoration-skip-ink: auto;
65
67
  }
66
- :where([hidden]) {
67
- display: none !important;
68
+ :where([hidden]):not([hidden=until-found]) {
69
+ display: none;
68
70
  }
69
71
  :where(:focus-visible) {
70
72
  outline: 2px solid var(--color-primary);
@@ -278,47 +280,43 @@
278
280
  --shadow-card-hover: 0px 8px 24px 0px rgba(0, 0, 0, 0.12), 0px 2px 6px 0px rgba(0, 0, 0, 0.08);
279
281
  --shadow-dropdown: 0px 10px 40px 0px rgba(0, 0, 0, 0.15), 0px 2px 8px 0px rgba(132, 132, 132, 0.43);
280
282
  --shadow-modal: 0px 20px 60px 0px rgba(0, 0, 0, 0.3), 0px 4px 16px 0px rgba(0, 0, 0, 0.2);
281
- --text-display-xl: 800 clamp(3.5rem, round(2.9rem + 2.8cqi, 0.1rem), 6rem)/1.1 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
282
- --text-display-lg: 800 clamp(3rem, round(2.5rem + 2.2cqi, 0.1rem), 5rem)/1.1 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
283
- --text-display-md: 700 clamp(2.5rem, round(2.1rem + 1.7cqi, 0.1rem), 4rem)/1.15 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
284
- --text-h1: 700 clamp(2.25rem, round(2rem + 1.1cqi, 0.1rem), 3.25rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
285
- --text-h1-light: 300 clamp(2.25rem, round(2rem + 1.1cqi, 0.1rem), 3.25rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
286
- --text-h2: 600 clamp(1.88rem, round(1.7rem + 1cqi, 0.1rem), 2.75rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
287
- --text-h2-light: 300 clamp(1.88rem, round(1.7rem + 1cqi, 0.1rem), 2.75rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
288
- --text-h3: 600 clamp(1.63rem, round(1.4rem + 1cqi, 0.1rem), 2.5rem)/1.25 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
289
- --text-h3-light: 300 clamp(1.63rem, round(1.4rem + 1cqi, 0.1rem), 2.5rem)/1.25 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
290
- --text-h4: 600 clamp(1.5rem, round(1.4rem + 0.6cqi, 0.1rem), 2rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
291
- --text-h4-light: 300 clamp(1.5rem, round(1.4rem + 0.6cqi, 0.1rem), 2rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
292
- --text-h5: 500 clamp(1.25rem, round(1.2rem + 0.3cqi, 0.1rem), 1.5rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
293
- --text-h5-light: 300 clamp(1.25rem, round(1.2rem + 0.3cqi, 0.1rem), 1.5rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
294
- --text-h6: 500 clamp(1.13rem, round(1.1rem + 0.1cqi, 0.1rem), 1.25rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
295
- --text-h6-light: 300 clamp(1.13rem, round(1.1rem + 0.1cqi, 0.1rem), 1.25rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
296
- --text-body-xl: 400 clamp(1.25rem, round(1.2rem + 0.3cqi, 0.1rem), 1.5rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
297
- --text-body-lg: 400 clamp(1.13rem, round(1.1rem + 0.1cqi, 0.1rem), 1.25rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
298
- --text-body: 400 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
299
- --text-body-md: 400 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
300
- --text-body-bold: 700 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
301
- --text-body-md-bold: 700 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
302
- --text-body-semibold: 600 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
303
- --text-body-md-semibold: 600 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
304
- --text-body-medium: 500 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
305
- --text-body-md-medium: 500 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
306
- --text-body-sm: 400 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
307
- --text-body-sm-bold: 700 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
308
- --text-body-sm-semibold: 600 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
309
- --text-body-xs: 400 clamp(0.75rem, round(0.7rem + 0.1cqi, 0.1rem), 0.88rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
310
- --text-label: 500 clamp(0.75rem, round(0.7rem + 0.1cqi, 0.1rem), 0.88rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
311
- --text-label-bold: 700 clamp(0.75rem, round(0.7rem + 0.1cqi, 0.1rem), 0.88rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
312
- --text-caption: 400 clamp(0.69rem, round(0.7rem + 0.1cqi, 0.1rem), 0.75rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
313
- --text-caption-bold: 600 clamp(0.69rem, round(0.7rem + 0.1cqi, 0.1rem), 0.75rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
314
- --text-overline: 600 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
315
- --text-link: 500 clamp(0.94rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
316
- --text-link-bold: 700 clamp(0.94rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
317
- --text-button: 600 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
318
- --text-button-lg: 600 clamp(1rem, round(1rem + 0.1cqi, 0.1rem), 1.13rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
319
- --text-button-sm: 600 clamp(0.75rem, round(0.7rem + 0.1cqi, 0.1rem), 0.88rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
320
- --text-code: 400 clamp(0.88rem, round(0.9rem + 0.1cqi, 0.1rem), 1rem)/1.6 JetBrains Mono, Fira Code, Cascadia Code, Courier New, monospace;
321
- --text-code-sm: 400 clamp(0.75rem, round(0.7rem + 0.1cqi, 0.1rem), 0.88rem)/1.6 JetBrains Mono, Fira Code, Cascadia Code, Courier New, monospace;
283
+ --text-display-xl: 800 clamp(3.5rem, round(2.908rem + 2.761cqi, 0.01rem), 6rem)/1.1 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
284
+ --text-display-lg: 800 clamp(3rem, round(2.527rem + 2.208cqi, 0.01rem), 5rem)/1.1 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
285
+ --text-display-md: 700 clamp(2.5rem, round(2.145rem + 1.656cqi, 0.01rem), 4rem)/1.15 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
286
+ --text-h1: 700 clamp(2.25rem, round(2.013rem + 1.104cqi, 0.01rem), 3.25rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
287
+ --text-h1-light: 300 clamp(2.25rem, round(2.013rem + 1.104cqi, 0.01rem), 3.25rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
288
+ --text-h2: 600 clamp(1.88rem, round(1.674rem + 0.961cqi, 0.01rem), 2.75rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
289
+ --text-h2-light: 300 clamp(1.88rem, round(1.674rem + 0.961cqi, 0.01rem), 2.75rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
290
+ --text-h3: 600 clamp(1.63rem, round(1.424rem + 0.961cqi, 0.01rem), 2.5rem)/1.25 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
291
+ --text-h3-light: 300 clamp(1.63rem, round(1.424rem + 0.961cqi, 0.01rem), 2.5rem)/1.25 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
292
+ --text-h4: 600 clamp(1.5rem, round(1.382rem + 0.552cqi, 0.01rem), 2rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
293
+ --text-h4-light: 300 clamp(1.5rem, round(1.382rem + 0.552cqi, 0.01rem), 2rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
294
+ --text-h5: 500 clamp(1.25rem, round(1.191rem + 0.276cqi, 0.01rem), 1.5rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
295
+ --text-h5-light: 300 clamp(1.25rem, round(1.191rem + 0.276cqi, 0.01rem), 1.5rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
296
+ --text-h6: 500 clamp(1.13rem, round(1.101rem + 0.133cqi, 0.01rem), 1.25rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
297
+ --text-h6-light: 300 clamp(1.13rem, round(1.101rem + 0.133cqi, 0.01rem), 1.25rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
298
+ --text-body-xl: 400 clamp(1.25rem, round(1.191rem + 0.276cqi, 0.01rem), 1.5rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
299
+ --text-body-lg: 400 clamp(1.13rem, round(1.101rem + 0.133cqi, 0.01rem), 1.25rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
300
+ --text-body: 400 clamp(1rem, round(0.969rem + 0.144cqi, 0.01rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
301
+ --text-body-bold: 700 clamp(1rem, round(0.969rem + 0.144cqi, 0.01rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
302
+ --text-body-semibold: 600 clamp(1rem, round(0.969rem + 0.144cqi, 0.01rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
303
+ --text-body-medium: 500 clamp(1rem, round(0.969rem + 0.144cqi, 0.01rem), 1.13rem)/1.6 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
304
+ --text-body-sm: 400 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
305
+ --text-body-sm-bold: 700 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
306
+ --text-body-sm-semibold: 600 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
307
+ --text-body-xs: 400 clamp(0.75rem, round(0.719rem + 0.144cqi, 0.01rem), 0.88rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
308
+ --text-label: 500 clamp(0.75rem, round(0.719rem + 0.144cqi, 0.01rem), 0.88rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
309
+ --text-label-bold: 700 clamp(0.75rem, round(0.719rem + 0.144cqi, 0.01rem), 0.88rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
310
+ --text-caption: 400 clamp(0.69rem, round(0.676rem + 0.066cqi, 0.01rem), 0.75rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
311
+ --text-caption-bold: 600 clamp(0.69rem, round(0.676rem + 0.066cqi, 0.01rem), 0.75rem)/1.4 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
312
+ --text-overline: 600 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.3 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
313
+ --text-link: 500 clamp(0.94rem, round(0.926rem + 0.066cqi, 0.01rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
314
+ --text-link-bold: 700 clamp(0.94rem, round(0.926rem + 0.066cqi, 0.01rem), 1rem)/1.5 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
315
+ --text-button: 600 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
316
+ --text-button-lg: 600 clamp(1rem, round(0.969rem + 0.144cqi, 0.01rem), 1.13rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
317
+ --text-button-sm: 600 clamp(0.75rem, round(0.719rem + 0.144cqi, 0.01rem), 0.88rem)/1.2 Inter, -apple-system, BlinkMacSystemFont, Segoe UI, system-ui, sans-serif;
318
+ --text-code: 400 clamp(0.88rem, round(0.851rem + 0.133cqi, 0.01rem), 1rem)/1.6 JetBrains Mono, Fira Code, Cascadia Code, Courier New, monospace;
319
+ --text-code-sm: 400 clamp(0.75rem, round(0.719rem + 0.144cqi, 0.01rem), 0.88rem)/1.6 JetBrains Mono, Fira Code, Cascadia Code, Courier New, monospace;
322
320
  --z-base: 0;
323
321
  --z-dropdown: 100;
324
322
  --z-sticky: 200;
@@ -356,7 +354,7 @@
356
354
  font-size: 100%;
357
355
  -ms-overflow-style: scrollbar;
358
356
  }
359
- body, main, .container {
357
+ body, .container {
360
358
  container-type: inline-size;
361
359
  }
362
360
  .cq {
@@ -368,7 +366,6 @@
368
366
  body {
369
367
  color: var(--color-text);
370
368
  background-color: var(--color-background);
371
- overflow-wrap: anywhere;
372
369
  word-break: break-word;
373
370
  font: var(--text-body);
374
371
  text-wrap: pretty;
@@ -1157,34 +1154,18 @@
1157
1154
  font: var(--text-body);
1158
1155
  text-wrap: pretty;
1159
1156
  }
1160
- .text-body-md {
1161
- font: var(--text-body-md);
1162
- text-wrap: pretty;
1163
- }
1164
1157
  .text-body-bold {
1165
1158
  font: var(--text-body-bold);
1166
1159
  text-wrap: pretty;
1167
1160
  }
1168
- .text-body-md-bold {
1169
- font: var(--text-body-md-bold);
1170
- text-wrap: pretty;
1171
- }
1172
1161
  .text-body-semibold {
1173
1162
  font: var(--text-body-semibold);
1174
1163
  text-wrap: pretty;
1175
1164
  }
1176
- .text-body-md-semibold {
1177
- font: var(--text-body-md-semibold);
1178
- text-wrap: pretty;
1179
- }
1180
1165
  .text-body-medium {
1181
1166
  font: var(--text-body-medium);
1182
1167
  text-wrap: pretty;
1183
1168
  }
1184
- .text-body-md-medium {
1185
- font: var(--text-body-md-medium);
1186
- text-wrap: pretty;
1187
- }
1188
1169
  .text-body-sm {
1189
1170
  font: var(--text-body-sm);
1190
1171
  text-wrap: pretty;