@ponchia/ui 0.11.0 → 0.12.0

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 CHANGED
@@ -5,6 +5,53 @@
5
5
  |> `^0` / `*` wildcard does **not** protect you. See README → Versioning, and
6
6
  |> the deprecation policy in CONTRIBUTING.md.
7
7
 
8
+ ## 0.12.0 — 2026-10-01
9
+
10
+ ### Changed
11
+
12
+ - **BREAKING: a categorical palette with no accent slot.** `--chart-1..8` are
13
+ now eight fixed hues — blue, orange, aqua, yellow, magenta, green, violet,
14
+ red — authored as measured sRGB per theme. Series 1 is no longer
15
+ `var(--accent)`, so an ordinary first series stops reading as an alert, and
16
+ the `ACCENT` export of `@ponchia/ui/charts` is removed. The 0.11 set failed
17
+ the measurable palette checks on the package's own surfaces (Okabe-Ito
18
+ yellow and the slate outside the lightness band, the slate under the chroma
19
+ floor). The values come from a consumer that validated and shipped them as a
20
+ recorded divergence. `CATEGORICAL_HUES` names the slots.
21
+ - **BREAKING: `--chart-seq-*` is one blue hue in five steps.** `--chart-seq-6`
22
+ is removed. Step 1 sits nearest the surface in both themes.
23
+ - **BREAKING: the static Vega config is frameless.** `brontoVegaConfig()` sets
24
+ no plot frame, draws a single series in the first categorical hue, keeps a
25
+ `--panel` gap between adjacent fills and sets readable label sizes. It is now
26
+ generated from `@ponchia/ui/renderer`'s `vegaConfig()`, so the static and
27
+ runtime configs share one mapping. `brontoVegaAccent()` returns `--accent`
28
+ and `brontoVegaNeutral()` returns `--text-dim`.
29
+ - `check:charts` measures what a reader sees: per theme and against the panel,
30
+ the page and the OLED surfaces, each slot sits inside the OKLCH lightness
31
+ band and above the chroma floor, and adjacent slots stay apart under
32
+ simulated protanopia/deuteranopia (ΔE×100 ≥ 6) and normal vision (≥ 15).
33
+ All-pairs separation and sub-3:1 contrast are reported, not gated; the
34
+ pattern fill remains the second channel. ADR-0001 step 7 records the
35
+ amendment.
36
+
37
+ ### Added
38
+
39
+ - **Categorical identity tokens** in `css/dataviz.css`: `--cat-1..8` (the same
40
+ hues), `--cat-N-tint` (a 16% wash over `--panel`, so it follows skins and
41
+ OLED) and `--cat-N-ink` (text that holds 4.5:1 on the panel, the page and its
42
+ own tint, gated). For tags, participants and user-chosen tints — never
43
+ status. `charts.json` gains `hues`, `tint` and `ink`.
44
+ - **`@ponchia/ui/renderer`** — the live theme for renderers that cannot read
45
+ CSS. `readTokens()` resolves the bronto roles a renderer needs (surfaces,
46
+ inks, lines, accent, status, fonts, categorical set and ramps) to `#rrggbb`
47
+ or `rgba()` literals, following skins, contrast and the OLED surface.
48
+ `observeTokens()` calls back when one of them changed. `vegaConfig()` and
49
+ `xtermTheme()` map tokens to those renderers' configuration; `parseColor()`,
50
+ `formatColor()` and `resolveColor()` convert any CSS colour, including
51
+ `oklch()`, `lab()` and `color(display-p3 …)`.
52
+
53
+ See [the migration guide](docs/migrations/0.11-to-0.12.md).
54
+
8
55
  ## 0.11.0 — 2026-09-09
9
56
 
10
57
  ### Changed
package/MIGRATIONS.json CHANGED
@@ -224,6 +224,30 @@
224
224
  }
225
225
  ],
226
226
  "codemod": "No automatic rewrite: review complete consumer tasks and docs/migrations/0.10-to-0.11.md."
227
+ },
228
+ {
229
+ "from": "0.11",
230
+ "to": "0.12",
231
+ "summary": "Categorical palette with no accent slot, categorical identity tokens, runtime renderer tokens.",
232
+ "safe": [],
233
+ "manual": [
234
+ {
235
+ "old": "--chart-1 = var(--accent) / ACCENT from @ponchia/ui/charts",
236
+ "new": "fixed hues; paint an emphasised mark with var(--accent) or brontoVegaAccent(theme)",
237
+ "note": "ACCENT is removed. Charts that meant 'the brand' need an explicit accent encoding."
238
+ },
239
+ {
240
+ "old": "--chart-seq-6",
241
+ "new": "--chart-seq-1..5",
242
+ "note": "Re-map six-bin sequential figures to five bins."
243
+ },
244
+ {
245
+ "old": "brontoVegaConfig() framed plot, accent default mark",
246
+ "new": "frameless plot, first categorical hue as the default mark",
247
+ "note": "A spec's own config still wins; review dashboards that relied on the frame."
248
+ }
249
+ ],
250
+ "codemod": "No automatic rewrite: see docs/migrations/0.11-to-0.12.md."
227
251
  }
228
252
  ]
229
253
  }
package/README.md CHANGED
@@ -93,7 +93,7 @@ Or drop it in with no build step, straight from a CDN (replace the version only
93
93
  when deliberately upgrading across a breaking pre-1.0 minor):
94
94
 
95
95
  ```html
96
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@ponchia/ui@0.11.0/dist/bronto.css">
96
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@ponchia/ui@0.12.0/dist/bronto.css">
97
97
  ```
98
98
 
99
99
  ## Quick start
@@ -171,7 +171,7 @@ Arrows, chevrons, check/close/plus/minus, search/menu/gear, info/warning/bell/lo
171
171
  - **Motion & dots** — the dot-matrix motif kit: dot grid, status dots, dot loaders, the orbital spinner, matrix reveal — all reduced-motion aware.
172
172
  - **Glyphs** — `@ponchia/ui/glyphs`, a 71-glyph dot-matrix icon set on the `.ui-dotmatrix` primitive (display marks + crisp `solid` inline icons + one-node `.ui-icon` mask rendering).
173
173
  - **Colorways** _(opt-in)_ — `data-bronto-skin="amber-crt | phosphor-green | e-ink"`: a root-level recolour of the one accent (OKLCH, per-theme, contrast-gated), never in the default bundle.
174
- - **Data-viz** _(opt-in)_ — a colourblind-safe chart palette (`--chart-*` + dot-matrix pattern fills, resolved hex in `charts.json`), gated under simulated protan/deutan/tritan vision. Charts only, never UI chrome.
174
+ - **Categorical + data-viz** _(opt-in)_ — eight fixed hues as chart series (`--chart-*`, sequential/diverging ramps, dot-matrix pattern fills) and as categorical identity (`--cat-*` with tint and text ink), measured per theme and surface. Never UI chrome. `@ponchia/ui/renderer` resolves them, with the chrome, for canvas/WebGL/SVG renderers.
175
175
 
