@anyblades/blades 3.0.0 → 3.1.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/README.md +79 -12
  2. package/css/blades.css +219 -419
  3. package/css/blades.min.css +41 -30
  4. package/css/pico.conditional.css +219 -419
  5. package/css/pico.conditional.min.css +41 -30
  6. package/css/pico.css +219 -419
  7. package/css/pico.layered.css +2990 -0
  8. package/css/pico.layered.min.css +118 -0
  9. package/css/pico.min.css +41 -30
  10. package/package.json +27 -7
  11. package/src/pico/_index.css +4 -4
  12. package/src/pico/_utilities.css +0 -21
  13. package/src/pico/_variables.css +76 -386
  14. package/src/pico/components/_accordion.css +82 -0
  15. package/src/pico/components/_card.css +45 -0
  16. package/src/pico/components/_dropdown.css +188 -0
  17. package/src/pico/components/_group.css +205 -0
  18. package/src/pico/components/_index.css +9 -0
  19. package/src/pico/components/_loading.css +40 -0
  20. package/src/pico/components/_modal.css +157 -0
  21. package/src/pico/components/_nav.css +114 -0
  22. package/src/pico/components/_progress.css +73 -0
  23. package/src/pico/components/_tooltip.css +173 -0
  24. package/src/pico/content/_button.css +205 -0
  25. package/src/pico/content/_code.css +61 -0
  26. package/src/pico/content/_embedded-content.css +37 -0
  27. package/src/pico/content/_figure.css +12 -0
  28. package/src/pico/content/_index.css +8 -0
  29. package/src/pico/content/_link.css +81 -0
  30. package/src/pico/content/_misc.css +19 -0
  31. package/src/pico/content/_table.css +30 -0
  32. package/src/pico/content/_typography.css +156 -0
  33. package/src/pico/forms/_basics.css +335 -0
  34. package/src/pico/forms/_checkbox-radio-switch.css +161 -0
  35. package/src/pico/forms/_index.css +7 -0
  36. package/src/pico/forms/_input-color.css +17 -0
  37. package/src/pico/forms/_input-datetime.css +54 -0
  38. package/src/pico/forms/_input-file.css +26 -0
  39. package/src/pico/forms/_input-range.css +118 -0
  40. package/src/pico/forms/_input-search.css +63 -0
  41. package/src/pico/layout/_container.css +39 -0
  42. package/src/pico/layout/_document.css +36 -0
  43. package/src/pico/layout/_grid.css +19 -0
  44. package/src/pico/layout/_index.css +6 -0
  45. package/src/pico/layout/_landmarks.css +17 -0
  46. package/src/pico/layout/_overflow-auto.css +6 -0
  47. package/src/pico/layout/_section.css +6 -0
  48. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -25
  49. package/.github/ISSUE_TEMPLATE/config.yml +0 -8
  50. package/CODE_OF_CONDUCT.md +0 -92
  51. package/context7.json +0 -4
  52. package/css/postcss.config.js +0 -23
  53. package/index.html +0 -63
  54. package/src/pico/_components.css +0 -974
  55. package/src/pico/_content.css +0 -608
  56. package/src/pico/_forms.css +0 -747
  57. package/src/pico/_layout.css +0 -128
package/css/pico.css CHANGED
@@ -33,24 +33,10 @@
33
33
  --pico-grid-row-gap: var(--pico-spacing);
34
34
  --pico-form-element-spacing-vertical: 0.75rem;
35
35
  --pico-form-element-spacing-horizontal: 1rem;
36
- --pico-group-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
37
- --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
38
- var(--pico-primary-focus);
39
- --pico-group-box-shadow-focus-with-input: 0 0 0 0.0625rem var(--pico-form-element-border-color);
40
- --pico-modal-overlay-backdrop-filter: blur(0.375rem);
41
36
  --pico-nav-element-spacing-vertical: 1rem;
42
- --pico-nav-element-spacing-horizontal: 0.5rem;
43
37
  --pico-nav-link-spacing-vertical: 0.5rem;
44
38
  --pico-nav-link-spacing-horizontal: 0.5rem;
45
- --pico-nav-breadcrumb-divider: ">";
46
- --pico-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");
47
- --pico-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");
48
39
  --pico-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(136, 145, 164)' 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");
49
- --pico-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(136, 145, 164)' 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");
50
- --pico-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(136, 145, 164)' 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");
51
- --pico-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(136, 145, 164)' stroke-width='1.5' 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");
52
- --pico-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(136, 145, 164)' stroke-width='3' 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");
53
- --pico-icon-loading: url("data:image/svg+xml,%3Csvg fill='none' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E g %7B animation: rotate 2s linear infinite; transform-origin: center center; %7D circle %7B stroke-dasharray: 75,100; stroke-dashoffset: -5; animation: dash 1.5s ease-in-out infinite; stroke-linecap: round; %7D @keyframes rotate %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D @keyframes dash %7B 0%25 %7B stroke-dasharray: 1,100; stroke-dashoffset: 0; %7D 50%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -17.5; %7D 100%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -62; %7D %7D %3C/style%3E%3Cg%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='rgb(136, 145, 164)' stroke-width='4' /%3E%3C/g%3E%3C/svg%3E");
54
40
  }
