UNPKG

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