dolibarr 24.0.0-beta
pico.css.php
1<?php
2/* Copyright (C) 2024 Laurent Destailleur <eldy@users.sourceforge.net>
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 3 of the License, or
7 * (at your option) any later version.
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program. If not, see <https://www.gnu.org/licenses/>.
16 */
17
23//if (! defined('NOREQUIREUSER')) define('NOREQUIREUSER','1'); // Not disabled because need to load personalized language
24//if (! defined('NOREQUIREDB')) define('NOREQUIREDB','1'); // Not disabled to increase speed. Language code is found on url.
25if (!defined('NOREQUIRESOC')) {
26 define('NOREQUIRESOC', '1');
27}
28//if (! defined('NOREQUIRETRAN')) define('NOREQUIRETRAN','1'); // Not disabled because need to do translations
29if (!defined('NOCSRFCHECK')) {
30 define('NOCSRFCHECK', 1);
31}
32if (!defined('NOTOKENRENEWAL')) {
33 define('NOTOKENRENEWAL', 1);
34}
35if (!defined('NOLOGIN')) {
36 define('NOLOGIN', 1); // File must be accessed by logon page so without login.
37}
38//if (!defined('NOREQUIREMENU')) define('NOREQUIREMENU',1); // We load menu manager class (note that object loaded may have wrong content because NOLOGIN is set and some values depends on login)
39if (!defined('NOREQUIREHTML')) {
40 define('NOREQUIREHTML', 1);
41}
42if (!defined('NOREQUIREAJAX')) {
43 define('NOREQUIREAJAX', '1');
44}
45
46session_cache_limiter('public');
47
48require_once __DIR__.'/../../../main.inc.php'; // __DIR__ allow this script to be included in custom themes
49require_once __DIR__.'/../../../webportal/class/webPortalTheme.class.php';
50
51$webPortalTheme = new WebPortalTheme();
52
53// Define css type
54top_httphead('text/css');
55// Important: Following code is to avoid page request by browser and PHP CPU at each Dolibarr page access.
56header('Cache-Control: max-age=10800, public, must-revalidate');
57
58
78?>
79@charset "UTF-8";
88:root {
89 --font-family: system-ui, -apple-system, "Segoe UI", "Roboto", "Ubuntu",
90 "Cantarell", "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji",
91 "Segoe UI Symbol", "Noto Color Emoji";
92 --line-height: 1.5;
93 --font-weight-light: 200;
94 --font-weight-medium: 300;
95 --font-weight: 400;
96 --font-weight-semibold: 600;
97 --font-weight-bold: 700;
98 --font-size: 16px;
99 --border-radius: 0.25rem;
100 --border-width: 1px;
101 --outline-width: 3px;
102 --spacing: 1rem;
103 --typography-spacing-vertical: 1.5rem;
104 --block-spacing-vertical: calc(var(--spacing) * 1.5);
105 --block-spacing-horizontal: var(--spacing);
106 --grid-spacing-vertical: 0;
107 --grid-spacing-horizontal: var(--spacing);
108 --form-element-spacing-vertical: 0.3em;
109 --form-element-spacing-horizontal: 0.5em;
110 --nav-element-spacing-vertical: 1rem;
111 --nav-element-spacing-horizontal: 1rem;
112 --nav-link-spacing-vertical: 0.5rem;
113 --nav-link-spacing-horizontal: 0.5rem;
114 --form-label-font-weight: var(--font-weight);
115 --transition: 0.2s ease-in-out;
116 --modal-overlay-backdrop-filter: blur(0.25rem);
117}
118@media (min-width: 576px) {
119 :root {
120 --font-size: 15px;
121 }
122}
123@media (min-width: 768px) {
124 :root {
125 --font-size: 15px;
126 }
127}
128@media (min-width: 992px) {
129 :root {
130 --font-size: 16px;
131 }
132}
133@media (min-width: 1200px) {
134 :root {
135 --font-size: 17px;
136 }
137}
138
139@media (min-width: 576px) {
140 body > header,
141 body > main,
142 body > footer,
143 section {
144 --block-spacing-vertical: calc(var(--spacing) * 2);
145 }
146}
147@media (min-width: 768px) {
148 body > header,
149 body > main,
150 body > footer,
151 section {
152 --block-spacing-vertical: calc(var(--spacing) * 2.2);
153 }
154}
155@media (min-width: 992px) {
156 body > header,
157 body > main,
158 body > footer,
159 section {
160 --block-spacing-vertical: calc(var(--spacing) * 2.3);
161 }
162}
163@media (min-width: 1200px) {
164 body > header,
165 body > main,
166 body > footer,
167 section {
168 --block-spacing-vertical: calc(var(--spacing) * 2.5);
169 }
170}
171
172@media (min-width: 576px) {
173 article {
174 --block-spacing-horizontal: calc(var(--spacing) * 1.25);
175 }
176}
177@media (min-width: 768px) {
178 article {
179 --block-spacing-horizontal: calc(var(--spacing) * 1.5);
180 }
181}
182@media (min-width: 992px) {
183 article {
184 --block-spacing-horizontal: calc(var(--spacing) * 1.75);
185 }
186}
187@media (min-width: 1200px) {
188 article {
189 --block-spacing-horizontal: calc(var(--spacing) * 2);
190 }
191}
192
193dialog > article {
194 --block-spacing-vertical: calc(var(--spacing) * 2);
195 --block-spacing-horizontal: var(--spacing);
196}
197@media (min-width: 576px) {
198 dialog > article {
199 --block-spacing-vertical: calc(var(--spacing) * 2.5);
200 --block-spacing-horizontal: calc(var(--spacing) * 1.25);
201 }
202}
203@media (min-width: 768px) {
204 dialog > article {
205 --block-spacing-vertical: calc(var(--spacing) * 3);
206 --block-spacing-horizontal: calc(var(--spacing) * 1.5);
207 }
208}
209
210html{
211 scroll-behavior: smooth;
212}
213
214a {
215 --text-decoration: none;
216}
217a.secondary, a.contrast {
218 --text-decoration: underline;
219}
220
221small {
222 --font-size: 0.875em;
223}
224
225h1,
226h2,
227h3,
228h4,
229h5,
230h6 {
231 --font-weight: 700;
232}
233
234h1 {
235 --font-weight: 200;
236 --font-size: 2.5rem;
237 --typography-spacing-vertical: 3rem;
238}
239
240h2 {
241 --font-weight: 200;
242 --font-size: 1.75rem;
243 --typography-spacing-vertical: 2.625rem;
244}
245
246h3 {
247 --font-size: 1.5rem;
248 --typography-spacing-vertical: 2.25rem;
249}
250
251h4 {
252 --font-size: 1.25rem;
253 --typography-spacing-vertical: 1.874rem;
254}
255
256h5 {
257 --font-size: 1.125rem;
258 --typography-spacing-vertical: 1.6875rem;
259}
260
261[type=checkbox],
262[type=radio] {
263 --border-width: 2px;
264}
265
266[type=checkbox][role=switch] {
267 --border-width: 3px;
268}
269
270thead th,
271thead td,
272tfoot th,
273tfoot td {
274 --border-width: 2px;
275}
276
277:not(thead, tfoot) > * > td {
278 --font-size: 0.875em;
279}
280
281pre,
282code,
283kbd,
284samp {
285 --font-family: "Menlo", "Consolas", "Roboto Mono", "Ubuntu Monospace",
286 "Noto Mono", "Oxygen Mono", "Liberation Mono", monospace,
287 "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
288}
289
290kbd {
291 --font-weight: bolder;
292}
293
294:where(:root) {
295 --background-color: #fff;
296 --color: hsl(202, 13.67%, 41.54%); /* This is default TEXT color not Primary color */
297 --h1-color: hsl(205, 30%, 15%);
298 --h2-color: #24333e;
299 --h3-color: hsl(205, 25%, 23%);
300 --h4-color: #374956;
301 --h5-color: hsl(205, 20%, 32%);
302 --h6-color: #4d606d;
303 --muted-color: hsl(205, 10%, 50%);
304 --muted-border-color: hsl(205, 20%, 94%);
305
306 --outline-button-background: var(--background-color);
307 --banner-background : #ededed;
308 --primary-color-hue : <?php echo $webPortalTheme->primaryColorHsl['h']; /* TODO : WHY ?? this is already in custom.css.php */ ?>;
309 --primary-color-saturation : <?php echo $webPortalTheme->primaryColorHsl['s']; /* TODO : WHY ?? this is already in custom.css.php */ ?>%;
310 --primary-color-lightness : <?php echo $webPortalTheme->primaryColorHsl['l']; /* TODO : WHY ?? this is already in custom.css.php */ ?>%;
311 --primary : hsl(var(--primary-color-hue), var(--primary-color-saturation), var(--primary-color-lightness));
312 --primary-hover: hsl(var(--primary-color-hue), 90%, 32%);
313 --primary-focus: hsl(var(--primary-color-hue), var(--primary-color-saturation), var(--primary-color-lightness), 0.125);
314 --primary-inverse: #fff;
315 --secondary: hsl(205, 15%, 41%);
316 --secondary-hover: hsl(205, 20%, 32%);
317 --secondary-focus: rgba(89, 107, 120, 0.125);
318 --secondary-inverse: #fff;
319 --contrast: hsl(205, 30%, 15%);
320 --contrast-hover: #000;
321 --contrast-focus: rgba(89, 107, 120, 0.125);
322 --contrast-inverse: #fff;
323 --mark-background-color: #fff2ca;
324 --mark-color: #543a26;
325 --ins-color: #388e3c;
326 --del-color: #c62828;
327 --blockquote-border-color: var(--muted-border-color);
328 --blockquote-footer-color: var(--muted-color);
329 --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
330 --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
331 --form-element-background-color: transparent;
332 --form-element-border-color: hsl(205, 14%, 68%);
333 --form-element-color: var(--color);
334 --form-element-placeholder-color: var(--muted-color);
335 --form-element-active-background-color: transparent;
336 --form-element-active-border-color: var(--primary);
337 --form-element-focus-color: var(--primary-focus);
338 --form-element-disabled-background-color: hsl(205, 18%, 86%);
339 --form-element-disabled-border-color: hsl(205, 14%, 68%);
340 --form-element-disabled-opacity: 0.5;
341 --form-element-invalid-border-color: #c62828;
342 --form-element-invalid-active-border-color: #d32f2f;
343 --form-element-invalid-focus-color: rgba(211, 47, 47, 0.125);
344 --form-element-valid-border-color: #388e3c;
345 --form-element-valid-active-border-color: #43a047;
346 --form-element-valid-focus-color: rgba(67, 160, 71, 0.125);
347 --switch-background-color: hsl(205, 16%, 77%);
348 --switch-color: var(--primary-inverse);
349 --switch-checked-background-color: var(--primary);
350 --range-border-color: hsl(205, 18%, 86%);
351 --range-active-border-color: hsl(205, 16%, 77%);
352 --range-thumb-border-color: var(--background-color);
353 --range-thumb-color: var(--secondary);
354 --range-thumb-hover-color: var(--secondary-hover);
355 --range-thumb-active-color: var(--primary);
356 --table-border-color: var(--muted-border-color);
357 --table-row-stripped-background-color: #f6f8f9;
358 --code-background-color: hsl(205, 20%, 94%);
359 --code-color: var(--muted-color);
360 --code-kbd-background-color: var(--contrast);
361 --code-kbd-color: var(--contrast-inverse);
362 --code-tag-color: hsl(330, 40%, 50%);
363 --code-property-color: hsl(185, 40%, 40%);
364 --code-value-color: hsl(40, 20%, 50%);
365 --code-comment-color: hsl(205, 14%, 68%);
366 --accordion-border-color: var(--muted-border-color);
367 --accordion-close-summary-color: var(--color);
368 --accordion-open-summary-color: var(--muted-color);
369 --card-background-color: var(--background-color);
370 --card-border-color: var(--muted-border-color);
371 --card-box-shadow:
372 0.0145rem 0.029rem 0.174rem rgba(27, 40, 50, 0.01698),
373 0.0335rem 0.067rem 0.402rem rgba(27, 40, 50, 0.024),
374 0.0625rem 0.125rem 0.75rem rgba(27, 40, 50, 0.03),
375 0.1125rem 0.225rem 1.35rem rgba(27, 40, 50, 0.036),
376 0.2085rem 0.417rem 2.502rem rgba(27, 40, 50, 0.04302),
377 0.5rem 1rem 6rem rgba(27, 40, 50, 0.06),
378 0 0 0 0.0625rem rgba(27, 40, 50, 0.015);
379 --card-sectionning-background-color: #fbfbfc;
380 --dropdown-background-color: #fbfbfc;
381 --dropdown-border-color: #e1e6eb;
382 --dropdown-box-shadow: var(--card-box-shadow);
383 --dropdown-color: var(--color);
384 --dropdown-hover-background-color: hsl(205, 20%, 94%);
385 --modal-overlay-background-color: rgba(213, 220, 226, 0.7);
386 --progress-background-color: hsl(205, 18%, 86%);
387 --progress-color: var(--primary);
388 --loading-spinner-opacity: 0.5;
389 --tooltip-background-color: var(--contrast);
390 --tooltip-color: var(--contrast-inverse);
391
393 --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");
394 --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");
395 --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");
396 --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");
397 --icon-caret: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='-96 0 10.24 10.24' style='fill:rgba(65, 84, 98)'%3E%3Cpath d='M-96 1.92h10.24l-5.12 6.4z' /%3E%3C/svg%3E");
398 --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");
399 --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");
400 --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");
401 --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");
402 --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");
403 --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");
404 --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");
405
406 --nav-background-color: rgba(255,255,255,0.8);
407 --nav-border-color: rgba(127,127,127,0.3);
408
409 color-scheme: light;
410
411
413 --login-form-border-color: #D1D1D4;
414 --login-form-border-color-hover: hsl(var(--primary-color-hue), var(--primary-color-saturation), 50%);
415 --login-form-icon-color: hsl(var(--primary-color-hue), var(--primary-color-saturation), 50%);
416 /* Use image or Linear background */
417 --login-background : linear-gradient(
418 90deg,
419 hsl(var(--primary-color-hue), var(--primary-color-saturation), 70%),
420 hsl(var(--primary-color-hue), var(--primary-color-saturation), 90%)
421 );
422
423}
424
425/*@media only screen and (prefers-color-scheme: dark) {*/
426/* :root:not([data-theme]) {*/
427/* --background-color: #11191f;*/
428/* --color: hsl(205, 16%, 77%);*/
429/* --h1-color: hsl(205, 20%, 94%);*/
430/* --h2-color: #e1e6eb;*/
431/* --h3-color: hsl(205, 18%, 86%);*/
432/* --h4-color: #c8d1d8;*/
433/* --h5-color: hsl(205, 16%, 77%);*/
434/* --h6-color: #afbbc4;*/
435/* --muted-color: hsl(205, 10%, 50%);*/
436/* --muted-border-color: #1f2d38;*/
437/* --primary: hsl(195, 85%, 41%);*/
438/* --primary-hover: hsl(195, 80%, 50%);*/
439/* --primary-focus: rgba(16, 149, 193, 0.25);*/
440/* --primary-inverse: #fff;*/
441/* --secondary: hsl(205, 15%, 41%);*/
442/* --secondary-hover: hsl(205, 10%, 50%);*/
443/* --secondary-focus: rgba(115, 130, 140, 0.25);*/
444/* --secondary-inverse: #fff;*/
445/* --contrast: hsl(205, 20%, 94%);*/
446/* --contrast-hover: #fff;*/
447/* --contrast-focus: rgba(115, 130, 140, 0.25);*/
448/* --contrast-inverse: #000;*/
449/* --mark-background-color: #d1c284;*/
450/* --mark-color: #11191f;*/
451/* --ins-color: #388e3c;*/
452/* --del-color: #c62828;*/
453/* --blockquote-border-color: var(--muted-border-color);*/
454/* --blockquote-footer-color: var(--muted-color);*/
455/* --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);*/
456/* --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);*/
457/* --form-element-background-color: #11191f;*/
458/* --form-element-border-color: #374956;*/
459/* --form-element-color: var(--color);*/
460/* --form-element-placeholder-color: var(--muted-color);*/
461/* --form-element-active-background-color: var(--form-element-background-color);*/
462/* --form-element-active-border-color: var(--primary);*/
463/* --form-element-focus-color: var(--primary-focus);*/
464/* --form-element-disabled-background-color: hsl(205, 25%, 23%);*/
465/* --form-element-disabled-border-color: hsl(205, 20%, 32%);*/
466/* --form-element-disabled-opacity: 0.5;*/
467/* --form-element-invalid-border-color: #b71c1c;*/
468/* --form-element-invalid-active-border-color: #c62828;*/
469/* --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25);*/
470/* --form-element-valid-border-color: #2e7d32;*/
471/* --form-element-valid-active-border-color: #388e3c;*/
472/* --form-element-valid-focus-color: rgba(56, 142, 60, 0.25);*/
473/* --switch-background-color: #374956;*/
474/* --switch-color: var(--primary-inverse);*/
475/* --switch-checked-background-color: var(--primary);*/
476/* --range-border-color: #24333e;*/
477/* --range-active-border-color: hsl(205, 25%, 23%);*/
478/* --range-thumb-border-color: var(--background-color);*/
479/* --range-thumb-color: var(--secondary);*/
480/* --range-thumb-hover-color: var(--secondary-hover);*/
481/* --range-thumb-active-color: var(--primary);*/
482/* --table-border-color: var(--muted-border-color);*/
483/* --table-row-stripped-background-color: rgba(115, 130, 140, 0.05);*/
484/* --code-background-color: #18232c;*/
485/* --code-color: var(--muted-color);*/
486/* --code-kbd-background-color: var(--contrast);*/
487/* --code-kbd-color: var(--contrast-inverse);*/
488/* --code-tag-color: hsl(330, 30%, 50%);*/
489/* --code-property-color: hsl(185, 30%, 50%);*/
490/* --code-value-color: hsl(40, 10%, 50%);*/
491/* --code-comment-color: #4d606d;*/
492/* --accordion-border-color: var(--muted-border-color);*/
493/* --accordion-active-summary-color: var(--primary);*/
494/* --accordion-close-summary-color: var(--color);*/
495/* --accordion-open-summary-color: var(--muted-color);*/
496/* --card-background-color: #141e26;*/
497/* --card-border-color: var(--card-background-color);*/
498/* --card-box-shadow:*/
499/* 0.0145rem 0.029rem 0.174rem rgba(0, 0, 0, 0.01698),*/
500/* 0.0335rem 0.067rem 0.402rem rgba(0, 0, 0, 0.024),*/
501/* 0.0625rem 0.125rem 0.75rem rgba(0, 0, 0, 0.03),*/
502/* 0.1125rem 0.225rem 1.35rem rgba(0, 0, 0, 0.036),*/
503/* 0.2085rem 0.417rem 2.502rem rgba(0, 0, 0, 0.04302),*/
504/* 0.5rem 1rem 6rem rgba(0, 0, 0, 0.06),*/
505/* 0 0 0 0.0625rem rgba(0, 0, 0, 0.015);*/
506/* --card-sectionning-background-color: #18232c;*/
507/* --dropdown-background-color: hsl(205, 30%, 15%);*/
508/* --dropdown-border-color: #24333e;*/
509/* --dropdown-box-shadow: var(--card-box-shadow);*/
510/* --dropdown-color: var(--color);*/
511/* --dropdown-hover-background-color: rgba(36, 51, 62, 0.75);*/
512/* --modal-overlay-background-color: rgba(36, 51, 62, 0.8);*/
513/* --progress-background-color: #24333e;*/
514/* --progress-color: var(--primary);*/
515/* --loading-spinner-opacity: 0.5;*/
516/* --tooltip-background-color: var(--contrast);*/
517/* --tooltip-color: var(--contrast-inverse);*/
518/* --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");*/
519/* --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");*/
520/* --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");*/
521/* --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");*/
522/* --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");*/
523/* --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");*/
524/* --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");*/
525/* --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");*/
526/* --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");*/
527/* --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");*/
528/* --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");*/
529/* color-scheme: dark;*/
530/* }*/
531/*}*/
532
533[data-theme=dark] {
534 --background-color: #11191f;
535 --color: hsl(202deg 13.67% 41.54%);
536 --h1-color: hsl(205, 20%, 94%);
537 --h2-color: #e1e6eb;
538 --h3-color: hsl(205, 18%, 86%);
539 --h4-color: #c8d1d8;
540 --h5-color: hsl(205, 16%, 77%);
541 --h6-color: #afbbc4;
542 --muted-color: hsl(205, 10%, 50%);
543 --muted-border-color: #1f2d38;
544 /*--primary: hsl(195, 85%, 41%);*/
545 /*--primary-hover: hsl(195, 80%, 50%);*/
546 /*--primary-focus: rgba(16, 149, 193, 0.25);*/
547 /*--primary-inverse: #fff;*/
548 --secondary: hsl(205, 15%, 41%);
549 --secondary-hover: hsl(205, 10%, 50%);
550 --secondary-focus: rgba(115, 130, 140, 0.25);
551 --secondary-inverse: #fff;
552 --contrast: hsl(205, 20%, 94%);
553 --contrast-hover: #fff;
554 --contrast-focus: rgba(115, 130, 140, 0.25);
555 --contrast-inverse: #000;
556 --mark-background-color: #d1c284;
557 --mark-color: #11191f;
558 --ins-color: #388e3c;
559 --del-color: #c62828;
560 --blockquote-border-color: var(--muted-border-color);
561 --blockquote-footer-color: var(--muted-color);
562 --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
563 --button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
564 --form-element-background-color: #11191f;
565 --form-element-border-color: #374956;
566 --form-element-color: var(--color);
567 --form-element-placeholder-color: var(--muted-color);
568 --form-element-active-background-color: var(--form-element-background-color);
569 --form-element-active-border-color: var(--primary);
570 --form-element-focus-color: var(--primary-focus);
571 --form-element-disabled-background-color: hsl(205, 25%, 23%);
572 --form-element-disabled-border-color: hsl(205, 20%, 32%);
573 --form-element-disabled-opacity: 0.5;
574 --form-element-invalid-border-color: #b71c1c;
575 --form-element-invalid-active-border-color: #c62828;
576 --form-element-invalid-focus-color: rgba(198, 40, 40, 0.25);
577 --form-element-valid-border-color: #2e7d32;
578 --form-element-valid-active-border-color: #388e3c;
579 --form-element-valid-focus-color: rgba(56, 142, 60, 0.25);
580 --switch-background-color: #374956;
581 --switch-color: var(--primary-inverse);
582 --switch-checked-background-color: var(--primary);
583 --range-border-color: #24333e;
584 --range-active-border-color: hsl(205, 25%, 23%);
585 --range-thumb-border-color: var(--background-color);
586 --range-thumb-color: var(--secondary);
587 --range-thumb-hover-color: var(--secondary-hover);
588 --range-thumb-active-color: var(--primary);
589 --table-border-color: var(--muted-border-color);
590 --table-row-stripped-background-color: rgba(115, 130, 140, 0.05);
591 --code-background-color: #18232c;
592 --code-color: var(--muted-color);
593 --code-kbd-background-color: var(--contrast);
594 --code-kbd-color: var(--contrast-inverse);
595 --code-tag-color: hsl(330, 30%, 50%);
596 --code-property-color: hsl(185, 30%, 50%);
597 --code-value-color: hsl(40, 10%, 50%);
598 --code-comment-color: #4d606d;
599 --accordion-border-color: var(--muted-border-color);
600 --accordion-active-summary-color: var(--primary);
601 --accordion-close-summary-color: var(--color);
602 --accordion-open-summary-color: var(--muted-color);
603 --card-background-color: #141e26;
604 --card-border-color: var(--card-background-color);
605 --card-box-shadow:
606 0.0145rem 0.029rem 0.174rem rgba(0, 0, 0, 0.01698),
607 0.0335rem 0.067rem 0.402rem rgba(0, 0, 0, 0.024),
608 0.0625rem 0.125rem 0.75rem rgba(0, 0, 0, 0.03),
609 0.1125rem 0.225rem 1.35rem rgba(0, 0, 0, 0.036),
610 0.2085rem 0.417rem 2.502rem rgba(0, 0, 0, 0.04302),
611 0.5rem 1rem 6rem rgba(0, 0, 0, 0.06),
612 0 0 0 0.0625rem rgba(0, 0, 0, 0.015);
613 --card-sectionning-background-color: #18232c;
614 --dropdown-background-color: hsl(205, 30%, 15%);
615 --dropdown-border-color: #24333e;
616 --dropdown-box-shadow: var(--card-box-shadow);
617 --dropdown-color: var(--color);
618 --dropdown-hover-background-color: rgba(36, 51, 62, 0.75);
619 --modal-overlay-background-color: rgba(36, 51, 62, 0.8);
620 --progress-background-color: #24333e;
621 --progress-color: var(--primary);
622 --loading-spinner-opacity: 0.5;
623 --tooltip-background-color: var(--contrast);
624 --tooltip-color: var(--contrast-inverse);
625
626
628 --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");
629 --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");
630 --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");
631 --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");
632 --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");
633 --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");
634 --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");
635 --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");
636 --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");
637 --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");
638 --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");
639 color-scheme: dark;
640}
641
642progress,
643[type=checkbox],
644[type=radio],
645[type=range] {
646 accent-color: var(--primary);
647}
648
653*,
654*::before,
655*::after {
656 box-sizing: border-box;
657 background-repeat: no-repeat;
658}
659
660::before,
661::after {
662 text-decoration: inherit;
663 vertical-align: inherit;
664}
665
666:where(:root) {
667 -webkit-tap-highlight-color: transparent;
668 -webkit-text-size-adjust: 100%;
669 -moz-text-size-adjust: 100%;
670 text-size-adjust: 100%;
671 background-color: var(--background-color);
672 color: var(--color);
673 font-weight: var(--font-weight);
674 font-size: var(--font-size);
675 line-height: var(--line-height);
676 font-family: var(--font-family);
677 text-rendering: optimizeLegibility;
678 overflow-wrap: break-word;
679 cursor: default;
680 -moz-tab-size: 4;
681 -o-tab-size: 4;
682 tab-size: 4;
683}
684
689main {
690 display: block;
691}
692
693body {
694 width: 100%;
695 margin: 0;
696}
697body > header,
698body > main,
699body > footer {
700 width: 100%;
701 margin-right: auto;
702 margin-left: auto;
703 padding: var(--block-spacing-vertical) 0;
704}
705
709.container,
710.container-fluid {
711 width: 100%;
712 margin-right: auto;
713 margin-left: auto;
714 padding-right: var(--spacing);
715 padding-left: var(--spacing);
716}
717
718@media (min-width: 576px) {
719 .container {
720 max-width: 90%;
721 padding-right: 0;
722 padding-left: 0;
723 }
724}
725@media (min-width: 768px) {
726 .container {
727 max-width: 90%;
728 }
729}
730@media (min-width: 992px) {
731 .container {
732 max-width: 90%;
733 }
734}
735@media (min-width: 1200px) {
736 .container {
737 max-width: min(95%, 1800px);
738 }
739}
740
745section {
746 margin-bottom: var(--block-spacing-vertical);
747}
748
753.grid {
754 grid-column-gap: var(--grid-spacing-horizontal);
755 grid-row-gap: var(--grid-spacing-vertical);
756 display: grid;
757 grid-template-columns: 1fr;
758 margin: 0;
759}
760@media (min-width: 992px) {
761 .grid {
762 grid-template-columns: repeat(auto-fit, minmax(0%, 1fr));
763 }
764}
765.grid > * {
766 min-width: 0;
767}
768
772figure {
773 display: block;
774 margin: 0;
775 padding: 0;
776 overflow-x: auto;
777}
778figure figcaption {
779 padding: calc(var(--spacing) * 0.5) 0;
780 color: var(--muted-color);
781}
782
786b,
787strong {
788 font-weight: bolder;
789}
790
791sub,
792sup {
793 position: relative;
794 font-size: 0.75em;
795 line-height: 0;
796 vertical-align: baseline;
797}
798
799sub {
800 bottom: -0.25em;
801}
802
803sup {
804 top: -0.5em;
805}
806
807address,
808blockquote,
809dl,
810figure,
811form,
812ol,
813p,
814pre,
815table,
816ul {
817 margin-top: 0;
818 margin-bottom: var(--typography-spacing-vertical);
819 color: var(--color);
820 font-style: normal;
821 font-weight: var(--font-weight);
822 font-size: var(--font-size);
823}
824
825a,
826[role=link] {
827 --color: var(--primary);
828 --background-color: transparent;
829 outline: none;
830 background-color: var(--background-color);
831 color: var(--color);
832 -webkit-text-decoration: var(--text-decoration);
833 text-decoration: var(--text-decoration);
834 transition: background-color var(--transition), color var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
835 transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition);
836 transition: background-color var(--transition), color var(--transition), text-decoration var(--transition), box-shadow var(--transition), -webkit-text-decoration var(--transition);
837}
838a:is([aria-current], :hover, :active, :focus),
839[role=link]:is([aria-current], :hover, :active, :focus) {
840 --color: var(--primary-hover);
841 --text-decoration: underline;
842}
843a:focus,
844[role=link]:focus {
845 --background-color: var(--primary-focus);
846}
847a.secondary,
848[role=link].secondary {
849 --color: var(--secondary);
850}
851a.secondary:is([aria-current], :hover, :active, :focus),
852[role=link].secondary:is([aria-current], :hover, :active, :focus) {
853 --color: var(--secondary-hover);
854}
855a.secondary:focus,
856[role=link].secondary:focus {
857 --background-color: var(--secondary-focus);
858}
859a.contrast,
860[role=link].contrast {
861 --color: var(--contrast);
862}
863a.contrast:is([aria-current], :hover, :active, :focus),
864[role=link].contrast:is([aria-current], :hover, :active, :focus) {
865 --color: var(--contrast-hover);
866}
867a.contrast:focus,
868[role=link].contrast:focus {
869 --background-color: var(--contrast-focus);
870}
871
872h1,
873h2,
874h3,
875h4,
876h5,
877h6 {
878 margin-top: 0;
879 color: var(--color);
880 font-weight: var(--font-weight);
881 font-size: var(--font-size);
882 font-family: var(--font-family);
883}
884
885h1 {
886 --color: var(--h1-color);
887}
888
889h2 {
890 --color: var(--h2-color);
891}
892
893h3 {
894 --color: var(--h3-color);
895}
896
897h4 {
898 --color: var(--h4-color);
899}
900
901h5 {
902 --color: var(--h5-color);
903}
904
905h6 {
906 --color: var(--h6-color);
907}
908
909:where(address, blockquote, dl, figure, form, ol, p, pre, table, ul) ~ :is(h1, h2, h3, h4, h5, h6) {
910 margin-top: var(--typography-spacing-vertical);
911}
912
913hgroup,
914.headings {
915 margin-bottom: var(--typography-spacing-vertical);
916}
917hgroup > *,
918.headings > * {
919 margin-bottom: 0;
920}
921hgroup > *:last-child,
922.headings > *:last-child {
923 --color: var(--muted-color);
924 --font-weight: unset;
925 font-size: 1rem;
926 font-family: unset;
927}
928
929p {
930 margin-bottom: var(--typography-spacing-vertical);
931}
932
933small {
934 font-size: var(--font-size);
935}
936
937:where(dl, ol, ul) {
938 padding-right: 0;
939 padding-left: var(--spacing);
940 -webkit-padding-start: var(--spacing);
941 padding-inline-start: var(--spacing);
942 -webkit-padding-end: 0;
943 padding-inline-end: 0;
944}
945:where(dl, ol, ul) li {
946 margin-bottom: calc(var(--typography-spacing-vertical) * 0.25);
947}
948
949:where(dl, ol, ul) :is(dl, ol, ul) {
950 margin: 0;
951 margin-top: calc(var(--typography-spacing-vertical) * 0.25);
952}
953
954ul li {
955 list-style: square;
956}
957
958mark {
959 padding: 0.125rem 0.25rem;
960 background-color: var(--mark-background-color);
961 color: var(--mark-color);
962 vertical-align: baseline;
963}
964
965blockquote {
966 display: block;
967 margin: var(--typography-spacing-vertical) 0;
968 padding: var(--spacing);
969 border-right: none;
970 border-left: 0.25rem solid var(--blockquote-border-color);
971 -webkit-border-start: 0.25rem solid var(--blockquote-border-color);
972 border-inline-start: 0.25rem solid var(--blockquote-border-color);
973 -webkit-border-end: none;
974 border-inline-end: none;
975}
976blockquote footer {
977 margin-top: calc(var(--typography-spacing-vertical) * 0.5);
978 color: var(--blockquote-footer-color);
979}
980
981abbr[title] {
982 border-bottom: 1px dotted;
983 text-decoration: none;
984 cursor: help;
985}
986
987ins {
988 color: var(--ins-color);
989 text-decoration: none;
990}
991
992del {
993 color: var(--del-color);
994}
995
996::-moz-selection {
997 background-color: var(--primary-focus);
998}
999
1000::selection {
1001 background-color: var(--primary-focus);
1002}
1003
1007:where(audio, canvas, iframe, img, svg, video) {
1008 vertical-align: middle;
1009}
1010
1011audio,
1012video {
1013 display: inline-block;
1014}
1015
1016audio:not([controls]) {
1017 display: none;
1018 height: 0;
1019}
1020
1021:where(iframe) {
1022 border-style: none;
1023}
1024
1025img {
1026 max-width: 100%;
1027 height: auto;
1028 border-style: none;
1029}
1030
1031:where(svg:not([fill])) {
1032 fill: currentColor;
1033}
1034
1035svg:not(:root) {
1036 overflow: hidden;
1037}
1038
1042button {
1043 margin: 0;
1044 overflow: visible;
1045 font-family: inherit;
1046 text-transform: none;
1047}
1048
1049button,
1050[type=button],
1051[type=reset],
1052[type=submit] {
1053 -webkit-appearance: button;
1054}
1055
1056button {
1057 display: block;
1058 width: 100%;
1059 margin-bottom: var(--spacing);
1060}
1061
1062[role=button] {
1063 display: inline-block;
1064 text-decoration: none;
1065}
1066
1067button,
1068input[type=submit],
1069input[type=button],
1070input[type=reset],
1071[role=button] {
1072 --background-color: var(--primary);
1073 --border-color: var(--primary);
1074 --color: var(--primary-inverse);
1075 --box-shadow: var(--button-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
1076 padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
1077 border: var(--border-width) solid var(--border-color);
1078 border-radius: var(--border-radius);
1079 outline: none;
1080 background-color: var(--background-color);
1081 box-shadow: var(--box-shadow);
1082 color: var(--color);
1083 font-weight: var(--font-weight);
1084 font-size: 1rem;
1085 line-height: var(--line-height);
1086 text-align: center;
1087 cursor: pointer;
1088 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1089}
1090button:is([aria-current], :hover, :active, :focus),
1091input[type=submit]:is([aria-current], :hover, :active, :focus),
1092input[type=button]:is([aria-current], :hover, :active, :focus),
1093input[type=reset]:is([aria-current], :hover, :active, :focus),
1094[role=button]:is([aria-current], :hover, :active, :focus) {
1095 --background-color: var(--primary-hover);
1096 --border-color: var(--primary-hover);
1097 --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0));
1098 --color: var(--primary-inverse);
1099}
1100button:focus,
1101input[type=submit]:focus,
1102input[type=button]:focus,
1103input[type=reset]:focus,
1104[role=button]:focus {
1105 --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1106 0 0 0 var(--outline-width) var(--primary-focus);
1107}
1108
1109:is(button, input[type=submit], input[type=button], [role=button]).secondary,
1110input[type=reset] {
1111 --background-color: var(--secondary);
1112 --border-color: var(--secondary);
1113 --color: var(--secondary-inverse);
1114 cursor: pointer;
1115}
1116:is(button, input[type=submit], input[type=button], [role=button]).secondary:is([aria-current], :hover, :active, :focus),
1117input[type=reset]:is([aria-current], :hover, :active, :focus) {
1118 --background-color: var(--secondary-hover);
1119 --border-color: var(--secondary-hover);
1120 --color: var(--secondary-inverse);
1121}
1122:is(button, input[type=submit], input[type=button], [role=button]).secondary:focus,
1123input[type=reset]:focus {
1124 --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1125 0 0 0 var(--outline-width) var(--secondary-focus);
1126}
1127
1128:is(button, input[type=submit], input[type=button], [role=button]).contrast {
1129 --background-color: var(--contrast);
1130 --border-color: var(--contrast);
1131 --color: var(--contrast-inverse);
1132}
1133:is(button, input[type=submit], input[type=button], [role=button]).contrast:is([aria-current], :hover, :active, :focus) {
1134 --background-color: var(--contrast-hover);
1135 --border-color: var(--contrast-hover);
1136 --color: var(--contrast-inverse);
1137}
1138:is(button, input[type=submit], input[type=button], [role=button]).contrast:focus {
1139 --box-shadow: var(--button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1140 0 0 0 var(--outline-width) var(--contrast-focus);
1141}
1142
1143:is(button, input[type=submit], input[type=button], [role=button]).outline,
1144input[type=reset].outline {
1145 --background-color: var(--outline-button-background);
1146 --color: var(--primary);
1147}
1148:is(button, input[type=submit], input[type=button], [role=button]).outline:is([aria-current], :hover, :active, :focus),
1149input[type=reset].outline:is([aria-current], :hover, :active, :focus) {
1150 --background-color: var(--outline-button-background);
1151 --color: var(--primary-hover);
1152}
1153
1154:is(button, input[type=submit], input[type=button], [role=button]).outline.secondary,
1155input[type=reset].outline {
1156 --color: var(--secondary);
1157}
1158:is(button, input[type=submit], input[type=button], [role=button]).outline.secondary:is([aria-current], :hover, :active, :focus),
1159input[type=reset].outline:is([aria-current], :hover, :active, :focus) {
1160 --color: var(--secondary-hover);
1161}
1162
1163:is(button, input[type=submit], input[type=button], [role=button]).outline.contrast {
1164 --color: var(--contrast);
1165}
1166:is(button, input[type=submit], input[type=button], [role=button]).outline.contrast:is([aria-current], :hover, :active, :focus) {
1167 --color: var(--contrast-hover);
1168}
1169
1170:where(button, [type=submit], [type=button], [type=reset], [role=button])[disabled],
1171:where(fieldset[disabled]) :is(button, [type=submit], [type=button], [type=reset], [role=button]),
1172a[role=button]:not([href]) {
1173 opacity: 0.5;
1174 pointer-events: none;
1175}
1176
1180input,
1181optgroup,
1182select,
1183textarea {
1184 margin: 0;
1185 font-size: 1rem;
1186 line-height: var(--line-height);
1187 font-family: inherit;
1188 letter-spacing: inherit;
1189}
1190
1191input {
1192 overflow: visible;
1193}
1194
1195select {
1196 text-transform: none;
1197}
1198
1199legend {
1200 max-width: 100%;
1201 padding: 0;
1202 color: inherit;
1203 white-space: normal;
1204}
1205
1206textarea {
1207 overflow: auto;
1208}
1209
1210[type=checkbox],
1211[type=radio] {
1212 padding: 0;
1213}
1214
1215::-webkit-inner-spin-button,
1216::-webkit-outer-spin-button {
1217 height: auto;
1218}
1219
1220[type=search] {
1221 -webkit-appearance: textfield;
1222 outline-offset: -2px;
1223}
1224
1225[type=search]::-webkit-search-decoration {
1226 -webkit-appearance: none;
1227}
1228
1229::-webkit-file-upload-button {
1230 -webkit-appearance: button;
1231 font: inherit;
1232}
1233
1234::-moz-focus-inner {
1235 padding: 0;
1236 border-style: none;
1237}
1238
1239:-moz-focusring {
1240 outline: none;
1241}
1242
1243:-moz-ui-invalid {
1244 box-shadow: none;
1245}
1246
1247::-ms-expand {
1248 display: none;
1249}
1250
1251[type=file],
1252[type=range] {
1253 padding: 0;
1254 border-width: 0;
1255}
1256
1257input:not([type=checkbox], [type=radio], [type=range]) {
1258 height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
1259}
1260
1261fieldset {
1262 margin: 0;
1263 margin-bottom: var(--spacing);
1264 padding: 0;
1265 border: 0;
1266}
1267
1268label,
1269fieldset legend {
1270 display: block;
1271 margin-bottom: calc(var(--spacing) * 0.25);
1272 font-weight: var(--form-label-font-weight, var(--font-weight));
1273}
1274
1275input:not([type=checkbox], [type=radio]),
1276select,
1277textarea {
1278 width: 100%;
1279}
1280
1281input:not([type=checkbox], [type=radio], [type=range], [type=file]),
1282select,
1283textarea {
1284 -webkit-appearance: none;
1285 -moz-appearance: none;
1286 appearance: none;
1287 padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
1288}
1289
1290input,
1291select,
1292textarea {
1293 --background-color: var(--form-element-background-color);
1294 --border-color: var(--form-element-border-color);
1295 --color: var(--form-element-color);
1296 --box-shadow: none;
1297 border: var(--border-width) solid var(--border-color);
1298 border-radius: var(--border-radius);
1299 outline: none;
1300 background-color: var(--background-color);
1301 box-shadow: var(--box-shadow);
1302 color: var(--color);
1303 font-weight: var(--font-weight);
1304 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1305}
1306
1307input:not([type=submit], [type=button], [type=reset], [type=checkbox], [type=radio], [readonly]):is(:active, :focus),
1308:where(select, textarea):is(:active, :focus) {
1309 --background-color: var(--form-element-active-background-color);
1310}
1311
1312input:not([type=submit], [type=button], [type=reset], [role=switch], [readonly]):is(:active, :focus),
1313:where(select, textarea):is(:active, :focus) {
1314 --border-color: var(--form-element-active-border-color);
1315}
1316
1317input:not([type=submit], [type=button], [type=reset], [type=range], [type=file], [readonly]):focus,
1318select:focus,
1319textarea:focus {
1320 --box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
1321}
1322
1323input:not([type=submit], [type=button], [type=reset])[disabled],
1324select[disabled],
1325textarea[disabled],
1326:where(fieldset[disabled]) :is(input:not([type=submit], [type=button], [type=reset]), select, textarea) {
1327 --background-color: var(--form-element-disabled-background-color);
1328 --border-color: var(--form-element-disabled-border-color);
1329 opacity: var(--form-element-disabled-opacity);
1330 pointer-events: none;
1331}
1332
1333:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid] {
1334 padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important;
1335 padding-left: var(--form-element-spacing-horizontal);
1336 -webkit-padding-start: var(--form-element-spacing-horizontal) !important;
1337 padding-inline-start: var(--form-element-spacing-horizontal) !important;
1338 -webkit-padding-end: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important;
1339 padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem) !important;
1340 background-position: center right 0.75rem;
1341 background-size: 1rem auto;
1342 background-repeat: no-repeat;
1343}
1344:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid=false] {
1345 background-image: var(--icon-valid);
1346}
1347:where(input, select, textarea):not([type=checkbox], [type=radio], [type=date], [type=datetime-local], [type=month], [type=time], [type=week])[aria-invalid=true] {
1348 background-image: var(--icon-invalid);
1349}
1350:where(input, select, textarea)[aria-invalid=false] {
1351 --border-color: var(--form-element-valid-border-color);
1352}
1353:where(input, select, textarea)[aria-invalid=false]:is(:active, :focus) {
1354 --border-color: var(--form-element-valid-active-border-color) !important;
1355 --box-shadow: 0 0 0 var(--outline-width) var(--form-element-valid-focus-color) !important;
1356}
1357:where(input, select, textarea)[aria-invalid=true] {
1358 --border-color: var(--form-element-invalid-border-color);
1359}
1360:where(input, select, textarea)[aria-invalid=true]:is(:active, :focus) {
1361 --border-color: var(--form-element-invalid-active-border-color) !important;
1362 --box-shadow: 0 0 0 var(--outline-width) var(--form-element-invalid-focus-color) !important;
1363}
1364
1365[dir=rtl] :where(input, select, textarea):not([type=checkbox], [type=radio]):is([aria-invalid], [aria-invalid=true], [aria-invalid=false]) {
1366 background-position: center left 0.75rem;
1367}
1368
1369input::placeholder,
1370input::-webkit-input-placeholder,
1371textarea::placeholder,
1372textarea::-webkit-input-placeholder,
1373select:invalid {
1374 color: var(--form-element-placeholder-color);
1375 opacity: 1;
1376}
1377
1378input:not([type=checkbox], [type=radio]),
1379select,
1380textarea {
1381 margin-bottom: var(--spacing);
1382}
1383
1384select::-ms-expand {
1385 border: 0;
1386 background-color: transparent;
1387}
1388select:not([multiple], [size]) {
1389 padding-right: calc(var(--form-element-spacing-horizontal) + 1.5rem);
1390 padding-left: var(--form-element-spacing-horizontal);
1391 -webkit-padding-start: var(--form-element-spacing-horizontal);
1392 padding-inline-start: var(--form-element-spacing-horizontal);
1393 -webkit-padding-end: calc(var(--form-element-spacing-horizontal) + 1.5rem);
1394 padding-inline-end: calc(var(--form-element-spacing-horizontal) + 1.5rem);
1395 background-image: var(--icon-chevron);
1396 background-position: center right 0.75rem;
1397 background-size: 1rem auto;
1398 background-repeat: no-repeat;
1399}
1400
1401[dir=rtl] select:not([multiple], [size]) {
1402 background-position: center left 0.75rem;
1403}
1404
1405:where(input, select, textarea, .grid) + small {
1406 display: block;
1407 width: 100%;
1408 margin-top: calc(var(--spacing) * -0.75);
1409 margin-bottom: var(--spacing);
1410 color: var(--muted-color);
1411}
1412
1413label > :where(input, select, textarea) {
1414 margin-top: calc(var(--spacing) * 0.25);
1415}
1416
1421[type=checkbox],
1422[type=radio] {
1423 -webkit-appearance: none;
1424 -moz-appearance: none;
1425 appearance: none;
1426 width: 1.25em;
1427 height: 1.25em;
1428 margin-top: -0.125em;
1429 margin-right: 0.375em;
1430 margin-left: 0;
1431 -webkit-margin-start: 0;
1432 margin-inline-start: 0;
1433 -webkit-margin-end: 0.375em;
1434 margin-inline-end: 0.375em;
1435 border-width: var(--border-width);
1436 font-size: inherit;
1437 vertical-align: middle;
1438 cursor: pointer;
1439}
1440[type=checkbox]::-ms-check,
1441[type=radio]::-ms-check {
1442 display: none;
1443}
1444[type=checkbox]:checked, [type=checkbox]:checked:active, [type=checkbox]:checked:focus,
1445[type=radio]:checked,
1446[type=radio]:checked:active,
1447[type=radio]:checked:focus {
1448 --background-color: var(--primary);
1449 --border-color: var(--primary);
1450 background-image: var(--icon-checkbox);
1451 background-position: center;
1452 background-size: 0.75em auto;
1453 background-repeat: no-repeat;
1454}
1455[type=checkbox] ~ label,
1456[type=radio] ~ label {
1457 display: inline-block;
1458 margin-right: 0.375em;
1459 margin-bottom: 0;
1460 cursor: pointer;
1461}
1462
1463[type=checkbox]:indeterminate {
1464 --background-color: var(--primary);
1465 --border-color: var(--primary);
1466 background-image: var(--icon-minus);
1467 background-position: center;
1468 background-size: 0.75em auto;
1469 background-repeat: no-repeat;
1470}
1471
1472[type=radio] {
1473 border-radius: 50%;
1474}
1475[type=radio]:checked, [type=radio]:checked:active, [type=radio]:checked:focus {
1476 --background-color: var(--primary-inverse);
1477 border-width: 0.35em;
1478 background-image: none;
1479}
1480
1481[type=checkbox][role=switch] {
1482 --background-color: var(--switch-background-color);
1483 --border-color: var(--switch-background-color);
1484 --color: var(--switch-color);
1485 width: 2.25em;
1486 height: 1.25em;
1487 border: var(--border-width) solid var(--border-color);
1488 border-radius: 1.25em;
1489 background-color: var(--background-color);
1490 line-height: 1.25em;
1491}
1492[type=checkbox][role=switch]:focus {
1493 --background-color: var(--switch-background-color);
1494 --border-color: var(--switch-background-color);
1495}
1496[type=checkbox][role=switch]:checked {
1497 --background-color: var(--switch-checked-background-color);
1498 --border-color: var(--switch-checked-background-color);
1499}
1500[type=checkbox][role=switch]:before {
1501 display: block;
1502 width: calc(1.25em - (var(--border-width) * 2));
1503 height: 100%;
1504 border-radius: 50%;
1505 background-color: var(--color);
1506 content: "";
1507 transition: margin 0.1s ease-in-out;
1508}
1509[type=checkbox][role=switch]:checked {
1510 background-image: none;
1511}
1512[type=checkbox][role=switch]:checked::before {
1513 margin-left: calc(1.125em - var(--border-width));
1514 -webkit-margin-start: calc(1.125em - var(--border-width));
1515 margin-inline-start: calc(1.125em - var(--border-width));
1516}
1517
1518[type=checkbox][aria-invalid=false],
1519[type=checkbox]:checked[aria-invalid=false],
1520[type=radio][aria-invalid=false],
1521[type=radio]:checked[aria-invalid=false],
1522[type=checkbox][role=switch][aria-invalid=false],
1523[type=checkbox][role=switch]:checked[aria-invalid=false] {
1524 --border-color: var(--form-element-valid-border-color);
1525}
1526[type=checkbox][aria-invalid=true],
1527[type=checkbox]:checked[aria-invalid=true],
1528[type=radio][aria-invalid=true],
1529[type=radio]:checked[aria-invalid=true],
1530[type=checkbox][role=switch][aria-invalid=true],
1531[type=checkbox][role=switch]:checked[aria-invalid=true] {
1532 --border-color: var(--form-element-invalid-border-color);
1533}
1534
1539[type=color]::-webkit-color-swatch-wrapper {
1540 padding: 0;
1541}
1542[type=color]::-moz-focus-inner {
1543 padding: 0;
1544}
1545[type=color]::-webkit-color-swatch {
1546 border: 0;
1547 border-radius: calc(var(--border-radius) * 0.5);
1548}
1549[type=color]::-moz-color-swatch {
1550 border: 0;
1551 border-radius: calc(var(--border-radius) * 0.5);
1552}
1553
1554input:not([type=checkbox], [type=radio], [type=range], [type=file]):is([type=date], [type=datetime-local], [type=month], [type=time], [type=week]) {
1555 --icon-position: 0.75rem;
1556 --icon-width: 1rem;
1557 padding-right: calc(var(--icon-width) + var(--icon-position));
1558 background-image: var(--icon-date);
1559 background-position: center right var(--icon-position);
1560 background-size: var(--icon-width) auto;
1561 background-repeat: no-repeat;
1562}
1563input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=time] {
1564 background-image: var(--icon-time);
1565}
1566
1567[type=date]::-webkit-calendar-picker-indicator,
1568[type=datetime-local]::-webkit-calendar-picker-indicator,
1569[type=month]::-webkit-calendar-picker-indicator,
1570[type=time]::-webkit-calendar-picker-indicator,
1571[type=week]::-webkit-calendar-picker-indicator {
1572 width: var(--icon-width);
1573 margin-right: calc(var(--icon-width) * -1);
1574 margin-left: var(--icon-position);
1575 opacity: 0;
1576}
1577
1578[dir=rtl] :is([type=date], [type=datetime-local], [type=month], [type=time], [type=week]) {
1579 text-align: right;
1580}
1581
1582@-moz-document url-prefix() {
1583 [type=date],
1584 [type=datetime-local],
1585 [type=month],
1586 [type=time],
1587 [type=week] {
1588 padding-right: var(--form-element-spacing-horizontal) !important;
1589 background-image: none !important;
1590 }
1591}
1592[type=file] {
1593 --color: var(--muted-color);
1594 padding: calc(var(--form-element-spacing-vertical) * 0.5) 0;
1595 border: 0;
1596 border-radius: 0;
1597 background: none;
1598}
1599[type=file]::file-selector-button {
1600 --background-color: var(--secondary);
1601 --border-color: var(--secondary);
1602 --color: var(--secondary-inverse);
1603 margin-right: calc(var(--spacing) / 2);
1604 margin-left: 0;
1605 -webkit-margin-start: 0;
1606 margin-inline-start: 0;
1607 -webkit-margin-end: calc(var(--spacing) / 2);
1608 margin-inline-end: calc(var(--spacing) / 2);
1609 padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1610 border: var(--border-width) solid var(--border-color);
1611 border-radius: var(--border-radius);
1612 outline: none;
1613 background-color: var(--background-color);
1614 box-shadow: var(--box-shadow);
1615 color: var(--color);
1616 font-weight: var(--font-weight);
1617 font-size: 1rem;
1618 line-height: var(--line-height);
1619 text-align: center;
1620 cursor: pointer;
1621 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1622}
1623[type=file]::file-selector-button:is(:hover, :active, :focus) {
1624 --background-color: var(--secondary-hover);
1625 --border-color: var(--secondary-hover);
1626}
1627[type=file]::-webkit-file-upload-button {
1628 --background-color: var(--secondary);
1629 --border-color: var(--secondary);
1630 --color: var(--secondary-inverse);
1631 margin-right: calc(var(--spacing) / 2);
1632 margin-left: 0;
1633 -webkit-margin-start: 0;
1634 margin-inline-start: 0;
1635 -webkit-margin-end: calc(var(--spacing) / 2);
1636 margin-inline-end: calc(var(--spacing) / 2);
1637 padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1638 border: var(--border-width) solid var(--border-color);
1639 border-radius: var(--border-radius);
1640 outline: none;
1641 background-color: var(--background-color);
1642 box-shadow: var(--box-shadow);
1643 color: var(--color);
1644 font-weight: var(--font-weight);
1645 font-size: 1rem;
1646 line-height: var(--line-height);
1647 text-align: center;
1648 cursor: pointer;
1649 -webkit-transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1650 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1651}
1652[type=file]::-webkit-file-upload-button:is(:hover, :active, :focus) {
1653 --background-color: var(--secondary-hover);
1654 --border-color: var(--secondary-hover);
1655}
1656[type=file]::-ms-browse {
1657 --background-color: var(--secondary);
1658 --border-color: var(--secondary);
1659 --color: var(--secondary-inverse);
1660 margin-right: calc(var(--spacing) / 2);
1661 margin-left: 0;
1662 margin-inline-start: 0;
1663 margin-inline-end: calc(var(--spacing) / 2);
1664 padding: calc(var(--form-element-spacing-vertical) * 0.5) calc(var(--form-element-spacing-horizontal) * 0.5);
1665 border: var(--border-width) solid var(--border-color);
1666 border-radius: var(--border-radius);
1667 outline: none;
1668 background-color: var(--background-color);
1669 box-shadow: var(--box-shadow);
1670 color: var(--color);
1671 font-weight: var(--font-weight);
1672 font-size: 1rem;
1673 line-height: var(--line-height);
1674 text-align: center;
1675 cursor: pointer;
1676 -ms-transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1677 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
1678}
1679[type=file]::-ms-browse:is(:hover, :active, :focus) {
1680 --background-color: var(--secondary-hover);
1681 --border-color: var(--secondary-hover);
1682}
1683
1684[type=range] {
1685 -webkit-appearance: none;
1686 -moz-appearance: none;
1687 appearance: none;
1688 width: 100%;
1689 height: 1.25rem;
1690 background: none;
1691}
1692[type=range]::-webkit-slider-runnable-track {
1693 width: 100%;
1694 height: 0.25rem;
1695 border-radius: var(--border-radius);
1696 background-color: var(--range-border-color);
1697 -webkit-transition: background-color var(--transition), box-shadow var(--transition);
1698 transition: background-color var(--transition), box-shadow var(--transition);
1699}
1700[type=range]::-moz-range-track {
1701 width: 100%;
1702 height: 0.25rem;
1703 border-radius: var(--border-radius);
1704 background-color: var(--range-border-color);
1705 -moz-transition: background-color var(--transition), box-shadow var(--transition);
1706 transition: background-color var(--transition), box-shadow var(--transition);
1707}
1708[type=range]::-ms-track {
1709 width: 100%;
1710 height: 0.25rem;
1711 border-radius: var(--border-radius);
1712 background-color: var(--range-border-color);
1713 -ms-transition: background-color var(--transition), box-shadow var(--transition);
1714 transition: background-color var(--transition), box-shadow var(--transition);
1715}
1716[type=range]::-webkit-slider-thumb {
1717 -webkit-appearance: none;
1718 width: 1.25rem;
1719 height: 1.25rem;
1720 margin-top: -0.5rem;
1721 border: 2px solid var(--range-thumb-border-color);
1722 border-radius: 50%;
1723 background-color: var(--range-thumb-color);
1724 cursor: pointer;
1725 -webkit-transition: background-color var(--transition), transform var(--transition);
1726 transition: background-color var(--transition), transform var(--transition);
1727}
1728[type=range]::-moz-range-thumb {
1729 -webkit-appearance: none;
1730 width: 1.25rem;
1731 height: 1.25rem;
1732 margin-top: -0.5rem;
1733 border: 2px solid var(--range-thumb-border-color);
1734 border-radius: 50%;
1735 background-color: var(--range-thumb-color);
1736 cursor: pointer;
1737 -moz-transition: background-color var(--transition), transform var(--transition);
1738 transition: background-color var(--transition), transform var(--transition);
1739}
1740[type=range]::-ms-thumb {
1741 -webkit-appearance: none;
1742 width: 1.25rem;
1743 height: 1.25rem;
1744 margin-top: -0.5rem;
1745 border: 2px solid var(--range-thumb-border-color);
1746 border-radius: 50%;
1747 background-color: var(--range-thumb-color);
1748 cursor: pointer;
1749 -ms-transition: background-color var(--transition), transform var(--transition);
1750 transition: background-color var(--transition), transform var(--transition);
1751}
1752[type=range]:hover, [type=range]:focus {
1753 --range-border-color: var(--range-active-border-color);
1754 --range-thumb-color: var(--range-thumb-hover-color);
1755}
1756[type=range]:active {
1757 --range-thumb-color: var(--range-thumb-active-color);
1758}
1759[type=range]:active::-webkit-slider-thumb {
1760 transform: scale(1.25);
1761}
1762[type=range]:active::-moz-range-thumb {
1763 transform: scale(1.25);
1764}
1765[type=range]:active::-ms-thumb {
1766 transform: scale(1.25);
1767}
1768
1769input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search] {
1770 -webkit-padding-start: calc(var(--form-element-spacing-horizontal) + 1.75rem);
1771 padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem);
1772 border-radius: 5rem;
1773 background-image: var(--icon-search);
1774 background-position: center left 1.125rem;
1775 background-size: 1rem auto;
1776 background-repeat: no-repeat;
1777}
1778input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid] {
1779 -webkit-padding-start: calc(var(--form-element-spacing-horizontal) + 1.75rem) !important;
1780 padding-inline-start: calc(var(--form-element-spacing-horizontal) + 1.75rem) !important;
1781 background-position: center left 1.125rem, center right 0.75rem;
1782}
1783input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid=false] {
1784 background-image: var(--icon-search), var(--icon-valid);
1785}
1786input:not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid=true] {
1787 background-image: var(--icon-search), var(--icon-invalid);
1788}
1789
1790[type=search]::-webkit-search-cancel-button {
1791 -webkit-appearance: none;
1792 display: none;
1793}
1794
1795[dir=rtl] :where(input):not([type=checkbox], [type=radio], [type=range], [type=file])[type=search] {
1796 background-position: center right 1.125rem;
1797}
1798[dir=rtl] :where(input):not([type=checkbox], [type=radio], [type=range], [type=file])[type=search][aria-invalid] {
1799 background-position: center right 1.125rem, center left 0.75rem;
1800}
1801
1805:where(table) {
1806 width: 100%;
1807 border-collapse: collapse;
1808 border-spacing: 0;
1809 text-indent: 0;
1810}
1811
1812:where(table caption){
1813 text-align: left;
1814 text-align: start;
1815}
1816
1817
1818th,
1819td {
1820 padding: calc(var(--spacing) / 2) var(--spacing);
1821 border-bottom: var(--border-width) solid var(--table-border-color);
1822 color: var(--color);
1823 font-weight: var(--font-weight);
1824 font-size: var(--font-size);
1825 text-align: left;
1826 text-align: start;
1827}
1828
1829tfoot th,
1830tfoot td {
1831 border-top: var(--border-width) solid var(--table-border-color);
1832 border-bottom: 0;
1833}
1834
1835
1836
1837table[role=grid] tbody tr:nth-child(odd) {
1838 background-color: var(--table-row-stripped-background-color);
1839}
1840
1841
1842
1843/* Search row of table **/
1844table tr[role="search-row"]{
1845 --spacing:3px;
1846}
1847
1848thead tr[role="search-row"] th,
1849thead tr[role="search-row"] td,
1850tfoot tr[role="search-row"] th,
1851tfoot tr[role="search-row"] td {
1852 --border-width:1px;
1853}
1854
1855:where(tr[role="search-row"]) input,
1856:where(tr[role="search-row"]) select,
1857:where(tr[role="search-row"]) textarea {
1858 --border-color:var(--table-border-color);
1859}
1860
1861
1862/* col ordering */
1863[table-order]{
1864 position: relative;
1865}
1866[table-order]:after, [table-order=asc]:after{
1867 --icon-size: calc(var(--spacing) / 2);
1868 content: "";
1869 width: var(--icon-size);
1870 height: var(--icon-size);
1871 display: block;
1872 position: absolute;
1873 bottom: calc(50% - var(--icon-size));
1874 left: 0 ;
1875 background-image: var(--icon-caret);
1876 background-position: center center;
1877 background-size: calc(var(--icon-size)) auto;
1878 background-repeat: no-repeat;
1879 transform: rotateX(0);
1880 opacity: 0.5;
1881}
1882
1883[table-order=desc]:after{
1884 transform: rotateX(180deg);
1885}
1886
1887@media screen and (max-width: 600px) {
1888 table[responsive="collapse"] {
1889 border: 0;
1890 }
1891
1892 table[responsive="collapse"] caption {
1893 font-size: 1.3em;
1894 }
1895
1896 table[responsive="collapse"] thead tr{
1897 border: none;
1898 clip: rect(0 0 0 0);
1899 height: 1px;
1900 margin: -1px;
1901 overflow: hidden;
1902 padding: 0;
1903 position: absolute;
1904 width: 1px;
1905 }
1906
1907 table[responsive="collapse"] tr {
1908 border: 1px solid var(--table-border-color);
1909 border-bottom: 3px solid var(--table-border-color);
1910 display: block;
1911 margin-bottom: .625em;
1912 }
1913
1914 table[responsive="collapse"] td {
1915 border-bottom: 1px solid var(--table-border-color);
1916 display: block;
1917 font-size: .8em;
1918 text-align: right;
1919 }
1920
1921 table[responsive="collapse"] td::before {
1922 /*
1923 * aria-label has no advantage, it won't be read inside a table
1924 content: attr(aria-label);
1925 */
1926 content: attr(data-label);
1927 float: left;
1928 font-weight: bold;
1929 text-transform: uppercase;
1930 }
1931
1932 table[responsive="collapse"] td:last-child {
1933 border-bottom: 0;
1934 }
1935}
1936
1937
1938
1939
1943pre,
1944code,
1945kbd,
1946samp {
1947 font-size: 0.875em;
1948 font-family: var(--font-family);
1949}
1950
1951pre {
1952 -ms-overflow-style: scrollbar;
1953 overflow: auto;
1954}
1955
1956pre,
1957code,
1958kbd {
1959 border-radius: var(--border-radius);
1960 background: var(--code-background-color);
1961 color: var(--code-color);
1962 font-weight: var(--font-weight);
1963 line-height: initial;
1964}
1965
1966code,
1967kbd {
1968 display: inline-block;
1969 padding: 0.375rem 0.5rem;
1970}
1971
1972pre {
1973 display: block;
1974 margin-bottom: var(--spacing);
1975 overflow-x: auto;
1976}
1977pre > code {
1978 display: block;
1979 padding: var(--spacing);
1980 background: none;
1981 font-size: 14px;
1982 line-height: var(--line-height);
1983}
1984
1985code b {
1986 color: var(--code-tag-color);
1987 font-weight: var(--font-weight);
1988}
1989code i {
1990 color: var(--code-property-color);
1991 font-style: normal;
1992}
1993code u {
1994 color: var(--code-value-color);
1995 text-decoration: none;
1996}
1997code em {
1998 color: var(--code-comment-color);
1999 font-style: normal;
2000}
2001
2002kbd {
2003 background-color: var(--code-kbd-background-color);
2004 color: var(--code-kbd-color);
2005 vertical-align: baseline;
2006}
2007
2011hr {
2012 height: 0;
2013 border: 0;
2014 border-top: 1px solid var(--muted-border-color);
2015 color: inherit;
2016}
2017
2018[hidden],
2019template {
2020 display: none !important;
2021}
2022
2023canvas {
2024 display: inline-block;
2025}
2026
2030details {
2031 display: block;
2032 margin-bottom: var(--spacing);
2033 padding-bottom: var(--spacing);
2034 border-bottom: var(--border-width) solid var(--accordion-border-color);
2035}
2036details summary {
2037 line-height: 1rem;
2038 list-style-type: none;
2039 cursor: pointer;
2040 transition: color var(--transition);
2041}
2042details summary:not([role]) {
2043 color: var(--accordion-close-summary-color);
2044}
2045details summary::-webkit-details-marker {
2046 display: none;
2047}
2048details summary::marker {
2049 display: none;
2050}
2051details summary::-moz-list-bullet {
2052 list-style-type: none;
2053}
2054details summary::after {
2055 display: block;
2056 width: 1rem;
2057 height: 1rem;
2058 -webkit-margin-start: calc(var(--spacing, 1rem) * 0.5);
2059 margin-inline-start: calc(var(--spacing, 1rem) * 0.5);
2060 float: right;
2061 transform: rotate(-90deg);
2062 background-image: var(--icon-chevron);
2063 background-position: right center;
2064 background-size: 1rem auto;
2065 background-repeat: no-repeat;
2066 content: "";
2067 transition: transform var(--transition);
2068}
2069details summary:focus {
2070 outline: none;
2071}
2072details summary:focus:not([role=button]) {
2073 color: var(--accordion-active-summary-color);
2074}
2075details summary[role=button] {
2076 width: 100%;
2077 text-align: left;
2078}
2079details summary[role=button]::after {
2080 height: calc(1rem * var(--line-height, 1.5));
2081 background-image: var(--icon-chevron-button);
2082}
2083details summary[role=button]:not(.outline).contrast::after {
2084 background-image: var(--icon-chevron-button-inverse);
2085}
2086details[open] > summary {
2087 margin-bottom: calc(var(--spacing));
2088}
2089details[open] > summary:not([role]):not(:focus) {
2090 color: var(--accordion-open-summary-color);
2091}
2092details[open] > summary::after {
2093 transform: rotate(0);
2094}
2095
2096[dir=rtl] details summary {
2097 text-align: right;
2098}
2099[dir=rtl] details summary::after {
2100 float: left;
2101 background-position: left center;
2102}
2103
2104
2105
2106details.dropdown {
2107 position: relative;
2108 border-bottom: none
2109}
2110
2111details.dropdown>a:after,details.dropdown>button:after,details.dropdown>summary:after {
2112 display: block;
2113 width: 1rem;
2114 height: calc(1rem * var(--line-height,1.5));
2115 margin-inline-start:.25rem;float: right;
2116 transform: rotate(0) translate(.2rem);
2117 background-image: var(--icon-chevron);
2118 background-position: right center;
2119 background-size: 1rem auto;
2120 background-repeat: no-repeat;
2121 content: ""
2122}
2123
2124nav details.dropdown {
2125 margin-bottom: 0
2126}
2127
2128details.dropdown>summary:not([role]) {
2129 height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
2130 padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
2131 border: var(--border-width) solid var(--form-element-border-color);
2132 border-radius: var(--border-radius);
2133 background-color: var(--form-element-background-color);
2134 color: var(--form-element-placeholder-color);
2135 line-height: inherit;
2136 cursor: pointer;
2137 -webkit-user-select: none;
2138 -moz-user-select: none;
2139 user-select: none;
2140 transition: background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition)
2141}
2142
2143details.dropdown>summary:not([role]):active,details.dropdown>summary:not([role]):focus {
2144 border-color: var(--form-element-active-border-color);
2145 background-color: var(--form-element-active-background-color)
2146}
2147
2148details.dropdown>summary:not([role]):focus {
2149 box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color)
2150}
2151
2152details.dropdown>summary:not([role]):focus-visible {
2153 outline: 0
2154}
2155
2156details.dropdown>summary:not([role])[aria-invalid=false] {
2157 --form-element-border-color: var(--form-element-valid-border-color);
2158 --form-element-active-border-color: var(--form-element-valid-focus-color);
2159 --form-element-focus-color: var(--form-element-valid-focus-color)
2160}
2161
2162details.dropdown>summary:not([role])[aria-invalid=true] {
2163 --form-element-border-color: var(--form-element-invalid-border-color);
2164 --form-element-active-border-color: var(--form-element-invalid-focus-color);
2165 --form-element-focus-color: var(--form-element-invalid-focus-color)
2166}
2167
2168nav details.dropdown {
2169 display: inline;
2170 margin: calc(var(--nav-element-spacing-vertical) * -1) 0
2171}
2172
2173nav details.dropdown>summary:after {
2174 transform: rotate(0) translate(0)
2175}
2176
2177nav details.dropdown>summary:not([role]) {
2178 height: calc(1rem * var(--line-height) + var(--nav-link-spacing-vertical) * 2);
2179 padding: calc(var(--nav-link-spacing-vertical) - var(--border-width) * 2) var(--nav-link-spacing-horizontal)
2180}
2181
2182nav details.dropdown>summary:not([role]):focus-visible {
2183 box-shadow: 0 0 0 var(--outline-width) var(--primary-focus)
2184}
2185
2186details.dropdown>summary+ul {
2187 display: flex;
2188 z-index: 99;
2189 position: absolute;
2190 left: 0;
2191 flex-direction: column;
2192 width: 100%;
2193 min-width: -moz-fit-content;
2194 min-width: fit-content;
2195 margin: 0;
2196 margin-top: var(--outline-width);
2197 padding: 0;
2198 border: var(--border-width) solid var(--dropdown-border-color);
2199 border-radius: var(--border-radius);
2200 background-color: var(--dropdown-background-color);
2201 box-shadow: var(--dropdown-box-shadow);
2202 color: var(--dropdown-color);
2203 white-space: nowrap;
2204 opacity: 0;
2205 transition: opacity var(--transition),transform 0s ease-in-out 1s
2206}
2207
2208details.dropdown>summary+ul[dir=rtl] {
2209 right: 0;
2210 left: auto
2211}
2212
2213:where(details.dropdown>summary+ul li) {
2214 width: 100%;
2215 margin-bottom: 0;
2216 padding: calc(var(--form-element-spacing-vertical) * .5) var(--form-element-spacing-horizontal);
2217 list-style: none
2218}
2219
2220details.dropdown>summary+ul li:first-of-type {
2221 margin-top: calc(var(--form-element-spacing-vertical) * .5)
2222}
2223
2224details.dropdown>summary+ul li:last-of-type {
2225 margin-bottom: calc(var(--form-element-spacing-vertical) * .5)
2226}
2227
2228details.dropdown>summary+ul li a {
2229 display: block;
2230 margin: calc(var(--form-element-spacing-vertical) * -.5) calc(var(--form-element-spacing-horizontal) * -1);
2231 padding: calc(var(--form-element-spacing-vertical) * .5) var(--form-element-spacing-horizontal);
2232 overflow: hidden;
2233 border-radius: 0;
2234 color: var(--dropdown-color);
2235 text-decoration: none;
2236 text-overflow: ellipsis
2237}
2238
2239details.dropdown>summary+ul li a:active,details.dropdown>summary+ul li a:focus,details.dropdown>summary+ul li a:focus-visible,details.dropdown>summary+ul li a:hover,details.dropdown>summary+ul li a[aria-current]:not([aria-current=false]) {
2240 background-color: var(--dropdown-hover-background-color)
2241}
2242
2243details.dropdown>summary+ul li label {
2244 width: 100%
2245}
2246
2247details.dropdown>summary+ul li:has(label):hover {
2248 background-color: var(--dropdown-hover-background-color)
2249}
2250
2251details.dropdown[open]>summary {
2252 margin-bottom: 0
2253}
2254
2255details.dropdown[open]>summary+ul {
2256 transform: scaleY(1);
2257 opacity: 1;
2258 transition: opacity var(--transition),transform 0s ease-in-out 0s
2259}
2260
2261details.dropdown[open]>summary:before {
2262 display: block;
2263 z-index: 1;
2264 position: fixed;
2265 width: 100vw;
2266 height: 100vh;
2267 inset: 0;
2268 background: 0 0;
2269 content: "";
2270 cursor: default
2271}
2272
2273label>details.dropdown {
2274 margin-top: calc(var(--spacing) * .25)
2275}
2279article {
2280 margin: var(--block-spacing-vertical) 0;
2281 padding: var(--block-spacing-vertical) var(--block-spacing-horizontal);
2282 border-radius: var(--border-radius);
2283 background: var(--card-background-color);
2284 box-shadow: var(--card-box-shadow);
2285}
2286article > header,
2287article > footer {
2288 margin-right: calc(var(--block-spacing-horizontal) * -1);
2289 margin-left: calc(var(--block-spacing-horizontal) * -1);
2290 padding: calc(var(--block-spacing-vertical) * 0.66) var(--block-spacing-horizontal);
2291 background-color: var(--card-sectionning-background-color);
2292}
2293article > header {
2294 margin-top: calc(var(--block-spacing-vertical) * -1);
2295 margin-bottom: var(--block-spacing-vertical);
2296 border-bottom: var(--border-width) solid var(--card-border-color);
2297 border-top-right-radius: var(--border-radius);
2298 border-top-left-radius: var(--border-radius);
2299}
2300article > footer {
2301 margin-top: var(--block-spacing-vertical);
2302 margin-bottom: calc(var(--block-spacing-vertical) * -1);
2303 border-top: var(--border-width) solid var(--card-border-color);
2304 border-bottom-right-radius: var(--border-radius);
2305 border-bottom-left-radius: var(--border-radius);
2306}
2307
2311:root {
2312 --scrollbar-width: 0px;
2313}
2314
2315dialog {
2316 display: flex;
2317 z-index: 999;
2318 position: fixed;
2319 top: 0;
2320 right: 0;
2321 bottom: 0;
2322 left: 0;
2323 align-items: center;
2324 justify-content: center;
2325 width: inherit;
2326 min-width: 100%;
2327 height: inherit;
2328 min-height: 100%;
2329 padding: var(--spacing);
2330 border: 0;
2331 -webkit-backdrop-filter: var(--modal-overlay-backdrop-filter);
2332 backdrop-filter: var(--modal-overlay-backdrop-filter);
2333 background-color: var(--modal-overlay-background-color);
2334 color: var(--color);
2335}
2336dialog article {
2337 max-height: calc(100vh - var(--spacing) * 2);
2338 overflow: auto;
2339}
2340@media (min-width: 576px) {
2341 dialog article {
2342 max-width: 510px;
2343 }
2344}
2345@media (min-width: 768px) {
2346 dialog article {
2347 max-width: 700px;
2348 }
2349}
2350dialog article > header,
2351dialog article > footer {
2352 padding: calc(var(--block-spacing-vertical) * 0.5) var(--block-spacing-horizontal);
2353}
2354dialog article > header .close {
2355 margin: 0;
2356 margin-left: var(--spacing);
2357 float: right;
2358}
2359dialog article > footer {
2360 text-align: right;
2361}
2362dialog article > footer [role=button] {
2363 margin-bottom: 0;
2364}
2365dialog article > footer [role=button]:not(:first-of-type) {
2366 margin-left: calc(var(--spacing) * 0.5);
2367}
2368dialog article p:last-of-type {
2369 margin: 0;
2370}
2371dialog article .close {
2372 display: block;
2373 width: 1rem;
2374 height: 1rem;
2375 margin-top: calc(var(--block-spacing-vertical) * -0.5);
2376 margin-bottom: var(--typography-spacing-vertical);
2377 margin-left: auto;
2378 background-image: var(--icon-close);
2379 background-position: center;
2380 background-size: auto 1rem;
2381 background-repeat: no-repeat;
2382 opacity: 0.5;
2383 transition: opacity var(--transition);
2384}
2385dialog article .close:is([aria-current], :hover, :active, :focus) {
2386 opacity: 1;
2387}
2388dialog:not([open]), dialog[open=false] {
2389 display: none;
2390}
2391
2392.modal-is-open {
2393 padding-right: var(--scrollbar-width, 0px);
2394 overflow: hidden;
2395 pointer-events: none;
2396 touch-action: none;
2397}
2398.modal-is-open dialog {
2399 pointer-events: auto;
2400}
2401
2402:where(.modal-is-opening, .modal-is-closing) dialog,
2403:where(.modal-is-opening, .modal-is-closing) dialog > article {
2404 animation-duration: 0.2s;
2405 animation-timing-function: ease-in-out;
2406 animation-fill-mode: both;
2407}
2408:where(.modal-is-opening, .modal-is-closing) dialog {
2409 animation-duration: 0.8s;
2410 animation-name: modal-overlay;
2411}
2412:where(.modal-is-opening, .modal-is-closing) dialog > article {
2413 animation-delay: 0.2s;
2414 animation-name: modal;
2415}
2416
2417.modal-is-closing dialog,
2418.modal-is-closing dialog > article {
2419 animation-delay: 0s;
2420 animation-direction: reverse;
2421}
2422
2423@keyframes modal-overlay {
2424 from {
2425 -webkit-backdrop-filter: none;
2426 backdrop-filter: none;
2427 background-color: transparent;
2428 }
2429}
2430@keyframes modal {
2431 from {
2432 transform: translateY(-100%);
2433 opacity: 0;
2434 }
2435}
2439:where(nav li)::before {
2440 float: left;
2441 content: "​";
2442}
2443
2444nav,
2445nav > ul {
2446 display: flex;
2447 flex-wrap: wrap;
2448}
2449
2450nav {
2451 justify-content: space-between;
2452}
2453nav ol,
2454nav ul {
2455 align-items: center;
2456 margin-bottom: 0;
2457 padding: 0;
2458 list-style: none;
2459}
2460nav ol:first-of-type,
2461nav ul:first-of-type {
2462 margin-left: calc(var(--nav-element-spacing-horizontal) * -1);
2463}
2464nav ol:last-of-type,
2465nav ul:last-of-type {
2466 margin-right: calc(var(--nav-element-spacing-horizontal) * -1);
2467}
2468nav li {
2469 display: inline-block;
2470 margin: 0;
2471 padding: var(--nav-element-spacing-vertical) var(--nav-element-spacing-horizontal);
2472}
2473nav li > * {
2474 --spacing: 0;
2475}
2476nav :where(a, [role=link]) {
2477 display: inline-block;
2478 margin: calc(var(--nav-link-spacing-vertical) * -1) calc(var(--nav-link-spacing-horizontal) * -1);
2479 padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2480 border-radius: var(--border-radius);
2481 text-decoration: none;
2482}
2483nav :where(a, [role=link]):is([aria-current], :hover, :active, :focus) {
2484 text-decoration: none;
2485}
2486nav[aria-label=breadcrumb] {
2487 align-items: center;
2488 justify-content: start;
2489}
2490nav[aria-label=breadcrumb] ul li:not(:first-child) {
2491 -webkit-margin-start: var(--nav-link-spacing-horizontal);
2492 margin-inline-start: var(--nav-link-spacing-horizontal);
2493}
2494nav[aria-label=breadcrumb] ul li:not(:last-child) ::after {
2495 position: absolute;
2496 width: calc(var(--nav-link-spacing-horizontal) * 2);
2497 -webkit-margin-start: calc(var(--nav-link-spacing-horizontal) / 2);
2498 margin-inline-start: calc(var(--nav-link-spacing-horizontal) / 2);
2499 content: "/";
2500 color: var(--muted-color);
2501 text-align: center;
2502}
2503nav[aria-label=breadcrumb] a[aria-current] {
2504 background-color: transparent;
2505 color: inherit;
2506 text-decoration: none;
2507 pointer-events: none;
2508}
2509nav [role=button] {
2510 margin-right: inherit;
2511 margin-left: inherit;
2512 padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2513}
2514
2515nav li.brand img {
2516 max-height: calc(var(--nav-element-spacing-vertical) + var(--nav-element-spacing-vertical) + var(--font-size));
2517}
2518
2519nav li.brand {
2520 padding-top: 0;
2521 padding-bottom: 0;
2522}
2523
2524aside nav,
2525aside ol,
2526aside ul,
2527aside li {
2528 display: block;
2529}
2530aside li {
2531 padding: calc(var(--nav-element-spacing-vertical) * 0.5) var(--nav-element-spacing-horizontal);
2532}
2533aside li a {
2534 display: block;
2535}
2536aside li [role=button] {
2537 margin: inherit;
2538}
2539
2540[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after {
2541 content: "\\";
2542}
2543
2547progress {
2548 display: inline-block;
2549 vertical-align: baseline;
2550}
2551
2552progress {
2553 -webkit-appearance: none;
2554 -moz-appearance: none;
2555 display: inline-block;
2556 appearance: none;
2557 width: 100%;
2558 height: 0.5rem;
2559 margin-bottom: calc(var(--spacing) * 0.5);
2560 overflow: hidden;
2561 border: 0;
2562 border-radius: var(--border-radius);
2563 background-color: var(--progress-background-color);
2564 color: var(--progress-color);
2565}
2566progress::-webkit-progress-bar {
2567 border-radius: var(--border-radius);
2568 background: none;
2569}
2570progress[value]::-webkit-progress-value {
2571 background-color: var(--progress-color);
2572}
2573progress::-moz-progress-bar {
2574 background-color: var(--progress-color);
2575}
2576@media (prefers-reduced-motion: no-preference) {
2577 progress:indeterminate {
2578 background: var(--progress-background-color) linear-gradient(to right, var(--progress-color) 30%, var(--progress-background-color) 30%) top left/150% 150% no-repeat;
2579 animation: progress-indeterminate 1s linear infinite;
2580 }
2581 progress:indeterminate[value]::-webkit-progress-value {
2582 background-color: transparent;
2583 }
2584 progress:indeterminate::-moz-progress-bar {
2585 background-color: transparent;
2586 }
2587}
2588
2589@media (prefers-reduced-motion: no-preference) {
2590 [dir=rtl] progress:indeterminate {
2591 animation-direction: reverse;
2592 }
2593}
2594
2595@keyframes progress-indeterminate {
2596 0% {
2597 background-position: 200% 0;
2598 }
2599 100% {
2600 background-position: -200% 0;
2601 }
2602}
2606details[role=list],
2607li[role=list] {
2608 position: relative;
2609}
2610
2611details[role=list] summary + ul,
2612li[role=list] > ul {
2613 display: flex;
2614 z-index: 99;
2615 position: absolute;
2616 top: auto;
2617 right: 0;
2618 left: 0;
2619 flex-direction: column;
2620 margin: 0;
2621 padding: 0;
2622 border: var(--border-width) solid var(--dropdown-border-color);
2623 border-radius: var(--border-radius);
2624 border-top-right-radius: 0;
2625 border-top-left-radius: 0;
2626 background-color: var(--dropdown-background-color);
2627 box-shadow: var(--card-box-shadow);
2628 color: var(--dropdown-color);
2629 white-space: nowrap;
2630}
2631details[role=list] summary + ul li,
2632li[role=list] > ul li {
2633 width: 100%;
2634 margin-bottom: 0;
2635 padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
2636 list-style: none;
2637}
2638details[role=list] summary + ul li:first-of-type,
2639li[role=list] > ul li:first-of-type {
2640 margin-top: calc(var(--form-element-spacing-vertical) * 0.5);
2641}
2642details[role=list] summary + ul li:last-of-type,
2643li[role=list] > ul li:last-of-type {
2644 margin-bottom: calc(var(--form-element-spacing-vertical) * 0.5);
2645}
2646details[role=list] summary + ul li a,
2647li[role=list] > ul li a {
2648 display: block;
2649 margin: calc(var(--form-element-spacing-vertical) * -0.5) calc(var(--form-element-spacing-horizontal) * -1);
2650 padding: calc(var(--form-element-spacing-vertical) * 0.5) var(--form-element-spacing-horizontal);
2651 overflow: hidden;
2652 color: var(--dropdown-color);
2653 text-decoration: none;
2654 text-overflow: ellipsis;
2655}
2656details[role=list] summary + ul li a:hover,
2657li[role=list] > ul li a:hover {
2658 background-color: var(--dropdown-hover-background-color);
2659}
2660
2661details[role=list] summary::after,
2662li[role=list] > a::after {
2663 display: block;
2664 width: 1rem;
2665 height: calc(1rem * var(--line-height, 1.5));
2666 -webkit-margin-start: 0.5rem;
2667 margin-inline-start: 0.5rem;
2668 float: right;
2669 transform: rotate(0deg);
2670 background-position: right center;
2671 background-size: 1rem auto;
2672 background-repeat: no-repeat;
2673 content: "";
2674}
2675
2676details[role=list] {
2677 padding: 0;
2678 border-bottom: none;
2679}
2680details[role=list] summary {
2681 margin-bottom: 0;
2682}
2683details[role=list] summary:not([role]) {
2684 height: calc(1rem * var(--line-height) + var(--form-element-spacing-vertical) * 2 + var(--border-width) * 2);
2685 padding: var(--form-element-spacing-vertical) var(--form-element-spacing-horizontal);
2686 border: var(--border-width) solid var(--form-element-border-color);
2687 border-radius: var(--border-radius);
2688 background-color: var(--form-element-background-color);
2689 color: var(--form-element-placeholder-color);
2690 line-height: inherit;
2691 cursor: pointer;
2692 transition: background-color var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition);
2693}
2694details[role=list] summary:not([role]):active, details[role=list] summary:not([role]):focus {
2695 border-color: var(--form-element-active-border-color);
2696 background-color: var(--form-element-active-background-color);
2697}
2698details[role=list] summary:not([role]):focus {
2699 box-shadow: 0 0 0 var(--outline-width) var(--form-element-focus-color);
2700}
2701details[role=list][open] summary {
2702 border-bottom-right-radius: 0;
2703 border-bottom-left-radius: 0;
2704}
2705details[role=list][open] summary::before {
2706 display: block;
2707 z-index: 1;
2708 position: fixed;
2709 top: 0;
2710 right: 0;
2711 bottom: 0;
2712 left: 0;
2713 background: none;
2714 content: "";
2715 cursor: default;
2716}
2717
2718nav details[role=list] summary,
2719nav li[role=list] a {
2720 display: flex;
2721 direction: ltr;
2722}
2723
2724nav details[role=list] summary + ul,
2725nav li[role=list] > ul {
2726 min-width: -moz-fit-content;
2727 min-width: fit-content;
2728 border-radius: var(--border-radius);
2729}
2730nav details[role=list] summary + ul li a,
2731nav li[role=list] > ul li a {
2732 border-radius: 0;
2733}
2734
2735nav details[role=list] summary,
2736nav details[role=list] summary:not([role]) {
2737 height: auto;
2738 padding: var(--nav-link-spacing-vertical) var(--nav-link-spacing-horizontal);
2739}
2740nav details[role=list][open] summary {
2741 border-radius: var(--border-radius);
2742}
2743nav details[role=list] summary + ul {
2744 margin-top: var(--outline-width);
2745 -webkit-margin-start: 0;
2746 margin-inline-start: 0;
2747}
2748nav details[role=list] summary[role=link] {
2749 margin-bottom: calc(var(--nav-link-spacing-vertical) * -1);
2750 line-height: var(--line-height);
2751}
2752nav details[role=list] summary[role=link] + ul {
2753 margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
2754 -webkit-margin-start: calc(var(--nav-link-spacing-horizontal) * -1);
2755 margin-inline-start: calc(var(--nav-link-spacing-horizontal) * -1);
2756}
2757
2758li[role=list]:hover > ul,
2759li[role=list] a:active ~ ul,
2760li[role=list] a:focus ~ ul {
2761 display: flex;
2762}
2763li[role=list] > ul {
2764 display: none;
2765 margin-top: calc(var(--nav-link-spacing-vertical) + var(--outline-width));
2766 -webkit-margin-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
2767 margin-inline-start: calc(var(--nav-element-spacing-horizontal) - var(--nav-link-spacing-horizontal));
2768}
2769li[role=list] > a::after {
2770 background-image: var(--icon-chevron);
2771}
2772
2773label > details[role=list] {
2774 margin-top: calc(var(--spacing) * 0.25);
2775 margin-bottom: var(--spacing);
2776}
2777
2781[aria-busy=true] {
2782 cursor: progress;
2783}
2784
2785[aria-busy=true]:not(input, select, textarea, html)::before {
2786 display: inline-block;
2787 width: 1em;
2788 height: 1em;
2789 border: 0.1875em solid currentColor;
2790 border-radius: 1em;
2791 border-right-color: transparent;
2792 content: "";
2793 vertical-align: text-bottom;
2794 vertical-align: -0.125em;
2795 animation: spinner 0.75s linear infinite;
2796 opacity: var(--loading-spinner-opacity);
2797}
2798[aria-busy=true]:not(input, select, textarea, html):not(:empty)::before {
2799 margin-right: calc(var(--spacing) * 0.5);
2800 margin-left: 0;
2801 -webkit-margin-start: 0;
2802 margin-inline-start: 0;
2803 -webkit-margin-end: calc(var(--spacing) * 0.5);
2804 margin-inline-end: calc(var(--spacing) * 0.5);
2805}
2806[aria-busy=true]:not(input, select, textarea, html):empty {
2807 text-align: center;
2808}
2809
2810button[aria-busy=true],
2811input[type=submit][aria-busy=true],
2812input[type=button][aria-busy=true],
2813input[type=reset][aria-busy=true],
2814a[aria-busy=true] {
2815 pointer-events: none;
2816}
2817
2818@keyframes spinner {
2819 to {
2820 transform: rotate(360deg);
2821 }
2822}
2826[data-tooltip] {
2827 position: relative;
2828}
2829[data-tooltip]:not(a, button, input) {
2830 border-bottom: 1px dotted;
2831 text-decoration: none;
2832 cursor: help;
2833}
2834[data-tooltip][data-placement=top]::before, [data-tooltip][data-placement=top]::after, [data-tooltip]::before, [data-tooltip]::after {
2835 display: block;
2836 z-index: 99;
2837 position: absolute;
2838 bottom: 100%;
2839 left: 50%;
2840 padding: 0.25rem 0.5rem;
2841 overflow: hidden;
2842 transform: translate(-50%, -0.25rem);
2843 border-radius: var(--border-radius);
2844 background: var(--tooltip-background-color);
2845 content: attr(data-tooltip);
2846 color: var(--tooltip-color);
2847 font-style: normal;
2848 font-weight: var(--font-weight);
2849 font-size: 0.875rem;
2850 text-decoration: none;
2851 text-overflow: ellipsis;
2852 white-space: nowrap;
2853 opacity: 0;
2854 pointer-events: none;
2855}
2856[data-tooltip][data-placement=top]::after, [data-tooltip]::after {
2857 padding: 0;
2858 transform: translate(-50%, 0rem);
2859 border-top: 0.3rem solid;
2860 border-right: 0.3rem solid transparent;
2861 border-left: 0.3rem solid transparent;
2862 border-radius: 0;
2863 background-color: transparent;
2864 content: "";
2865 color: var(--tooltip-background-color);
2866}
2867[data-tooltip][data-placement=bottom]::before, [data-tooltip][data-placement=bottom]::after {
2868 top: 100%;
2869 bottom: auto;
2870 transform: translate(-50%, 0.25rem);
2871}
2872[data-tooltip][data-placement=bottom]:after {
2873 transform: translate(-50%, -0.3rem);
2874 border: 0.3rem solid transparent;
2875 border-bottom: 0.3rem solid;
2876}
2877[data-tooltip][data-placement=left]::before, [data-tooltip][data-placement=left]::after {
2878 top: 50%;
2879 right: 100%;
2880 bottom: auto;
2881 left: auto;
2882 transform: translate(-0.25rem, -50%);
2883}
2884[data-tooltip][data-placement=left]:after {
2885 transform: translate(0.3rem, -50%);
2886 border: 0.3rem solid transparent;
2887 border-left: 0.3rem solid;
2888}
2889[data-tooltip][data-placement=right]::before, [data-tooltip][data-placement=right]::after {
2890 top: 50%;
2891 right: auto;
2892 bottom: auto;
2893 left: 100%;
2894 transform: translate(0.25rem, -50%);
2895}
2896[data-tooltip][data-placement=right]:after {
2897 transform: translate(-0.3rem, -50%);
2898 border: 0.3rem solid transparent;
2899 border-right: 0.3rem solid;
2900}
2901[data-tooltip]:focus::before, [data-tooltip]:focus::after, [data-tooltip]:hover::before, [data-tooltip]:hover::after {
2902 opacity: 1;
2903}
2904@media (hover: hover) and (pointer: fine) {
2905 [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 {
2906 animation-duration: 0.2s;
2907 animation-name: tooltip-slide-top;
2908 }
2909 [data-tooltip][data-placement=bottom]:focus::after, [data-tooltip][data-placement=bottom]:hover [data-tooltip]:focus::after, [data-tooltip]:hover::after {
2910 animation-name: tooltip-caret-slide-top;
2911 }
2912 [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 {
2913 animation-duration: 0.2s;
2914 animation-name: tooltip-slide-bottom;
2915 }
2916 [data-tooltip][data-placement=bottom]:focus::after, [data-tooltip][data-placement=bottom]:hover::after {
2917 animation-name: tooltip-caret-slide-bottom;
2918 }
2919 [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 {
2920 animation-duration: 0.2s;
2921 animation-name: tooltip-slide-left;
2922 }
2923 [data-tooltip][data-placement=left]:focus::after, [data-tooltip][data-placement=left]:hover::after {
2924 animation-name: tooltip-caret-slide-left;
2925 }
2926 [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 {
2927 animation-duration: 0.2s;
2928 animation-name: tooltip-slide-right;
2929 }
2930 [data-tooltip][data-placement=right]:focus::after, [data-tooltip][data-placement=right]:hover::after {
2931 animation-name: tooltip-caret-slide-right;
2932 }
2933}
2934@keyframes tooltip-slide-top {
2935 from {
2936 transform: translate(-50%, 0.75rem);
2937 opacity: 0;
2938 }
2939 to {
2940 transform: translate(-50%, -0.25rem);
2941 opacity: 1;
2942 }
2943}
2944@keyframes tooltip-caret-slide-top {
2945 from {
2946 opacity: 0;
2947 }
2948 50% {
2949 transform: translate(-50%, -0.25rem);
2950 opacity: 0;
2951 }
2952 to {
2953 transform: translate(-50%, 0rem);
2954 opacity: 1;
2955 }
2956}
2957@keyframes tooltip-slide-bottom {
2958 from {
2959 transform: translate(-50%, -0.75rem);
2960 opacity: 0;
2961 }
2962 to {
2963 transform: translate(-50%, 0.25rem);
2964 opacity: 1;
2965 }
2966}
2967@keyframes tooltip-caret-slide-bottom {
2968 from {
2969 opacity: 0;
2970 }
2971 50% {
2972 transform: translate(-50%, -0.5rem);
2973 opacity: 0;
2974 }
2975 to {
2976 transform: translate(-50%, -0.3rem);
2977 opacity: 1;
2978 }
2979}
2980@keyframes tooltip-slide-left {
2981 from {
2982 transform: translate(0.75rem, -50%);
2983 opacity: 0;
2984 }
2985 to {
2986 transform: translate(-0.25rem, -50%);
2987 opacity: 1;
2988 }
2989}
2990@keyframes tooltip-caret-slide-left {
2991 from {
2992 opacity: 0;
2993 }
2994 50% {
2995 transform: translate(0.05rem, -50%);
2996 opacity: 0;
2997 }
2998 to {
2999 transform: translate(0.3rem, -50%);
3000 opacity: 1;
3001 }
3002}
3003@keyframes tooltip-slide-right {
3004 from {
3005 transform: translate(-0.75rem, -50%);
3006 opacity: 0;
3007 }
3008 to {
3009 transform: translate(0.25rem, -50%);
3010 opacity: 1;
3011 }
3012}
3013@keyframes tooltip-caret-slide-right {
3014 from {
3015 opacity: 0;
3016 }
3017 50% {
3018 transform: translate(-0.05rem, -50%);
3019 opacity: 0;
3020 }
3021 to {
3022 transform: translate(-0.3rem, -50%);
3023 opacity: 1;
3024 }
3025}
3026
3030[aria-controls] {
3031 cursor: pointer;
3032}
3033
3034[aria-disabled=true],
3035[disabled] {
3036 cursor: not-allowed;
3037}
3038
3039[aria-hidden=false][hidden] {
3040 display: initial;
3041}
3042
3043[aria-hidden=false][hidden]:not(:focus) {
3044 clip: rect(0, 0, 0, 0);
3045 position: absolute;
3046}
3047
3048a,
3049area,
3050button,
3051input,
3052label,
3053select,
3054summary,
3055textarea,
3056[tabindex] {
3057 -ms-touch-action: manipulation;
3058}
3059
3060[dir=rtl] {
3061 direction: rtl;
3062}
3063
3067@media (prefers-reduced-motion: reduce) {
3068 *:not([aria-busy=true]),
3069 :not([aria-busy=true])::before,
3070 :not([aria-busy=true])::after {
3071 background-attachment: initial !important;
3072 animation-duration: 1ms !important;
3073 animation-delay: -1ms !important;
3074 animation-iteration-count: 1 !important;
3075 scroll-behavior: auto !important;
3076 transition-delay: 0s !important;
3077 transition-duration: 0s !important;
3078 }
3079}
3080
3081/*# sourceMappingURL=pico.css.map */
print $object position
Definition edit.php:206
Class WebPortalTheme.
multi select button
0 = Do not include form tag and submit button -1 = Do not include form tag but include submit button
treeview li table
No Email.
div refaddress div address
a disabled
editval_textarea active
if(!defined( 'NOREQUIREMENU')) if(!empty(GETPOST('seteventmessages', 'alpha'))) if(!function_exists("llxHeader")) top_httphead($contenttype='text/html', $forcenocache=0)
Show HTTP header.
print $langs trans('Date')." left Ref Label right Qty right Price right TotalHT right TotalTTC right right right right right right right right right centpercent right TotalHT right n right VAT right n right TotalVAT right n No sujeto a RE IRPF right TotalLT1 right n right TotalLT2 right n right TotalTTC right n takeposcustomercurrency takeposcustomercurrency takeposcustomercurrency takeposcustomercurrency right TotalTTC takeposcustomercurrency right takeposcustomercurrency n right Paid right PaymentTypeShortLIQ right SELECT p pos_change as p datep as date
Definition receipt.php:487
$conf db user
Active Directory does not allow anonymous connections.
Definition repair.php:134
if(preg_match('/(crypted|dolcrypt):/i', $dolibarr_main_db_pass)||!empty($dolibarr_main_db_encrypted_pass)) $conf db type
'integer', 'integer:ObjectClass:PathToClass[:AddCreateButtonOrNot[:Filter[:Sortfield]]]',...
Definition repair.php:130
$conf db name
Only used if Module[ID]Name translation string is not found.
Definition repair.php:133