clampography 2.0.0-beta.3 → 2.0.0-beta.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/css/base.css ADDED
@@ -0,0 +1,501 @@
1
+ @layer base {
2
+
3
+ :where(:root) {
4
+ --spacing-xs: clamp(0.25rem, 0.0833rem + 0.8333vw, 0.75rem);
5
+ --spacing-sm: clamp(0.375rem, 0.0833rem + 1.4583vw, 1.25rem);
6
+ --spacing-md: clamp(0.5rem, 0.1667rem + 1.6667vw, 1.5rem);
7
+ --spacing-lg: clamp(0.75rem, 0.1667rem + 2.9167vw, 2.5rem);
8
+ --spacing-xl: clamp(1rem, 0.3333rem + 3.3333vw, 3rem);
9
+ --list-indent: clamp(1.5rem, 1.3333rem + 0.8333vw, 2rem);
10
+ --scroll-offset: 5rem;
11
+ --font-family-base: Inter, system-ui, -apple-system, 'Segoe UI Variable Display', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;
12
+ --font-family-mono: ui-monospace, 'Cascadia Code', 'Cascadia Mono', 'Segoe UI Mono', 'Ubuntu Mono', SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
13
+ --clampography-v-min: 20;
14
+ --clampography-v-max: 80;
15
+ --clampography-h1-min: 1.875;
16
+ --clampography-h1-max: 4;
17
+ --clampography-h1-slope: calc((var(--clampography-h1-max) - var(--clampography-h1-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
18
+ --clampography-h1-base: calc(var(--clampography-h1-min) - var(--clampography-h1-slope) * var(--clampography-v-min));
19
+ --clampography-h1-size: clamp(calc(var(--clampography-h1-min) * 1rem), calc(var(--clampography-h1-base) * 1rem + var(--clampography-h1-slope) * 100vw), calc(var(--clampography-h1-max) * 1rem));
20
+ --clampography-h2-min: 1.25;
21
+ --clampography-h2-max: 3;
22
+ --clampography-h2-slope: calc((var(--clampography-h2-max) - var(--clampography-h2-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
23
+ --clampography-h2-base: calc(var(--clampography-h2-min) - var(--clampography-h2-slope) * var(--clampography-v-min));
24
+ --clampography-h2-size: clamp(calc(var(--clampography-h2-min) * 1rem), calc(var(--clampography-h2-base) * 1rem + var(--clampography-h2-slope) * 100vw), calc(var(--clampography-h2-max) * 1rem));
25
+ --clampography-h3-min: 1.125;
26
+ --clampography-h3-max: 2.25;
27
+ --clampography-h3-slope: calc((var(--clampography-h3-max) - var(--clampography-h3-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
28
+ --clampography-h3-base: calc(var(--clampography-h3-min) - var(--clampography-h3-slope) * var(--clampography-v-min));
29
+ --clampography-h3-size: clamp(calc(var(--clampography-h3-min) * 1rem), calc(var(--clampography-h3-base) * 1rem + var(--clampography-h3-slope) * 100vw), calc(var(--clampography-h3-max) * 1rem));
30
+ --clampography-h4-min: 1;
31
+ --clampography-h4-max: 1.5;
32
+ --clampography-h4-slope: calc((var(--clampography-h4-max) - var(--clampography-h4-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
33
+ --clampography-h4-base: calc(var(--clampography-h4-min) - var(--clampography-h4-slope) * var(--clampography-v-min));
34
+ --clampography-h4-size: clamp(calc(var(--clampography-h4-min) * 1rem), calc(var(--clampography-h4-base) * 1rem + var(--clampography-h4-slope) * 100vw), calc(var(--clampography-h4-max) * 1rem));
35
+ --clampography-h5-min: 1;
36
+ --clampography-h5-max: 1;
37
+ --clampography-h5-slope: calc((var(--clampography-h5-max) - var(--clampography-h5-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
38
+ --clampography-h5-base: calc(var(--clampography-h5-min) - var(--clampography-h5-slope) * var(--clampography-v-min));
39
+ --clampography-h5-size: clamp(calc(var(--clampography-h5-min) * 1rem), calc(var(--clampography-h5-base) * 1rem + var(--clampography-h5-slope) * 100vw), calc(var(--clampography-h5-max) * 1rem));
40
+ --clampography-h6-min: 0.875;
41
+ --clampography-h6-max: 0.875;
42
+ --clampography-h6-slope: calc((var(--clampography-h6-max) - var(--clampography-h6-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));
43
+ --clampography-h6-base: calc(var(--clampography-h6-min) - var(--clampography-h6-slope) * var(--clampography-v-min));
44
+ --clampography-h6-size: clamp(calc(var(--clampography-h6-min) * 1rem), calc(var(--clampography-h6-base) * 1rem + var(--clampography-h6-slope) * 100vw), calc(var(--clampography-h6-max) * 1rem));
45
+ --clampography-heading-scale: 1;
46
+ --clampography-h1-scale: var(--clampography-heading-scale);
47
+ --clampography-h2-scale: var(--clampography-heading-scale);
48
+ --clampography-h3-scale: var(--clampography-heading-scale);
49
+ --clampography-h4-scale: var(--clampography-heading-scale);
50
+ --clampography-h5-scale: var(--clampography-heading-scale);
51
+ --clampography-h6-scale: var(--clampography-heading-scale);
52
+ }
53
+
54
+ body {
55
+ font-size: clamp(0.875rem, 0.7917rem + 0.4167vw, 1.125rem);
56
+ line-height: 1.75;
57
+ text-rendering: optimizeLegibility;
58
+ -webkit-font-smoothing: antialiased;
59
+ -moz-osx-font-smoothing: grayscale;
60
+ text-wrap: pretty;
61
+ }
62
+
63
+ :root :where(h1, h2, h3, h4, h5, h6) {
64
+ font-weight: 600;
65
+ scroll-margin-top: var(--scroll-offset);
66
+ }
67
+
68
+ :root h1 {
69
+ font-size: calc(var(--clampography-h1-size) * var(--clampography-h1-scale));
70
+ line-height: 1.1111;
71
+ font-weight: 800;
72
+ margin-top: 0;
73
+ margin-bottom: var(--spacing-xl);
74
+ }
75
+
76
+ :root h2 {
77
+ font-size: calc(var(--clampography-h2-size) * var(--clampography-h2-scale));
78
+ line-height: 1.3333;
79
+ font-weight: 700;
80
+ margin-top: var(--spacing-xl);
81
+ margin-bottom: var(--spacing-md);
82
+ }
83
+
84
+ :root h3 {
85
+ font-size: calc(var(--clampography-h3-size) * var(--clampography-h3-scale));
86
+ line-height: 1.5;
87
+ margin-top: var(--spacing-lg);
88
+ margin-bottom: var(--spacing-sm);
89
+ }
90
+
91
+ :root h4 {
92
+ font-size: calc(var(--clampography-h4-size) * var(--clampography-h4-scale));
93
+ line-height: 1.5;
94
+ margin-top: var(--spacing-lg);
95
+ margin-bottom: var(--spacing-sm);
96
+ }
97
+
98
+ :root h5 {
99
+ font-size: calc(var(--clampography-h5-size) * var(--clampography-h5-scale));
100
+ line-height: 1.5;
101
+ margin-top: var(--spacing-md);
102
+ margin-bottom: var(--spacing-xs);
103
+ }
104
+
105
+ :root h6 {
106
+ font-size: calc(var(--clampography-h6-size) * var(--clampography-h6-scale));
107
+ line-height: 1.5;
108
+ margin-top: var(--spacing-md);
109
+ margin-bottom: var(--spacing-xs);
110
+ }
111
+
112
+ :root :is(h1, h2, h3, h4, h5, h6):first-child {
113
+ margin-top: 0;
114
+ }
115
+
116
+ :root a {
117
+ text-decoration-line: underline;
118
+ cursor: pointer;
119
+ }
120
+
121
+ :root :where(h1, h2, h3, h4, h5, h6) a {
122
+ text-decoration: none;
123
+ }
124
+
125
+ :root menu {
126
+ list-style: none;
127
+ margin-bottom: var(--spacing-md);
128
+ padding-inline-start: 0;
129
+ }
130
+
131
+ :root menu > li::before {
132
+ display: none;
133
+ }
134
+
135
+ :root hgroup {
136
+ margin-bottom: var(--spacing-lg);
137
+ }
138
+
139
+ :root hgroup :where(h1, h2, h3, h4, h5, h6) {
140
+ margin-bottom: var(--spacing-xs);
141
+ }
142
+
143
+ :root hgroup :where(p) {
144
+ margin-top: 0;
145
+ margin-bottom: 0;
146
+ font-size: 0.875em;
147
+ font-weight: 400;
148
+ line-height: 1.5;
149
+ }
150
+
151
+ :root p {
152
+ line-height: 1.75;
153
+ margin-bottom: var(--spacing-md);
154
+ }
155
+
156
+ :root :where(strong, b) {
157
+ font-weight: 700;
158
+ }
159
+
160
+ :root :where(em, i, cite, var) {
161
+ font-style: italic;
162
+ }
163
+
164
+ :root dfn {
165
+ font-style: italic;
166
+ font-weight: 600;
167
+ }
168
+
169
+ :root small {
170
+ font-size: 0.875em;
171
+ line-height: 1.5;
172
+ }
173
+
174
+ :root :where(code, kbd, samp) {
175
+ font-family: var(--font-family-mono);
176
+ font-size: 0.875em;
177
+ -webkit-font-smoothing: auto;
178
+ -moz-osx-font-smoothing: auto;
179
+ }
180
+
181
+ :root kbd {
182
+ font-weight: 600;
183
+ }
184
+
185
+ :root data {
186
+ font-variant-numeric: tabular-nums;
187
+ }
188
+
189
+ :root :where(sub, sup) {
190
+ font-size: 0.75em;
191
+ line-height: 0;
192
+ position: relative;
193
+ vertical-align: baseline;
194
+ }
195
+
196
+ :root sup {
197
+ top: -0.5em;
198
+ }
199
+
200
+ :root sub {
201
+ bottom: -0.25em;
202
+ }
203
+
204
+ :root abbr[title] {
205
+ text-decoration: underline dotted;
206
+ text-underline-offset: 4px;
207
+ cursor: help;
208
+ }
209
+
210
+ :root del {
211
+ text-decoration: line-through;
212
+ }
213
+
214
+ :root ins {
215
+ text-decoration: underline;
216
+ }
217
+
218
+ :root s {
219
+ text-decoration: line-through;
220
+ }
221
+
222
+ :root u {
223
+ text-decoration: underline;
224
+ }
225
+
226
+ :root mark {
227
+ font-style: normal;
228
+ font-weight: inherit;
229
+ }
230
+
231
+ :root address {
232
+ font-style: italic;
233
+ margin-top: var(--spacing-md);
234
+ margin-bottom: var(--spacing-md);
235
+ }
236
+
237
+ :root time {
238
+ font-style: normal;
239
+ font-variant-numeric: tabular-nums;
240
+ }
241
+
242
+ :root blockquote {
243
+ margin-top: var(--spacing-lg);
244
+ margin-bottom: var(--spacing-lg);
245
+ padding-inline-start: var(--spacing-md);
246
+ }
247
+
248
+ :root blockquote blockquote {
249
+ margin-top: var(--spacing-sm);
250
+ margin-bottom: var(--spacing-sm);
251
+ padding-inline-start: var(--spacing-sm);
252
+ }
253
+
254
+ :root q {
255
+ font-style: inherit;
256
+ }
257
+
258
+ :root :where(ul, ol) {
259
+ list-style: none;
260
+ margin-bottom: var(--spacing-md);
261
+ padding-inline-start: var(--list-indent);
262
+ }
263
+
264
+ :root li {
265
+ position: relative;
266
+ }
267
+
268
+ :root li + li {
269
+ margin-top: var(--spacing-xs);
270
+ }
271
+
272
+ :root li > :where(p, dl, figure, table, pre) {
273
+ margin-top: 0;
274
+ margin-bottom: 0;
275
+ }
276
+
277
+ :root li > blockquote {
278
+ margin-top: var(--spacing-sm);
279
+ margin-bottom: var(--spacing-sm);
280
+ }
281
+
282
+ :root li > :where(ul, ol) {
283
+ margin-top: var(--spacing-xs);
284
+ margin-bottom: 0;
285
+ }
286
+
287
+ :root ul > li::before {
288
+ content: '';
289
+ position: absolute;
290
+ inset-inline-end: 100%;
291
+ margin-inline-end: 0.75em;
292
+ top: 0.65em;
293
+ width: 0.375em;
294
+ height: 0.375em;
295
+ background-color: currentColor;
296
+ border-radius: 50%;
297
+ }
298
+
299
+ :root ol {
300
+ counter-reset: list-counter;
301
+ }
302
+
303
+ :root ol > li {
304
+ counter-increment: list-counter;
305
+ }
306
+
307
+ :root ol > li::before {
308
+ content: counter(list-counter) '.';
309
+ position: absolute;
310
+ inset-inline-end: 100%;
311
+ margin-inline-end: 0.5em;
312
+ font-weight: 600;
313
+ font-variant-numeric: tabular-nums;
314
+ text-align: end;
315
+ color: currentColor;
316
+ }
317
+
318
+ :root dl {
319
+ margin-top: var(--spacing-md);
320
+ margin-bottom: var(--spacing-md);
321
+ }
322
+
323
+ :root dt {
324
+ font-weight: 600;
325
+ margin-top: var(--spacing-sm);
326
+ }
327
+
328
+ :root dt:first-child {
329
+ margin-top: 0;
330
+ }
331
+
332
+ :root dd {
333
+ margin-inline-start: var(--spacing-md);
334
+ }
335
+
336
+ :root dt + dd {
337
+ margin-top: var(--spacing-xs);
338
+ }
339
+
340
+ :root dd + dd {
341
+ margin-top: var(--spacing-xs);
342
+ }
343
+
344
+ :root dd:last-child {
345
+ margin-bottom: 0;
346
+ }
347
+
348
+ :root pre {
349
+ margin-top: var(--spacing-md);
350
+ margin-bottom: var(--spacing-md);
351
+ font-family: var(--font-family-mono);
352
+ line-height: 1.6;
353
+ overflow-x: auto;
354
+ -webkit-font-smoothing: auto;
355
+ -moz-osx-font-smoothing: auto;
356
+ }
357
+
358
+ :root pre code {
359
+ font-size: inherit;
360
+ padding: 0;
361
+ background: none;
362
+ border-radius: 0;
363
+ }
364
+
365
+ :root input, :root button, :root textarea, :root select, :root optgroup {
366
+ font-family: inherit;
367
+ font-size: 100%;
368
+ line-height: inherit;
369
+ }
370
+
371
+ :root textarea {
372
+ line-height: 1.5;
373
+ }
374
+
375
+ :root button, :root [type='button'], :root [type='reset'], :root [type='submit'] {
376
+ cursor: pointer;
377
+ }
378
+
379
+ :root fieldset {
380
+ margin-top: var(--spacing-md);
381
+ margin-bottom: var(--spacing-md);
382
+ padding: var(--spacing-sm);
383
+ }
384
+
385
+ :root legend {
386
+ font-weight: 600;
387
+ padding: 0 var(--spacing-xs);
388
+ }
389
+
390
+ :root label {
391
+ display: inline-block;
392
+ font-weight: 600;
393
+ margin-bottom: var(--spacing-xs);
394
+ }
395
+
396
+ :root output {
397
+ display: inline-block;
398
+ font-variant-numeric: tabular-nums;
399
+ }
400
+
401
+ :root :where(meter, progress) {
402
+ display: inline-block;
403
+ vertical-align: middle;
404
+ }
405
+
406
+ :root :where(img, video, canvas, audio, iframe, svg) {
407
+ max-width: 100%;
408
+ height: auto;
409
+ vertical-align: middle;
410
+ }
411
+
412
+ :root figure {
413
+ margin-top: var(--spacing-lg);
414
+ margin-bottom: var(--spacing-lg);
415
+ }
416
+
417
+ :root figcaption {
418
+ margin-top: 0.375rem;
419
+ font-size: 0.875em;
420
+ line-height: 1.5;
421
+ }
422
+
423
+ :root table {
424
+ width: 100%;
425
+ margin-top: var(--spacing-md);
426
+ margin-bottom: var(--spacing-md);
427
+ border-collapse: collapse;
428
+ font-size: 1em;
429
+ line-height: 1.6;
430
+ }
431
+
432
+ :root caption {
433
+ margin-bottom: var(--spacing-xs);
434
+ font-size: 0.875em;
435
+ font-weight: 600;
436
+ text-align: start;
437
+ }
438
+
439
+ :root th, :root td {
440
+ padding: var(--spacing-xs) var(--spacing-sm);
441
+ text-align: start;
442
+ }
443
+
444
+ :root th {
445
+ font-weight: 600;
446
+ }
447
+
448
+ :root thead th {
449
+ vertical-align: bottom;
450
+ }
451
+
452
+ :root tbody th, :root tbody td {
453
+ vertical-align: top;
454
+ }
455
+
456
+ :root tfoot th, :root tfoot td {
457
+ vertical-align: top;
458
+ }
459
+
460
+ :root tbody + tbody {
461
+ border-top-width: 2px;
462
+ }
463
+
464
+ :root hr {
465
+ margin-top: var(--spacing-xl);
466
+ margin-bottom: var(--spacing-xl);
467
+ border: 0;
468
+ border-top: 1px solid;
469
+ }
470
+
471
+ :root :where(:focus, :focus-visible) {
472
+ outline-offset: 2px;
473
+ }
474
+
475
+ :root details {
476
+ margin-top: var(--spacing-md);
477
+ margin-bottom: var(--spacing-md);
478
+ }
479
+
480
+ :root summary {
481
+ cursor: pointer;
482
+ font-weight: 600;
483
+ }
484
+
485
+ :root details[open] > summary {
486
+ margin-bottom: var(--spacing-xs);
487
+ }
488
+
489
+ :root dialog {
490
+ font-size: inherit;
491
+ line-height: inherit;
492
+ }
493
+
494
+ :root :where(h1, h2, h3, h4, h5, h6, p, ul:not(li > ul, li > ol), ol:not(li > ul, li > ol), dl, blockquote, figure, table, pre):first-child {
495
+ margin-top: 0;
496
+ }
497
+
498
+ :root :where(p, ul, ol, dl, blockquote, figure, table, pre):last-child {
499
+ margin-bottom: 0;
500
+ }
501
+ }
@@ -0,0 +1 @@
1
+ @layer base{:where(:root){--spacing-xs:clamp(0.25rem, 0.0833rem + 0.8333vw, 0.75rem);--spacing-sm:clamp(0.375rem, 0.0833rem + 1.4583vw, 1.25rem);--spacing-md:clamp(0.5rem, 0.1667rem + 1.6667vw, 1.5rem);--spacing-lg:clamp(0.75rem, 0.1667rem + 2.9167vw, 2.5rem);--spacing-xl:clamp(1rem, 0.3333rem + 3.3333vw, 3rem);--list-indent:clamp(1.5rem, 1.3333rem + 0.8333vw, 2rem);--scroll-offset:5rem;--font-family-base:Inter, system-ui, -apple-system, 'Segoe UI Variable Display', 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif;--font-family-mono:ui-monospace, 'Cascadia Code', 'Cascadia Mono', 'Segoe UI Mono', 'Ubuntu Mono', SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;--clampography-v-min:20;--clampography-v-max:80;--clampography-h1-min:1.875;--clampography-h1-max:4;--clampography-h1-slope:calc((var(--clampography-h1-max) - var(--clampography-h1-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h1-base:calc(var(--clampography-h1-min) - var(--clampography-h1-slope) * var(--clampography-v-min));--clampography-h1-size:clamp(calc(var(--clampography-h1-min) * 1rem), calc(var(--clampography-h1-base) * 1rem + var(--clampography-h1-slope) * 100vw), calc(var(--clampography-h1-max) * 1rem));--clampography-h2-min:1.25;--clampography-h2-max:3;--clampography-h2-slope:calc((var(--clampography-h2-max) - var(--clampography-h2-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h2-base:calc(var(--clampography-h2-min) - var(--clampography-h2-slope) * var(--clampography-v-min));--clampography-h2-size:clamp(calc(var(--clampography-h2-min) * 1rem), calc(var(--clampography-h2-base) * 1rem + var(--clampography-h2-slope) * 100vw), calc(var(--clampography-h2-max) * 1rem));--clampography-h3-min:1.125;--clampography-h3-max:2.25;--clampography-h3-slope:calc((var(--clampography-h3-max) - var(--clampography-h3-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h3-base:calc(var(--clampography-h3-min) - var(--clampography-h3-slope) * var(--clampography-v-min));--clampography-h3-size:clamp(calc(var(--clampography-h3-min) * 1rem), calc(var(--clampography-h3-base) * 1rem + var(--clampography-h3-slope) * 100vw), calc(var(--clampography-h3-max) * 1rem));--clampography-h4-min:1;--clampography-h4-max:1.5;--clampography-h4-slope:calc((var(--clampography-h4-max) - var(--clampography-h4-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h4-base:calc(var(--clampography-h4-min) - var(--clampography-h4-slope) * var(--clampography-v-min));--clampography-h4-size:clamp(calc(var(--clampography-h4-min) * 1rem), calc(var(--clampography-h4-base) * 1rem + var(--clampography-h4-slope) * 100vw), calc(var(--clampography-h4-max) * 1rem));--clampography-h5-min:1;--clampography-h5-max:1;--clampography-h5-slope:calc((var(--clampography-h5-max) - var(--clampography-h5-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h5-base:calc(var(--clampography-h5-min) - var(--clampography-h5-slope) * var(--clampography-v-min));--clampography-h5-size:clamp(calc(var(--clampography-h5-min) * 1rem), calc(var(--clampography-h5-base) * 1rem + var(--clampography-h5-slope) * 100vw), calc(var(--clampography-h5-max) * 1rem));--clampography-h6-min:0.875;--clampography-h6-max:0.875;--clampography-h6-slope:calc((var(--clampography-h6-max) - var(--clampography-h6-min)) / (var(--clampography-v-max) - var(--clampography-v-min)));--clampography-h6-base:calc(var(--clampography-h6-min) - var(--clampography-h6-slope) * var(--clampography-v-min));--clampography-h6-size:clamp(calc(var(--clampography-h6-min) * 1rem), calc(var(--clampography-h6-base) * 1rem + var(--clampography-h6-slope) * 100vw), calc(var(--clampography-h6-max) * 1rem));--clampography-heading-scale:1;--clampography-h1-scale:var(--clampography-heading-scale);--clampography-h2-scale:var(--clampography-heading-scale);--clampography-h3-scale:var(--clampography-heading-scale);--clampography-h4-scale:var(--clampography-heading-scale);--clampography-h5-scale:var(--clampography-heading-scale);--clampography-h6-scale:var(--clampography-heading-scale)}body{font-size:clamp(0.875rem, 0.7917rem + 0.4167vw, 1.125rem);line-height:1.75;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-wrap:pretty}:root :where(h1, h2, h3, h4, h5, h6){font-weight:600;scroll-margin-top:var(--scroll-offset)}:root h1{font-size:calc(var(--clampography-h1-size) * var(--clampography-h1-scale));line-height:1.1111;font-weight:800;margin-top:0;margin-bottom:var(--spacing-xl)}:root h2{font-size:calc(var(--clampography-h2-size) * var(--clampography-h2-scale));line-height:1.3333;font-weight:700;margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}:root h3{font-size:calc(var(--clampography-h3-size) * var(--clampography-h3-scale));line-height:1.5;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}:root h4{font-size:calc(var(--clampography-h4-size) * var(--clampography-h4-scale));line-height:1.5;margin-top:var(--spacing-lg);margin-bottom:var(--spacing-sm)}:root h5{font-size:calc(var(--clampography-h5-size) * var(--clampography-h5-scale));line-height:1.5;margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs)}:root h6{font-size:calc(var(--clampography-h6-size) * var(--clampography-h6-scale));line-height:1.5;margin-top:var(--spacing-md);margin-bottom:var(--spacing-xs)}:root :is(h1, h2, h3, h4, h5, h6):first-child{margin-top:0}:root a{text-decoration-line:underline;cursor:pointer}:root :where(h1, h2, h3, h4, h5, h6) a{text-decoration:none}:root menu{list-style:none;margin-bottom:var(--spacing-md);padding-inline-start:0}:root menu > li::before{display:none}:root hgroup{margin-bottom:var(--spacing-lg)}:root hgroup :where(h1, h2, h3, h4, h5, h6){margin-bottom:var(--spacing-xs)}:root hgroup :where(p){margin-top:0;margin-bottom:0;font-size:0.875em;font-weight:400;line-height:1.5}:root p{line-height:1.75;margin-bottom:var(--spacing-md)}:root :where(strong, b){font-weight:700}:root :where(em, i, cite, var){font-style:italic}:root dfn{font-style:italic;font-weight:600}:root small{font-size:0.875em;line-height:1.5}:root :where(code, kbd, samp){font-family:var(--font-family-mono);font-size:0.875em;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}:root kbd{font-weight:600}:root data{font-variant-numeric:tabular-nums}:root :where(sub, sup){font-size:0.75em;line-height:0;position:relative;vertical-align:baseline}:root sup{top:-0.5em}:root sub{bottom:-0.25em}:root abbr[title]{text-decoration:underline dotted;text-underline-offset:4px;cursor:help}:root del{text-decoration:line-through}:root ins{text-decoration:underline}:root s{text-decoration:line-through}:root u{text-decoration:underline}:root mark{font-style:normal;font-weight:inherit}:root address{font-style:italic;margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}:root time{font-style:normal;font-variant-numeric:tabular-nums}:root blockquote{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding-inline-start:var(--spacing-md)}:root blockquote blockquote{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);padding-inline-start:var(--spacing-sm)}:root q{font-style:inherit}:root :where(ul, ol){list-style:none;margin-bottom:var(--spacing-md);padding-inline-start:var(--list-indent)}:root li{position:relative}:root li + li{margin-top:var(--spacing-xs)}:root li > :where(p, dl, figure, table, pre){margin-top:0;margin-bottom:0}:root li > blockquote{margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm)}:root li > :where(ul, ol){margin-top:var(--spacing-xs);margin-bottom:0}:root ul > li::before{content:'';position:absolute;inset-inline-end:100%;margin-inline-end:0.75em;top:0.65em;width:0.375em;height:0.375em;background-color:currentColor;border-radius:50%}:root ol{counter-reset:list-counter}:root ol > li{counter-increment:list-counter}:root ol > li::before{content:counter(list-counter) '.';position:absolute;inset-inline-end:100%;margin-inline-end:0.5em;font-weight:600;font-variant-numeric:tabular-nums;text-align:end;color:currentColor}:root dl{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}:root dt{font-weight:600;margin-top:var(--spacing-sm)}:root dt:first-child{margin-top:0}:root dd{margin-inline-start:var(--spacing-md)}:root dt + dd{margin-top:var(--spacing-xs)}:root dd + dd{margin-top:var(--spacing-xs)}:root dd:last-child{margin-bottom:0}:root pre{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);font-family:var(--font-family-mono);line-height:1.6;overflow-x:auto;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}:root pre code{font-size:inherit;padding:0;background:none;border-radius:0}:root input, :root button, :root textarea, :root select, :root optgroup{font-family:inherit;font-size:100%;line-height:inherit}:root textarea{line-height:1.5}:root button, :root [type='button'], :root [type='reset'], :root [type='submit']{cursor:pointer}:root fieldset{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);padding:var(--spacing-sm)}:root legend{font-weight:600;padding:0 var(--spacing-xs)}:root label{display:inline-block;font-weight:600;margin-bottom:var(--spacing-xs)}:root output{display:inline-block;font-variant-numeric:tabular-nums}:root :where(meter, progress){display:inline-block;vertical-align:middle}:root :where(img, video, canvas, audio, iframe, svg){max-width:100%;height:auto;vertical-align:middle}:root figure{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg)}:root figcaption{margin-top:0.375rem;font-size:0.875em;line-height:1.5}:root table{width:100%;margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);border-collapse:collapse;font-size:1em;line-height:1.6}:root caption{margin-bottom:var(--spacing-xs);font-size:0.875em;font-weight:600;text-align:start}:root th, :root td{padding:var(--spacing-xs) var(--spacing-sm);text-align:start}:root th{font-weight:600}:root thead th{vertical-align:bottom}:root tbody th, :root tbody td{vertical-align:top}:root tfoot th, :root tfoot td{vertical-align:top}:root tbody + tbody{border-top-width:2px}:root hr{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-xl);border:0;border-top:1px solid}:root :where(:focus, :focus-visible){outline-offset:2px}:root details{margin-top:var(--spacing-md);margin-bottom:var(--spacing-md)}:root summary{cursor:pointer;font-weight:600}:root details[open] > summary{margin-bottom:var(--spacing-xs)}:root dialog{font-size:inherit;line-height:inherit}:root :where(h1, h2, h3, h4, h5, h6, p, ul:not(li > ul, li > ol), ol:not(li > ul, li > ol), dl, blockquote, figure, table, pre):first-child{margin-top:0}:root :where(p, ul, ol, dl, blockquote, figure, table, pre):last-child{margin-bottom:0}}