@anyblades/blades 3.1.0-beta.7 → 3.1.0

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 (74) hide show
  1. package/README.md +173 -140
  2. package/css/blades.css +6 -6
  3. package/css/blades.min.css +6 -6
  4. package/css/blades.ninja.css +6 -6
  5. package/css/blades.ninja.min.css +6 -6
  6. package/css/float-label.css +1 -1
  7. package/css/float-label.min.css +1 -1
  8. package/css/layered/README.md +164 -0
  9. package/css/layered/_compact.css +30 -0
  10. package/css/layered/_utilities.css +23 -0
  11. package/css/layered/_variables-blades.css +8 -0
  12. package/css/layered/_variables.css +258 -0
  13. package/css/layered/blades.layered.css +6 -6
  14. package/css/layered/blades.layered.min.css +6 -6
  15. package/css/layered/components/_accordion.css +93 -0
  16. package/css/layered/components/_card.css +37 -0
  17. package/css/layered/components/_dropdown-popover.css +89 -0
  18. package/css/layered/components/_dropdown.css +188 -0
  19. package/css/layered/components/_group.css +89 -0
  20. package/css/layered/components/_index.css +950 -0
  21. package/css/layered/components/_loading.css +51 -0
  22. package/css/layered/components/_modal-modern.css +17 -0
  23. package/css/layered/components/_modal.css +144 -0
  24. package/css/layered/components/_nav.css +114 -0
  25. package/css/layered/components/_progress.css +68 -0
  26. package/css/layered/components/_timeline.css +7 -0
  27. package/css/layered/components/_tooltip.css +158 -0
  28. package/css/layered/content/_button.css +125 -0
  29. package/css/layered/content/_code-block.css +17 -0
  30. package/css/layered/content/_code.css +46 -0
  31. package/css/layered/content/_embedded-content.css +33 -0
  32. package/css/layered/content/_figure.css +10 -0
  33. package/css/layered/content/_icon.css +30 -0
  34. package/css/layered/content/_index.css +456 -0
  35. package/css/layered/content/_link.css +59 -0
  36. package/css/layered/content/_misc.css +15 -0
  37. package/css/layered/content/_table.css +24 -0
  38. package/css/layered/content/_typography.css +137 -0
  39. package/css/layered/forms/_basics.css +257 -0
  40. package/css/layered/forms/_checkbox-radio-switch.css +132 -0
  41. package/css/layered/forms/_index.css +617 -0
  42. package/css/layered/forms/_input-color.css +17 -0
  43. package/css/layered/forms/_input-datetime.css +37 -0
  44. package/css/layered/forms/_input-file.css +25 -0
  45. package/css/layered/forms/_input-range.css +111 -0
  46. package/css/layered/forms/_input-search.css +32 -0
  47. package/css/layered/forms/float-label/_core.css +28 -0
  48. package/css/layered/forms/float-label/_index.css +54 -0
  49. package/css/layered/forms/float-label/_theme.css +25 -0
  50. package/css/layered/forms/float-label/core.css +1 -1
  51. package/css/layered/forms/float-label.css +1 -1
  52. package/css/layered/layout/_columns.css +7 -0
  53. package/css/layered/layout/_container.css +39 -0
  54. package/css/layered/layout/_document.css +37 -0
  55. package/css/layered/layout/_grid.css +17 -0
  56. package/css/layered/layout/_index.css +103 -0
  57. package/css/layered/layout/_landmarks.css +3 -0
  58. package/css/layered/layout/_overflow-auto.css +3 -0
  59. package/css/layered/layout/_section.css +3 -0
  60. package/css/pico.canonical.css +2512 -0
  61. package/css/pico.canonical.min.css +1 -0
  62. package/css/pico.canonical.unmin.css +2512 -0
  63. package/css/pico.canonical.unmin.min.css +1 -0
  64. package/css/pico.conditional.css +2 -2
  65. package/css/pico.conditional.min.css +2 -2
  66. package/css/pico.css +2 -2
  67. package/css/pico.min.css +2 -2
  68. package/css/pico.unmin.css +2365 -0
  69. package/css/pico.unmin.min.css +7 -0
  70. package/package.json +12 -9
  71. package/src/blades/_index.css +1 -1
  72. package/src/blades/forms/float-label/_core.css +1 -1
  73. package/src/blades.css +2 -2
  74. package/src/pico/_index.css +2 -2
