@davidsouther/jiffies 2.0.0 → 2.0.1

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/build/pico.css ADDED
@@ -0,0 +1,2466 @@
1
+ @charset "UTF-8";
2
+ @layer reset, theme, layout, content, component, utility, user;
3
+ @layer reset {
4
+ /**
5
+ * Document
6
+ * Content-box & Responsive typography
7
+ */
8
+ *,
9
+ *::before,
10
+ *::after {
11
+ box-sizing: border-box;
12
+ background-repeat: no-repeat;
13
+ }
14
+
15
+ ::before,
16
+ ::after {
17
+ text-decoration: inherit;
18
+ vertical-align: inherit;
19
+ }
20
+
21
+ :where(:root) {
22
+ -webkit-text-size-adjust: 100%;
23
+ text-size-adjust: 100%;
24
+ text-rendering: optimizeLegibility;
25
+ background-color: var(--background-color);
26
+ color: var(--color);
27
+ font-weight: var(--font-weight);
28
+ font-size: var(--font-size);
29
+ line-height: var(--line-height);
30
+ font-family: var(--font-family);
31
+ overflow-wrap: break-word;
32
+ cursor: default;
33
+ tab-size: 4;
34
+ }
35
+
36
+ b,
37
+ strong {
38
+ font-weight: bolder;
39
+ }
40
+
41
+ sub,
42
+ sup {
43
+ position: relative;
44
+ font-size: 0.75em;
45
+ line-height: 0;
46
+ vertical-align: baseline;
47
+ }
48
+
49
+ sub {
50
+ bottom: -0.25em;
51
+ }
52
+
53
+ sup {
54
+ top: -0.5em;
55
+ }
56
+
57
+ :where(audio, canvas, iframe, img, svg, video) {
58
+ vertical-align: middle;
59
+ }
60
+
61
+ audio,
62
+ video {
63
+ display: inline-block;
64
+ }
65
+
66
+ audio:not([controls]) {
67
+ display: none;
68
+ height: 0;
69
+ }
70
+
71
+ :where(iframe) {
72
+ border-style: none;
73
+ }
74
+
75
+ img {
76
+ max-width: 100%;
77
+ height: auto;
78
+ border-style: none;
79
+ }
80
+
81
+ :where(svg:not([fill])) {
82
+ fill: currentColor;
83
+ }
84
+
85
+ svg:not(:root) {
86
+ overflow: hidden;
87
+ }
88
+
89
+ button {
90
+ margin: 0;
91
+ overflow: visible;
92
+ font-family: inherit;
93
+ text-transform: none;
94
+ }
95
+
96
+ button,
97
+ [type=button],
98
+ [type=reset],
99
+ [type=submit] {
100
+ -webkit-appearance: button;
101
+ }
102
+
103
+ input,
104
+ optgroup,
105
+ select,
106
+ textarea {
107
+ margin: 0;
108
+ font-size: 1rem;
109
+ line-height: var(--line-height);
110
+ font-family: inherit;
111
+ letter-spacing: inherit;
112
+ }
113
+
114
+ input {
115
+ overflow: visible;
116
+ }
117
+
118
+ select {
119
+ text-transform: none;
120
+ }
121
+
122
+ legend {
123
+ max-width: 100%;
124
+ padding: 0;
125
+ color: inherit;
126
+ white-space: normal;
127
+ }
128
+
129
+ textarea {
130
+ overflow: auto;
131
+ }
132
+
133
+ [type=checkbox],
134
+ [type=radio] {
135
+ padding: 0;
136
+ }
137
+
138
+ ::-webkit-inner-spin-button,
139
+ ::-webkit-outer-spin-button {
140
+ height: auto;
141
+ }
142
+
143
+ [type=search] {
144
+ -webkit-appearance: textfield;
145
+ outline-offset: -2px;
146
+ }
147
+
148
+ [type=search]::-webkit-search-decoration {
149
+ -webkit-appearance: none;
150
+ }
151
+
152
+ ::-webkit-file-upload-button {
153
+ -webkit-appearance: button;
154
+ font: inherit;
155
+ }
156
+
157
+ ::-moz-focus-inner {
158
+ padding: 0;
159
+ border-style: none;
160
+ }
161
+
162
+ :-moz-focusring {
163
+ outline: none;
164
+ }
165
+
166
+ :-moz-ui-invalid {
167
+ box-shadow: none;
168
+ }
169
+
170
+ ::-ms-expand {
171
+ display: none;
172
+ }
173
+
174
+ [type=file],
175
+ [type=range] {
176
+ padding: 0;
177
+ border-width: 0;
178
+ }
179
+
180
+ :where(table) {
181
+ width: 100%;
182
+ border-collapse: collapse;
183
+ border-spacing: 0;
184
+ text-indent: 0;
185
+ }
186
+
187
+ hr {
188
+ height: 0;
189
+ border: 0;
190
+ border-top: 1px solid var(--muted-border-color);
191
+ color: inherit;
192
+ }
193
+
194
+ [hidden],
195
+ template {
196
+ display: none !important;
197
+ }
198
+
199
+ canvas {
200
+ display: inline-block;
201
+ }
202
+
203
+ :where(nav li)::before {
204
+ float: left;
205
+ content: "​";
206
+ }
207
+
208
+ progress {
209
+ display: inline-block;
210
+ vertical-align: baseline;
211
+ }
212
+ }
213
+ @layer theme {
214
+ /**
215
+ * Theme: default
216
+ */
217
+ :root {
218
+ --font-family: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
219
+ "Cantarell", "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
220
+ "Segoe UI Symbol", "Noto Color Emoji";
221
+ --font-family-monospace: "Menlo", "Consolas", "Roboto Mono",
222
+ "Ubuntu Monospace", "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace,
223
+ "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
224
+ --line-height: 1.5;
225
+ --font-weight: 400;
226
+ --font-size: 16px;
227
+ --border-radius: 0.25rem;
228
+ --border-width: 1px;
229
+ --outline-width: 3px;
230
+ --spacing: 1rem;
231
+ --typography-spacing-vertical: 1.5rem;
232
+ --block-spacing-vertical: calc(var(--spacing) * 2);
233
+ --block-spacing-horizontal: var(--spacing);
234
+ --grid-spacing-vertical: 0;
235
+ --grid-spacing-horizontal: var(--spacing);
236
+ --form-element-spacing-vertical: 0.75rem;
237
+ --form-element-spacing-horizontal: 1rem;
238
+ --nav-element-spacing-vertical: 1rem;
239
+ --nav-element-spacing-horizontal: 0.5rem;
240
+ --nav-link-spacing-vertical: 0.5rem;
241
+ --nav-link-spacing-horizontal: 0.5rem;
242
+ --form-label-font-weight: var(--font-weight);
243
+ --transition: 0.2s ease-in-out;
244
+ }
245
+ @media (min-width: 576px) {
246
+ :root {
247
+ --font-size: 17px;
248
+ }
249
+ }
250
+ @media (min-width: 768px) {
251
+ :root {
252
+ --font-size: 18px;
253
+ }
254
+ }
255
+ @media (min-width: 992px) {
256
+ :root {
257
+ --font-size: 19px;
258
+ }
259
+ }
260
+ @media (min-width: 1200px) {
261
+ :root {
262
+ --font-size: 20px;
263
+ }
264
+ }
265
+
266
+ @media (min-width: 576px) {
267
+ body > header,
268
+ body > main,
269
+ body > footer,
270
+ section {
271
+ --block-spacing-vertical: calc(var(--spacing) * 1.25);
272
+ }
273
+ }
274
+ @media (min-width: 768px) {
275
+ body > header,
276
+ body > main,
277
+ body > footer,
278
+ section {
279
+ --block-spacing-vertical: calc(var(--spacing) * 1.5);
280
+ }
281
+ }
282
+ @media (min-width: 992px) {
283
+ body > header,
284
+ body > main,
285
+ body > footer,
286
+ section {
287
+ --block-spacing-vertical: calc(var(--spacing) * 1.75);
288
+ }
289
+ }
290
+ @media (min-width: 1200px) {
291
+ body > header,
292
+ body > main,
293
+ body > footer,
294
+ section {
295
+ --block-spacing-vertical: calc(var(--spacing) * 2);
296
+ }
297
+ }
298
+
299
+ @media (min-width: 576px) {
300
+ article {
301
+ --block-spacing-horizontal: calc(var(--spacing) * 1.25);
302
+ }
303
+ }
304
+ @media (min-width: 768px) {
305
+ article {
306
+ --block-spacing-horizontal: calc(var(--spacing) * 1.5);
307
+ }
308
+ }
309
+ @media (min-width: 992px) {
310
+ article {
311
+ --block-spacing-horizontal: calc(var(--spacing) * 1.75);
312
+ }
313
+ }
314
+ @media (min-width: 1200px) {
315
+ article {
316
+ --block-spacing-horizontal: calc(var(--spacing) * 2);
317
+ }
318
+ }
319
+
320
+ dialog > article {
321
+ --block-spacing-vertical: calc(var(--spacing) * 2);
322
+ --block-spacing-horizontal: var(--spacing);
323
+ }
324
+ @media (min-width: 576px) {
325
+ dialog > article {
326
+ --block-spacing-vertical: calc(var(--spacing) * 2.5);
327
+ --block-spacing-horizontal: calc(var(--spacing) * 1.25);
328
+ }
329
+ }
330
+ @media (min-width: 768px) {
331
+ dialog > article {
332
+ --block-spacing-vertical: calc(var(--spacing) * 3);
333
+ --block-spacing-horizontal: calc(var(--spacing) * 1.5);
334
+ }
335
+ }
336
+
337
+ a {
338
+ --text-decoration: none;
339
+ }
340
+ a.secondary, a.contrast {
341
+ --text-decoration: underline;
342
+ }
343
+
344
+ small {
345
+ --font-size: 0.875em;
346
+ }
347
+
348
+ h1,
349
+ h2,
350
+ h3,
351
+ h4,
352
+ h5,
353
+ h6 {
354
+ --font-weight: 700;
355
+ }
356
+
357
+ h1 {
358
+ --font-size: 2rem;
359
+ --typography-spacing-vertical: 3rem;
360
+ }
361
+
362
+ h2 {
363
+ --font-size: 1.75rem;
364
+ --typography-spacing-vertical: 2.625rem;
365
+ }
366
+
367
+ h3 {
368
+ --font-size: 1.5rem;
369
+ --typography-spacing-vertical: 2.25rem;
370
+ }
371
+
372
+ h4 {
373
+ --font-size: 1.25rem;
374
+ --typography-spacing-vertical: 1.874rem;
375
+ }
376
+
377
+ h5 {
378
+ --font-size: 1.125rem;
379
+ --typography-spacing-vertical: 1.6875rem;
380
+ }
381
+
382
+ [type=checkbox],
383
+ [type=radio] {
384
+ --border-width: 2px;
385
+ }
386
+
387
+ [type=checkbox][role=switch] {
388
+ --border-width: 3px;
389
+ }
390
+
391
+ thead th,
392
+ thead td,
393
+ tfoot th,
394
+ tfoot td {
395
+ --border-width: 3px;
396
+ }
397
+
398
+ :not(thead):not(tfoot) > * > td {
399
+ --font-size: 0.875em;
400
+ }
401
+
402
+ pre,
403
+ code,
404
+ kbd,
405
+ samp {
406
+ --font-family: var(--font-family-monospace);
407
+ }
408
+
409
+ kbd {
410
+ --font-weight: bolder;
411
+ }
412
+
413
+ [data-theme=light],
414
+ :root:not([data-theme=dark]) {
415
+ color-scheme: light;
416
+ --background-color: #fff;
417
+ --color: hsl(205deg, 20%, 32%);
418
+ --h1-color: hsl(205deg, 30%, 15%);
419
+ --h2-color: #24333e;
420
+ --h3-color: hsl(205deg, 25%, 23%);
421
+ --h4-color: #374956;
422
+ --h5-color: hsl(205deg, 20%, 32%);
423
+ --h6-color: #4d606d;
424
+ --muted-color: hsl(205deg, 10%, 50%);
425
+ --muted-border-color: hsl(205deg, 20%, 94%);
426
+ --primary: hsl(195deg, 85%, 41%);
427
+ --primary-hover: hsl(195deg, 90%, 32%);
428
+ --primary-focus: rgba(16, 149, 193, 0.125);
429
+ --primary-inverse: #fff;
430
+ --secondary: hsl(205deg, 15%, 41%);
431
+ --secondary-hover: hsl(205deg, 20%, 32%);
432
+ --secondary-focus: rgba(89, 107, 120, 0.125);
433
+ --secondary-inverse: #fff;
434
+ --contrast: hsl(205deg, 30%, 15%);
435
+ --contrast-hover: #000;
436
+ --contrast-focus: rgba(89, 107, 120, 0.125);
437
+ --contrast-inverse: #fff;
438
+ --mark-background-color: #fff8e1;
439
+ --mark-color: hsl(205deg, 30%, 15%);
440
+ --ins-color: #388e3c;
441
+ --del-color: #c62828;
442
+ --blockquote-border-color: var(--muted-border-color);
443
+ --blockquote-footer-color: var(--muted-color);
444
+ --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
445
+ --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
446
+ --form-element-background-color: transparent;
447
+ --form-element-border-color: hsl(205deg, 14%, 68%);
448
+ --form-element-color: var(--color);
449
+ --form-element-placeholder-color: var(--muted-color);
450
+ --form-element-active-background-color: transparent;
451
+ --form-element-active-border-color: var(--primary);
452
+ --form-element-focus-color: var(--primary-focus);
453
+ --form-element-disabled-background-color: hsl(205deg, 18%, 86%);
454
+ --form-element-disabled-border-color: hsl(205deg, 14%, 68%);
455
+ --form-element-disabled-opacity: 0.5;
456
+ --form-element-invalid-border-color: #c62828;
457
+ --form-element-invalid-active-border-color: #d32f2f;
458
+ --form-element-invalid-focus-color: rgba(211, 47, 47, 0.125);
459
+ --form-element-valid-border-color: #388e3c;
460
+ --form-element-valid-active-border-color: #43a047;
461
+ --form-element-valid-focus-color: rgba(67, 160, 71, 0.125);
462
+ --switch-background-color: hsl(205deg, 16%, 77%);
463
+ --switch-color: var(--primary-inverse);
464
+ --switch-checked-background-color: var(--primary);
465
+ --range-border-color: hsl(205deg, 18%, 86%);
466
+ --range-active-border-color: hsl(205deg, 16%, 77%);
467
+ --range-thumb-border-color: var(--background-color);
468
+ --range-thumb-color: var(--secondary);
469
+ --range-thumb-hover-color: var(--secondary-hover);
470
+ --range-thumb-active-color: var(--primary);
471
+ --table-border-color: var(--muted-border-color);
472
+ --table-row-stripped-background-color: #f6f8f9;
473
+ --code-background-color: hsl(205deg, 20%, 94%);
474
+ --code-color: var(--muted-color);
475
+ --code-kbd-background-color: var(--contrast);
476
+ --code-kbd-color: var(--contrast-inverse);
477
+ --code-tag-color: hsl(330deg, 40%, 50%);
478
+ --code-property-color: hsl(185deg, 40%, 40%);
479
+ --code-value-color: hsl(40deg, 20%, 50%);
480
+ --code-comment-color: hsl(205deg, 14%, 68%);
481
+ --accordion-border-color: var(--muted-border-color);
482
+ --accordion-close-summary-color: var(--color);
483
+ --accordion-open-summary-color: var(--muted-color);
484
+ --card-background-color: var(--background-color);
485
+ --card-border-color: var(--muted-border-color);
486
+ --card-box-shadow: 0 0.125rem 1rem rgba(27, 40, 50, 0.04),
487
+ 0 0.125rem 2rem rgba(27, 40, 50, 0.08),
488
+ 0 0 0 0.0625rem rgba(27, 40, 50, 0.024);
489
+ --card-sectionning-background-color: #fbfbfc;
490
+ --dropdown-background-color: #fbfbfc;
491
+ --dropdown-border-color: #e1e6eb;
492
+ --dropdown-box-shadow: var(--card-box-shadow);
493
+ --dropdown-color: var(--color);
494
+ --dropdown-hover-background-color: hsl(205deg, 20%, 94%);
495
+ --modal-overlay-background-color: rgba(213, 220, 226, 0.8);
496
+ --progress-background-color: hsl(205deg, 18%, 86%);
497
+ --progress-color: var(--primary);
498
+ --loading-spinner-opacity: 0.5;
499
+ --tooltip-background-color: var(--contrast);
500
+ --tooltip-color: var(--contrast-inverse);
501
+ --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
502
+ --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(65, 84, 98, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
503
+ --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
504
+ --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
505
+ --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(115, 130, 140, 0.999)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
506
+ --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(65, 84, 98, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
507
+ --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(198, 40, 40, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
508
+ --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
509
+ --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(65, 84, 98, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
510
+ --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(65, 84, 98, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
511
+ --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(56, 142, 60, 0.999)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
512
+ }
513
+
514
+ @media only screen and (prefers-color-scheme: dark) {
515
+ :root:not([data-theme=light]) {
516
+ color-scheme: dark;
517
+ --background-color: #11191f;
518
+ --color: hsl(205deg, 16%, 77%);
519
+ --h1-color: hsl(205deg, 20%, 94%);
520
+ --h2-color: #e1e6eb;
521
+ --h3-color: hsl(205deg, 18%, 86%);
522
+ --h4-color: #c8d1d8;
523
+ --h5-color: hsl(205deg, 16%, 77%);
524
+ --h6-color: #afbbc4;
525
+ --muted-color: hsl(205deg, 10%, 50%);
526
+ --muted-border-color: #1f2d38;
527
+ --primary: hsl(195deg, 85%, 41%);
528
+ --primary-hover: hsl(195deg, 80%, 50%);
529
+ --primary-focus: rgba(16, 149, 193, 0.25);
530
+ --primary-inverse: #fff;
531
+ --secondary: hsl(205deg, 15%, 41%);
532
+ --secondary-hover: hsl(205deg, 10%, 50%);
533
+ --secondary-focus: rgba(115, 130, 140, 0.25);
534
+ --secondary-inverse: #fff;
535
+ --contrast: hsl(205deg, 20%, 94%);
536
+ --contrast-hover: #fff;
537
+ --contrast-focus: rgba(115, 130, 140, 0.25);
538
+ --contrast-inverse: #000;
539
+ --mark-background-color: #d1c284;
540
+ --mark-color: #11191f;
541
+ --ins-color: #388e3c;
542
+ --del-color: #c62828;
543
+ --blockquote-border-color: var(--muted-border-color);
544
+ --blockquote-footer-color: var(--muted-color);
545
+ --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
546
+ --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
547
+ --form-element-background-color: #11191f;
548
+ --form-element-border-color: #374956;
549
+ --form-element-color: var(--color);
550
+ --form-element-placeholder-color: var(--muted-color);
551
+ --form-element-active-background-color: var(--form-element-background-color);
552
+ --form-element-active-border-color: var(--primary);
553
+ --form-element-focus-color: var(--primary-focus);
554
+ --form-element-disabled-background-color: hsl(205deg, 25%, 23%);
555
+ --form-element-disabled-border-color: hsl(205deg, 20%, 32%);
556
+ --form-element-disabled-opacity: 0.5;
557
+ --form-element-invalid-border-color: #b71c1c;
558
+ --form-element-invalid-active-border-color: #c62828;
559
+ --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25);
560
+ --form-element-valid-border-color: #2e7d32;
561
+ --form-element-valid-active-border-color: #388e3c;
562
+ --form-element-valid-focus-color: rgba(56, 142, 60, 0.25);
563
+ --switch-background-color: #374956;
564
+ --switch-color: var(--primary-inverse);
565
+ --switch-checked-background-color: var(--primary);
566
+ --range-border-color: #24333e;
567
+ --range-active-border-color: hsl(205deg, 25%, 23%);
568
+ --range-thumb-border-color: var(--background-color);
569
+ --range-thumb-color: var(--secondary);
570
+ --range-thumb-hover-color: var(--secondary-hover);
571
+ --range-thumb-active-color: var(--primary);
572
+ --table-border-color: var(--muted-border-color);
573
+ --table-row-stripped-background-color: rgba(115, 130, 140, 0.05);
574
+ --code-background-color: #18232c;
575
+ --code-color: var(--muted-color);
576
+ --code-kbd-background-color: var(--contrast);
577
+ --code-kbd-color: var(--contrast-inverse);
578
+ --code-tag-color: hsl(330deg, 30%, 50%);
579
+ --code-property-color: hsl(185deg, 30%, 50%);
580
+ --code-value-color: hsl(40deg, 10%, 50%);
581
+ --code-comment-color: #4d606d;
582
+ --accordion-border-color: var(--muted-border-color);
583
+ --accordion-active-summary-color: var(--primary);
584
+ --accordion-close-summary-color: var(--color);
585
+ --accordion-open-summary-color: var(--muted-color);
586
+ --card-background-color: #141e26;
587
+ --card-border-color: #11191f;
588
+ --card-box-shadow: 0 0.125rem 1rem rgba(0, 0, 0, 0.06),
589
+ 0 0.125rem 2rem rgba(0, 0, 0, 0.12),
590
+ 0 0 0 0.0625rem rgba(0, 0, 0, 0.036);
591
+ --card-sectionning-background-color: #18232c;
592
+ --dropdown-background-color: hsl(205deg, 30%, 15%);
593
+ --dropdown-border-color: #24333e;
594
+ --dropdown-box-shadow: var(--card-box-shadow);
595
+ --dropdown-color: var(--color);
596
+ --dropdown-hover-background-color: rgba(36, 51, 62, 0.75);
597
+ --modal-overlay-background-color: rgba(36, 51, 62, 0.9);
598
+ --progress-background-color: #24333e;
599
+ --progress-color: var(--primary);
600
+ --loading-spinner-opacity: 0.5;
601
+ --tooltip-background-color: var(--contrast);
602
+ --tooltip-color: var(--contrast-inverse);
603
+ --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
604
+ --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
605
+ --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
606
+ --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(0, 0, 0, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
607
+ --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(115, 130, 140, 0.999)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
608
+ --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
609
+ --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(183, 28, 28, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
610
+ --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
611
+ --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
612
+ --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
613
+ --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(46, 125, 50, 0.999)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
614
+ }
615
+ }
616
+ [data-theme=dark] {
617
+ color-scheme: dark;
618
+ --background-color: #11191f;
619
+ --color: hsl(205deg, 16%, 77%);
620
+ --h1-color: hsl(205deg, 20%, 94%);
621
+ --h2-color: #e1e6eb;
622
+ --h3-color: hsl(205deg, 18%, 86%);
623
+ --h4-color: #c8d1d8;
624
+ --h5-color: hsl(205deg, 16%, 77%);
625
+ --h6-color: #afbbc4;
626
+ --muted-color: hsl(205deg, 10%, 50%);
627
+ --muted-border-color: #1f2d38;
628
+ --primary: hsl(195deg, 85%, 41%);
629
+ --primary-hover: hsl(195deg, 80%, 50%);
630
+ --primary-focus: rgba(16, 149, 193, 0.25);
631
+ --primary-inverse: #fff;
632
+ --secondary: hsl(205deg, 15%, 41%);
633
+ --secondary-hover: hsl(205deg, 10%, 50%);
634
+ --secondary-focus: rgba(115, 130, 140, 0.25);
635
+ --secondary-inverse: #fff;
636
+ --contrast: hsl(205deg, 20%, 94%);
637
+ --contrast-hover: #fff;
638
+ --contrast-focus: rgba(115, 130, 140, 0.25);
639
+ --contrast-inverse: #000;
640
+ --mark-background-color: #d1c284;
641
+ --mark-color: #11191f;
642
+ --ins-color: #388e3c;
643
+ --del-color: #c62828;
644
+ --blockquote-border-color: var(--muted-border-color);
645
+ --blockquote-footer-color: var(--muted-color);
646
+ --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
647
+ --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
648
+ --form-element-background-color: #11191f;
649
+ --form-element-border-color: #374956;
650
+ --form-element-color: var(--color);
651
+ --form-element-placeholder-color: var(--muted-color);
652
+ --form-element-active-background-color: var(--form-element-background-color);
653
+ --form-element-active-border-color: var(--primary);
654
+ --form-element-focus-color: var(--primary-focus);
655
+ --form-element-disabled-background-color: hsl(205deg, 25%, 23%);
656
+ --form-element-disabled-border-color: hsl(205deg, 20%, 32%);
657
+ --form-element-disabled-opacity: 0.5;
658
+ --form-element-invalid-border-color: #b71c1c;
659
+ --form-element-invalid-active-border-color: #c62828;
660
+ --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25);
661
+ --form-element-valid-border-color: #2e7d32;
662
+ --form-element-valid-active-border-color: #388e3c;
663
+ --form-element-valid-focus-color: rgba(56, 142, 60, 0.25);
664
+ --switch-background-color: #374956;
665
+ --switch-color: var(--primary-inverse);
666
+ --switch-checked-background-color: var(--primary);
667
+ --range-border-color: #24333e;
668
+ --range-active-border-color: hsl(205deg, 25%, 23%);
669
+ --range-thumb-border-color: var(--background-color);
670
+ --range-thumb-color: var(--secondary);
671
+ --range-thumb-hover-color: var(--secondary-hover);
672
+ --range-thumb-active-color: var(--primary);
673
+ --table-border-color: var(--muted-border-color);
674
+ --table-row-stripped-background-color: rgba(115, 130, 140, 0.05);
675
+ --code-background-color: #18232c;
676
+ --code-color: var(--muted-color);
677
+ --code-kbd-background-color: var(--contrast);
678
+ --code-kbd-color: var(--contrast-inverse);
679
+ --code-tag-color: hsl(330deg, 30%, 50%);
680
+ --code-property-color: hsl(185deg, 30%, 50%);
681
+ --code-value-color: hsl(40deg, 10%, 50%);
682
+ --code-comment-color: #4d606d;
683
+ --accordion-border-color: var(--muted-border-color);
684
+ --accordion-active-summary-color: var(--primary);
685
+ --accordion-close-summary-color: var(--color);
686
+ --accordion-open-summary-color: var(--muted-color);
687
+ --card-background-color: #141e26;
688
+ --card-border-color: #11191f;
689
+ --card-box-shadow: 0 0.125rem 1rem rgba(0, 0, 0, 0.06),
690
+ 0 0.125rem 2rem rgba(0, 0, 0, 0.12),
691
+ 0 0 0 0.0625rem rgba(0, 0, 0, 0.036);
692
+ --card-sectionning-background-color: #18232c;
693
+ --dropdown-background-color: hsl(205deg, 30%, 15%);
694
+ --dropdown-border-color: #24333e;
695
+ --dropdown-box-shadow: var(--card-box-shadow);
696
+ --dropdown-color: var(--color);
697
+ --dropdown-hover-background-color: rgba(36, 51, 62, 0.75);
698
+ --modal-overlay-background-color: rgba(36, 51, 62, 0.9);
699
+ --progress-background-color: #24333e;
700
+ --progress-color: var(--primary);
701
+ --loading-spinner-opacity: 0.5;
702
+ --tooltip-background-color: var(--contrast);
703
+ --tooltip-color: var(--contrast-inverse);
704
+ --icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
705
+ --icon-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
706
+ --icon-chevron-button: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(255, 255, 255, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
707
+ --icon-chevron-button-inverse: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(0, 0, 0, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
708
+ --icon-close: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(115, 130, 140, 0.999)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'%3E%3C/line%3E%3Cline x1='6' y1='6' x2='18' y2='18'%3E%3C/line%3E%3C/svg%3E");
709
+ --icon-date: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
710
+ --icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(183, 28, 28, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
711
+ --icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23FFF' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E");
712
+ --icon-search: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
713
+ --icon-time: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(162, 175, 185, 0.999)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolyline points='12 6 12 12 16 14'%3E%3C/polyline%3E%3C/svg%3E");
714
+ --icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgba(46, 125, 50, 0.999)' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
715
+ }
716
+ }
717
+ @layer layout {
718
+ /**
719
+ * Sectioning
720
+ * Container and responsive spacings for header, main, footer
721
+ */
722
+ main {
723
+ display: block;
724
+ }
725
+
726
+ @import url("../themes/default/styles");
727
+ body {
728
+ width: 100%;
729
+ min-height: 100vh;
730
+ margin: 0;
731
+ }
732
+ body > header,
733
+ body > main,
734
+ body > footer {
735
+ width: 100%;
736
+ margin: 0 auto;
737
+ padding: 0 var(--spacing);
738
+ }
739
+
740
+ /**
741
+ * Section
742
+ * Responsive spacings for section
743
+ */
744
+ section {
745
+ margin-bottom: var(--block-spacing-vertical);
746
+ }
747
+
748
+ .flex {
749
+ display: flex;
750
+ flex-direction: column;
751
+ }
752
+ .flex.row {
753
+ flex-direction: row;
754
+ }
755
+ .flex.row.inline > * {
756
+ display: inline-block;
757
+ }
758
+ .flex.justify-around {
759
+ justify-content: space-around;
760
+ }
761
+ .flex.justify-between {
762
+ justify-content: space-between;
763
+ }
764
+ .flex.justify-center {
765
+ justify-content: center;
766
+ }
767
+ .flex.align-baseline {
768
+ align-items: baseline;
769
+ }
770
+ .flex.align-center {
771
+ align-items: center;
772
+ }
773
+ .flex.align-stretch {
774
+ align-items: stretch;
775
+ }
776
+ .flex.align-end {
777
+ align-items: end;
778
+ }
779
+ .flex > .flex-1 {
780
+ flex: 1;
781
+ }
782
+ .flex > .flex-2 {
783
+ flex: 2;
784
+ }
785
+ .flex > .flex-3 {
786
+ flex: 3;
787
+ }
788
+ .flex > .flex-4 {
789
+ flex: 4;
790
+ }
791
+
792
+ /**
793
+ * Grid
794
+ * Minimal grid system with auto-layout columns
795
+ */
796
+ .grid {
797
+ grid-column-gap: var(--grid-spacing-horizontal);
798
+ grid-row-gap: var(--grid-spacing-vertical);
799
+ display: grid;
800
+ grid-template-columns: 1fr;
801
+ margin: 0;
802
+ }
803
+ @media (min-width: 992px) {
804
+ .grid {
805
+ grid-template-columns: repeat(auto-fit, minmax(0%, 1fr));
806
+ }
807
+ }
808
+ .grid > * {
809
+ min-width: 0;
810
+ }
811
+
812
+ /**
813
+ * Horizontal scroller (<figure>)
814
+ */
815
+ figure {
816
+ display: block;
817
+ margin: 0;
818
+ padding: 0;
819
+ overflow-x: auto;
820
+ }
821
+ figure figcaption {
822
+ padding: calc(var(--spacing) * 0.5) 0;
823
+ color: var(--muted-color);
824
+ }
825
+ }
826
+ @layer content {
827
+ address,
828
+ blockquote,
829
+ dl,
830
+ figure,
831
+ form,
832
+ ol,
833
+ p,
834
+ pre,
835
+ table,
836
+ ul {
837
+ margin-top: 0;
838
+ margin-bottom: var(--typography-spacing-vertical);
839
+ color: var(--color);
840
+ font-style: normal;
841
+ font-weight: var(--font-weight);
842
+ font-size: var(--font-size);
843
+ }
844
+
845
+ a,
846
+ [role=link] {
847
+ --color: var(--primary);
848
+ --background-color: transparent;
849
+ outline: none;
850
+ background-color: var(--background-color);
851
+ color: var(--color);
852
+ text-decoration: var(--text-decoration);
853
+ transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
854
+ }
855
+ a:is([aria-current], :hover, :active, :focus),
856
+ [role=link]:is([aria-current], :hover, :active, :focus) {
857
+ --color: var(--primary-hover);
858
+ --text-decoration: underline;
859
+ }
860
+ a:focus,
861
+ [role=link]:focus {
862
+ --background-color: var(--primary-focus);
863
+ }
864
+ a.secondary,
865
+ [role=link].secondary {
866
+ --color: var(--secondary);
867
+ }
868
+ a.secondary:is([aria-current], :hover, :active, :focus),
869
+ [role=link].secondary:is([aria-current], :hover, :active, :focus) {
870
+ --color: var(--secondary-hover);
871
+ }
872
+ a.secondary:focus,
873
+ [role=link].secondary:focus {
874
+ --background-color: var(--secondary-focus);
875
+ }
876
+ a.contrast,
877
+ [role=link].contrast {
878
+ --color: var(--contrast);
879
+ }
880
+ a.contrast:is([aria-current], :hover, :active, :focus),
881
+ [role=link].contrast:is([aria-current], :hover, :active, :focus) {
882
+ --color: var(--contrast-hover);
883
+ }
884
+ a.contrast:focus,
885
+ [role=link].contrast:focus {
886
+ --background-color: var(--contrast-focus);
887
+ }
888
+
889
+ h1,
890
+ h2,
891
+ h3,
892
+ h4,
893
+ h5,
894
+ h6 {
895
+ margin-top: 0;
896
+ margin-bottom: var(--typography-spacing-vertical);
897
+ color: var(--color);
898
+ font-weight: var(--font-weight);
899
+ font-size: var(--font-size);
900
+ font-family: var(--font-family);
901
+ }
902
+
903
+ h1 {
904
+ --color: var(--h1-color);
905
+ }
906
+
907
+ h2 {
908
+ --color: var(--h2-color);
909
+ }
910
+
911
+ h3 {
912
+ --color: var(--h3-color);
913
+ }
914
+
915
+ h4 {
916
+ --color: var(--h4-color);
917
+ }
918
+
919
+ h5 {
920
+ --color: var(--h5-color);
921
+ }
922
+
923
+ h6 {
924
+ --color: var(--h6-color);
925
+ }
926
+
927
+ :where(address, blockquote, dl, figure, form, ol, p, pre, table, ul) ~ :is(h1, h2, h3, h4, h5, h6) {
928
+ margin-top: var(--typography-spacing-vertical);
929
+ }
930
+
931
+ hgroup {
932
+ margin-bottom: var(--typography-spacing-vertical);
933
+ }
934
+ hgroup > * {
935
+ margin-bottom: 0;
936
+ }
937
+ hgroup > *:last-child {
938
+ --color: var(--muted-color);
939
+ --font-weight: unset;
940
+ font-size: 1rem;
941
+ font-family: unset;
942
+ }
943
+
944
+ p {
945
+ margin-bottom: var(--typography-spacing-vertical);
946
+ }
947
+
948
+ small {
949
+ font-size: var(--font-size);
950
+ }
951
+
952
+ :where(dl, ol, ul) {
953
+ padding-right: 0;
954
+ padding-left: var(--spacing);
955
+ padding-inline-start: var(--spacing);
956
+ padding-inline-end: 0;
957
+ }
958
+ :where(dl, ol, ul) li {
959
+ margin-bottom: calc(var(--typography-spacing-vertical) * 0.25);
960
+ }
961
+
962
+ :where(dl, ol, ul) :is(dl, ol, ul) {
963
+ margin: 0;
964
+ margin-top: calc(var(--typography-spacing-vertical) * 0.25);
965
+ }
966
+
967
+ ul li {
968
+ list-style: square;
969
+ }
970
+
971
+ mark {
972
+ padding: 0.125rem 0.25rem;
973
+ background-color: var(--mark-background-color);
974
+ color: var(--mark-color);
975
+ vertical-align: baseline;
976
+ }
977
+
978
+ blockquote {
979
+ display: block;
980
+ margin: var(--typography-spacing-vertical) 0;
981
+ padding: var(--spacing);
982
+ border-right: none;
983
+ border-left: 0.25rem solid var(--blockquote-border-color);
984
+ border-inline-start: 0.25rem solid var(--blockquote-border-color);
985
+ border-inline-end: none;
986
+ }
987
+ blockquote footer {
988
+ margin-top: calc(var(--typography-spacing-vertical) * 0.5);
989
+ color: var(--blockquote-footer-color);
990
+ }
991
+
992
+ abbr[title] {
993
+ border-bottom: 1px dotted;
994
+ text-decoration: none;
995
+ cursor: help;
996
+ }
997
+
998
+ ins {
999
+ color: var(--ins-color);
1000
+ text-decoration: none;
1001
+ }
1002
+
1003
+ del {
1004
+ color: var(--del-color);
1005
+ text-decoration: none;
1006
+ }
1007
+
1008
+ ::selection {
1009
+ background-color: var(--primary-focus);
1010
+ }
1011
+
1012
+ button {
1013
+ display: block;
1014
+ width: 100%;
1015
+ margin-bottom: var(--spacing);
1016
+ }
1017
+
1018
+ [role=button] {
1019
+ display: inline-block;
1020
+ text-decoration: none;
1021
+ }
1022
+
1023
+ button,
1024
+ input[type=submit],
1025
+ input[type=button],
1026
+ input[type=reset],
1027
+ [role=button] {
1028
+ --background-color: var(--primary);
1029
+ --border-color: var(--primary);
1030
+ --color: var(--primary-inverse);
1031
+ --box-shadow: var(--button-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
1032
+ padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
1033
+ border: var(--border-width) solid var(--border-color);
1034
+ border-radius: var(--border-radius);
1035
+ outline: none;
1036
+ background-color: var(--background-color);
1037
+ box-shadow: var(--box-shadow);
1038
+ color: var(--color);
1039
+ font-weight: var(--font-weight);
1040
+ font-size: 1rem;
1041
+ line-height: var(--line-height);
1042
+ text-align: center;
1043
+ cursor: pointer;
1044
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1045
+ }
1046
+ button:is([aria-current], :hover, :active, :focus),
1047
+ input[type=submit]:is([aria-current], :hover, :active, :focus),
1048
+ input[type=button]:is([aria-current], :hover, :active, :focus),
1049
+ input[type=reset]:is([aria-current], :hover, :active, :focus),
1050
+ [role=button]:is([aria-current], :hover, :active, :focus) {
1051
+ --background-color: var(--primary-hover);
1052
+ --border-color: var(--primary-hover);
1053
+ --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
1054
+ --color: var(--primary-inverse);
1055
+ }
1056
+ button:focus,
1057
+ input[type=submit]:focus,
1058
+ input[type=button]:focus,
1059
+ input[type=reset]:focus,
1060
+ [role=button]:focus {
1061
+ --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1062
+ 0 0 0 var(--outline-width) var(--primary-focus);
1063
+ }
1064
+
1065
+ :is(button, input[type=submit], input[type=button], [role=button]).secondary,
1066
+ input[type=reset] {
1067
+ --background-color: var(--secondary);
1068
+ --border-color: var(--secondary);
1069
+ --color: var(--secondary-inverse);
1070
+ cursor: pointer;
1071
+ }
1072
+ :is(button, input[type=submit], input[type=button], [role=button]).secondary:is([aria-current], :hover, :active, :focus),
1073
+ input[type=reset]:is([aria-current], :hover, :active, :focus) {
1074
+ --background-color: var(--secondary-hover);
1075
+ --border-color: var(--secondary-hover);
1076
+ --color: var(--secondary-inverse);
1077
+ }
1078
+ :is(button, input[type=submit], input[type=button], [role=button]).secondary:focus,
1079
+ input[type=reset]:focus {
1080
+ --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1081
+ 0 0 0 var(--outline-width) var(--secondary-focus);
1082
+ }
1083
+
1084
+ :is(button, input[type=submit], input[type=button], [role=button]).contrast {
1085
+ --background-color: var(--contrast);
1086
+ --border-color: var(--contrast);
1087
+ --color: var(--contrast-inverse);
1088
+ }
1089
+ :is(button, input[type=submit], input[type=button], [role=button]).contrast:is([aria-current], :hover, :active, :focus) {
1090
+ --background-color: var(--contrast-hover);
1091
+ --border-color: var(--contrast-hover);
1092
+ --color: var(--contrast-inverse);
1093
+ }
1094
+ :is(button, input[type=submit], input[type=button], [role=button]).contrast:focus {
1095
+ --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1096
+ 0 0 0 var(--outline-width) var(--contrast-focus);
1097
+ }
1098
+
1099
+ :is(button, input[type=submit], input[type=button], [role=button]).outline,
1100
+ input[type=reset].outline {
1101
+ --background-color: transparent;
1102
+ --color: var(--primary);
1103
+ }
1104
+ :is(button, input[type=submit], input[type=button], [role=button]).outline:is([aria-current], :hover, :active, :focus),
1105
+ input[type=reset].outline:is([aria-current], :hover, :active, :focus) {
1106
+ --background-color: transparent;
1107
+ --color: var(--primary-hover);
1108
+ }
1109
+
1110
+ :is(button, input[type=submit], input[type=button], [role=button]).outline.secondary,
1111
+ input[type=reset].outline {
1112
+ --color: var(--secondary);
1113
+ }
1114
+ :is(button, input[type=submit], input[type=button], [role=button]).outline.secondary:is([aria-current], :hover, :active, :focus),
1115
+ input[type=reset].outline:is([aria-current], :hover, :active, :focus) {
1116
+ --color: var(--secondary-hover);
1117
+ }
1118
+
1119
+ :is(button, input[type=submit], input[type=button], [role=button]).outline.contrast {
1120
+ --color: var(--contrast);
1121
+ }
1122
+ :is(button, input[type=submit], input[type=button], [role=button]).outline.contrast:is([aria-current], :hover, :active, :focus) {
1123
+ --color: var(--contrast-hover);
1124
+ }
1125
+
1126
+ :where(button, [type=submit], [type=button], [type=reset], [role=button])[disabled],
1127
+ :where(fieldset[disabled]) :is(button, [type=submit], [type=button], [type=reset], [role=button]),
1128
+ a[role=button]:not([href]) {
1129
+ opacity: 0.5;
1130
+ pointer-events: none;
1131
+ }
1132
+
1133
+ input:not([type=checkbox]):not([type=radio]):not([type=range]) {
1134
+ height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
1135
+ }
1136
+
1137
+ fieldset {
1138
+ margin: 0;
1139
+ margin-bottom: var(--spacing);
1140
+ padding: 0;
1141
+ border: 0;
1142
+ }
1143
+
1144
+ label,
1145
+ fieldset legend {
1146
+ display: block;
1147
+ margin-bottom: calc(var(--spacing) * 0.25);
1148
+ font-weight: var(--form-label-font-weight, var(--font-weight));
1149
+ }
1150
+
1151
+ input:not([type=checkbox]):not([type=radio]),
1152
+ select,
1153
+ textarea {
1154
+ width: 100%;
1155
+ }
1156
+
1157
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),
1158
+ select,
1159
+ textarea {
1160
+ appearance: none;
1161
+ padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
1162
+ vertical-align: middle;
1163
+ }
1164
+
1165
+ input,
1166
+ select,
1167
+ textarea {
1168
+ --background-color: var(--form-element-background-color);
1169
+ --border-color: var(--form-element-border-color);
1170
+ --color: var(--form-element-color);
1171
+ --box-shadow: none;
1172
+ border: var(--border-width) solid var(--border-color);
1173
+ border-radius: var(--border-radius);
1174
+ outline: none;
1175
+ background-color: var(--background-color);
1176
+ box-shadow: var(--box-shadow);
1177
+ color: var(--color);
1178
+ font-weight: var(--font-weight);
1179
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1180
+ }
1181
+
1182
+ input:not([type=submit]):not([type=button]):not([type=reset]):not([type=checkbox]):not([type=radio]):not([readonly]):is(:active, :focus),
1183
+ :where(select, textarea):is(:active, :focus) {
1184
+ --background-color: var(--form-element-active-background-color);
1185
+ }
1186
+
1187
+ input:not([type=submit]):not([type=button]):not([type=reset]):not([role=switch]):not([readonly]):is(:active, :focus),
1188
+ :where(select, textarea):is(:active, :focus) {
1189
+ --border-color: var(--form-element-active-border-color);
1190
+ }
1191
+
1192
+ input:not([type=submit]):not([type=button]):not([type=reset]):not([type=range]):not([type=file]):not([readonly]):focus,
1193
+ select:focus,
1194
+ textarea:focus {
1195
+ --box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
1196
+ }
1197
+
1198
+ input:not([type=submit]):not([type=button]):not([type=reset])[disabled],
1199
+ select[disabled],
1200
+ textarea[disabled],
1201
+ :where(fieldset[disabled]) :is(input:not([type=submit]):not([type=button]):not([type=reset]), select, textarea) {
1202
+ --background-color: var(--form-element-disabled-background-color);
1203
+ --border-color: var(--form-element-disabled-border-color);
1204
+ opacity: var(--form-element-disabled-opacity);
1205
+ pointer-events: none;
1206
+ }
1207
+
1208
+ :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid] {
1209
+ padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important;
1210
+ padding-left: var(--form-element-spacing-horizontal);
1211
+ padding-inline-start: var(--form-element-spacing-horizontal) !important;
1212
+ padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important;
1213
+ background-position: center right 0.75rem;
1214
+ background-size: 1rem auto;
1215
+ background-repeat: no-repeat;
1216
+ }
1217
+ :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid=false] {
1218
+ background-image: var(--icon-valid);
1219
+ }
1220
+ :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid=true] {
1221
+ background-image: var(--icon-invalid);
1222
+ }
1223
+ :where(input, select, textarea)[aria-invalid=false] {
1224
+ --border-color: var(--form-element-valid-border-color);
1225
+ }
1226
+ :where(input, select, textarea)[aria-invalid=false]:is(:active, :focus) {
1227
+ --border-color: var(
1228
+ --form-element-valid-active-border-color
1229
+ ) !important;
1230
+ --box-shadow: 0
1231
+ 0
1232
+ 0
1233
+ var(--outline-width)
1234
+ var(--form-element-valid-focus-color) !important;
1235
+ }
1236
+ :where(input, select, textarea)[aria-invalid=true] {
1237
+ --border-color: var(--form-element-invalid-border-color);
1238
+ }
1239
+ :where(input, select, textarea)[aria-invalid=true]:is(:active, :focus) {
1240
+ --border-color: var(
1241
+ --form-element-invalid-active-border-color
1242
+ ) !important;
1243
+ --box-shadow: 0
1244
+ 0
1245
+ 0
1246
+ var(--outline-width)
1247
+ var(--form-element-invalid-focus-color) !important;
1248
+ }
1249
+
1250
+ [dir=rtl] :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid], [dir=rtl] :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid=true], [dir=rtl] :where(input, select, textarea):not([type=checkbox]):not([type=radio])[aria-invalid=false] {
1251
+ background-position: center left 0.75rem;
1252
+ }
1253
+
1254
+ input::placeholder,
1255
+ input::-webkit-input-placeholder,
1256
+ textarea::placeholder,
1257
+ textarea::-webkit-input-placeholder,
1258
+ select:invalid {
1259
+ color: var(--form-element-placeholder-color);
1260
+ opacity: 1;
1261
+ }
1262
+
1263
+ input:not([type=checkbox]):not([type=radio]),
1264
+ select,
1265
+ textarea {
1266
+ margin-bottom: var(--spacing);
1267
+ }
1268
+
1269
+ select::-ms-expand {
1270
+ border: 0;
1271
+ background-color: transparent;
1272
+ }
1273
+ select:not([multiple]):not([size]) {
1274
+ padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem);
1275
+ padding-left: var(--form-element-spacing-horizontal);
1276
+ padding-inline-start: var(--form-element-spacing-horizontal);
1277
+ padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem);
1278
+ background-image: var(--icon-chevron);
1279
+ background-position: center right 0.75rem;
1280
+ background-size: 1rem auto;
1281
+ background-repeat: no-repeat;
1282
+ }
1283
+
1284
+ [dir=rtl] select:not([multiple]):not([size]) {
1285
+ background-position: center left 0.75rem;
1286
+ }
1287
+
1288
+ :where(input, select, textarea) + small {
1289
+ display: block;
1290
+ width: 100%;
1291
+ margin-top: calc(var(--spacing) * -0.75);
1292
+ margin-bottom: var(--spacing);
1293
+ color: var(--muted-color);
1294
+ }
1295
+
1296
+ label > :where(input, select, textarea) {
1297
+ margin-top: calc(var(--spacing) * 0.25);
1298
+ }
1299
+
1300
+ [type=checkbox],
1301
+ [type=radio] {
1302
+ -webkit-appearance: none;
1303
+ -moz-appearance: none;
1304
+ appearance: none;
1305
+ width: 1.25em;
1306
+ height: 1.25em;
1307
+ margin-top: -0.125em;
1308
+ margin-right: 0.375em;
1309
+ margin-left: 0;
1310
+ margin-inline-start: 0;
1311
+ margin-inline-end: 0.375em;
1312
+ border-width: var(--border-width);
1313
+ font-size: inherit;
1314
+ vertical-align: middle;
1315
+ cursor: pointer;
1316
+ }
1317
+ [type=checkbox]::-ms-check,
1318
+ [type=radio]::-ms-check {
1319
+ display: none;
1320
+ }
1321
+ [type=checkbox]:checked, [type=checkbox]:checked:active, [type=checkbox]:checked:focus,
1322
+ [type=radio]:checked,
1323
+ [type=radio]:checked:active,
1324
+ [type=radio]:checked:focus {
1325
+ --background-color: var(--primary);
1326
+ --border-color: var(--primary);
1327
+ background-image: var(--icon-checkbox);
1328
+ background-position: center;
1329
+ background-size: 0.75em auto;
1330
+ background-repeat: no-repeat;
1331
+ }
1332
+ [type=checkbox] ~ label,
1333
+ [type=radio] ~ label {
1334
+ display: inline-block;
1335
+ margin-right: 0.375em;
1336
+ margin-bottom: 0;
1337
+ cursor: pointer;
1338
+ }
1339
+
1340
+ [type=checkbox]:indeterminate {
1341
+ --background-color: var(--primary);
1342
+ --border-color: var(--primary);
1343
+ background-image: var(--icon-minus);
1344
+ background-position: center;
1345
+ background-size: 0.75em auto;
1346
+ background-repeat: no-repeat;
1347
+ }
1348
+
1349
+ [type=radio] {
1350
+ border-radius: 50%;
1351
+ }
1352
+ [type=radio]:checked, [type=radio]:checked:active, [type=radio]:checked:focus {
1353
+ --background-color: var(--primary-inverse);
1354
+ border-width: 0.35em;
1355
+ background-image: none;
1356
+ }
1357
+
1358
+ [type=checkbox][role=switch] {
1359
+ --background-color: var(--switch-background-color);
1360
+ --border-color: var(--switch-background-color);
1361
+ --color: var(--switch-color);
1362
+ width: 2.25em;
1363
+ height: 1.25em;
1364
+ border: var(--border-width) solid var(--border-color);
1365
+ border-radius: 1.25em;
1366
+ background-color: var(--background-color);
1367
+ line-height: 1.25em;
1368
+ }
1369
+ [type=checkbox][role=switch]:focus {
1370
+ --background-color: var(--switch-background-color);
1371
+ --border-color: var(--switch-background-color);
1372
+ }
1373
+ [type=checkbox][role=switch]:checked {
1374
+ --background-color: var(--switch-checked-background-color);
1375
+ --border-color: var(--switch-checked-background-color);
1376
+ }
1377
+ [type=checkbox][role=switch]:before {
1378
+ display: block;
1379
+ width: calc(1.25em - (var(--border-width) * 2));
1380
+ height: 100%;
1381
+ border-radius: 50%;
1382
+ background-color: var(--color);
1383
+ content: "";
1384
+ transition: margin 0.1s ease-in-out;
1385
+ }
1386
+ [type=checkbox][role=switch]:checked {
1387
+ background-image: none;
1388
+ }
1389
+ [type=checkbox][role=switch]:checked::before {
1390
+ margin-left: calc(1.125em - var(--border-width));
1391
+ margin-inline-start: calc(1.125em - var(--border-width));
1392
+ }
1393
+
1394
+ [type=checkbox][aria-invalid=false],
1395
+ [type=checkbox]:checked[aria-invalid=false],
1396
+ [type=radio][aria-invalid=false],
1397
+ [type=radio]:checked[aria-invalid=false],
1398
+ [type=checkbox][role=switch][aria-invalid=false],
1399
+ [type=checkbox][role=switch]:checked[aria-invalid=false] {
1400
+ --border-color: var(--form-element-valid-border-color);
1401
+ }
1402
+ [type=checkbox][aria-invalid=true],
1403
+ [type=checkbox]:checked[aria-invalid=true],
1404
+ [type=radio][aria-invalid=true],
1405
+ [type=radio]:checked[aria-invalid=true],
1406
+ [type=checkbox][role=switch][aria-invalid=true],
1407
+ [type=checkbox][role=switch]:checked[aria-invalid=true] {
1408
+ --border-color: var(--form-element-invalid-border-color);
1409
+ }
1410
+
1411
+ [type=color]::-webkit-color-swatch-wrapper {
1412
+ padding: 0;
1413
+ }
1414
+ [type=color]::-moz-focus-inner {
1415
+ padding: 0;
1416
+ }
1417
+ [type=color]::-webkit-color-swatch {
1418
+ border: 0;
1419
+ border-radius: calc(var(--border-radius) * 0.5);
1420
+ }
1421
+ [type=color]::-moz-color-swatch {
1422
+ border: 0;
1423
+ border-radius: calc(var(--border-radius) * 0.5);
1424
+ }
1425
+
1426
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=date], input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=datetime-local], input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=month], input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=time], input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=week] {
1427
+ --icon-position: 0.75rem;
1428
+ --icon-width: 1rem;
1429
+ padding-right: calc(var(--icon-width) + var(--icon-position));
1430
+ background-image: var(--icon-date);
1431
+ background-position: center right var(--icon-position);
1432
+ background-size: var(--icon-width) auto;
1433
+ background-repeat: no-repeat;
1434
+ }
1435
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=time] {
1436
+ background-image: var(--icon-time);
1437
+ }
1438
+
1439
+ [type=date]::-webkit-calendar-picker-indicator,
1440
+ [type=datetime-local]::-webkit-calendar-picker-indicator,
1441
+ [type=month]::-webkit-calendar-picker-indicator,
1442
+ [type=time]::-webkit-calendar-picker-indicator,
1443
+ [type=week]::-webkit-calendar-picker-indicator {
1444
+ width: var(--icon-width);
1445
+ margin-right: calc(var(--icon-width) * -1);
1446
+ margin-left: var(--icon-position);
1447
+ opacity: 0;
1448
+ }
1449
+
1450
+ [dir=rtl] :is([type=date], [type=datetime-local], [type=month], [type=time], [type=week]) {
1451
+ text-align: right;
1452
+ }
1453
+
1454
+ [type=file] {
1455
+ --color: var(--muted-color);
1456
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) 0;
1457
+ border: 0;
1458
+ border-radius: 0;
1459
+ background: none;
1460
+ }
1461
+ [type=file]::file-selector-button {
1462
+ --background-color: var(--secondary);
1463
+ --border-color: var(--secondary);
1464
+ --color: var(--secondary-inverse);
1465
+ margin-right: calc(var(--spacing) / 2);
1466
+ margin-left: 0;
1467
+ margin-inline-start: 0;
1468
+ margin-inline-end: calc(var(--spacing) / 2);
1469
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1470
+ border: var(--border-width) solid var(--border-color);
1471
+ border-radius: var(--border-radius);
1472
+ outline: none;
1473
+ background-color: var(--background-color);
1474
+ box-shadow: var(--box-shadow);
1475
+ color: var(--color);
1476
+ font-weight: var(--font-weight);
1477
+ font-size: 1rem;
1478
+ line-height: var(--line-height);
1479
+ text-align: center;
1480
+ cursor: pointer;
1481
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1482
+ }
1483
+ [type=file]::file-selector-button:is(:hover, :active, :focus) {
1484
+ --background-color: var(--secondary-hover);
1485
+ --border-color: var(--secondary-hover);
1486
+ }
1487
+ [type=file]::-webkit-file-upload-button {
1488
+ --background-color: var(--secondary);
1489
+ --border-color: var(--secondary);
1490
+ --color: var(--secondary-inverse);
1491
+ margin-right: calc(var(--spacing) / 2);
1492
+ margin-left: 0;
1493
+ margin-inline-start: 0;
1494
+ margin-inline-end: calc(var(--spacing) / 2);
1495
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1496
+ border: var(--border-width) solid var(--border-color);
1497
+ border-radius: var(--border-radius);
1498
+ outline: none;
1499
+ background-color: var(--background-color);
1500
+ box-shadow: var(--box-shadow);
1501
+ color: var(--color);
1502
+ font-weight: var(--font-weight);
1503
+ font-size: 1rem;
1504
+ line-height: var(--line-height);
1505
+ text-align: center;
1506
+ cursor: pointer;
1507
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1508
+ }
1509
+ [type=file]::-webkit-file-upload-button:is(:hover, :active, :focus) {
1510
+ --background-color: var(--secondary-hover);
1511
+ --border-color: var(--secondary-hover);
1512
+ }
1513
+ [type=file]::-ms-browse {
1514
+ --background-color: var(--secondary);
1515
+ --border-color: var(--secondary);
1516
+ --color: var(--secondary-inverse);
1517
+ margin-right: calc(var(--spacing) / 2);
1518
+ margin-left: 0;
1519
+ margin-inline-start: 0;
1520
+ margin-inline-end: calc(var(--spacing) / 2);
1521
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1522
+ border: var(--border-width) solid var(--border-color);
1523
+ border-radius: var(--border-radius);
1524
+ outline: none;
1525
+ background-color: var(--background-color);
1526
+ box-shadow: var(--box-shadow);
1527
+ color: var(--color);
1528
+ font-weight: var(--font-weight);
1529
+ font-size: 1rem;
1530
+ line-height: var(--line-height);
1531
+ text-align: center;
1532
+ cursor: pointer;
1533
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1534
+ }
1535
+ [type=file]::-ms-browse:is(:hover, :active, :focus) {
1536
+ --background-color: var(--secondary-hover);
1537
+ --border-color: var(--secondary-hover);
1538
+ }
1539
+
1540
+ [type=range] {
1541
+ -webkit-appearance: none;
1542
+ -moz-appearance: none;
1543
+ appearance: none;
1544
+ width: 100%;
1545
+ height: 1.25rem;
1546
+ background: none;
1547
+ }
1548
+ [type=range]::-webkit-slider-runnable-track {
1549
+ width: 100%;
1550
+ height: 0.25rem;
1551
+ border-radius: var(--border-radius);
1552
+ background-color: var(--range-border-color);
1553
+ transition: background-color var(--transition), box-shadow var(--transition);
1554
+ }
1555
+ [type=range]::-moz-range-track {
1556
+ width: 100%;
1557
+ height: 0.25rem;
1558
+ border-radius: var(--border-radius);
1559
+ background-color: var(--range-border-color);
1560
+ transition: background-color var(--transition), box-shadow var(--transition);
1561
+ }
1562
+ [type=range]::-ms-track {
1563
+ width: 100%;
1564
+ height: 0.25rem;
1565
+ border-radius: var(--border-radius);
1566
+ background-color: var(--range-border-color);
1567
+ transition: background-color var(--transition), box-shadow var(--transition);
1568
+ }
1569
+ [type=range]::-webkit-slider-thumb {
1570
+ -webkit-appearance: none;
1571
+ width: 1.25rem;
1572
+ height: 1.25rem;
1573
+ margin-top: -0.5rem;
1574
+ border: 2px solid var(--range-thumb-border-color);
1575
+ border-radius: 50%;
1576
+ background-color: var(--range-thumb-color);
1577
+ cursor: pointer;
1578
+ transition: background-color var(--transition), transform var(--transition);
1579
+ }
1580
+ [type=range]::-moz-range-thumb {
1581
+ -webkit-appearance: none;
1582
+ width: 1.25rem;
1583
+ height: 1.25rem;
1584
+ margin-top: -0.5rem;
1585
+ border: 2px solid var(--range-thumb-border-color);
1586
+ border-radius: 50%;
1587
+ background-color: var(--range-thumb-color);
1588
+ cursor: pointer;
1589
+ transition: background-color var(--transition), transform var(--transition);
1590
+ }
1591
+ [type=range]::-ms-thumb {
1592
+ -webkit-appearance: none;
1593
+ width: 1.25rem;
1594
+ height: 1.25rem;
1595
+ margin-top: -0.5rem;
1596
+ border: 2px solid var(--range-thumb-border-color);
1597
+ border-radius: 50%;
1598
+ background-color: var(--range-thumb-color);
1599
+ cursor: pointer;
1600
+ transition: background-color var(--transition), transform var(--transition);
1601
+ }
1602
+ [type=range]:hover, [type=range]:focus {
1603
+ --range-border-color: var(--range-active-border-color);
1604
+ --range-thumb-color: var(--range-thumb-hover-color);
1605
+ }
1606
+ [type=range]:active {
1607
+ --range-thumb-color: var(--range-thumb-active-color);
1608
+ }
1609
+ [type=range]:active::-webkit-slider-thumb {
1610
+ transform: scale(1.25);
1611
+ }
1612
+ [type=range]:active::-moz-range-thumb {
1613
+ transform: scale(1.25);
1614
+ }
1615
+ [type=range]:active::-ms-thumb {
1616
+ transform: scale(1.25);
1617
+ }
1618
+
1619
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search] {
1620
+ padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem);
1621
+ border-radius: 5rem;
1622
+ background-image: var(--icon-search);
1623
+ background-position: center left 1.125rem;
1624
+ background-size: 1rem auto;
1625
+ background-repeat: no-repeat;
1626
+ }
1627
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search][aria-invalid] {
1628
+ padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem) !important;
1629
+ background-position: center left 1.125rem, center right 0.75rem;
1630
+ }
1631
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search][aria-invalid=false] {
1632
+ background-image: var(--icon-search), var(--icon-valid);
1633
+ }
1634
+ input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search][aria-invalid=true] {
1635
+ background-image: var(--icon-search), var(--icon-invalid);
1636
+ }
1637
+
1638
+ [type=search]::-webkit-search-cancel-button {
1639
+ -webkit-appearance: none;
1640
+ display: none;
1641
+ }
1642
+
1643
+ [dir=rtl] :where(input):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search] {
1644
+ background-position: center right 1.125rem;
1645
+ }
1646
+ [dir=rtl] :where(input):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file])[type=search][aria-invalid] {
1647
+ background-position: center right 1.125rem, center left 0.75rem;
1648
+ }
1649
+
1650
+ th,
1651
+ td {
1652
+ padding: calc(var(--spacing) / 2) var(--spacing);
1653
+ border-bottom: var(--border-width) solid var(--table-border-color);
1654
+ color: var(--color);
1655
+ font-weight: var(--font-weight);
1656
+ font-size: var(--font-size);
1657
+ text-align: left;
1658
+ text-align: start;
1659
+ }
1660
+
1661
+ tfoot th,
1662
+ tfoot td {
1663
+ border-top: var(--border-width) solid var(--table-border-color);
1664
+ border-bottom: 0;
1665
+ }
1666
+
1667
+ table[role=grid] tbody tr:nth-child(odd) {
1668
+ background-color: var(--table-row-stripped-background-color);
1669
+ }
1670
+
1671
+ pre,
1672
+ code,
1673
+ kbd {
1674
+ border-radius: var(--border-radius);
1675
+ background: var(--code-background-color);
1676
+ color: var(--code-color);
1677
+ font-weight: var(--font-weight);
1678
+ line-height: initial;
1679
+ }
1680
+
1681
+ code,
1682
+ kbd {
1683
+ display: inline-block;
1684
+ padding: 0.375rem 0.5rem;
1685
+ }
1686
+
1687
+ pre {
1688
+ display: block;
1689
+ margin-bottom: var(--spacing);
1690
+ overflow-x: auto;
1691
+ }
1692
+ pre > code {
1693
+ display: block;
1694
+ padding: var(--spacing);
1695
+ background: none;
1696
+ font-size: 14px;
1697
+ line-height: var(--line-height);
1698
+ }
1699
+
1700
+ code b {
1701
+ color: var(--code-tag-color);
1702
+ font-weight: var(--font-weight);
1703
+ }
1704
+ code i {
1705
+ color: var(--code-property-color);
1706
+ font-style: normal;
1707
+ }
1708
+ code u {
1709
+ color: var(--code-value-color);
1710
+ text-decoration: none;
1711
+ }
1712
+ code em {
1713
+ color: var(--code-comment-color);
1714
+ font-style: normal;
1715
+ }
1716
+
1717
+ kbd {
1718
+ background-color: var(--code-kbd-background-color);
1719
+ color: var(--code-kbd-color);
1720
+ vertical-align: baseline;
1721
+ }
1722
+ }
1723
+ @layer component {
1724
+ details {
1725
+ display: block;
1726
+ margin-bottom: var(--spacing);
1727
+ padding-bottom: var(--spacing);
1728
+ border-bottom: var(--border-width) solid var(--accordion-border-color);
1729
+ }
1730
+ details summary {
1731
+ line-height: 1rem;
1732
+ list-style-type: none;
1733
+ cursor: pointer;
1734
+ transition: color var(--transition);
1735
+ }
1736
+ details summary:not([role]) {
1737
+ color: var(--accordion-close-summary-color);
1738
+ }
1739
+ details summary::-webkit-details-marker {
1740
+ display: none;
1741
+ }
1742
+ details summary::marker {
1743
+ display: none;
1744
+ }
1745
+ details summary::-moz-list-bullet {
1746
+ list-style-type: none;
1747
+ }
1748
+ details summary::after {
1749
+ display: block;
1750
+ width: 1rem;
1751
+ height: 1rem;
1752
+ margin-inline-start: calc(var(--spacing, 1rem) * 0.5);
1753
+ float: right;
1754
+ transform: rotate(-90deg);
1755
+ background-image: var(--icon-chevron);
1756
+ background-position: right center;
1757
+ background-size: 1rem auto;
1758
+ background-repeat: no-repeat;
1759
+ content: "";
1760
+ transition: transform var(--transition);
1761
+ }
1762
+ details summary:focus {
1763
+ outline: none;
1764
+ }
1765
+ details summary:focus:not([role=button]) {
1766
+ color: var(--accordion-active-summary-color);
1767
+ }
1768
+ details summary[role=button] {
1769
+ width: 100%;
1770
+ text-align: left;
1771
+ }
1772
+ details summary[role=button]::after {
1773
+ height: calc(1rem * var(--line-height, 1.5));
1774
+ background-image: var(--icon-chevron-button);
1775
+ }
1776
+ details summary[role=button]:not(.outline).contrast::after {
1777
+ background-image: var(--icon-chevron-button-inverse);
1778
+ }
1779
+ details[open] > summary {
1780
+ margin-bottom: calc(var(--spacing));
1781
+ }
1782
+ details[open] > summary:not([role]):not(:focus) {
1783
+ color: var(--accordion-open-summary-color);
1784
+ }
1785
+ details[open] > summary::after {
1786
+ transform: rotate(0);
1787
+ }
1788
+
1789
+ [dir=rtl] details summary {
1790
+ text-align: right;
1791
+ }
1792
+ [dir=rtl] details summary::after {
1793
+ float: left;
1794
+ background-position: left center;
1795
+ }
1796
+
1797
+ article {
1798
+ display: flex;
1799
+ flex-direction: column;
1800
+ margin: var(--block-spacing-vertical) 0;
1801
+ padding: var(--block-spacing-vertical) var(--block-spacing-horizontal);
1802
+ border-radius: var(--border-radius);
1803
+ background: var(--card-background-color);
1804
+ box-shadow: var(--card-box-shadow);
1805
+ }
1806
+ article > header,
1807
+ article > footer {
1808
+ display: flex;
1809
+ flex-direction: row;
1810
+ justify-content: space-between;
1811
+ margin-right: calc(var(--block-spacing-horizontal) * -1);
1812
+ margin-left: calc(var(--block-spacing-horizontal) * -1);
1813
+ padding: calc(var(--block-spacing-vertical) * 0.66) var(--block-spacing-horizontal);
1814
+ background-color: var(--card-sectionning-background-color);
1815
+ }
1816
+ article > header {
1817
+ margin-top: calc(var(--block-spacing-vertical) * -1);
1818
+ margin-bottom: var(--block-spacing-vertical);
1819
+ border-bottom: var(--border-width) solid var(--card-border-color);
1820
+ }
1821
+ article > header nav ul:first-of-type {
1822
+ margin: inherit;
1823
+ }
1824
+ article > header nav ul li {
1825
+ padding: 0 calc(var(--nav-element-spacing-horizontal) / 2);
1826
+ }
1827
+ article > main {
1828
+ flex: 1;
1829
+ }
1830
+ article > footer {
1831
+ margin-top: var(--block-spacing-vertical);
1832
+ margin-bottom: calc(var(--block-spacing-vertical) * -1);
1833
+ border-top: var(--border-width) solid var(--card-border-color);
1834
+ }
1835
+
1836
+ :root {
1837
+ --scrollbar-width: 0px;
1838
+ }
1839
+
1840
+ dialog {
1841
+ display: flex;
1842
+ z-index: 999;
1843
+ position: fixed;
1844
+ top: 0;
1845
+ right: 0;
1846
+ bottom: 0;
1847
+ left: 0;
1848
+ align-items: center;
1849
+ justify-content: center;
1850
+ width: inherit;
1851
+ min-width: 100%;
1852
+ height: inherit;
1853
+ min-height: 100%;
1854
+ padding: var(--spacing);
1855
+ border: 0;
1856
+ background-color: var(--modal-overlay-background-color);
1857
+ }
1858
+ dialog article {
1859
+ max-height: calc(100vh - var(--spacing) * 2);
1860
+ width: calc(100vw - var(--spacing) * 2);
1861
+ overflow: auto;
1862
+ }
1863
+ @media (min-width: 576px) {
1864
+ dialog article {
1865
+ width: 510px;
1866
+ }
1867
+ }
1868
+ @media (min-width: 768px) {
1869
+ dialog article {
1870
+ width: 700px;
1871
+ }
1872
+ }
1873
+ @media (min-width: 992px) {
1874
+ dialog article {
1875
+ width: 920px;
1876
+ }
1877
+ }
1878
+ @media (min-width: 1200px) {
1879
+ dialog article {
1880
+ width: 1130px;
1881
+ }
1882
+ }
1883
+ dialog article > header,
1884
+ dialog article > footer {
1885
+ padding: calc(var(--block-spacing-vertical) * 0.5) var(--block-spacing-horizontal);
1886
+ }
1887
+ dialog article > header .close {
1888
+ margin: 0;
1889
+ margin-left: var(--spacing);
1890
+ float: right;
1891
+ }
1892
+ dialog article > footer {
1893
+ text-align: right;
1894
+ }
1895
+ dialog article > footer [role=button] {
1896
+ margin-bottom: 0;
1897
+ }
1898
+ dialog article > footer [role=button]:not(:first-of-type) {
1899
+ margin-left: calc(var(--spacing) * 0.5);
1900
+ }
1901
+ dialog article p:last-of-type {
1902
+ margin: 0;
1903
+ }
1904
+ dialog article .close {
1905
+ display: block;
1906
+ width: 1rem;
1907
+ height: 1rem;
1908
+ margin-top: calc(var(--block-spacing-vertical) * -0.5);
1909
+ margin-bottom: var(--typography-spacing-vertical);
1910
+ margin-left: auto;
1911
+ background-image: var(--icon-close);
1912
+ background-position: center;
1913
+ background-size: auto 1rem;
1914
+ background-repeat: no-repeat;
1915
+ opacity: 0.5;
1916
+ transition: opacity var(--transition);
1917
+ }
1918
+ dialog article .close:is([aria-current], :hover, :active, :focus) {
1919
+ opacity: 1;
1920
+ }
1921
+ dialog:not([open]), dialog[open=false] {
1922
+ display: none;
1923
+ }
1924
+
1925
+ .modal-is-open {
1926
+ padding-right: var(--scrollbar-width, 0px);
1927
+ overflow: hidden;
1928
+ pointer-events: none;
1929
+ }
1930
+ .modal-is-open dialog {
1931
+ pointer-events: auto;
1932
+ }
1933
+
1934
+ :where(.modal-is-opening, .modal-is-closing) dialog,
1935
+ :where(.modal-is-opening, .modal-is-closing) dialog > article {
1936
+ animation-duration: 0.2s;
1937
+ animation-timing-function: ease-in-out;
1938
+ animation-fill-mode: both;
1939
+ }
1940
+ :where(.modal-is-opening, .modal-is-closing) dialog {
1941
+ animation-duration: 0.8s;
1942
+ animation-name: fadeIn;
1943
+ }
1944
+ :where(.modal-is-opening, .modal-is-closing) dialog > article {
1945
+ animation-delay: 0.2s;
1946
+ animation-name: slideInDown;
1947
+ }
1948
+
1949
+ .modal-is-closing dialog,
1950
+ .modal-is-closing dialog > article {
1951
+ animation-delay: 0s;
1952
+ animation-direction: reverse;
1953
+ }
1954
+
1955
+ @keyframes fadeIn {
1956
+ from {
1957
+ background-color: transparent;
1958
+ }
1959
+ to {
1960
+ background-color: var(--modal-overlay-background-color);
1961
+ }
1962
+ }
1963
+ @keyframes slideInDown {
1964
+ from {
1965
+ transform: translateY(-100%);
1966
+ opacity: 0;
1967
+ }
1968
+ to {
1969
+ transform: translateY(0);
1970
+ opacity: 1;
1971
+ }
1972
+ }
1973
+ nav,
1974
+ nav ul {
1975
+ display: flex;
1976
+ }
1977
+
1978
+ nav {
1979
+ justify-content: space-between;
1980
+ }
1981
+ nav ol,
1982
+ nav ul {
1983
+ align-items: center;
1984
+ margin-bottom: 0;
1985
+ padding: 0;
1986
+ list-style: none;
1987
+ }
1988
+ nav ol:first-of-type,
1989
+ nav ul:first-of-type {
1990
+ margin-left: calc(var(--nav-element-spacing-horizontal) * -1);
1991
+ }
1992
+ nav ol:last-of-type,
1993
+ nav ul:last-of-type {
1994
+ margin-right: calc(var(--nav-element-spacing-horizontal) * -1);
1995
+ }
1996
+ nav li {
1997
+ display: inline-block;
1998
+ margin: 0;
1999
+ padding: var(--nav-element-spacing-vertical) var(--nav-element-spacing-horizontal);
2000
+ }
2001
+ nav li > * {
2002
+ --spacing: 0;
2003
+ }
2004
+ nav :where(a, [role=link]) {
2005
+ display: inline-block;
2006
+ margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
2007
+ padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2008
+ border-radius: var(--border-radius);
2009
+ text-decoration: none;
2010
+ }
2011
+ nav :where(a, [role=link]):is([aria-current], :hover, :active, :focus) {
2012
+ text-decoration: none;
2013
+ }
2014
+ nav [role=button] {
2015
+ margin-right: inherit;
2016
+ margin-left: inherit;
2017
+ padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2018
+ }
2019
+
2020
+ aside nav,
2021
+ aside ol,
2022
+ aside ul,
2023
+ aside li {
2024
+ display: block;
2025
+ }
2026
+ aside li {
2027
+ padding: calc(var(--nav-element-spacing-vertical) * 0.5) var(--nav-element-spacing-horizontal);
2028
+ }
2029
+ aside li a {
2030
+ display: block;
2031
+ }
2032
+ aside li [role=button] {
2033
+ margin: inherit;
2034
+ }
2035
+
2036
+ progress {
2037
+ -webkit-appearance: none;
2038
+ -moz-appearance: none;
2039
+ display: inline-block;
2040
+ appearance: none;
2041
+ width: 100%;
2042
+ height: 0.5rem;
2043
+ margin-bottom: calc(var(--spacing) * 0.5);
2044
+ overflow: hidden;
2045
+ border: 0;
2046
+ border-radius: var(--border-radius);
2047
+ background-color: var(--progress-background-color);
2048
+ color: var(--progress-color);
2049
+ }
2050
+ progress::-webkit-progress-bar {
2051
+ border-radius: var(--border-radius);
2052
+ background: none;
2053
+ }
2054
+ progress[value]::-webkit-progress-value {
2055
+ background-color: var(--progress-color);
2056
+ }
2057
+ progress::-moz-progress-bar {
2058
+ background-color: var(--progress-color);
2059
+ }
2060
+ @media (prefers-reduced-motion: no-preference) {
2061
+ progress:indeterminate {
2062
+ background: var(--progress-background-color) linear-gradient(to right, var(--progress-color) 30%, var(--progress-background-color) 30%) top left/150% 150% no-repeat;
2063
+ animation: progressIndeterminate 1s linear infinite;
2064
+ }
2065
+ progress:indeterminate[value]::-webkit-progress-value {
2066
+ background-color: transparent;
2067
+ }
2068
+ progress:indeterminate::-moz-progress-bar {
2069
+ background-color: transparent;
2070
+ }
2071
+ }
2072
+
2073
+ @media (prefers-reduced-motion: no-preference) {
2074
+ [dir=rtl] progress:indeterminate {
2075
+ animation-direction: reverse;
2076
+ }
2077
+ }
2078
+
2079
+ @keyframes progressIndeterminate {
2080
+ 0% {
2081
+ background-position: 200% 0;
2082
+ }
2083
+ 100% {
2084
+ background-position: -200% 0;
2085
+ }
2086
+ }
2087
+ details[role=list],
2088
+ li[role=list] {
2089
+ position: relative;
2090
+ }
2091
+
2092
+ details[role=list] summary + ul,
2093
+ li[role=list] > ul {
2094
+ display: flex;
2095
+ z-index: 99;
2096
+ position: absolute;
2097
+ top: auto;
2098
+ right: 0;
2099
+ left: 0;
2100
+ flex-direction: column;
2101
+ margin: 0;
2102
+ padding: 0;
2103
+ border: var(--border-width) solid var(--dropdown-border-color);
2104
+ border-radius: var(--border-radius);
2105
+ border-top-right-radius: 0;
2106
+ border-top-left-radius: 0;
2107
+ background-color: var(--dropdown-background-color);
2108
+ box-shadow: var(--card-box-shadow);
2109
+ color: var(--dropdown-color);
2110
+ white-space: nowrap;
2111
+ }
2112
+ details[role=list] summary + ul li,
2113
+ li[role=list] > ul li {
2114
+ width: 100%;
2115
+ margin-bottom: 0;
2116
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
2117
+ list-style: none;
2118
+ }
2119
+ details[role=list] summary + ul li:first-of-type,
2120
+ li[role=list] > ul li:first-of-type {
2121
+ margin-top: calc(var(--form-element-spacing-vertical) * 0.5);
2122
+ }
2123
+ details[role=list] summary + ul li:last-of-type,
2124
+ li[role=list] > ul li:last-of-type {
2125
+ margin-bottom: calc(var(--form-element-spacing-vertical) * 0.5);
2126
+ }
2127
+ details[role=list] summary + ul li a,
2128
+ li[role=list] > ul li a {
2129
+ display: block;
2130
+ margin: calc(var(--form-element-spacing-vertical) * -0.5) calc(var(--form-element-spacing-horizontal) * -1);
2131
+ padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
2132
+ overflow: hidden;
2133
+ color: var(--dropdown-color);
2134
+ text-decoration: none;
2135
+ text-overflow: ellipsis;
2136
+ }
2137
+ details[role=list] summary + ul li a:hover,
2138
+ li[role=list] > ul li a:hover {
2139
+ background-color: var(--dropdown-hover-background-color);
2140
+ }
2141
+
2142
+ details[role=list] summary::after,
2143
+ li[role=list] > a::after {
2144
+ display: block;
2145
+ width: 1rem;
2146
+ height: calc(1rem * var(--line-height, 1.5));
2147
+ margin-inline-start: 0.5rem;
2148
+ float: right;
2149
+ transform: rotate(0deg);
2150
+ background-position: right center;
2151
+ background-size: 1rem auto;
2152
+ background-repeat: no-repeat;
2153
+ content: "";
2154
+ }
2155
+
2156
+ details[role=list] {
2157
+ padding: 0;
2158
+ border-bottom: none;
2159
+ }
2160
+ details[role=list] summary {
2161
+ margin-bottom: 0;
2162
+ }
2163
+ details[role=list] summary:not([role]) {
2164
+ height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
2165
+ padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
2166
+ border: var(--border-width) solid var(--form-element-border-color);
2167
+ border-radius: var(--border-radius);
2168
+ background-color: var(--form-element-background-color);
2169
+ color: var(--form-element-placeholder-color);
2170
+ line-height: inherit;
2171
+ cursor: pointer;
2172
+ transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
2173
+ }
2174
+ details[role=list] summary:not([role]):active, details[role=list] summary:not([role]):focus {
2175
+ border-color: var(--form-element-active-border-color);
2176
+ background-color: var(--form-element-active-background-color);
2177
+ }
2178
+ details[role=list] summary:not([role]):focus {
2179
+ box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
2180
+ }
2181
+ details[role=list][open] summary {
2182
+ border-bottom-right-radius: 0;
2183
+ border-bottom-left-radius: 0;
2184
+ }
2185
+ details[role=list][open] summary::before {
2186
+ display: block;
2187
+ z-index: 1;
2188
+ position: fixed;
2189
+ top: 0;
2190
+ right: 0;
2191
+ bottom: 0;
2192
+ left: 0;
2193
+ background: none;
2194
+ content: "";
2195
+ cursor: default;
2196
+ }
2197
+
2198
+ nav details[role=list] summary,
2199
+ nav li[role=list] a {
2200
+ display: flex;
2201
+ direction: ltr;
2202
+ }
2203
+
2204
+ nav details[role=list] summary + ul,
2205
+ nav li[role=list] > ul {
2206
+ min-width: fit-content;
2207
+ border-radius: var(--border-radius);
2208
+ }
2209
+ nav details[role=list] summary + ul li a,
2210
+ nav li[role=list] > ul li a {
2211
+ border-radius: 0;
2212
+ }
2213
+
2214
+ nav details[role=list] summary,
2215
+ nav details[role=list] summary:not([role]) {
2216
+ height: auto;
2217
+ padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2218
+ }
2219
+ nav details[role=list][open] summary {
2220
+ border-radius: var(--border-radius);
2221
+ }
2222
+ nav details[role=list] summary + ul {
2223
+ margin-top: var(--outline-width);
2224
+ margin-inline-start: 0;
2225
+ }
2226
+ nav details[role=list] summary[role=link] {
2227
+ margin-bottom: calc(var(--nav-link-spacing-vertical) * -1);
2228
+ line-height: var(--line-height);
2229
+ }
2230
+ nav details[role=list] summary[role=link] + ul {
2231
+ margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
2232
+ margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1);
2233
+ }
2234
+
2235
+ li[role=list]:hover > ul,
2236
+ li[role=list] a:active ~ ul,
2237
+ li[role=list] a:focus ~ ul {
2238
+ display: flex;
2239
+ }
2240
+ li[role=list] > ul {
2241
+ display: none;
2242
+ margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
2243
+ margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
2244
+ }
2245
+ li[role=list] > a::after {
2246
+ background-image: var(--icon-chevron);
2247
+ }
2248
+
2249
+ dl {
2250
+ display: grid;
2251
+ grid-template-columns: minmax(max-content, 1fr) minmax(auto, 2fr);
2252
+ }
2253
+
2254
+ dt {
2255
+ grid-column-start: 1;
2256
+ }
2257
+
2258
+ dd {
2259
+ grid-column-start: 2;
2260
+ margin: 0;
2261
+ }
2262
+
2263
+ dl > header {
2264
+ grid-column: 1/span 2;
2265
+ font-weight: bold;
2266
+ background-color: var(--muted-color);
2267
+ color: var(--primary-inverse);
2268
+ padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
2269
+ }
2270
+
2271
+ dd,
2272
+ dt {
2273
+ padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
2274
+ border: 1px solid var(--muted-border-color);
2275
+ }
2276
+
2277
+ dd:nth-of-type(even),
2278
+ dt:nth-of-type(even) {
2279
+ background-color: var(--table-row-stripped-background-color);
2280
+ }
2281
+
2282
+ /**
2283
+ * Input group and button group
2284
+ */
2285
+ .button-group,
2286
+ .input-group {
2287
+ display: flex;
2288
+ flex-direction: row;
2289
+ }
2290
+ .button-group > button, .button-group > label, .button-group > select, .button-group > input:not([type=checkbox]):not([type=radio]),
2291
+ .input-group > button,
2292
+ .input-group > label,
2293
+ .input-group > select,
2294
+ .input-group > input:not([type=checkbox]):not([type=radio]) {
2295
+ margin-bottom: 0;
2296
+ }
2297
+ .button-group > button:not(:last-child), .button-group > [role=button]:not(:last-child), .button-group > input:not(:last-child), .button-group > select:not(:last-child),
2298
+ .input-group > button:not(:last-child),
2299
+ .input-group > [role=button]:not(:last-child),
2300
+ .input-group > input:not(:last-child),
2301
+ .input-group > select:not(:last-child) {
2302
+ border-top-right-radius: 0;
2303
+ border-bottom-right-radius: 0;
2304
+ /* border-right: 0;*/
2305
+ }
2306
+ .button-group > [role=button]:not(:first-child), .button-group > input:not(:first-child), .button-group > button:not(:first-child), .button-group > select:not(:first-child),
2307
+ .input-group > [role=button]:not(:first-child),
2308
+ .input-group > input:not(:first-child),
2309
+ .input-group > button:not(:first-child),
2310
+ .input-group > select:not(:first-child) {
2311
+ border-top-left-radius: 0;
2312
+ border-bottom-left-radius: 0;
2313
+ border-left: 0;
2314
+ }
2315
+
2316
+ .input-group > [type=radio] ~ label {
2317
+ margin-right: 0;
2318
+ }
2319
+
2320
+ .input-group:not(.outline) > input[type=radio]:not(:checked) + label[role=button],
2321
+ .input-group.outline > input[type=radio]:checked + label[role=button] {
2322
+ --background-color: transparent;
2323
+ --color: var(--primary);
2324
+ }
2325
+ }
2326
+ @layer utility {
2327
+ [aria-busy=true] {
2328
+ cursor: progress;
2329
+ }
2330
+
2331
+ [aria-busy=true]:not(input):not(select):not(textarea)::before {
2332
+ display: inline-block;
2333
+ width: 1em;
2334
+ height: 1em;
2335
+ border: 0.1875em solid currentColor;
2336
+ border-radius: 1em;
2337
+ border-right-color: transparent;
2338
+ content: "";
2339
+ vertical-align: text-bottom;
2340
+ vertical-align: -0.125em;
2341
+ animation: spinner 0.75s linear infinite;
2342
+ opacity: var(--loading-spinner-opacity);
2343
+ }
2344
+ [aria-busy=true]:not(input):not(select):not(textarea):not(:empty)::before {
2345
+ margin-right: calc(var(--spacing) * 0.5);
2346
+ margin-left: 0;
2347
+ margin-inline-start: 0;
2348
+ margin-inline-end: calc(var(--spacing) * 0.5);
2349
+ }
2350
+ [aria-busy=true]:not(input):not(select):not(textarea):empty {
2351
+ text-align: center;
2352
+ }
2353
+
2354
+ button[aria-busy=true],
2355
+ input[type=submit][aria-busy=true],
2356
+ input[type=button][aria-busy=true],
2357
+ input[type=reset][aria-busy=true],
2358
+ a[aria-busy=true] {
2359
+ pointer-events: none;
2360
+ }
2361
+
2362
+ @keyframes spinner {
2363
+ to {
2364
+ transform: rotate(360deg);
2365
+ }
2366
+ }
2367
+ [data-tooltip] {
2368
+ position: relative;
2369
+ }
2370
+ [data-tooltip]:not(a):not(button):not(input) {
2371
+ border-bottom: 1px dotted;
2372
+ text-decoration: none;
2373
+ cursor: help;
2374
+ }
2375
+ [data-tooltip]::before, [data-tooltip]::after {
2376
+ display: block;
2377
+ z-index: 99;
2378
+ position: absolute;
2379
+ bottom: 100%;
2380
+ left: 50%;
2381
+ padding: 0.25rem 0.5rem;
2382
+ overflow: hidden;
2383
+ transform: translate(-50%, -0.25rem);
2384
+ border-radius: var(--border-radius);
2385
+ background: var(--tooltip-background-color);
2386
+ content: attr(data-tooltip);
2387
+ color: var(--tooltip-color);
2388
+ font-style: normal;
2389
+ font-weight: var(--font-weight);
2390
+ font-size: 0.875rem;
2391
+ text-decoration: none;
2392
+ text-overflow: ellipsis;
2393
+ white-space: nowrap;
2394
+ opacity: 0;
2395
+ pointer-events: none;
2396
+ }
2397
+ [data-tooltip]::after {
2398
+ padding: 0;
2399
+ transform: translate(-50%, 0rem);
2400
+ border-top: 0.3rem solid;
2401
+ border-right: 0.3rem solid transparent;
2402
+ border-left: 0.3rem solid transparent;
2403
+ border-radius: 0;
2404
+ background-color: transparent;
2405
+ content: "";
2406
+ color: var(--tooltip-background-color);
2407
+ }
2408
+ [data-tooltip]:focus::before, [data-tooltip]:focus::after, [data-tooltip]:hover::before, [data-tooltip]:hover::after {
2409
+ opacity: 1;
2410
+ }
2411
+ @media (hover: hover) and (pointer: fine) {
2412
+ [data-tooltip]:focus::before, [data-tooltip]:focus::after, [data-tooltip]:hover::before, [data-tooltip]:hover::after {
2413
+ animation-duration: 0.2s;
2414
+ animation-name: slide;
2415
+ }
2416
+ [data-tooltip]:focus::after, [data-tooltip]:hover::after {
2417
+ animation-name: slideCaret;
2418
+ }
2419
+ }
2420
+
2421
+ @keyframes slide {
2422
+ from {
2423
+ transform: translate(-50%, 0.75rem);
2424
+ opacity: 0;
2425
+ }
2426
+ to {
2427
+ transform: translate(-50%, -0.25rem);
2428
+ opacity: 1;
2429
+ }
2430
+ }
2431
+ @keyframes slideCaret {
2432
+ from {
2433
+ opacity: 0;
2434
+ }
2435
+ 50% {
2436
+ transform: translate(-50%, -0.25rem);
2437
+ opacity: 0;
2438
+ }
2439
+ to {
2440
+ transform: translate(-50%, 0rem);
2441
+ opacity: 1;
2442
+ }
2443
+ }
2444
+ [dir=rtl] {
2445
+ direction: rtl;
2446
+ }
2447
+
2448
+ /**
2449
+ * Reduce Motion Features
2450
+ */
2451
+ @media (prefers-reduced-motion: reduce) {
2452
+ *:not([aria-busy=true]),
2453
+ :not([aria-busy=true])::before,
2454
+ :not([aria-busy=true])::after {
2455
+ background-attachment: initial !important;
2456
+ animation-duration: 1ms !important;
2457
+ animation-delay: -1ms !important;
2458
+ animation-iteration-count: 1 !important;
2459
+ scroll-behavior: auto !important;
2460
+ transition-delay: 0s !important;
2461
+ transition-duration: 0s !important;
2462
+ }
2463
+ }
2464
+ }
2465
+
2466
+ /*# sourceMappingURL=pico.css.map */