@anyblades/blades 2.4.8 → 3.0.0-alpha.1
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.
- package/.github/ISSUE_TEMPLATE/bug_report.md +25 -0
- package/.github/ISSUE_TEMPLATE/config.yml +8 -0
- package/.prettierrc.json +6 -0
- package/README.md +130 -104
- package/context7.json +4 -0
- package/css/blades.css +454 -198
- package/css/blades.min.css +145 -0
- package/css/blades.standalone.css +216 -272
- package/css/blades.standalone.min.css +37 -0
- package/css/{blades.ninja.css → ninja.css} +7 -2
- package/css/ninja.min.css +5 -0
- package/css/pico.conditional.css +3189 -0
- package/css/pico.conditional.min.css +107 -0
- package/css/pico.css +3186 -0
- package/css/pico.min.css +105 -0
- package/css/postcss.config.js +23 -0
- package/index.html +63 -0
- package/package.json +27 -11
- package/src/blades.css +4 -3
- package/src/blades.standalone.css +2 -2
- package/src/{blades.ninja.css → ninja.css} +7 -2
- package/src/pico/_components.css +974 -0
- package/src/pico/_content.css +608 -0
- package/src/pico/_forms.css +747 -0
- package/src/pico/_index.css +12 -0
- package/src/pico/_layout.css +128 -0
- package/src/pico/_utilities.css +53 -0
- package/src/pico/_variables.css +671 -0
- package/src/pico.css +1 -0
- package/src/standalone/_core.css +32 -0
- package/src/{blades.standalone.theme.css → standalone/_theme.css} +3 -7
- package/src/{_utilities.css → standalone/_utilities.css} +3 -4
- package/src/standalone/_variables.css +20 -0
- package/src/{link-icon.css → standalone/components/_icon-helper.css} +0 -2
- package/src/{components → standalone/components}/_timeline.css +1 -2
- package/src/{content → standalone/content}/_code.css +9 -12
- package/src/{content/_typography.css → standalone/content/_list.css} +4 -49
- package/src/{content → standalone/content}/_table.css +4 -7
- package/src/standalone/content/_typography.css +38 -0
- package/src/{float-label.core.css → standalone/forms/_float-label.core.css} +22 -14
- package/src/standalone/forms/_float-label.css +2 -0
- package/src/{breakout.css → standalone/layout/_breakout.css} +3 -6
- package/src/{_layout.css → standalone/layout/_columns.css} +2 -20
- package/src/standalone/layout/_scroller.css +10 -0
- package/_config.yml +0 -5
- package/blades.gemspec +0 -16
- package/css/blades.standalone.core.css +0 -738
- package/css/blades.standalone.theme.css +0 -147
- package/css/breakout.css +0 -125
- package/css/float-label.core.css +0 -56
- package/css/float-label.css +0 -96
- package/css/float-label.theme.css +0 -39
- package/css/link-icon.css +0 -59
- package/css/responsive-table.css +0 -57
- package/src/blades.standalone.core.css +0 -21
- package/src/float-label.css +0 -3
- /package/src/{responsive-table.css → standalone/content/_table-responsive.css} +0 -0
- /package/src/{float-label.theme.css → standalone/forms/_float-label.theme.css} +0 -0
package/css/blades.css
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
@charset "UTF-8";
|
|
2
1
|
/*!
|
|
3
|
-
* Blades
|
|
4
|
-
* Copyright 2026
|
|
2
|
+
* Blades CSS v3 with Pico CSS 🥷✨
|
|
3
|
+
* Copyright 2026 (https://blades.ninja/)
|
|
4
|
+
* Licensed under MIT
|
|
5
5
|
*/
|
|
6
6
|
/*!
|
|
7
|
-
*
|
|
7
|
+
* Blades CSS' Pico fork v2.5 🥷✨
|
|
8
8
|
* Copyright 2019-2025 (https://picocss.com)
|
|
9
9
|
* Copyright 2026 (https://blades.ninja/css/pico/)
|
|
10
10
|
* Licensed under MIT
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
/**
|
|
13
13
|
* Variables
|
|
14
14
|
*/
|
|
15
|
-
:
|
|
15
|
+
:scope,
|
|
16
16
|
:host {
|
|
17
17
|
--pico-font-family-emoji:
|
|
18
18
|
"Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
@@ -59,35 +59,36 @@
|
|
|
59
59
|
--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");
|
|
60
60
|
}
|
|
61
61
|
@media (min-width: 576px) {
|
|
62
|
-
:
|
|
62
|
+
:scope,
|
|
63
63
|
:host {
|
|
64
64
|
--pico-font-size: 106.25%;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
67
67
|
@media (min-width: 768px) {
|
|
68
|
-
:
|
|
68
|
+
:scope,
|
|
69
69
|
:host {
|
|
70
70
|
--pico-font-size: 112.5%;
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
@media (min-width: 1024px) {
|
|
74
|
-
:
|
|
74
|
+
:scope,
|
|
75
75
|
:host {
|
|
76
76
|
--pico-font-size: 118.75%;
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
79
|
@media (min-width: 1280px) {
|
|
80
|
-
:
|
|
80
|
+
:scope,
|
|
81
81
|
:host {
|
|
82
82
|
--pico-font-size: 125%;
|
|
83
83
|
}
|
|
84
84
|
}
|
|
85
85
|
@media (min-width: 1536px) {
|
|
86
|
-
:
|
|
86
|
+
:scope,
|
|
87
87
|
:host {
|
|
88
88
|
--pico-font-size: 131.25%;
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
|
+
|
|
91
92
|
a {
|
|
92
93
|
--pico-text-decoration: underline;
|
|
93
94
|
}
|
|
@@ -95,9 +96,11 @@ a.secondary,
|
|
|
95
96
|
a.contrast {
|
|
96
97
|
--pico-text-decoration: underline;
|
|
97
98
|
}
|
|
99
|
+
|
|
98
100
|
small {
|
|
99
101
|
--pico-font-size: 0.875em;
|
|
100
102
|
}
|
|
103
|
+
|
|
101
104
|
h1,
|
|
102
105
|
h2,
|
|
103
106
|
h3,
|
|
@@ -106,36 +109,43 @@ h5,
|
|
|
106
109
|
h6 {
|
|
107
110
|
--pico-font-weight: 700;
|
|
108
111
|
}
|
|
112
|
+
|
|
109
113
|
h1 {
|
|
110
114
|
--pico-font-size: 2rem;
|
|
111
115
|
--pico-line-height: 1.125;
|
|
112
116
|
--pico-typography-spacing-top: 3rem;
|
|
113
117
|
}
|
|
118
|
+
|
|
114
119
|
h2 {
|
|
115
120
|
--pico-font-size: 1.75rem;
|
|
116
121
|
--pico-line-height: 1.15;
|
|
117
122
|
--pico-typography-spacing-top: 2.625rem;
|
|
118
123
|
}
|
|
124
|
+
|
|
119
125
|
h3 {
|
|
120
126
|
--pico-font-size: 1.5rem;
|
|
121
127
|
--pico-line-height: 1.175;
|
|
122
128
|
--pico-typography-spacing-top: 2.25rem;
|
|
123
129
|
}
|
|
130
|
+
|
|
124
131
|
h4 {
|
|
125
132
|
--pico-font-size: 1.25rem;
|
|
126
133
|
--pico-line-height: 1.2;
|
|
127
134
|
--pico-typography-spacing-top: 1.874rem;
|
|
128
135
|
}
|
|
136
|
+
|
|
129
137
|
h5 {
|
|
130
138
|
--pico-font-size: 1.125rem;
|
|
131
139
|
--pico-line-height: 1.225;
|
|
132
140
|
--pico-typography-spacing-top: 1.6875rem;
|
|
133
141
|
}
|
|
142
|
+
|
|
134
143
|
h6 {
|
|
135
144
|
--pico-font-size: 1rem;
|
|
136
145
|
--pico-line-height: 1.25;
|
|
137
146
|
--pico-typography-spacing-top: 1.5rem;
|
|
138
147
|
}
|
|
148
|
+
|
|
139
149
|
thead th,
|
|
140
150
|
thead td,
|
|
141
151
|
tfoot th,
|
|
@@ -143,15 +153,18 @@ tfoot td {
|
|
|
143
153
|
--pico-font-weight: 600;
|
|
144
154
|
--pico-border-width: 0.1875rem;
|
|
145
155
|
}
|
|
156
|
+
|
|
146
157
|
pre,
|
|
147
158
|
code,
|
|
148
159
|
kbd,
|
|
149
160
|
samp {
|
|
150
161
|
--pico-font-family: var(--pico-font-family-monospace);
|
|
151
162
|
}
|
|
163
|
+
|
|
152
164
|
kbd {
|
|
153
165
|
--pico-font-weight: bolder;
|
|
154
166
|
}
|
|
167
|
+
|
|
155
168
|
input:not(
|
|
156
169
|
[type="submit"],
|
|
157
170
|
[type="button"],
|
|
@@ -163,25 +176,32 @@ input:not(
|
|
|
163
176
|
:where(select, textarea) {
|
|
164
177
|
--pico-outline-width: 0.0625rem;
|
|
165
178
|
}
|
|
179
|
+
|
|
166
180
|
[type="search"] {
|
|
167
181
|
--pico-border-radius: 5rem;
|
|
168
182
|
}
|
|
183
|
+
|
|
169
184
|
[type="checkbox"],
|
|
170
185
|
[type="radio"] {
|
|
171
186
|
--pico-border-width: 0.125rem;
|
|
172
187
|
}
|
|
188
|
+
|
|
173
189
|
[type="checkbox"][role="switch"] {
|
|
174
190
|
--pico-border-width: 0.1875rem;
|
|
175
191
|
}
|
|
192
|
+
|
|
176
193
|
details.dropdown summary:not([role="button"]) {
|
|
177
194
|
--pico-outline-width: 0.0625rem;
|
|
178
195
|
}
|
|
196
|
+
|
|
179
197
|
nav details.dropdown summary:focus-visible {
|
|
180
198
|
--pico-outline-width: 0.125rem;
|
|
181
199
|
}
|
|
200
|
+
|
|
182
201
|
[role="search"] {
|
|
183
202
|
--pico-border-radius: 5rem;
|
|
184
203
|
}
|
|
204
|
+
|
|
185
205
|
[role="search"]:has(
|
|
186
206
|
button.secondary:focus,
|
|
187
207
|
[type="submit"].secondary:focus,
|
|
@@ -222,9 +242,11 @@ nav details.dropdown summary:focus-visible {
|
|
|
222
242
|
[role="group"] [role="button"] {
|
|
223
243
|
--pico-form-element-spacing-horizontal: 2rem;
|
|
224
244
|
}
|
|
245
|
+
|
|
225
246
|
details summary[role="button"]:not(.outline)::after {
|
|
226
247
|
filter: brightness(0) invert(1);
|
|
227
248
|
}
|
|
249
|
+
|
|
228
250
|
[aria-busy="true"]:not(input, select, textarea):is(
|
|
229
251
|
button,
|
|
230
252
|
[type="submit"],
|
|
@@ -234,11 +256,12 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
234
256
|
):not(.outline)::before {
|
|
235
257
|
filter: brightness(0) invert(1);
|
|
236
258
|
}
|
|
259
|
+
|
|
237
260
|
/**
|
|
238
261
|
* Color schemes
|
|
239
262
|
*/
|
|
240
263
|
[data-theme="light"],
|
|
241
|
-
:
|
|
264
|
+
:scope:not([data-theme="dark"]),
|
|
242
265
|
:host(:not([data-theme="dark"])) {
|
|
243
266
|
color-scheme: light;
|
|
244
267
|
--pico-background-color: #fff;
|
|
@@ -352,7 +375,7 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
352
375
|
[type="radio"],
|
|
353
376
|
[type="file"]
|
|
354
377
|
),
|
|
355
|
-
:
|
|
378
|
+
:scope:not([data-theme="dark"])
|
|
356
379
|
input:is(
|
|
357
380
|
[type="submit"],
|
|
358
381
|
[type="button"],
|
|
@@ -372,8 +395,9 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
372
395
|
) {
|
|
373
396
|
--pico-form-element-focus-color: var(--pico-primary-focus);
|
|
374
397
|
}
|
|
398
|
+
|
|
375
399
|
@media only screen and (prefers-color-scheme: dark) {
|
|
376
|
-
:
|
|
400
|
+
:scope:not([data-theme]),
|
|
377
401
|
:host(:not([data-theme])) {
|
|
378
402
|
color-scheme: dark;
|
|
379
403
|
--pico-background-color: rgb(19, 22.5, 30.5);
|
|
@@ -478,7 +502,7 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
478
502
|
--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");
|
|
479
503
|
--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");
|
|
480
504
|
}
|
|
481
|
-
:
|
|
505
|
+
:scope:not([data-theme])
|
|
482
506
|
input:is(
|
|
483
507
|
[type="submit"],
|
|
484
508
|
[type="button"],
|
|
@@ -498,11 +522,11 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
498
522
|
) {
|
|
499
523
|
--pico-form-element-focus-color: var(--pico-primary-focus);
|
|
500
524
|
}
|
|
501
|
-
:
|
|
525
|
+
:scope:not([data-theme]) details summary[role="button"].contrast:not(.outline)::after,
|
|
502
526
|
:host(:not([data-theme])) details summary[role="button"].contrast:not(.outline)::after {
|
|
503
527
|
filter: brightness(0);
|
|
504
528
|
}
|
|
505
|
-
:
|
|
529
|
+
:scope:not([data-theme])
|
|
506
530
|
[aria-busy="true"]:not(input, select, textarea).contrast:is(
|
|
507
531
|
button,
|
|
508
532
|
[type="submit"],
|
|
@@ -649,6 +673,7 @@ details summary[role="button"]:not(.outline)::after {
|
|
|
649
673
|
):not(.outline)::before {
|
|
650
674
|
filter: brightness(0);
|
|
651
675
|
}
|
|
676
|
+
|
|
652
677
|
progress,
|
|
653
678
|
[type="checkbox"],
|
|
654
679
|
[type="radio"],
|
|
@@ -665,12 +690,14 @@ progress,
|
|
|
665
690
|
box-sizing: border-box;
|
|
666
691
|
background-repeat: no-repeat;
|
|
667
692
|
}
|
|
693
|
+
|
|
668
694
|
::before,
|
|
669
695
|
::after {
|
|
670
696
|
text-decoration: inherit;
|
|
671
697
|
vertical-align: inherit;
|
|
672
698
|
}
|
|
673
|
-
|
|
699
|
+
|
|
700
|
+
:where(:scope),
|
|
674
701
|
:where(:host) {
|
|
675
702
|
-webkit-tap-highlight-color: transparent;
|
|
676
703
|
-webkit-text-size-adjust: 100%;
|
|
@@ -689,6 +716,7 @@ progress,
|
|
|
689
716
|
-o-tab-size: 4;
|
|
690
717
|
tab-size: 4;
|
|
691
718
|
}
|
|
719
|
+
|
|
692
720
|
/**
|
|
693
721
|
* Landmarks
|
|
694
722
|
*/
|
|
@@ -696,20 +724,24 @@ body {
|
|
|
696
724
|
width: 100%;
|
|
697
725
|
margin: 0;
|
|
698
726
|
}
|
|
727
|
+
|
|
699
728
|
main {
|
|
700
729
|
display: block;
|
|
701
730
|
}
|
|
731
|
+
|
|
702
732
|
body > header,
|
|
703
733
|
body > main,
|
|
704
734
|
body > footer {
|
|
705
735
|
padding-block: var(--pico-block-spacing-vertical);
|
|
706
736
|
}
|
|
737
|
+
|
|
707
738
|
/**
|
|
708
739
|
* Section
|
|
709
740
|
*/
|
|
710
741
|
section {
|
|
711
742
|
margin-bottom: var(--pico-block-spacing-vertical);
|
|
712
743
|
}
|
|
744
|
+
|
|
713
745
|
/**
|
|
714
746
|
* Container
|
|
715
747
|
*/
|
|
@@ -721,6 +753,7 @@ section {
|
|
|
721
753
|
padding-right: var(--pico-spacing);
|
|
722
754
|
padding-left: var(--pico-spacing);
|
|
723
755
|
}
|
|
756
|
+
|
|
724
757
|
@media (min-width: 576px) {
|
|
725
758
|
.container {
|
|
726
759
|
max-width: 510px;
|
|
@@ -748,6 +781,7 @@ section {
|
|
|
748
781
|
max-width: 1450px;
|
|
749
782
|
}
|
|
750
783
|
}
|
|
784
|
+
|
|
751
785
|
/**
|
|
752
786
|
* Grid
|
|
753
787
|
* Minimal grid system with auto-layout columns
|
|
@@ -767,6 +801,7 @@ section {
|
|
|
767
801
|
min-width: 0;
|
|
768
802
|
margin-bottom: 0; /* https://github.com/picocss/pico/issues/738 */
|
|
769
803
|
}
|
|
804
|
+
|
|
770
805
|
/**
|
|
771
806
|
* Overflow auto
|
|
772
807
|
*/
|
|
@@ -780,6 +815,7 @@ b,
|
|
|
780
815
|
strong {
|
|
781
816
|
font-weight: bolder;
|
|
782
817
|
}
|
|
818
|
+
|
|
783
819
|
sub,
|
|
784
820
|
sup {
|
|
785
821
|
position: relative;
|
|
@@ -787,12 +823,15 @@ sup {
|
|
|
787
823
|
line-height: 0;
|
|
788
824
|
vertical-align: baseline;
|
|
789
825
|
}
|
|
826
|
+
|
|
790
827
|
sub {
|
|
791
828
|
bottom: -0.25em;
|
|
792
829
|
}
|
|
830
|
+
|
|
793
831
|
sup {
|
|
794
832
|
top: -0.5em;
|
|
795
833
|
}
|
|
834
|
+
|
|
796
835
|
address,
|
|
797
836
|
blockquote,
|
|
798
837
|
dl,
|
|
@@ -807,6 +846,7 @@ ul {
|
|
|
807
846
|
font-style: normal;
|
|
808
847
|
font-weight: var(--pico-font-weight);
|
|
809
848
|
}
|
|
849
|
+
|
|
810
850
|
h1,
|
|
811
851
|
h2,
|
|
812
852
|
h3,
|
|
@@ -821,31 +861,40 @@ h6 {
|
|
|
821
861
|
line-height: var(--pico-line-height);
|
|
822
862
|
font-family: var(--pico-font-family);
|
|
823
863
|
}
|
|
864
|
+
|
|
824
865
|
h1 {
|
|
825
866
|
--pico-color: var(--pico-h1-color);
|
|
826
867
|
}
|
|
868
|
+
|
|
827
869
|
h2 {
|
|
828
870
|
--pico-color: var(--pico-h2-color);
|
|
829
871
|
}
|
|
872
|
+
|
|
830
873
|
h3 {
|
|
831
874
|
--pico-color: var(--pico-h3-color);
|
|
832
875
|
}
|
|
876
|
+
|
|
833
877
|
h4 {
|
|
834
878
|
--pico-color: var(--pico-h4-color);
|
|
835
879
|
}
|
|
880
|
+
|
|
836
881
|
h5 {
|
|
837
882
|
--pico-color: var(--pico-h5-color);
|
|
838
883
|
}
|
|
884
|
+
|
|
839
885
|
h6 {
|
|
840
886
|
--pico-color: var(--pico-h6-color);
|
|
841
887
|
}
|
|
888
|
+
|
|
842
889
|
:where(article, address, blockquote, dl, figure, form, ol, p, pre, table, ul)
|
|
843
890
|
~ :is(h1, h2, h3, h4, h5, h6) {
|
|
844
891
|
margin-top: var(--pico-typography-spacing-top);
|
|
845
892
|
}
|
|
893
|
+
|
|
846
894
|
p {
|
|
847
895
|
margin-bottom: var(--pico-typography-spacing-vertical);
|
|
848
896
|
}
|
|
897
|
+
|
|
849
898
|
hgroup {
|
|
850
899
|
margin-bottom: var(--pico-typography-spacing-vertical);
|
|
851
900
|
}
|
|
@@ -858,22 +907,27 @@ hgroup > *:not(:first-child):last-child {
|
|
|
858
907
|
--pico-font-weight: unset;
|
|
859
908
|
font-size: 1rem;
|
|
860
909
|
}
|
|
910
|
+
|
|
861
911
|
:where(ol, ul) li {
|
|
862
912
|
margin-bottom: calc(var(--pico-typography-spacing-vertical) * 0.25);
|
|
863
913
|
}
|
|
914
|
+
|
|
864
915
|
:where(dl, ol, ul) :where(dl, ol, ul) {
|
|
865
916
|
margin: 0;
|
|
866
917
|
margin-top: calc(var(--pico-typography-spacing-vertical) * 0.25);
|
|
867
918
|
}
|
|
919
|
+
|
|
868
920
|
ul li {
|
|
869
921
|
list-style: square;
|
|
870
922
|
}
|
|
923
|
+
|
|
871
924
|
mark {
|
|
872
925
|
padding: 0.125rem 0.25rem;
|
|
873
926
|
background-color: var(--pico-mark-background-color);
|
|
874
927
|
color: var(--pico-mark-color);
|
|
875
928
|
vertical-align: baseline;
|
|
876
929
|
}
|
|
930
|
+
|
|
877
931
|
blockquote {
|
|
878
932
|
display: block;
|
|
879
933
|
margin: var(--pico-typography-spacing-vertical) 0;
|
|
@@ -887,24 +941,30 @@ blockquote footer {
|
|
|
887
941
|
margin-top: calc(var(--pico-typography-spacing-vertical) * 0.5);
|
|
888
942
|
color: var(--pico-blockquote-footer-color);
|
|
889
943
|
}
|
|
944
|
+
|
|
890
945
|
abbr[title] {
|
|
891
946
|
border-bottom: 1px dotted;
|
|
892
947
|
text-decoration: none;
|
|
893
948
|
cursor: help;
|
|
894
949
|
}
|
|
950
|
+
|
|
895
951
|
ins {
|
|
896
952
|
color: var(--pico-ins-color);
|
|
897
953
|
text-decoration: none;
|
|
898
954
|
}
|
|
955
|
+
|
|
899
956
|
del {
|
|
900
957
|
color: var(--pico-del-color);
|
|
901
958
|
}
|
|
959
|
+
|
|
902
960
|
::-moz-selection {
|
|
903
961
|
background-color: var(--pico-text-selection-color);
|
|
904
962
|
}
|
|
963
|
+
|
|
905
964
|
::selection {
|
|
906
965
|
background-color: var(--pico-text-selection-color);
|
|
907
966
|
}
|
|
967
|
+
|
|
908
968
|
/**
|
|
909
969
|
* Link
|
|
910
970
|
*/
|
|
@@ -982,9 +1042,11 @@ del {
|
|
|
982
1042
|
--pico-color: var(--pico-contrast-hover);
|
|
983
1043
|
--pico-underline: var(--pico-contrast-hover-underline);
|
|
984
1044
|
}
|
|
1045
|
+
|
|
985
1046
|
a[role="button"] {
|
|
986
1047
|
display: inline-block;
|
|
987
1048
|
}
|
|
1049
|
+
|
|
988
1050
|
/**
|
|
989
1051
|
* Button
|
|
990
1052
|
*/
|
|
@@ -994,12 +1056,14 @@ button {
|
|
|
994
1056
|
font-family: inherit;
|
|
995
1057
|
text-transform: none;
|
|
996
1058
|
}
|
|
1059
|
+
|
|
997
1060
|
button,
|
|
998
1061
|
[type="submit"],
|
|
999
1062
|
[type="reset"],
|
|
1000
1063
|
[type="button"] {
|
|
1001
1064
|
-webkit-appearance: button;
|
|
1002
1065
|
}
|
|
1066
|
+
|
|
1003
1067
|
button,
|
|
1004
1068
|
[type="submit"],
|
|
1005
1069
|
[type="reset"],
|
|
@@ -1065,11 +1129,13 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1065
1129
|
var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
|
|
1066
1130
|
0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
|
|
1067
1131
|
}
|
|
1132
|
+
|
|
1068
1133
|
[type="submit"],
|
|
1069
1134
|
[type="reset"],
|
|
1070
1135
|
[type="button"] {
|
|
1071
1136
|
margin-bottom: var(--pico-spacing);
|
|
1072
1137
|
}
|
|
1138
|
+
|
|
1073
1139
|
:is(button, [type="submit"], [type="button"], [role="button"]).secondary,
|
|
1074
1140
|
[type="reset"],
|
|
1075
1141
|
[type="file"]::file-selector-button {
|
|
@@ -1107,6 +1173,7 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1107
1173
|
var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
|
|
1108
1174
|
0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
|
|
1109
1175
|
}
|
|
1176
|
+
|
|
1110
1177
|
:is(button, [type="submit"], [type="button"], [role="button"]).contrast {
|
|
1111
1178
|
--pico-background-color: var(--pico-contrast-background);
|
|
1112
1179
|
--pico-border-color: var(--pico-contrast-border);
|
|
@@ -1130,6 +1197,7 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1130
1197
|
var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
|
|
1131
1198
|
0 0 0 var(--pico-outline-width) var(--pico-contrast-focus);
|
|
1132
1199
|
}
|
|
1200
|
+
|
|
1133
1201
|
:is(button, [type="submit"], [type="button"], [role="button"]).outline,
|
|
1134
1202
|
[type="reset"].outline {
|
|
1135
1203
|
--pico-background-color: transparent;
|
|
@@ -1147,6 +1215,7 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1147
1215
|
--pico-color: var(--pico-primary-hover);
|
|
1148
1216
|
--pico-border-color: var(--pico-primary-hover);
|
|
1149
1217
|
}
|
|
1218
|
+
|
|
1150
1219
|
:is(button, [type="submit"], [type="button"], [role="button"]).outline.secondary,
|
|
1151
1220
|
[type="reset"].outline {
|
|
1152
1221
|
--pico-color: var(--pico-secondary);
|
|
@@ -1162,6 +1231,7 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1162
1231
|
--pico-color: var(--pico-secondary-hover);
|
|
1163
1232
|
--pico-border-color: var(--pico-secondary-hover);
|
|
1164
1233
|
}
|
|
1234
|
+
|
|
1165
1235
|
:is(button, [type="submit"], [type="button"], [role="button"]).outline.contrast {
|
|
1166
1236
|
--pico-color: var(--pico-contrast);
|
|
1167
1237
|
--pico-border-color: var(--pico-contrast);
|
|
@@ -1175,12 +1245,14 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1175
1245
|
--pico-color: var(--pico-contrast-hover);
|
|
1176
1246
|
--pico-border-color: var(--pico-contrast-hover);
|
|
1177
1247
|
}
|
|
1248
|
+
|
|
1178
1249
|
:where(button, [type="submit"], [type="reset"], [type="button"], [role="button"])[disabled],
|
|
1179
1250
|
:where(fieldset[disabled])
|
|
1180
1251
|
:is(button, [type="submit"], [type="button"], [type="reset"], [role="button"]) {
|
|
1181
1252
|
opacity: 0.5;
|
|
1182
1253
|
pointer-events: none;
|
|
1183
1254
|
}
|
|
1255
|
+
|
|
1184
1256
|
/**
|
|
1185
1257
|
* Table
|
|
1186
1258
|
*/
|
|
@@ -1190,6 +1262,7 @@ button:is([aria-current]:not([aria-current="false"])):focus,
|
|
|
1190
1262
|
border-spacing: 0;
|
|
1191
1263
|
text-indent: 0;
|
|
1192
1264
|
}
|
|
1265
|
+
|
|
1193
1266
|
th,
|
|
1194
1267
|
td {
|
|
1195
1268
|
padding: calc(var(--pico-spacing) / 2) var(--pico-spacing);
|
|
@@ -1199,46 +1272,57 @@ td {
|
|
|
1199
1272
|
font-weight: var(--pico-font-weight);
|
|
1200
1273
|
text-align: start;
|
|
1201
1274
|
}
|
|
1275
|
+
|
|
1202
1276
|
tfoot th,
|
|
1203
1277
|
tfoot td {
|
|
1204
1278
|
border-top: var(--pico-border-width) solid var(--pico-table-border-color);
|
|
1205
1279
|
border-bottom: 0;
|
|
1206
1280
|
}
|
|
1281
|
+
|
|
1207
1282
|
table.striped tbody tr:nth-child(odd) th,
|
|
1208
1283
|
table.striped tbody tr:nth-child(odd) td {
|
|
1209
1284
|
background-color: var(--pico-table-row-stripped-background-color);
|
|
1210
1285
|
}
|
|
1286
|
+
|
|
1211
1287
|
/**
|
|
1212
1288
|
* Embedded content
|
|
1213
1289
|
*/
|
|
1214
1290
|
:where(audio, canvas, iframe, img, svg, video) {
|
|
1215
1291
|
vertical-align: middle;
|
|
1216
1292
|
}
|
|
1293
|
+
|
|
1217
1294
|
audio,
|
|
1218
1295
|
video {
|
|
1219
1296
|
display: inline-block;
|
|
1220
1297
|
}
|
|
1298
|
+
|
|
1221
1299
|
audio:not([controls]) {
|
|
1222
1300
|
display: none;
|
|
1223
1301
|
height: 0;
|
|
1224
1302
|
}
|
|
1303
|
+
|
|
1225
1304
|
:where(iframe) {
|
|
1226
1305
|
border-style: none;
|
|
1227
1306
|
}
|
|
1307
|
+
|
|
1228
1308
|
img:not([height]) {
|
|
1229
1309
|
max-width: 100%;
|
|
1230
1310
|
height: auto;
|
|
1231
1311
|
}
|
|
1232
|
-
|
|
1312
|
+
|
|
1313
|
+
img {
|
|
1233
1314
|
border-style: none;
|
|
1234
1315
|
}
|
|
1316
|
+
|
|
1235
1317
|
:where(svg:not([fill])) {
|
|
1236
1318
|
fill: currentColor;
|
|
1237
1319
|
}
|
|
1238
|
-
|
|
1320
|
+
|
|
1321
|
+
svg:not(:scope),
|
|
1239
1322
|
svg:not(:host) {
|
|
1240
1323
|
overflow: hidden;
|
|
1241
1324
|
}
|
|
1325
|
+
|
|
1242
1326
|
/**
|
|
1243
1327
|
* Code
|
|
1244
1328
|
*/
|
|
@@ -1250,15 +1334,18 @@ samp {
|
|
|
1250
1334
|
font-size: 0.875em;
|
|
1251
1335
|
font-family: var(--pico-font-family);
|
|
1252
1336
|
}
|
|
1337
|
+
|
|
1253
1338
|
pre code,
|
|
1254
1339
|
pre samp {
|
|
1255
1340
|
font-size: inherit;
|
|
1256
1341
|
font-family: inherit;
|
|
1257
1342
|
}
|
|
1343
|
+
|
|
1258
1344
|
pre {
|
|
1259
1345
|
-ms-overflow-style: scrollbar;
|
|
1260
1346
|
overflow: auto;
|
|
1261
1347
|
}
|
|
1348
|
+
|
|
1262
1349
|
pre,
|
|
1263
1350
|
code,
|
|
1264
1351
|
var,
|
|
@@ -1270,6 +1357,7 @@ samp {
|
|
|
1270
1357
|
font-weight: var(--pico-font-weight);
|
|
1271
1358
|
line-height: initial;
|
|
1272
1359
|
}
|
|
1360
|
+
|
|
1273
1361
|
code,
|
|
1274
1362
|
var,
|
|
1275
1363
|
kbd,
|
|
@@ -1277,6 +1365,7 @@ samp {
|
|
|
1277
1365
|
display: inline-block;
|
|
1278
1366
|
padding: 0.375rem;
|
|
1279
1367
|
}
|
|
1368
|
+
|
|
1280
1369
|
pre {
|
|
1281
1370
|
display: block;
|
|
1282
1371
|
margin-bottom: var(--pico-spacing);
|
|
@@ -1289,11 +1378,13 @@ pre > samp {
|
|
|
1289
1378
|
background: none;
|
|
1290
1379
|
line-height: var(--pico-line-height);
|
|
1291
1380
|
}
|
|
1381
|
+
|
|
1292
1382
|
kbd {
|
|
1293
1383
|
background-color: var(--pico-code-kbd-background-color);
|
|
1294
1384
|
color: var(--pico-code-kbd-color);
|
|
1295
1385
|
vertical-align: baseline;
|
|
1296
1386
|
}
|
|
1387
|
+
|
|
1297
1388
|
/**
|
|
1298
1389
|
* Figure
|
|
1299
1390
|
*/
|
|
@@ -1306,6 +1397,7 @@ figure figcaption {
|
|
|
1306
1397
|
padding: calc(var(--pico-spacing) * 0.5) 0;
|
|
1307
1398
|
color: var(--pico-muted-color);
|
|
1308
1399
|
}
|
|
1400
|
+
|
|
1309
1401
|
/**
|
|
1310
1402
|
* Misc
|
|
1311
1403
|
*/
|
|
@@ -1316,10 +1408,12 @@ hr {
|
|
|
1316
1408
|
border-top: 1px solid var(--pico-muted-border-color);
|
|
1317
1409
|
color: inherit;
|
|
1318
1410
|
}
|
|
1411
|
+
|
|
1319
1412
|
[hidden],
|
|
1320
1413
|
template {
|
|
1321
1414
|
display: none !important;
|
|
1322
1415
|
}
|
|
1416
|
+
|
|
1323
1417
|
canvas {
|
|
1324
1418
|
display: inline-block;
|
|
1325
1419
|
}
|
|
@@ -1336,64 +1430,80 @@ textarea {
|
|
|
1336
1430
|
font-family: inherit;
|
|
1337
1431
|
letter-spacing: inherit;
|
|
1338
1432
|
}
|
|
1433
|
+
|
|
1339
1434
|
input {
|
|
1340
1435
|
overflow: visible;
|
|
1341
1436
|
}
|
|
1437
|
+
|
|
1342
1438
|
select {
|
|
1343
1439
|
text-transform: none;
|
|
1344
1440
|
}
|
|
1441
|
+
|
|
1345
1442
|
legend {
|
|
1346
1443
|
max-width: 100%;
|
|
1347
1444
|
padding: 0;
|
|
1348
1445
|
color: inherit;
|
|
1349
1446
|
white-space: normal;
|
|
1350
1447
|
}
|
|
1448
|
+
|
|
1351
1449
|
textarea {
|
|
1352
1450
|
overflow: auto;
|
|
1353
1451
|
}
|
|
1452
|
+
|
|
1354
1453
|
[type="checkbox"],
|
|
1355
1454
|
[type="radio"] {
|
|
1356
1455
|
padding: 0;
|
|
1357
1456
|
}
|
|
1457
|
+
|
|
1358
1458
|
::-webkit-inner-spin-button,
|
|
1359
1459
|
::-webkit-outer-spin-button {
|
|
1360
1460
|
height: auto;
|
|
1361
1461
|
}
|
|
1462
|
+
|
|
1362
1463
|
[type="search"] {
|
|
1363
1464
|
-webkit-appearance: textfield;
|
|
1364
1465
|
outline-offset: -2px;
|
|
1365
1466
|
}
|
|
1467
|
+
|
|
1366
1468
|
[type="search"]::-webkit-search-decoration {
|
|
1367
1469
|
-webkit-appearance: none;
|
|
1368
1470
|
}
|
|
1471
|
+
|
|
1369
1472
|
::-webkit-file-upload-button {
|
|
1370
1473
|
-webkit-appearance: button;
|
|
1371
1474
|
font: inherit;
|
|
1372
1475
|
}
|
|
1476
|
+
|
|
1373
1477
|
::-moz-focus-inner {
|
|
1374
1478
|
padding: 0;
|
|
1375
1479
|
border-style: none;
|
|
1376
1480
|
}
|
|
1481
|
+
|
|
1377
1482
|
:-moz-focusring {
|
|
1378
1483
|
outline: none;
|
|
1379
1484
|
}
|
|
1485
|
+
|
|
1380
1486
|
:-moz-ui-invalid {
|
|
1381
1487
|
box-shadow: none;
|
|
1382
1488
|
}
|
|
1489
|
+
|
|
1383
1490
|
::-ms-expand {
|
|
1384
1491
|
display: none;
|
|
1385
1492
|
}
|
|
1493
|
+
|
|
1386
1494
|
[type="file"],
|
|
1387
1495
|
[type="range"] {
|
|
1388
1496
|
padding: 0;
|
|
1389
1497
|
border-width: 0;
|
|
1390
1498
|
}
|
|
1499
|
+
|
|
1391
1500
|
input:not([type="checkbox"], [type="radio"], [type="range"]) {
|
|
1392
1501
|
height: calc(
|
|
1393
1502
|
1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 +
|
|
1394
1503
|
var(--pico-border-width) * 2
|
|
1395
1504
|
);
|
|
1396
1505
|
}
|
|
1506
|
+
|
|
1397
1507
|
fieldset {
|
|
1398
1508
|
width: 100%;
|
|
1399
1509
|
min-width: 0;
|
|
@@ -1402,6 +1512,7 @@ fieldset {
|
|
|
1402
1512
|
padding: 0;
|
|
1403
1513
|
border: 0;
|
|
1404
1514
|
}
|
|
1515
|
+
|
|
1405
1516
|
label,
|
|
1406
1517
|
fieldset legend {
|
|
1407
1518
|
display: block;
|
|
@@ -1409,15 +1520,18 @@ fieldset legend {
|
|
|
1409
1520
|
color: var(--pico-color);
|
|
1410
1521
|
font-weight: var(--pico-form-label-font-weight, var(--pico-font-weight));
|
|
1411
1522
|
}
|
|
1523
|
+
|
|
1412
1524
|
fieldset legend {
|
|
1413
1525
|
margin-bottom: calc(var(--pico-spacing) * 0.5);
|
|
1414
1526
|
}
|
|
1527
|
+
|
|
1415
1528
|
input:not([type="checkbox"], [type="radio"]),
|
|
1416
1529
|
button[type="submit"],
|
|
1417
1530
|
select,
|
|
1418
1531
|
textarea {
|
|
1419
1532
|
width: 100%;
|
|
1420
1533
|
}
|
|
1534
|
+
|
|
1421
1535
|
input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]),
|
|
1422
1536
|
select,
|
|
1423
1537
|
textarea {
|
|
@@ -1426,6 +1540,7 @@ textarea {
|
|
|
1426
1540
|
appearance: none;
|
|
1427
1541
|
padding: var(--pico-form-element-spacing-vertical) var(--pico-form-element-spacing-horizontal);
|
|
1428
1542
|
}
|
|
1543
|
+
|
|
1429
1544
|
input,
|
|
1430
1545
|
select,
|
|
1431
1546
|
textarea {
|
|
@@ -1446,6 +1561,7 @@ textarea {
|
|
|
1446
1561
|
color var(--pico-transition),
|
|
1447
1562
|
box-shadow var(--pico-transition);
|
|
1448
1563
|
}
|
|
1564
|
+
|
|
1449
1565
|
input:not(
|
|
1450
1566
|
[type="submit"],
|
|
1451
1567
|
[type="button"],
|
|
@@ -1457,6 +1573,7 @@ input:not(
|
|
|
1457
1573
|
:where(select, textarea):not([readonly]):is(:active, :focus) {
|
|
1458
1574
|
--pico-background-color: var(--pico-form-element-active-background-color);
|
|
1459
1575
|
}
|
|
1576
|
+
|
|
1460
1577
|
input:not([type="submit"], [type="button"], [type="reset"], [role="switch"], [readonly]):is(
|
|
1461
1578
|
:active,
|
|
1462
1579
|
:focus
|
|
@@ -1464,6 +1581,7 @@ input:not([type="submit"], [type="button"], [type="reset"], [role="switch"], [re
|
|
|
1464
1581
|
:where(select, textarea):not([readonly]):is(:active, :focus) {
|
|
1465
1582
|
--pico-border-color: var(--pico-form-element-active-border-color);
|
|
1466
1583
|
}
|
|
1584
|
+
|
|
1467
1585
|
input:not(
|
|
1468
1586
|
[type="submit"],
|
|
1469
1587
|
[type="button"],
|
|
@@ -1475,6 +1593,7 @@ input:not(
|
|
|
1475
1593
|
:where(select, textarea):not([readonly]):focus {
|
|
1476
1594
|
--pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-focus-color);
|
|
1477
1595
|
}
|
|
1596
|
+
|
|
1478
1597
|
input:not([type="submit"], [type="button"], [type="reset"])[disabled],
|
|
1479
1598
|
select[disabled],
|
|
1480
1599
|
textarea[disabled],
|
|
@@ -1484,9 +1603,11 @@ label[aria-disabled="true"],
|
|
|
1484
1603
|
opacity: var(--pico-form-element-disabled-opacity);
|
|
1485
1604
|
pointer-events: none;
|
|
1486
1605
|
}
|
|
1606
|
+
|
|
1487
1607
|
label[aria-disabled="true"] input[disabled] {
|
|
1488
1608
|
opacity: 1;
|
|
1489
1609
|
}
|
|
1610
|
+
|
|
1490
1611
|
:where(input, select, textarea):not(
|
|
1491
1612
|
[type="checkbox"],
|
|
1492
1613
|
[type="radio"],
|
|
@@ -1553,6 +1674,7 @@ label[aria-disabled="true"] input[disabled] {
|
|
|
1553
1674
|
) {
|
|
1554
1675
|
--pico-box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-form-element-invalid-focus-color) !important;
|
|
1555
1676
|
}
|
|
1677
|
+
|
|
1556
1678
|
[dir="rtl"]
|
|
1557
1679
|
:where(input, select, textarea):not([type="checkbox"], [type="radio"]):is(
|
|
1558
1680
|
[aria-invalid],
|
|
@@ -1561,6 +1683,7 @@ label[aria-disabled="true"] input[disabled] {
|
|
|
1561
1683
|
) {
|
|
1562
1684
|
background-position: center left 0.75rem;
|
|
1563
1685
|
}
|
|
1686
|
+
|
|
1564
1687
|
input::placeholder,
|
|
1565
1688
|
input::-webkit-input-placeholder,
|
|
1566
1689
|
textarea::placeholder,
|
|
@@ -1569,11 +1692,13 @@ select:invalid {
|
|
|
1569
1692
|
color: var(--pico-form-element-placeholder-color);
|
|
1570
1693
|
opacity: 1;
|
|
1571
1694
|
}
|
|
1695
|
+
|
|
1572
1696
|
input:not([type="checkbox"], [type="radio"]),
|
|
1573
1697
|
select,
|
|
1574
1698
|
textarea {
|
|
1575
1699
|
margin-bottom: var(--pico-spacing);
|
|
1576
1700
|
}
|
|
1701
|
+
|
|
1577
1702
|
select::-ms-expand {
|
|
1578
1703
|
border: 0;
|
|
1579
1704
|
background-color: transparent;
|
|
@@ -1592,9 +1717,11 @@ select[multiple] option:checked {
|
|
|
1592
1717
|
background: var(--pico-form-element-selected-background-color);
|
|
1593
1718
|
color: var(--pico-form-element-color);
|
|
1594
1719
|
}
|
|
1720
|
+
|
|
1595
1721
|
[dir="rtl"] select:not([multiple], [size]) {
|
|
1596
1722
|
background-position: center left 0.75rem;
|
|
1597
1723
|
}
|
|
1724
|
+
|
|
1598
1725
|
textarea {
|
|
1599
1726
|
display: block;
|
|
1600
1727
|
resize: vertical;
|
|
@@ -1607,6 +1734,7 @@ textarea[aria-invalid] {
|
|
|
1607
1734
|
background-position: top right 0.75rem !important;
|
|
1608
1735
|
background-size: 1rem var(--pico-icon-height) !important;
|
|
1609
1736
|
}
|
|
1737
|
+
|
|
1610
1738
|
:where(input, select, textarea, fieldset, .grid) + small {
|
|
1611
1739
|
display: block;
|
|
1612
1740
|
width: 100%;
|
|
@@ -1620,9 +1748,11 @@ textarea[aria-invalid] {
|
|
|
1620
1748
|
:where(input, select, textarea, fieldset, .grid)[aria-invalid="true"] + small {
|
|
1621
1749
|
color: var(--pico-del-color);
|
|
1622
1750
|
}
|
|
1751
|
+
|
|
1623
1752
|
label > :where(input, select, textarea) {
|
|
1624
1753
|
margin-top: calc(var(--pico-spacing) * 0.25);
|
|
1625
1754
|
}
|
|
1755
|
+
|
|
1626
1756
|
/**
|
|
1627
1757
|
* Checkboxes, Radios and Switches
|
|
1628
1758
|
*/
|
|
@@ -1631,6 +1761,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1631
1761
|
width: fit-content;
|
|
1632
1762
|
cursor: pointer;
|
|
1633
1763
|
}
|
|
1764
|
+
|
|
1634
1765
|
[type="checkbox"],
|
|
1635
1766
|
[type="radio"] {
|
|
1636
1767
|
-webkit-appearance: none;
|
|
@@ -1671,6 +1802,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1671
1802
|
[type="radio"] ~ label:not(:last-of-type) {
|
|
1672
1803
|
margin-inline-end: 1em;
|
|
1673
1804
|
}
|
|
1805
|
+
|
|
1674
1806
|
[type="checkbox"]:indeterminate {
|
|
1675
1807
|
--pico-background-color: var(--pico-primary-background);
|
|
1676
1808
|
--pico-border-color: var(--pico-primary-border);
|
|
@@ -1679,6 +1811,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1679
1811
|
background-size: 0.75em auto;
|
|
1680
1812
|
background-repeat: no-repeat;
|
|
1681
1813
|
}
|
|
1814
|
+
|
|
1682
1815
|
[type="radio"] {
|
|
1683
1816
|
border-radius: 50%;
|
|
1684
1817
|
}
|
|
@@ -1689,6 +1822,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1689
1822
|
border-width: 0.35em;
|
|
1690
1823
|
background-image: none;
|
|
1691
1824
|
}
|
|
1825
|
+
|
|
1692
1826
|
[type="checkbox"][role="switch"] {
|
|
1693
1827
|
--pico-background-color: var(--pico-switch-background-color);
|
|
1694
1828
|
--pico-color: var(--pico-switch-color);
|
|
@@ -1727,6 +1861,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1727
1861
|
[type="checkbox"][role="switch"][disabled] {
|
|
1728
1862
|
--pico-background-color: var(--pico-border-color);
|
|
1729
1863
|
}
|
|
1864
|
+
|
|
1730
1865
|
[type="checkbox"][aria-invalid="false"]:checked,
|
|
1731
1866
|
[type="checkbox"][aria-invalid="false"]:checked:active,
|
|
1732
1867
|
[type="checkbox"][aria-invalid="false"]:checked:focus,
|
|
@@ -1743,6 +1878,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1743
1878
|
[type="checkbox"][role="switch"]:checked:focus[aria-invalid="true"] {
|
|
1744
1879
|
--pico-background-color: var(--pico-form-element-invalid-border-color);
|
|
1745
1880
|
}
|
|
1881
|
+
|
|
1746
1882
|
[type="checkbox"][aria-invalid="false"]:checked,
|
|
1747
1883
|
[type="checkbox"][aria-invalid="false"]:checked:active,
|
|
1748
1884
|
[type="checkbox"][aria-invalid="false"]:checked:focus,
|
|
@@ -1765,6 +1901,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1765
1901
|
[type="checkbox"][role="switch"]:checked:focus[aria-invalid="true"] {
|
|
1766
1902
|
--pico-border-color: var(--pico-form-element-invalid-border-color);
|
|
1767
1903
|
}
|
|
1904
|
+
|
|
1768
1905
|
/**
|
|
1769
1906
|
* Input type color
|
|
1770
1907
|
*/
|
|
@@ -1782,6 +1919,7 @@ label:has([type="checkbox"], [type="radio"]) {
|
|
|
1782
1919
|
border: 0;
|
|
1783
1920
|
border-radius: calc(var(--pico-border-radius) * 0.5);
|
|
1784
1921
|
}
|
|
1922
|
+
|
|
1785
1923
|
/**
|
|
1786
1924
|
* Input type datetime
|
|
1787
1925
|
*/
|
|
@@ -1804,6 +1942,7 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"]):is(
|
|
|
1804
1942
|
input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type="time"] {
|
|
1805
1943
|
background-image: var(--pico-icon-time);
|
|
1806
1944
|
}
|
|
1945
|
+
|
|
1807
1946
|
[type="date"]::-webkit-calendar-picker-indicator,
|
|
1808
1947
|
[type="datetime-local"]::-webkit-calendar-picker-indicator,
|
|
1809
1948
|
[type="month"]::-webkit-calendar-picker-indicator,
|
|
@@ -1814,6 +1953,7 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
|
|
|
1814
1953
|
margin-left: var(--pico-icon-position);
|
|
1815
1954
|
opacity: 0;
|
|
1816
1955
|
}
|
|
1956
|
+
|
|
1817
1957
|
@-moz-document url-prefix() {
|
|
1818
1958
|
[type="date"],
|
|
1819
1959
|
[type="datetime-local"],
|
|
@@ -1828,6 +1968,7 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
|
|
|
1828
1968
|
:is([type="date"], [type="datetime-local"], [type="month"], [type="time"], [type="week"]) {
|
|
1829
1969
|
text-align: end;
|
|
1830
1970
|
}
|
|
1971
|
+
|
|
1831
1972
|
/**
|
|
1832
1973
|
* Input type file
|
|
1833
1974
|
*/
|
|
@@ -1854,6 +1995,7 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
|
|
|
1854
1995
|
var(--pico-button-hover-box-shadow, 0 0 0 rgba(0, 0, 0, 0)),
|
|
1855
1996
|
0 0 0 var(--pico-outline-width) var(--pico-secondary-focus);
|
|
1856
1997
|
}
|
|
1998
|
+
|
|
1857
1999
|
/**
|
|
1858
2000
|
* Input type range
|
|
1859
2001
|
*/
|
|
@@ -1963,6 +2105,7 @@ input:not([type="checkbox"], [type="radio"], [type="range"], [type="file"])[type
|
|
|
1963
2105
|
[type="range"]:active::-ms-thumb {
|
|
1964
2106
|
transform: scale(1.25);
|
|
1965
2107
|
}
|
|
2108
|
+
|
|
1966
2109
|
/**
|
|
1967
2110
|
* Input type search
|
|
1968
2111
|
*/
|
|
@@ -2000,6 +2143,7 @@ input:not(
|
|
|
2000
2143
|
)[type="search"][aria-invalid="true"] {
|
|
2001
2144
|
background-image: var(--pico-icon-search), var(--pico-icon-invalid);
|
|
2002
2145
|
}
|
|
2146
|
+
|
|
2003
2147
|
[dir="rtl"]
|
|
2004
2148
|
:where(input):not(
|
|
2005
2149
|
[type="checkbox"],
|
|
@@ -2086,6 +2230,7 @@ details[open] > summary:not([role]):not(:focus) {
|
|
|
2086
2230
|
details[open] > summary::after {
|
|
2087
2231
|
transform: rotate(0);
|
|
2088
2232
|
}
|
|
2233
|
+
|
|
2089
2234
|
[dir="rtl"] details summary {
|
|
2090
2235
|
text-align: end;
|
|
2091
2236
|
}
|
|
@@ -2093,6 +2238,7 @@ details[open] > summary::after {
|
|
|
2093
2238
|
float: left;
|
|
2094
2239
|
background-position: left center;
|
|
2095
2240
|
}
|
|
2241
|
+
|
|
2096
2242
|
/**
|
|
2097
2243
|
* Card (<article>)
|
|
2098
2244
|
*/
|
|
@@ -2124,6 +2270,7 @@ article > footer {
|
|
|
2124
2270
|
border-bottom-right-radius: var(--pico-border-radius);
|
|
2125
2271
|
border-bottom-left-radius: var(--pico-border-radius);
|
|
2126
2272
|
}
|
|
2273
|
+
|
|
2127
2274
|
/**
|
|
2128
2275
|
* Dropdown (details.dropdown)
|
|
2129
2276
|
*/
|
|
@@ -2146,9 +2293,11 @@ details.dropdown > a::after {
|
|
|
2146
2293
|
background-repeat: no-repeat;
|
|
2147
2294
|
content: "";
|
|
2148
2295
|
}
|
|
2296
|
+
|
|
2149
2297
|
nav details.dropdown {
|
|
2150
2298
|
margin-bottom: 0;
|
|
2151
2299
|
}
|
|
2300
|
+
|
|
2152
2301
|
details.dropdown > summary:not([role]) {
|
|
2153
2302
|
height: calc(
|
|
2154
2303
|
1rem * var(--pico-line-height) + var(--pico-form-element-spacing-vertical) * 2 +
|
|
@@ -2191,6 +2340,7 @@ details.dropdown > summary:not([role])[aria-invalid="true"] {
|
|
|
2191
2340
|
--pico-form-element-active-border-color: var(--pico-form-element-invalid-focus-color);
|
|
2192
2341
|
--pico-form-element-focus-color: var(--pico-form-element-invalid-focus-color);
|
|
2193
2342
|
}
|
|
2343
|
+
|
|
2194
2344
|
nav details.dropdown {
|
|
2195
2345
|
display: inline-block;
|
|
2196
2346
|
margin: calc(var(--pico-nav-element-spacing-vertical) * -1) 0;
|
|
@@ -2206,6 +2356,7 @@ nav details.dropdown > summary:not([role]) {
|
|
|
2206
2356
|
nav details.dropdown > summary:not([role]):focus-visible {
|
|
2207
2357
|
box-shadow: 0 0 0 var(--pico-outline-width) var(--pico-primary-focus);
|
|
2208
2358
|
}
|
|
2359
|
+
|
|
2209
2360
|
details.dropdown > summary + ul {
|
|
2210
2361
|
display: flex;
|
|
2211
2362
|
z-index: 99;
|
|
@@ -2271,9 +2422,11 @@ details.dropdown > summary + ul li label {
|
|
|
2271
2422
|
details.dropdown > summary + ul li:has(label):hover {
|
|
2272
2423
|
background-color: var(--pico-dropdown-hover-background-color);
|
|
2273
2424
|
}
|
|
2425
|
+
|
|
2274
2426
|
details.dropdown[open] > summary {
|
|
2275
2427
|
margin-bottom: 0;
|
|
2276
2428
|
}
|
|
2429
|
+
|
|
2277
2430
|
details.dropdown[open] > summary + ul {
|
|
2278
2431
|
transform: scaleY(1);
|
|
2279
2432
|
opacity: 1;
|
|
@@ -2281,6 +2434,7 @@ details.dropdown[open] > summary + ul {
|
|
|
2281
2434
|
opacity var(--pico-transition),
|
|
2282
2435
|
transform 0s ease-in-out 0s;
|
|
2283
2436
|
}
|
|
2437
|
+
|
|
2284
2438
|
details.dropdown[open] > summary::before {
|
|
2285
2439
|
display: block;
|
|
2286
2440
|
z-index: 1;
|
|
@@ -2292,9 +2446,11 @@ details.dropdown[open] > summary::before {
|
|
|
2292
2446
|
content: "";
|
|
2293
2447
|
cursor: default;
|
|
2294
2448
|
}
|
|
2449
|
+
|
|
2295
2450
|
label > details.dropdown {
|
|
2296
2451
|
margin-top: calc(var(--pico-spacing) * 0.25);
|
|
2297
2452
|
}
|
|
2453
|
+
|
|
2298
2454
|
/**
|
|
2299
2455
|
* Group ([role="group"], [role="search"])
|
|
2300
2456
|
*/
|
|
@@ -2453,6 +2609,7 @@ label > details.dropdown {
|
|
|
2453
2609
|
box-shadow: none;
|
|
2454
2610
|
}
|
|
2455
2611
|
}
|
|
2612
|
+
|
|
2456
2613
|
[role="search"] > *:first-child {
|
|
2457
2614
|
border-top-left-radius: 5rem;
|
|
2458
2615
|
border-bottom-left-radius: 5rem;
|
|
@@ -2461,6 +2618,7 @@ label > details.dropdown {
|
|
|
2461
2618
|
border-top-right-radius: 5rem;
|
|
2462
2619
|
border-bottom-right-radius: 5rem;
|
|
2463
2620
|
}
|
|
2621
|
+
|
|
2464
2622
|
/**
|
|
2465
2623
|
* Loading ([aria-busy=true])
|
|
2466
2624
|
*/
|
|
@@ -2483,6 +2641,7 @@ label > details.dropdown {
|
|
|
2483
2641
|
[aria-busy="true"]:not(input, select, textarea, html, form):empty {
|
|
2484
2642
|
text-align: center;
|
|
2485
2643
|
}
|
|
2644
|
+
|
|
2486
2645
|
button[aria-busy="true"],
|
|
2487
2646
|
[type="submit"][aria-busy="true"],
|
|
2488
2647
|
[type="button"][aria-busy="true"],
|
|
@@ -2491,13 +2650,15 @@ button[aria-busy="true"],
|
|
|
2491
2650
|
a[aria-busy="true"] {
|
|
2492
2651
|
pointer-events: none;
|
|
2493
2652
|
}
|
|
2653
|
+
|
|
2494
2654
|
/**
|
|
2495
2655
|
* Modal (<dialog>)
|
|
2496
2656
|
*/
|
|
2497
|
-
:
|
|
2657
|
+
:scope,
|
|
2498
2658
|
:host {
|
|
2499
2659
|
--pico-scrollbar-width: 0px;
|
|
2500
2660
|
}
|
|
2661
|
+
|
|
2501
2662
|
dialog {
|
|
2502
2663
|
display: flex;
|
|
2503
2664
|
z-index: 999;
|
|
@@ -2587,6 +2748,7 @@ dialog:not([open]),
|
|
|
2587
2748
|
dialog[open="false"] {
|
|
2588
2749
|
display: none;
|
|
2589
2750
|
}
|
|
2751
|
+
|
|
2590
2752
|
.modal-is-open {
|
|
2591
2753
|
padding-right: var(--pico-scrollbar-width, 0px);
|
|
2592
2754
|
overflow: hidden;
|
|
@@ -2597,6 +2759,7 @@ dialog[open="false"] {
|
|
|
2597
2759
|
pointer-events: auto;
|
|
2598
2760
|
touch-action: auto;
|
|
2599
2761
|
}
|
|
2762
|
+
|
|
2600
2763
|
:where(.modal-is-opening, .modal-is-closing) dialog,
|
|
2601
2764
|
:where(.modal-is-opening, .modal-is-closing) dialog > article {
|
|
2602
2765
|
animation-duration: 0.2s;
|
|
@@ -2611,11 +2774,13 @@ dialog[open="false"] {
|
|
|
2611
2774
|
animation-delay: 0.2s;
|
|
2612
2775
|
animation-name: modal;
|
|
2613
2776
|
}
|
|
2777
|
+
|
|
2614
2778
|
.modal-is-closing dialog,
|
|
2615
2779
|
.modal-is-closing dialog > article {
|
|
2616
2780
|
animation-delay: 0s;
|
|
2617
2781
|
animation-direction: reverse;
|
|
2618
2782
|
}
|
|
2783
|
+
|
|
2619
2784
|
@keyframes modal-overlay {
|
|
2620
2785
|
from {
|
|
2621
2786
|
backdrop-filter: none;
|
|
@@ -2635,10 +2800,12 @@ dialog[open="false"] {
|
|
|
2635
2800
|
float: left;
|
|
2636
2801
|
content: "";
|
|
2637
2802
|
}
|
|
2803
|
+
|
|
2638
2804
|
nav,
|
|
2639
2805
|
nav ul {
|
|
2640
2806
|
display: flex;
|
|
2641
2807
|
}
|
|
2808
|
+
|
|
2642
2809
|
nav {
|
|
2643
2810
|
justify-content: space-between;
|
|
2644
2811
|
overflow: visible;
|
|
@@ -2713,6 +2880,7 @@ nav[aria-label="breadcrumb"] a[aria-current]:not([aria-current="false"]) {
|
|
|
2713
2880
|
text-decoration: none;
|
|
2714
2881
|
pointer-events: none;
|
|
2715
2882
|
}
|
|
2883
|
+
|
|
2716
2884
|
aside nav,
|
|
2717
2885
|
aside ol,
|
|
2718
2886
|
aside ul,
|
|
@@ -2729,9 +2897,11 @@ aside li a {
|
|
|
2729
2897
|
aside li [role="button"] {
|
|
2730
2898
|
margin: inherit;
|
|
2731
2899
|
}
|
|
2900
|
+
|
|
2732
2901
|
[dir="rtl"] nav[aria-label="breadcrumb"] ul li:not(:last-child)::after {
|
|
2733
2902
|
content: "\\";
|
|
2734
2903
|
}
|
|
2904
|
+
|
|
2735
2905
|
/**
|
|
2736
2906
|
* Progress
|
|
2737
2907
|
*/
|
|
@@ -2739,6 +2909,7 @@ progress {
|
|
|
2739
2909
|
display: inline-block;
|
|
2740
2910
|
vertical-align: baseline;
|
|
2741
2911
|
}
|
|
2912
|
+
|
|
2742
2913
|
progress {
|
|
2743
2914
|
-webkit-appearance: none;
|
|
2744
2915
|
-moz-appearance: none;
|
|
@@ -2783,11 +2954,13 @@ progress::-moz-progress-bar {
|
|
|
2783
2954
|
background-color: transparent;
|
|
2784
2955
|
}
|
|
2785
2956
|
}
|
|
2957
|
+
|
|
2786
2958
|
@media (prefers-reduced-motion: no-preference) {
|
|
2787
2959
|
[dir="rtl"] progress:indeterminate {
|
|
2788
2960
|
animation-direction: reverse;
|
|
2789
2961
|
}
|
|
2790
2962
|
}
|
|
2963
|
+
|
|
2791
2964
|
@keyframes progress-indeterminate {
|
|
2792
2965
|
0% {
|
|
2793
2966
|
background-position: 200% 0;
|
|
@@ -2969,17 +3142,21 @@ progress::-moz-progress-bar {
|
|
|
2969
3142
|
[aria-controls] {
|
|
2970
3143
|
cursor: pointer;
|
|
2971
3144
|
}
|
|
3145
|
+
|
|
2972
3146
|
[aria-disabled="true"],
|
|
2973
3147
|
[disabled] {
|
|
2974
3148
|
cursor: not-allowed;
|
|
2975
3149
|
}
|
|
3150
|
+
|
|
2976
3151
|
[aria-hidden="false"][hidden] {
|
|
2977
3152
|
display: initial;
|
|
2978
3153
|
}
|
|
3154
|
+
|
|
2979
3155
|
[aria-hidden="false"][hidden]:not(:focus) {
|
|
2980
3156
|
clip: rect(0, 0, 0, 0);
|
|
2981
3157
|
position: absolute;
|
|
2982
3158
|
}
|
|
3159
|
+
|
|
2983
3160
|
a,
|
|
2984
3161
|
area,
|
|
2985
3162
|
button,
|
|
@@ -2991,9 +3168,11 @@ textarea,
|
|
|
2991
3168
|
[tabindex] {
|
|
2992
3169
|
-ms-touch-action: manipulation;
|
|
2993
3170
|
}
|
|
3171
|
+
|
|
2994
3172
|
[dir="rtl"] {
|
|
2995
3173
|
direction: rtl;
|
|
2996
3174
|
}
|
|
3175
|
+
|
|
2997
3176
|
/**
|
|
2998
3177
|
* Reduce Motion Features
|
|
2999
3178
|
*/
|
|
@@ -3010,53 +3189,37 @@ textarea,
|
|
|
3010
3189
|
transition-duration: 0s !important;
|
|
3011
3190
|
}
|
|
3012
3191
|
}
|
|
3013
|
-
|
|
3014
|
-
|
|
3015
|
-
|
|
3016
|
-
|
|
3017
|
-
|
|
3018
|
-
|
|
3019
|
-
|
|
3020
|
-
`.columns` automatically creates columns with at least 30 characters each:
|
|
3021
|
-
|
|
3022
|
-
<article class="columns">
|
|
3023
|
-
<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p>
|
|
3024
|
-
</article>
|
|
3025
|
-
|
|
3026
|
-
The smaller the font size, the more columns will be created:
|
|
3027
|
-
|
|
3028
|
-
<article class="columns" style="font-size: 65%">
|
|
3029
|
-
<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p>
|
|
3030
|
-
</article>
|
|
3192
|
+
/*!
|
|
3193
|
+
* Blades CSS standalone kit v3 🥷
|
|
3194
|
+
* Copyright 2026 (https://blades.ninja/css/standalone/)
|
|
3195
|
+
* Licensed under MIT
|
|
3196
|
+
*/
|
|
3197
|
+
/*\3c !--section:code-->```css */
|
|
3031
3198
|
|
|
3032
|
-
|
|
3199
|
+
/* Follows https://github.com/picocss/pico/blob/main/scss/_index.scss */
|
|
3033
3200
|
|
|
3034
|
-
|
|
3035
|
-
|
|
3036
|
-
|
|
3037
|
-
|
|
3038
|
-
|
|
3201
|
+
:scope,
|
|
3202
|
+
:host {
|
|
3203
|
+
/**
|
|
3204
|
+
* Design Tokens !!! NAMING NOT FINALIZED YET !!!
|
|
3205
|
+
* `--in-pico: *` props below are for reference only (not to be used)
|
|
3206
|
+
*/
|
|
3207
|
+
--blades-token-primary: var(--pico-primary, dodgerblue);
|
|
3208
|
+
--in-pico: #01aaff;
|
|
3209
|
+
--blades-token-secondary: var(--pico-secondary, lightslategray);
|
|
3210
|
+
--in-pico: #969eaf;
|
|
3211
|
+
|
|
3212
|
+
/**
|
|
3213
|
+
* Inherited Variables
|
|
3214
|
+
*/
|
|
3215
|
+
--blades-timeline-border-color: color-mix(
|
|
3216
|
+
in srgb,
|
|
3217
|
+
var(--blades-token-secondary) 50%,
|
|
3218
|
+
transparent
|
|
3219
|
+
);
|
|
3039
3220
|
}
|
|
3040
|
-
/* Avoid breaking inside elements, such as nested lists */
|
|
3041
|
-
.columns > * {
|
|
3042
|
-
-moz-column-break-inside: avoid;
|
|
3043
|
-
break-inside: avoid;
|
|
3044
|
-
}
|
|
3045
|
-
/*```
|
|
3046
|
-
\3c !--section:docs,jump-->
|
|
3047
|
-
|
|
3048
|
-
### Jump to top
|
|
3049
3221
|
|
|
3050
|
-
|
|
3051
|
-
```css */
|
|
3052
|
-
[data-jump-to="top"] {
|
|
3053
|
-
position: fixed;
|
|
3054
|
-
right: 0;
|
|
3055
|
-
bottom: 0;
|
|
3056
|
-
padding-top: 50vh;
|
|
3057
|
-
}
|
|
3058
|
-
/*```
|
|
3059
|
-
\3c !--section--> */
|
|
3222
|
+
/* Layout */
|
|
3060
3223
|
/*
|
|
3061
3224
|
\3c !--section:code-->
|
|
3062
3225
|
```css */
|
|
@@ -3105,11 +3268,14 @@ How it works:
|
|
|
3105
3268
|
}
|
|
3106
3269
|
/* Max out the width of the element */
|
|
3107
3270
|
.breakout > *.breakout-item-max, .breakout-all > *.breakout-item-max {
|
|
3108
|
-
width: min(125%, 100dvw) !important;
|
|
3271
|
+
width: min(125%, 100dvw) !important;
|
|
3272
|
+
/* !important is for cases like figure.breakout-item-max @TODO */
|
|
3109
3273
|
}
|
|
3274
|
+
|
|
3110
3275
|
.breakout-all > *:is(h2, h3, h4, h5, h6, hr):not([class]) {
|
|
3111
3276
|
position: relative;
|
|
3112
3277
|
}
|
|
3278
|
+
|
|
3113
3279
|
.breakout-all > *:is(h2, h3, h4, h5, h6, hr):not([class])::before {
|
|
3114
3280
|
display: block;
|
|
3115
3281
|
position: absolute;
|
|
@@ -3117,6 +3283,7 @@ How it works:
|
|
|
3117
3283
|
content: "";
|
|
3118
3284
|
opacity: 12.5%;
|
|
3119
3285
|
}
|
|
3286
|
+
|
|
3120
3287
|
.breakout-all > *:is(h2, h3, h4, h5, h6):not([class])::before {
|
|
3121
3288
|
top: 50%;
|
|
3122
3289
|
right: 100%;
|
|
@@ -3126,15 +3293,19 @@ How it works:
|
|
|
3126
3293
|
transform: translateY(-50%);
|
|
3127
3294
|
background: linear-gradient(to left, gray, transparent);
|
|
3128
3295
|
}
|
|
3296
|
+
|
|
3129
3297
|
/* @TODO: add to tricks-wiki why `*` works here, but `&` fails */
|
|
3298
|
+
|
|
3130
3299
|
.breakout-all > *:is(h2, h3, h4, h5, h6):not([class]):where(hr + *)::before {
|
|
3131
3300
|
display: none !important;
|
|
3132
3301
|
}
|
|
3302
|
+
|
|
3133
3303
|
.breakout-all > *:is(hr) {
|
|
3134
3304
|
height: 0.5rem;
|
|
3135
3305
|
overflow: visible;
|
|
3136
3306
|
border: none;
|
|
3137
3307
|
}
|
|
3308
|
+
|
|
3138
3309
|
.breakout-all > *:is(hr)::before {
|
|
3139
3310
|
left: 50%;
|
|
3140
3311
|
width: 100dvw;
|
|
@@ -3142,13 +3313,9 @@ How it works:
|
|
|
3142
3313
|
transform: translateX(-50%);
|
|
3143
3314
|
}
|
|
3144
3315
|
/*```
|
|
3145
|
-
\3c !--section:summary-->
|
|
3146
|
-
|
|
3147
|
-
The `.breakout` layout allows images, tables, and other figures to automatically extend or bleed beyond their parent container’s width.
|
|
3148
|
-
|
|
3149
3316
|
\3c !--section:docs-->
|
|
3150
3317
|
|
|
3151
|
-
|
|
3318
|
+
The `.breakout` layout allows images, tables, and other figures to automatically extend or bleed beyond their parent container’s width.
|
|
3152
3319
|
|
|
3153
3320
|
Break out a wide image from the text flow:
|
|
3154
3321
|
|
|
@@ -3182,16 +3349,53 @@ Or anything else:
|
|
|
3182
3349
|
<hr>
|
|
3183
3350
|
|
|
3184
3351
|
\3c !--section--> */
|
|
3352
|
+
/*\3c !--section:docs-->
|
|
3353
|
+
|
|
3354
|
+
`.columns` automatically creates columns with at least 30 characters each:
|
|
3355
|
+
|
|
3356
|
+
<article class="columns">
|
|
3357
|
+
<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p>
|
|
3358
|
+
</article>
|
|
3359
|
+
|
|
3360
|
+
The smaller the font size, the more columns will be created:
|
|
3361
|
+
|
|
3362
|
+
<article class="columns" style="font-size: 65%">
|
|
3363
|
+
<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p>
|
|
3364
|
+
</article>
|
|
3365
|
+
|
|
3366
|
+
Useful for tables of contents and long lists.
|
|
3367
|
+
|
|
3368
|
+
\3c !--section:code-->
|
|
3369
|
+
```css */
|
|
3370
|
+
.columns {
|
|
3371
|
+
-moz-columns: 25ch auto;
|
|
3372
|
+
columns: 25ch auto; /* common container 65ch / 25ch => 2 columns max, with a buffer for list paddings */
|
|
3373
|
+
}
|
|
3374
|
+
/* Avoid breaking inside elements, such as nested lists */
|
|
3375
|
+
.columns > * {
|
|
3376
|
+
-moz-column-break-inside: avoid;
|
|
3377
|
+
break-inside: avoid;
|
|
3378
|
+
}
|
|
3379
|
+
/*```\3c !--section:docs-->
|
|
3380
|
+
|
|
3381
|
+
`<a href="#top">` is automatically fixed to the bottom-right corner with extra top padding for easier clicking:
|
|
3382
|
+
```css */
|
|
3383
|
+
[href="#top"] {
|
|
3384
|
+
position: fixed;
|
|
3385
|
+
right: 0;
|
|
3386
|
+
bottom: 0;
|
|
3387
|
+
padding-top: 50vh;
|
|
3388
|
+
}
|
|
3389
|
+
|
|
3185
3390
|
/* Content */
|
|
3186
|
-
|
|
3187
|
-
\3c !--section:docs,h-anchor-->
|
|
3391
|
+
/*\3c !--section:docs-->
|
|
3188
3392
|
|
|
3189
|
-
|
|
3393
|
+
## Heading anchors
|
|
3190
3394
|
|
|
3191
3395
|
Links with `href="#..."` inside headings are automatically displayed as anchors:
|
|
3192
3396
|
|
|
3193
3397
|
<article>
|
|
3194
|
-
<h2 style="margin: 0 0 0 1.5rem">Heading with anchor <a
|
|
3398
|
+
<h2 style="margin: 0 0 0 1.5rem">Heading with anchor <a aria-hidden="true" style="visibility: visible">#</a></h2>
|
|
3195
3399
|
</article>
|
|
3196
3400
|
|
|
3197
3401
|
How it works:
|
|
@@ -3219,13 +3423,9 @@ h1 a[aria-hidden="true"], h2 a[aria-hidden="true"], h3 a[aria-hidden="true"], h4
|
|
|
3219
3423
|
visibility: visible;
|
|
3220
3424
|
}
|
|
3221
3425
|
}
|
|
3222
|
-
|
|
3223
|
-
|
|
3224
|
-
**PRO** example of automatic anchors for `11ty`+`markdown-it-anchor`: https://github.com/anyblades/eleventy-blades/blob/main/src/eleventy.config.js
|
|
3225
|
-
|
|
3226
|
-
\3c !--section:docs,list-->
|
|
3426
|
+
/*\3c !--section:docs-->
|
|
3227
3427
|
|
|
3228
|
-
|
|
3428
|
+
## Custom markers
|
|
3229
3429
|
|
|
3230
3430
|
Customize markers using inline `style="--list-marker:..."` on `<ul>/<ol>` or even individual `<li>`:
|
|
3231
3431
|
|
|
@@ -3258,7 +3458,7 @@ ul li[data-marker]::marker, ol li[data-marker]::marker {
|
|
|
3258
3458
|
}
|
|
3259
3459
|
/*```
|
|
3260
3460
|
|
|
3261
|
-
|
|
3461
|
+
## Markerless
|
|
3262
3462
|
|
|
3263
3463
|
`.markerless` removes markers and reduces padding:
|
|
3264
3464
|
|
|
@@ -3281,7 +3481,7 @@ ul.markerless li, ol.markerless li {
|
|
|
3281
3481
|
}
|
|
3282
3482
|
/*```
|
|
3283
3483
|
|
|
3284
|
-
|
|
3484
|
+
## Unlist
|
|
3285
3485
|
|
|
3286
3486
|
`.unlist` removes list styling at all:
|
|
3287
3487
|
|
|
@@ -3309,71 +3509,9 @@ ul.unlist,
|
|
|
3309
3509
|
ul.unlist > li, ul.unlist-all > li, .unlist-all ul > li, ol.unlist > li, ol.unlist-all > li, .unlist-all ol > li {
|
|
3310
3510
|
list-style: none;
|
|
3311
3511
|
}
|
|
3312
|
-
|
|
3313
|
-
\3c !--section--> */
|
|
3314
|
-
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_link.scss
|
|
3315
|
-
\3c !--section:code-->
|
|
3316
|
-
```css */
|
|
3317
|
-
/* Use inline flex only if link contains an icon */
|
|
3318
|
-
a:not(.does-not-exist):has(> i) {
|
|
3319
|
-
display: inline-flex;
|
|
3320
|
-
overflow-y: clip; /* to work in pair with text-underline-offset in Safari */
|
|
3321
|
-
gap: 0.375ch; /* =3/8 */
|
|
3322
|
-
text-wrap: balance;
|
|
3323
|
-
}
|
|
3324
|
-
a:not(.does-not-exist) > i {
|
|
3325
|
-
float: left; /* ✅ Chrome ❌ Safari */
|
|
3326
|
-
font-style: normal;
|
|
3327
|
-
text-underline-offset: -2em; /* ❌ Chrome ✅ Safari - to clip it with overflow-y */
|
|
3328
|
-
}
|
|
3329
|
-
/* Favicons */
|
|
3330
|
-
a:not(.does-not-exist) > i > img {
|
|
3331
|
-
display: inline-block; /* for Tailwind CSS Typography */
|
|
3332
|
-
max-width: none; /* to keep ratio safe */
|
|
3333
|
-
height: 1.25em;
|
|
3334
|
-
margin-block-start: calc(-0.25em / 2);
|
|
3335
|
-
}
|
|
3336
|
-
a:not(.does-not-exist) > i[class^="fa-"],
|
|
3337
|
-
a:not(.does-not-exist) > i[class*=" fa-"] {
|
|
3338
|
-
line-height: inherit;
|
|
3339
|
-
--fa-width: auto;
|
|
3340
|
-
}
|
|
3341
|
-
/* Font Awesome */
|
|
3342
|
-
a:not(.does-not-exist) > i.fa-lg {
|
|
3343
|
-
line-height: normal;
|
|
3344
|
-
}
|
|
3345
|
-
/*```
|
|
3346
|
-
\3c !--section:summary-->
|
|
3347
|
-
|
|
3348
|
-
Use *Bl*ades `<i>`-helper to wrap emojis, favicons, or simply drop Font Awesome icons inside links.
|
|
3349
|
-
It automatically handles sizing and alignment while preventing underline on icons.
|
|
3350
|
-
|
|
3351
|
-
\3c !--section:docs-->
|
|
3352
|
-
|
|
3353
|
-
<article class="breakout-item">
|
|
3354
|
-
|
|
3355
|
-
| Use `<i>`-helper with | Clean HTML without `<span>ning` |
|
|
3356
|
-
| ------------------------------------------------------------------------------------- | ------------------------------------ |
|
|
3357
|
-
| [<i>🥷</i> Emojis](#) | `<a><i>🥷</i> Text</a>` |
|
|
3358
|
-
| [<i></i> Favicons](#) | `<a><i><img src="..."></i> Text</a>` |
|
|
3359
|
-
| [<i class="fa-brands fa-github fa-lg"></i> Font Awesome icons](#) | `<a><i class="fa-..."></i> Text</a>` |
|
|
3360
|
-
</article>
|
|
3361
|
-
|
|
3362
|
-
Or even for:
|
|
3363
|
-
|
|
3364
|
-
<article>
|
|
3365
|
-
<a href="#" style="margin: 0 0 0 1rem"><i>🥷</i> very-very-very-very-very-<br>long-multiline-links</a>
|
|
3366
|
-
</article>
|
|
3367
|
-
|
|
3368
|
-
How we made it: https://codepen.io/editor/anydigital/pen/019d2b94-5616-75dc-a23e-e111869d5237
|
|
3369
|
-
|
|
3370
|
-
**PRO** example of automatic favicons for `11ty`: https://blades.ninja/build-awesome-11ty/processors/#auto-link-favicons
|
|
3371
|
-
|
|
3372
|
-
\3c !--section--> */
|
|
3373
|
-
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_table.scss
|
|
3374
|
-
\3c !--section:docs-->
|
|
3512
|
+
/*\3c !--section:docs-->
|
|
3375
3513
|
|
|
3376
|
-
|
|
3514
|
+
## Column expanders
|
|
3377
3515
|
|
|
3378
3516
|
Place `<hr>` element inside `<th>` column to expand it horizontally:
|
|
3379
3517
|
|
|
@@ -3406,7 +3544,7 @@ th hr.x2 {
|
|
|
3406
3544
|
}
|
|
3407
3545
|
/*```
|
|
3408
3546
|
|
|
3409
|
-
|
|
3547
|
+
## Borderless table
|
|
3410
3548
|
|
|
3411
3549
|
`.borderless` removes all default borders:
|
|
3412
3550
|
|
|
@@ -3419,9 +3557,7 @@ th hr.x2 {
|
|
|
3419
3557
|
{.borderless}
|
|
3420
3558
|
</article>
|
|
3421
3559
|
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
\3c !--section--> */
|
|
3560
|
+
\3c !--section-->*/
|
|
3425
3561
|
table.borderless th,
|
|
3426
3562
|
table.borderless td {
|
|
3427
3563
|
border: none;
|
|
@@ -3483,27 +3619,28 @@ Living examples: \3c !--A-Z-->
|
|
|
3483
3619
|
- https://blades.ninja/ssg/
|
|
3484
3620
|
|
|
3485
3621
|
\3c !--section--> */
|
|
3486
|
-
|
|
3487
|
-
\3c !--section:docs-->
|
|
3488
|
-
|
|
3489
|
-
### Code
|
|
3622
|
+
/*\3c !--section:docs-->
|
|
3490
3623
|
|
|
3491
3624
|
The `<pre><code>` blocks are Prism-compatible and support captions via `data-caption="..."` attribute:
|
|
3492
3625
|
|
|
3493
|
-
```treeview {data-caption="Blades CSS:"}
|
|
3494
|
-
|
|
3495
|
-
├── blades.
|
|
3496
|
-
├── blades.
|
|
3497
|
-
|
|
3626
|
+
```treeview {data-caption="Blades CSS ships:"}
|
|
3627
|
+
/css/
|
|
3628
|
+
├── blades.css (Pico CSS successor)
|
|
3629
|
+
├── blades.standalone.css (framework-agnostic)
|
|
3630
|
+
├── ninja.css (experimental add-ons)
|
|
3631
|
+
└── pico.css (underlying fork)
|
|
3498
3632
|
```
|
|
3499
|
-
|
|
3633
|
+
|
|
3634
|
+
\3c !--section:code-->
|
|
3500
3635
|
```css */
|
|
3501
3636
|
@media (width < 768px) {
|
|
3502
3637
|
pre {
|
|
3503
3638
|
border-radius: 0
|
|
3504
3639
|
}
|
|
3505
3640
|
}
|
|
3641
|
+
|
|
3506
3642
|
/* Code block caption via data-attr (to display filename, etc.) */
|
|
3643
|
+
|
|
3507
3644
|
code[data-caption]::before {
|
|
3508
3645
|
display: block;
|
|
3509
3646
|
margin-bottom: 1rem;
|
|
@@ -3511,27 +3648,45 @@ code[data-caption]::before {
|
|
|
3511
3648
|
font-style: italic;
|
|
3512
3649
|
opacity: 50%;
|
|
3513
3650
|
}
|
|
3514
|
-
|
|
3515
|
-
\3c !--section--> */
|
|
3651
|
+
|
|
3516
3652
|
/* Forms */
|
|
3517
|
-
|
|
3518
|
-
|
|
3653
|
+
/*!
|
|
3654
|
+
* Float Label CSS v2 by Blades CSS 🥷🏷️
|
|
3655
|
+
* Copyright 2016–2026 (https://blades.ninja/css/float-label/)
|
|
3656
|
+
* Licensed under MIT
|
|
3657
|
+
*/
|
|
3658
|
+
/*\3c !--section:docs-->
|
|
3519
3659
|
|
|
3520
3660
|
First, we target either:
|
|
3521
3661
|
1. `<label>` which `:has` inner form inputs (classless approach)
|
|
3522
3662
|
2. or explicit `.has-float-label` class (explicit approach)
|
|
3663
|
+
|
|
3523
3664
|
```css */
|
|
3524
|
-
label:has(> span):has(
|
|
3665
|
+
label:has(> span):has(
|
|
3666
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3667
|
+
textarea,
|
|
3668
|
+
select
|
|
3669
|
+
),
|
|
3525
3670
|
.has-float-label {
|
|
3526
3671
|
display: block;
|
|
3527
3672
|
position: relative;
|
|
3673
|
+
/*```
|
|
3674
|
+
Finally, we detect if placeholder is shown, but not in focus. That means we can safely hide it, and enlarge the float label instead:
|
|
3675
|
+
```css */
|
|
3528
3676
|
}
|
|
3529
|
-
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
|
|
3533
|
-
|
|
3534
|
-
|
|
3677
|
+
/*```
|
|
3678
|
+
Then, we define the default/fallback state (when the float label should be minimized):
|
|
3679
|
+
```css */
|
|
3680
|
+
label:has(> span):has(
|
|
3681
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3682
|
+
textarea,
|
|
3683
|
+
select
|
|
3684
|
+
) > span,
|
|
3685
|
+
label:has(> span):has(
|
|
3686
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3687
|
+
textarea,
|
|
3688
|
+
select
|
|
3689
|
+
) label,
|
|
3535
3690
|
.has-float-label > span,
|
|
3536
3691
|
.has-float-label label {
|
|
3537
3692
|
position: absolute;
|
|
@@ -3540,37 +3695,120 @@ label:has(> span):has(input:not([type="checkbox"], [type="radio"], [type="range"
|
|
|
3540
3695
|
font-size: 75%;
|
|
3541
3696
|
cursor: text;
|
|
3542
3697
|
}
|
|
3543
|
-
|
|
3544
|
-
|
|
3545
|
-
|
|
3546
|
-
|
|
3547
|
-
|
|
3698
|
+
label:has(> span):has(
|
|
3699
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3700
|
+
textarea,
|
|
3701
|
+
select
|
|
3702
|
+
) *:placeholder-shown:not(:focus)::-moz-placeholder, .has-float-label *:placeholder-shown:not(:focus)::-moz-placeholder {
|
|
3548
3703
|
opacity: 0;
|
|
3549
3704
|
}
|
|
3550
|
-
label:has(> span):has(
|
|
3705
|
+
label:has(> span):has(
|
|
3706
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3707
|
+
textarea,
|
|
3708
|
+
select
|
|
3709
|
+
) *:-moz-placeholder:not(:focus)::placeholder, .has-float-label *:-moz-placeholder:not(:focus)::placeholder {
|
|
3551
3710
|
opacity: 0;
|
|
3552
3711
|
}
|
|
3553
|
-
label:has(> span):has(
|
|
3712
|
+
label:has(> span):has(
|
|
3713
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3714
|
+
textarea,
|
|
3715
|
+
select
|
|
3716
|
+
) *:placeholder-shown:not(:focus)::placeholder, .has-float-label *:placeholder-shown:not(:focus)::placeholder {
|
|
3554
3717
|
opacity: 0;
|
|
3555
3718
|
}
|
|
3556
|
-
label:has(> span):has(
|
|
3719
|
+
label:has(> span):has(
|
|
3720
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3721
|
+
textarea,
|
|
3722
|
+
select
|
|
3723
|
+
):has(*:-moz-placeholder:not(:focus)) > span, label:has(> span):has(
|
|
3724
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3725
|
+
textarea,
|
|
3726
|
+
select
|
|
3727
|
+
):has(*:-moz-placeholder:not(:focus)) label, .has-float-label:has(*:-moz-placeholder:not(:focus)) > span, .has-float-label:has(*:-moz-placeholder:not(:focus)) label {
|
|
3557
3728
|
font-size: inherit;
|
|
3558
3729
|
opacity: 50%;
|
|
3559
3730
|
}
|
|
3560
|
-
label:has(> span):has(
|
|
3561
|
-
|
|
3731
|
+
label:has(> span):has(
|
|
3732
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3733
|
+
textarea,
|
|
3734
|
+
select
|
|
3735
|
+
):has(*:placeholder-shown:not(:focus)) > span,
|
|
3736
|
+
label:has(> span):has(
|
|
3737
|
+
input:not([type="checkbox"], [type="radio"], [type="range"]),
|
|
3738
|
+
textarea,
|
|
3739
|
+
select
|
|
3740
|
+
):has(*:placeholder-shown:not(:focus)) label,
|
|
3562
3741
|
.has-float-label:has(*:placeholder-shown:not(:focus)) > span,
|
|
3563
3742
|
.has-float-label:has(*:placeholder-shown:not(:focus)) label {
|
|
3564
3743
|
font-size: inherit;
|
|
3565
3744
|
opacity: 50%;
|
|
3566
3745
|
}
|
|
3567
|
-
|
|
3568
|
-
|
|
3746
|
+
/*```
|
|
3747
|
+
|
|
3569
3748
|
The `:has(*:placeholder-shown:not(:focus))` trick allows this input state information to *propagate* to the parent level. This enables modern CSS to target inner float label (`<span>` or `<label>`) regardless of its position relative to the input field.
|
|
3570
3749
|
|
|
3571
3750
|
Historically, this was not possible: the float label had to be placed after the input field to be targeted using the `input:focus + label` selector.
|
|
3572
|
-
|
|
3751
|
+
|
|
3752
|
+
*/
|
|
3753
|
+
|
|
3573
3754
|
/* Components */
|
|
3755
|
+
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_link.scss
|
|
3756
|
+
\3c !--section:code-->
|
|
3757
|
+
```css */
|
|
3758
|
+
/* Use inline flex only if link contains an icon */
|
|
3759
|
+
a:not(.does-not-exist):has(> i) {
|
|
3760
|
+
display: inline-flex;
|
|
3761
|
+
overflow-y: clip; /* to work in pair with text-underline-offset in Safari */
|
|
3762
|
+
gap: 0.375ch; /* =3/8 */
|
|
3763
|
+
text-wrap: balance;
|
|
3764
|
+
}
|
|
3765
|
+
a:not(.does-not-exist) > i {
|
|
3766
|
+
float: left; /* ✅ Chrome ❌ Safari */
|
|
3767
|
+
font-style: normal;
|
|
3768
|
+
text-underline-offset: -2em; /* ❌ Chrome ✅ Safari - to clip it with overflow-y */
|
|
3769
|
+
}
|
|
3770
|
+
/* Favicons */
|
|
3771
|
+
a:not(.does-not-exist) > i > img {
|
|
3772
|
+
display: inline-block; /* for Tailwind CSS Typography */
|
|
3773
|
+
max-width: none; /* to keep ratio safe */
|
|
3774
|
+
height: 1.25em;
|
|
3775
|
+
margin-block-start: calc(-0.25em / 2);
|
|
3776
|
+
}
|
|
3777
|
+
a:not(.does-not-exist) > i[class^="fa-"],
|
|
3778
|
+
a:not(.does-not-exist) > i[class*=" fa-"] {
|
|
3779
|
+
line-height: inherit;
|
|
3780
|
+
--fa-width: auto;
|
|
3781
|
+
}
|
|
3782
|
+
/* Font Awesome */
|
|
3783
|
+
a:not(.does-not-exist) > i.fa-lg {
|
|
3784
|
+
line-height: normal;
|
|
3785
|
+
}
|
|
3786
|
+
/*```
|
|
3787
|
+
\3c !--section:summary-->
|
|
3788
|
+
|
|
3789
|
+
Use *Bl*ades `<i>`-helper to wrap emojis, favicons, or simply drop Font Awesome icons inside links.
|
|
3790
|
+
It automatically handles sizing and alignment while preventing underline on icons.
|
|
3791
|
+
|
|
3792
|
+
\3c !--section:docs-->
|
|
3793
|
+
|
|
3794
|
+
<article class="breakout-item">
|
|
3795
|
+
|
|
3796
|
+
| Use `<i>`-helper with | Clean HTML without `<span>ning` |
|
|
3797
|
+
| ------------------------------------------------------------------------------------- | ------------------------------------ |
|
|
3798
|
+
| [<i>🥷</i> Emojis](#) | `<a><i>🥷</i> Text</a>` |
|
|
3799
|
+
| [<i></i> Favicons](#) | `<a><i><img src="..."></i> Text</a>` |
|
|
3800
|
+
| [<i class="fa-brands fa-github fa-lg"></i> Font Awesome icons](#) | `<a><i class="fa-..."></i> Text</a>` |
|
|
3801
|
+
</article>
|
|
3802
|
+
|
|
3803
|
+
Or even for:
|
|
3804
|
+
|
|
3805
|
+
<article>
|
|
3806
|
+
<a href="#" style="margin: 0 0 0 1rem"><i>🥷</i> very-very-very-very-very-<br>long-multiline-links</a>
|
|
3807
|
+
</article>
|
|
3808
|
+
|
|
3809
|
+
How we made it: https://codepen.io/editor/anydigital/pen/019d2b94-5616-75dc-a23e-e111869d5237
|
|
3810
|
+
|
|
3811
|
+
\3c !--section--> */
|
|
3574
3812
|
/*\3c !--section:docs-->
|
|
3575
3813
|
|
|
3576
3814
|
Use `dl.timeline` or wrap a `<dl>` with `.has-timeline` to style it as a
|
|
@@ -3590,14 +3828,13 @@ Mar 15, 2025
|
|
|
3590
3828
|
dl.timeline dd, .has-timeline > dl dd {
|
|
3591
3829
|
margin-block: 0;
|
|
3592
3830
|
padding: 0.25rem 0 0.75rem 1rem;
|
|
3593
|
-
border-inline-start: 0.25rem solid
|
|
3831
|
+
border-inline-start: 0.25rem solid var(--blades-timeline-border-color);
|
|
3594
3832
|
}
|
|
3595
|
-
|
|
3833
|
+
|
|
3596
3834
|
/* Utilities */
|
|
3597
|
-
|
|
3598
|
-
\3c !--section:docs-->
|
|
3835
|
+
/*\3c !--section:docs-->
|
|
3599
3836
|
|
|
3600
|
-
|
|
3837
|
+
## Dark auto
|
|
3601
3838
|
|
|
3602
3839
|
`.dark-auto` automatically creates a simple dark version of any element:
|
|
3603
3840
|
|
|
@@ -3626,7 +3863,7 @@ How it works:
|
|
|
3626
3863
|
}
|
|
3627
3864
|
/*```
|
|
3628
3865
|
|
|
3629
|
-
|
|
3866
|
+
## Faded
|
|
3630
3867
|
|
|
3631
3868
|
`.faded` reduces the opacity of an element:
|
|
3632
3869
|
|
|
@@ -3644,13 +3881,12 @@ How it works:
|
|
|
3644
3881
|
}
|
|
3645
3882
|
/*```
|
|
3646
3883
|
\3c !--section--> */
|
|
3884
|
+
|
|
3647
3885
|
/* Fix the scrollbar color when inverted by https://tailwindcss.com/docs/filter-invert */
|
|
3648
3886
|
.invert ::-webkit-scrollbar {
|
|
3649
3887
|
filter: invert(1) !important;
|
|
3650
3888
|
}
|
|
3651
|
-
|
|
3652
|
-
\3c !--section:code-->
|
|
3653
|
-
```css */
|
|
3889
|
+
/*\3c !--section:code-->```css */
|
|
3654
3890
|
/* Default/fallback state */
|
|
3655
3891
|
label:has(> span):has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea, select) > span,
|
|
3656
3892
|
label:has(> span):has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea, select) label,
|
|
@@ -3690,6 +3926,7 @@ label:has(> span):has(input:not([type="checkbox"], [type="radio"], [type="range"
|
|
|
3690
3926
|
.has-float-label:has(*:placeholder-shown:not(:focus)) label {
|
|
3691
3927
|
padding-block: 0.75rem; /* match Pico */
|
|
3692
3928
|
}
|
|
3929
|
+
|
|
3693
3930
|
html {
|
|
3694
3931
|
/* Prevent horizontal overflow and scrolling, modern way. */
|
|
3695
3932
|
overflow-x: clip;
|
|
@@ -3698,6 +3935,7 @@ html {
|
|
|
3698
3935
|
-webkit-font-smoothing: antialiased;
|
|
3699
3936
|
-moz-osx-font-smoothing: grayscale;
|
|
3700
3937
|
}
|
|
3938
|
+
|
|
3701
3939
|
body {
|
|
3702
3940
|
|
|
3703
3941
|
/* Make the `body` a flex container with column layout, and `main` to automatically fill available space. This is useful for creating sticky footers and full-height layouts. */
|
|
@@ -3711,23 +3949,29 @@ body {
|
|
|
3711
3949
|
/* Enable global hyphenation */
|
|
3712
3950
|
/* ... except for links and tables which are better (safer) without hyphenation */
|
|
3713
3951
|
}
|
|
3952
|
+
|
|
3714
3953
|
body > main {
|
|
3715
3954
|
flex-grow: 1;
|
|
3716
3955
|
}
|
|
3717
|
-
|
|
3956
|
+
|
|
3957
|
+
body {
|
|
3718
3958
|
hyphens: auto;
|
|
3719
3959
|
text-wrap: pretty;
|
|
3720
3960
|
}
|
|
3961
|
+
|
|
3721
3962
|
body a,
|
|
3722
3963
|
body table {
|
|
3723
3964
|
hyphens: none;
|
|
3724
3965
|
}
|
|
3966
|
+
|
|
3725
3967
|
a:not([href^="#"]) {
|
|
3726
3968
|
text-decoration-thickness: 1px;
|
|
3727
3969
|
}
|
|
3970
|
+
|
|
3728
3971
|
a:not([href^="#"]):hover {
|
|
3729
3972
|
text-decoration-thickness: 2px;
|
|
3730
3973
|
}
|
|
3974
|
+
|
|
3731
3975
|
h1,
|
|
3732
3976
|
h2,
|
|
3733
3977
|
h3,
|
|
@@ -3740,43 +3984,55 @@ h1 {
|
|
|
3740
3984
|
margin-bottom: 1rem; /* for tw-typography */
|
|
3741
3985
|
font-size: 2.5em; /* for pico.css & tw-typography */
|
|
3742
3986
|
}
|
|
3987
|
+
|
|
3743
3988
|
hr {
|
|
3744
3989
|
margin-block: 2em; /* for pico.css & tw-typography */
|
|
3745
3990
|
}
|
|
3991
|
+
|
|
3746
3992
|
ul ul {
|
|
3747
3993
|
font-size: 87.5%;
|
|
3748
3994
|
}
|
|
3995
|
+
|
|
3749
3996
|
dl dt {
|
|
3750
3997
|
margin-block: 0.25rem;
|
|
3751
3998
|
font-weight: 500;
|
|
3752
3999
|
}
|
|
4000
|
+
|
|
3753
4001
|
dl dd {
|
|
3754
4002
|
margin-block-end: 1rem;
|
|
3755
4003
|
}
|
|
4004
|
+
|
|
3756
4005
|
pre small {
|
|
3757
4006
|
font-weight: lighter;
|
|
3758
4007
|
opacity: 75%;
|
|
3759
4008
|
}
|
|
4009
|
+
|
|
3760
4010
|
pre:has(code) {
|
|
3761
4011
|
background: #181c25 !important;
|
|
3762
4012
|
}
|
|
4013
|
+
|
|
3763
4014
|
table th {
|
|
3764
4015
|
font-weight: bold;
|
|
3765
4016
|
vertical-align: bottom;
|
|
3766
4017
|
}
|
|
4018
|
+
|
|
3767
4019
|
table td {
|
|
3768
4020
|
vertical-align: top;
|
|
3769
4021
|
}
|
|
4022
|
+
|
|
3770
4023
|
table pre {
|
|
3771
4024
|
margin-bottom: 0.25rem;
|
|
3772
4025
|
}
|
|
3773
|
-
|
|
4026
|
+
|
|
4027
|
+
[href="#top"] {
|
|
3774
4028
|
opacity: 25%;
|
|
3775
4029
|
}
|
|
3776
|
-
|
|
4030
|
+
|
|
4031
|
+
[href="#top"]:hover {
|
|
3777
4032
|
opacity: 75%;
|
|
3778
4033
|
}
|
|
3779
|
-
|
|
4034
|
+
|
|
4035
|
+
[href="#top"] > i {
|
|
3780
4036
|
display: inline-block;
|
|
3781
4037
|
margin: 0.5rem;
|
|
3782
4038
|
padding: 0.25rem 0.375rem;
|
|
@@ -3784,14 +4040,14 @@ table pre {
|
|
|
3784
4040
|
color: black;
|
|
3785
4041
|
font-size: 0.75rem;
|
|
3786
4042
|
}
|
|
4043
|
+
|
|
3787
4044
|
.breakout > img,
|
|
3788
4045
|
.breakout > figure,
|
|
3789
4046
|
.breakout-all > img,
|
|
3790
4047
|
.breakout-all > figure {
|
|
3791
4048
|
margin-bottom: 1rem;
|
|
3792
4049
|
}
|
|
4050
|
+
|
|
3793
4051
|
.faded a {
|
|
3794
4052
|
text-decoration-style: dotted;
|
|
3795
4053
|
}
|
|
3796
|
-
/*```
|
|
3797
|
-
\3c !--section--> */
|