@@ -0,0 +1,617 @@
1
+ input, optgroup, select, textarea {
2
+ font-size: 1rem;
3
+ line-height: var(--pico-line-height);
4
+ letter-spacing: inherit;
5
+ margin: 0;
6
+ font-family: inherit;
7
+ }
8
+
9
+ input {
10
+ overflow: visible;
11
+ }
12
+
13
+ select {
14
+ text-transform: none;
15
+ }
16
+
17
+ legend {
18
+ max-width: 100%;
19
+ color: inherit;
20
+ white-space: normal;
21
+ padding: 0;
22
+ }
23
+
24
+ textarea {
25
+ overflow: auto;
26
+ }
27
+
28
+ [type="checkbox"], [type="radio"] {
29
+ padding: 0;
30
+ }
31
+
32
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
33
+ height: auto;
34
+ }
35
+
36
+ [type="search"] {
37
+ -webkit-appearance: textfield;
38
+ outline-offset: -2px;
39
+ }
40
+
41
+ [type="search"]::-webkit-search-decoration {
42
+ -webkit-appearance: none;
43
+ }
44
+
45
+ ::-webkit-file-upload-button {
46
+ -webkit-appearance: button;
47
+ font: inherit;
48
+ }
49
+
50
+ ::-moz-focus-inner {
51
+ border-style: none;
52
+ padding: 0;
53
+ }
54
+
55
+ :-moz-focusring {
56
+ outline: none;
57
+ }
58
+
59
+ :-moz-ui-invalid {
60
+ box-shadow: none;
61
+ }
62
+
63
+ ::-ms-expand {
64
+ display: none;
65
+ }
66
+
67
+ [type="file"], [type="range"] {
68
+ border-width: 0;
69
+ padding: 0;
70
+ }
71
+
72
+ input:not([type="checkbox"], [type="radio"], [type="range"]) {
73
+ height: calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 +
74
+ var(--pico-border-width) * 2);
75
+ }
76
+
77
+ fieldset {
78
+ width: 100%;
79
+ min-width: 0;
80
+ margin: 0;
81
+ margin-bottom: var(--pico-spacing);
82
+ border: 0;
83
+ padding: 0;
84
+ }
85
+
86
+ label, fieldset legend {
87
+ margin-bottom: calc(var(--pico-spacing) * .375);
88
+ color: var(--pico-color);
89
+ font-weight: var(--pico-form-label-font-weight, var(--pico-font-weight));
90
+ display: block;
91
+ }
92
+
93
+ fieldset legend {
94
+ margin-bottom: calc(var(--pico-spacing) * .5);
95
+ }
96
+
97
+ input:not([type="checkbox"], [type="radio"]), button[type="submit"], select, textarea {
98
+ width: 100%;
99
+ }
100
+
101
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]), select, textarea {
102
+ -webkit-appearance: none;
103
+ -moz-appearance: none;
104
+ appearance: none;
105
+ padding: var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);
106
+ }
107
+
108
+ input, select, textarea {
109
+ --pico-background-color: var(--pico-form-element-background-color);
110
+ --pico-border-color: var(--pico-form-element-border-color);
111
+ --pico-color: var(--pico-form-element-color);
112
+ --pico-box-shadow: none;
113
+ border: var(--pico-border-width) solid var(--pico-border-color);
114
+ border-radius: var(--pico-border-radius);
115
+ background-color: var(--pico-background-color);
116
+ box-shadow: var(--pico-box-shadow);
117
+ color: var(--pico-color);
118
+ font-weight: var(--pico-font-weight);
119
+ transition: background-color var(--pico-transition),
120
+ border-color var(--pico-transition),
121
+ color var(--pico-transition),
122
+ box-shadow var(--pico-transition);
123
+ outline: none;
124
+ }
125
+
126
+ input:not([type="submit"], [type="button"], [type="reset"], [type="checkbox"], [type="radio"], [readonly]):is(:active, :focus), :where(select, textarea):not([readonly]):is(:active, :focus) {
127
+ --pico-background-color: var(--pico-form-element-active-background-color);
128
+ }
129
+
130
+ input:not([type="submit"], [type="button"], [type="reset"], [role="switch"], [readonly]):is(:active, :focus), :where(select, textarea):not([readonly]):is(:active, :focus) {
131
+ --pico-border-color: var(--pico-form-element-active-border-color);
132
+ }
133
+
134
+ input:not([type="submit"], [type="button"], [type="reset"], [type="range"], [type="file"], [readonly]):focus, :where(select, textarea):not([readonly]):focus {
135
+ --pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-focus-color);
136
+ }
137
+
138
+ input:not([type="submit"], [type="button"], [type="reset"])[disabled], select[disabled], textarea[disabled], label[aria-disabled="true"], :where(fieldset[disabled]) :is(input:not([type="submit"], [type="button"], [type="reset"]), select, textarea) {
139
+ opacity: var(--pico-form-element-disabled-opacity);
140
+ pointer-events: none;
141
+ }
142
+
143
+ label[aria-disabled="true"] input[disabled] {
144
+ opacity: 1;
145
+ }
146
+
147
+ :where(input, select, textarea):not([type="checkbox"], [type="radio"], [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"], [type="range"])[aria-invalid] {
148
+ padding-left: var(--pico-form-element-spacing-horizontal);
149
+ background-position: right .75rem center;
150
+ background-repeat: no-repeat;
151
+ background-size: 1rem;
152
+ padding-right: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem) !important;
153
+ padding-inline-start: var(--pico-form-element-spacing-horizontal) !important;
154
+ padding-inline-end: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem) !important;
155
+ }
156
+
157
+ :where(input, select, textarea):not([type="checkbox"], [type="radio"], [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"], [type="range"])[aria-invalid="false"]:not(select) {
158
+ background-image: var(--pico-icon-valid);
159
+ }
160
+
161
+ :where(input, select, textarea):not([type="checkbox"], [type="radio"], [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"], [type="range"])[aria-invalid="true"]:not(select) {
162
+ background-image: var(--pico-icon-invalid);
163
+ }
164
+
165
+ :where(input, select, textarea)[aria-invalid="false"] {
166
+ --pico-border-color: var(--pico-form-element-valid-border-color);
167
+ }
168
+
169
+ :where(input, select, textarea)[aria-invalid="false"]:is(:active, :focus) {
170
+ --pico-border-color: var(--pico-form-element-valid-active-border-color) !important;
171
+ }
172
+
173
+ :where(input, select, textarea)[aria-invalid="false"]:is(:active, :focus):not([type="checkbox"], [type="radio"]) {
174
+ --pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-valid-focus-color) !important;
175
+ }
176
+
177
+ :where(input, select, textarea)[aria-invalid="true"] {
178
+ --pico-border-color: var(--pico-form-element-invalid-border-color);
179
+ }
180
+
181
+ :where(input, select, textarea)[aria-invalid="true"]:is(:active, :focus) {
182
+ --pico-border-color: var(--pico-form-element-invalid-active-border-color) !important;
183
+ }
184
+
185
+ :where(input, select, textarea)[aria-invalid="true"]:is(:active, :focus):not([type="checkbox"], [type="radio"]) {
186
+ --pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-invalid-focus-color) !important;
187
+ }
188
+
189
+ [dir="rtl"] :where(input, select, textarea):not([type="checkbox"], [type="radio"]):is([aria-invalid], [aria-invalid="true"], [aria-invalid="false"]) {
190
+ background-position: .75rem;
191
+ }
192
+
193
+ input::placeholder, input::-webkit-input-placeholder, textarea::placeholder, textarea::-webkit-input-placeholder, select:invalid {
194
+ color: var(--pico-form-element-placeholder-color);
195
+ opacity: 1;
196
+ }
197
+
198
+ input:not([type="checkbox"], [type="radio"]), select, textarea {
199
+ margin-bottom: var(--pico-spacing);
200
+ }
201
+
202
+ select::-ms-expand {
203
+ background-color: #0000;
204
+ border: 0;
205
+ }
206
+
207
+ select:not([multiple], [size]) {
208
+ padding-right: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);
209
+ padding-left: var(--pico-form-element-spacing-horizontal);
210
+ background-image: var(--pico-icon-chevron);
211
+ background-position: right .75rem center;
212
+ background-repeat: no-repeat;
213
+ background-size: 1rem;
214
+ padding-inline-start: var(--pico-form-element-spacing-horizontal);
215
+ padding-inline-end: calc(var(--pico-form-element-spacing-horizontal) + 1.5rem);
216
+ }
217
+
218
+ select[multiple] option:checked {
219
+ background: var(--pico-form-element-selected-background-color);
220
+ color: var(--pico-form-element-color);
221
+ }
222
+
223
+ [dir="rtl"] select:not([multiple], [size]) {
224
+ background-position: .75rem;
225
+ }
226
+
227
+ textarea {
228
+ resize: vertical;
229
+ display: block;
230
+ }
231
+
232
+ textarea[aria-invalid] {
233
+ --pico-icon-height: calc(1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 +
234
+ var(--pico-border-width) * 2);
235
+ background-position: right .75rem top !important;
236
+ background-size: 1rem var(--pico-icon-height) !important;
237
+ }
238
+
239
+ :where(input, select, textarea, fieldset, .grid) + small {
240
+ width: 100%;
241
+ margin-top: calc(var(--pico-spacing) * -.75);
242
+ margin-bottom: var(--pico-spacing);
243
+ color: var(--pico-muted-color);
244
+ display: block;
245
+ }
246
+
247
+ :where(input, select, textarea, fieldset, .grid)[aria-invalid="false"] + small {
248
+ color: var(--pico-ins-color);
249
+ }
250
+
251
+ :where(input, select, textarea, fieldset, .grid)[aria-invalid="true"] + small {
252
+ color: var(--pico-del-color);
253
+ }
254
+
255
+ label > :where(input, select, textarea) {
256
+ margin-top: calc(var(--pico-spacing) * .25);
257
+ }
258
+
259
+ :where(:scope), :host {
260
+ --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");
261
+ --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");
262
+ }
263
+
264
+ :where(:scope, [data-theme="light"], [data-theme="dark"]), :host {
265
+ --pico-switch-background-color: light-dark(#bfc7d9, #333c4e);
266
+ --pico-switch-checked-background-color: var(--pico-primary-background);
267
+ --pico-switch-color: #fff;
268
+ --pico-switch-thumb-box-shadow: 0 0 0 #0000;
269
+ }
270
+
271
+ label:has([type="checkbox"], [type="radio"]) {
272
+ cursor: pointer;
273
+ width: fit-content;
274
+ }
275
+
276
+ [type="checkbox"], [type="radio"] {
277
+ -webkit-appearance: none;
278
+ -moz-appearance: none;
279
+ appearance: none;
280
+ margin-top: -.125em;
281
+ border-width: var(--pico-border-width);
282
+ vertical-align: middle;
283
+ cursor: pointer;
284
+ width: 1.25em;
285
+ height: 1.25em;
286
+ margin-inline-end: .5em;
287
+ }
288
+
289
+ [type="checkbox"]::-ms-check, [type="radio"]::-ms-check {
290
+ display: none;
291
+ }
292
+
293
+ [type="checkbox"]:checked, [type="checkbox"]:checked:active, [type="checkbox"]:checked:focus, [type="radio"]:checked, [type="radio"]:checked:active, [type="radio"]:checked:focus {
294
+ --pico-background-color: var(--pico-primary-background);
295
+ --pico-border-color: var(--pico-primary-border);
296
+ background-image: var(--pico-icon-checkbox);
297
+ background-position: center;
298
+ background-repeat: no-repeat;
299
+ background-size: .75em;
300
+ }
301
+
302
+ [type="checkbox"] ~ label, [type="radio"] ~ label {
303
+ cursor: pointer;
304
+ margin-bottom: 0;
305
+ display: inline-block;
306
+ }
307
+
308
+ [type="checkbox"] ~ label:not(:last-of-type), [type="radio"] ~ label:not(:last-of-type) {
309
+ margin-inline-end: 1em;
310
+ }
311
+
312
+ [type="checkbox"]:indeterminate {
313
+ --pico-background-color: var(--pico-primary-background);
314
+ --pico-border-color: var(--pico-primary-border);
315
+ background-image: var(--pico-icon-minus);
316
+ background-position: center;
317
+ background-repeat: no-repeat;
318
+ background-size: .75em;
319
+ }
320
+
321
+ [type="radio"] {
322
+ border-radius: 50%;
323
+ }
324
+
325
+ [type="radio"]:checked, [type="radio"]:checked:active, [type="radio"]:checked:focus {
326
+ --pico-background-color: var(--pico-primary-inverse);
327
+ background-image: none;
328
+ border-width: .35em;
329
+ }
330
+
331
+ [type="checkbox"][role="switch"] {
332
+ --pico-background-color: var(--pico-switch-background-color);
333
+ --pico-color: var(--pico-switch-color);
334
+ border: var(--pico-border-width) solid var(--pico-border-color);
335
+ background-color: var(--pico-background-color);
336
+ border-radius: 1.25em;
337
+ width: 2.25em;
338
+ height: 1.25em;
339
+ line-height: 1.25em;
340
+ }
341
+
342
+ [type="checkbox"][role="switch"]:not([aria-invalid]) {
343
+ --pico-border-color: var(--pico-switch-background-color);
344
+ }
345
+
346
+ [type="checkbox"][role="switch"]:before {
347
+ aspect-ratio: 1;
348
+ background-color: var(--pico-color);
349
+ height: 100%;
350
+ box-shadow: var(--pico-switch-thumb-box-shadow);
351
+ content: "";
352
+ border-radius: 50%;
353
+ transition: margin .1s ease-in-out;
354
+ display: block;
355
+ }
356
+
357
+ [type="checkbox"][role="switch"]:focus {
358
+ --pico-background-color: var(--pico-switch-background-color);
359
+ --pico-border-color: var(--pico-switch-background-color);
360
+ }
361
+
362
+ [type="checkbox"][role="switch"]:checked {
363
+ --pico-background-color: var(--pico-switch-checked-background-color);
364
+ --pico-border-color: var(--pico-switch-checked-background-color);
365
+ background-image: none;
366
+ }
367
+
368
+ [type="checkbox"][role="switch"]:checked:before {
369
+ margin-inline-start: 1em;
370
+ }
371
+
372
+ [type="checkbox"][role="switch"][disabled] {
373
+ --pico-background-color: var(--pico-border-color);
374
+ }
375
+
376
+ [type="checkbox"][aria-invalid="false"]:checked, [type="checkbox"][aria-invalid="false"]:checked:active, [type="checkbox"][aria-invalid="false"]:checked:focus, [type="checkbox"][role="switch"][aria-invalid="false"]:checked, [type="checkbox"][role="switch"][aria-invalid="false"]:checked:active, [type="checkbox"][role="switch"][aria-invalid="false"]:checked:focus {
377
+ --pico-background-color: var(--pico-form-element-valid-border-color);
378
+ }
379
+
380
+ [type="checkbox"]:checked[aria-invalid="true"], [type="checkbox"]:checked:active[aria-invalid="true"], [type="checkbox"]:checked:focus[aria-invalid="true"], [type="checkbox"][role="switch"]:checked[aria-invalid="true"], [type="checkbox"][role="switch"]:checked:active[aria-invalid="true"], [type="checkbox"][role="switch"]:checked:focus[aria-invalid="true"] {
381
+ --pico-background-color: var(--pico-form-element-invalid-border-color);
382
+ }
383
+
384
+ [type="checkbox"][aria-invalid="false"]:checked, [type="checkbox"][aria-invalid="false"]:checked:active, [type="checkbox"][aria-invalid="false"]:checked:focus, [type="radio"][aria-invalid="false"]:checked, [type="radio"][aria-invalid="false"]:checked:active, [type="radio"][aria-invalid="false"]:checked:focus, [type="checkbox"][role="switch"][aria-invalid="false"]:checked, [type="checkbox"][role="switch"][aria-invalid="false"]:checked:active, [type="checkbox"][role="switch"][aria-invalid="false"]:checked:focus {
385
+ --pico-border-color: var(--pico-form-element-valid-border-color);
386
+ }
387
+
388
+ [type="checkbox"]:checked[aria-invalid="true"], [type="checkbox"]:checked:active[aria-invalid="true"], [type="checkbox"]:checked:focus[aria-invalid="true"], [type="radio"]:checked[aria-invalid="true"], [type="radio"]:checked:active[aria-invalid="true"], [type="radio"]:checked:focus[aria-invalid="true"], [type="checkbox"][role="switch"]:checked[aria-invalid="true"], [type="checkbox"][role="switch"]:checked:active[aria-invalid="true"], [type="checkbox"][role="switch"]:checked:focus[aria-invalid="true"] {
389
+ --pico-border-color: var(--pico-form-element-invalid-border-color);
390
+ }
391
+
392
+ [type="color"]::-webkit-color-swatch-wrapper {
393
+ padding: 0;
394
+ }
395
+
396
+ [type="color"]::-moz-focus-inner {
397
+ padding: 0;
398
+ }
399
+
400
+ [type="color"]::-webkit-color-swatch {
401
+ border-radius: calc(var(--pico-border-radius) * .5);
402
+ border: 0;
403
+ }
404
+
405
+ [type="color"]::-moz-color-swatch {
406
+ border-radius: calc(var(--pico-border-radius) * .5);
407
+ border: 0;
408
+ }
409
+
410
+ :where(:scope), :host {
411
+ --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");
412
+ --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");
413
+ }
414
+
415
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]):is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
416
+ --pico-icon-position: .75rem;
417
+ --pico-icon-width: 1rem;
418
+ padding-right: calc(var(--pico-icon-width) + var(--pico-icon-position));
419
+ background-image: var(--pico-icon-date);
420
+ background-position: center right var(--pico-icon-position);
421
+ background-size: var(--pico-icon-width) auto;
422
+ background-repeat: no-repeat;
423
+ min-width: 0;
424
+ }
425
+
426
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="time"] {
427
+ background-image: var(--pico-icon-time);
428
+ }
429
+
430
+ [type="date"]::-webkit-calendar-picker-indicator, [type="datetime-local"]::-webkit-calendar-picker-indicator, [type="month"]::-webkit-calendar-picker-indicator, [type="time"]::-webkit-calendar-picker-indicator, [type="week"]::-webkit-calendar-picker-indicator {
431
+ width: var(--pico-icon-width);
432
+ margin-right: calc(var(--pico-icon-width) * -1);
433
+ margin-left: var(--pico-icon-position);
434
+ opacity: 0;
435
+ }
436
+
437
+ @-moz-document url-prefix() {
438
+ [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"] {
439
+ padding-right: var(--pico-form-element-spacing-horizontal) !important;
440
+ background-image: none !important;
441
+ }
442
+ }
443
+
444
+ [dir="rtl"] :is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
445
+ text-align: end;
446
+ }
447
+
448
+ [type="file"] {
449
+ --pico-color: var(--pico-muted-color);
450
+ margin-left: calc(var(--pico-outline-width) * -1);
451
+ padding: calc(var(--pico-form-element-spacing-vertical) * .5) 0;
452
+ padding-left: var(--pico-outline-width);
453
+ background: none;
454
+ border: 0;
455
+ border-radius: 0;
456
+ }
457
+
458
+ [type="file"]::file-selector-button {
459
+ margin-right: calc(var(--pico-spacing) / 2);
460
+ padding: calc(var(--pico-form-element-spacing-vertical) * .5)
461
+ var(--pico-form-element-spacing-horizontal);
462
+ }
463
+
464
+ [type="file"]:is(:hover, :active, :focus)::file-selector-button {
465
+ --pico-background-color: var(--pico-secondary-hover-background);
466
+ --pico-border-color: var(--pico-secondary-hover-border);
467
+ }
468
+
469
+ [type="file"]:focus::file-selector-button {
470
+ --pico-box-shadow: var(--pico-button-hover-box-shadow, 0 0 0 #0000),
471
+ 0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
472
+ }
473
+
474
+ :where(:scope, [data-theme="light"], [data-theme="dark"]), :host {
475
+ --pico-range-border-color: light-dark(#dfe3eb, #202632);
476
+ --pico-range-active-border-color: light-dark(#bfc7d9, #2a3140);
477
+ --pico-range-thumb-border-color: var(--pico-background-color);
478
+ --pico-range-thumb-color: var(--pico-secondary-background);
479
+ --pico-range-thumb-active-color: var(--pico-primary-background);
480
+ }
481
+
482
+ [type="range"] {
483
+ -webkit-appearance: none;
484
+ -moz-appearance: none;
485
+ appearance: none;
486
+ background: none;
487
+ width: 100%;
488
+ height: 1.25rem;
489
+ }
490
+
491
+ [type="range"]::-webkit-slider-runnable-track {
492
+ border-radius: var(--pico-border-radius);
493
+ background-color: var(--pico-range-border-color);
494
+ width: 100%;
495
+ height: .375rem;
496
+ -webkit-transition: background-color var(--pico-transition),
497
+ box-shadow var(--pico-transition);
498
+ transition: background-color var(--pico-transition),
499
+ box-shadow var(--pico-transition);
500
+ }
501
+
502
+ [type="range"]::-moz-range-track {
503
+ border-radius: var(--pico-border-radius);
504
+ background-color: var(--pico-range-border-color);
505
+ width: 100%;
506
+ height: .375rem;
507
+ -moz-transition: background-color var(--pico-transition),
508
+ box-shadow var(--pico-transition);
509
+ transition: background-color var(--pico-transition),
510
+ box-shadow var(--pico-transition);
511
+ }
512
+
513
+ [type="range"]::-ms-track {
514
+ border-radius: var(--pico-border-radius);
515
+ background-color: var(--pico-range-border-color);
516
+ width: 100%;
517
+ height: .375rem;
518
+ -ms-transition: background-color var(--pico-transition),
519
+ box-shadow var(--pico-transition);
520
+ transition: background-color var(--pico-transition),
521
+ box-shadow var(--pico-transition);
522
+ }
523
+
524
+ [type="range"]::-webkit-slider-thumb {
525
+ -webkit-appearance: none;
526
+ border: 2px solid var(--pico-range-thumb-border-color);
527
+ background-color: var(--pico-range-thumb-color);
528
+ cursor: pointer;
529
+ width: 1.25rem;
530
+ height: 1.25rem;
531
+ -webkit-transition: background-color var(--pico-transition),
532
+ transform var(--pico-transition);
533
+ transition: background-color var(--pico-transition),
534
+ transform var(--pico-transition);
535
+ border-radius: 50%;
536
+ margin-top: -.4375rem;
537
+ }
538
+
539
+ [type="range"]::-moz-range-thumb {
540
+ -webkit-appearance: none;
541
+ border: 2px solid var(--pico-range-thumb-border-color);
542
+ background-color: var(--pico-range-thumb-color);
543
+ cursor: pointer;
544
+ width: 1.25rem;
545
+ height: 1.25rem;
546
+ -moz-transition: background-color var(--pico-transition),
547
+ transform var(--pico-transition);
548
+ transition: background-color var(--pico-transition),
549
+ transform var(--pico-transition);
550
+ border-radius: 50%;
551
+ margin-top: -.4375rem;
552
+ }
553
+
554
+ [type="range"]::-ms-thumb {
555
+ -webkit-appearance: none;
556
+ border: 2px solid var(--pico-range-thumb-border-color);
557
+ background-color: var(--pico-range-thumb-color);
558
+ cursor: pointer;
559
+ width: 1.25rem;
560
+ height: 1.25rem;
561
+ -ms-transition: background-color var(--pico-transition),
562
+ transform var(--pico-transition);
563
+ transition: background-color var(--pico-transition),
564
+ transform var(--pico-transition);
565
+ border-radius: 50%;
566
+ margin-top: -.4375rem;
567
+ }
568
+
569
+ [type="range"]:active, [type="range"]:focus-within {
570
+ --pico-range-border-color: var(--pico-range-active-border-color);
571
+ --pico-range-thumb-color: var(--pico-range-thumb-active-color);
572
+ }
573
+
574
+ [type="range"]:active::-webkit-slider-thumb {
575
+ transform: scale(1.25);
576
+ }
577
+
578
+ [type="range"]:active::-moz-range-thumb {
579
+ transform: scale(1.25);
580
+ }
581
+
582
+ [type="range"]:active::-ms-thumb {
583
+ transform: scale(1.25);
584
+ }
585
+
586
+ :where(:scope), :host {
587
+ --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");
588
+ }
589
+
590
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"] {
591
+ background-image: var(--pico-icon-search);
592
+ background-position: center left calc(var(--pico-form-element-spacing-horizontal) + .125rem);
593
+ background-repeat: no-repeat;
594
+ background-size: 1rem;
595
+ padding-inline-start: calc(var(--pico-form-element-spacing-horizontal) + 1.75rem);
596
+ }
597
+
598
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"][aria-invalid] {
599
+ background-position: 1.125rem, right .75rem center;
600
+ padding-inline-start: calc(var(--pico-form-element-spacing-horizontal) + 1.75rem) !important;
601
+ }
602
+
603
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"][aria-invalid="false"] {
604
+ background-image: var(--pico-icon-search), var(--pico-icon-valid);
605
+ }
606
+
607
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"][aria-invalid="true"] {
608
+ background-image: var(--pico-icon-search), var(--pico-icon-invalid);
609
+ }
610
+
611
+ [dir="rtl"] :where(input):not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"] {
612
+ background-position: right 1.125rem center;
613
+ }
614
+
615
+ [dir="rtl"] :where(input):not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="search"][aria-invalid] {
616
+ background-position: right 1.125rem center, .75rem;
617
+ }
@@ -0,0 +1,17 @@
1
+ [type="color"]::-webkit-color-swatch-wrapper {
2
+ padding: 0;
3
+ }
4
+
5
+ [type="color"]::-moz-focus-inner {
6
+ padding: 0;
7
+ }
8
+
9
+ [type="color"]::-webkit-color-swatch {
10
+ border-radius: calc(var(--pico-border-radius) * .5);
11
+ border: 0;
12
+ }
13
+
14
+ [type="color"]::-moz-color-swatch {
15
+ border-radius: calc(var(--pico-border-radius) * .5);
16
+ border: 0;
17
+ }
@@ -0,0 +1,37 @@
1
+ :where(:scope), :host {
2
+ --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");
3
+ --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");
4
+ }
5
+
6
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]):is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
7
+ --pico-icon-position: .75rem;
8
+ --pico-icon-width: 1rem;
9
+ padding-right: calc(var(--pico-icon-width) + var(--pico-icon-position));
10
+ background-image: var(--pico-icon-date);
11
+ background-position: center right var(--pico-icon-position);
12
+ background-size: var(--pico-icon-width) auto;
13
+ background-repeat: no-repeat;
14
+ min-width: 0;
15
+ }
16
+
17
+ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="time"] {
18
+ background-image: var(--pico-icon-time);
19
+ }
20
+
21
+ [type="date"]::-webkit-calendar-picker-indicator, [type="datetime-local"]::-webkit-calendar-picker-indicator, [type="month"]::-webkit-calendar-picker-indicator, [type="time"]::-webkit-calendar-picker-indicator, [type="week"]::-webkit-calendar-picker-indicator {
22
+ width: var(--pico-icon-width);
23
+ margin-right: calc(var(--pico-icon-width) * -1);
24
+ margin-left: var(--pico-icon-position);
25
+ opacity: 0;
26
+ }
27
+
28
+ @-moz-document url-prefix() {
29
+ [type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"] {
30
+ padding-right: var(--pico-form-element-spacing-horizontal) !important;
31
+ background-image: none !important;
32
+ }
33
+ }
34
+
35
+ [dir="rtl"] :is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
36
+ text-align: end;
37
+ }