@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,137 @@
1
+ b, strong {
2
+ font-weight: bolder;
3
+ }
4
+
5
+ sub, sup {
6
+ vertical-align: baseline;
7
+ font-size: .75em;
8
+ line-height: 0;
9
+ position: relative;
10
+ }
11
+
12
+ sub {
13
+ bottom: -.25em;
14
+ }
15
+
16
+ sup {
17
+ top: -.5em;
18
+ }
19
+
20
+ address, blockquote, dl, ol, p, pre, table, ul {
21
+ margin-top: 0;
22
+ margin-bottom: var(--pico-typography-spacing-vertical);
23
+ color: var(--pico-color);
24
+ font-style: normal;
25
+ font-weight: var(--pico-font-weight);
26
+ }
27
+
28
+ h1, h2, h3, h4, h5, h6 {
29
+ margin-top: 0;
30
+ margin-bottom: var(--pico-typography-spacing-vertical);
31
+ color: var(--pico-color);
32
+ font-weight: var(--pico-font-weight);
33
+ font-size: var(--pico-font-size);
34
+ line-height: var(--pico-line-height);
35
+ font-family: var(--pico-font-family);
36
+ }
37
+
38
+ h1 {
39
+ --pico-color: var(--pico-h1-color);
40
+ }
41
+
42
+ h2 {
43
+ --pico-color: var(--pico-h2-color);
44
+ }
45
+
46
+ h3 {
47
+ --pico-color: var(--pico-h3-color);
48
+ }
49
+
50
+ h4 {
51
+ --pico-color: var(--pico-h4-color);
52
+ }
53
+
54
+ h5 {
55
+ --pico-color: var(--pico-h5-color);
56
+ }
57
+
58
+ h6 {
59
+ --pico-color: var(--pico-h6-color);
60
+ }
61
+
62
+ :where(article, address, blockquote, dl, figure, form, ol, p, pre, table, ul) ~ :is(h1, h2, h3, h4, h5, h6) {
63
+ margin-top: var(--pico-typography-spacing-top);
64
+ }
65
+
66
+ p, hgroup {
67
+ margin-bottom: var(--pico-typography-spacing-vertical);
68
+ }
69
+
70
+ hgroup > * {
71
+ margin-top: 0;
72
+ margin-bottom: 0;
73
+ }
74
+
75
+ hgroup > :not(:first-child):last-child {
76
+ --pico-color: var(--pico-muted-color);
77
+ --pico-font-weight: unset;
78
+ font-size: 1rem;
79
+ }
80
+
81
+ :where(ol, ul) li {
82
+ margin-bottom: calc(var(--pico-typography-spacing-vertical) * .25);
83
+ }
84
+
85
+ :where(dl, ol, ul) :where(dl, ol, ul) {
86
+ margin: 0;
87
+ margin-top: calc(var(--pico-typography-spacing-vertical) * .25);
88
+ }
89
+
90
+ ul li {
91
+ list-style: square;
92
+ }
93
+
94
+ mark {
95
+ background-color: var(--pico-mark-background-color);
96
+ color: var(--pico-mark-color);
97
+ vertical-align: baseline;
98
+ padding: .125rem .25rem;
99
+ }
100
+
101
+ blockquote {
102
+ margin: var(--pico-typography-spacing-vertical) 0;
103
+ padding: var(--pico-spacing);
104
+ border-right: none;
105
+ border-left: .25rem solid var(--pico-blockquote-border-color);
106
+ border-inline-start: .25rem solid var(--pico-blockquote-border-color);
107
+ border-inline-end: none;
108
+ display: block;
109
+ }
110
+
111
+ blockquote footer {
112
+ margin-top: calc(var(--pico-typography-spacing-vertical) * .5);
113
+ color: var(--pico-blockquote-footer-color);
114
+ }
115
+
116
+ abbr[title] {
117
+ cursor: help;
118
+ border-bottom: 1px dotted;
119
+ text-decoration: none;
120
+ }
121
+
122
+ ins {
123
+ color: var(--pico-ins-color);
124
+ text-decoration: none;
125
+ }
126
+
127
+ del {
128
+ color: var(--pico-del-color);
129
+ }
130
+
131
+ ::-moz-selection {
132
+ background-color: var(--pico-text-selection-color);
133
+ }
134
+
135
+ ::selection {
136
+ background-color: var(--pico-text-selection-color);
137
+ }
@@ -0,0 +1,257 @@
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
+ }
@@ -0,0 +1,132 @@
1
+ :where(:scope), :host {
2
+ --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");
3
+ --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");
4
+ }
5
+
6
+ :where(:scope, [data-theme="light"], [data-theme="dark"]), :host {
7
+ --pico-switch-background-color: light-dark(#bfc7d9, #333c4e);
8
+ --pico-switch-checked-background-color: var(--pico-primary-background);
9
+ --pico-switch-color: #fff;
10
+ --pico-switch-thumb-box-shadow: 0 0 0 #0000;
11
+ }
12
+
13
+ label:has([type="checkbox"], [type="radio"]) {
14
+ cursor: pointer;
15
+ width: fit-content;
16
+ }
17
+
18
+ [type="checkbox"], [type="radio"] {
19
+ -webkit-appearance: none;
20
+ -moz-appearance: none;
21
+ appearance: none;
22
+ margin-top: -.125em;
23
+ border-width: var(--pico-border-width);
24
+ vertical-align: middle;
25
+ cursor: pointer;
26
+ width: 1.25em;
27
+ height: 1.25em;
28
+ margin-inline-end: .5em;
29
+ }
30
+
31
+ [type="checkbox"]::-ms-check, [type="radio"]::-ms-check {
32
+ display: none;
33
+ }
34
+
35
+ [type="checkbox"]:checked, [type="checkbox"]:checked:active, [type="checkbox"]:checked:focus, [type="radio"]:checked, [type="radio"]:checked:active, [type="radio"]:checked:focus {
36
+ --pico-background-color: var(--pico-primary-background);
37
+ --pico-border-color: var(--pico-primary-border);
38
+ background-image: var(--pico-icon-checkbox);
39
+ background-position: center;
40
+ background-repeat: no-repeat;
41
+ background-size: .75em;
42
+ }
43
+
44
+ [type="checkbox"] ~ label, [type="radio"] ~ label {
45
+ cursor: pointer;
46
+ margin-bottom: 0;
47
+ display: inline-block;
48
+ }
49
+
50
+ [type="checkbox"] ~ label:not(:last-of-type), [type="radio"] ~ label:not(:last-of-type) {
51
+ margin-inline-end: 1em;
52
+ }
53
+
54
+ [type="checkbox"]:indeterminate {
55
+ --pico-background-color: var(--pico-primary-background);
56
+ --pico-border-color: var(--pico-primary-border);
57
+ background-image: var(--pico-icon-minus);
58
+ background-position: center;
59
+ background-repeat: no-repeat;
60
+ background-size: .75em;
61
+ }
62
+
63
+ [type="radio"] {
64
+ border-radius: 50%;
65
+ }
66
+
67
+ [type="radio"]:checked, [type="radio"]:checked:active, [type="radio"]:checked:focus {
68
+ --pico-background-color: var(--pico-primary-inverse);
69
+ background-image: none;
70
+ border-width: .35em;
71
+ }
72
+
73
+ [type="checkbox"][role="switch"] {
74
+ --pico-background-color: var(--pico-switch-background-color);
75
+ --pico-color: var(--pico-switch-color);
76
+ border: var(--pico-border-width) solid var(--pico-border-color);
77
+ background-color: var(--pico-background-color);
78
+ border-radius: 1.25em;
79
+ width: 2.25em;
80
+ height: 1.25em;
81
+ line-height: 1.25em;
82
+ }
83
+
84
+ [type="checkbox"][role="switch"]:not([aria-invalid]) {
85
+ --pico-border-color: var(--pico-switch-background-color);
86
+ }
87
+
88
+ [type="checkbox"][role="switch"]:before {
89
+ aspect-ratio: 1;
90
+ background-color: var(--pico-color);
91
+ height: 100%;
92
+ box-shadow: var(--pico-switch-thumb-box-shadow);
93
+ content: "";
94
+ border-radius: 50%;
95
+ transition: margin .1s ease-in-out;
96
+ display: block;
97
+ }
98
+
99
+ [type="checkbox"][role="switch"]:focus {
100
+ --pico-background-color: var(--pico-switch-background-color);
101
+ --pico-border-color: var(--pico-switch-background-color);
102
+ }
103
+
104
+ [type="checkbox"][role="switch"]:checked {
105
+ --pico-background-color: var(--pico-switch-checked-background-color);
106
+ --pico-border-color: var(--pico-switch-checked-background-color);
107
+ background-image: none;
108
+ }
109
+
110
+ [type="checkbox"][role="switch"]:checked:before {
111
+ margin-inline-start: 1em;
112
+ }
113
+
114
+ [type="checkbox"][role="switch"][disabled] {
115
+ --pico-background-color: var(--pico-border-color);
116
+ }
117
+
118
+ [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 {
119
+ --pico-background-color: var(--pico-form-element-valid-border-color);
120
+ }
121
+
122
+ [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"] {
123
+ --pico-background-color: var(--pico-form-element-invalid-border-color);
124
+ }
125
+
126
+ [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 {
127
+ --pico-border-color: var(--pico-form-element-valid-border-color);
128
+ }
129
+
130
+ [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"] {
131
+ --pico-border-color: var(--pico-form-element-invalid-border-color);
132
+ }