@fractaldesign/fractalstyler 0.0.0-stage → 0.9.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.
Files changed (46) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +123 -2
  3. package/cli/main.mjs +141 -0
  4. package/cli/scaffold.mjs +406 -0
  5. package/data/recipes.json +61 -0
  6. package/dist/asset.d.ts +3 -0
  7. package/dist/css/fractalstyler.css +2453 -0
  8. package/dist/css/fractalstyler.min.css +2 -0
  9. package/dist/index.d.ts +6 -0
  10. package/dist/index.js +6 -0
  11. package/dist/styles/_00_config.sass +29 -0
  12. package/dist/styles/_00_fonts.sass +58 -0
  13. package/dist/styles/_00_tokens.sass +211 -0
  14. package/dist/styles/_01_base.sass +58 -0
  15. package/dist/styles/_02_dimensions.sass +70 -0
  16. package/dist/styles/_03_typography.sass +170 -0
  17. package/dist/styles/_04_containers.sass +173 -0
  18. package/dist/styles/_05_layouts.sass +104 -0
  19. package/dist/styles/_06_shells.sass +135 -0
  20. package/dist/styles/_07_interactions.sass +212 -0
  21. package/dist/styles/_08_visuals.sass +136 -0
  22. package/dist/styles/_09_own.sass +174 -0
  23. package/dist/styles/colorpacks.sass +119 -0
  24. package/dist/styles/index.sass +14 -0
  25. package/dist/styles/themeplates.sass +159 -0
  26. package/docs/REGISTRY.api.md +477 -0
  27. package/docs/REGISTRY.md +14 -0
  28. package/docs/references/configurations-api.md +220 -0
  29. package/docs/references/configurations.md +258 -0
  30. package/lint/browser.mjs +79 -0
  31. package/lint/cli.mjs +212 -0
  32. package/lint/lib/agent-reporter.mjs +51 -0
  33. package/lint/lib/fuzzy.mjs +45 -0
  34. package/lint/lib/registry.mjs +107 -0
  35. package/lint/lib/sass-linter.mjs +71 -0
  36. package/lint/lib/svelte-linter.mjs +116 -0
  37. package/lint/lib/token-linter.mjs +97 -0
  38. package/package.json +112 -5
  39. package/registry.json +3999 -0
  40. package/scripts/class-vocab.js +197 -0
  41. package/scripts/update-registry.js +934 -0
  42. package/skills/fractal-styler/references/fractals.md +630 -0
  43. package/skills/fractal-styler/references/tokens.md +226 -0
  44. package/skills/fractalstyler/SKILL.md +59 -0
  45. package/skills/fractalstyler/references/fractals.md +630 -0
  46. package/skills/fractalstyler/references/tokens.md +226 -0