55
41
  @media (min-width: 576px) {
56
42
  :scope,
@@ -196,36 +182,6 @@ nav details.dropdown summary:focus-visible {
196
182
  --pico-border-radius: 5rem;
197
183
  }
198
184
 
199
- [role="search"]:has(
200
- button.secondary:focus,
201
- [type="submit"].secondary:focus,
202
- [type="button"].secondary:focus,
203
- [role="button"].secondary:focus
204
- ),
205
- [role="group"]:has(
206
- button.secondary:focus,
207
- [type="submit"].secondary:focus,
208
- [type="button"].secondary:focus,
209
- [role="button"].secondary:focus
210
- ) {
211
- --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
212
- var(--pico-secondary-focus);
213
- }
214
- [role="search"]:has(
215
- button.contrast:focus,
216
- [type="submit"].contrast:focus,
217
- [type="button"].contrast:focus,
218
- [role="button"].contrast:focus
219
- ),
220
- [role="group"]:has(
221
- button.contrast:focus,
222
- [type="submit"].contrast:focus,
223
- [type="button"].contrast:focus,
224
- [role="button"].contrast:focus
225
- ) {
226
- --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
227
- var(--pico-contrast-focus);
228
- }
229
185
  [role="search"] button,
230
186
  [role="search"] [type="submit"],
231
187
  [role="search"] [type="button"],
@@ -253,273 +209,121 @@ details summary[role="button"]:not(.outline)::after {
253
209
 
254
210
  /**
255
211
  * Color schemes
212
+ * One palette for both schemes: light-dark() picks the value from the used color-scheme,
213
+ * so the dark scheme only has to switch color-scheme (same selectors as before).
256
214
  */
215
+ :scope,
216
+ :host,
257
217
  [data-theme="light"],
258
- :scope:not([data-theme="dark"]),
259
- :host(:not([data-theme="dark"])) {
218
+ [data-theme="dark"] {
260
219
  color-scheme: light;
261
- --pico-background-color: #fff;
262
- --pico-color: #373c44;
263
- --pico-text-selection-color: rgba(2, 154, 232, 0.25);
264
- --pico-muted-color: #646b79;
265
- --pico-muted-border-color: rgb(231, 234, 239.5);
266
- --pico-primary: #0172ad;
220
+ --pico-background-color: light-dark(#fff, rgb(19, 22.5, 30.5));
221
+ --pico-color: light-dark(#373c44, #c2c7d0);
222
+ --pico-text-selection-color: light-dark(rgba(2, 154, 232, 0.25), rgba(1, 170, 255, 0.1875));
223
+ --pico-muted-color: light-dark(#646b79, #7b8495);
224
+ --pico-muted-border-color: light-dark(rgb(231, 234, 239.5), #202632);
225
+ --pico-primary: light-dark(#0172ad, #01aaff);
267
226
  --pico-primary-background: #0172ad;
268
227
  --pico-primary-border: var(--pico-primary-background);
269
- --pico-primary-underline: rgba(1, 114, 173, 0.5);
270
- --pico-primary-hover: #015887;
271
- --pico-primary-hover-background: #02659a;
228
+ --pico-primary-underline: light-dark(rgba(1, 114, 173, 0.5), rgba(1, 170, 255, 0.5));
229
+ --pico-primary-hover: light-dark(#015887, #79c0ff);
230
+ --pico-primary-hover-background: light-dark(#02659a, #017fc0);
272
231
  --pico-primary-hover-border: var(--pico-primary-hover-background);
273
232
  --pico-primary-hover-underline: var(--pico-primary-hover);
274
- --pico-primary-focus: rgba(2, 154, 232, 0.5);
233
+ --pico-primary-focus: light-dark(rgba(2, 154, 232, 0.5), rgba(1, 170, 255, 0.375));
275
234
  --pico-primary-inverse: #fff;
276
- --pico-secondary: #5d6b89;
235
+ --pico-secondary: light-dark(#5d6b89, #969eaf);
277
236
  --pico-secondary-background: #525f7a;
278
237
  --pico-secondary-border: var(--pico-secondary-background);
279
- --pico-secondary-underline: rgba(93, 107, 137, 0.5);
280
- --pico-secondary-hover: #48536b;
281
- --pico-secondary-hover-background: #48536b;
238
+ --pico-secondary-underline: light-dark(rgba(93, 107, 137, 0.5), rgba(150, 158, 175, 0.5));
239
+ --pico-secondary-hover: light-dark(#48536b, #b3b9c5);
240
+ --pico-secondary-hover-background: light-dark(#48536b, #5d6b89);
282
241
  --pico-secondary-hover-border: var(--pico-secondary-hover-background);
283
242
  --pico-secondary-hover-underline: var(--pico-secondary-hover);
284
- --pico-secondary-focus: rgba(93, 107, 137, 0.25);
243
+ --pico-secondary-focus: light-dark(rgba(93, 107, 137, 0.25), rgba(144, 158, 190, 0.25));
285
244
  --pico-secondary-inverse: #fff;
286
- --pico-contrast: #181c25;
287
- --pico-contrast-background: #181c25;
245
+ --pico-contrast: light-dark(#181c25, #dfe3eb);
246
+ --pico-contrast-background: light-dark(#181c25, #eff1f4);
288
247
  --pico-contrast-border: var(--pico-contrast-background);
289
- --pico-contrast-underline: rgba(24, 28, 37, 0.5);
290
- --pico-contrast-hover: #000;
291
- --pico-contrast-hover-background: #000;
248
+ --pico-contrast-underline: light-dark(rgba(24, 28, 37, 0.5), rgba(223, 227, 235, 0.5));
249
+ --pico-contrast-hover: light-dark(#000, #fff);
250
+ --pico-contrast-hover-background: light-dark(#000, #fff);
292
251
  --pico-contrast-hover-border: var(--pico-contrast-hover-background);
293
- --pico-contrast-hover-underline: var(--pico-secondary-hover);
294
- --pico-contrast-focus: rgba(93, 107, 137, 0.25);
295
- --pico-contrast-inverse: #fff;
296
- --pico-box-shadow: 0 0.5rem 2.5rem rgba(129, 145, 181, 0.2);
297
- --pico-h1-color: #2d3138;
298
- --pico-h2-color: #373c44;
299
- --pico-h3-color: #424751;
300
- --pico-h4-color: #4d535e;
301
- --pico-h5-color: #5c6370;
302
- --pico-h6-color: #646b79;
303
- --pico-mark-background-color: rgb(252.5, 230.5, 191.5);
304
- --pico-mark-color: #0f1114;
305
- --pico-ins-color: rgb(28.5, 105.5, 84);
306
- --pico-del-color: rgb(136, 56.5, 53);
252
+ --pico-contrast-hover-underline: light-dark(
253
+ var(--pico-secondary-hover),
254
+ var(--pico-contrast-hover)
255
+ );
256
+ --pico-contrast-focus: light-dark(rgba(93, 107, 137, 0.25), rgba(207, 213, 226, 0.25));
257
+ --pico-contrast-inverse: light-dark(#fff, #000);
258
+ --pico-box-shadow: 0 0.5rem 2.5rem light-dark(rgba(129, 145, 181, 0.2), rgba(7, 8.5, 12, 0.2));
259
+ --pico-h1-color: light-dark(#2d3138, #f0f1f3);
260
+ --pico-h2-color: light-dark(#373c44, #e0e3e7);
261
+ --pico-h3-color: light-dark(#424751, #c2c7d0);
262
+ --pico-h4-color: light-dark(#4d535e, #b3b9c5);
263
+ --pico-h5-color: light-dark(#5c6370, #a4acba);
264
+ --pico-h6-color: light-dark(#646b79, #8891a4);
265
+ --pico-mark-background-color: light-dark(rgb(252.5, 230.5, 191.5), #014063);
266
+ --pico-mark-color: light-dark(#0f1114, #fff);
267
+ --pico-ins-color: light-dark(rgb(28.5, 105.5, 84), #62af9a);
268
+ --pico-del-color: light-dark(rgb(136, 56.5, 53), rgb(205.5, 126, 123));
307
269
  --pico-blockquote-border-color: var(--pico-muted-border-color);
308
270
  --pico-blockquote-footer-color: var(--pico-muted-color);
309
271
  --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
310
272
  --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
311
273
  --pico-table-border-color: var(--pico-muted-border-color);
312
274
  --pico-table-row-stripped-background-color: rgba(111, 120, 135, 0.0375);
313
- --pico-code-background-color: rgb(243, 244.5, 246.75);
314
- --pico-code-color: #646b79;
275
+ --pico-code-background-color: light-dark(rgb(243, 244.5, 246.75), rgb(26, 30.5, 40.25));
276
+ --pico-code-color: light-dark(#646b79, #8891a4);
315
277
  --pico-code-kbd-background-color: var(--pico-color);
316
278
  --pico-code-kbd-color: var(--pico-background-color);
317
- --pico-form-element-background-color: rgb(251, 251.5, 252.25);
318
- --pico-form-element-selected-background-color: #dfe3eb;
319
- --pico-form-element-border-color: #cfd5e2;
320
- --pico-form-element-color: #23262c;
321
- --pico-form-element-placeholder-color: var(--pico-muted-color);
322
- --pico-form-element-active-background-color: #fff;
279
+ --pico-form-element-background-color: light-dark(rgb(251, 251.5, 252.25), rgb(28, 33, 43.5));
280
+ --pico-form-element-selected-background-color: light-dark(#dfe3eb, #2a3140);
281
+ --pico-form-element-border-color: light-dark(#cfd5e2, #2a3140);
282
+ --pico-form-element-color: light-dark(#23262c, #e0e3e7);
283
+ --pico-form-element-placeholder-color: light-dark(var(--pico-muted-color), #8891a4);
284
+ --pico-form-element-active-background-color: light-dark(#fff, rgb(26, 30.5, 40.25));
323
285
  --pico-form-element-active-border-color: var(--pico-primary-border);
324
286
  --pico-form-element-focus-color: var(--pico-primary-border);
325
287
  --pico-form-element-disabled-opacity: 0.5;
326
- --pico-form-element-invalid-border-color: rgb(183.5, 105.5, 106.5);
327
- --pico-form-element-invalid-active-border-color: rgb(200.25, 79.25, 72.25);
288
+ --pico-form-element-invalid-border-color: light-dark(
289
+ rgb(183.5, 105.5, 106.5),
290
+ rgb(149.5, 74, 80)
291
+ );
292
+ --pico-form-element-invalid-active-border-color: light-dark(
293
+ rgb(200.25, 79.25, 72.25),
294
+ rgb(183.25, 63.5, 59)
295
+ );
328
296
  --pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
329
- --pico-form-element-valid-border-color: rgb(76, 154.5, 137.5);
330
- --pico-form-element-valid-active-border-color: rgb(39, 152.75, 118.75);
297
+ --pico-form-element-valid-border-color: light-dark(rgb(76, 154.5, 137.5), #2a7b6f);
298
+ --pico-form-element-valid-active-border-color: light-dark(
299
+ rgb(39, 152.75, 118.75),
300
+ rgb(22, 137, 105.5)
301
+ );
331
302
  --pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
332
- --pico-switch-background-color: #bfc7d9;
333
- --pico-switch-checked-background-color: var(--pico-primary-background);
334
- --pico-switch-color: #fff;
335
- --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
336
- --pico-range-border-color: #dfe3eb;
337
- --pico-range-active-border-color: #bfc7d9;
338
- --pico-range-thumb-border-color: var(--pico-background-color);
339
- --pico-range-thumb-color: var(--pico-secondary-background);
340
- --pico-range-thumb-active-color: var(--pico-primary-background);
341
- --pico-accordion-border-color: var(--pico-muted-border-color);
342
- --pico-accordion-active-summary-color: var(--pico-primary-hover);
343
- --pico-accordion-close-summary-color: var(--pico-color);
344
- --pico-accordion-open-summary-color: var(--pico-muted-color);
345
- --pico-card-background-color: var(--pico-background-color);
346
- --pico-card-border-color: var(--pico-muted-border-color);
347
- --pico-card-box-shadow: var(--pico-box-shadow);
348
- --pico-card-sectioning-background-color: rgb(251, 251.5, 252.25);
349
- --pico-dropdown-background-color: #fff;
350
- --pico-dropdown-border-color: #eff1f4;
351
- --pico-dropdown-box-shadow: var(--pico-box-shadow);
352
- --pico-dropdown-color: var(--pico-color);
353
- --pico-dropdown-hover-background-color: #eff1f4;
354
- --pico-loading-spinner-opacity: 0.5;
355
- --pico-modal-overlay-background-color: rgba(232, 234, 237, 0.75);
356
- --pico-progress-background-color: #dfe3eb;
357
- --pico-progress-color: var(--pico-primary-background);
358
- --pico-tooltip-background-color: var(--pico-contrast-background);
359
- --pico-tooltip-color: var(--pico-contrast-inverse);
303
+ /* One stroke color for both schemes, at least 3:1 on light and dark form backgrounds */
360
304
  --pico-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(76, 154.5, 137.5)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
361
305
  --pico-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(200.25, 79.25, 72.25)' 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");
362
306
  }
363
- [data-theme="light"]
364
- input:is(
365
- [type="submit"],
366
- [type="button"],
367
- [type="reset"],
368
- [type="checkbox"],
369
- [type="radio"],
370
- [type="file"]
371
- ),
372
- :scope:not([data-theme="dark"])
373
- input:is(
374
- [type="submit"],
375
- [type="button"],
376
- [type="reset"],
377
- [type="checkbox"],
378
- [type="radio"],
379
- [type="file"]
380
- ),
381
- :host(:not([data-theme="dark"]))
382
- input:is(
383
- [type="submit"],
384
- [type="button"],
385
- [type="reset"],
386
- [type="checkbox"],
387
- [type="radio"],
388
- [type="file"]
389
- ) {
307
+
308
+ input:is(
309
+ [type="submit"],
310
+ [type="button"],
311
+ [type="reset"],
312
+ [type="checkbox"],
313
+ [type="radio"],
314
+ [type="file"]
315
+ ) {
390
316
  --pico-form-element-focus-color: var(--pico-primary-focus);
391
317
  }
392
318
 
319
+ /* Dark scheme: switch color-scheme, plus filters that light-dark() can't pick */
393
320
  @media only screen and (prefers-color-scheme: dark) {
394
321
  :scope:not([data-theme]),
395
322
  :host(:not([data-theme])) {
396
323
  color-scheme: dark;
397
- --pico-background-color: rgb(19, 22.5, 30.5);
398
- --pico-color: #c2c7d0;
399
- --pico-text-selection-color: rgba(1, 170, 255, 0.1875);
400
- --pico-muted-color: #7b8495;
401
- --pico-muted-border-color: #202632;
402
- --pico-primary: #01aaff;
403
- --pico-primary-background: #0172ad;
404
- --pico-primary-border: var(--pico-primary-background);
405
- --pico-primary-underline: rgba(1, 170, 255, 0.5);
406
- --pico-primary-hover: #79c0ff;
407
- --pico-primary-hover-background: #017fc0;
408
- --pico-primary-hover-border: var(--pico-primary-hover-background);
409
- --pico-primary-hover-underline: var(--pico-primary-hover);
410
- --pico-primary-focus: rgba(1, 170, 255, 0.375);
411
- --pico-primary-inverse: #fff;
412
- --pico-secondary: #969eaf;
413
- --pico-secondary-background: #525f7a;
414
- --pico-secondary-border: var(--pico-secondary-background);
415
- --pico-secondary-underline: rgba(150, 158, 175, 0.5);
416
- --pico-secondary-hover: #b3b9c5;
417
- --pico-secondary-hover-background: #5d6b89;
418
- --pico-secondary-hover-border: var(--pico-secondary-hover-background);
419
- --pico-secondary-hover-underline: var(--pico-secondary-hover);
420
- --pico-secondary-focus: rgba(144, 158, 190, 0.25);
421
- --pico-secondary-inverse: #fff;
422
- --pico-contrast: #dfe3eb;
423
- --pico-contrast-background: #eff1f4;
424
- --pico-contrast-border: var(--pico-contrast-background);
425
- --pico-contrast-underline: rgba(223, 227, 235, 0.5);
426
- --pico-contrast-hover: #fff;
427
- --pico-contrast-hover-background: #fff;
428
- --pico-contrast-hover-border: var(--pico-contrast-hover-background);
429
- --pico-contrast-hover-underline: var(--pico-contrast-hover);
430
- --pico-contrast-focus: rgba(207, 213, 226, 0.25);
431
- --pico-contrast-inverse: #000;
432
- --pico-box-shadow: 0 0.5rem 2.5rem rgba(7, 8.5, 12, 0.2);
433
- --pico-h1-color: #f0f1f3;
434
- --pico-h2-color: #e0e3e7;
435
- --pico-h3-color: #c2c7d0;
436
- --pico-h4-color: #b3b9c5;
437
- --pico-h5-color: #a4acba;
438
- --pico-h6-color: #8891a4;
439
- --pico-mark-background-color: #014063;
440
- --pico-mark-color: #fff;
441
- --pico-ins-color: #62af9a;
442
- --pico-del-color: rgb(205.5, 126, 123);
443
- --pico-blockquote-border-color: var(--pico-muted-border-color);
444
- --pico-blockquote-footer-color: var(--pico-muted-color);
445
- --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
446
- --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
447
- --pico-table-border-color: var(--pico-muted-border-color);
448
- --pico-table-row-stripped-background-color: rgba(111, 120, 135, 0.0375);
449
- --pico-code-background-color: rgb(26, 30.5, 40.25);
450
- --pico-code-color: #8891a4;
451
- --pico-code-kbd-background-color: var(--pico-color);
452
- --pico-code-kbd-color: var(--pico-background-color);
453
- --pico-form-element-background-color: rgb(28, 33, 43.5);
454
- --pico-form-element-selected-background-color: #2a3140;
455
- --pico-form-element-border-color: #2a3140;
456
- --pico-form-element-color: #e0e3e7;
457
- --pico-form-element-placeholder-color: #8891a4;
458
- --pico-form-element-active-background-color: rgb(26, 30.5, 40.25);
459
- --pico-form-element-active-border-color: var(--pico-primary-border);
460
- --pico-form-element-focus-color: var(--pico-primary-border);
461
- --pico-form-element-disabled-opacity: 0.5;
462
- --pico-form-element-invalid-border-color: rgb(149.5, 74, 80);
463
- --pico-form-element-invalid-active-border-color: rgb(183.25, 63.5, 59);
464
- --pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
465
- --pico-form-element-valid-border-color: #2a7b6f;
466
- --pico-form-element-valid-active-border-color: rgb(22, 137, 105.5);
467
- --pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
468
- --pico-switch-background-color: #333c4e;
469
- --pico-switch-checked-background-color: var(--pico-primary-background);
470
- --pico-switch-color: #fff;
471
- --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
472
- --pico-range-border-color: #202632;
473
- --pico-range-active-border-color: #2a3140;
474
- --pico-range-thumb-border-color: var(--pico-background-color);
475
- --pico-range-thumb-color: var(--pico-secondary-background);
476
- --pico-range-thumb-active-color: var(--pico-primary-background);
477
- --pico-accordion-border-color: var(--pico-muted-border-color);
478
- --pico-accordion-active-summary-color: var(--pico-primary-hover);
479
- --pico-accordion-close-summary-color: var(--pico-color);
480
- --pico-accordion-open-summary-color: var(--pico-muted-color);
481
- --pico-card-background-color: #181c25;
482
- --pico-card-border-color: var(--pico-card-background-color);
483
- --pico-card-box-shadow: var(--pico-box-shadow);
484
- --pico-card-sectioning-background-color: rgb(26, 30.5, 40.25);
485
- --pico-dropdown-background-color: #181c25;
486
- --pico-dropdown-border-color: #202632;
487
- --pico-dropdown-box-shadow: var(--pico-box-shadow);
488
- --pico-dropdown-color: var(--pico-color);
489
- --pico-dropdown-hover-background-color: #202632;
490
- --pico-loading-spinner-opacity: 0.5;
491
- --pico-modal-overlay-background-color: rgba(7.5, 8.5, 10, 0.75);
492
- --pico-progress-background-color: #202632;
493
- --pico-progress-color: var(--pico-primary-background);
494
- --pico-tooltip-background-color: var(--pico-contrast-background);
495
- --pico-tooltip-color: var(--pico-contrast-inverse);
496
- --pico-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(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
497
- --pico-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(149.5, 74, 80)' 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");
498
- }
499
- :scope:not([data-theme])
500
- input:is(
501
- [type="submit"],
502
- [type="button"],
503
- [type="reset"],
504
- [type="checkbox"],
505
- [type="radio"],
506
- [type="file"]
507
- ),
508
- :host(:not([data-theme]))
509
- input:is(
510
- [type="submit"],
511
- [type="button"],
512
- [type="reset"],
513
- [type="checkbox"],
514
- [type="radio"],
515
- [type="file"]
516
- ) {
517
- --pico-form-element-focus-color: var(--pico-primary-focus);
518
324
  }
519
325
  :scope:not([data-theme]) details summary[role="button"].contrast:not(.outline)::after,
520
- :host(:not([data-theme])) details summary[role="button"].contrast:not(.outline)::after {
521
- filter: brightness(0);
522
- }
326
+ :host(:not([data-theme])) details summary[role="button"].contrast:not(.outline)::after,
523
327
  :scope:not([data-theme])
524
328
  [aria-busy="true"]:not(input, select, textarea).contrast:is(
525
329
  button,
@@ -541,122 +345,8 @@ details summary[role="button"]:not(.outline)::after {
541
345
  }
542
346
  [data-theme="dark"] {
543
347
  color-scheme: dark;
544
- --pico-background-color: rgb(19, 22.5, 30.5);
545
- --pico-color: #c2c7d0;
546
- --pico-text-selection-color: rgba(1, 170, 255, 0.1875);
547
- --pico-muted-color: #7b8495;
548
- --pico-muted-border-color: #202632;
549
- --pico-primary: #01aaff;
550
- --pico-primary-background: #0172ad;
551
- --pico-primary-border: var(--pico-primary-background);
552
- --pico-primary-underline: rgba(1, 170, 255, 0.5);
553
- --pico-primary-hover: #79c0ff;
554
- --pico-primary-hover-background: #017fc0;
555
- --pico-primary-hover-border: var(--pico-primary-hover-background);
556
- --pico-primary-hover-underline: var(--pico-primary-hover);
557
- --pico-primary-focus: rgba(1, 170, 255, 0.375);
558
- --pico-primary-inverse: #fff;
559
- --pico-secondary: #969eaf;
560
- --pico-secondary-background: #525f7a;
561
- --pico-secondary-border: var(--pico-secondary-background);
562
- --pico-secondary-underline: rgba(150, 158, 175, 0.5);
563
- --pico-secondary-hover: #b3b9c5;
564
- --pico-secondary-hover-background: #5d6b89;
565
- --pico-secondary-hover-border: var(--pico-secondary-hover-background);
566
- --pico-secondary-hover-underline: var(--pico-secondary-hover);
567
- --pico-secondary-focus: rgba(144, 158, 190, 0.25);
568
- --pico-secondary-inverse: #fff;
569
- --pico-contrast: #dfe3eb;
570
- --pico-contrast-background: #eff1f4;
571
- --pico-contrast-border: var(--pico-contrast-background);
572
- --pico-contrast-underline: rgba(223, 227, 235, 0.5);
573
- --pico-contrast-hover: #fff;
574
- --pico-contrast-hover-background: #fff;
575
- --pico-contrast-hover-border: var(--pico-contrast-hover-background);
576
- --pico-contrast-hover-underline: var(--pico-contrast-hover);
577
- --pico-contrast-focus: rgba(207, 213, 226, 0.25);
578
- --pico-contrast-inverse: #000;
579
- --pico-box-shadow: 0 0.5rem 2.5rem rgba(7, 8.5, 12, 0.2);
580
- --pico-h1-color: #f0f1f3;
581
- --pico-h2-color: #e0e3e7;
582
- --pico-h3-color: #c2c7d0;
583
- --pico-h4-color: #b3b9c5;
584
- --pico-h5-color: #a4acba;
585
- --pico-h6-color: #8891a4;
586
- --pico-mark-background-color: #014063;
587
- --pico-mark-color: #fff;
588
- --pico-ins-color: #62af9a;
589
- --pico-del-color: rgb(205.5, 126, 123);
590
- --pico-blockquote-border-color: var(--pico-muted-border-color);
591
- --pico-blockquote-footer-color: var(--pico-muted-color);
592
- --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
593
- --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
594
- --pico-table-border-color: var(--pico-muted-border-color);
595
- --pico-table-row-stripped-background-color: rgba(111, 120, 135, 0.0375);
596
- --pico-code-background-color: rgb(26, 30.5, 40.25);
597
- --pico-code-color: #8891a4;
598
- --pico-code-kbd-background-color: var(--pico-color);
599
- --pico-code-kbd-color: var(--pico-background-color);
600
- --pico-form-element-background-color: rgb(28, 33, 43.5);
601
- --pico-form-element-selected-background-color: #2a3140;
602
- --pico-form-element-border-color: #2a3140;
603
- --pico-form-element-color: #e0e3e7;
604
- --pico-form-element-placeholder-color: #8891a4;
605
- --pico-form-element-active-background-color: rgb(26, 30.5, 40.25);
606
- --pico-form-element-active-border-color: var(--pico-primary-border);
607
- --pico-form-element-focus-color: var(--pico-primary-border);
608
- --pico-form-element-disabled-opacity: 0.5;
609
- --pico-form-element-invalid-border-color: rgb(149.5, 74, 80);
610
- --pico-form-element-invalid-active-border-color: rgb(183.25, 63.5, 59);
611
- --pico-form-element-invalid-focus-color: var(--pico-form-element-invalid-active-border-color);
612
- --pico-form-element-valid-border-color: #2a7b6f;
613
- --pico-form-element-valid-active-border-color: rgb(22, 137, 105.5);
614
- --pico-form-element-valid-focus-color: var(--pico-form-element-valid-active-border-color);
615
- --pico-switch-background-color: #333c4e;
616
- --pico-switch-checked-background-color: var(--pico-primary-background);
617
- --pico-switch-color: #fff;
618
- --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
619
- --pico-range-border-color: #202632;
620
- --pico-range-active-border-color: #2a3140;
621
- --pico-range-thumb-border-color: var(--pico-background-color);
622
- --pico-range-thumb-color: var(--pico-secondary-background);
623
- --pico-range-thumb-active-color: var(--pico-primary-background);
624
- --pico-accordion-border-color: var(--pico-muted-border-color);
625
- --pico-accordion-active-summary-color: var(--pico-primary-hover);
626
- --pico-accordion-close-summary-color: var(--pico-color);
627
- --pico-accordion-open-summary-color: var(--pico-muted-color);
628
- --pico-card-background-color: #181c25;
629
- --pico-card-border-color: var(--pico-card-background-color);
630
- --pico-card-box-shadow: var(--pico-box-shadow);
631
- --pico-card-sectioning-background-color: rgb(26, 30.5, 40.25);
632
- --pico-dropdown-background-color: #181c25;
633
- --pico-dropdown-border-color: #202632;
634
- --pico-dropdown-box-shadow: var(--pico-box-shadow);
635
- --pico-dropdown-color: var(--pico-color);
636
- --pico-dropdown-hover-background-color: #202632;
637
- --pico-loading-spinner-opacity: 0.5;
638
- --pico-modal-overlay-background-color: rgba(7.5, 8.5, 10, 0.75);
639
- --pico-progress-background-color: #202632;
640
- --pico-progress-color: var(--pico-primary-background);
641
- --pico-tooltip-background-color: var(--pico-contrast-background);
642
- --pico-tooltip-color: var(--pico-contrast-inverse);
643
- --pico-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(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
644
- --pico-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(149.5, 74, 80)' 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");
645
- }
646
- [data-theme="dark"]
647
- input:is(
648
- [type="submit"],
649
- [type="button"],
650
- [type="reset"],
651
- [type="checkbox"],
652
- [type="radio"],
653
- [type="file"]
654
- ) {
655
- --pico-form-element-focus-color: var(--pico-primary-focus);
656
- }
657
- [data-theme="dark"] details summary[role="button"].contrast:not(.outline)::after {
658
- filter: brightness(0);
659
348
  }
349
+ [data-theme="dark"] details summary[role="button"].contrast:not(.outline)::after,
660
350
  [data-theme="dark"]
661
351
  [aria-busy="true"]:not(input, select, textarea).contrast:is(
662
352
  button,
@@ -736,7 +426,6 @@ body > footer {
736
426
  section {
737
427
  margin-bottom: var(--pico-block-spacing-vertical);
738
428
  }
739
-
740
429
  /**
741
430
  * Container
742
431
  */
@@ -776,7 +465,6 @@ section {
776
465
  max-width: 1450px;
777
466
  }
778
467
  }
779
-
780
468
  /**
781
469
  * Grid
782
470
  * Minimal grid system with auto-layout columns
@@ -796,7 +484,6 @@ section {
796
484
  min-width: 0;
797
485
  margin-bottom: 0; /* https://github.com/picocss/pico/issues/738 */
798
486
  }
799
-
800
487
  /**
801
488
  * Overflow auto
802
489
  */
@@ -1392,7 +1079,6 @@ figure figcaption {
1392
1079
  padding: calc(var(--pico-spacing) * 0.5) 0;
1393
1080
  color: var(--pico-muted-color);
1394
1081
  }
1395
-
1396
1082
  /**
1397
1083
  * Misc
1398
1084
  */
@@ -1752,6 +1438,19 @@ label > :where(input, select, textarea) {
1752
1438
  /**
1753
1439
  * Checkboxes, Radios and Switches
1754
1440
  */
1441
+ :where(:scope),
1442
+ :host {
1443
+ --pico-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");
1444
+ --pico-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");
1445
+ }
1446
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
1447
+ :host {
1448
+ --pico-switch-background-color: light-dark(#bfc7d9, #333c4e);
1449
+ --pico-switch-checked-background-color: var(--pico-primary-background);
1450
+ --pico-switch-color: #fff;
1451
+ --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
1452
+ }
1453
+
1755
1454
  label:has([type="checkbox"], [type="radio"]) {
1756
1455
  width: -moz-fit-content;
1757
1456
  width: fit-content;
@@ -1897,7 +1596,6 @@ label:has([type="checkbox"], [type="radio"]) {
1897
1596
  [type="checkbox"][role="switch"]:checked:focus[aria-invalid="true"] {
1898
1597
  --pico-border-color: var(--pico-form-element-invalid-border-color);
1899
1598
  }
1900
-
1901
1599
  /**
1902
1600
  * Input type color
1903
1601
  */
@@ -1915,10 +1613,15 @@ label:has([type="checkbox"], [type="radio"]) {
1915
1613
  border: 0;
1916
1614
  border-radius: calc(var(--pico-border-radius) * 0.5);
1917
1615
  }
1918
-
1919
1616
  /**
1920
1617
  * Input type datetime
1921
1618
  */
1619
+ :where(:scope),
1620
+ :host {
1621
+ --pico-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(136, 145, 164)' 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");
1622
+ --pico-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(136, 145, 164)' 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");
1623
+ }
1624
+
1922
1625
  input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]):is(
1923
1626
  [type="date"],
1924
1627
  [type="datetime-local"],
@@ -1964,7 +1667,6 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
1964
1667
  :is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
1965
1668
  text-align: end;
1966
1669
  }
1967
-
1968
1670
  /**
1969
1671
  * Input type file
1970
1672
  */
@@ -1991,10 +1693,18 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
1991
1693
  var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
1992
1694
  0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
1993
1695
  }
1994
-
1995
1696
  /**
1996
1697
  * Input type range
1997
1698
  */
1699
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
1700
+ :host {
1701
+ --pico-range-border-color: light-dark(#dfe3eb, #202632);
1702
+ --pico-range-active-border-color: light-dark(#bfc7d9, #2a3140);
1703
+ --pico-range-thumb-border-color: var(--pico-background-color);
1704
+ --pico-range-thumb-color: var(--pico-secondary-background);
1705
+ --pico-range-thumb-active-color: var(--pico-primary-background);
1706
+ }
1707
+
1998
1708
  [type="range"] {
1999
1709
  -webkit-appearance: none;
2000
1710
  -moz-appearance: none;
@@ -2101,10 +1811,14 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
2101
1811
  [type="range"]:active::-ms-thumb {
2102
1812
  transform: scale(1.25);
2103
1813
  }
2104
-
2105
1814
  /**
2106
1815
  * Input type search
2107
1816
  */
1817
+ :where(:scope),
1818
+ :host {
1819
+ --pico-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(136, 145, 164)' stroke-width='1.5' 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");
1820
+ }
1821
+
2108
1822
  input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"] {
2109
1823
  padding-inline-start: calc(var(--pico-form-element-spacing-horizontal) + 1.75rem);
2110
1824
  background-image: var(--pico-icon-search);
@@ -2163,6 +1877,14 @@ input:not(
2163
1877
  /**
2164
1878
  * Accordion (<details>)
2165
1879
  */
1880
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
1881
+ :host {
1882
+ --pico-accordion-border-color: var(--pico-muted-border-color);
1883
+ --pico-accordion-active-summary-color: var(--pico-primary-hover);
1884
+ --pico-accordion-close-summary-color: var(--pico-color);
1885
+ --pico-accordion-open-summary-color: var(--pico-muted-color);
1886
+ }
1887
+
2166
1888
  details {
2167
1889
  display: block;
2168
1890
  margin-bottom: var(--pico-spacing);
@@ -2234,10 +1956,23 @@ details[open] > summary::after {
2234
1956
  float: left;
2235
1957
  background-position: left center;
2236
1958
  }
2237
-
2238
1959
  /**
2239
1960
  * Card (<article>)
2240
1961
  */
1962
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
1963
+ :host {
1964
+ --pico-card-background-color: light-dark(var(--pico-background-color), #181c25);
1965
+ --pico-card-border-color: light-dark(
1966
+ var(--pico-muted-border-color),
1967
+ var(--pico-card-background-color)
1968
+ );
1969
+ --pico-card-box-shadow: var(--pico-box-shadow);
1970
+ --pico-card-sectioning-background-color: light-dark(
1971
+ rgb(251, 251.5, 252.25),
1972
+ rgb(26, 30.5, 40.25)
1973
+ );
1974
+ }
1975
+
2241
1976
  article {
2242
1977
  margin-bottom: var(--pico-block-spacing-vertical);
2243
1978
  padding: var(--pico-block-spacing-vertical) var(--pico-block-spacing-horizontal);
@@ -2266,10 +2001,18 @@ article > footer {
2266
2001
  border-bottom-right-radius: var(--pico-border-radius);
2267
2002
  border-bottom-left-radius: var(--pico-border-radius);
2268
2003
  }
2269
-
2270
2004
  /**
2271
2005
  * Dropdown (details.dropdown)
2272
2006
  */
2007
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
2008
+ :host {
2009
+ --pico-dropdown-background-color: light-dark(#fff, #181c25);
2010
+ --pico-dropdown-border-color: light-dark(#eff1f4, #202632);
2011
+ --pico-dropdown-box-shadow: var(--pico-box-shadow);
2012
+ --pico-dropdown-color: var(--pico-color);
2013
+ --pico-dropdown-hover-background-color: light-dark(#eff1f4, #202632);
2014
+ }
2015
+
2273
2016
  details.dropdown {
2274
2017
  position: relative;
2275
2018
  border-bottom: none;
@@ -2450,6 +2193,44 @@ label > details.dropdown {
2450
2193
  /**
2451
2194
  * Group ([role="group"], [role="search"])
2452
2195
  */
2196
+ :where(:scope),
2197
+ :host {
2198
+ --pico-group-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
2199
+ --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
2200
+ var(--pico-primary-focus);
2201
+ --pico-group-box-shadow-focus-with-input: 0 0 0 0.0625rem var(--pico-form-element-border-color);
2202
+ }
2203
+ [role="search"]:has(
2204
+ button.secondary:focus,
2205
+ [type="submit"].secondary:focus,
2206
+ [type="button"].secondary:focus,
2207
+ [role="button"].secondary:focus
2208
+ ),
2209
+ [role="group"]:has(
2210
+ button.secondary:focus,
2211
+ [type="submit"].secondary:focus,
2212
+ [type="button"].secondary:focus,
2213
+ [role="button"].secondary:focus
2214
+ ) {
2215
+ --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
2216
+ var(--pico-secondary-focus);
2217
+ }
2218
+ [role="search"]:has(
2219
+ button.contrast:focus,
2220
+ [type="submit"].contrast:focus,
2221
+ [type="button"].contrast:focus,
2222
+ [role="button"].contrast:focus
2223
+ ),
2224
+ [role="group"]:has(
2225
+ button.contrast:focus,
2226
+ [type="submit"].contrast:focus,
2227
+ [type="button"].contrast:focus,
2228
+ [role="button"].contrast:focus
2229
+ ) {
2230
+ --pico-group-box-shadow-focus-with-button: 0 0 0 var(--pico-outline-width)
2231
+ var(--pico-contrast-focus);
2232
+ }
2233
+
2453
2234
  [role="search"],
2454
2235
  [role="group"] {
2455
2236
  display: inline-flex;
@@ -2614,10 +2395,18 @@ label > details.dropdown {
2614
2395
  border-top-right-radius: 5rem;
2615
2396
  border-bottom-right-radius: 5rem;
2616
2397
  }
2617
-
2618
2398
  /**
2619
2399
  * Loading ([aria-busy=true])
2620
2400
  */
2401
+ :where(:scope),
2402
+ :host {
2403
+ --pico-icon-loading: url("data:image/svg+xml,%3Csvg fill='none' height='24' width='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3E%3Cstyle%3E g %7B animation: rotate 2s linear infinite; transform-origin: center center; %7D circle %7B stroke-dasharray: 75,100; stroke-dashoffset: -5; animation: dash 1.5s ease-in-out infinite; stroke-linecap: round; %7D @keyframes rotate %7B 0%25 %7B transform: rotate(0deg); %7D 100%25 %7B transform: rotate(360deg); %7D %7D @keyframes dash %7B 0%25 %7B stroke-dasharray: 1,100; stroke-dashoffset: 0; %7D 50%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -17.5; %7D 100%25 %7B stroke-dasharray: 44.5,100; stroke-dashoffset: -62; %7D %7D %3C/style%3E%3Cg%3E%3Ccircle cx='12' cy='12' r='10' fill='none' stroke='rgb(136, 145, 164)' stroke-width='4' /%3E%3C/g%3E%3C/svg%3E");
2404
+ }
2405
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
2406
+ :host {
2407
+ --pico-loading-spinner-opacity: 0.5;
2408
+ }
2409
+
2621
2410
  [aria-busy="true"]:not(input, select, textarea, html, form) {
2622
2411
  white-space: nowrap;
2623
2412
  }
@@ -2650,6 +2439,19 @@ a[aria-busy="true"] {
2650
2439
  /**
2651
2440
  * Modal (<dialog>)
2652
2441
  */
2442
+ :where(:scope),
2443
+ :host {
2444
+ --pico-modal-overlay-backdrop-filter: blur(0.375rem);
2445
+ --pico-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(136, 145, 164)' stroke-width='3' 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");
2446
+ }
2447
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
2448
+ :host {
2449
+ --pico-modal-overlay-background-color: light-dark(
2450
+ rgba(232, 234, 237, 0.75),
2451
+ rgba(7.5, 8.5, 10, 0.75)
2452
+ );
2453
+ }
2454
+
2653
2455
  :scope,
2654
2456
  :host {
2655
2457
  --pico-scrollbar-width: 0px;
@@ -2792,6 +2594,12 @@ dialog[open="false"] {
2792
2594
  /**
2793
2595
  * Nav
2794
2596
  */
2597
+ :where(:scope),
2598
+ :host {
2599
+ --pico-nav-element-spacing-horizontal: 0.5rem;
2600
+ --pico-nav-breadcrumb-divider: ">";
2601
+ }
2602
+
2795
2603
  :where(nav li)::before {
2796
2604
  float: left;
2797
2605
  content: "​";
@@ -2901,6 +2709,12 @@ aside li [role="button"] {
2901
2709
  /**
2902
2710
  * Progress
2903
2711
  */
2712
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
2713
+ :host {
2714
+ --pico-progress-background-color: light-dark(#dfe3eb, #202632);
2715
+ --pico-progress-color: var(--pico-primary-background);
2716
+ }
2717
+
2904
2718
  progress {
2905
2719
  display: inline-block;
2906
2720
  vertical-align: baseline;
@@ -2965,9 +2779,16 @@ progress::-moz-progress-bar {
2965
2779
  background-position: -200% 0;
2966
2780
  }
2967
2781
  }
2782
+
2968
2783
  /**
2969
2784
  * Tooltip ([data-tooltip])
2970
2785
  */
2786
+ :where(:scope, [data-theme="light"], [data-theme="dark"]),
2787
+ :host {
2788
+ --pico-tooltip-background-color: var(--pico-contrast-background);
2789
+ --pico-tooltip-color: var(--pico-contrast-inverse);
2790
+ }
2791
+
2971
2792
  [data-tooltip] {
2972
2793
  position: relative;
2973
2794
  }
@@ -3144,27 +2965,6 @@ progress::-moz-progress-bar {
3144
2965
  cursor: not-allowed;
3145
2966
  }
3146
2967
 
3147
- [aria-hidden="false"][hidden] {
3148
- display: initial;
3149
- }
3150
-
3151
- [aria-hidden="false"][hidden]:not(:focus) {
3152
- clip: rect(0, 0, 0, 0);
3153
- position: absolute;
3154
- }
3155
-
3156
- a,
3157
- area,
3158
- button,
3159
- input,
3160
- label,
3161
- select,
3162
- summary,
3163
- textarea,
3164
- [tabindex] {
3165
- -ms-touch-action: manipulation;
3166
- }
3167
-
3168
2968
  [dir="rtl"] {
3169
2969
  direction: rtl;
3170
2970
  }