176
176
  Full generated catalog of every class: **[docs/reference.md](https://github.com/Ponchia/bronto-ui/blob/main/docs/reference.md)**. The decision guide (which primitive when): **[docs/usage.md](https://github.com/Ponchia/bronto-ui/blob/main/docs/usage.md)**.
177
177
 
@@ -221,7 +221,7 @@ Per-framework getting-started guides + runnable example apps live in the repo:
221
221
 
222
222
  - **Tokens as data** — `import tokens, { themeColor, cssVars } from '@ponchia/ui/tokens'` (plus authored `tokens.json`, a structured DTCG 2025.10 `tokens.dtcg.json`, `tokens/resolved.json` for concrete values in canvas/SVG/MapLibre, and `tokens/figma.variables.json` for local Figma Variables import/sync scripts).
223
223
  - **Consumer contract checker** — after an upgrade, run `npx --no-install bronto-ui-check src` to catch unknown literal `ui-*` classes and unresolved Bronto token references in code, style, and template sources before build or deployment. Comments, generated/vendor directories, and Markdown prose are excluded.
224
- - **Chart colours for dashboards** — `import charts from '@ponchia/ui/charts.json' with { type: 'json' }` in Node ESM, or the same path through a bundler JSON import (resolved hex per theme; series 1 = your accent) plus the opt-in `@ponchia/ui/css/dataviz.css`.
224
+ - **Chart colours for dashboards** — `import charts from '@ponchia/ui/charts.json' with { type: 'json' }` in Node ESM, or the same path through a bundler JSON import (resolved hex per theme, eight fixed hues) plus the opt-in `@ponchia/ui/css/dataviz.css`; for a live page that switches skin or theme, `@ponchia/ui/renderer` resolves the same palette and chrome at runtime.
225
225
  - **Static reports for LLMs** — add `@ponchia/ui/css/report-kit.css` for the complete report vocabulary, or `@ponchia/ui/css/report.css` plus the specific leaves a smaller report needs. Sidecar claim/source contracts can validate against `@ponchia/ui/schemas/report-claims.v1.schema.json`. Full cookbook: `docs/reporting.md`.
226
226
  - **Modern-platform motion** — overlays (modal/drawer/popover), toasts and the `<details>` accordion animate **in and out** with zero JS (`@starting-style` + `allow-discrete`, `::details-content` + `interpolate-size`). Progressive-enhancement extras: `.ui-scroll-progress` / `.ui-scroll-reveal` (scroll-driven, no JS) and `.ui-vt` for View Transitions. All degrade to a static end-state and respect `prefers-reduced-motion`. For smooth **cross-document** navigations, add the document-global one-liner to your own top-level (unlayered) CSS: `@view-transition { navigation: auto; }`.
227
227
  - **Editor IntelliSense** — point VS Code at the shipped custom-data file so every token autocompletes in `var(--…)`:
@@ -37,7 +37,7 @@ export type FormValidationOpts = {
37
37
  /**
38
38
  * Event-delegation root; default: `document`.
39
39
  */
40
- root?: Document | Element | null | undefined;
40
+ root?: Element | Document | null | undefined;
41
41
  /**
42
42
  * Localized validation-summary title. A summary/form
43
43
  * `data-bronto-error-summary-title` attribute overrides it, and an authored
@@ -21,6 +21,6 @@ export type DelegateOpts = {
21
21
  * Event-delegation root; also scopes which controls are queried. Default: `document`.
22
22
  * `null` means a scope was requested but is not ready yet, so the behavior no-ops.
23
23
  */
24
- root?: Document | Element | null | undefined;
24
+ root?: Element | Document | null | undefined;
25
25
  };
26
26
  //# sourceMappingURL=internal.d.ts.map
package/css/dataviz.css CHANGED
@@ -1,27 +1,39 @@
1
1
  /* @ponchia/ui — GENERATED from tokens/charts.js by scripts/gen-charts.mjs.
2
2
  * Do not edit by hand; run `npm run charts:build`. Drift-checked in CI.
3
3
  *
4
- * Tier-4 data-viz palette (ADR-0001). OPT-IN: import `@ponchia/ui/css/dataviz.css`
5
- * on demand; never in the default bundle, never UI chrome. --chart-1 is the live
6
- * accent (series 1 = brand). Pair colour N with pattern N (a 2nd, non-colour
7
- * channel): background: var(--chart-3); background-image: var(--chart-pattern-3);
4
+ * Tier-4 categorical + data-viz palette (ADR-0001). OPT-IN: import
5
+ * `@ponchia/ui/css/dataviz.css` on demand; never in the default bundle, never
6
+ * UI chrome. Eight fixed hues (blue, orange, aqua, yellow, magenta, green,
7
+ * violet, red) in two namespaces:
8
+ * --cat-N / --cat-N-tint / --cat-N-ink categorical identity (a tag, a
9
+ * participant, a user-chosen tint): ink holds 4.5:1 on the panel and tint.
10
+ * --chart-N, --chart-seq-*, --chart-div-* data-viz series and ramps.
11
+ * Pair colour N with pattern N (a 2nd, non-colour channel):
12
+ * background: var(--chart-3); background-image: var(--chart-pattern-3);
8
13
  * background-size: var(--chart-pattern-size); --chart-pattern-ink: <contrast>. */
9
14
 
10
15
  :root {
11
- --chart-1: var(--accent);
12
- --chart-2: #e69f00;
13
- --chart-3: #56b4e9;
14
- --chart-4: #009e73;
15
- --chart-5: #f0e442;
16
- --chart-6: #0072b2;
17
- --chart-7: #cc79a7;
18
- --chart-8: #4d5358;
19
- --chart-seq-1: oklch(94% 0.03 25deg);
20
- --chart-seq-2: oklch(85% 0.07 25deg);
21
- --chart-seq-3: oklch(74% 0.12 25deg);
22
- --chart-seq-4: oklch(62% 0.16 25deg);
23
- --chart-seq-5: oklch(50% 0.16 25deg);
24
- --chart-seq-6: oklch(38% 0.13 25deg);
16
+ --cat-1: #2a78d6;
17
+ --cat-2: #eb6834;
18
+ --cat-3: #1baf7a;
19
+ --cat-4: #eda100;
20
+ --cat-5: #e87ba4;
21
+ --cat-6: #008300;
22
+ --cat-7: #4a3aa7;
23
+ --cat-8: #e34948;
24
+ --cat-1-ink: #1467c3;
25
+ --cat-2-ink: #bf3f00;
26
+ --cat-3-ink: #007d4c;
27
+ --cat-4-ink: #a45d00;
28
+ --cat-5-ink: #b04972;
29
+ --cat-6-ink: #007800;
30
+ --cat-7-ink: #4a3aa7;
31
+ --cat-8-ink: #c62b30;
32
+ --chart-seq-1: #80b0e8;
33
+ --chart-seq-2: #5598e7;
34
+ --chart-seq-3: #2a78d6;
35
+ --chart-seq-4: #1c5cab;
36
+ --chart-seq-5: #104281;
25
37
  --chart-div-1: oklch(45% 0.14 255deg);
26
38
  --chart-div-2: oklch(62% 0.1 250deg);
27
39
  --chart-div-3: oklch(82% 0.05 245deg);
@@ -30,11 +42,31 @@
30
42
  --chart-div-6: oklch(66% 0.13 55deg);
31
43
  --chart-div-7: oklch(56% 0.15 45deg);
32
44
 
45
+ /* Theme-independent: each series and tint follows its slot, and the tint
46
+ follows whichever --panel the page, a skin or the OLED preset set. */
47
+ --cat-1-tint: color-mix(in oklch, var(--cat-1) 16%, var(--panel));
48
+ --cat-2-tint: color-mix(in oklch, var(--cat-2) 16%, var(--panel));
49
+ --cat-3-tint: color-mix(in oklch, var(--cat-3) 16%, var(--panel));
50
+ --cat-4-tint: color-mix(in oklch, var(--cat-4) 16%, var(--panel));
51
+ --cat-5-tint: color-mix(in oklch, var(--cat-5) 16%, var(--panel));
52
+ --cat-6-tint: color-mix(in oklch, var(--cat-6) 16%, var(--panel));
53
+ --cat-7-tint: color-mix(in oklch, var(--cat-7) 16%, var(--panel));
54
+ --cat-8-tint: color-mix(in oklch, var(--cat-8) 16%, var(--panel));
55
+ --chart-1: var(--cat-1);
56
+ --chart-2: var(--cat-2);
57
+ --chart-3: var(--cat-3);
58
+ --chart-4: var(--cat-4);
59
+ --chart-5: var(--cat-5);
60
+ --chart-6: var(--cat-6);
61
+ --chart-7: var(--cat-7);
62
+ --chart-8: var(--cat-8);
63
+
33
64
  /* Dot-matrix pattern fills — pair with the matching colour (WCAG 1.4.1).
34
- Series 1 (the accent) is intentionally `none`: absence-of-pattern IS its
35
- redundant channel. The colour palette is CVD-safe on its own (gated by
36
- check:charts), so a colour+pattern chart stays distinguishable; a
37
- pattern-ONLY chart must still give series 1 a fill or a labelled legend. */
65
+ Series 1 is intentionally `none`: absence-of-pattern IS its redundant
66
+ channel. Adjacent series are separated under simulated colour-vision
67
+ deficiency (gated by check:charts), so a colour+pattern chart stays
68
+ distinguishable; a pattern-ONLY chart must still give series 1 a fill or
69
+ a labelled legend. */
38
70
  --chart-pattern-size: 8px;
39
71
  --chart-pattern-ink: rgb(0 0 0 / 0.34);
40
72
  --chart-pattern-1: none;
@@ -49,20 +81,27 @@
49
81
 
50
82
  @media (prefers-color-scheme: dark) {
51
83
  :root:not([data-theme='light']) {
52
- --chart-1: var(--accent);
53
- --chart-2: #e69f00;
54
- --chart-3: #56b4e9;
55
- --chart-4: #009e73;
56
- --chart-5: #f0e442;
57
- --chart-6: #0072b2;
58
- --chart-7: #cc79a7;
59
- --chart-8: #4d5358;
60
- --chart-seq-1: oklch(30% 0.1 25deg);
61
- --chart-seq-2: oklch(42% 0.15 25deg);
62
- --chart-seq-3: oklch(55% 0.17 25deg);
63
- --chart-seq-4: oklch(68% 0.15 25deg);
64
- --chart-seq-5: oklch(80% 0.1 25deg);
65
- --chart-seq-6: oklch(90% 0.05 25deg);
84
+ --cat-1: #3987e5;
85
+ --cat-2: #d95926;
86
+ --cat-3: #199e70;
87
+ --cat-4: #c98500;
88
+ --cat-5: #d55181;
89
+ --cat-6: #008300;
90
+ --cat-7: #9085e9;
91
+ --cat-8: #e66767;
92
+ --cat-1-ink: #4694f3;
93
+ --cat-2-ink: #e86f42;
94
+ --cat-3-ink: #27a677;
95
+ --cat-4-ink: #cb8705;
96
+ --cat-5-ink: #e46792;
97
+ --cat-6-ink: #38a433;
98
+ --cat-7-ink: #9187eb;
99
+ --cat-8-ink: #eb6c6c;
100
+ --chart-seq-1: #1b5298;
101
+ --chart-seq-2: #256abf;
102
+ --chart-seq-3: #3987e5;
103
+ --chart-seq-4: #6da7ec;
104
+ --chart-seq-5: #9ec5f4;
66
105
  --chart-div-1: oklch(70% 0.13 250deg);
67
106
  --chart-div-2: oklch(60% 0.12 252deg);
68
107
  --chart-div-3: oklch(48% 0.08 255deg);
@@ -75,20 +114,27 @@
75
114
  }
76
115
 
77
116
  :root[data-theme='dark'] {
78
- --chart-1: var(--accent);
79
- --chart-2: #e69f00;
80
- --chart-3: #56b4e9;
81
- --chart-4: #009e73;
82
- --chart-5: #f0e442;
83
- --chart-6: #0072b2;
84
- --chart-7: #cc79a7;
85
- --chart-8: #4d5358;
86
- --chart-seq-1: oklch(30% 0.1 25deg);
87
- --chart-seq-2: oklch(42% 0.15 25deg);
88
- --chart-seq-3: oklch(55% 0.17 25deg);
89
- --chart-seq-4: oklch(68% 0.15 25deg);
90
- --chart-seq-5: oklch(80% 0.1 25deg);
91
- --chart-seq-6: oklch(90% 0.05 25deg);
117
+ --cat-1: #3987e5;
118
+ --cat-2: #d95926;
119
+ --cat-3: #199e70;
120
+ --cat-4: #c98500;
121
+ --cat-5: #d55181;
122
+ --cat-6: #008300;
123
+ --cat-7: #9085e9;
124
+ --cat-8: #e66767;
125
+ --cat-1-ink: #4694f3;
126
+ --cat-2-ink: #e86f42;
127
+ --cat-3-ink: #27a677;
128
+ --cat-4-ink: #cb8705;
129
+ --cat-5-ink: #e46792;
130
+ --cat-6-ink: #38a433;
131
+ --cat-7-ink: #9187eb;
132
+ --cat-8-ink: #eb6c6c;
133
+ --chart-seq-1: #1b5298;
134
+ --chart-seq-2: #256abf;
135
+ --chart-seq-3: #3987e5;
136
+ --chart-seq-4: #6da7ec;
137
+ --chart-seq-5: #9ec5f4;
92
138
  --chart-div-1: oklch(70% 0.13 250deg);
93
139
  --chart-div-2: oklch(60% 0.12 252deg);
94
140
  --chart-div-3: oklch(48% 0.08 255deg);
@@ -101,20 +147,27 @@
101
147
 
102
148
  @media print {
103
149
  :root:not([data-theme='light']) {
104
- --chart-1: var(--accent);
105
- --chart-2: #e69f00;
106
- --chart-3: #56b4e9;
107
- --chart-4: #009e73;
108
- --chart-5: #f0e442;
109
- --chart-6: #0072b2;
110
- --chart-7: #cc79a7;
111
- --chart-8: #4d5358;
112
- --chart-seq-1: oklch(94% 0.03 25deg);
113
- --chart-seq-2: oklch(85% 0.07 25deg);
114
- --chart-seq-3: oklch(74% 0.12 25deg);
115
- --chart-seq-4: oklch(62% 0.16 25deg);
116
- --chart-seq-5: oklch(50% 0.16 25deg);
117
- --chart-seq-6: oklch(38% 0.13 25deg);
150
+ --cat-1: #2a78d6;
151
+ --cat-2: #eb6834;
152
+ --cat-3: #1baf7a;
153
+ --cat-4: #eda100;
154
+ --cat-5: #e87ba4;
155
+ --cat-6: #008300;
156
+ --cat-7: #4a3aa7;
157
+ --cat-8: #e34948;
158
+ --cat-1-ink: #1467c3;
159
+ --cat-2-ink: #bf3f00;
160
+ --cat-3-ink: #007d4c;
161
+ --cat-4-ink: #a45d00;
162
+ --cat-5-ink: #b04972;
163
+ --cat-6-ink: #007800;
164
+ --cat-7-ink: #4a3aa7;
165
+ --cat-8-ink: #c62b30;
166
+ --chart-seq-1: #80b0e8;
167
+ --chart-seq-2: #5598e7;
168
+ --chart-seq-3: #2a78d6;
169
+ --chart-seq-4: #1c5cab;
170
+ --chart-seq-5: #104281;
118
171
  --chart-div-1: oklch(45% 0.14 255deg);
119
172
  --chart-div-2: oklch(62% 0.1 250deg);
120
173
  --chart-div-3: oklch(82% 0.05 245deg);
package/css/legend.css CHANGED
@@ -158,8 +158,7 @@
158
158
  var(--chart-seq-2),
159
159
  var(--chart-seq-3),
160
160
  var(--chart-seq-4),
161
- var(--chart-seq-5),
162
- var(--chart-seq-6)
161
+ var(--chart-seq-5)
163
162
  );
164
163
  block-size: 0.7rem;
165
164
  border: 1px solid var(--line);
@@ -1 +1 @@
1
- @layer bronto{.ui-annotation{--annotation-color: var(--accent);--annotation-line: var(--line-strong);--annotation-note-bg: var(--panel);--annotation-subject-fill: color-mix(in srgb,var(--annotation-color) 8%,transparent);--annotation-stroke-width: 1.5;color: var(--annotation-color);font-family: var(--sans);font-size: var(--text-xs);overflow: visible}.ui-annotation--muted{--annotation-color: var(--text-dim);--annotation-line: var(--line)}.ui-annotation--accent{--annotation-color: var(--accent);--annotation-line: var(--line-strong)}.ui-annotation--success{--annotation-color: var(--success)}.ui-annotation--warning{--annotation-color: var(--warning)}.ui-annotation--danger{--annotation-color: var(--danger)}.ui-annotation--info{--annotation-color: var(--info)}.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__connector-end,.ui-annotation__note-line,.ui-annotation__badge{vector-effect: non-scaling-stroke}.ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-linejoin: miter;stroke-width: var(--annotation-stroke-width)}.ui-annotation__connector,.ui-annotation__note-line{fill: none;stroke: var(--annotation-line);stroke-linecap: square;stroke-linejoin: miter;stroke-opacity: 0.86;stroke-width: var(--annotation-stroke-width)}.ui-annotation__connector-end{fill: var(--annotation-line);stroke: none}.ui-annotation__note{color: var(--text-soft);fill: currentColor}.ui-annotation__note > rect{fill: var(--annotation-note-bg);stroke: var(--line);stroke-width: 1;vector-effect: non-scaling-stroke}.ui-annotation__title{fill: var(--text);font-size: var(--text-xs);font-weight: 700;letter-spacing: 0;paint-order: stroke fill;stroke: var(--annotation-note-bg);stroke-linejoin: round;stroke-width: 3;text-transform: none}.ui-annotation__label{fill: var(--text-soft);font-size: var(--text-xs);letter-spacing: 0;paint-order: stroke fill;stroke: var(--annotation-note-bg);stroke-linejoin: round;stroke-width: 3}.ui-annotation__badge{fill: var(--annotation-note-bg);stroke: var(--annotation-color);stroke-width: var(--annotation-stroke-width)}.ui-annotation--label .ui-annotation__subject,.ui-annotation--badge .ui-annotation__connector,.ui-annotation--badge .ui-annotation__note-line{display: none}.ui-annotation--callout .ui-annotation__note-line,.ui-annotation--elbow .ui-annotation__note-line,.ui-annotation--curve .ui-annotation__note-line{stroke: var(--annotation-color)}.ui-annotation--elbow .ui-annotation__connector{stroke-linejoin: bevel}.ui-annotation--curve .ui-annotation__connector{stroke-linecap: round}.ui-annotation--circle .ui-annotation__subject{stroke-dasharray: 0.01 4;stroke-linecap: round}.ui-annotation--rect .ui-annotation__subject{stroke-dasharray: 5 3}.ui-annotation--threshold .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-dasharray: 6 4}.ui-annotation--badge .ui-annotation__subject{fill: var(--annotation-color)}.ui-annotation--badge .ui-annotation__badge{fill: var(--annotation-color)}.ui-annotation--badge .ui-annotation__title,.ui-annotation--badge .ui-annotation__label{fill: var(--button-text);stroke: none}.ui-annotation--bracket .ui-annotation__subject,.ui-annotation--compare .ui-annotation__subject,.ui-annotation--axis .ui-annotation__subject,.ui-annotation--timeline .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-linecap: square}.ui-annotation--band .ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-dasharray: 5 3}.ui-annotation--slope .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-linecap: round}.ui-annotation--cluster .ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-dasharray: 0.01 5;stroke-linecap: round}.ui-annotation--evidence .ui-annotation__badge{fill: var(--annotation-note-bg);stroke: var(--annotation-color)}.ui-annotation--evidence .ui-annotation__title{fill: var(--annotation-color);stroke: none}.ui-annotation--focus{--annotation-stroke-width: 2;--annotation-subject-fill: color-mix(in srgb,var(--annotation-color) 14%,transparent)}@media (prefers-reduced-motion: no-preference){.ui-annotation--draw .ui-annotation__connector,.ui-annotation--draw .ui-annotation__note-line{animation: uiAnnotationDraw var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms);stroke-dasharray: var(--annotation-dash,360);stroke-dashoffset: var(--annotation-dash,360)}.ui-annotation--draw .ui-annotation__subject,.ui-annotation--draw .ui-annotation__badge{animation: uiAnnotationSubjectReveal var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms)}.ui-annotation--reveal .ui-annotation__note{animation: uiAnnotationReveal var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms)}.ui-annotation--pulse .ui-annotation__subject,.ui-annotation--pulse .ui-annotation__badge{animation: uiAnnotationPulse 1.6s var(--ease-out,ease-out) infinite;animation-delay: var(--annotation-delay,0ms);transform-box: fill-box;transform-origin: center}}@keyframes uiAnnotationDraw{to{stroke-dashoffset: 0}}@keyframes uiAnnotationSubjectReveal{from{opacity: 0}to{opacity: 1}}@keyframes uiAnnotationReveal{from{opacity: 0}to{opacity: 1}}@keyframes uiAnnotationPulse{50%{opacity: 0.62;transform: scale(1.06)}}@media print{.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__note,.ui-annotation__note-line,.ui-annotation__badge{animation: none !important;opacity: 1;stroke-dashoffset: 0}.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__note-line,.ui-annotation__badge{transform: none}.ui-annotation--draw .ui-annotation__connector,.ui-annotation--draw .ui-annotation__note-line{stroke-dasharray: none;stroke-dashoffset: 0}}@media (forced-colors: active){.ui-annotation{--annotation-color: CanvasText;--annotation-line: CanvasText;--annotation-note-bg: Canvas;--annotation-subject-fill: Canvas}}.ui-figure{container: bronto-figure / inline-size;display: grid;gap: var(--space-sm);margin: 0;min-inline-size: 0}.ui-figure > *,.ui-figure__body > *,.ui-figure__stage > *{min-inline-size: 0}.ui-figure__caption{color: var(--text-dim);font-family: var(--sans);font-size: var(--text-sm);letter-spacing: 0;line-height: 1.5;text-transform: none}.ui-figure__body{align-items: start;display: grid;gap: var(--space-sm)}.ui-figure__body--key-right{grid-template-columns: minmax(0,1fr) minmax(min(100%,10rem),var(--figure-key-width,14rem))}.ui-figure__stage{--figure-max-inline: 42rem;--figure-min-block: 0px;display: grid;inline-size: min(100%,var(--figure-max-inline));margin-inline: auto;min-block-size: var(--figure-min-block);place-items: center;position: relative}.ui-figure__media{display: block;inline-size: 100%;max-inline-size: 100%}.ui-figure__stage > :is(canvas,img,picture,svg):not(.ui-figure__overlay){display: block;max-inline-size: 100%}.ui-figure__overlay{block-size: 100%;inline-size: 100%;inset: 0;overflow: visible;pointer-events: none;position: absolute}.ui-figure__key,.ui-figure__data{display: grid;gap: var(--space-xs)}.ui-figure__data{margin-block-start: var(--space-xs)}@container bronto-figure (max-width: 44rem){.ui-figure__body--key-right{grid-template-columns: 1fr}}@media print{.ui-figure{container-type: normal;break-inside: avoid}.ui-figure__body{display: block}.ui-figure__body > * + *{margin-block-start: var(--space-sm)}}.ui-legend{color: var(--text-soft);display: flex;flex-wrap: wrap;font-family: var(--sans);font-size: var(--text-xs);gap: var(--space-2xs) var(--space-md);list-style: none;margin: 0;padding: 0}.ui-legend--vertical{flex-direction: column}.ui-legend--compact{font-size: var(--text-2xs);gap: var(--space-2xs) var(--space-sm)}.ui-legend__title{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;margin: 0;text-transform: none}.ui-legend__item{min-inline-size: 0;max-inline-size: 100%;align-items: center;color: inherit;display: inline-flex;gap: 0.45rem}.ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;color: inherit}.ui-legend__value{color: var(--text-dim);font-variant-numeric: tabular-nums;margin-inline-start: auto}.ui-legend__caption{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;text-transform: none}.ui-legend__swatch{background: var(--chart-color,var(--chart-1,var(--accent)));background-image: var(--chart-pattern,none);background-size: var(--chart-pattern-size,8px);block-size: 0.8rem;border: 1px solid var(--line-strong);flex: 0 0 auto;inline-size: 0.8rem}.ui-legend__swatch--circle{border-radius: 50%}.ui-legend__swatch--line{block-size: 0.2rem;border: 0;inline-size: 1.1rem}.ui-legend__symbol{block-size: 0.95rem;color: var(--chart-color,var(--chart-1,var(--accent)));flex: 0 0 auto;inline-size: 0.95rem}.ui-legend__swatch--1{--chart-color: var(--chart-1,var(--accent))}.ui-legend__swatch--2{--chart-color: var(--chart-2,var(--accent))}.ui-legend__swatch--3{--chart-color: var(--chart-3,var(--accent))}.ui-legend__swatch--4{--chart-color: var(--chart-4,var(--accent))}.ui-legend__swatch--5{--chart-color: var(--chart-5,var(--accent))}.ui-legend__swatch--6{--chart-color: var(--chart-6,var(--accent))}.ui-legend__swatch--7{--chart-color: var(--chart-7,var(--accent))}.ui-legend__swatch--8{--chart-color: var(--chart-8,var(--accent))}.ui-legend--gradient{display: grid;gap: var(--space-2xs)}.ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-seq-1),var(--chart-seq-2),var(--chart-seq-3),var(--chart-seq-4),var(--chart-seq-5),var(--chart-seq-6) );block-size: 0.7rem;border: 1px solid var(--line)}.ui-legend--diverging .ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-div-1),var(--chart-div-2),var(--chart-div-3),var(--chart-div-4),var(--chart-div-5),var(--chart-div-6),var(--chart-div-7) )}.ui-legend__ticks{color: var(--text-dim);display: flex;font-size: var(--text-2xs);justify-content: space-between}.ui-legend__tick{font-variant-numeric: tabular-nums}.ui-legend--threshold{align-items: center;display: grid;gap: 0.35rem var(--space-sm);grid-template-columns: auto 1fr}.ui-legend--with-values{display: grid;gap: 0.35rem var(--space-md);grid-template-columns: auto 1fr auto}.ui-legend--with-values .ui-legend__item{min-inline-size: 0;max-inline-size: 100%;display: grid;grid-column: 1 / -1;grid-template-columns: subgrid}.ui-legend--with-values .ui-legend__value{margin-inline-start: 0;text-align: end}.ui-legend--interactive .ui-legend__item:is(button,[role='button']){background: none;border: 0;border-radius: var(--radius-sm);color: inherit;cursor: pointer;font: inherit;padding-block: 0.15rem;padding-inline: 0.3rem;text-align: start}.ui-legend--interactive .ui-legend__item:is(button,[role='button']):focus-visible{outline: 2px solid var(--accent);outline-offset: 2px}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 0.45}.ui-legend__item.is-inactive .ui-legend__label,.ui-legend__item[aria-pressed='false'] .ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;text-decoration: line-through}@media (forced-colors: active){.ui-legend__swatch{border: 1px solid CanvasText;forced-color-adjust: none}.ui-legend__track{forced-color-adjust: none}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 1}}@media print{.ui-legend__swatch,.ui-legend__track{-webkit-print-color-adjust: exact;print-color-adjust: exact}}.ui-mark{background-color: transparent;background-image: linear-gradient( 90deg,color-mix(in srgb,var(--mark-color,var(--line-strong)) 30%,transparent),color-mix(in srgb,var(--mark-color,var(--line-strong)) 30%,transparent) );background-repeat: no-repeat;background-size: 100% 100%;border-radius: 0.12em;-webkit-box-decoration-break: clone;box-decoration-break: clone;color: inherit;padding-block: 0.05em;padding-inline: 0.18em}.ui-mark--accent{--mark-color: var(--accent)}.ui-mark--success{--mark-color: var(--success)}.ui-mark--warning{--mark-color: var(--warning)}.ui-mark--danger{--mark-color: var(--danger)}.ui-mark--info{--mark-color: var(--info)}.ui-mark--muted{--mark-color: var(--text-dim)}.ui-mark--underline{background: none;padding: 0;text-decoration-color: var(--mark-color,var(--text-dim));text-decoration-line: underline;text-decoration-thickness: 0.12em;text-underline-offset: 0.18em}.ui-mark--box{background: none;border: 1px solid var(--mark-color,var(--line-strong));border-radius: var(--radius-sm)}.ui-mark--strike{background: none;padding: 0;text-decoration-color: var(--mark-color,var(--text-dim));text-decoration-line: line-through}@media (prefers-reduced-motion: no-preference){.ui-mark--draw:not(.ui-mark--underline,.ui-mark--box,.ui-mark--strike){animation: ui-mark-draw 0.6s var(--ease,ease) both}}@keyframes ui-mark-draw{from{background-size: 0% 100%}to{background-size: 100% 100%}}.ui-bracket-note{--mark-color: var(--line-strong);border-inline-start: 2px solid var(--mark-color);display: block;padding-inline-start: var(--space-md)}.ui-bracket-note__label{color: var(--mark-color);display: block;font-family: var(--mono);font-size: var(--text-2xs);letter-spacing: 0;margin-block-end: var(--space-2xs);text-transform: uppercase}.ui-bracket-note--accent{--mark-color: var(--accent)}.ui-bracket-note--success{--mark-color: var(--success)}.ui-bracket-note--warning{--mark-color: var(--warning)}.ui-bracket-note--danger{--mark-color: var(--danger)}.ui-bracket-note--info{--mark-color: var(--info)}@media (forced-colors: active){.ui-mark:not(.ui-mark--underline,.ui-mark--box,.ui-mark--strike){text-decoration-line: underline}}@media print{.ui-mark{-webkit-print-color-adjust: exact;background-size: 100% 100%;print-color-adjust: exact}.ui-mark--draw{animation: none}}.ui-connector{--connector-color: var(--line-strong);color: var(--connector-color);inset: 0;overflow: visible;pointer-events: none;position: absolute}.ui-connector__path{fill: none;stroke: var(--connector-color);stroke-linecap: round;stroke-linejoin: round;stroke-width: var(--connector-width,1.5);vector-effect: non-scaling-stroke}.ui-connector__end{fill: var(--connector-color);stroke: none}.ui-connector--dashed .ui-connector__path{stroke-dasharray: 4 3}.ui-connector--accent{--connector-color: var(--accent)}.ui-connector--muted{--connector-color: var(--line)}.ui-connector--success{--connector-color: var(--success)}.ui-connector--warning{--connector-color: var(--warning)}.ui-connector--danger{--connector-color: var(--danger)}.ui-connector--info{--connector-color: var(--info)}@media (prefers-reduced-motion: no-preference){.ui-connector--draw .ui-connector__path{animation: ui-connector-draw 0.6s ease both;stroke-dasharray: 1}}@keyframes ui-connector-draw{from{stroke-dashoffset: 1}to{stroke-dashoffset: 0}}@media (forced-colors: active){.ui-connector__path{stroke: CanvasText}.ui-connector__end{fill: CanvasText}}@media print{.ui-connector__path,.ui-connector__end{-webkit-print-color-adjust: exact;print-color-adjust: exact}.ui-connector--draw .ui-connector__path{animation: none;stroke-dasharray: none;stroke-dashoffset: 0}}.ui-spotlight{--spot-x: 50%;--spot-y: 50%;--spot-w: 0px;--spot-h: 0px;--spot-pad: 8px;--spot-radius: var(--radius-md);--spot-backdrop: color-mix(in srgb,#000 55%,transparent);inset: 0;pointer-events: none;position: fixed;z-index: var(--z-overlay,1000)}.ui-spotlight__hole{background: transparent;block-size: calc(var(--spot-h) + var(--spot-pad) * 2);border-radius: var(--spot-radius);box-shadow: 0 0 0 100vmax var(--spot-backdrop);inline-size: calc(var(--spot-w) + var(--spot-pad) * 2);inset-block-start: 0;inset-inline-start: 0;position: absolute;transform: translate( calc(var(--spot-x) - var(--spot-pad)),calc(var(--spot-y) - var(--spot-pad)) );transition: transform 0.2s ease,inline-size 0.2s ease,block-size 0.2s ease}@media (prefers-reduced-motion: reduce){.ui-spotlight__hole{transition: none}}@media (prefers-reduced-transparency: reduce){.ui-spotlight{--spot-backdrop: var(--surface-1)}}.ui-spotlight--ring .ui-spotlight__hole{outline: 2px solid var(--accent);outline-offset: 0}.ui-tour-note{background: var(--panel);border: 1px solid var(--line);border-radius: var(--radius-md);box-shadow: var(--shadow-raised);color: var(--text);display: grid;gap: var(--space-sm);max-inline-size: min(22rem,calc(100vw - 2rem));padding: var(--space-md);pointer-events: auto}.ui-tour-note__step{color: var(--text-dim);font-family: var(--mono);font-size: var(--text-2xs);letter-spacing: 0;text-transform: uppercase}.ui-tour-note__title{color: var(--text);font-size: var(--text-lg);font-weight: 600;margin: 0}.ui-tour-note__body{color: var(--text-soft);margin: 0}.ui-tour-note__actions{display: flex;gap: var(--space-sm);justify-content: flex-end}@media (forced-colors: active){.ui-spotlight__hole{outline: 2px solid CanvasText}}.ui-crosshair{--crosshair-x: 0;--crosshair-y: 0;--crosshair-color: var(--accent);--crosshair-readout-gap: 0.35rem;--crosshair-readout-x: var(--crosshair-readout-gap);--crosshair-readout-y: var(--crosshair-readout-gap);inset: 0;opacity: 0;pointer-events: none;position: absolute;transition: opacity 0.12s ease}.ui-crosshair.is-active{opacity: 1}.ui-crosshair[data-readout-inline='before']{--crosshair-readout-x: calc(-100% - var(--crosshair-readout-gap))}.ui-crosshair[data-readout-block='above']{--crosshair-readout-y: calc(-100% - var(--crosshair-readout-gap))}.ui-crosshair:dir(rtl){--crosshair-readout-x: calc(100% + var(--crosshair-readout-gap))}.ui-crosshair:dir(rtl)[data-readout-inline='before']{--crosshair-readout-x: calc(-1 * var(--crosshair-readout-gap))}@media (prefers-reduced-motion: reduce){.ui-crosshair{transition: none}}.ui-crosshair--muted{--crosshair-color: var(--line-strong)}.ui-crosshair__line{background: var(--crosshair-color);position: absolute}.ui-crosshair__line--x{inline-size: 1px;inset-block: 0;inset-inline-start: var(--crosshair-x)}.ui-crosshair__line--y{block-size: 1px;inset-block-start: var(--crosshair-y);inset-inline: 0}.ui-crosshair__badge{background: var(--crosshair-color);border-radius: var(--radius-sm);color: var(--button-text);font-family: var(--mono);font-size: var(--text-2xs);padding-block: 0.05rem;padding-inline: 0.3rem;position: absolute;white-space: nowrap}.ui-crosshair--muted .ui-crosshair__badge{background: var(--panel);border: 1px solid var(--line-strong);color: var(--text)}.ui-crosshair .ui-readout{background: var(--panel);border: 1px solid var(--line);border-radius: var(--radius-sm);box-shadow: var(--shadow-raised);color: var(--text);font-family: var(--mono);font-size: var(--text-xs);inset-block-start: var(--crosshair-y);inset-inline-start: var(--crosshair-x);max-inline-size: calc(100% - var(--crosshair-readout-gap) * 2);overflow: hidden;padding-block: 0.2rem;padding-inline: 0.4rem;pointer-events: none;position: absolute;text-overflow: ellipsis;transform: translate(var(--crosshair-readout-x),var(--crosshair-readout-y));white-space: nowrap}@media (forced-colors: active){.ui-crosshair__line{background: CanvasText}}.ui-sel{transition: opacity 0.12s ease,outline-color 0.12s ease}@media (prefers-reduced-motion: reduce){.ui-sel{transition: none}}.ui-sel--on{outline: 2px solid var(--accent);outline-offset: 1px}.ui-sel--off{opacity: 0.35}.ui-sel--maybe{outline: 1px dashed var(--accent);outline-offset: 1px}@media (forced-colors: active){.ui-sel--on{outline-color: Highlight}}.ui-highlights{--highlight-evidence: var(--accent-soft);--highlight-search: var(--warning-soft);--highlight-current: color-mix(in srgb,var(--accent) 22%,transparent)}.ui-highlights::highlight(bronto-evidence){background-color: var(--highlight-evidence);color: inherit;text-decoration-color: var(--accent);text-decoration-line: underline;text-decoration-thickness: 0.1em;text-underline-offset: 0.18em}.ui-highlights::highlight(bronto-search){background-color: var(--highlight-search);color: inherit}.ui-highlights::highlight(bronto-current){background-color: var(--highlight-current);color: var(--text)}@media (forced-colors: active){.ui-highlights::highlight(bronto-evidence),.ui-highlights::highlight(bronto-search),.ui-highlights::highlight(bronto-current){background-color: Highlight;color: HighlightText;text-decoration-color: HighlightText}}@media print{.ui-highlights{-webkit-print-color-adjust: exact;print-color-adjust: exact}}}
1
+ @layer bronto{.ui-annotation{--annotation-color: var(--accent);--annotation-line: var(--line-strong);--annotation-note-bg: var(--panel);--annotation-subject-fill: color-mix(in srgb,var(--annotation-color) 8%,transparent);--annotation-stroke-width: 1.5;color: var(--annotation-color);font-family: var(--sans);font-size: var(--text-xs);overflow: visible}.ui-annotation--muted{--annotation-color: var(--text-dim);--annotation-line: var(--line)}.ui-annotation--accent{--annotation-color: var(--accent);--annotation-line: var(--line-strong)}.ui-annotation--success{--annotation-color: var(--success)}.ui-annotation--warning{--annotation-color: var(--warning)}.ui-annotation--danger{--annotation-color: var(--danger)}.ui-annotation--info{--annotation-color: var(--info)}.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__connector-end,.ui-annotation__note-line,.ui-annotation__badge{vector-effect: non-scaling-stroke}.ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-linejoin: miter;stroke-width: var(--annotation-stroke-width)}.ui-annotation__connector,.ui-annotation__note-line{fill: none;stroke: var(--annotation-line);stroke-linecap: square;stroke-linejoin: miter;stroke-opacity: 0.86;stroke-width: var(--annotation-stroke-width)}.ui-annotation__connector-end{fill: var(--annotation-line);stroke: none}.ui-annotation__note{color: var(--text-soft);fill: currentColor}.ui-annotation__note > rect{fill: var(--annotation-note-bg);stroke: var(--line);stroke-width: 1;vector-effect: non-scaling-stroke}.ui-annotation__title{fill: var(--text);font-size: var(--text-xs);font-weight: 700;letter-spacing: 0;paint-order: stroke fill;stroke: var(--annotation-note-bg);stroke-linejoin: round;stroke-width: 3;text-transform: none}.ui-annotation__label{fill: var(--text-soft);font-size: var(--text-xs);letter-spacing: 0;paint-order: stroke fill;stroke: var(--annotation-note-bg);stroke-linejoin: round;stroke-width: 3}.ui-annotation__badge{fill: var(--annotation-note-bg);stroke: var(--annotation-color);stroke-width: var(--annotation-stroke-width)}.ui-annotation--label .ui-annotation__subject,.ui-annotation--badge .ui-annotation__connector,.ui-annotation--badge .ui-annotation__note-line{display: none}.ui-annotation--callout .ui-annotation__note-line,.ui-annotation--elbow .ui-annotation__note-line,.ui-annotation--curve .ui-annotation__note-line{stroke: var(--annotation-color)}.ui-annotation--elbow .ui-annotation__connector{stroke-linejoin: bevel}.ui-annotation--curve .ui-annotation__connector{stroke-linecap: round}.ui-annotation--circle .ui-annotation__subject{stroke-dasharray: 0.01 4;stroke-linecap: round}.ui-annotation--rect .ui-annotation__subject{stroke-dasharray: 5 3}.ui-annotation--threshold .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-dasharray: 6 4}.ui-annotation--badge .ui-annotation__subject{fill: var(--annotation-color)}.ui-annotation--badge .ui-annotation__badge{fill: var(--annotation-color)}.ui-annotation--badge .ui-annotation__title,.ui-annotation--badge .ui-annotation__label{fill: var(--button-text);stroke: none}.ui-annotation--bracket .ui-annotation__subject,.ui-annotation--compare .ui-annotation__subject,.ui-annotation--axis .ui-annotation__subject,.ui-annotation--timeline .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-linecap: square}.ui-annotation--band .ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-dasharray: 5 3}.ui-annotation--slope .ui-annotation__subject{fill: none;stroke: var(--annotation-color);stroke-linecap: round}.ui-annotation--cluster .ui-annotation__subject{fill: var(--annotation-subject-fill);stroke: var(--annotation-color);stroke-dasharray: 0.01 5;stroke-linecap: round}.ui-annotation--evidence .ui-annotation__badge{fill: var(--annotation-note-bg);stroke: var(--annotation-color)}.ui-annotation--evidence .ui-annotation__title{fill: var(--annotation-color);stroke: none}.ui-annotation--focus{--annotation-stroke-width: 2;--annotation-subject-fill: color-mix(in srgb,var(--annotation-color) 14%,transparent)}@media (prefers-reduced-motion: no-preference){.ui-annotation--draw .ui-annotation__connector,.ui-annotation--draw .ui-annotation__note-line{animation: uiAnnotationDraw var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms);stroke-dasharray: var(--annotation-dash,360);stroke-dashoffset: var(--annotation-dash,360)}.ui-annotation--draw .ui-annotation__subject,.ui-annotation--draw .ui-annotation__badge{animation: uiAnnotationSubjectReveal var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms)}.ui-annotation--reveal .ui-annotation__note{animation: uiAnnotationReveal var(--duration-slow,600ms) var(--ease-out,ease-out) both;animation-delay: var(--annotation-delay,0ms)}.ui-annotation--pulse .ui-annotation__subject,.ui-annotation--pulse .ui-annotation__badge{animation: uiAnnotationPulse 1.6s var(--ease-out,ease-out) infinite;animation-delay: var(--annotation-delay,0ms);transform-box: fill-box;transform-origin: center}}@keyframes uiAnnotationDraw{to{stroke-dashoffset: 0}}@keyframes uiAnnotationSubjectReveal{from{opacity: 0}to{opacity: 1}}@keyframes uiAnnotationReveal{from{opacity: 0}to{opacity: 1}}@keyframes uiAnnotationPulse{50%{opacity: 0.62;transform: scale(1.06)}}@media print{.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__note,.ui-annotation__note-line,.ui-annotation__badge{animation: none !important;opacity: 1;stroke-dashoffset: 0}.ui-annotation__subject,.ui-annotation__connector,.ui-annotation__note-line,.ui-annotation__badge{transform: none}.ui-annotation--draw .ui-annotation__connector,.ui-annotation--draw .ui-annotation__note-line{stroke-dasharray: none;stroke-dashoffset: 0}}@media (forced-colors: active){.ui-annotation{--annotation-color: CanvasText;--annotation-line: CanvasText;--annotation-note-bg: Canvas;--annotation-subject-fill: Canvas}}.ui-figure{container: bronto-figure / inline-size;display: grid;gap: var(--space-sm);margin: 0;min-inline-size: 0}.ui-figure > *,.ui-figure__body > *,.ui-figure__stage > *{min-inline-size: 0}.ui-figure__caption{color: var(--text-dim);font-family: var(--sans);font-size: var(--text-sm);letter-spacing: 0;line-height: 1.5;text-transform: none}.ui-figure__body{align-items: start;display: grid;gap: var(--space-sm)}.ui-figure__body--key-right{grid-template-columns: minmax(0,1fr) minmax(min(100%,10rem),var(--figure-key-width,14rem))}.ui-figure__stage{--figure-max-inline: 42rem;--figure-min-block: 0px;display: grid;inline-size: min(100%,var(--figure-max-inline));margin-inline: auto;min-block-size: var(--figure-min-block);place-items: center;position: relative}.ui-figure__media{display: block;inline-size: 100%;max-inline-size: 100%}.ui-figure__stage > :is(canvas,img,picture,svg):not(.ui-figure__overlay){display: block;max-inline-size: 100%}.ui-figure__overlay{block-size: 100%;inline-size: 100%;inset: 0;overflow: visible;pointer-events: none;position: absolute}.ui-figure__key,.ui-figure__data{display: grid;gap: var(--space-xs)}.ui-figure__data{margin-block-start: var(--space-xs)}@container bronto-figure (max-width: 44rem){.ui-figure__body--key-right{grid-template-columns: 1fr}}@media print{.ui-figure{container-type: normal;break-inside: avoid}.ui-figure__body{display: block}.ui-figure__body > * + *{margin-block-start: var(--space-sm)}}.ui-legend{color: var(--text-soft);display: flex;flex-wrap: wrap;font-family: var(--sans);font-size: var(--text-xs);gap: var(--space-2xs) var(--space-md);list-style: none;margin: 0;padding: 0}.ui-legend--vertical{flex-direction: column}.ui-legend--compact{font-size: var(--text-2xs);gap: var(--space-2xs) var(--space-sm)}.ui-legend__title{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;margin: 0;text-transform: none}.ui-legend__item{min-inline-size: 0;max-inline-size: 100%;align-items: center;color: inherit;display: inline-flex;gap: 0.45rem}.ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;color: inherit}.ui-legend__value{color: var(--text-dim);font-variant-numeric: tabular-nums;margin-inline-start: auto}.ui-legend__caption{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;text-transform: none}.ui-legend__swatch{background: var(--chart-color,var(--chart-1,var(--accent)));background-image: var(--chart-pattern,none);background-size: var(--chart-pattern-size,8px);block-size: 0.8rem;border: 1px solid var(--line-strong);flex: 0 0 auto;inline-size: 0.8rem}.ui-legend__swatch--circle{border-radius: 50%}.ui-legend__swatch--line{block-size: 0.2rem;border: 0;inline-size: 1.1rem}.ui-legend__symbol{block-size: 0.95rem;color: var(--chart-color,var(--chart-1,var(--accent)));flex: 0 0 auto;inline-size: 0.95rem}.ui-legend__swatch--1{--chart-color: var(--chart-1,var(--accent))}.ui-legend__swatch--2{--chart-color: var(--chart-2,var(--accent))}.ui-legend__swatch--3{--chart-color: var(--chart-3,var(--accent))}.ui-legend__swatch--4{--chart-color: var(--chart-4,var(--accent))}.ui-legend__swatch--5{--chart-color: var(--chart-5,var(--accent))}.ui-legend__swatch--6{--chart-color: var(--chart-6,var(--accent))}.ui-legend__swatch--7{--chart-color: var(--chart-7,var(--accent))}.ui-legend__swatch--8{--chart-color: var(--chart-8,var(--accent))}.ui-legend--gradient{display: grid;gap: var(--space-2xs)}.ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-seq-1),var(--chart-seq-2),var(--chart-seq-3),var(--chart-seq-4),var(--chart-seq-5) );block-size: 0.7rem;border: 1px solid var(--line)}.ui-legend--diverging .ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-div-1),var(--chart-div-2),var(--chart-div-3),var(--chart-div-4),var(--chart-div-5),var(--chart-div-6),var(--chart-div-7) )}.ui-legend__ticks{color: var(--text-dim);display: flex;font-size: var(--text-2xs);justify-content: space-between}.ui-legend__tick{font-variant-numeric: tabular-nums}.ui-legend--threshold{align-items: center;display: grid;gap: 0.35rem var(--space-sm);grid-template-columns: auto 1fr}.ui-legend--with-values{display: grid;gap: 0.35rem var(--space-md);grid-template-columns: auto 1fr auto}.ui-legend--with-values .ui-legend__item{min-inline-size: 0;max-inline-size: 100%;display: grid;grid-column: 1 / -1;grid-template-columns: subgrid}.ui-legend--with-values .ui-legend__value{margin-inline-start: 0;text-align: end}.ui-legend--interactive .ui-legend__item:is(button,[role='button']){background: none;border: 0;border-radius: var(--radius-sm);color: inherit;cursor: pointer;font: inherit;padding-block: 0.15rem;padding-inline: 0.3rem;text-align: start}.ui-legend--interactive .ui-legend__item:is(button,[role='button']):focus-visible{outline: 2px solid var(--accent);outline-offset: 2px}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 0.45}.ui-legend__item.is-inactive .ui-legend__label,.ui-legend__item[aria-pressed='false'] .ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;text-decoration: line-through}@media (forced-colors: active){.ui-legend__swatch{border: 1px solid CanvasText;forced-color-adjust: none}.ui-legend__track{forced-color-adjust: none}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 1}}@media print{.ui-legend__swatch,.ui-legend__track{-webkit-print-color-adjust: exact;print-color-adjust: exact}}.ui-mark{background-color: transparent;background-image: linear-gradient( 90deg,color-mix(in srgb,var(--mark-color,var(--line-strong)) 30%,transparent),color-mix(in srgb,var(--mark-color,var(--line-strong)) 30%,transparent) );background-repeat: no-repeat;background-size: 100% 100%;border-radius: 0.12em;-webkit-box-decoration-break: clone;box-decoration-break: clone;color: inherit;padding-block: 0.05em;padding-inline: 0.18em}.ui-mark--accent{--mark-color: var(--accent)}.ui-mark--success{--mark-color: var(--success)}.ui-mark--warning{--mark-color: var(--warning)}.ui-mark--danger{--mark-color: var(--danger)}.ui-mark--info{--mark-color: var(--info)}.ui-mark--muted{--mark-color: var(--text-dim)}.ui-mark--underline{background: none;padding: 0;text-decoration-color: var(--mark-color,var(--text-dim));text-decoration-line: underline;text-decoration-thickness: 0.12em;text-underline-offset: 0.18em}.ui-mark--box{background: none;border: 1px solid var(--mark-color,var(--line-strong));border-radius: var(--radius-sm)}.ui-mark--strike{background: none;padding: 0;text-decoration-color: var(--mark-color,var(--text-dim));text-decoration-line: line-through}@media (prefers-reduced-motion: no-preference){.ui-mark--draw:not(.ui-mark--underline,.ui-mark--box,.ui-mark--strike){animation: ui-mark-draw 0.6s var(--ease,ease) both}}@keyframes ui-mark-draw{from{background-size: 0% 100%}to{background-size: 100% 100%}}.ui-bracket-note{--mark-color: var(--line-strong);border-inline-start: 2px solid var(--mark-color);display: block;padding-inline-start: var(--space-md)}.ui-bracket-note__label{color: var(--mark-color);display: block;font-family: var(--mono);font-size: var(--text-2xs);letter-spacing: 0;margin-block-end: var(--space-2xs);text-transform: uppercase}.ui-bracket-note--accent{--mark-color: var(--accent)}.ui-bracket-note--success{--mark-color: var(--success)}.ui-bracket-note--warning{--mark-color: var(--warning)}.ui-bracket-note--danger{--mark-color: var(--danger)}.ui-bracket-note--info{--mark-color: var(--info)}@media (forced-colors: active){.ui-mark:not(.ui-mark--underline,.ui-mark--box,.ui-mark--strike){text-decoration-line: underline}}@media print{.ui-mark{-webkit-print-color-adjust: exact;background-size: 100% 100%;print-color-adjust: exact}.ui-mark--draw{animation: none}}.ui-connector{--connector-color: var(--line-strong);color: var(--connector-color);inset: 0;overflow: visible;pointer-events: none;position: absolute}.ui-connector__path{fill: none;stroke: var(--connector-color);stroke-linecap: round;stroke-linejoin: round;stroke-width: var(--connector-width,1.5);vector-effect: non-scaling-stroke}.ui-connector__end{fill: var(--connector-color);stroke: none}.ui-connector--dashed .ui-connector__path{stroke-dasharray: 4 3}.ui-connector--accent{--connector-color: var(--accent)}.ui-connector--muted{--connector-color: var(--line)}.ui-connector--success{--connector-color: var(--success)}.ui-connector--warning{--connector-color: var(--warning)}.ui-connector--danger{--connector-color: var(--danger)}.ui-connector--info{--connector-color: var(--info)}@media (prefers-reduced-motion: no-preference){.ui-connector--draw .ui-connector__path{animation: ui-connector-draw 0.6s ease both;stroke-dasharray: 1}}@keyframes ui-connector-draw{from{stroke-dashoffset: 1}to{stroke-dashoffset: 0}}@media (forced-colors: active){.ui-connector__path{stroke: CanvasText}.ui-connector__end{fill: CanvasText}}@media print{.ui-connector__path,.ui-connector__end{-webkit-print-color-adjust: exact;print-color-adjust: exact}.ui-connector--draw .ui-connector__path{animation: none;stroke-dasharray: none;stroke-dashoffset: 0}}.ui-spotlight{--spot-x: 50%;--spot-y: 50%;--spot-w: 0px;--spot-h: 0px;--spot-pad: 8px;--spot-radius: var(--radius-md);--spot-backdrop: color-mix(in srgb,#000 55%,transparent);inset: 0;pointer-events: none;position: fixed;z-index: var(--z-overlay,1000)}.ui-spotlight__hole{background: transparent;block-size: calc(var(--spot-h) + var(--spot-pad) * 2);border-radius: var(--spot-radius);box-shadow: 0 0 0 100vmax var(--spot-backdrop);inline-size: calc(var(--spot-w) + var(--spot-pad) * 2);inset-block-start: 0;inset-inline-start: 0;position: absolute;transform: translate( calc(var(--spot-x) - var(--spot-pad)),calc(var(--spot-y) - var(--spot-pad)) );transition: transform 0.2s ease,inline-size 0.2s ease,block-size 0.2s ease}@media (prefers-reduced-motion: reduce){.ui-spotlight__hole{transition: none}}@media (prefers-reduced-transparency: reduce){.ui-spotlight{--spot-backdrop: var(--surface-1)}}.ui-spotlight--ring .ui-spotlight__hole{outline: 2px solid var(--accent);outline-offset: 0}.ui-tour-note{background: var(--panel);border: 1px solid var(--line);border-radius: var(--radius-md);box-shadow: var(--shadow-raised);color: var(--text);display: grid;gap: var(--space-sm);max-inline-size: min(22rem,calc(100vw - 2rem));padding: var(--space-md);pointer-events: auto}.ui-tour-note__step{color: var(--text-dim);font-family: var(--mono);font-size: var(--text-2xs);letter-spacing: 0;text-transform: uppercase}.ui-tour-note__title{color: var(--text);font-size: var(--text-lg);font-weight: 600;margin: 0}.ui-tour-note__body{color: var(--text-soft);margin: 0}.ui-tour-note__actions{display: flex;gap: var(--space-sm);justify-content: flex-end}@media (forced-colors: active){.ui-spotlight__hole{outline: 2px solid CanvasText}}.ui-crosshair{--crosshair-x: 0;--crosshair-y: 0;--crosshair-color: var(--accent);--crosshair-readout-gap: 0.35rem;--crosshair-readout-x: var(--crosshair-readout-gap);--crosshair-readout-y: var(--crosshair-readout-gap);inset: 0;opacity: 0;pointer-events: none;position: absolute;transition: opacity 0.12s ease}.ui-crosshair.is-active{opacity: 1}.ui-crosshair[data-readout-inline='before']{--crosshair-readout-x: calc(-100% - var(--crosshair-readout-gap))}.ui-crosshair[data-readout-block='above']{--crosshair-readout-y: calc(-100% - var(--crosshair-readout-gap))}.ui-crosshair:dir(rtl){--crosshair-readout-x: calc(100% + var(--crosshair-readout-gap))}.ui-crosshair:dir(rtl)[data-readout-inline='before']{--crosshair-readout-x: calc(-1 * var(--crosshair-readout-gap))}@media (prefers-reduced-motion: reduce){.ui-crosshair{transition: none}}.ui-crosshair--muted{--crosshair-color: var(--line-strong)}.ui-crosshair__line{background: var(--crosshair-color);position: absolute}.ui-crosshair__line--x{inline-size: 1px;inset-block: 0;inset-inline-start: var(--crosshair-x)}.ui-crosshair__line--y{block-size: 1px;inset-block-start: var(--crosshair-y);inset-inline: 0}.ui-crosshair__badge{background: var(--crosshair-color);border-radius: var(--radius-sm);color: var(--button-text);font-family: var(--mono);font-size: var(--text-2xs);padding-block: 0.05rem;padding-inline: 0.3rem;position: absolute;white-space: nowrap}.ui-crosshair--muted .ui-crosshair__badge{background: var(--panel);border: 1px solid var(--line-strong);color: var(--text)}.ui-crosshair .ui-readout{background: var(--panel);border: 1px solid var(--line);border-radius: var(--radius-sm);box-shadow: var(--shadow-raised);color: var(--text);font-family: var(--mono);font-size: var(--text-xs);inset-block-start: var(--crosshair-y);inset-inline-start: var(--crosshair-x);max-inline-size: calc(100% - var(--crosshair-readout-gap) * 2);overflow: hidden;padding-block: 0.2rem;padding-inline: 0.4rem;pointer-events: none;position: absolute;text-overflow: ellipsis;transform: translate(var(--crosshair-readout-x),var(--crosshair-readout-y));white-space: nowrap}@media (forced-colors: active){.ui-crosshair__line{background: CanvasText}}.ui-sel{transition: opacity 0.12s ease,outline-color 0.12s ease}@media (prefers-reduced-motion: reduce){.ui-sel{transition: none}}.ui-sel--on{outline: 2px solid var(--accent);outline-offset: 1px}.ui-sel--off{opacity: 0.35}.ui-sel--maybe{outline: 1px dashed var(--accent);outline-offset: 1px}@media (forced-colors: active){.ui-sel--on{outline-color: Highlight}}.ui-highlights{--highlight-evidence: var(--accent-soft);--highlight-search: var(--warning-soft);--highlight-current: color-mix(in srgb,var(--accent) 22%,transparent)}.ui-highlights::highlight(bronto-evidence){background-color: var(--highlight-evidence);color: inherit;text-decoration-color: var(--accent);text-decoration-line: underline;text-decoration-thickness: 0.1em;text-underline-offset: 0.18em}.ui-highlights::highlight(bronto-search){background-color: var(--highlight-search);color: inherit}.ui-highlights::highlight(bronto-current){background-color: var(--highlight-current);color: var(--text)}@media (forced-colors: active){.ui-highlights::highlight(bronto-evidence),.ui-highlights::highlight(bronto-search),.ui-highlights::highlight(bronto-current){background-color: Highlight;color: HighlightText;text-decoration-color: HighlightText}}@media print{.ui-highlights{-webkit-print-color-adjust: exact;print-color-adjust: exact}}}
@@ -1 +1 @@
1
- @layer bronto{:root{--chart-1: var(--accent);--chart-2: #e69f00;--chart-3: #56b4e9;--chart-4: #009e73;--chart-5: #f0e442;--chart-6: #0072b2;--chart-7: #cc79a7;--chart-8: #4d5358;--chart-seq-1: oklch(94% 0.03 25deg);--chart-seq-2: oklch(85% 0.07 25deg);--chart-seq-3: oklch(74% 0.12 25deg);--chart-seq-4: oklch(62% 0.16 25deg);--chart-seq-5: oklch(50% 0.16 25deg);--chart-seq-6: oklch(38% 0.13 25deg);--chart-div-1: oklch(45% 0.14 255deg);--chart-div-2: oklch(62% 0.1 250deg);--chart-div-3: oklch(82% 0.05 245deg);--chart-div-4: oklch(90% 0.01 250deg);--chart-div-5: oklch(80% 0.07 60deg);--chart-div-6: oklch(66% 0.13 55deg);--chart-div-7: oklch(56% 0.15 45deg);--chart-pattern-size: 8px;--chart-pattern-ink: rgb(0 0 0 / 0.34);--chart-pattern-1: none;--chart-pattern-2: radial-gradient(circle at 50% 50%,var(--chart-pattern-ink) 1.4px,transparent 1.6px);--chart-pattern-3: radial-gradient(circle at 0 0,var(--chart-pattern-ink) 1.4px,transparent 1.6px);--chart-pattern-4: radial-gradient(circle at 25% 25%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 75% 75%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-5: radial-gradient(circle at 50% 25%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 50% 75%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-6: radial-gradient(circle at 25% 50%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 75% 50%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-7: radial-gradient(circle at 25% 25%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 75% 25%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 25% 75%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 75% 75%,var(--chart-pattern-ink) 1px,transparent 1.2px);--chart-pattern-8: radial-gradient(circle at 50% 50%,transparent 1.2px,var(--chart-pattern-ink) 1.4px,transparent 2.2px)}@media (prefers-color-scheme: dark){:root:not([data-theme='light']){--chart-1: var(--accent);--chart-2: #e69f00;--chart-3: #56b4e9;--chart-4: #009e73;--chart-5: #f0e442;--chart-6: #0072b2;--chart-7: #cc79a7;--chart-8: #4d5358;--chart-seq-1: oklch(30% 0.1 25deg);--chart-seq-2: oklch(42% 0.15 25deg);--chart-seq-3: oklch(55% 0.17 25deg);--chart-seq-4: oklch(68% 0.15 25deg);--chart-seq-5: oklch(80% 0.1 25deg);--chart-seq-6: oklch(90% 0.05 25deg);--chart-div-1: oklch(70% 0.13 250deg);--chart-div-2: oklch(60% 0.12 252deg);--chart-div-3: oklch(48% 0.08 255deg);--chart-div-4: oklch(40% 0.01 250deg);--chart-div-5: oklch(58% 0.1 60deg);--chart-div-6: oklch(72% 0.13 58deg);--chart-div-7: oklch(80% 0.12 55deg);--chart-pattern-ink: rgb(255 255 255 / 0.42)}}:root[data-theme='dark']{--chart-1: var(--accent);--chart-2: #e69f00;--chart-3: #56b4e9;--chart-4: #009e73;--chart-5: #f0e442;--chart-6: #0072b2;--chart-7: #cc79a7;--chart-8: #4d5358;--chart-seq-1: oklch(30% 0.1 25deg);--chart-seq-2: oklch(42% 0.15 25deg);--chart-seq-3: oklch(55% 0.17 25deg);--chart-seq-4: oklch(68% 0.15 25deg);--chart-seq-5: oklch(80% 0.1 25deg);--chart-seq-6: oklch(90% 0.05 25deg);--chart-div-1: oklch(70% 0.13 250deg);--chart-div-2: oklch(60% 0.12 252deg);--chart-div-3: oklch(48% 0.08 255deg);--chart-div-4: oklch(40% 0.01 250deg);--chart-div-5: oklch(58% 0.1 60deg);--chart-div-6: oklch(72% 0.13 58deg);--chart-div-7: oklch(80% 0.12 55deg);--chart-pattern-ink: rgb(255 255 255 / 0.42)}@media print{:root:not([data-theme='light']){--chart-1: var(--accent);--chart-2: #e69f00;--chart-3: #56b4e9;--chart-4: #009e73;--chart-5: #f0e442;--chart-6: #0072b2;--chart-7: #cc79a7;--chart-8: #4d5358;--chart-seq-1: oklch(94% 0.03 25deg);--chart-seq-2: oklch(85% 0.07 25deg);--chart-seq-3: oklch(74% 0.12 25deg);--chart-seq-4: oklch(62% 0.16 25deg);--chart-seq-5: oklch(50% 0.16 25deg);--chart-seq-6: oklch(38% 0.13 25deg);--chart-div-1: oklch(45% 0.14 255deg);--chart-div-2: oklch(62% 0.1 250deg);--chart-div-3: oklch(82% 0.05 245deg);--chart-div-4: oklch(90% 0.01 250deg);--chart-div-5: oklch(80% 0.07 60deg);--chart-div-6: oklch(66% 0.13 55deg);--chart-div-7: oklch(56% 0.15 45deg);--chart-pattern-ink: rgb(0 0 0 / 0.34)}}}
1
+ @layer bronto{:root{--cat-1: #2a78d6;--cat-2: #eb6834;--cat-3: #1baf7a;--cat-4: #eda100;--cat-5: #e87ba4;--cat-6: #008300;--cat-7: #4a3aa7;--cat-8: #e34948;--cat-1-ink: #1467c3;--cat-2-ink: #bf3f00;--cat-3-ink: #007d4c;--cat-4-ink: #a45d00;--cat-5-ink: #b04972;--cat-6-ink: #007800;--cat-7-ink: #4a3aa7;--cat-8-ink: #c62b30;--chart-seq-1: #80b0e8;--chart-seq-2: #5598e7;--chart-seq-3: #2a78d6;--chart-seq-4: #1c5cab;--chart-seq-5: #104281;--chart-div-1: oklch(45% 0.14 255deg);--chart-div-2: oklch(62% 0.1 250deg);--chart-div-3: oklch(82% 0.05 245deg);--chart-div-4: oklch(90% 0.01 250deg);--chart-div-5: oklch(80% 0.07 60deg);--chart-div-6: oklch(66% 0.13 55deg);--chart-div-7: oklch(56% 0.15 45deg);--cat-1-tint: color-mix(in oklch,var(--cat-1) 16%,var(--panel));--cat-2-tint: color-mix(in oklch,var(--cat-2) 16%,var(--panel));--cat-3-tint: color-mix(in oklch,var(--cat-3) 16%,var(--panel));--cat-4-tint: color-mix(in oklch,var(--cat-4) 16%,var(--panel));--cat-5-tint: color-mix(in oklch,var(--cat-5) 16%,var(--panel));--cat-6-tint: color-mix(in oklch,var(--cat-6) 16%,var(--panel));--cat-7-tint: color-mix(in oklch,var(--cat-7) 16%,var(--panel));--cat-8-tint: color-mix(in oklch,var(--cat-8) 16%,var(--panel));--chart-1: var(--cat-1);--chart-2: var(--cat-2);--chart-3: var(--cat-3);--chart-4: var(--cat-4);--chart-5: var(--cat-5);--chart-6: var(--cat-6);--chart-7: var(--cat-7);--chart-8: var(--cat-8);--chart-pattern-size: 8px;--chart-pattern-ink: rgb(0 0 0 / 0.34);--chart-pattern-1: none;--chart-pattern-2: radial-gradient(circle at 50% 50%,var(--chart-pattern-ink) 1.4px,transparent 1.6px);--chart-pattern-3: radial-gradient(circle at 0 0,var(--chart-pattern-ink) 1.4px,transparent 1.6px);--chart-pattern-4: radial-gradient(circle at 25% 25%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 75% 75%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-5: radial-gradient(circle at 50% 25%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 50% 75%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-6: radial-gradient(circle at 25% 50%,var(--chart-pattern-ink) 1.2px,transparent 1.4px),radial-gradient(circle at 75% 50%,var(--chart-pattern-ink) 1.2px,transparent 1.4px);--chart-pattern-7: radial-gradient(circle at 25% 25%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 75% 25%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 25% 75%,var(--chart-pattern-ink) 1px,transparent 1.2px),radial-gradient(circle at 75% 75%,var(--chart-pattern-ink) 1px,transparent 1.2px);--chart-pattern-8: radial-gradient(circle at 50% 50%,transparent 1.2px,var(--chart-pattern-ink) 1.4px,transparent 2.2px)}@media (prefers-color-scheme: dark){:root:not([data-theme='light']){--cat-1: #3987e5;--cat-2: #d95926;--cat-3: #199e70;--cat-4: #c98500;--cat-5: #d55181;--cat-6: #008300;--cat-7: #9085e9;--cat-8: #e66767;--cat-1-ink: #4694f3;--cat-2-ink: #e86f42;--cat-3-ink: #27a677;--cat-4-ink: #cb8705;--cat-5-ink: #e46792;--cat-6-ink: #38a433;--cat-7-ink: #9187eb;--cat-8-ink: #eb6c6c;--chart-seq-1: #1b5298;--chart-seq-2: #256abf;--chart-seq-3: #3987e5;--chart-seq-4: #6da7ec;--chart-seq-5: #9ec5f4;--chart-div-1: oklch(70% 0.13 250deg);--chart-div-2: oklch(60% 0.12 252deg);--chart-div-3: oklch(48% 0.08 255deg);--chart-div-4: oklch(40% 0.01 250deg);--chart-div-5: oklch(58% 0.1 60deg);--chart-div-6: oklch(72% 0.13 58deg);--chart-div-7: oklch(80% 0.12 55deg);--chart-pattern-ink: rgb(255 255 255 / 0.42)}}:root[data-theme='dark']{--cat-1: #3987e5;--cat-2: #d95926;--cat-3: #199e70;--cat-4: #c98500;--cat-5: #d55181;--cat-6: #008300;--cat-7: #9085e9;--cat-8: #e66767;--cat-1-ink: #4694f3;--cat-2-ink: #e86f42;--cat-3-ink: #27a677;--cat-4-ink: #cb8705;--cat-5-ink: #e46792;--cat-6-ink: #38a433;--cat-7-ink: #9187eb;--cat-8-ink: #eb6c6c;--chart-seq-1: #1b5298;--chart-seq-2: #256abf;--chart-seq-3: #3987e5;--chart-seq-4: #6da7ec;--chart-seq-5: #9ec5f4;--chart-div-1: oklch(70% 0.13 250deg);--chart-div-2: oklch(60% 0.12 252deg);--chart-div-3: oklch(48% 0.08 255deg);--chart-div-4: oklch(40% 0.01 250deg);--chart-div-5: oklch(58% 0.1 60deg);--chart-div-6: oklch(72% 0.13 58deg);--chart-div-7: oklch(80% 0.12 55deg);--chart-pattern-ink: rgb(255 255 255 / 0.42)}@media print{:root:not([data-theme='light']){--cat-1: #2a78d6;--cat-2: #eb6834;--cat-3: #1baf7a;--cat-4: #eda100;--cat-5: #e87ba4;--cat-6: #008300;--cat-7: #4a3aa7;--cat-8: #e34948;--cat-1-ink: #1467c3;--cat-2-ink: #bf3f00;--cat-3-ink: #007d4c;--cat-4-ink: #a45d00;--cat-5-ink: #b04972;--cat-6-ink: #007800;--cat-7-ink: #4a3aa7;--cat-8-ink: #c62b30;--chart-seq-1: #80b0e8;--chart-seq-2: #5598e7;--chart-seq-3: #2a78d6;--chart-seq-4: #1c5cab;--chart-seq-5: #104281;--chart-div-1: oklch(45% 0.14 255deg);--chart-div-2: oklch(62% 0.1 250deg);--chart-div-3: oklch(82% 0.05 245deg);--chart-div-4: oklch(90% 0.01 250deg);--chart-div-5: oklch(80% 0.07 60deg);--chart-div-6: oklch(66% 0.13 55deg);--chart-div-7: oklch(56% 0.15 45deg);--chart-pattern-ink: rgb(0 0 0 / 0.34)}}}
@@ -1 +1 @@
1
- @layer bronto{.ui-legend{color: var(--text-soft);display: flex;flex-wrap: wrap;font-family: var(--sans);font-size: var(--text-xs);gap: var(--space-2xs) var(--space-md);list-style: none;margin: 0;padding: 0}.ui-legend--vertical{flex-direction: column}.ui-legend--compact{font-size: var(--text-2xs);gap: var(--space-2xs) var(--space-sm)}.ui-legend__title{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;margin: 0;text-transform: none}.ui-legend__item{min-inline-size: 0;max-inline-size: 100%;align-items: center;color: inherit;display: inline-flex;gap: 0.45rem}.ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;color: inherit}.ui-legend__value{color: var(--text-dim);font-variant-numeric: tabular-nums;margin-inline-start: auto}.ui-legend__caption{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;text-transform: none}.ui-legend__swatch{background: var(--chart-color,var(--chart-1,var(--accent)));background-image: var(--chart-pattern,none);background-size: var(--chart-pattern-size,8px);block-size: 0.8rem;border: 1px solid var(--line-strong);flex: 0 0 auto;inline-size: 0.8rem}.ui-legend__swatch--circle{border-radius: 50%}.ui-legend__swatch--line{block-size: 0.2rem;border: 0;inline-size: 1.1rem}.ui-legend__symbol{block-size: 0.95rem;color: var(--chart-color,var(--chart-1,var(--accent)));flex: 0 0 auto;inline-size: 0.95rem}.ui-legend__swatch--1{--chart-color: var(--chart-1,var(--accent))}.ui-legend__swatch--2{--chart-color: var(--chart-2,var(--accent))}.ui-legend__swatch--3{--chart-color: var(--chart-3,var(--accent))}.ui-legend__swatch--4{--chart-color: var(--chart-4,var(--accent))}.ui-legend__swatch--5{--chart-color: var(--chart-5,var(--accent))}.ui-legend__swatch--6{--chart-color: var(--chart-6,var(--accent))}.ui-legend__swatch--7{--chart-color: var(--chart-7,var(--accent))}.ui-legend__swatch--8{--chart-color: var(--chart-8,var(--accent))}.ui-legend--gradient{display: grid;gap: var(--space-2xs)}.ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-seq-1),var(--chart-seq-2),var(--chart-seq-3),var(--chart-seq-4),var(--chart-seq-5),var(--chart-seq-6) );block-size: 0.7rem;border: 1px solid var(--line)}.ui-legend--diverging .ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-div-1),var(--chart-div-2),var(--chart-div-3),var(--chart-div-4),var(--chart-div-5),var(--chart-div-6),var(--chart-div-7) )}.ui-legend__ticks{color: var(--text-dim);display: flex;font-size: var(--text-2xs);justify-content: space-between}.ui-legend__tick{font-variant-numeric: tabular-nums}.ui-legend--threshold{align-items: center;display: grid;gap: 0.35rem var(--space-sm);grid-template-columns: auto 1fr}.ui-legend--with-values{display: grid;gap: 0.35rem var(--space-md);grid-template-columns: auto 1fr auto}.ui-legend--with-values .ui-legend__item{min-inline-size: 0;max-inline-size: 100%;display: grid;grid-column: 1 / -1;grid-template-columns: subgrid}.ui-legend--with-values .ui-legend__value{margin-inline-start: 0;text-align: end}.ui-legend--interactive .ui-legend__item:is(button,[role='button']){background: none;border: 0;border-radius: var(--radius-sm);color: inherit;cursor: pointer;font: inherit;padding-block: 0.15rem;padding-inline: 0.3rem;text-align: start}.ui-legend--interactive .ui-legend__item:is(button,[role='button']):focus-visible{outline: 2px solid var(--accent);outline-offset: 2px}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 0.45}.ui-legend__item.is-inactive .ui-legend__label,.ui-legend__item[aria-pressed='false'] .ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;text-decoration: line-through}@media (forced-colors: active){.ui-legend__swatch{border: 1px solid CanvasText;forced-color-adjust: none}.ui-legend__track{forced-color-adjust: none}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 1}}@media print{.ui-legend__swatch,.ui-legend__track{-webkit-print-color-adjust: exact;print-color-adjust: exact}}}
1
+ @layer bronto{.ui-legend{color: var(--text-soft);display: flex;flex-wrap: wrap;font-family: var(--sans);font-size: var(--text-xs);gap: var(--space-2xs) var(--space-md);list-style: none;margin: 0;padding: 0}.ui-legend--vertical{flex-direction: column}.ui-legend--compact{font-size: var(--text-2xs);gap: var(--space-2xs) var(--space-sm)}.ui-legend__title{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;margin: 0;text-transform: none}.ui-legend__item{min-inline-size: 0;max-inline-size: 100%;align-items: center;color: inherit;display: inline-flex;gap: 0.45rem}.ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;color: inherit}.ui-legend__value{color: var(--text-dim);font-variant-numeric: tabular-nums;margin-inline-start: auto}.ui-legend__caption{color: var(--text-dim);font-size: var(--text-xs);letter-spacing: 0;text-transform: none}.ui-legend__swatch{background: var(--chart-color,var(--chart-1,var(--accent)));background-image: var(--chart-pattern,none);background-size: var(--chart-pattern-size,8px);block-size: 0.8rem;border: 1px solid var(--line-strong);flex: 0 0 auto;inline-size: 0.8rem}.ui-legend__swatch--circle{border-radius: 50%}.ui-legend__swatch--line{block-size: 0.2rem;border: 0;inline-size: 1.1rem}.ui-legend__symbol{block-size: 0.95rem;color: var(--chart-color,var(--chart-1,var(--accent)));flex: 0 0 auto;inline-size: 0.95rem}.ui-legend__swatch--1{--chart-color: var(--chart-1,var(--accent))}.ui-legend__swatch--2{--chart-color: var(--chart-2,var(--accent))}.ui-legend__swatch--3{--chart-color: var(--chart-3,var(--accent))}.ui-legend__swatch--4{--chart-color: var(--chart-4,var(--accent))}.ui-legend__swatch--5{--chart-color: var(--chart-5,var(--accent))}.ui-legend__swatch--6{--chart-color: var(--chart-6,var(--accent))}.ui-legend__swatch--7{--chart-color: var(--chart-7,var(--accent))}.ui-legend__swatch--8{--chart-color: var(--chart-8,var(--accent))}.ui-legend--gradient{display: grid;gap: var(--space-2xs)}.ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-seq-1),var(--chart-seq-2),var(--chart-seq-3),var(--chart-seq-4),var(--chart-seq-5) );block-size: 0.7rem;border: 1px solid var(--line)}.ui-legend--diverging .ui-legend__track{background: linear-gradient( 90deg in oklch,var(--chart-div-1),var(--chart-div-2),var(--chart-div-3),var(--chart-div-4),var(--chart-div-5),var(--chart-div-6),var(--chart-div-7) )}.ui-legend__ticks{color: var(--text-dim);display: flex;font-size: var(--text-2xs);justify-content: space-between}.ui-legend__tick{font-variant-numeric: tabular-nums}.ui-legend--threshold{align-items: center;display: grid;gap: 0.35rem var(--space-sm);grid-template-columns: auto 1fr}.ui-legend--with-values{display: grid;gap: 0.35rem var(--space-md);grid-template-columns: auto 1fr auto}.ui-legend--with-values .ui-legend__item{min-inline-size: 0;max-inline-size: 100%;display: grid;grid-column: 1 / -1;grid-template-columns: subgrid}.ui-legend--with-values .ui-legend__value{margin-inline-start: 0;text-align: end}.ui-legend--interactive .ui-legend__item:is(button,[role='button']){background: none;border: 0;border-radius: var(--radius-sm);color: inherit;cursor: pointer;font: inherit;padding-block: 0.15rem;padding-inline: 0.3rem;text-align: start}.ui-legend--interactive .ui-legend__item:is(button,[role='button']):focus-visible{outline: 2px solid var(--accent);outline-offset: 2px}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 0.45}.ui-legend__item.is-inactive .ui-legend__label,.ui-legend__item[aria-pressed='false'] .ui-legend__label{min-inline-size: 0;overflow-wrap: anywhere;text-decoration: line-through}@media (forced-colors: active){.ui-legend__swatch{border: 1px solid CanvasText;forced-color-adjust: none}.ui-legend__track{forced-color-adjust: none}.ui-legend__item.is-inactive,.ui-legend__item[aria-pressed='false']{opacity: 1}}@media print{.ui-legend__swatch,.ui-legend__track{-webkit-print-color-adjust: exact;print-color-adjust: exact}}}