package/registry.json ADDED
@@ -0,0 +1,3999 @@
1
+ [
2
+ {
3
+ "class": ".gap-xs",
4
+ "kind": "family",
5
+ "layer": "L1",
6
+ "file": "_02_dimensions.sass",
7
+ "property": "gap: var(--space-xs)",
8
+ "description": "Gap on both axes (flex/grid) at the xs step — rides var(--space-xs) (generated from $gap-families × $steps in _00_config.sass)",
9
+ "example": "<div class=\"gap-xs\">"
10
+ },
11
+ {
12
+ "class": ".gap-sm",
13
+ "kind": "family",
14
+ "layer": "L1",
15
+ "file": "_02_dimensions.sass",
16
+ "property": "gap: var(--space-sm)",
17
+ "description": "Gap on both axes (flex/grid) at the sm step — rides var(--space-sm) (generated from $gap-families × $steps in _00_config.sass)",
18
+ "example": "<div class=\"gap-sm\">"
19
+ },
20
+ {
21
+ "class": ".gap-md",
22
+ "kind": "family",
23
+ "layer": "L1",
24
+ "file": "_02_dimensions.sass",
25
+ "property": "gap: var(--space-md)",
26
+ "description": "Gap on both axes (flex/grid) at the md step — rides var(--space-md) (generated from $gap-families × $steps in _00_config.sass)",
27
+ "example": "<div class=\"gap-md\">"
28
+ },
29
+ {
30
+ "class": ".gap-bs",
31
+ "kind": "family",
32
+ "layer": "L1",
33
+ "file": "_02_dimensions.sass",
34
+ "property": "gap: var(--space-bs)",
35
+ "description": "Gap on both axes (flex/grid) at the bs step — rides var(--space-bs) (generated from $gap-families × $steps in _00_config.sass)",
36
+ "example": "<div class=\"gap-bs\">"
37
+ },
38
+ {
39
+ "class": ".gap-lg",
40
+ "kind": "family",
41
+ "layer": "L1",
42
+ "file": "_02_dimensions.sass",
43
+ "property": "gap: var(--space-lg)",
44
+ "description": "Gap on both axes (flex/grid) at the lg step — rides var(--space-lg) (generated from $gap-families × $steps in _00_config.sass)",
45
+ "example": "<div class=\"gap-lg\">"
46
+ },
47
+ {
48
+ "class": ".gap-xl",
49
+ "kind": "family",
50
+ "layer": "L1",
51
+ "file": "_02_dimensions.sass",
52
+ "property": "gap: var(--space-xl)",
53
+ "description": "Gap on both axes (flex/grid) at the xl step — rides var(--space-xl) (generated from $gap-families × $steps in _00_config.sass)",
54
+ "example": "<div class=\"gap-xl\">"
55
+ },
56
+ {
57
+ "class": ".gap-2xl",
58
+ "kind": "family",
59
+ "layer": "L1",
60
+ "file": "_02_dimensions.sass",
61
+ "property": "gap: var(--space-2xl)",
62
+ "description": "Gap on both axes (flex/grid) at the 2xl step — rides var(--space-2xl) (generated from $gap-families × $steps in _00_config.sass)",
63
+ "example": "<div class=\"gap-2xl\">"
64
+ },
65
+ {
66
+ "class": ".gap-3xl",
67
+ "kind": "family",
68
+ "layer": "L1",
69
+ "file": "_02_dimensions.sass",
70
+ "property": "gap: var(--space-3xl)",
71
+ "description": "Gap on both axes (flex/grid) at the 3xl step — rides var(--space-3xl) (generated from $gap-families × $steps in _00_config.sass)",
72
+ "example": "<div class=\"gap-3xl\">"
73
+ },
74
+ {
75
+ "class": ".rgap-xs",
76
+ "kind": "family",
77
+ "layer": "L1",
78
+ "file": "_02_dimensions.sass",
79
+ "property": "row-gap: var(--space-xs)",
80
+ "description": "Row gap (block axis) at the xs step — rides var(--space-xs) (generated from $gap-families × $steps in _00_config.sass)",
81
+ "example": "<div class=\"rgap-xs\">"
82
+ },
83
+ {
84
+ "class": ".rgap-sm",
85
+ "kind": "family",
86
+ "layer": "L1",
87
+ "file": "_02_dimensions.sass",
88
+ "property": "row-gap: var(--space-sm)",
89
+ "description": "Row gap (block axis) at the sm step — rides var(--space-sm) (generated from $gap-families × $steps in _00_config.sass)",
90
+ "example": "<div class=\"rgap-sm\">"
91
+ },
92
+ {
93
+ "class": ".rgap-md",
94
+ "kind": "family",
95
+ "layer": "L1",
96
+ "file": "_02_dimensions.sass",
97
+ "property": "row-gap: var(--space-md)",
98
+ "description": "Row gap (block axis) at the md step — rides var(--space-md) (generated from $gap-families × $steps in _00_config.sass)",
99
+ "example": "<div class=\"rgap-md\">"
100
+ },
101
+ {
102
+ "class": ".rgap-bs",
103
+ "kind": "family",
104
+ "layer": "L1",
105
+ "file": "_02_dimensions.sass",
106
+ "property": "row-gap: var(--space-bs)",
107
+ "description": "Row gap (block axis) at the bs step — rides var(--space-bs) (generated from $gap-families × $steps in _00_config.sass)",
108
+ "example": "<div class=\"rgap-bs\">"
109
+ },
110
+ {
111
+ "class": ".rgap-lg",
112
+ "kind": "family",
113
+ "layer": "L1",
114
+ "file": "_02_dimensions.sass",
115
+ "property": "row-gap: var(--space-lg)",
116
+ "description": "Row gap (block axis) at the lg step — rides var(--space-lg) (generated from $gap-families × $steps in _00_config.sass)",
117
+ "example": "<div class=\"rgap-lg\">"
118
+ },
119
+ {
120
+ "class": ".rgap-xl",
121
+ "kind": "family",
122
+ "layer": "L1",
123
+ "file": "_02_dimensions.sass",
124
+ "property": "row-gap: var(--space-xl)",
125
+ "description": "Row gap (block axis) at the xl step — rides var(--space-xl) (generated from $gap-families × $steps in _00_config.sass)",
126
+ "example": "<div class=\"rgap-xl\">"
127
+ },
128
+ {
129
+ "class": ".rgap-2xl",
130
+ "kind": "family",
131
+ "layer": "L1",
132
+ "file": "_02_dimensions.sass",
133
+ "property": "row-gap: var(--space-2xl)",
134
+ "description": "Row gap (block axis) at the 2xl step — rides var(--space-2xl) (generated from $gap-families × $steps in _00_config.sass)",
135
+ "example": "<div class=\"rgap-2xl\">"
136
+ },
137
+ {
138
+ "class": ".rgap-3xl",
139
+ "kind": "family",
140
+ "layer": "L1",
141
+ "file": "_02_dimensions.sass",
142
+ "property": "row-gap: var(--space-3xl)",
143
+ "description": "Row gap (block axis) at the 3xl step — rides var(--space-3xl) (generated from $gap-families × $steps in _00_config.sass)",
144
+ "example": "<div class=\"rgap-3xl\">"
145
+ },
146
+ {
147
+ "class": ".cgap-xs",
148
+ "kind": "family",
149
+ "layer": "L1",
150
+ "file": "_02_dimensions.sass",
151
+ "property": "column-gap: var(--space-xs)",
152
+ "description": "Column gap (inline axis) at the xs step — rides var(--space-xs) (generated from $gap-families × $steps in _00_config.sass)",
153
+ "example": "<div class=\"cgap-xs\">"
154
+ },
155
+ {
156
+ "class": ".cgap-sm",
157
+ "kind": "family",
158
+ "layer": "L1",
159
+ "file": "_02_dimensions.sass",
160
+ "property": "column-gap: var(--space-sm)",
161
+ "description": "Column gap (inline axis) at the sm step — rides var(--space-sm) (generated from $gap-families × $steps in _00_config.sass)",
162
+ "example": "<div class=\"cgap-sm\">"
163
+ },
164
+ {
165
+ "class": ".cgap-md",
166
+ "kind": "family",
167
+ "layer": "L1",
168
+ "file": "_02_dimensions.sass",
169
+ "property": "column-gap: var(--space-md)",
170
+ "description": "Column gap (inline axis) at the md step — rides var(--space-md) (generated from $gap-families × $steps in _00_config.sass)",
171
+ "example": "<div class=\"cgap-md\">"
172
+ },
173
+ {
174
+ "class": ".cgap-bs",
175
+ "kind": "family",
176
+ "layer": "L1",
177
+ "file": "_02_dimensions.sass",
178
+ "property": "column-gap: var(--space-bs)",
179
+ "description": "Column gap (inline axis) at the bs step — rides var(--space-bs) (generated from $gap-families × $steps in _00_config.sass)",
180
+ "example": "<div class=\"cgap-bs\">"
181
+ },
182
+ {
183
+ "class": ".cgap-lg",
184
+ "kind": "family",
185
+ "layer": "L1",
186
+ "file": "_02_dimensions.sass",
187
+ "property": "column-gap: var(--space-lg)",
188
+ "description": "Column gap (inline axis) at the lg step — rides var(--space-lg) (generated from $gap-families × $steps in _00_config.sass)",
189
+ "example": "<div class=\"cgap-lg\">"
190
+ },
191
+ {
192
+ "class": ".cgap-xl",
193
+ "kind": "family",
194
+ "layer": "L1",
195
+ "file": "_02_dimensions.sass",
196
+ "property": "column-gap: var(--space-xl)",
197
+ "description": "Column gap (inline axis) at the xl step — rides var(--space-xl) (generated from $gap-families × $steps in _00_config.sass)",
198
+ "example": "<div class=\"cgap-xl\">"
199
+ },
200
+ {
201
+ "class": ".cgap-2xl",
202
+ "kind": "family",
203
+ "layer": "L1",
204
+ "file": "_02_dimensions.sass",
205
+ "property": "column-gap: var(--space-2xl)",
206
+ "description": "Column gap (inline axis) at the 2xl step — rides var(--space-2xl) (generated from $gap-families × $steps in _00_config.sass)",
207
+ "example": "<div class=\"cgap-2xl\">"
208
+ },
209
+ {
210
+ "class": ".cgap-3xl",
211
+ "kind": "family",
212
+ "layer": "L1",
213
+ "file": "_02_dimensions.sass",
214
+ "property": "column-gap: var(--space-3xl)",
215
+ "description": "Column gap (inline axis) at the 3xl step — rides var(--space-3xl) (generated from $gap-families × $steps in _00_config.sass)",
216
+ "example": "<div class=\"cgap-3xl\">"
217
+ },
218
+ {
219
+ "class": ".pad-xs",
220
+ "kind": "family",
221
+ "layer": "L1",
222
+ "file": "_02_dimensions.sass",
223
+ "property": "padding: var(--space-xs)",
224
+ "description": "Padding, all four sides at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
225
+ "example": "<div class=\"pad-xs\">"
226
+ },
227
+ {
228
+ "class": ".pad-sm",
229
+ "kind": "family",
230
+ "layer": "L1",
231
+ "file": "_02_dimensions.sass",
232
+ "property": "padding: var(--space-sm)",
233
+ "description": "Padding, all four sides at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
234
+ "example": "<div class=\"pad-sm\">"
235
+ },
236
+ {
237
+ "class": ".pad-md",
238
+ "kind": "family",
239
+ "layer": "L1",
240
+ "file": "_02_dimensions.sass",
241
+ "property": "padding: var(--space-md)",
242
+ "description": "Padding, all four sides at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
243
+ "example": "<div class=\"pad-md\">"
244
+ },
245
+ {
246
+ "class": ".pad-bs",
247
+ "kind": "family",
248
+ "layer": "L1",
249
+ "file": "_02_dimensions.sass",
250
+ "property": "padding: var(--space-bs)",
251
+ "description": "Padding, all four sides at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
252
+ "example": "<div class=\"pad-bs\">"
253
+ },
254
+ {
255
+ "class": ".pad-lg",
256
+ "kind": "family",
257
+ "layer": "L1",
258
+ "file": "_02_dimensions.sass",
259
+ "property": "padding: var(--space-lg)",
260
+ "description": "Padding, all four sides at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
261
+ "example": "<div class=\"pad-lg\">"
262
+ },
263
+ {
264
+ "class": ".pad-xl",
265
+ "kind": "family",
266
+ "layer": "L1",
267
+ "file": "_02_dimensions.sass",
268
+ "property": "padding: var(--space-xl)",
269
+ "description": "Padding, all four sides at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
270
+ "example": "<div class=\"pad-xl\">"
271
+ },
272
+ {
273
+ "class": ".pad-2xl",
274
+ "kind": "family",
275
+ "layer": "L1",
276
+ "file": "_02_dimensions.sass",
277
+ "property": "padding: var(--space-2xl)",
278
+ "description": "Padding, all four sides at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
279
+ "example": "<div class=\"pad-2xl\">"
280
+ },
281
+ {
282
+ "class": ".pad-3xl",
283
+ "kind": "family",
284
+ "layer": "L1",
285
+ "file": "_02_dimensions.sass",
286
+ "property": "padding: var(--space-3xl)",
287
+ "description": "Padding, all four sides at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
288
+ "example": "<div class=\"pad-3xl\">"
289
+ },
290
+ {
291
+ "class": ".px-xs",
292
+ "kind": "family",
293
+ "layer": "L1",
294
+ "file": "_02_dimensions.sass",
295
+ "property": "padding-inline: var(--space-xs)",
296
+ "description": "Inline (horizontal) padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
297
+ "example": "<div class=\"px-xs\">"
298
+ },
299
+ {
300
+ "class": ".px-sm",
301
+ "kind": "family",
302
+ "layer": "L1",
303
+ "file": "_02_dimensions.sass",
304
+ "property": "padding-inline: var(--space-sm)",
305
+ "description": "Inline (horizontal) padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
306
+ "example": "<div class=\"px-sm\">"
307
+ },
308
+ {
309
+ "class": ".px-md",
310
+ "kind": "family",
311
+ "layer": "L1",
312
+ "file": "_02_dimensions.sass",
313
+ "property": "padding-inline: var(--space-md)",
314
+ "description": "Inline (horizontal) padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
315
+ "example": "<div class=\"px-md\">"
316
+ },
317
+ {
318
+ "class": ".px-bs",
319
+ "kind": "family",
320
+ "layer": "L1",
321
+ "file": "_02_dimensions.sass",
322
+ "property": "padding-inline: var(--space-bs)",
323
+ "description": "Inline (horizontal) padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
324
+ "example": "<div class=\"px-bs\">"
325
+ },
326
+ {
327
+ "class": ".px-lg",
328
+ "kind": "family",
329
+ "layer": "L1",
330
+ "file": "_02_dimensions.sass",
331
+ "property": "padding-inline: var(--space-lg)",
332
+ "description": "Inline (horizontal) padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
333
+ "example": "<div class=\"px-lg\">"
334
+ },
335
+ {
336
+ "class": ".px-xl",
337
+ "kind": "family",
338
+ "layer": "L1",
339
+ "file": "_02_dimensions.sass",
340
+ "property": "padding-inline: var(--space-xl)",
341
+ "description": "Inline (horizontal) padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
342
+ "example": "<div class=\"px-xl\">"
343
+ },
344
+ {
345
+ "class": ".px-2xl",
346
+ "kind": "family",
347
+ "layer": "L1",
348
+ "file": "_02_dimensions.sass",
349
+ "property": "padding-inline: var(--space-2xl)",
350
+ "description": "Inline (horizontal) padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
351
+ "example": "<div class=\"px-2xl\">"
352
+ },
353
+ {
354
+ "class": ".px-3xl",
355
+ "kind": "family",
356
+ "layer": "L1",
357
+ "file": "_02_dimensions.sass",
358
+ "property": "padding-inline: var(--space-3xl)",
359
+ "description": "Inline (horizontal) padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
360
+ "example": "<div class=\"px-3xl\">"
361
+ },
362
+ {
363
+ "class": ".py-xs",
364
+ "kind": "family",
365
+ "layer": "L1",
366
+ "file": "_02_dimensions.sass",
367
+ "property": "padding-block: var(--space-xs)",
368
+ "description": "Block (vertical) padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
369
+ "example": "<div class=\"py-xs\">"
370
+ },
371
+ {
372
+ "class": ".py-sm",
373
+ "kind": "family",
374
+ "layer": "L1",
375
+ "file": "_02_dimensions.sass",
376
+ "property": "padding-block: var(--space-sm)",
377
+ "description": "Block (vertical) padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
378
+ "example": "<div class=\"py-sm\">"
379
+ },
380
+ {
381
+ "class": ".py-md",
382
+ "kind": "family",
383
+ "layer": "L1",
384
+ "file": "_02_dimensions.sass",
385
+ "property": "padding-block: var(--space-md)",
386
+ "description": "Block (vertical) padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
387
+ "example": "<div class=\"py-md\">"
388
+ },
389
+ {
390
+ "class": ".py-bs",
391
+ "kind": "family",
392
+ "layer": "L1",
393
+ "file": "_02_dimensions.sass",
394
+ "property": "padding-block: var(--space-bs)",
395
+ "description": "Block (vertical) padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
396
+ "example": "<div class=\"py-bs\">"
397
+ },
398
+ {
399
+ "class": ".py-lg",
400
+ "kind": "family",
401
+ "layer": "L1",
402
+ "file": "_02_dimensions.sass",
403
+ "property": "padding-block: var(--space-lg)",
404
+ "description": "Block (vertical) padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
405
+ "example": "<div class=\"py-lg\">"
406
+ },
407
+ {
408
+ "class": ".py-xl",
409
+ "kind": "family",
410
+ "layer": "L1",
411
+ "file": "_02_dimensions.sass",
412
+ "property": "padding-block: var(--space-xl)",
413
+ "description": "Block (vertical) padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
414
+ "example": "<div class=\"py-xl\">"
415
+ },
416
+ {
417
+ "class": ".py-2xl",
418
+ "kind": "family",
419
+ "layer": "L1",
420
+ "file": "_02_dimensions.sass",
421
+ "property": "padding-block: var(--space-2xl)",
422
+ "description": "Block (vertical) padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
423
+ "example": "<div class=\"py-2xl\">"
424
+ },
425
+ {
426
+ "class": ".py-3xl",
427
+ "kind": "family",
428
+ "layer": "L1",
429
+ "file": "_02_dimensions.sass",
430
+ "property": "padding-block: var(--space-3xl)",
431
+ "description": "Block (vertical) padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
432
+ "example": "<div class=\"py-3xl\">"
433
+ },
434
+ {
435
+ "class": ".pt-xs",
436
+ "kind": "family",
437
+ "layer": "L1",
438
+ "file": "_02_dimensions.sass",
439
+ "property": "padding-top: var(--space-xs)",
440
+ "description": "Top padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
441
+ "example": "<div class=\"pt-xs\">"
442
+ },
443
+ {
444
+ "class": ".pt-sm",
445
+ "kind": "family",
446
+ "layer": "L1",
447
+ "file": "_02_dimensions.sass",
448
+ "property": "padding-top: var(--space-sm)",
449
+ "description": "Top padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
450
+ "example": "<div class=\"pt-sm\">"
451
+ },
452
+ {
453
+ "class": ".pt-md",
454
+ "kind": "family",
455
+ "layer": "L1",
456
+ "file": "_02_dimensions.sass",
457
+ "property": "padding-top: var(--space-md)",
458
+ "description": "Top padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
459
+ "example": "<div class=\"pt-md\">"
460
+ },
461
+ {
462
+ "class": ".pt-bs",
463
+ "kind": "family",
464
+ "layer": "L1",
465
+ "file": "_02_dimensions.sass",
466
+ "property": "padding-top: var(--space-bs)",
467
+ "description": "Top padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
468
+ "example": "<div class=\"pt-bs\">"
469
+ },
470
+ {
471
+ "class": ".pt-lg",
472
+ "kind": "family",
473
+ "layer": "L1",
474
+ "file": "_02_dimensions.sass",
475
+ "property": "padding-top: var(--space-lg)",
476
+ "description": "Top padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
477
+ "example": "<div class=\"pt-lg\">"
478
+ },
479
+ {
480
+ "class": ".pt-xl",
481
+ "kind": "family",
482
+ "layer": "L1",
483
+ "file": "_02_dimensions.sass",
484
+ "property": "padding-top: var(--space-xl)",
485
+ "description": "Top padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
486
+ "example": "<div class=\"pt-xl\">"
487
+ },
488
+ {
489
+ "class": ".pt-2xl",
490
+ "kind": "family",
491
+ "layer": "L1",
492
+ "file": "_02_dimensions.sass",
493
+ "property": "padding-top: var(--space-2xl)",
494
+ "description": "Top padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
495
+ "example": "<div class=\"pt-2xl\">"
496
+ },
497
+ {
498
+ "class": ".pt-3xl",
499
+ "kind": "family",
500
+ "layer": "L1",
501
+ "file": "_02_dimensions.sass",
502
+ "property": "padding-top: var(--space-3xl)",
503
+ "description": "Top padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
504
+ "example": "<div class=\"pt-3xl\">"
505
+ },
506
+ {
507
+ "class": ".pr-xs",
508
+ "kind": "family",
509
+ "layer": "L1",
510
+ "file": "_02_dimensions.sass",
511
+ "property": "padding-right: var(--space-xs)",
512
+ "description": "Right padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
513
+ "example": "<div class=\"pr-xs\">"
514
+ },
515
+ {
516
+ "class": ".pr-sm",
517
+ "kind": "family",
518
+ "layer": "L1",
519
+ "file": "_02_dimensions.sass",
520
+ "property": "padding-right: var(--space-sm)",
521
+ "description": "Right padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
522
+ "example": "<div class=\"pr-sm\">"
523
+ },
524
+ {
525
+ "class": ".pr-md",
526
+ "kind": "family",
527
+ "layer": "L1",
528
+ "file": "_02_dimensions.sass",
529
+ "property": "padding-right: var(--space-md)",
530
+ "description": "Right padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
531
+ "example": "<div class=\"pr-md\">"
532
+ },
533
+ {
534
+ "class": ".pr-bs",
535
+ "kind": "family",
536
+ "layer": "L1",
537
+ "file": "_02_dimensions.sass",
538
+ "property": "padding-right: var(--space-bs)",
539
+ "description": "Right padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
540
+ "example": "<div class=\"pr-bs\">"
541
+ },
542
+ {
543
+ "class": ".pr-lg",
544
+ "kind": "family",
545
+ "layer": "L1",
546
+ "file": "_02_dimensions.sass",
547
+ "property": "padding-right: var(--space-lg)",
548
+ "description": "Right padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
549
+ "example": "<div class=\"pr-lg\">"
550
+ },
551
+ {
552
+ "class": ".pr-xl",
553
+ "kind": "family",
554
+ "layer": "L1",
555
+ "file": "_02_dimensions.sass",
556
+ "property": "padding-right: var(--space-xl)",
557
+ "description": "Right padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
558
+ "example": "<div class=\"pr-xl\">"
559
+ },
560
+ {
561
+ "class": ".pr-2xl",
562
+ "kind": "family",
563
+ "layer": "L1",
564
+ "file": "_02_dimensions.sass",
565
+ "property": "padding-right: var(--space-2xl)",
566
+ "description": "Right padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
567
+ "example": "<div class=\"pr-2xl\">"
568
+ },
569
+ {
570
+ "class": ".pr-3xl",
571
+ "kind": "family",
572
+ "layer": "L1",
573
+ "file": "_02_dimensions.sass",
574
+ "property": "padding-right: var(--space-3xl)",
575
+ "description": "Right padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
576
+ "example": "<div class=\"pr-3xl\">"
577
+ },
578
+ {
579
+ "class": ".pb-xs",
580
+ "kind": "family",
581
+ "layer": "L1",
582
+ "file": "_02_dimensions.sass",
583
+ "property": "padding-bottom: var(--space-xs)",
584
+ "description": "Bottom padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
585
+ "example": "<div class=\"pb-xs\">"
586
+ },
587
+ {
588
+ "class": ".pb-sm",
589
+ "kind": "family",
590
+ "layer": "L1",
591
+ "file": "_02_dimensions.sass",
592
+ "property": "padding-bottom: var(--space-sm)",
593
+ "description": "Bottom padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
594
+ "example": "<div class=\"pb-sm\">"
595
+ },
596
+ {
597
+ "class": ".pb-md",
598
+ "kind": "family",
599
+ "layer": "L1",
600
+ "file": "_02_dimensions.sass",
601
+ "property": "padding-bottom: var(--space-md)",
602
+ "description": "Bottom padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
603
+ "example": "<div class=\"pb-md\">"
604
+ },
605
+ {
606
+ "class": ".pb-bs",
607
+ "kind": "family",
608
+ "layer": "L1",
609
+ "file": "_02_dimensions.sass",
610
+ "property": "padding-bottom: var(--space-bs)",
611
+ "description": "Bottom padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
612
+ "example": "<div class=\"pb-bs\">"
613
+ },
614
+ {
615
+ "class": ".pb-lg",
616
+ "kind": "family",
617
+ "layer": "L1",
618
+ "file": "_02_dimensions.sass",
619
+ "property": "padding-bottom: var(--space-lg)",
620
+ "description": "Bottom padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
621
+ "example": "<div class=\"pb-lg\">"
622
+ },
623
+ {
624
+ "class": ".pb-xl",
625
+ "kind": "family",
626
+ "layer": "L1",
627
+ "file": "_02_dimensions.sass",
628
+ "property": "padding-bottom: var(--space-xl)",
629
+ "description": "Bottom padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
630
+ "example": "<div class=\"pb-xl\">"
631
+ },
632
+ {
633
+ "class": ".pb-2xl",
634
+ "kind": "family",
635
+ "layer": "L1",
636
+ "file": "_02_dimensions.sass",
637
+ "property": "padding-bottom: var(--space-2xl)",
638
+ "description": "Bottom padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
639
+ "example": "<div class=\"pb-2xl\">"
640
+ },
641
+ {
642
+ "class": ".pb-3xl",
643
+ "kind": "family",
644
+ "layer": "L1",
645
+ "file": "_02_dimensions.sass",
646
+ "property": "padding-bottom: var(--space-3xl)",
647
+ "description": "Bottom padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
648
+ "example": "<div class=\"pb-3xl\">"
649
+ },
650
+ {
651
+ "class": ".pl-xs",
652
+ "kind": "family",
653
+ "layer": "L1",
654
+ "file": "_02_dimensions.sass",
655
+ "property": "padding-left: var(--space-xs)",
656
+ "description": "Left padding at the xs step — rides var(--space-xs) (generated from $pad-families × $steps in _00_config.sass)",
657
+ "example": "<div class=\"pl-xs\">"
658
+ },
659
+ {
660
+ "class": ".pl-sm",
661
+ "kind": "family",
662
+ "layer": "L1",
663
+ "file": "_02_dimensions.sass",
664
+ "property": "padding-left: var(--space-sm)",
665
+ "description": "Left padding at the sm step — rides var(--space-sm) (generated from $pad-families × $steps in _00_config.sass)",
666
+ "example": "<div class=\"pl-sm\">"
667
+ },
668
+ {
669
+ "class": ".pl-md",
670
+ "kind": "family",
671
+ "layer": "L1",
672
+ "file": "_02_dimensions.sass",
673
+ "property": "padding-left: var(--space-md)",
674
+ "description": "Left padding at the md step — rides var(--space-md) (generated from $pad-families × $steps in _00_config.sass)",
675
+ "example": "<div class=\"pl-md\">"
676
+ },
677
+ {
678
+ "class": ".pl-bs",
679
+ "kind": "family",
680
+ "layer": "L1",
681
+ "file": "_02_dimensions.sass",
682
+ "property": "padding-left: var(--space-bs)",
683
+ "description": "Left padding at the bs step — rides var(--space-bs) (generated from $pad-families × $steps in _00_config.sass)",
684
+ "example": "<div class=\"pl-bs\">"
685
+ },
686
+ {
687
+ "class": ".pl-lg",
688
+ "kind": "family",
689
+ "layer": "L1",
690
+ "file": "_02_dimensions.sass",
691
+ "property": "padding-left: var(--space-lg)",
692
+ "description": "Left padding at the lg step — rides var(--space-lg) (generated from $pad-families × $steps in _00_config.sass)",
693
+ "example": "<div class=\"pl-lg\">"
694
+ },
695
+ {
696
+ "class": ".pl-xl",
697
+ "kind": "family",
698
+ "layer": "L1",
699
+ "file": "_02_dimensions.sass",
700
+ "property": "padding-left: var(--space-xl)",
701
+ "description": "Left padding at the xl step — rides var(--space-xl) (generated from $pad-families × $steps in _00_config.sass)",
702
+ "example": "<div class=\"pl-xl\">"
703
+ },
704
+ {
705
+ "class": ".pl-2xl",
706
+ "kind": "family",
707
+ "layer": "L1",
708
+ "file": "_02_dimensions.sass",
709
+ "property": "padding-left: var(--space-2xl)",
710
+ "description": "Left padding at the 2xl step — rides var(--space-2xl) (generated from $pad-families × $steps in _00_config.sass)",
711
+ "example": "<div class=\"pl-2xl\">"
712
+ },
713
+ {
714
+ "class": ".pl-3xl",
715
+ "kind": "family",
716
+ "layer": "L1",
717
+ "file": "_02_dimensions.sass",
718
+ "property": "padding-left: var(--space-3xl)",
719
+ "description": "Left padding at the 3xl step — rides var(--space-3xl) (generated from $pad-families × $steps in _00_config.sass)",
720
+ "example": "<div class=\"pl-3xl\">"
721
+ },
722
+ {
723
+ "class": ".mar-xs",
724
+ "kind": "family",
725
+ "layer": "L1",
726
+ "file": "_02_dimensions.sass",
727
+ "property": "margin: var(--space-xs)",
728
+ "description": "Margin, all four sides at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
729
+ "example": "<div class=\"mar-xs\">"
730
+ },
731
+ {
732
+ "class": ".mar-sm",
733
+ "kind": "family",
734
+ "layer": "L1",
735
+ "file": "_02_dimensions.sass",
736
+ "property": "margin: var(--space-sm)",
737
+ "description": "Margin, all four sides at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
738
+ "example": "<div class=\"mar-sm\">"
739
+ },
740
+ {
741
+ "class": ".mar-md",
742
+ "kind": "family",
743
+ "layer": "L1",
744
+ "file": "_02_dimensions.sass",
745
+ "property": "margin: var(--space-md)",
746
+ "description": "Margin, all four sides at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
747
+ "example": "<div class=\"mar-md\">"
748
+ },
749
+ {
750
+ "class": ".mar-bs",
751
+ "kind": "family",
752
+ "layer": "L1",
753
+ "file": "_02_dimensions.sass",
754
+ "property": "margin: var(--space-bs)",
755
+ "description": "Margin, all four sides at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
756
+ "example": "<div class=\"mar-bs\">"
757
+ },
758
+ {
759
+ "class": ".mar-lg",
760
+ "kind": "family",
761
+ "layer": "L1",
762
+ "file": "_02_dimensions.sass",
763
+ "property": "margin: var(--space-lg)",
764
+ "description": "Margin, all four sides at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
765
+ "example": "<div class=\"mar-lg\">"
766
+ },
767
+ {
768
+ "class": ".mar-xl",
769
+ "kind": "family",
770
+ "layer": "L1",
771
+ "file": "_02_dimensions.sass",
772
+ "property": "margin: var(--space-xl)",
773
+ "description": "Margin, all four sides at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
774
+ "example": "<div class=\"mar-xl\">"
775
+ },
776
+ {
777
+ "class": ".mar-2xl",
778
+ "kind": "family",
779
+ "layer": "L1",
780
+ "file": "_02_dimensions.sass",
781
+ "property": "margin: var(--space-2xl)",
782
+ "description": "Margin, all four sides at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
783
+ "example": "<div class=\"mar-2xl\">"
784
+ },
785
+ {
786
+ "class": ".mar-3xl",
787
+ "kind": "family",
788
+ "layer": "L1",
789
+ "file": "_02_dimensions.sass",
790
+ "property": "margin: var(--space-3xl)",
791
+ "description": "Margin, all four sides at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
792
+ "example": "<div class=\"mar-3xl\">"
793
+ },
794
+ {
795
+ "class": ".mx-xs",
796
+ "kind": "family",
797
+ "layer": "L1",
798
+ "file": "_02_dimensions.sass",
799
+ "property": "margin-inline: var(--space-xs)",
800
+ "description": "Inline (horizontal) margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
801
+ "example": "<div class=\"mx-xs\">"
802
+ },
803
+ {
804
+ "class": ".mx-sm",
805
+ "kind": "family",
806
+ "layer": "L1",
807
+ "file": "_02_dimensions.sass",
808
+ "property": "margin-inline: var(--space-sm)",
809
+ "description": "Inline (horizontal) margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
810
+ "example": "<div class=\"mx-sm\">"
811
+ },
812
+ {
813
+ "class": ".mx-md",
814
+ "kind": "family",
815
+ "layer": "L1",
816
+ "file": "_02_dimensions.sass",
817
+ "property": "margin-inline: var(--space-md)",
818
+ "description": "Inline (horizontal) margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
819
+ "example": "<div class=\"mx-md\">"
820
+ },
821
+ {
822
+ "class": ".mx-bs",
823
+ "kind": "family",
824
+ "layer": "L1",
825
+ "file": "_02_dimensions.sass",
826
+ "property": "margin-inline: var(--space-bs)",
827
+ "description": "Inline (horizontal) margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
828
+ "example": "<div class=\"mx-bs\">"
829
+ },
830
+ {
831
+ "class": ".mx-lg",
832
+ "kind": "family",
833
+ "layer": "L1",
834
+ "file": "_02_dimensions.sass",
835
+ "property": "margin-inline: var(--space-lg)",
836
+ "description": "Inline (horizontal) margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
837
+ "example": "<div class=\"mx-lg\">"
838
+ },
839
+ {
840
+ "class": ".mx-xl",
841
+ "kind": "family",
842
+ "layer": "L1",
843
+ "file": "_02_dimensions.sass",
844
+ "property": "margin-inline: var(--space-xl)",
845
+ "description": "Inline (horizontal) margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
846
+ "example": "<div class=\"mx-xl\">"
847
+ },
848
+ {
849
+ "class": ".mx-2xl",
850
+ "kind": "family",
851
+ "layer": "L1",
852
+ "file": "_02_dimensions.sass",
853
+ "property": "margin-inline: var(--space-2xl)",
854
+ "description": "Inline (horizontal) margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
855
+ "example": "<div class=\"mx-2xl\">"
856
+ },
857
+ {
858
+ "class": ".mx-3xl",
859
+ "kind": "family",
860
+ "layer": "L1",
861
+ "file": "_02_dimensions.sass",
862
+ "property": "margin-inline: var(--space-3xl)",
863
+ "description": "Inline (horizontal) margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
864
+ "example": "<div class=\"mx-3xl\">"
865
+ },
866
+ {
867
+ "class": ".my-xs",
868
+ "kind": "family",
869
+ "layer": "L1",
870
+ "file": "_02_dimensions.sass",
871
+ "property": "margin-block: var(--space-xs)",
872
+ "description": "Block (vertical) margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
873
+ "example": "<div class=\"my-xs\">"
874
+ },
875
+ {
876
+ "class": ".my-sm",
877
+ "kind": "family",
878
+ "layer": "L1",
879
+ "file": "_02_dimensions.sass",
880
+ "property": "margin-block: var(--space-sm)",
881
+ "description": "Block (vertical) margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
882
+ "example": "<div class=\"my-sm\">"
883
+ },
884
+ {
885
+ "class": ".my-md",
886
+ "kind": "family",
887
+ "layer": "L1",
888
+ "file": "_02_dimensions.sass",
889
+ "property": "margin-block: var(--space-md)",
890
+ "description": "Block (vertical) margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
891
+ "example": "<div class=\"my-md\">"
892
+ },
893
+ {
894
+ "class": ".my-bs",
895
+ "kind": "family",
896
+ "layer": "L1",
897
+ "file": "_02_dimensions.sass",
898
+ "property": "margin-block: var(--space-bs)",
899
+ "description": "Block (vertical) margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
900
+ "example": "<div class=\"my-bs\">"
901
+ },
902
+ {
903
+ "class": ".my-lg",
904
+ "kind": "family",
905
+ "layer": "L1",
906
+ "file": "_02_dimensions.sass",
907
+ "property": "margin-block: var(--space-lg)",
908
+ "description": "Block (vertical) margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
909
+ "example": "<div class=\"my-lg\">"
910
+ },
911
+ {
912
+ "class": ".my-xl",
913
+ "kind": "family",
914
+ "layer": "L1",
915
+ "file": "_02_dimensions.sass",
916
+ "property": "margin-block: var(--space-xl)",
917
+ "description": "Block (vertical) margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
918
+ "example": "<div class=\"my-xl\">"
919
+ },
920
+ {
921
+ "class": ".my-2xl",
922
+ "kind": "family",
923
+ "layer": "L1",
924
+ "file": "_02_dimensions.sass",
925
+ "property": "margin-block: var(--space-2xl)",
926
+ "description": "Block (vertical) margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
927
+ "example": "<div class=\"my-2xl\">"
928
+ },
929
+ {
930
+ "class": ".my-3xl",
931
+ "kind": "family",
932
+ "layer": "L1",
933
+ "file": "_02_dimensions.sass",
934
+ "property": "margin-block: var(--space-3xl)",
935
+ "description": "Block (vertical) margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
936
+ "example": "<div class=\"my-3xl\">"
937
+ },
938
+ {
939
+ "class": ".mt-xs",
940
+ "kind": "family",
941
+ "layer": "L1",
942
+ "file": "_02_dimensions.sass",
943
+ "property": "margin-top: var(--space-xs)",
944
+ "description": "Top margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
945
+ "example": "<div class=\"mt-xs\">"
946
+ },
947
+ {
948
+ "class": ".mt-sm",
949
+ "kind": "family",
950
+ "layer": "L1",
951
+ "file": "_02_dimensions.sass",
952
+ "property": "margin-top: var(--space-sm)",
953
+ "description": "Top margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
954
+ "example": "<div class=\"mt-sm\">"
955
+ },
956
+ {
957
+ "class": ".mt-md",
958
+ "kind": "family",
959
+ "layer": "L1",
960
+ "file": "_02_dimensions.sass",
961
+ "property": "margin-top: var(--space-md)",
962
+ "description": "Top margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
963
+ "example": "<div class=\"mt-md\">"
964
+ },
965
+ {
966
+ "class": ".mt-bs",
967
+ "kind": "family",
968
+ "layer": "L1",
969
+ "file": "_02_dimensions.sass",
970
+ "property": "margin-top: var(--space-bs)",
971
+ "description": "Top margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
972
+ "example": "<div class=\"mt-bs\">"
973
+ },
974
+ {
975
+ "class": ".mt-lg",
976
+ "kind": "family",
977
+ "layer": "L1",
978
+ "file": "_02_dimensions.sass",
979
+ "property": "margin-top: var(--space-lg)",
980
+ "description": "Top margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
981
+ "example": "<div class=\"mt-lg\">"
982
+ },
983
+ {
984
+ "class": ".mt-xl",
985
+ "kind": "family",
986
+ "layer": "L1",
987
+ "file": "_02_dimensions.sass",
988
+ "property": "margin-top: var(--space-xl)",
989
+ "description": "Top margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
990
+ "example": "<div class=\"mt-xl\">"
991
+ },
992
+ {
993
+ "class": ".mt-2xl",
994
+ "kind": "family",
995
+ "layer": "L1",
996
+ "file": "_02_dimensions.sass",
997
+ "property": "margin-top: var(--space-2xl)",
998
+ "description": "Top margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
999
+ "example": "<div class=\"mt-2xl\">"
1000
+ },
1001
+ {
1002
+ "class": ".mt-3xl",
1003
+ "kind": "family",
1004
+ "layer": "L1",
1005
+ "file": "_02_dimensions.sass",
1006
+ "property": "margin-top: var(--space-3xl)",
1007
+ "description": "Top margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
1008
+ "example": "<div class=\"mt-3xl\">"
1009
+ },
1010
+ {
1011
+ "class": ".mr-xs",
1012
+ "kind": "family",
1013
+ "layer": "L1",
1014
+ "file": "_02_dimensions.sass",
1015
+ "property": "margin-right: var(--space-xs)",
1016
+ "description": "Right margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
1017
+ "example": "<div class=\"mr-xs\">"
1018
+ },
1019
+ {
1020
+ "class": ".mr-sm",
1021
+ "kind": "family",
1022
+ "layer": "L1",
1023
+ "file": "_02_dimensions.sass",
1024
+ "property": "margin-right: var(--space-sm)",
1025
+ "description": "Right margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
1026
+ "example": "<div class=\"mr-sm\">"
1027
+ },
1028
+ {
1029
+ "class": ".mr-md",
1030
+ "kind": "family",
1031
+ "layer": "L1",
1032
+ "file": "_02_dimensions.sass",
1033
+ "property": "margin-right: var(--space-md)",
1034
+ "description": "Right margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
1035
+ "example": "<div class=\"mr-md\">"
1036
+ },
1037
+ {
1038
+ "class": ".mr-bs",
1039
+ "kind": "family",
1040
+ "layer": "L1",
1041
+ "file": "_02_dimensions.sass",
1042
+ "property": "margin-right: var(--space-bs)",
1043
+ "description": "Right margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
1044
+ "example": "<div class=\"mr-bs\">"
1045
+ },
1046
+ {
1047
+ "class": ".mr-lg",
1048
+ "kind": "family",
1049
+ "layer": "L1",
1050
+ "file": "_02_dimensions.sass",
1051
+ "property": "margin-right: var(--space-lg)",
1052
+ "description": "Right margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
1053
+ "example": "<div class=\"mr-lg\">"
1054
+ },
1055
+ {
1056
+ "class": ".mr-xl",
1057
+ "kind": "family",
1058
+ "layer": "L1",
1059
+ "file": "_02_dimensions.sass",
1060
+ "property": "margin-right: var(--space-xl)",
1061
+ "description": "Right margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
1062
+ "example": "<div class=\"mr-xl\">"
1063
+ },
1064
+ {
1065
+ "class": ".mr-2xl",
1066
+ "kind": "family",
1067
+ "layer": "L1",
1068
+ "file": "_02_dimensions.sass",
1069
+ "property": "margin-right: var(--space-2xl)",
1070
+ "description": "Right margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
1071
+ "example": "<div class=\"mr-2xl\">"
1072
+ },
1073
+ {
1074
+ "class": ".mr-3xl",
1075
+ "kind": "family",
1076
+ "layer": "L1",
1077
+ "file": "_02_dimensions.sass",
1078
+ "property": "margin-right: var(--space-3xl)",
1079
+ "description": "Right margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
1080
+ "example": "<div class=\"mr-3xl\">"
1081
+ },
1082
+ {
1083
+ "class": ".mb-xs",
1084
+ "kind": "family",
1085
+ "layer": "L1",
1086
+ "file": "_02_dimensions.sass",
1087
+ "property": "margin-bottom: var(--space-xs)",
1088
+ "description": "Bottom margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
1089
+ "example": "<div class=\"mb-xs\">"
1090
+ },
1091
+ {
1092
+ "class": ".mb-sm",
1093
+ "kind": "family",
1094
+ "layer": "L1",
1095
+ "file": "_02_dimensions.sass",
1096
+ "property": "margin-bottom: var(--space-sm)",
1097
+ "description": "Bottom margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
1098
+ "example": "<div class=\"mb-sm\">"
1099
+ },
1100
+ {
1101
+ "class": ".mb-md",
1102
+ "kind": "family",
1103
+ "layer": "L1",
1104
+ "file": "_02_dimensions.sass",
1105
+ "property": "margin-bottom: var(--space-md)",
1106
+ "description": "Bottom margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
1107
+ "example": "<div class=\"mb-md\">"
1108
+ },
1109
+ {
1110
+ "class": ".mb-bs",
1111
+ "kind": "family",
1112
+ "layer": "L1",
1113
+ "file": "_02_dimensions.sass",
1114
+ "property": "margin-bottom: var(--space-bs)",
1115
+ "description": "Bottom margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
1116
+ "example": "<div class=\"mb-bs\">"
1117
+ },
1118
+ {
1119
+ "class": ".mb-lg",
1120
+ "kind": "family",
1121
+ "layer": "L1",
1122
+ "file": "_02_dimensions.sass",
1123
+ "property": "margin-bottom: var(--space-lg)",
1124
+ "description": "Bottom margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
1125
+ "example": "<div class=\"mb-lg\">"
1126
+ },
1127
+ {
1128
+ "class": ".mb-xl",
1129
+ "kind": "family",
1130
+ "layer": "L1",
1131
+ "file": "_02_dimensions.sass",
1132
+ "property": "margin-bottom: var(--space-xl)",
1133
+ "description": "Bottom margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
1134
+ "example": "<div class=\"mb-xl\">"
1135
+ },
1136
+ {
1137
+ "class": ".mb-2xl",
1138
+ "kind": "family",
1139
+ "layer": "L1",
1140
+ "file": "_02_dimensions.sass",
1141
+ "property": "margin-bottom: var(--space-2xl)",
1142
+ "description": "Bottom margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
1143
+ "example": "<div class=\"mb-2xl\">"
1144
+ },
1145
+ {
1146
+ "class": ".mb-3xl",
1147
+ "kind": "family",
1148
+ "layer": "L1",
1149
+ "file": "_02_dimensions.sass",
1150
+ "property": "margin-bottom: var(--space-3xl)",
1151
+ "description": "Bottom margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
1152
+ "example": "<div class=\"mb-3xl\">"
1153
+ },
1154
+ {
1155
+ "class": ".ml-xs",
1156
+ "kind": "family",
1157
+ "layer": "L1",
1158
+ "file": "_02_dimensions.sass",
1159
+ "property": "margin-left: var(--space-xs)",
1160
+ "description": "Left margin at the xs step — rides var(--space-xs) (generated from $mar-families × $steps in _00_config.sass)",
1161
+ "example": "<div class=\"ml-xs\">"
1162
+ },
1163
+ {
1164
+ "class": ".ml-sm",
1165
+ "kind": "family",
1166
+ "layer": "L1",
1167
+ "file": "_02_dimensions.sass",
1168
+ "property": "margin-left: var(--space-sm)",
1169
+ "description": "Left margin at the sm step — rides var(--space-sm) (generated from $mar-families × $steps in _00_config.sass)",
1170
+ "example": "<div class=\"ml-sm\">"
1171
+ },
1172
+ {
1173
+ "class": ".ml-md",
1174
+ "kind": "family",
1175
+ "layer": "L1",
1176
+ "file": "_02_dimensions.sass",
1177
+ "property": "margin-left: var(--space-md)",
1178
+ "description": "Left margin at the md step — rides var(--space-md) (generated from $mar-families × $steps in _00_config.sass)",
1179
+ "example": "<div class=\"ml-md\">"
1180
+ },
1181
+ {
1182
+ "class": ".ml-bs",
1183
+ "kind": "family",
1184
+ "layer": "L1",
1185
+ "file": "_02_dimensions.sass",
1186
+ "property": "margin-left: var(--space-bs)",
1187
+ "description": "Left margin at the bs step — rides var(--space-bs) (generated from $mar-families × $steps in _00_config.sass)",
1188
+ "example": "<div class=\"ml-bs\">"
1189
+ },
1190
+ {
1191
+ "class": ".ml-lg",
1192
+ "kind": "family",
1193
+ "layer": "L1",
1194
+ "file": "_02_dimensions.sass",
1195
+ "property": "margin-left: var(--space-lg)",
1196
+ "description": "Left margin at the lg step — rides var(--space-lg) (generated from $mar-families × $steps in _00_config.sass)",
1197
+ "example": "<div class=\"ml-lg\">"
1198
+ },
1199
+ {
1200
+ "class": ".ml-xl",
1201
+ "kind": "family",
1202
+ "layer": "L1",
1203
+ "file": "_02_dimensions.sass",
1204
+ "property": "margin-left: var(--space-xl)",
1205
+ "description": "Left margin at the xl step — rides var(--space-xl) (generated from $mar-families × $steps in _00_config.sass)",
1206
+ "example": "<div class=\"ml-xl\">"
1207
+ },
1208
+ {
1209
+ "class": ".ml-2xl",
1210
+ "kind": "family",
1211
+ "layer": "L1",
1212
+ "file": "_02_dimensions.sass",
1213
+ "property": "margin-left: var(--space-2xl)",
1214
+ "description": "Left margin at the 2xl step — rides var(--space-2xl) (generated from $mar-families × $steps in _00_config.sass)",
1215
+ "example": "<div class=\"ml-2xl\">"
1216
+ },
1217
+ {
1218
+ "class": ".ml-3xl",
1219
+ "kind": "family",
1220
+ "layer": "L1",
1221
+ "file": "_02_dimensions.sass",
1222
+ "property": "margin-left: var(--space-3xl)",
1223
+ "description": "Left margin at the 3xl step — rides var(--space-3xl) (generated from $mar-families × $steps in _00_config.sass)",
1224
+ "example": "<div class=\"ml-3xl\">"
1225
+ },
1226
+ {
1227
+ "class": ".frame-16-9",
1228
+ "kind": "family",
1229
+ "layer": "L3",
1230
+ "file": "_05_layouts.sass",
1231
+ "property": "aspect-ratio: 16 / 9; overflow: hidden",
1232
+ "description": "Aspect-ratio media frame (16/9) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1233
+ "example": "<div class=\"frame-16-9\"><img …></div>"
1234
+ },
1235
+ {
1236
+ "class": ".frame-9-16",
1237
+ "kind": "family",
1238
+ "layer": "L3",
1239
+ "file": "_05_layouts.sass",
1240
+ "property": "aspect-ratio: 9 / 16; overflow: hidden",
1241
+ "description": "Aspect-ratio media frame (9/16) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1242
+ "example": "<div class=\"frame-9-16\"><img …></div>"
1243
+ },
1244
+ {
1245
+ "class": ".frame-4-3",
1246
+ "kind": "family",
1247
+ "layer": "L3",
1248
+ "file": "_05_layouts.sass",
1249
+ "property": "aspect-ratio: 4 / 3; overflow: hidden",
1250
+ "description": "Aspect-ratio media frame (4/3) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1251
+ "example": "<div class=\"frame-4-3\"><img …></div>"
1252
+ },
1253
+ {
1254
+ "class": ".frame-3-4",
1255
+ "kind": "family",
1256
+ "layer": "L3",
1257
+ "file": "_05_layouts.sass",
1258
+ "property": "aspect-ratio: 3 / 4; overflow: hidden",
1259
+ "description": "Aspect-ratio media frame (3/4) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1260
+ "example": "<div class=\"frame-3-4\"><img …></div>"
1261
+ },
1262
+ {
1263
+ "class": ".frame-3-2",
1264
+ "kind": "family",
1265
+ "layer": "L3",
1266
+ "file": "_05_layouts.sass",
1267
+ "property": "aspect-ratio: 3 / 2; overflow: hidden",
1268
+ "description": "Aspect-ratio media frame (3/2) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1269
+ "example": "<div class=\"frame-3-2\"><img …></div>"
1270
+ },
1271
+ {
1272
+ "class": ".frame-2-3",
1273
+ "kind": "family",
1274
+ "layer": "L3",
1275
+ "file": "_05_layouts.sass",
1276
+ "property": "aspect-ratio: 2 / 3; overflow: hidden",
1277
+ "description": "Aspect-ratio media frame (2/3) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1278
+ "example": "<div class=\"frame-2-3\"><img …></div>"
1279
+ },
1280
+ {
1281
+ "class": ".frame-1-1",
1282
+ "kind": "family",
1283
+ "layer": "L3",
1284
+ "file": "_05_layouts.sass",
1285
+ "property": "aspect-ratio: 1 / 1; overflow: hidden",
1286
+ "description": "Aspect-ratio media frame (1/1) — img/video/iframe/svg fill and cover (generated from $frame-ratios in _00_config.sass)",
1287
+ "example": "<div class=\"frame-1-1\"><img …></div>"
1288
+ },
1289
+ {
1290
+ "class": ".bdr",
1291
+ "kind": "class",
1292
+ "parent": null,
1293
+ "file": "_01_base.sass",
1294
+ "layer": "L0",
1295
+ "property": "border: 1px solid red",
1296
+ "description": "debug class",
1297
+ "example": "<div class=\"bdr\">…</div>"
1298
+ },
1299
+ {
1300
+ "class": ".mode-wipe",
1301
+ "kind": "class",
1302
+ "parent": null,
1303
+ "file": "_01_base.sass",
1304
+ "layer": "L0",
1305
+ "property": "animation: none",
1306
+ "description": "On <html>: disables view-transition animations while a color-mode wipe runs",
1307
+ "example": "<div class=\"mode-wipe\">…</div>"
1308
+ },
1309
+ {
1310
+ "class": ".radius-xs",
1311
+ "kind": "class",
1312
+ "parent": null,
1313
+ "file": "_02_dimensions.sass",
1314
+ "layer": "L1",
1315
+ "property": "border-radius: var(--radius-xs)",
1316
+ "description": "border-radius: var(--radius-xs)",
1317
+ "example": "<div class=\"radius-xs\">…</div>"
1318
+ },
1319
+ {
1320
+ "class": ".radius-sm",
1321
+ "kind": "class",
1322
+ "parent": null,
1323
+ "file": "_02_dimensions.sass",
1324
+ "layer": "L1",
1325
+ "property": "border-radius: var(--radius-sm)",
1326
+ "description": "border-radius: var(--radius-sm)",
1327
+ "example": "<div class=\"radius-sm\">…</div>"
1328
+ },
1329
+ {
1330
+ "class": ".radius-md",
1331
+ "kind": "class",
1332
+ "parent": null,
1333
+ "file": "_02_dimensions.sass",
1334
+ "layer": "L1",
1335
+ "property": "border-radius: var(--radius-md)",
1336
+ "description": "border-radius: var(--radius-md)",
1337
+ "example": "<div class=\"radius-md\">…</div>"
1338
+ },
1339
+ {
1340
+ "class": ".radius-bs",
1341
+ "kind": "class",
1342
+ "parent": null,
1343
+ "file": "_02_dimensions.sass",
1344
+ "layer": "L1",
1345
+ "property": "border-radius: var(--radius-bs)",
1346
+ "description": "border-radius: var(--radius-bs)",
1347
+ "example": "<div class=\"radius-bs\">…</div>"
1348
+ },
1349
+ {
1350
+ "class": ".radius-lg",
1351
+ "kind": "class",
1352
+ "parent": null,
1353
+ "file": "_02_dimensions.sass",
1354
+ "layer": "L1",
1355
+ "property": "border-radius: var(--radius-lg)",
1356
+ "description": "border-radius: var(--radius-lg)",
1357
+ "example": "<div class=\"radius-lg\">…</div>"
1358
+ },
1359
+ {
1360
+ "class": ".radius-full",
1361
+ "kind": "class",
1362
+ "parent": null,
1363
+ "file": "_02_dimensions.sass",
1364
+ "layer": "L1",
1365
+ "property": "border-radius: var(--radius-full)",
1366
+ "description": "border-radius: var(--radius-full)",
1367
+ "example": "<div class=\"radius-full\">…</div>"
1368
+ },
1369
+ {
1370
+ "class": ".wfull",
1371
+ "kind": "class",
1372
+ "parent": null,
1373
+ "file": "_02_dimensions.sass",
1374
+ "layer": "L1",
1375
+ "property": "width: 100%",
1376
+ "description": "Full width (100%)",
1377
+ "example": "<div class=\"wfull\">…</div>"
1378
+ },
1379
+ {
1380
+ "class": ".hfull",
1381
+ "kind": "class",
1382
+ "parent": null,
1383
+ "file": "_02_dimensions.sass",
1384
+ "layer": "L1",
1385
+ "property": "height: 100%",
1386
+ "description": "Full height (100%)",
1387
+ "example": "<div class=\"hfull\">…</div>"
1388
+ },
1389
+ {
1390
+ "class": ".full",
1391
+ "kind": "class",
1392
+ "parent": null,
1393
+ "file": "_02_dimensions.sass",
1394
+ "layer": "L1",
1395
+ "property": "width: 100%; height: 100%",
1396
+ "description": "Full width and height (100% both axes)",
1397
+ "example": "<div class=\"full\">…</div>"
1398
+ },
1399
+ {
1400
+ "class": ".minw0",
1401
+ "kind": "class",
1402
+ "parent": null,
1403
+ "file": "_02_dimensions.sass",
1404
+ "layer": "L1",
1405
+ "property": "min-width: 0",
1406
+ "description": "Zero min-width — lets a flex child shrink below its content",
1407
+ "example": "<div class=\"minw0\">…</div>"
1408
+ },
1409
+ {
1410
+ "class": ".minh0",
1411
+ "kind": "class",
1412
+ "parent": null,
1413
+ "file": "_02_dimensions.sass",
1414
+ "layer": "L1",
1415
+ "property": "min-height: 0",
1416
+ "description": "Zero min-height — lets a flex child shrink below its content",
1417
+ "example": "<div class=\"minh0\">…</div>"
1418
+ },
1419
+ {
1420
+ "class": ".min0",
1421
+ "kind": "class",
1422
+ "parent": null,
1423
+ "file": "_02_dimensions.sass",
1424
+ "layer": "L1",
1425
+ "property": "min-width: 0; min-height: 0",
1426
+ "description": "Zero min-width and min-height — prevents flex blowouts",
1427
+ "example": "<div class=\"min0\">…</div>"
1428
+ },
1429
+ {
1430
+ "class": ".h-sm",
1431
+ "kind": "class",
1432
+ "parent": null,
1433
+ "file": "_02_dimensions.sass",
1434
+ "layer": "L1",
1435
+ "property": "height: var(--height-sm)",
1436
+ "description": "Control height step sm (var(--height-sm))",
1437
+ "example": "<div class=\"h-sm\">…</div>"
1438
+ },
1439
+ {
1440
+ "class": ".h-md",
1441
+ "kind": "class",
1442
+ "parent": null,
1443
+ "file": "_02_dimensions.sass",
1444
+ "layer": "L1",
1445
+ "property": "height: var(--height-md)",
1446
+ "description": "Control height step md (var(--height-md))",
1447
+ "example": "<div class=\"h-md\">…</div>"
1448
+ },
1449
+ {
1450
+ "class": ".h-bs",
1451
+ "kind": "class",
1452
+ "parent": null,
1453
+ "file": "_02_dimensions.sass",
1454
+ "layer": "L1",
1455
+ "property": "height: var(--height-bs)",
1456
+ "description": "Control height step bs (var(--height-bs))",
1457
+ "example": "<div class=\"h-bs\">…</div>"
1458
+ },
1459
+ {
1460
+ "class": ".h-lg",
1461
+ "kind": "class",
1462
+ "parent": null,
1463
+ "file": "_02_dimensions.sass",
1464
+ "layer": "L1",
1465
+ "property": "height: var(--height-lg)",
1466
+ "description": "Control height step lg (var(--height-lg))",
1467
+ "example": "<div class=\"h-lg\">…</div>"
1468
+ },
1469
+ {
1470
+ "class": ".hfull-vh",
1471
+ "kind": "class",
1472
+ "parent": null,
1473
+ "file": "_02_dimensions.sass",
1474
+ "layer": "L1",
1475
+ "property": "min-height: 100vh",
1476
+ "description": "Viewport heights",
1477
+ "example": "<div class=\"hfull-vh\">…</div>"
1478
+ },
1479
+ {
1480
+ "class": ".hfull-vh-fitted",
1481
+ "kind": "class",
1482
+ "parent": null,
1483
+ "file": "_02_dimensions.sass",
1484
+ "layer": "L1",
1485
+ "property": "min-height: var(--fit-height)",
1486
+ "description": "Viewport height fitted between header and footer (var(--fit-height))",
1487
+ "example": "<div class=\"hfull-vh-fitted\">…</div>"
1488
+ },
1489
+ {
1490
+ "class": ".text-xs",
1491
+ "kind": "class",
1492
+ "parent": null,
1493
+ "file": "_03_typography.sass",
1494
+ "layer": "L5",
1495
+ "property": "font-size: var(--text-xs)",
1496
+ "description": "primitives - they are simply class versions of the text tokens defined in tokens file",
1497
+ "example": "<div class=\"text-xs\">…</div>"
1498
+ },
1499
+ {
1500
+ "class": ".text-sm",
1501
+ "kind": "class",
1502
+ "parent": null,
1503
+ "file": "_03_typography.sass",
1504
+ "layer": "L5",
1505
+ "property": "font-size: var(--text-sm)",
1506
+ "description": "font-size: var(--text-sm)",
1507
+ "example": "<div class=\"text-sm\">…</div>"
1508
+ },
1509
+ {
1510
+ "class": ".text-md",
1511
+ "kind": "class",
1512
+ "parent": null,
1513
+ "file": "_03_typography.sass",
1514
+ "layer": "L5",
1515
+ "property": "font-size: var(--text-md)",
1516
+ "description": "font-size: var(--text-md)",
1517
+ "example": "<div class=\"text-md\">…</div>"
1518
+ },
1519
+ {
1520
+ "class": ".text-bs",
1521
+ "kind": "class",
1522
+ "parent": null,
1523
+ "file": "_03_typography.sass",
1524
+ "layer": "L5",
1525
+ "property": "font-size: var(--text-bs)",
1526
+ "description": "font-size: var(--text-bs)",
1527
+ "example": "<div class=\"text-bs\">…</div>"
1528
+ },
1529
+ {
1530
+ "class": ".text-lg",
1531
+ "kind": "class",
1532
+ "parent": null,
1533
+ "file": "_03_typography.sass",
1534
+ "layer": "L5",
1535
+ "property": "font-size: var(--text-lg)",
1536
+ "description": "font-size: var(--text-lg)",
1537
+ "example": "<div class=\"text-lg\">…</div>"
1538
+ },
1539
+ {
1540
+ "class": ".text-xl",
1541
+ "kind": "class",
1542
+ "parent": null,
1543
+ "file": "_03_typography.sass",
1544
+ "layer": "L5",
1545
+ "property": "font-size: var(--text-xl)",
1546
+ "description": "font-size: var(--text-xl)",
1547
+ "example": "<div class=\"text-xl\">…</div>"
1548
+ },
1549
+ {
1550
+ "class": ".text-2xl",
1551
+ "kind": "class",
1552
+ "parent": null,
1553
+ "file": "_03_typography.sass",
1554
+ "layer": "L5",
1555
+ "property": "font-size: var(--text-2xl)",
1556
+ "description": "font-size: var(--text-2xl)",
1557
+ "example": "<div class=\"text-2xl\">…</div>"
1558
+ },
1559
+ {
1560
+ "class": ".text-3xl",
1561
+ "kind": "class",
1562
+ "parent": null,
1563
+ "file": "_03_typography.sass",
1564
+ "layer": "L5",
1565
+ "property": "font-size: var(--text-3xl)",
1566
+ "description": "font-size: var(--text-3xl)",
1567
+ "example": "<div class=\"text-3xl\">…</div>"
1568
+ },
1569
+ {
1570
+ "class": ".text-4xl",
1571
+ "kind": "class",
1572
+ "parent": null,
1573
+ "file": "_03_typography.sass",
1574
+ "layer": "L5",
1575
+ "property": "font-size: var(--text-4xl)",
1576
+ "description": "font-size: var(--text-4xl)",
1577
+ "example": "<div class=\"text-4xl\">…</div>"
1578
+ },
1579
+ {
1580
+ "class": ".text-5xl",
1581
+ "kind": "class",
1582
+ "parent": null,
1583
+ "file": "_03_typography.sass",
1584
+ "layer": "L5",
1585
+ "property": "font-size: var(--text-5xl)",
1586
+ "description": "font-size: var(--text-5xl)",
1587
+ "example": "<div class=\"text-5xl\">…</div>"
1588
+ },
1589
+ {
1590
+ "class": ".text-body",
1591
+ "kind": "class",
1592
+ "parent": null,
1593
+ "file": "_03_typography.sass",
1594
+ "layer": "L5",
1595
+ "property": "font-size: var(--text-bs); line-height: 1.5",
1596
+ "description": "semantics - definitions of what text to actually use where",
1597
+ "example": "<div class=\"text-body\">…</div>"
1598
+ },
1599
+ {
1600
+ "class": ".text-body-lg",
1601
+ "kind": "class",
1602
+ "parent": null,
1603
+ "file": "_03_typography.sass",
1604
+ "layer": "L5",
1605
+ "property": "font-size: var(--text-lg); line-height: 1.5",
1606
+ "description": "Body copy at large size (line-height 1.5)",
1607
+ "example": "<div class=\"text-body-lg\">…</div>"
1608
+ },
1609
+ {
1610
+ "class": ".text-body-sm",
1611
+ "kind": "class",
1612
+ "parent": null,
1613
+ "file": "_03_typography.sass",
1614
+ "layer": "L5",
1615
+ "property": "font-size: var(--text-sm); line-height: 1.5",
1616
+ "description": "Body copy at small size (line-height 1.5)",
1617
+ "example": "<div class=\"text-body-sm\">…</div>"
1618
+ },
1619
+ {
1620
+ "class": ".page-title",
1621
+ "kind": "class",
1622
+ "parent": null,
1623
+ "file": "_03_typography.sass",
1624
+ "layer": "L5",
1625
+ "property": "font-size: var(--text-3xl); line-height: 1.1; font-weight: 700; …",
1626
+ "description": "Page title — 3xl, 700, tight tracking",
1627
+ "example": "<div class=\"page-title\">…</div>"
1628
+ },
1629
+ {
1630
+ "class": ".page-desc",
1631
+ "kind": "class",
1632
+ "parent": null,
1633
+ "file": "_03_typography.sass",
1634
+ "layer": "L5",
1635
+ "property": "font-size: var(--text-lg); line-height: 1.2",
1636
+ "description": "Page description — lg, airy",
1637
+ "example": "<div class=\"page-desc\">…</div>"
1638
+ },
1639
+ {
1640
+ "class": ".page-heading-xl",
1641
+ "kind": "class",
1642
+ "parent": null,
1643
+ "file": "_03_typography.sass",
1644
+ "layer": "L5",
1645
+ "property": "font-size: var(--text-xl); line-height: 1.1; font-weight: 600; …",
1646
+ "description": "Page heading, xl rung — 600, tight tracking",
1647
+ "example": "<div class=\"page-heading-xl\">…</div>"
1648
+ },
1649
+ {
1650
+ "class": ".page-heading-lg",
1651
+ "kind": "class",
1652
+ "parent": null,
1653
+ "file": "_03_typography.sass",
1654
+ "layer": "L5",
1655
+ "property": "font-size: var(--text-lg); line-height: 1.1; font-weight: 600; …",
1656
+ "description": "Page heading, lg rung — 600, tight tracking",
1657
+ "example": "<div class=\"page-heading-lg\">…</div>"
1658
+ },
1659
+ {
1660
+ "class": ".page-heading-bs",
1661
+ "kind": "class",
1662
+ "parent": null,
1663
+ "file": "_03_typography.sass",
1664
+ "layer": "L5",
1665
+ "property": "font-size: var(--text-bs); line-height: 1.1; font-weight: 600; …",
1666
+ "description": "Page heading, base rung — 600, tight tracking",
1667
+ "example": "<div class=\"page-heading-bs\">…</div>"
1668
+ },
1669
+ {
1670
+ "class": ".card-title",
1671
+ "kind": "class",
1672
+ "parent": null,
1673
+ "file": "_03_typography.sass",
1674
+ "layer": "L5",
1675
+ "property": "font-size: var(--text-lg); font-weight: 600; line-height: 1.2",
1676
+ "description": "Card title — lg, 600",
1677
+ "example": "<div class=\"card-title\">…</div>"
1678
+ },
1679
+ {
1680
+ "class": ".card-desc",
1681
+ "kind": "class",
1682
+ "parent": null,
1683
+ "file": "_03_typography.sass",
1684
+ "layer": "L5",
1685
+ "property": "font-size: var(--text-md); line-height: 1.2",
1686
+ "description": "Card description — md",
1687
+ "example": "<div class=\"card-desc\">…</div>"
1688
+ },
1689
+ {
1690
+ "class": ".breadcrumb-link",
1691
+ "kind": "class",
1692
+ "parent": null,
1693
+ "file": "_03_typography.sass",
1694
+ "layer": "L5",
1695
+ "property": "color: var(--text-muted); font-size: var(--text-xs); text-transform: uppercase",
1696
+ "description": "Breadcrumb link — muted, uppercased, theme color on hover",
1697
+ "example": "<div class=\"breadcrumb-link\">…</div>"
1698
+ },
1699
+ {
1700
+ "class": ".breadcrumb-spacer",
1701
+ "kind": "class",
1702
+ "parent": null,
1703
+ "file": "_03_typography.sass",
1704
+ "layer": "L5",
1705
+ "property": "color: var(--text-muted); font-size: var(--text-xs); text-transform: uppercase",
1706
+ "description": "Breadcrumb spacer (non-link segment, same type treatment)",
1707
+ "example": "<div class=\"breadcrumb-spacer\">…</div>"
1708
+ },
1709
+ {
1710
+ "class": ".breadcrumb",
1711
+ "kind": "class",
1712
+ "parent": null,
1713
+ "file": "_03_typography.sass",
1714
+ "layer": "L5",
1715
+ "property": "display: flex; justify-content: flex-start; margin-left: -0.5rem",
1716
+ "description": "Breadcrumb rail (flex, offset -0.5rem)",
1717
+ "example": "<div class=\"breadcrumb\">…</div>"
1718
+ },
1719
+ {
1720
+ "class": ".nav-link",
1721
+ "kind": "class",
1722
+ "parent": null,
1723
+ "file": "_03_typography.sass",
1724
+ "layer": "L5",
1725
+ "property": "font-size: var(--text-md); line-height: 1.2",
1726
+ "description": "navigation text in headers, sidebars, etc.",
1727
+ "example": "<div class=\"nav-link\">…</div>"
1728
+ },
1729
+ {
1730
+ "class": ".nav-link-sm",
1731
+ "kind": "class",
1732
+ "parent": null,
1733
+ "file": "_03_typography.sass",
1734
+ "layer": "L5",
1735
+ "property": "font-size: var(--text-sm); line-height: 1.2",
1736
+ "description": "Nav link type, small rung",
1737
+ "example": "<div class=\"nav-link-sm\">…</div>"
1738
+ },
1739
+ {
1740
+ "class": ".nav-header",
1741
+ "kind": "class",
1742
+ "parent": null,
1743
+ "file": "_03_typography.sass",
1744
+ "layer": "L5",
1745
+ "property": "font-size: var(--text-sm); line-height: 1.1; font-weight: 500; …",
1746
+ "description": "Nav group header — sm, 500, padded",
1747
+ "example": "<div class=\"nav-header\">…</div>"
1748
+ },
1749
+ {
1750
+ "class": ".header-nav",
1751
+ "kind": "class",
1752
+ "parent": null,
1753
+ "file": "_03_typography.sass",
1754
+ "layer": "L5",
1755
+ "property": "",
1756
+ "description": "Header nav block — uppercased md links, theme color on hover",
1757
+ "example": "<div class=\"header-nav\">…</div>"
1758
+ },
1759
+ {
1760
+ "class": ".lh11",
1761
+ "kind": "class",
1762
+ "parent": null,
1763
+ "file": "_03_typography.sass",
1764
+ "layer": "L5",
1765
+ "property": "line-height: 1.1",
1766
+ "description": "line height modifiers",
1767
+ "example": "<div class=\"lh11\">…</div>"
1768
+ },
1769
+ {
1770
+ "class": ".lh12",
1771
+ "kind": "class",
1772
+ "parent": null,
1773
+ "file": "_03_typography.sass",
1774
+ "layer": "L5",
1775
+ "property": "line-height: 1.2",
1776
+ "description": "line-height: 1.2",
1777
+ "example": "<div class=\"lh12\">…</div>"
1778
+ },
1779
+ {
1780
+ "class": ".lh13",
1781
+ "kind": "class",
1782
+ "parent": null,
1783
+ "file": "_03_typography.sass",
1784
+ "layer": "L5",
1785
+ "property": "line-height: 1.3",
1786
+ "description": "line-height: 1.3",
1787
+ "example": "<div class=\"lh13\">…</div>"
1788
+ },
1789
+ {
1790
+ "class": ".lh14",
1791
+ "kind": "class",
1792
+ "parent": null,
1793
+ "file": "_03_typography.sass",
1794
+ "layer": "L5",
1795
+ "property": "line-height: 1.4",
1796
+ "description": "line-height: 1.4",
1797
+ "example": "<div class=\"lh14\">…</div>"
1798
+ },
1799
+ {
1800
+ "class": ".lh15",
1801
+ "kind": "class",
1802
+ "parent": null,
1803
+ "file": "_03_typography.sass",
1804
+ "layer": "L5",
1805
+ "property": "line-height: 1.5",
1806
+ "description": "line-height: 1.5",
1807
+ "example": "<div class=\"lh15\">…</div>"
1808
+ },
1809
+ {
1810
+ "class": ".lh16",
1811
+ "kind": "class",
1812
+ "parent": null,
1813
+ "file": "_03_typography.sass",
1814
+ "layer": "L5",
1815
+ "property": "line-height: 1.6",
1816
+ "description": "line-height: 1.6",
1817
+ "example": "<div class=\"lh16\">…</div>"
1818
+ },
1819
+ {
1820
+ "class": ".ls-tight-bs",
1821
+ "kind": "class",
1822
+ "parent": null,
1823
+ "file": "_03_typography.sass",
1824
+ "layer": "L5",
1825
+ "property": "letter-spacing: -0.01rem",
1826
+ "description": "letter-spacing modifiers",
1827
+ "example": "<div class=\"ls-tight-bs\">…</div>"
1828
+ },
1829
+ {
1830
+ "class": ".ls-tight-lg",
1831
+ "kind": "class",
1832
+ "parent": null,
1833
+ "file": "_03_typography.sass",
1834
+ "layer": "L5",
1835
+ "property": "letter-spacing: -0.02rem",
1836
+ "description": "letter-spacing: -0.02rem",
1837
+ "example": "<div class=\"ls-tight-lg\">…</div>"
1838
+ },
1839
+ {
1840
+ "class": ".ls-tight-xl",
1841
+ "kind": "class",
1842
+ "parent": null,
1843
+ "file": "_03_typography.sass",
1844
+ "layer": "L5",
1845
+ "property": "letter-spacing: -0.03rem",
1846
+ "description": "letter-spacing: -0.03rem",
1847
+ "example": "<div class=\"ls-tight-xl\">…</div>"
1848
+ },
1849
+ {
1850
+ "class": ".ls-wide-bs",
1851
+ "kind": "class",
1852
+ "parent": null,
1853
+ "file": "_03_typography.sass",
1854
+ "layer": "L5",
1855
+ "property": "letter-spacing: 0.01rem",
1856
+ "description": "letter-spacing: 0.01rem",
1857
+ "example": "<div class=\"ls-wide-bs\">…</div>"
1858
+ },
1859
+ {
1860
+ "class": ".ls-wide-lg",
1861
+ "kind": "class",
1862
+ "parent": null,
1863
+ "file": "_03_typography.sass",
1864
+ "layer": "L5",
1865
+ "property": "letter-spacing: 0.02rem",
1866
+ "description": "letter-spacing: 0.02rem",
1867
+ "example": "<div class=\"ls-wide-lg\">…</div>"
1868
+ },
1869
+ {
1870
+ "class": ".ls-wide-xl",
1871
+ "kind": "class",
1872
+ "parent": null,
1873
+ "file": "_03_typography.sass",
1874
+ "layer": "L5",
1875
+ "property": "letter-spacing: 0.03rem",
1876
+ "description": "letter-spacing: 0.03rem",
1877
+ "example": "<div class=\"ls-wide-xl\">…</div>"
1878
+ },
1879
+ {
1880
+ "class": ".weight-300",
1881
+ "kind": "class",
1882
+ "parent": null,
1883
+ "file": "_03_typography.sass",
1884
+ "layer": "L5",
1885
+ "property": "font-weight: 300",
1886
+ "description": "font weight modifiers",
1887
+ "example": "<div class=\"weight-300\">…</div>"
1888
+ },
1889
+ {
1890
+ "class": ".weight-400",
1891
+ "kind": "class",
1892
+ "parent": null,
1893
+ "file": "_03_typography.sass",
1894
+ "layer": "L5",
1895
+ "property": "font-weight: 400",
1896
+ "description": "font-weight: 400",
1897
+ "example": "<div class=\"weight-400\">…</div>"
1898
+ },
1899
+ {
1900
+ "class": ".weight-500",
1901
+ "kind": "class",
1902
+ "parent": null,
1903
+ "file": "_03_typography.sass",
1904
+ "layer": "L5",
1905
+ "property": "font-weight: 500",
1906
+ "description": "font-weight: 500",
1907
+ "example": "<div class=\"weight-500\">…</div>"
1908
+ },
1909
+ {
1910
+ "class": ".weight-600",
1911
+ "kind": "class",
1912
+ "parent": null,
1913
+ "file": "_03_typography.sass",
1914
+ "layer": "L5",
1915
+ "property": "font-weight: 600",
1916
+ "description": "font-weight: 600",
1917
+ "example": "<div class=\"weight-600\">…</div>"
1918
+ },
1919
+ {
1920
+ "class": ".weight-700",
1921
+ "kind": "class",
1922
+ "parent": null,
1923
+ "file": "_03_typography.sass",
1924
+ "layer": "L5",
1925
+ "property": "font-weight: 700",
1926
+ "description": "font-weight: 700",
1927
+ "example": "<div class=\"weight-700\">…</div>"
1928
+ },
1929
+ {
1930
+ "class": ".weight-800",
1931
+ "kind": "class",
1932
+ "parent": null,
1933
+ "file": "_03_typography.sass",
1934
+ "layer": "L5",
1935
+ "property": "font-weight: 800",
1936
+ "description": "font-weight: 800",
1937
+ "example": "<div class=\"weight-800\">…</div>"
1938
+ },
1939
+ {
1940
+ "class": ".tt-u",
1941
+ "kind": "class",
1942
+ "parent": null,
1943
+ "file": "_03_typography.sass",
1944
+ "layer": "L5",
1945
+ "property": "text-transform: uppercase",
1946
+ "description": "text transformers and aligners",
1947
+ "example": "<div class=\"tt-u\">…</div>"
1948
+ },
1949
+ {
1950
+ "class": ".tt-c",
1951
+ "kind": "class",
1952
+ "parent": null,
1953
+ "file": "_03_typography.sass",
1954
+ "layer": "L5",
1955
+ "property": "text-transform: capitalize",
1956
+ "description": "text-transform: capitalize",
1957
+ "example": "<div class=\"tt-c\">…</div>"
1958
+ },
1959
+ {
1960
+ "class": ".ta-c",
1961
+ "kind": "class",
1962
+ "parent": null,
1963
+ "file": "_03_typography.sass",
1964
+ "layer": "L5",
1965
+ "property": "text-align: center",
1966
+ "description": "text-align: center",
1967
+ "example": "<div class=\"ta-c\">…</div>"
1968
+ },
1969
+ {
1970
+ "class": ".ta-c.mleft",
1971
+ "kind": "modifier",
1972
+ "parent": ".ta-c",
1973
+ "file": "_03_typography.sass",
1974
+ "layer": "L5",
1975
+ "property": "@max-width:1024px: text-align: left",
1976
+ "description": "text-align: left — modifier of .ta-c",
1977
+ "example": "<div class=\"ta-c mleft\">…</div>"
1978
+ },
1979
+ {
1980
+ "class": ".ta-l",
1981
+ "kind": "class",
1982
+ "parent": null,
1983
+ "file": "_03_typography.sass",
1984
+ "layer": "L5",
1985
+ "property": "text-align: left",
1986
+ "description": "text-align: left",
1987
+ "example": "<div class=\"ta-l\">…</div>"
1988
+ },
1989
+ {
1990
+ "class": ".ta-r",
1991
+ "kind": "class",
1992
+ "parent": null,
1993
+ "file": "_03_typography.sass",
1994
+ "layer": "L5",
1995
+ "property": "text-align: right",
1996
+ "description": "text-align: right",
1997
+ "example": "<div class=\"ta-r\">…</div>"
1998
+ },
1999
+ {
2000
+ "class": ".ta-r.mleft",
2001
+ "kind": "modifier",
2002
+ "parent": ".ta-r",
2003
+ "file": "_03_typography.sass",
2004
+ "layer": "L5",
2005
+ "property": "@max-width:1024px: text-align: left",
2006
+ "description": "text-align: left — modifier of .ta-r",
2007
+ "example": "<div class=\"ta-r mleft\">…</div>"
2008
+ },
2009
+ {
2010
+ "class": ".mono",
2011
+ "kind": "class",
2012
+ "parent": null,
2013
+ "file": "_03_typography.sass",
2014
+ "layer": "L5",
2015
+ "property": "font-family: var(--font-mono)",
2016
+ "description": "font usage shorthands",
2017
+ "example": "<div class=\"mono\">…</div>"
2018
+ },
2019
+ {
2020
+ "class": ".sans",
2021
+ "kind": "class",
2022
+ "parent": null,
2023
+ "file": "_03_typography.sass",
2024
+ "layer": "L5",
2025
+ "property": "font-family: var(--font-sans)",
2026
+ "description": "Sans font stack (var(--font-sans))",
2027
+ "example": "<div class=\"sans\">…</div>"
2028
+ },
2029
+ {
2030
+ "class": ".truncate",
2031
+ "kind": "class",
2032
+ "parent": null,
2033
+ "file": "_03_typography.sass",
2034
+ "layer": "L5",
2035
+ "property": "overflow: hidden; white-space: nowrap; text-overflow: ellipsis",
2036
+ "description": "One-line ellipsis truncation",
2037
+ "example": "<div class=\"truncate\">…</div>"
2038
+ },
2039
+ {
2040
+ "class": ".box",
2041
+ "kind": "class",
2042
+ "parent": null,
2043
+ "file": "_04_containers.sass",
2044
+ "layer": "L2",
2045
+ "property": "display: flex; flex-direction: column",
2046
+ "description": "Flex column container — the vertical structural foundation",
2047
+ "example": "<div class=\"box\">…</div>"
2048
+ },
2049
+ {
2050
+ "class": ".box.xcenter",
2051
+ "kind": "modifier",
2052
+ "parent": ".box",
2053
+ "file": "_04_containers.sass",
2054
+ "layer": "L2",
2055
+ "property": "align-items: center; text-align: center",
2056
+ "description": "align-items: center — modifier of .box",
2057
+ "example": "<div class=\"box xcenter\">…</div>"
2058
+ },
2059
+ {
2060
+ "class": ".box.xleft",
2061
+ "kind": "modifier",
2062
+ "parent": ".box",
2063
+ "file": "_04_containers.sass",
2064
+ "layer": "L2",
2065
+ "property": "align-items: flex-start; text-align: left",
2066
+ "description": "align-items: flex-start — modifier of .box",
2067
+ "example": "<div class=\"box xleft\">…</div>"
2068
+ },
2069
+ {
2070
+ "class": ".box.xright",
2071
+ "kind": "modifier",
2072
+ "parent": ".box",
2073
+ "file": "_04_containers.sass",
2074
+ "layer": "L2",
2075
+ "property": "align-items: flex-end; text-align: right",
2076
+ "description": "align-items: flex-end — modifier of .box",
2077
+ "example": "<div class=\"box xright\">…</div>"
2078
+ },
2079
+ {
2080
+ "class": ".box.ycenter",
2081
+ "kind": "modifier",
2082
+ "parent": ".box",
2083
+ "file": "_04_containers.sass",
2084
+ "layer": "L2",
2085
+ "property": "justify-content: center",
2086
+ "description": "justify-content: center — modifier of .box",
2087
+ "example": "<div class=\"box ycenter\">…</div>"
2088
+ },
2089
+ {
2090
+ "class": ".box.ytop",
2091
+ "kind": "modifier",
2092
+ "parent": ".box",
2093
+ "file": "_04_containers.sass",
2094
+ "layer": "L2",
2095
+ "property": "justify-content: flex-start",
2096
+ "description": "justify-content: flex-start — modifier of .box",
2097
+ "example": "<div class=\"box ytop\">…</div>"
2098
+ },
2099
+ {
2100
+ "class": ".box.ybot",
2101
+ "kind": "modifier",
2102
+ "parent": ".box",
2103
+ "file": "_04_containers.sass",
2104
+ "layer": "L2",
2105
+ "property": "justify-content: flex-end",
2106
+ "description": "justify-content: flex-end — modifier of .box",
2107
+ "example": "<div class=\"box ybot\">…</div>"
2108
+ },
2109
+ {
2110
+ "class": ".box.ybetween",
2111
+ "kind": "modifier",
2112
+ "parent": ".box",
2113
+ "file": "_04_containers.sass",
2114
+ "layer": "L2",
2115
+ "property": "justify-content: space-between",
2116
+ "description": "justify-content: space-between — modifier of .box",
2117
+ "example": "<div class=\"box ybetween\">…</div>"
2118
+ },
2119
+ {
2120
+ "class": ".box.yevenly",
2121
+ "kind": "modifier",
2122
+ "parent": ".box",
2123
+ "file": "_04_containers.sass",
2124
+ "layer": "L2",
2125
+ "property": "justify-content: space-evenly",
2126
+ "description": "justify-content: space-evenly — modifier of .box",
2127
+ "example": "<div class=\"box yevenly\">…</div>"
2128
+ },
2129
+ {
2130
+ "class": ".box.yaround",
2131
+ "kind": "modifier",
2132
+ "parent": ".box",
2133
+ "file": "_04_containers.sass",
2134
+ "layer": "L2",
2135
+ "property": "justify-content: space-around",
2136
+ "description": "justify-content: space-around — modifier of .box",
2137
+ "example": "<div class=\"box yaround\">…</div>"
2138
+ },
2139
+ {
2140
+ "class": ".row",
2141
+ "kind": "class",
2142
+ "parent": null,
2143
+ "file": "_04_containers.sass",
2144
+ "layer": "L2",
2145
+ "property": "display: flex; flex-direction: row",
2146
+ "description": "Flex row container — the horizontal structural foundation",
2147
+ "example": "<div class=\"row\">…</div>"
2148
+ },
2149
+ {
2150
+ "class": ".row.xleft",
2151
+ "kind": "modifier",
2152
+ "parent": ".row",
2153
+ "file": "_04_containers.sass",
2154
+ "layer": "L2",
2155
+ "property": "justify-content: flex-start",
2156
+ "description": "justify-content: flex-start — modifier of .row",
2157
+ "example": "<div class=\"row xleft\">…</div>"
2158
+ },
2159
+ {
2160
+ "class": ".row.xcenter",
2161
+ "kind": "modifier",
2162
+ "parent": ".row",
2163
+ "file": "_04_containers.sass",
2164
+ "layer": "L2",
2165
+ "property": "justify-content: center",
2166
+ "description": "justify-content: center — modifier of .row",
2167
+ "example": "<div class=\"row xcenter\">…</div>"
2168
+ },
2169
+ {
2170
+ "class": ".row.xright",
2171
+ "kind": "modifier",
2172
+ "parent": ".row",
2173
+ "file": "_04_containers.sass",
2174
+ "layer": "L2",
2175
+ "property": "justify-content: flex-end",
2176
+ "description": "justify-content: flex-end — modifier of .row",
2177
+ "example": "<div class=\"row xright\">…</div>"
2178
+ },
2179
+ {
2180
+ "class": ".row.xbetween",
2181
+ "kind": "modifier",
2182
+ "parent": ".row",
2183
+ "file": "_04_containers.sass",
2184
+ "layer": "L2",
2185
+ "property": "justify-content: space-between",
2186
+ "description": "justify-content: space-between — modifier of .row",
2187
+ "example": "<div class=\"row xbetween\">…</div>"
2188
+ },
2189
+ {
2190
+ "class": ".row.xevenly",
2191
+ "kind": "modifier",
2192
+ "parent": ".row",
2193
+ "file": "_04_containers.sass",
2194
+ "layer": "L2",
2195
+ "property": "justify-content: space-evenly",
2196
+ "description": "justify-content: space-evenly — modifier of .row",
2197
+ "example": "<div class=\"row xevenly\">…</div>"
2198
+ },
2199
+ {
2200
+ "class": ".row.xaround",
2201
+ "kind": "modifier",
2202
+ "parent": ".row",
2203
+ "file": "_04_containers.sass",
2204
+ "layer": "L2",
2205
+ "property": "justify-content: space-around",
2206
+ "description": "justify-content: space-around — modifier of .row",
2207
+ "example": "<div class=\"row xaround\">…</div>"
2208
+ },
2209
+ {
2210
+ "class": ".row.ycenter",
2211
+ "kind": "modifier",
2212
+ "parent": ".row",
2213
+ "file": "_04_containers.sass",
2214
+ "layer": "L2",
2215
+ "property": "align-items: center",
2216
+ "description": "align-items: center — modifier of .row",
2217
+ "example": "<div class=\"row ycenter\">…</div>"
2218
+ },
2219
+ {
2220
+ "class": ".row.ytop",
2221
+ "kind": "modifier",
2222
+ "parent": ".row",
2223
+ "file": "_04_containers.sass",
2224
+ "layer": "L2",
2225
+ "property": "align-items: flex-start",
2226
+ "description": "align-items: flex-start — modifier of .row",
2227
+ "example": "<div class=\"row ytop\">…</div>"
2228
+ },
2229
+ {
2230
+ "class": ".row.ybot",
2231
+ "kind": "modifier",
2232
+ "parent": ".row",
2233
+ "file": "_04_containers.sass",
2234
+ "layer": "L2",
2235
+ "property": "align-items: flex-end",
2236
+ "description": "align-items: flex-end — modifier of .row",
2237
+ "example": "<div class=\"row ybot\">…</div>"
2238
+ },
2239
+ {
2240
+ "class": ".grid",
2241
+ "kind": "class",
2242
+ "parent": null,
2243
+ "file": "_04_containers.sass",
2244
+ "layer": "L2",
2245
+ "property": "display: grid",
2246
+ "description": "CSS grid container (columns composed via .grid-N / alignment below)",
2247
+ "example": "<div class=\"grid\">…</div>"
2248
+ },
2249
+ {
2250
+ "class": ".grid.center",
2251
+ "kind": "modifier",
2252
+ "parent": ".grid",
2253
+ "file": "_04_containers.sass",
2254
+ "layer": "L2",
2255
+ "property": "place-items: center",
2256
+ "description": "place-items: center — modifier of .grid",
2257
+ "example": "<div class=\"grid center\">…</div>"
2258
+ },
2259
+ {
2260
+ "class": ".grid.xcenter",
2261
+ "kind": "modifier",
2262
+ "parent": ".grid",
2263
+ "file": "_04_containers.sass",
2264
+ "layer": "L2",
2265
+ "property": "justify-items: center; text-align: center",
2266
+ "description": "justify-items: center — modifier of .grid",
2267
+ "example": "<div class=\"grid xcenter\">…</div>"
2268
+ },
2269
+ {
2270
+ "class": ".grid.xleft",
2271
+ "kind": "modifier",
2272
+ "parent": ".grid",
2273
+ "file": "_04_containers.sass",
2274
+ "layer": "L2",
2275
+ "property": "justify-items: start; text-align: left",
2276
+ "description": "justify-items: start — modifier of .grid",
2277
+ "example": "<div class=\"grid xleft\">…</div>"
2278
+ },
2279
+ {
2280
+ "class": ".grid.xright",
2281
+ "kind": "modifier",
2282
+ "parent": ".grid",
2283
+ "file": "_04_containers.sass",
2284
+ "layer": "L2",
2285
+ "property": "justify-items: end; text-align: right",
2286
+ "description": "justify-items: end — modifier of .grid",
2287
+ "example": "<div class=\"grid xright\">…</div>"
2288
+ },
2289
+ {
2290
+ "class": ".grid.xstretch",
2291
+ "kind": "modifier",
2292
+ "parent": ".grid",
2293
+ "file": "_04_containers.sass",
2294
+ "layer": "L2",
2295
+ "property": "justify-items: stretch",
2296
+ "description": "justify-items: stretch — modifier of .grid",
2297
+ "example": "<div class=\"grid xstretch\">…</div>"
2298
+ },
2299
+ {
2300
+ "class": ".grid.ycenter",
2301
+ "kind": "modifier",
2302
+ "parent": ".grid",
2303
+ "file": "_04_containers.sass",
2304
+ "layer": "L2",
2305
+ "property": "align-items: center",
2306
+ "description": "align-items: center — modifier of .grid",
2307
+ "example": "<div class=\"grid ycenter\">…</div>"
2308
+ },
2309
+ {
2310
+ "class": ".grid.ytop",
2311
+ "kind": "modifier",
2312
+ "parent": ".grid",
2313
+ "file": "_04_containers.sass",
2314
+ "layer": "L2",
2315
+ "property": "align-items: start",
2316
+ "description": "align-items: start — modifier of .grid",
2317
+ "example": "<div class=\"grid ytop\">…</div>"
2318
+ },
2319
+ {
2320
+ "class": ".grid.ybot",
2321
+ "kind": "modifier",
2322
+ "parent": ".grid",
2323
+ "file": "_04_containers.sass",
2324
+ "layer": "L2",
2325
+ "property": "align-items: end",
2326
+ "description": "align-items: end — modifier of .grid",
2327
+ "example": "<div class=\"grid ybot\">…</div>"
2328
+ },
2329
+ {
2330
+ "class": ".grid.ystretch",
2331
+ "kind": "modifier",
2332
+ "parent": ".grid",
2333
+ "file": "_04_containers.sass",
2334
+ "layer": "L2",
2335
+ "property": "align-items: stretch",
2336
+ "description": "align-items: stretch — modifier of .grid",
2337
+ "example": "<div class=\"grid ystretch\">…</div>"
2338
+ },
2339
+ {
2340
+ "class": ".grid.xbetween",
2341
+ "kind": "modifier",
2342
+ "parent": ".grid",
2343
+ "file": "_04_containers.sass",
2344
+ "layer": "L2",
2345
+ "property": "justify-content: space-between",
2346
+ "description": "justify-content: space-between — modifier of .grid",
2347
+ "example": "<div class=\"grid xbetween\">…</div>"
2348
+ },
2349
+ {
2350
+ "class": ".grid.xevenly",
2351
+ "kind": "modifier",
2352
+ "parent": ".grid",
2353
+ "file": "_04_containers.sass",
2354
+ "layer": "L2",
2355
+ "property": "justify-content: space-evenly",
2356
+ "description": "justify-content: space-evenly — modifier of .grid",
2357
+ "example": "<div class=\"grid xevenly\">…</div>"
2358
+ },
2359
+ {
2360
+ "class": ".grid.xaround",
2361
+ "kind": "modifier",
2362
+ "parent": ".grid",
2363
+ "file": "_04_containers.sass",
2364
+ "layer": "L2",
2365
+ "property": "justify-content: space-around",
2366
+ "description": "justify-content: space-around — modifier of .grid",
2367
+ "example": "<div class=\"grid xaround\">…</div>"
2368
+ },
2369
+ {
2370
+ "class": ".grid.ybetween",
2371
+ "kind": "modifier",
2372
+ "parent": ".grid",
2373
+ "file": "_04_containers.sass",
2374
+ "layer": "L2",
2375
+ "property": "align-content: space-between",
2376
+ "description": "align-content: space-between — modifier of .grid",
2377
+ "example": "<div class=\"grid ybetween\">…</div>"
2378
+ },
2379
+ {
2380
+ "class": ".grid.yevenly",
2381
+ "kind": "modifier",
2382
+ "parent": ".grid",
2383
+ "file": "_04_containers.sass",
2384
+ "layer": "L2",
2385
+ "property": "align-content: space-evenly",
2386
+ "description": "align-content: space-evenly — modifier of .grid",
2387
+ "example": "<div class=\"grid yevenly\">…</div>"
2388
+ },
2389
+ {
2390
+ "class": ".grid.yaround",
2391
+ "kind": "modifier",
2392
+ "parent": ".grid",
2393
+ "file": "_04_containers.sass",
2394
+ "layer": "L2",
2395
+ "property": "align-content: space-around",
2396
+ "description": "align-content: space-around — modifier of .grid",
2397
+ "example": "<div class=\"grid yaround\">…</div>"
2398
+ },
2399
+ {
2400
+ "class": ".wrap",
2401
+ "kind": "class",
2402
+ "parent": null,
2403
+ "file": "_04_containers.sass",
2404
+ "layer": "L2",
2405
+ "property": "flex-wrap: wrap",
2406
+ "description": "Allow flex wrapping",
2407
+ "example": "<div class=\"wrap\">…</div>"
2408
+ },
2409
+ {
2410
+ "class": ".grow",
2411
+ "kind": "class",
2412
+ "parent": null,
2413
+ "file": "_04_containers.sass",
2414
+ "layer": "L2",
2415
+ "property": "flex: 1 1 0%",
2416
+ "description": "Flex grow — take remaining space (flex: 1 1 0%)",
2417
+ "example": "<div class=\"grow\">…</div>"
2418
+ },
2419
+ {
2420
+ "class": ".shrink-0",
2421
+ "kind": "class",
2422
+ "parent": null,
2423
+ "file": "_04_containers.sass",
2424
+ "layer": "L2",
2425
+ "property": "flex-shrink: 0",
2426
+ "description": "Never shrink below content size",
2427
+ "example": "<div class=\"shrink-0\">…</div>"
2428
+ },
2429
+ {
2430
+ "class": ".relative",
2431
+ "kind": "class",
2432
+ "parent": null,
2433
+ "file": "_04_containers.sass",
2434
+ "layer": "L2",
2435
+ "property": "position: relative",
2436
+ "description": "position: relative (anchor for absolute children)",
2437
+ "example": "<div class=\"relative\">…</div>"
2438
+ },
2439
+ {
2440
+ "class": ".absolute",
2441
+ "kind": "class",
2442
+ "parent": null,
2443
+ "file": "_04_containers.sass",
2444
+ "layer": "L2",
2445
+ "property": "position: absolute",
2446
+ "description": "position: absolute",
2447
+ "example": "<div class=\"absolute\">…</div>"
2448
+ },
2449
+ {
2450
+ "class": ".fixed",
2451
+ "kind": "class",
2452
+ "parent": null,
2453
+ "file": "_04_containers.sass",
2454
+ "layer": "L2",
2455
+ "property": "position: fixed",
2456
+ "description": "position: fixed",
2457
+ "example": "<div class=\"fixed\">…</div>"
2458
+ },
2459
+ {
2460
+ "class": ".sticky",
2461
+ "kind": "class",
2462
+ "parent": null,
2463
+ "file": "_04_containers.sass",
2464
+ "layer": "L2",
2465
+ "property": "position: sticky",
2466
+ "description": "position: sticky",
2467
+ "example": "<div class=\"sticky\">…</div>"
2468
+ },
2469
+ {
2470
+ "class": ".scroll-y",
2471
+ "kind": "class",
2472
+ "parent": null,
2473
+ "file": "_04_containers.sass",
2474
+ "layer": "L2",
2475
+ "property": "overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain",
2476
+ "description": "Vertical scroll inside a bounded height; needs an .h-* or a constraining flex parent",
2477
+ "example": "<div class=\"scroll-y\">…</div>"
2478
+ },
2479
+ {
2480
+ "class": ".scroll-x",
2481
+ "kind": "class",
2482
+ "parent": null,
2483
+ "file": "_04_containers.sass",
2484
+ "layer": "L2",
2485
+ "property": "overflow-x: auto; overflow-y: hidden; overscroll-behavior: contain",
2486
+ "description": "Horizontal scroll inside a bounded width; .reel adds snap points",
2487
+ "example": "<div class=\"scroll-x\">…</div>"
2488
+ },
2489
+ {
2490
+ "class": ".card",
2491
+ "kind": "class",
2492
+ "parent": null,
2493
+ "file": "_04_containers.sass",
2494
+ "layer": "L2",
2495
+ "property": "padding: var(--space-bs); border: 1px solid var(--border); background: var(--bg-panel)",
2496
+ "description": "Panel card: padded, bordered, panel background; arrow svg and footer behaviors included",
2497
+ "example": "<div class=\"card\">…</div>"
2498
+ },
2499
+ {
2500
+ "class": ".arrow",
2501
+ "kind": "child",
2502
+ "parent": ".card",
2503
+ "file": "_04_containers.sass",
2504
+ "layer": "L2",
2505
+ "property": "color: var(--theme-color); transition: transform var(--speed1) var(--transout1)",
2506
+ "description": "color: var(--theme-color) — child of .card",
2507
+ "example": "<div class=\"arrow\">…</div>"
2508
+ },
2509
+ {
2510
+ "class": ".card[data-shape=\"modern\"]",
2511
+ "kind": "variant",
2512
+ "parent": ".card",
2513
+ "file": "_04_containers.sass",
2514
+ "layer": "L2",
2515
+ "property": "border-radius: var(--radius-sm)",
2516
+ "description": "border-radius: var(--radius-sm) — attribute variant of .card",
2517
+ "example": "<div class=\"card\">…</div>"
2518
+ },
2519
+ {
2520
+ "class": ".chip",
2521
+ "kind": "class",
2522
+ "parent": null,
2523
+ "file": "_04_containers.sass",
2524
+ "layer": "L2",
2525
+ "property": "font-size: var(--text-xs); font-weight: 500; letter-spacing: 0.01rem; …",
2526
+ "description": "Small inline label — tag/badge duty (xs type, md radius)",
2527
+ "example": "<div class=\"chip\">…</div>"
2528
+ },
2529
+ {
2530
+ "class": ".prose-section",
2531
+ "kind": "class",
2532
+ "parent": null,
2533
+ "file": "_04_containers.sass",
2534
+ "layer": "L2",
2535
+ "property": "display: flex; flex-direction: column; gap: var(--space-lg)",
2536
+ "description": "Vertical prose section (flex column, lg gap)",
2537
+ "example": "<div class=\"prose-section\">…</div>"
2538
+ },
2539
+ {
2540
+ "class": ".nav-section",
2541
+ "kind": "class",
2542
+ "parent": null,
2543
+ "file": "_04_containers.sass",
2544
+ "layer": "L2",
2545
+ "property": "display: flex; flex-direction: column; gap: var(--space-xs)",
2546
+ "description": "Vertical nav section (flex column, xs gap)",
2547
+ "example": "<div class=\"nav-section\">…</div>"
2548
+ },
2549
+ {
2550
+ "class": ".page-header",
2551
+ "kind": "class",
2552
+ "parent": null,
2553
+ "file": "_04_containers.sass",
2554
+ "layer": "L2",
2555
+ "property": "display: flex; flex-direction: column; padding-bottom: var(--space-2xl); …",
2556
+ "description": "Page header block (flex column, sm gap, 2xl bottom pad)",
2557
+ "example": "<div class=\"page-header\">…</div>"
2558
+ },
2559
+ {
2560
+ "class": ".inputs-wrapper",
2561
+ "kind": "class",
2562
+ "parent": null,
2563
+ "file": "_04_containers.sass",
2564
+ "layer": "L2",
2565
+ "property": "display: flex; gap: var(--space-xs)",
2566
+ "description": "Form field group (flex row, xs gap; labels at sm muted)",
2567
+ "example": "<div class=\"inputs-wrapper\">…</div>"
2568
+ },
2569
+ {
2570
+ "class": ".checkbox-wrapper",
2571
+ "kind": "class",
2572
+ "parent": null,
2573
+ "file": "_04_containers.sass",
2574
+ "layer": "L2",
2575
+ "property": "display: flex; align-items: center; gap: var(--space-xs)",
2576
+ "description": "Checkbox row (flex, centered, xs gap; span at sm weight 500)",
2577
+ "example": "<div class=\"checkbox-wrapper\">…</div>"
2578
+ },
2579
+ {
2580
+ "class": ".grid-1",
2581
+ "kind": "class",
2582
+ "parent": null,
2583
+ "file": "_05_layouts.sass",
2584
+ "layer": "L3",
2585
+ "property": "display: grid; grid-template-columns: repeat(1, minmax(0, 1fr))",
2586
+ "description": "Gridding golden rules: exactly 3 items → 3→1, never 2+1; count 4 or a",
2587
+ "example": "<div class=\"grid-1\">…</div>"
2588
+ },
2589
+ {
2590
+ "class": ".grid-2",
2591
+ "kind": "class",
2592
+ "parent": null,
2593
+ "file": "_05_layouts.sass",
2594
+ "layer": "L3",
2595
+ "property": "display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)) · @min-width:1025px: grid-template-columns: repeat(2, minmax(0, 1fr))",
2596
+ "description": "Responsive 2-column grid: 1 → 2 columns at 1025px",
2597
+ "example": "<div class=\"grid-2\">…</div>"
2598
+ },
2599
+ {
2600
+ "class": ".grid-3",
2601
+ "kind": "class",
2602
+ "parent": null,
2603
+ "file": "_05_layouts.sass",
2604
+ "layer": "L3",
2605
+ "property": "display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)) · @min-width:1025px: grid-template-columns: repeat(3, minmax(0, 1fr))",
2606
+ "description": "Responsive 3-column grid: 1 → 3 columns at 1025px (3→1 golden rule)",
2607
+ "example": "<div class=\"grid-3\">…</div>"
2608
+ },
2609
+ {
2610
+ "class": ".grid-4",
2611
+ "kind": "class",
2612
+ "parent": null,
2613
+ "file": "_05_layouts.sass",
2614
+ "layer": "L3",
2615
+ "property": "display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)) · @min-width:1025px: grid-template-columns: repeat(2, minmax(0, 1fr)) · @min-width:1281px: grid-templ…",
2616
+ "description": "Responsive 4-column grid: 1 → 2 → 4 columns (never 3+1)",
2617
+ "example": "<div class=\"grid-4\">…</div>"
2618
+ },
2619
+ {
2620
+ "class": ".grid-6",
2621
+ "kind": "class",
2622
+ "parent": null,
2623
+ "file": "_05_layouts.sass",
2624
+ "layer": "L3",
2625
+ "property": "display: grid; grid-template-columns: repeat(1, minmax(0, 1fr)) · @min-width:1025px: grid-template-columns: repeat(3, minmax(0, 1fr)) · @min-width:1281px: grid-templ…",
2626
+ "description": "Responsive 6-column grid: 1 → 3 → 6 columns (both golden rules hold)",
2627
+ "example": "<div class=\"grid-6\">…</div>"
2628
+ },
2629
+ {
2630
+ "class": ".cspan-1",
2631
+ "kind": "class",
2632
+ "parent": null,
2633
+ "file": "_05_layouts.sass",
2634
+ "layer": "L3",
2635
+ "property": "grid-column: span 1",
2636
+ "description": "Span 1 grid column",
2637
+ "example": "<div class=\"cspan-1\">…</div>"
2638
+ },
2639
+ {
2640
+ "class": ".cspan-2",
2641
+ "kind": "class",
2642
+ "parent": null,
2643
+ "file": "_05_layouts.sass",
2644
+ "layer": "L3",
2645
+ "property": "grid-column: span 2",
2646
+ "description": "Span 2 grid columns",
2647
+ "example": "<div class=\"cspan-2\">…</div>"
2648
+ },
2649
+ {
2650
+ "class": ".cspan-3",
2651
+ "kind": "class",
2652
+ "parent": null,
2653
+ "file": "_05_layouts.sass",
2654
+ "layer": "L3",
2655
+ "property": "grid-column: span 3",
2656
+ "description": "Span 3 grid columns",
2657
+ "example": "<div class=\"cspan-3\">…</div>"
2658
+ },
2659
+ {
2660
+ "class": ".cspan-4",
2661
+ "kind": "class",
2662
+ "parent": null,
2663
+ "file": "_05_layouts.sass",
2664
+ "layer": "L3",
2665
+ "property": "grid-column: span 4",
2666
+ "description": "Span 4 grid columns",
2667
+ "example": "<div class=\"cspan-4\">…</div>"
2668
+ },
2669
+ {
2670
+ "class": ".cspan-5",
2671
+ "kind": "class",
2672
+ "parent": null,
2673
+ "file": "_05_layouts.sass",
2674
+ "layer": "L3",
2675
+ "property": "grid-column: span 5",
2676
+ "description": "Span 5 grid columns",
2677
+ "example": "<div class=\"cspan-5\">…</div>"
2678
+ },
2679
+ {
2680
+ "class": ".cspan-6",
2681
+ "kind": "class",
2682
+ "parent": null,
2683
+ "file": "_05_layouts.sass",
2684
+ "layer": "L3",
2685
+ "property": "grid-column: span 6",
2686
+ "description": "Span 6 grid columns",
2687
+ "example": "<div class=\"cspan-6\">…</div>"
2688
+ },
2689
+ {
2690
+ "class": ".cspan-7",
2691
+ "kind": "class",
2692
+ "parent": null,
2693
+ "file": "_05_layouts.sass",
2694
+ "layer": "L3",
2695
+ "property": "grid-column: span 7",
2696
+ "description": "Span 7 grid columns",
2697
+ "example": "<div class=\"cspan-7\">…</div>"
2698
+ },
2699
+ {
2700
+ "class": ".cspan-8",
2701
+ "kind": "class",
2702
+ "parent": null,
2703
+ "file": "_05_layouts.sass",
2704
+ "layer": "L3",
2705
+ "property": "grid-column: span 8",
2706
+ "description": "Span 8 grid columns",
2707
+ "example": "<div class=\"cspan-8\">…</div>"
2708
+ },
2709
+ {
2710
+ "class": ".card-grid",
2711
+ "kind": "class",
2712
+ "parent": null,
2713
+ "file": "_05_layouts.sass",
2714
+ "layer": "L3",
2715
+ "property": "display: grid; grid-template-columns: repeat(auto-fit, minmax(min(var(--card-min), 1…",
2716
+ "description": "Auto-fit repeatable cards — column count negotiable, min track from config.",
2717
+ "example": "<div class=\"card-grid\">…</div>"
2718
+ },
2719
+ {
2720
+ "class": ".prose",
2721
+ "kind": "class",
2722
+ "parent": null,
2723
+ "file": "_05_layouts.sass",
2724
+ "layer": "L3",
2725
+ "property": "max-width: var(--prose-clamp); margin-inline: auto; display: flex; …",
2726
+ "description": "Prose — the reading measure (≤ 760px) + typographic rhythm (rhythm authored).",
2727
+ "example": "<div class=\"prose\">…</div>"
2728
+ },
2729
+ {
2730
+ "class": ".reel",
2731
+ "kind": "class",
2732
+ "parent": null,
2733
+ "file": "_05_layouts.sass",
2734
+ "layer": "L3",
2735
+ "property": "display: flex; flex-direction: row; overflow-x: auto; …",
2736
+ "description": "Reel — the human-driven scroll-snap rail (filmstrip). Open for carousel duty.",
2737
+ "example": "<div class=\"reel\">…</div>"
2738
+ },
2739
+ {
2740
+ "class": ".get",
2741
+ "kind": "class",
2742
+ "parent": null,
2743
+ "file": "_06_shells.sass",
2744
+ "layer": "L4",
2745
+ "property": "",
2746
+ "description": ".get rule",
2747
+ "example": "<div class=\"get\">…</div>"
2748
+ },
2749
+ {
2750
+ "class": ".app-shell",
2751
+ "kind": "class",
2752
+ "parent": null,
2753
+ "file": "_06_shells.sass",
2754
+ "layer": "L4",
2755
+ "property": "display: flex; flex-direction: column; position: relative; …",
2756
+ "description": "Application shell root — flex column, 100vh, hosts header/main/footer and the drawer state",
2757
+ "example": "<div class=\"app-shell\">…</div>"
2758
+ },
2759
+ {
2760
+ "class": ".app-header",
2761
+ "kind": "class",
2762
+ "parent": null,
2763
+ "file": "_06_shells.sass",
2764
+ "layer": "L4",
2765
+ "property": "display: flex; flex-direction: row; align-items: center; …",
2766
+ "description": "Sticky application header (var(--header-height))",
2767
+ "example": "<div class=\"app-header\">…</div>"
2768
+ },
2769
+ {
2770
+ "class": ".app-header.clamped",
2771
+ "kind": "modifier",
2772
+ "parent": ".app-header",
2773
+ "file": "_06_shells.sass",
2774
+ "layer": "L4",
2775
+ "property": "width: var(--content-clamp); margin-inline: auto",
2776
+ "description": "width: var(--content-clamp) — modifier of .app-header",
2777
+ "example": "<div class=\"app-header clamped\">…</div>"
2778
+ },
2779
+ {
2780
+ "class": ".app-main",
2781
+ "kind": "class",
2782
+ "parent": null,
2783
+ "file": "_06_shells.sass",
2784
+ "layer": "L4",
2785
+ "property": "flex: 1 1 0%; min-width: 0; min-height: calc(100dvh - var(--fit-height)); …",
2786
+ "description": "Main region between header and footer — flex row, fitted to 100dvh minus chrome",
2787
+ "example": "<div class=\"app-main\">…</div>"
2788
+ },
2789
+ {
2790
+ "class": ".app-main.clamped",
2791
+ "kind": "modifier",
2792
+ "parent": ".app-main",
2793
+ "file": "_06_shells.sass",
2794
+ "layer": "L4",
2795
+ "property": "width: var(--content-clamp); margin-inline: auto",
2796
+ "description": "width: var(--content-clamp) — modifier of .app-main",
2797
+ "example": "<div class=\"app-main clamped\">…</div>"
2798
+ },
2799
+ {
2800
+ "class": ".main-section",
2801
+ "kind": "class",
2802
+ "parent": null,
2803
+ "file": "_06_shells.sass",
2804
+ "layer": "L4",
2805
+ "property": "flex: 1 1 0%; min-width: 0",
2806
+ "description": "Primary content column inside .app-main (flex: 1, min-width: 0)",
2807
+ "example": "<div class=\"main-section\">…</div>"
2808
+ },
2809
+ {
2810
+ "class": ".sidebar-left",
2811
+ "kind": "class",
2812
+ "parent": null,
2813
+ "file": "_06_shells.sass",
2814
+ "layer": "L4",
2815
+ "property": "display: none; flex-shrink: 0; position: sticky; …",
2816
+ "description": "Left = nav: visible ≥ lg; below, .open on .app-shell resurrects it as an",
2817
+ "example": "<div class=\"sidebar-left\">…</div>"
2818
+ },
2819
+ {
2820
+ "class": ".sidebar-right",
2821
+ "kind": "class",
2822
+ "parent": null,
2823
+ "file": "_06_shells.sass",
2824
+ "layer": "L4",
2825
+ "property": "display: none; flex-shrink: 0; position: sticky; …",
2826
+ "description": "Left = nav: visible ≥ lg; below, .open on .app-shell resurrects it as an",
2827
+ "example": "<div class=\"sidebar-right\">…</div>"
2828
+ },
2829
+ {
2830
+ "class": ".app-shell.open .sidebar-left",
2831
+ "kind": "compound",
2832
+ "parent": null,
2833
+ "file": "_06_shells.sass",
2834
+ "layer": "L4",
2835
+ "property": "display: block; position: fixed; left: 0; …",
2836
+ "description": "display: block — combination rule (app-shellopen sidebar-left)",
2837
+ "example": "<div class=\"app-shell open\"><div class=\"sidebar-left\">…</div></div>"
2838
+ },
2839
+ {
2840
+ "class": ".app-footer",
2841
+ "kind": "class",
2842
+ "parent": null,
2843
+ "file": "_06_shells.sass",
2844
+ "layer": "L4",
2845
+ "property": "display: flex; flex-direction: row; align-items: center; …",
2846
+ "description": "Application footer (var(--footer-height))",
2847
+ "example": "<div class=\"app-footer\">…</div>"
2848
+ },
2849
+ {
2850
+ "class": ".content-section",
2851
+ "kind": "class",
2852
+ "parent": null,
2853
+ "file": "_06_shells.sass",
2854
+ "layer": "L4",
2855
+ "property": "width: 100%; padding: var(--space-2xl) 0 · @min-width:769px: padding: var(--space-2xl) var(--space-bs) · @min-width:1025px: padding: var(--space-2xl) var(--space-bs)",
2856
+ "description": "Page content block — responsive padding and narrow width modes",
2857
+ "example": "<div class=\"content-section\">…</div>"
2858
+ },
2859
+ {
2860
+ "class": ".content-section.null",
2861
+ "kind": "modifier",
2862
+ "parent": ".content-section",
2863
+ "file": "_06_shells.sass",
2864
+ "layer": "L4",
2865
+ "property": "padding: 0 var(--space-bs)",
2866
+ "description": "padding: 0 var(--space-bs) — modifier of .content-section",
2867
+ "example": "<div class=\"content-section null\">…</div>"
2868
+ },
2869
+ {
2870
+ "class": ".content-section.narrow-half",
2871
+ "kind": "modifier",
2872
+ "parent": ".content-section",
2873
+ "file": "_06_shells.sass",
2874
+ "layer": "L4",
2875
+ "property": "padding: var(--space-2xl) 0; width: 640px; margin-inline: auto",
2876
+ "description": "padding: var(--space-2xl) 0 — modifier of .content-section",
2877
+ "example": "<div class=\"content-section narrow-half\">…</div>"
2878
+ },
2879
+ {
2880
+ "class": ".content-section.narrow-wide",
2881
+ "kind": "modifier",
2882
+ "parent": ".content-section",
2883
+ "file": "_06_shells.sass",
2884
+ "layer": "L4",
2885
+ "property": "padding: var(--space-2xl) 0; width: 720px; margin-inline: auto",
2886
+ "description": "padding: var(--space-2xl) 0 — modifier of .content-section",
2887
+ "example": "<div class=\"content-section narrow-wide\">…</div>"
2888
+ },
2889
+ {
2890
+ "class": ".content-section.narrow-full",
2891
+ "kind": "modifier",
2892
+ "parent": ".content-section",
2893
+ "file": "_06_shells.sass",
2894
+ "layer": "L4",
2895
+ "property": "width: 640px; margin-inline: auto",
2896
+ "description": "width: 640px — modifier of .content-section",
2897
+ "example": "<div class=\"content-section narrow-full\">…</div>"
2898
+ },
2899
+ {
2900
+ "class": ".input",
2901
+ "kind": "class",
2902
+ "parent": null,
2903
+ "file": "_07_interactions.sass",
2904
+ "layer": "L5",
2905
+ "property": "display: block; width: 100%; height: var(--height-lg); …",
2906
+ "description": "Text input — themed field with focus ring",
2907
+ "example": "<div class=\"input\">…</div>"
2908
+ },
2909
+ {
2910
+ "class": ".input.small",
2911
+ "kind": "modifier",
2912
+ "parent": ".input",
2913
+ "file": "_07_interactions.sass",
2914
+ "layer": "L5",
2915
+ "property": "height: var(--height-bs); font-size: var(--text-sm)",
2916
+ "description": "height: var(--height-bs) — modifier of .input",
2917
+ "example": "<div class=\"input small\">…</div>"
2918
+ },
2919
+ {
2920
+ "class": ".select",
2921
+ "kind": "class",
2922
+ "parent": null,
2923
+ "file": "_07_interactions.sass",
2924
+ "layer": "L5",
2925
+ "property": "display: block; width: 100%; height: var(--height-lg); …",
2926
+ "description": "Select dropdown — themed field with chevron and focus ring",
2927
+ "example": "<div class=\"select\">…</div>"
2928
+ },
2929
+ {
2930
+ "class": ".select.small",
2931
+ "kind": "modifier",
2932
+ "parent": ".select",
2933
+ "file": "_07_interactions.sass",
2934
+ "layer": "L5",
2935
+ "property": "height: var(--height-bs); font-size: var(--text-sm)",
2936
+ "description": "height: var(--height-bs) — modifier of .select",
2937
+ "example": "<div class=\"select small\">…</div>"
2938
+ },
2939
+ {
2940
+ "class": ".link",
2941
+ "kind": "class",
2942
+ "parent": null,
2943
+ "file": "_07_interactions.sass",
2944
+ "layer": "L5",
2945
+ "property": "color: var(--theme-color); text-decoration: none; transition: color var(--motionin1)",
2946
+ "description": "Themed link — theme color, alt on hover",
2947
+ "example": "<div class=\"link\">…</div>"
2948
+ },
2949
+ {
2950
+ "class": ".link-plain",
2951
+ "kind": "class",
2952
+ "parent": null,
2953
+ "file": "_07_interactions.sass",
2954
+ "layer": "L5",
2955
+ "property": "color: var(--text-primary); text-decoration: none; transition: color var(--motionin1)",
2956
+ "description": "Plain link — inherits ink, theme color on hover",
2957
+ "example": "<div class=\"link-plain\">…</div>"
2958
+ },
2959
+ {
2960
+ "class": ".link-parent",
2961
+ "kind": "class",
2962
+ "parent": null,
2963
+ "file": "_07_interactions.sass",
2964
+ "layer": "L5",
2965
+ "property": "color: var(--text-primary); text-decoration: none",
2966
+ "description": "Link block — hovers color its .link-title child instead of itself",
2967
+ "example": "<div class=\"link-parent\">…</div>"
2968
+ },
2969
+ {
2970
+ "class": ".link-title",
2971
+ "kind": "child",
2972
+ "parent": ".link-parent",
2973
+ "file": "_07_interactions.sass",
2974
+ "layer": "L5",
2975
+ "property": "transition: color var(--motionin1)",
2976
+ "description": "transition: color var(--motionin1) — child of .link-parent",
2977
+ "example": "<div class=\"link-title\">…</div>"
2978
+ },
2979
+ {
2980
+ "class": "a.nav-link",
2981
+ "kind": "class",
2982
+ "parent": null,
2983
+ "file": "_07_interactions.sass",
2984
+ "layer": "L5",
2985
+ "property": "padding: var(--space-sm); border-radius: var(--radius-sm)",
2986
+ "description": "Interactive form of .nav-link — padded, curved, hover fill",
2987
+ "example": "<a class=\"nav-link\" href=\"…\">…</a>"
2988
+ },
2989
+ {
2990
+ "class": "button",
2991
+ "kind": "element",
2992
+ "parent": null,
2993
+ "file": "_07_interactions.sass",
2994
+ "layer": "L5",
2995
+ "property": "display: flex; align-items: center; justify-content: center; …",
2996
+ "description": "Element base for every button — the quartet root (align, height, focus, disabled states)",
2997
+ "example": "<button>…</button>"
2998
+ },
2999
+ {
3000
+ "class": "button.icon",
3001
+ "kind": "modifier",
3002
+ "parent": "button",
3003
+ "file": "_07_interactions.sass",
3004
+ "layer": "L5",
3005
+ "property": "height: 24px; width: 24px; border: 1px solid transparent; …",
3006
+ "description": "height: 24px — modifier of button",
3007
+ "example": "<button class=\"icon\">…</button>"
3008
+ },
3009
+ {
3010
+ "class": "button.modern",
3011
+ "kind": "modifier",
3012
+ "parent": "button",
3013
+ "file": "_07_interactions.sass",
3014
+ "layer": "L5",
3015
+ "property": "border-radius: var(--space-xs)",
3016
+ "description": "border-radius: var(--space-xs) — modifier of button",
3017
+ "example": "<button class=\"modern\">…</button>"
3018
+ },
3019
+ {
3020
+ "class": "button.primary",
3021
+ "kind": "modifier",
3022
+ "parent": "button",
3023
+ "file": "_07_interactions.sass",
3024
+ "layer": "L5",
3025
+ "property": "background: var(--theme-color)",
3026
+ "description": "background: var(--theme-color) — modifier of button",
3027
+ "example": "<button class=\"primary\">…</button>"
3028
+ },
3029
+ {
3030
+ "class": "button[data-variant=\"primary\"]",
3031
+ "kind": "variant",
3032
+ "parent": "button",
3033
+ "file": "_07_interactions.sass",
3034
+ "layer": "L5",
3035
+ "property": "background: var(--theme-color); color: var(--white-fixed); border: 1px solid var(--theme-color)",
3036
+ "description": "background: var(--theme-color) — attribute variant of button",
3037
+ "example": "<button [data-variant=\"primary\"]>…</button>"
3038
+ },
3039
+ {
3040
+ "class": "button[data-variant=\"secondary\"]",
3041
+ "kind": "variant",
3042
+ "parent": "button",
3043
+ "file": "_07_interactions.sass",
3044
+ "layer": "L5",
3045
+ "property": "background: var(--state-surface); color: var(--text-primary); border: 1px solid var(--border-strong)",
3046
+ "description": "background: var(--state-surface) — attribute variant of button",
3047
+ "example": "<button [data-variant=\"secondary\"]>…</button>"
3048
+ },
3049
+ {
3050
+ "class": "button[data-variant=\"soft\"]",
3051
+ "kind": "variant",
3052
+ "parent": "button",
3053
+ "file": "_07_interactions.sass",
3054
+ "layer": "L5",
3055
+ "property": "background: var(--theme-color-sub); color: var(--white-fixed); border: 1px solid var(--theme-color-sub)",
3056
+ "description": "background: var(--theme-color-sub) — attribute variant of button",
3057
+ "example": "<button [data-variant=\"soft\"]>…</button>"
3058
+ },
3059
+ {
3060
+ "class": "button[data-variant=\"outline\"]",
3061
+ "kind": "variant",
3062
+ "parent": "button",
3063
+ "file": "_07_interactions.sass",
3064
+ "layer": "L5",
3065
+ "property": "background: var(--bg); color: var(--text-primary); border: 1px solid var(--text-primary)",
3066
+ "description": "background: var(--bg) — attribute variant of button",
3067
+ "example": "<button [data-variant=\"outline\"]>…</button>"
3068
+ },
3069
+ {
3070
+ "class": "button[data-variant=\"ghost\"]",
3071
+ "kind": "variant",
3072
+ "parent": "button",
3073
+ "file": "_07_interactions.sass",
3074
+ "layer": "L5",
3075
+ "property": "background: transparent; color: var(--text-primary); border: none",
3076
+ "description": "background: transparent — attribute variant of button",
3077
+ "example": "<button [data-variant=\"ghost\"]>…</button>"
3078
+ },
3079
+ {
3080
+ "class": "button[data-variant=\"link\"]",
3081
+ "kind": "variant",
3082
+ "parent": "button",
3083
+ "file": "_07_interactions.sass",
3084
+ "layer": "L5",
3085
+ "property": "background: transparent; color: var(--theme-color); border: none",
3086
+ "description": "background: transparent — attribute variant of button",
3087
+ "example": "<button [data-variant=\"link\"]>…</button>"
3088
+ },
3089
+ {
3090
+ "class": "button[data-variant=\"destructive\"]",
3091
+ "kind": "variant",
3092
+ "parent": "button",
3093
+ "file": "_07_interactions.sass",
3094
+ "layer": "L5",
3095
+ "property": "background: var(--danger); color: var(--white-fixed); border: 1px solid var(--danger)",
3096
+ "description": "background: var(--danger) — attribute variant of button",
3097
+ "example": "<button [data-variant=\"destructive\"]>…</button>"
3098
+ },
3099
+ {
3100
+ "class": "button[data-shape=\"modern\"]",
3101
+ "kind": "variant",
3102
+ "parent": "button",
3103
+ "file": "_07_interactions.sass",
3104
+ "layer": "L5",
3105
+ "property": "border-radius: var(--radius-sm)",
3106
+ "description": "border-radius: var(--radius-sm) — attribute variant of button",
3107
+ "example": "<button [data-shape=\"modern\"]>…</button>"
3108
+ },
3109
+ {
3110
+ "class": "button[data-shape=\"curved\"]",
3111
+ "kind": "variant",
3112
+ "parent": "button",
3113
+ "file": "_07_interactions.sass",
3114
+ "layer": "L5",
3115
+ "property": "border-radius: var(--radius-md)",
3116
+ "description": "border-radius: var(--radius-md) — attribute variant of button",
3117
+ "example": "<button [data-shape=\"curved\"]>…</button>"
3118
+ },
3119
+ {
3120
+ "class": "button[data-shape=\"round\"]",
3121
+ "kind": "variant",
3122
+ "parent": "button",
3123
+ "file": "_07_interactions.sass",
3124
+ "layer": "L5",
3125
+ "property": "border-radius: var(--radius-full)",
3126
+ "description": "border-radius: var(--radius-full) — attribute variant of button",
3127
+ "example": "<button [data-shape=\"round\"]>…</button>"
3128
+ },
3129
+ {
3130
+ "class": "button[data-size=\"sm\"]",
3131
+ "kind": "variant",
3132
+ "parent": "button",
3133
+ "file": "_07_interactions.sass",
3134
+ "layer": "L5",
3135
+ "property": "height: var(--height-sm); font-size: var(--text-sm)",
3136
+ "description": "height: var(--height-sm) — attribute variant of button",
3137
+ "example": "<button [data-size=\"sm\"]>…</button>"
3138
+ },
3139
+ {
3140
+ "class": "button[data-size=\"md\"]",
3141
+ "kind": "variant",
3142
+ "parent": "button",
3143
+ "file": "_07_interactions.sass",
3144
+ "layer": "L5",
3145
+ "property": "height: var(--height-md); font-size: var(--text-md)",
3146
+ "description": "height: var(--height-md) — attribute variant of button",
3147
+ "example": "<button [data-size=\"md\"]>…</button>"
3148
+ },
3149
+ {
3150
+ "class": "button[data-size=\"bs\"]",
3151
+ "kind": "variant",
3152
+ "parent": "button",
3153
+ "file": "_07_interactions.sass",
3154
+ "layer": "L5",
3155
+ "property": "height: var(--height-bs); font-size: var(--text-bs)",
3156
+ "description": "height: var(--height-bs) — attribute variant of button",
3157
+ "example": "<button [data-size=\"bs\"]>…</button>"
3158
+ },
3159
+ {
3160
+ "class": "button[data-size=\"lg\"]",
3161
+ "kind": "variant",
3162
+ "parent": "button",
3163
+ "file": "_07_interactions.sass",
3164
+ "layer": "L5",
3165
+ "property": "height: var(--height-lg); font-size: var(--text-bs)",
3166
+ "description": "height: var(--height-lg) — attribute variant of button",
3167
+ "example": "<button [data-size=\"lg\"]>…</button>"
3168
+ },
3169
+ {
3170
+ "class": "a.primary",
3171
+ "kind": "class",
3172
+ "parent": null,
3173
+ "file": "_07_interactions.sass",
3174
+ "layer": "L5",
3175
+ "property": "background: var(--theme-color); font-size: var(--text-lg); color: var(--white-fixed); …",
3176
+ "description": "Primary call-to-action anchor — theme fill, sm elevation, modern corner optional",
3177
+ "example": "<a class=\"primary\" href=\"…\">…</a>"
3178
+ },
3179
+ {
3180
+ "class": "a.primary.modern",
3181
+ "kind": "modifier",
3182
+ "parent": "a.primary",
3183
+ "file": "_07_interactions.sass",
3184
+ "layer": "L5",
3185
+ "property": "border-radius: var(--space-xs)",
3186
+ "description": "border-radius: var(--space-xs) — modifier of a.primary",
3187
+ "example": "<a class=\"primary modern\" href=\"…\">…</a>"
3188
+ },
3189
+ {
3190
+ "class": "a.outline",
3191
+ "kind": "class",
3192
+ "parent": null,
3193
+ "file": "_07_interactions.sass",
3194
+ "layer": "L5",
3195
+ "property": "background: transparent; font-size: var(--text-lg); color: var(--text-primary); …",
3196
+ "description": "Outline call-to-action anchor — transparent fill, ink border, sm elevation",
3197
+ "example": "<a class=\"outline\" href=\"…\">…</a>"
3198
+ },
3199
+ {
3200
+ "class": "a.outline.modern",
3201
+ "kind": "modifier",
3202
+ "parent": "a.outline",
3203
+ "file": "_07_interactions.sass",
3204
+ "layer": "L5",
3205
+ "property": "border-radius: var(--space-xs)",
3206
+ "description": "border-radius: var(--space-xs) — modifier of a.outline",
3207
+ "example": "<a class=\"outline modern\" href=\"…\">…</a>"
3208
+ },
3209
+ {
3210
+ "class": ".bg",
3211
+ "kind": "class",
3212
+ "parent": null,
3213
+ "file": "_08_visuals.sass",
3214
+ "layer": "L5",
3215
+ "property": "background: var(--bg)",
3216
+ "description": "Bare background — page base fill (var(--bg))",
3217
+ "example": "<div class=\"bg\">…</div>"
3218
+ },
3219
+ {
3220
+ "class": ".surface",
3221
+ "kind": "class",
3222
+ "parent": null,
3223
+ "file": "_08_visuals.sass",
3224
+ "layer": "L5",
3225
+ "property": "background: var(--bg-surface)",
3226
+ "description": "Bare background — surface fill (var(--bg-surface))",
3227
+ "example": "<div class=\"surface\">…</div>"
3228
+ },
3229
+ {
3230
+ "class": ".panel",
3231
+ "kind": "class",
3232
+ "parent": null,
3233
+ "file": "_08_visuals.sass",
3234
+ "layer": "L5",
3235
+ "property": "background: var(--bg-panel)",
3236
+ "description": "Bare background — panel fill (var(--bg-panel))",
3237
+ "example": "<div class=\"panel\">…</div>"
3238
+ },
3239
+ {
3240
+ "class": ".sunken",
3241
+ "kind": "class",
3242
+ "parent": null,
3243
+ "file": "_08_visuals.sass",
3244
+ "layer": "L5",
3245
+ "property": "background: var(--bg-sunken)",
3246
+ "description": "Bare background — sunken fill (var(--bg-sunken))",
3247
+ "example": "<div class=\"sunken\">…</div>"
3248
+ },
3249
+ {
3250
+ "class": ".raised",
3251
+ "kind": "class",
3252
+ "parent": null,
3253
+ "file": "_08_visuals.sass",
3254
+ "layer": "L5",
3255
+ "property": "background: var(--bg-raised)",
3256
+ "description": "Bare background — raised fill (var(--bg-raised))",
3257
+ "example": "<div class=\"raised\">…</div>"
3258
+ },
3259
+ {
3260
+ "class": ".extra",
3261
+ "kind": "class",
3262
+ "parent": null,
3263
+ "file": "_08_visuals.sass",
3264
+ "layer": "L5",
3265
+ "property": "background: var(--bg-extra)",
3266
+ "description": "Bare background — extra fill (var(--bg-extra))",
3267
+ "example": "<div class=\"extra\">…</div>"
3268
+ },
3269
+ {
3270
+ "class": ".text-primary",
3271
+ "kind": "class",
3272
+ "parent": null,
3273
+ "file": "_08_visuals.sass",
3274
+ "layer": "L5",
3275
+ "property": "color: var(--text-primary)",
3276
+ "description": "color: var(--text-primary)",
3277
+ "example": "<div class=\"text-primary\">…</div>"
3278
+ },
3279
+ {
3280
+ "class": ".text-secondary",
3281
+ "kind": "class",
3282
+ "parent": null,
3283
+ "file": "_08_visuals.sass",
3284
+ "layer": "L5",
3285
+ "property": "color: var(--text-secondary)",
3286
+ "description": "color: var(--text-secondary)",
3287
+ "example": "<div class=\"text-secondary\">…</div>"
3288
+ },
3289
+ {
3290
+ "class": ".text-muted",
3291
+ "kind": "class",
3292
+ "parent": null,
3293
+ "file": "_08_visuals.sass",
3294
+ "layer": "L5",
3295
+ "property": "color: var(--text-muted)",
3296
+ "description": "color: var(--text-muted)",
3297
+ "example": "<div class=\"text-muted\">…</div>"
3298
+ },
3299
+ {
3300
+ "class": ".text-inverse",
3301
+ "kind": "class",
3302
+ "parent": null,
3303
+ "file": "_08_visuals.sass",
3304
+ "layer": "L5",
3305
+ "property": "color: var(--text-inverse)",
3306
+ "description": "color: var(--text-inverse)",
3307
+ "example": "<div class=\"text-inverse\">…</div>"
3308
+ },
3309
+ {
3310
+ "class": ".text-white",
3311
+ "kind": "class",
3312
+ "parent": null,
3313
+ "file": "_08_visuals.sass",
3314
+ "layer": "L5",
3315
+ "property": "color: var(--white-fixed)",
3316
+ "description": "color: var(--white-fixed)",
3317
+ "example": "<div class=\"text-white\">…</div>"
3318
+ },
3319
+ {
3320
+ "class": ".text-black",
3321
+ "kind": "class",
3322
+ "parent": null,
3323
+ "file": "_08_visuals.sass",
3324
+ "layer": "L5",
3325
+ "property": "color: var(--black-fixed)",
3326
+ "description": "color: var(--black-fixed)",
3327
+ "example": "<div class=\"text-black\">…</div>"
3328
+ },
3329
+ {
3330
+ "class": ".text-theme",
3331
+ "kind": "class",
3332
+ "parent": null,
3333
+ "file": "_08_visuals.sass",
3334
+ "layer": "L5",
3335
+ "property": "color: var(--theme-color)",
3336
+ "description": "color: var(--theme-color)",
3337
+ "example": "<div class=\"text-theme\">…</div>"
3338
+ },
3339
+ {
3340
+ "class": ".text-success",
3341
+ "kind": "class",
3342
+ "parent": null,
3343
+ "file": "_08_visuals.sass",
3344
+ "layer": "L5",
3345
+ "property": "color: var(--success)",
3346
+ "description": "color: var(--success)",
3347
+ "example": "<div class=\"text-success\">…</div>"
3348
+ },
3349
+ {
3350
+ "class": ".text-warning",
3351
+ "kind": "class",
3352
+ "parent": null,
3353
+ "file": "_08_visuals.sass",
3354
+ "layer": "L5",
3355
+ "property": "color: var(--warning)",
3356
+ "description": "color: var(--warning)",
3357
+ "example": "<div class=\"text-warning\">…</div>"
3358
+ },
3359
+ {
3360
+ "class": ".text-danger",
3361
+ "kind": "class",
3362
+ "parent": null,
3363
+ "file": "_08_visuals.sass",
3364
+ "layer": "L5",
3365
+ "property": "color: var(--danger)",
3366
+ "description": "color: var(--danger)",
3367
+ "example": "<div class=\"text-danger\">…</div>"
3368
+ },
3369
+ {
3370
+ "class": ".text-info",
3371
+ "kind": "class",
3372
+ "parent": null,
3373
+ "file": "_08_visuals.sass",
3374
+ "layer": "L5",
3375
+ "property": "color: var(--info)",
3376
+ "description": "color: var(--info)",
3377
+ "example": "<div class=\"text-info\">…</div>"
3378
+ },
3379
+ {
3380
+ "class": ".bg-success",
3381
+ "kind": "class",
3382
+ "parent": null,
3383
+ "file": "_08_visuals.sass",
3384
+ "layer": "L5",
3385
+ "property": "background: var(--success)",
3386
+ "description": "Status fills, mirroring the status inks above. A dot or chip that carries the",
3387
+ "example": "<div class=\"bg-success\">…</div>"
3388
+ },
3389
+ {
3390
+ "class": ".bg-warning",
3391
+ "kind": "class",
3392
+ "parent": null,
3393
+ "file": "_08_visuals.sass",
3394
+ "layer": "L5",
3395
+ "property": "background: var(--warning)",
3396
+ "description": "background: var(--warning)",
3397
+ "example": "<div class=\"bg-warning\">…</div>"
3398
+ },
3399
+ {
3400
+ "class": ".bg-danger",
3401
+ "kind": "class",
3402
+ "parent": null,
3403
+ "file": "_08_visuals.sass",
3404
+ "layer": "L5",
3405
+ "property": "background: var(--danger)",
3406
+ "description": "background: var(--danger)",
3407
+ "example": "<div class=\"bg-danger\">…</div>"
3408
+ },
3409
+ {
3410
+ "class": ".bg-info",
3411
+ "kind": "class",
3412
+ "parent": null,
3413
+ "file": "_08_visuals.sass",
3414
+ "layer": "L5",
3415
+ "property": "background: var(--info)",
3416
+ "description": "background: var(--info)",
3417
+ "example": "<div class=\"bg-info\">…</div>"
3418
+ },
3419
+ {
3420
+ "class": ".border",
3421
+ "kind": "class",
3422
+ "parent": null,
3423
+ "file": "_08_visuals.sass",
3424
+ "layer": "L5",
3425
+ "property": "border: 1px solid var(--border)",
3426
+ "description": "Full border, standard weight (var(--border))",
3427
+ "example": "<div class=\"border\">…</div>"
3428
+ },
3429
+ {
3430
+ "class": ".border-subtle",
3431
+ "kind": "class",
3432
+ "parent": null,
3433
+ "file": "_08_visuals.sass",
3434
+ "layer": "L5",
3435
+ "property": "border: 1px solid var(--border-subtle)",
3436
+ "description": "Full border, subtle weight (var(--border-subtle))",
3437
+ "example": "<div class=\"border-subtle\">…</div>"
3438
+ },
3439
+ {
3440
+ "class": ".border-strong",
3441
+ "kind": "class",
3442
+ "parent": null,
3443
+ "file": "_08_visuals.sass",
3444
+ "layer": "L5",
3445
+ "property": "border: 1px solid var(--border-strong)",
3446
+ "description": "Full border, strong weight (var(--border-strong))",
3447
+ "example": "<div class=\"border-strong\">…</div>"
3448
+ },
3449
+ {
3450
+ "class": ".bt",
3451
+ "kind": "class",
3452
+ "parent": null,
3453
+ "file": "_08_visuals.sass",
3454
+ "layer": "L5",
3455
+ "property": "border-top: 1px solid var(--border)",
3456
+ "description": "border-top: 1px solid var(--border)",
3457
+ "example": "<div class=\"bt\">…</div>"
3458
+ },
3459
+ {
3460
+ "class": ".br",
3461
+ "kind": "class",
3462
+ "parent": null,
3463
+ "file": "_08_visuals.sass",
3464
+ "layer": "L5",
3465
+ "property": "border-right: 1px solid var(--border)",
3466
+ "description": "border-right: 1px solid var(--border)",
3467
+ "example": "<div class=\"br\">…</div>"
3468
+ },
3469
+ {
3470
+ "class": ".bb",
3471
+ "kind": "class",
3472
+ "parent": null,
3473
+ "file": "_08_visuals.sass",
3474
+ "layer": "L5",
3475
+ "property": "border-bottom: 1px solid var(--border)",
3476
+ "description": "border-bottom: 1px solid var(--border)",
3477
+ "example": "<div class=\"bb\">…</div>"
3478
+ },
3479
+ {
3480
+ "class": ".bl",
3481
+ "kind": "class",
3482
+ "parent": null,
3483
+ "file": "_08_visuals.sass",
3484
+ "layer": "L5",
3485
+ "property": "border-left: 1px solid var(--border)",
3486
+ "description": "border-left: 1px solid var(--border)",
3487
+ "example": "<div class=\"bl\">…</div>"
3488
+ },
3489
+ {
3490
+ "class": ".bt-str",
3491
+ "kind": "class",
3492
+ "parent": null,
3493
+ "file": "_08_visuals.sass",
3494
+ "layer": "L5",
3495
+ "property": "border-top: 1px solid var(--border-strong)",
3496
+ "description": "border-top: 1px solid var(--border-strong)",
3497
+ "example": "<div class=\"bt-str\">…</div>"
3498
+ },
3499
+ {
3500
+ "class": ".br-str",
3501
+ "kind": "class",
3502
+ "parent": null,
3503
+ "file": "_08_visuals.sass",
3504
+ "layer": "L5",
3505
+ "property": "border-right: 1px solid var(--border-strong)",
3506
+ "description": "border-right: 1px solid var(--border-strong)",
3507
+ "example": "<div class=\"br-str\">…</div>"
3508
+ },
3509
+ {
3510
+ "class": ".bb-str",
3511
+ "kind": "class",
3512
+ "parent": null,
3513
+ "file": "_08_visuals.sass",
3514
+ "layer": "L5",
3515
+ "property": "border-bottom: 1px solid var(--border-strong)",
3516
+ "description": "border-bottom: 1px solid var(--border-strong)",
3517
+ "example": "<div class=\"bb-str\">…</div>"
3518
+ },
3519
+ {
3520
+ "class": ".bl-str",
3521
+ "kind": "class",
3522
+ "parent": null,
3523
+ "file": "_08_visuals.sass",
3524
+ "layer": "L5",
3525
+ "property": "border-left: 1px solid var(--border-strong)",
3526
+ "description": "border-left: 1px solid var(--border-strong)",
3527
+ "example": "<div class=\"bl-str\">…</div>"
3528
+ },
3529
+ {
3530
+ "class": ".bt-sub",
3531
+ "kind": "class",
3532
+ "parent": null,
3533
+ "file": "_08_visuals.sass",
3534
+ "layer": "L5",
3535
+ "property": "border-top: 1px solid var(--border-subtle)",
3536
+ "description": "border-top: 1px solid var(--border-subtle)",
3537
+ "example": "<div class=\"bt-sub\">…</div>"
3538
+ },
3539
+ {
3540
+ "class": ".br-sub",
3541
+ "kind": "class",
3542
+ "parent": null,
3543
+ "file": "_08_visuals.sass",
3544
+ "layer": "L5",
3545
+ "property": "border-right: 1px solid var(--border-subtle)",
3546
+ "description": "border-right: 1px solid var(--border-subtle)",
3547
+ "example": "<div class=\"br-sub\">…</div>"
3548
+ },
3549
+ {
3550
+ "class": ".bb-sub",
3551
+ "kind": "class",
3552
+ "parent": null,
3553
+ "file": "_08_visuals.sass",
3554
+ "layer": "L5",
3555
+ "property": "border-bottom: 1px solid var(--border-subtle)",
3556
+ "description": "border-bottom: 1px solid var(--border-subtle)",
3557
+ "example": "<div class=\"bb-sub\">…</div>"
3558
+ },
3559
+ {
3560
+ "class": ".bl-sub",
3561
+ "kind": "class",
3562
+ "parent": null,
3563
+ "file": "_08_visuals.sass",
3564
+ "layer": "L5",
3565
+ "property": "border-left: 1px solid var(--border-subtle)",
3566
+ "description": "border-left: 1px solid var(--border-subtle)",
3567
+ "example": "<div class=\"bl-sub\">…</div>"
3568
+ },
3569
+ {
3570
+ "class": ".shadow-xs",
3571
+ "kind": "class",
3572
+ "parent": null,
3573
+ "file": "_08_visuals.sass",
3574
+ "layer": "L5",
3575
+ "property": "box-shadow: var(--shadow-xs)",
3576
+ "description": "box-shadow: var(--shadow-xs)",
3577
+ "example": "<div class=\"shadow-xs\">…</div>"
3578
+ },
3579
+ {
3580
+ "class": ".shadow-sm",
3581
+ "kind": "class",
3582
+ "parent": null,
3583
+ "file": "_08_visuals.sass",
3584
+ "layer": "L5",
3585
+ "property": "box-shadow: var(--shadow-sm)",
3586
+ "description": "box-shadow: var(--shadow-sm)",
3587
+ "example": "<div class=\"shadow-sm\">…</div>"
3588
+ },
3589
+ {
3590
+ "class": ".shadow-md",
3591
+ "kind": "class",
3592
+ "parent": null,
3593
+ "file": "_08_visuals.sass",
3594
+ "layer": "L5",
3595
+ "property": "box-shadow: var(--shadow-md)",
3596
+ "description": "box-shadow: var(--shadow-md)",
3597
+ "example": "<div class=\"shadow-md\">…</div>"
3598
+ },
3599
+ {
3600
+ "class": ".shadow-bs",
3601
+ "kind": "class",
3602
+ "parent": null,
3603
+ "file": "_08_visuals.sass",
3604
+ "layer": "L5",
3605
+ "property": "box-shadow: var(--shadow-bs)",
3606
+ "description": "box-shadow: var(--shadow-bs)",
3607
+ "example": "<div class=\"shadow-bs\">…</div>"
3608
+ },
3609
+ {
3610
+ "class": ".shadow-lg",
3611
+ "kind": "class",
3612
+ "parent": null,
3613
+ "file": "_08_visuals.sass",
3614
+ "layer": "L5",
3615
+ "property": "box-shadow: var(--shadow-lg)",
3616
+ "description": "box-shadow: var(--shadow-lg)",
3617
+ "example": "<div class=\"shadow-lg\">…</div>"
3618
+ },
3619
+ {
3620
+ "class": ".shadow-xl",
3621
+ "kind": "class",
3622
+ "parent": null,
3623
+ "file": "_08_visuals.sass",
3624
+ "layer": "L5",
3625
+ "property": "box-shadow: var(--shadow-xl)",
3626
+ "description": "box-shadow: var(--shadow-xl)",
3627
+ "example": "<div class=\"shadow-xl\">…</div>"
3628
+ },
3629
+ {
3630
+ "class": ".shadow-2xl",
3631
+ "kind": "class",
3632
+ "parent": null,
3633
+ "file": "_08_visuals.sass",
3634
+ "layer": "L5",
3635
+ "property": "box-shadow: var(--shadow-2xl)",
3636
+ "description": "box-shadow: var(--shadow-2xl)",
3637
+ "example": "<div class=\"shadow-2xl\">…</div>"
3638
+ },
3639
+ {
3640
+ "class": ".shadow-3xl",
3641
+ "kind": "class",
3642
+ "parent": null,
3643
+ "file": "_08_visuals.sass",
3644
+ "layer": "L5",
3645
+ "property": "box-shadow: var(--shadow-3xl)",
3646
+ "description": "box-shadow: var(--shadow-3xl)",
3647
+ "example": "<div class=\"shadow-3xl\">…</div>"
3648
+ },
3649
+ {
3650
+ "class": ".hide-mobile",
3651
+ "kind": "class",
3652
+ "parent": null,
3653
+ "file": "_08_visuals.sass",
3654
+ "layer": "L5",
3655
+ "property": "@max-width:1024px: display: none",
3656
+ "description": "Display none at ≤1024px",
3657
+ "example": "<div class=\"hide-mobile\">…</div>"
3658
+ },
3659
+ {
3660
+ "class": ".hide-desktop",
3661
+ "kind": "class",
3662
+ "parent": null,
3663
+ "file": "_08_visuals.sass",
3664
+ "layer": "L5",
3665
+ "property": "@min-width:1025px: display: none",
3666
+ "description": "Display none at ≥1025px",
3667
+ "example": "<div class=\"hide-desktop\">…</div>"
3668
+ },
3669
+ {
3670
+ "class": ".orange1",
3671
+ "kind": "class",
3672
+ "parent": null,
3673
+ "file": "_08_visuals.sass",
3674
+ "layer": "L5",
3675
+ "property": "color: var(--orangepop1)",
3676
+ "description": "special color classes",
3677
+ "example": "<div class=\"orange1\">…</div>"
3678
+ },
3679
+ {
3680
+ "class": ".orange2",
3681
+ "kind": "class",
3682
+ "parent": null,
3683
+ "file": "_08_visuals.sass",
3684
+ "layer": "L5",
3685
+ "property": "color: var(--orangepop2)",
3686
+ "description": "color: var(--orangepop2)",
3687
+ "example": "<div class=\"orange2\">…</div>"
3688
+ },
3689
+ {
3690
+ "class": ".orange3",
3691
+ "kind": "class",
3692
+ "parent": null,
3693
+ "file": "_08_visuals.sass",
3694
+ "layer": "L5",
3695
+ "property": "color: var(--orangepop3)",
3696
+ "description": "color: var(--orangepop3)",
3697
+ "example": "<div class=\"orange3\">…</div>"
3698
+ },
3699
+ {
3700
+ "class": ".orange4",
3701
+ "kind": "class",
3702
+ "parent": null,
3703
+ "file": "_08_visuals.sass",
3704
+ "layer": "L5",
3705
+ "property": "color: var(--orangepop4)",
3706
+ "description": "color: var(--orangepop4)",
3707
+ "example": "<div class=\"orange4\">…</div>"
3708
+ },
3709
+ {
3710
+ "class": ".orange5",
3711
+ "kind": "class",
3712
+ "parent": null,
3713
+ "file": "_08_visuals.sass",
3714
+ "layer": "L5",
3715
+ "property": "color: var(--orangepop5)",
3716
+ "description": "color: var(--orangepop5)",
3717
+ "example": "<div class=\"orange5\">…</div>"
3718
+ },
3719
+ {
3720
+ "class": ".orange6",
3721
+ "kind": "class",
3722
+ "parent": null,
3723
+ "file": "_08_visuals.sass",
3724
+ "layer": "L5",
3725
+ "property": "color: var(--orangepop6)",
3726
+ "description": "color: var(--orangepop6)",
3727
+ "example": "<div class=\"orange6\">…</div>"
3728
+ },
3729
+ {
3730
+ "class": ".site-logomotif",
3731
+ "kind": "class",
3732
+ "parent": null,
3733
+ "file": "_09_own.sass",
3734
+ "layer": "Custom",
3735
+ "property": "height: 48px; transform-origin: center center; transition: transform 210ms var(--transin2)",
3736
+ "description": "Site logo motif — 48px, scales 1.2 on hover",
3737
+ "example": "<div class=\"site-logomotif\">…</div>"
3738
+ },
3739
+ {
3740
+ "class": ".logotype",
3741
+ "kind": "class",
3742
+ "parent": null,
3743
+ "file": "_09_own.sass",
3744
+ "layer": "Custom",
3745
+ "property": "height: 28px",
3746
+ "description": "Logotype — 28px wordmark",
3747
+ "example": "<div class=\"logotype\">…</div>"
3748
+ },
3749
+ {
3750
+ "class": ".project-circle",
3751
+ "kind": "class",
3752
+ "parent": null,
3753
+ "file": "_09_own.sass",
3754
+ "layer": "Custom",
3755
+ "property": "border-radius: 24px; width: 16px; height: 16px",
3756
+ "description": "Project dot — 16px circle",
3757
+ "example": "<div class=\"project-circle\">…</div>"
3758
+ },
3759
+ {
3760
+ "class": ".mascot",
3761
+ "kind": "class",
3762
+ "parent": null,
3763
+ "file": "_09_own.sass",
3764
+ "layer": "Custom",
3765
+ "property": "display: inline-block; position: relative; flex: none; …",
3766
+ "description": "Mascot (src/lib/comps/Mascot.svelte): CSS-only \"3D feel\" logo.",
3767
+ "example": "<div class=\"mascot\">…</div>"
3768
+ },
3769
+ {
3770
+ "class": ".mascot-bob",
3771
+ "kind": "class",
3772
+ "parent": null,
3773
+ "file": "_09_own.sass",
3774
+ "layer": "Custom",
3775
+ "property": "display: block",
3776
+ "description": "display: block",
3777
+ "example": "<div class=\"mascot-bob\">…</div>"
3778
+ },
3779
+ {
3780
+ "class": ".mascot-tilt",
3781
+ "kind": "class",
3782
+ "parent": null,
3783
+ "file": "_09_own.sass",
3784
+ "layer": "Custom",
3785
+ "property": "display: block",
3786
+ "description": "display: block",
3787
+ "example": "<div class=\"mascot-tilt\">…</div>"
3788
+ },
3789
+ {
3790
+ "class": ".mascot-bobs .mascot-bob",
3791
+ "kind": "compound",
3792
+ "parent": null,
3793
+ "file": "_09_own.sass",
3794
+ "layer": "Custom",
3795
+ "property": "animation: mascot-bob 3.6s ease-in-out infinite alternate",
3796
+ "description": "animation: mascot-bob 3.6s ease-in-out infinite alternate — combination rule (mascot-bobs mascot-bob)",
3797
+ "example": "<div class=\"mascot-bobs\"><div class=\"mascot-bob\">…</div></div>"
3798
+ },
3799
+ {
3800
+ "class": ".mascot-base",
3801
+ "kind": "class",
3802
+ "parent": null,
3803
+ "file": "_09_own.sass",
3804
+ "layer": "Custom",
3805
+ "property": "display: block; user-select: none; -webkit-user-drag: none",
3806
+ "description": "display: block",
3807
+ "example": "<div class=\"mascot-base\">…</div>"
3808
+ },
3809
+ {
3810
+ "class": ".mascot-overlay",
3811
+ "kind": "class",
3812
+ "parent": null,
3813
+ "file": "_09_own.sass",
3814
+ "layer": "Custom",
3815
+ "property": "position: absolute; inset: 0; width: 100%; …",
3816
+ "description": "position: absolute",
3817
+ "example": "<div class=\"mascot-overlay\">…</div>"
3818
+ },
3819
+ {
3820
+ "class": ".mascot-mask",
3821
+ "kind": "class",
3822
+ "parent": null,
3823
+ "file": "_09_own.sass",
3824
+ "layer": "Custom",
3825
+ "property": "mask-type: alpha",
3826
+ "description": "mask-type: alpha",
3827
+ "example": "<div class=\"mascot-mask\">…</div>"
3828
+ },
3829
+ {
3830
+ "class": ".mascot-pupil-l",
3831
+ "kind": "class",
3832
+ "parent": null,
3833
+ "file": "_09_own.sass",
3834
+ "layer": "Custom",
3835
+ "property": "transform: translate(calc(var(--mascot-plx, 0) * 1px), calc(var(--mas…",
3836
+ "description": "transform: translate(calc(var(--mascot-plx, 0) * 1px), calc(var(--mas…",
3837
+ "example": "<div class=\"mascot-pupil-l\">…</div>"
3838
+ },
3839
+ {
3840
+ "class": ".mascot-pupil-r",
3841
+ "kind": "class",
3842
+ "parent": null,
3843
+ "file": "_09_own.sass",
3844
+ "layer": "Custom",
3845
+ "property": "transform: translate(calc(var(--mascot-prx, 0) * 1px), calc(var(--mas…",
3846
+ "description": "transform: translate(calc(var(--mascot-prx, 0) * 1px), calc(var(--mas…",
3847
+ "example": "<div class=\"mascot-pupil-r\">…</div>"
3848
+ },
3849
+ {
3850
+ "class": ".mascot-gloss",
3851
+ "kind": "class",
3852
+ "parent": null,
3853
+ "file": "_09_own.sass",
3854
+ "layer": "Custom",
3855
+ "property": "opacity: 0.42; transform: translate(calc(var(--mascot-gx, 400) * 1px), calc(var(--ma…",
3856
+ "description": "opacity: 0.42",
3857
+ "example": "<div class=\"mascot-gloss\">…</div>"
3858
+ },
3859
+ {
3860
+ "class": ".mascot-shade",
3861
+ "kind": "class",
3862
+ "parent": null,
3863
+ "file": "_09_own.sass",
3864
+ "layer": "Custom",
3865
+ "property": "opacity: 0.55; transform: translate(calc((1024 - var(--mascot-gx, 400)) * 1px), calc…",
3866
+ "description": "opacity: 0.55",
3867
+ "example": "<div class=\"mascot-shade\">…</div>"
3868
+ },
3869
+ {
3870
+ "class": ".mascot-blinks .mascot-lid",
3871
+ "kind": "compound",
3872
+ "parent": null,
3873
+ "file": "_09_own.sass",
3874
+ "layer": "Custom",
3875
+ "property": "animation: mascot-blink 5.2s ease-in-out infinite",
3876
+ "description": "animation: mascot-blink 5.2s ease-in-out infinite — combination rule (mascot-blinks mascot-lid)",
3877
+ "example": "<div class=\"mascot-blinks\"><div class=\"mascot-lid\">…</div></div>"
3878
+ },
3879
+ {
3880
+ "class": ".mascotgl",
3881
+ "kind": "class",
3882
+ "parent": null,
3883
+ "file": "_09_own.sass",
3884
+ "layer": "Custom",
3885
+ "property": "display: inline-block; position: relative; flex: none; …",
3886
+ "description": "MascotGL (src/lib/comps/MascotGL.svelte): WebGL2 lab version of the mascot.",
3887
+ "example": "<div class=\"mascotgl\">…</div>"
3888
+ },
3889
+ {
3890
+ "class": ".mascotgl-spacer",
3891
+ "kind": "class",
3892
+ "parent": null,
3893
+ "file": "_09_own.sass",
3894
+ "layer": "Custom",
3895
+ "property": "display: block",
3896
+ "description": "display: block",
3897
+ "example": "<div class=\"mascotgl-spacer\">…</div>"
3898
+ },
3899
+ {
3900
+ "class": ".mascotgl-canvas",
3901
+ "kind": "class",
3902
+ "parent": null,
3903
+ "file": "_09_own.sass",
3904
+ "layer": "Custom",
3905
+ "property": "position: absolute; left: 50%; top: 50%; …",
3906
+ "description": "position: absolute",
3907
+ "example": "<div class=\"mascotgl-canvas\">…</div>"
3908
+ },
3909
+ {
3910
+ "class": ".mascotgl-ready",
3911
+ "kind": "class",
3912
+ "parent": null,
3913
+ "file": "_09_own.sass",
3914
+ "layer": "Custom",
3915
+ "property": "opacity: 1",
3916
+ "description": "opacity: 1",
3917
+ "example": "<div class=\"mascotgl-ready\">…</div>"
3918
+ },
3919
+ {
3920
+ "class": ".mascotgl-compact .mascotgl-canvas",
3921
+ "kind": "compound",
3922
+ "parent": null,
3923
+ "file": "_09_own.sass",
3924
+ "layer": "Custom",
3925
+ "property": "width: 130%; height: 130%",
3926
+ "description": "Header-sized: 15% overhang per side (EXTENT_COMPACT = 0.65), still outside the layout box.",
3927
+ "example": "<div class=\"mascotgl-compact\"><div class=\"mascotgl-canvas\">…</div></div>"
3928
+ },
3929
+ {
3930
+ "class": ".hero-name",
3931
+ "kind": "class",
3932
+ "parent": null,
3933
+ "file": "_09_own.sass",
3934
+ "layer": "Custom",
3935
+ "property": "font-weight: 800; font-size: calc(var(--text-5xl) * 2); letter-spacing: -0.2rem",
3936
+ "description": "Hero display name — text-5xl doubled, 800, tight tracking",
3937
+ "example": "<div class=\"hero-name\">…</div>"
3938
+ },
3939
+ {
3940
+ "class": ".accordion",
3941
+ "kind": "class",
3942
+ "parent": null,
3943
+ "file": "_09_own.sass",
3944
+ "layer": "Custom",
3945
+ "property": "display: flex; flex-direction: column; gap: var(--space-xs)",
3946
+ "description": "Accordion group — vertical stack of .accordion-item",
3947
+ "example": "<div class=\"accordion\">…</div>"
3948
+ },
3949
+ {
3950
+ "class": ".accordion-item",
3951
+ "kind": "class",
3952
+ "parent": null,
3953
+ "file": "_09_own.sass",
3954
+ "layer": "Custom",
3955
+ "property": "border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-surface)",
3956
+ "description": "Accordion item — bordered, curved shell hosting trigger and content",
3957
+ "example": "<div class=\"accordion-item\">…</div>"
3958
+ },
3959
+ {
3960
+ "class": ".accordion-content",
3961
+ "kind": "child",
3962
+ "parent": ".accordion-item",
3963
+ "file": "_09_own.sass",
3964
+ "layer": "Custom",
3965
+ "property": "display: grid; grid-template-rows: 0fr; padding: 0; …",
3966
+ "description": "Collapsible region of an .accordion-item — 0fr→1fr grid transition",
3967
+ "example": "<div class=\"accordion-content\">…</div>"
3968
+ },
3969
+ {
3970
+ "class": ".accordion-panel",
3971
+ "kind": "child",
3972
+ "parent": ".accordion-item",
3973
+ "file": "_09_own.sass",
3974
+ "layer": "Custom",
3975
+ "property": "overflow: hidden; min-height: 0",
3976
+ "description": "The panel is what collapses. It needs min-height: 0 so the grid row can",
3977
+ "example": "<div class=\"accordion-panel\">…</div>"
3978
+ },
3979
+ {
3980
+ "class": ".accordion-item.open .accordion-content",
3981
+ "kind": "compound",
3982
+ "parent": ".accordion-item",
3983
+ "file": "_09_own.sass",
3984
+ "layer": "Custom",
3985
+ "property": "grid-template-rows: 1fr; padding: var(--space-xs)",
3986
+ "description": "grid-template-rows: 1fr — combination rule (accordion-itemopen accordion-content)",
3987
+ "example": "<div class=\"accordion-item open\"><div class=\"accordion-content\">…</div></div>"
3988
+ },
3989
+ {
3990
+ "class": ".accordion-trigger",
3991
+ "kind": "class",
3992
+ "parent": null,
3993
+ "file": "_09_own.sass",
3994
+ "layer": "Custom",
3995
+ "property": "display: flex; flex-direction: row; align-items: center; …",
3996
+ "description": "Accordion trigger button — full-width, hover/focus states",
3997
+ "example": "<div class=\"accordion-trigger\">…</div>"
3998
+ }
3999
+ ]