@anyblades/pico 2.2.0-alpha.7 → 2.2.0-beta
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/README.md +1 -1
- package/css/pico.blades.css +261 -181
- package/css/pico.blades.min.css +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
</a>
|
|
20
20
|
</h1>
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
<big>Minimal CSS Framework for Semantic HTML</big>
|
|
23
23
|
|
|
24
24
|
A minimalist and lightweight starter kit that prioritizes semantic syntax, making every HTML element responsive and elegant by default.
|
|
25
25
|
|
package/css/pico.blades.css
CHANGED
|
@@ -3009,56 +3009,56 @@ textarea,
|
|
|
3009
3009
|
transition-duration: 0s !important;
|
|
3010
3010
|
}
|
|
3011
3011
|
}
|
|
3012
|
-
|
|
3012
|
+
/* Follows https://github.com/picocss/pico/blob/main/scss/_index.scss */
|
|
3013
3013
|
/* Layout */
|
|
3014
3014
|
/* Extends https://github.com/picocss/pico/blob/main/scss/layout/
|
|
3015
|
-
<!--section:docs-intro-->
|
|
3016
|
-
|
|
3017
|
-
Global styles:
|
|
3018
|
-
```css */
|
|
3019
|
-
html {
|
|
3020
|
-
/* Prevent horizontal overflow and scrolling, modern way. */
|
|
3021
|
-
overflow-x: clip;
|
|
3022
|
-
}
|
|
3023
|
-
body {
|
|
3024
|
-
/* Ensure `body` takes at least the full height of the viewport (using dynamic viewport height for better mobile support). */
|
|
3025
|
-
min-height: 100dvh;
|
|
3026
|
-
}
|
|
3027
|
-
/*```
|
|
3028
3015
|
<!--section:docs-->
|
|
3029
3016
|
|
|
3030
3017
|
### Auto-columns
|
|
3018
|
+
|
|
3019
|
+
`.columns` automatically creates columns with at least 30 characters each:
|
|
3020
|
+
|
|
3021
|
+
<article class="columns">
|
|
3022
|
+
<p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p>
|
|
3023
|
+
</article>
|
|
3024
|
+
|
|
3025
|
+
The smaller the font size, the more columns will be created:
|
|
3026
|
+
|
|
3027
|
+
<article class="columns" style="font-size: 65%">
|
|
3028
|
+
<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>
|
|
3029
|
+
</article>
|
|
3030
|
+
|
|
3031
|
+
Useful for tables of contents and long lists.
|
|
3032
|
+
|
|
3033
|
+
<details>How it works:
|
|
3031
3034
|
```css */
|
|
3032
|
-
.columns
|
|
3033
|
-
[data-is-toc] > ul,
|
|
3034
|
-
[data-is-toc] > ol {
|
|
3035
|
+
.columns {
|
|
3035
3036
|
-moz-columns: 30ch auto;
|
|
3036
3037
|
columns: 30ch auto; /* 2 cols max for 65ch container */
|
|
3037
3038
|
}
|
|
3038
3039
|
/* Avoid breaking inside elements, such as nested lists */
|
|
3039
|
-
.columns >
|
|
3040
|
+
.columns > * {
|
|
3040
3041
|
-moz-column-break-inside: avoid;
|
|
3041
3042
|
break-inside: avoid;
|
|
3042
3043
|
}
|
|
3043
3044
|
/*```
|
|
3044
|
-
|
|
3045
|
-
Table of contents (`[data-is-toc]`) has auto-columns by default.
|
|
3045
|
+
</details>
|
|
3046
3046
|
|
|
3047
3047
|
### Jump to top
|
|
3048
|
+
|
|
3049
|
+
`data-jump-to="top"` fixes element to the corner and adds extra top padding to make it easy to click:
|
|
3048
3050
|
```css */
|
|
3049
3051
|
[data-jump-to="top"] {
|
|
3050
3052
|
position: fixed;
|
|
3051
3053
|
bottom: 0;
|
|
3052
3054
|
right: 0;
|
|
3053
3055
|
padding-top: 50vh;
|
|
3054
|
-
opacity: 25%;
|
|
3055
3056
|
}
|
|
3056
|
-
[data-jump-to="top"]:hover {
|
|
3057
|
-
opacity: 75%;
|
|
3058
|
-
}
|
|
3059
3057
|
/*```
|
|
3060
3058
|
<!--section--> */
|
|
3061
|
-
/*
|
|
3059
|
+
/*
|
|
3060
|
+
<!--section:code-->
|
|
3061
|
+
```css */
|
|
3062
3062
|
.breakout,
|
|
3063
3063
|
.breakout-all {
|
|
3064
3064
|
/* Prepare the container for breakout elements */
|
|
@@ -3134,55 +3134,59 @@ Table of contents (`[data-is-toc]`) has auto-columns by default.
|
|
|
3134
3134
|
transform: translateX(-50%);
|
|
3135
3135
|
}
|
|
3136
3136
|
/*```
|
|
3137
|
-
<!--section:
|
|
3138
|
-
|
|
3139
|
-
Framework-agnostic utilities for breaking out images and figures beyond their container width.
|
|
3137
|
+
<!--section:summary-->
|
|
3140
3138
|
|
|
3141
|
-
|
|
3139
|
+
The `.breakout` layout allows images, tables, and other figures to automatically extend or bleed beyond their parent container’s width.
|
|
3142
3140
|
|
|
3143
3141
|
<!--section:docs-->
|
|
3144
3142
|
|
|
3143
|
+
### Demo <!-- inside parent .breakout -->
|
|
3144
|
+
|
|
3145
|
+
Break out a wide image from the text flow:
|
|
3146
|
+
|
|
3147
|
+
<div><!-- Dummy div to avoid p tag in Markdown --></div><img
|
|
3148
|
+
src="data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='3000' height='300'><rect width='100%' height='100%' fill='gray'/></svg>">
|
|
3149
|
+
|
|
3150
|
+
Or table:
|
|
3151
|
+
|
|
3152
|
+
| Imagine<hr> | a<hr> | really<hr> | wide<hr> | table<hr> | here<hr> |
|
|
3153
|
+
| ----------- | ----- | ---------- | -------- | --------- | -------- |
|
|
3154
|
+
| ... |
|
|
3155
|
+
|
|
3156
|
+
Or code block:
|
|
3157
|
+
|
|
3145
3158
|
```html
|
|
3146
|
-
<
|
|
3147
|
-
<img src="image.jpg" alt="Description" />
|
|
3148
|
-
</div>
|
|
3159
|
+
<p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quod. Lorem ipsum dolor sit amet consectetur adipisicing elit. Quisquam, quod.</p>
|
|
3149
3160
|
```
|
|
3150
3161
|
|
|
3151
|
-
|
|
3162
|
+
Or anything else:
|
|
3163
|
+
|
|
3164
|
+
<article class="breakout-item-max" data-theme="dark">
|
|
3165
|
+
|
|
3166
|
+
Using `.breakout-item` and `.breakout-item-max` helpers {style=margin:0}
|
|
3167
|
+
</article>
|
|
3168
|
+
|
|
3169
|
+
<div><hr></div>
|
|
3170
|
+
|
|
3171
|
+
`.breakout-all` also visually breaks out headings and horizontal rules:
|
|
3172
|
+
|
|
3173
|
+
<h2>Heading 2</h2><h3>Heading 3</h3><h4>Heading 4</h4><h5>Heading 5</h5><h6>Heading 6</h6>
|
|
3174
|
+
<hr>
|
|
3152
3175
|
|
|
3153
3176
|
<!--section--> */
|
|
3154
3177
|
/* Content */
|
|
3155
3178
|
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_typography.scss
|
|
3156
|
-
<!--section:docs-intro-->
|
|
3157
|
-
|
|
3158
|
-
Global styles:
|
|
3159
|
-
```css */
|
|
3160
|
-
html {
|
|
3161
|
-
/* Enable font smoothing */
|
|
3162
|
-
-webkit-font-smoothing: antialiased;
|
|
3163
|
-
-moz-osx-font-smoothing: grayscale;
|
|
3164
|
-
}
|
|
3165
|
-
body {
|
|
3166
|
-
/* Evaluates the last ~4 lines of text blocks to prevent a single word from sitting on the final line. */
|
|
3167
|
-
text-wrap: pretty;
|
|
3168
|
-
/* Enable global hyphenation */
|
|
3169
|
-
hyphens: auto;
|
|
3170
|
-
/* ... except for links and tables which are better (safer) without hyphenation */
|
|
3171
|
-
}
|
|
3172
|
-
body a,
|
|
3173
|
-
body table {
|
|
3174
|
-
hyphens: none;
|
|
3175
|
-
}
|
|
3176
|
-
/*```
|
|
3177
3179
|
<!--section:docs-->
|
|
3178
3180
|
|
|
3179
3181
|
### Heading anchors
|
|
3180
3182
|
|
|
3181
|
-
|
|
3183
|
+
Links with `href="#..."` inside headings are automatically displayed as anchors:
|
|
3182
3184
|
|
|
3183
|
-
<article
|
|
3185
|
+
<article>
|
|
3186
|
+
<h2 style="margin: 0 0 0 1.5rem">Heading with anchor <a href="#hwa" style="visibility: visible">#</a></h2>
|
|
3187
|
+
</article>
|
|
3184
3188
|
|
|
3185
|
-
How it works:
|
|
3189
|
+
<details>How it works:
|
|
3186
3190
|
```css */
|
|
3187
3191
|
h1,
|
|
3188
3192
|
h2,
|
|
@@ -3192,7 +3196,7 @@ h5,
|
|
|
3192
3196
|
h6 {
|
|
3193
3197
|
position: relative;
|
|
3194
3198
|
}
|
|
3195
|
-
h1 [
|
|
3199
|
+
h1 a[href^="#"], h2 a[href^="#"], h3 a[href^="#"], h4 a[href^="#"], h5 a[href^="#"], h6 a[href^="#"] {
|
|
3196
3200
|
position: absolute;
|
|
3197
3201
|
right: 100%;
|
|
3198
3202
|
top: 50%;
|
|
@@ -3202,29 +3206,34 @@ h1 [data-is-anchor], h2 [data-is-anchor], h3 [data-is-anchor], h4 [data-is-ancho
|
|
|
3202
3206
|
text-decoration: none;
|
|
3203
3207
|
visibility: hidden;
|
|
3204
3208
|
}
|
|
3205
|
-
/*
|
|
3206
|
-
|
|
3207
|
-
h1:hover [data-is-anchor], h2:hover [data-is-anchor], h3:hover [data-is-anchor], h4:hover [data-is-anchor], h5:hover [data-is-anchor], h6:hover [data-is-anchor] {
|
|
3209
|
+
@media /* to avoid double-tap on touch devices */ (hover: hover) {
|
|
3210
|
+
h1:hover a[href^="#"], h2:hover a[href^="#"], h3:hover a[href^="#"], h4:hover a[href^="#"], h5:hover a[href^="#"], h6:hover a[href^="#"] {
|
|
3208
3211
|
visibility: visible;
|
|
3209
3212
|
}
|
|
3210
3213
|
}
|
|
3211
3214
|
/*```
|
|
3212
|
-
>
|
|
3215
|
+
</details>
|
|
3216
|
+
|
|
3217
|
+
**PRO** example of automatic anchors for `11ty`+`markdown-it-anchor`: https://github.com/anyblades/eleventy-blades/blob/main/src/eleventy.config.js
|
|
3213
3218
|
|
|
3214
3219
|
### List markers
|
|
3215
3220
|
|
|
3216
|
-
|
|
3221
|
+
Customize markers using inline `style="--list-marker:..."` on `<ul>/<ol>` or even individual `<li>`:
|
|
3222
|
+
|
|
3217
3223
|
<article>
|
|
3218
3224
|
|
|
3219
|
-
-
|
|
3220
|
-
-
|
|
3221
|
-
-
|
|
3222
|
-
-
|
|
3225
|
+
- you
|
|
3226
|
+
- can
|
|
3227
|
+
- make
|
|
3228
|
+
- really
|
|
3229
|
+
- cool markers {style="--list-marker:'🧊 '"}
|
|
3230
|
+
- with
|
|
3231
|
+
- *Bl*ades {style="--list-marker:'🥷 '"}
|
|
3223
3232
|
|
|
3224
|
-
{style="--list-marker:'
|
|
3233
|
+
{style="--list-marker:'→ '"}
|
|
3225
3234
|
</article>
|
|
3226
3235
|
|
|
3227
|
-
How it works:
|
|
3236
|
+
<details>How it works:
|
|
3228
3237
|
```css */
|
|
3229
3238
|
ul[style*="--list-marker:"], ol[style*="--list-marker:"] {
|
|
3230
3239
|
list-style-type: var(--list-marker);
|
|
@@ -3236,22 +3245,41 @@ ul li[style*="--list-marker:"], ol li[style*="--list-marker:"] {
|
|
|
3236
3245
|
list-style-type: var(--list-marker);
|
|
3237
3246
|
}
|
|
3238
3247
|
ul li[data-marker]::marker, ol li[data-marker]::marker {
|
|
3239
|
-
|
|
3240
|
-
content: attr(data-marker) " ";
|
|
3248
|
+
content: attr(data-marker) " "; /* ⚠️ Chrome and Firefox only */
|
|
3241
3249
|
}
|
|
3242
3250
|
/*```
|
|
3251
|
+
</details>
|
|
3243
3252
|
|
|
3244
3253
|
### Unlist
|
|
3245
3254
|
|
|
3246
|
-
|
|
3255
|
+
`.unlist` removes list styling:
|
|
3256
|
+
|
|
3257
|
+
<article>
|
|
3258
|
+
|
|
3259
|
+
- One: <article>1</article>
|
|
3260
|
+
- Two: <article>2</article>
|
|
3261
|
+
- Three: <article>3</article>
|
|
3262
|
+
|
|
3263
|
+
{.unlist .grid style=margin:0}
|
|
3264
|
+
</article>
|
|
3265
|
+
|
|
3266
|
+
`.unlist-all` also removes styling from all nested lists.
|
|
3267
|
+
|
|
3268
|
+
<details>How it works:
|
|
3247
3269
|
```css */
|
|
3248
|
-
.unlist
|
|
3249
|
-
|
|
3250
|
-
|
|
3251
|
-
.unlist
|
|
3252
|
-
|
|
3270
|
+
ul.unlist,
|
|
3271
|
+
ul.unlist-all,
|
|
3272
|
+
.unlist-all ul,
|
|
3273
|
+
ol.unlist,
|
|
3274
|
+
ol.unlist-all,
|
|
3275
|
+
.unlist-all ol {
|
|
3276
|
+
padding-inline-start: 0;
|
|
3253
3277
|
}
|
|
3278
|
+
ul.unlist > li, ul.unlist-all > li, .unlist-all ul > li, ol.unlist > li, ol.unlist-all > li, .unlist-all ol > li {
|
|
3279
|
+
list-style: none;
|
|
3280
|
+
}
|
|
3254
3281
|
/*```
|
|
3282
|
+
</details>
|
|
3255
3283
|
<!--section--> */
|
|
3256
3284
|
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_link.scss
|
|
3257
3285
|
<!--section:code-->
|
|
@@ -3270,7 +3298,8 @@ a > i {
|
|
|
3270
3298
|
/* Favicons */
|
|
3271
3299
|
a > i > img {
|
|
3272
3300
|
height: 1.25em;
|
|
3273
|
-
margin-block: calc(-0.25em / 2);
|
|
3301
|
+
margin-block-start: calc(-0.25em / 2);
|
|
3302
|
+
max-width: none; /* to keep ratio safe */
|
|
3274
3303
|
display: inline-block; /* for Tailwind CSS Typography */
|
|
3275
3304
|
}
|
|
3276
3305
|
a > i[class^="fa-"],
|
|
@@ -3283,76 +3312,79 @@ a > i.fa-lg {
|
|
|
3283
3312
|
line-height: normal;
|
|
3284
3313
|
}
|
|
3285
3314
|
/*```
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
<!--section:docs,summary-->
|
|
3315
|
+
<!--section:summary-->
|
|
3289
3316
|
|
|
3290
|
-
Use
|
|
3317
|
+
Use *Bl*ades `<i>`-helper to wrap emojis, favicons, or simply drop Font Awesome icons inside links.
|
|
3318
|
+
It automatically handles sizing and alignment while preventing underline on icons.
|
|
3291
3319
|
|
|
3292
3320
|
<!--section:docs-->
|
|
3293
3321
|
|
|
3294
|
-
|
|
3322
|
+
<article class="breakout-item">
|
|
3295
3323
|
|
|
3296
|
-
|
|
|
3297
|
-
|
|
|
3298
|
-
| [
|
|
3299
|
-
| [
|
|
3300
|
-
| [<
|
|
3324
|
+
| Use `<i>`-helper with | Clean HTML without `<span>ning` |
|
|
3325
|
+
| ------------------------------------------------------------------------------------- | ------------------------------------ |
|
|
3326
|
+
| [<i>🥷</i> Emojis](#) | `<a><i>🥷</i> Text</a>` |
|
|
3327
|
+
| [<i></i> Favicons](#) | `<a><i><img src="..."></i> Text</a>` |
|
|
3328
|
+
| [<i class="fa-brands fa-github fa-lg"></i> Font Awesome icons](#) | `<a><i class="fa-..."></i> Text</a>` |
|
|
3329
|
+
</article>
|
|
3301
3330
|
|
|
3302
|
-
|
|
3331
|
+
Or even for:
|
|
3332
|
+
|
|
3333
|
+
<article>
|
|
3334
|
+
<a href="#" style="margin: 0 0 0 1rem"><i>🥷</i> very-very-very-very-very-<br>long-multiline-links</a>
|
|
3335
|
+
</article>
|
|
3336
|
+
|
|
3337
|
+
How we made it: https://codepen.io/editor/anydigital/pen/019d2b94-5616-75dc-a23e-e111869d5237
|
|
3303
3338
|
|
|
3304
|
-
|
|
3339
|
+
**PRO** example of automatic favicons for `11ty`: https://blades.ninja/build-awesome-11ty/processors/#auto-link-favicons
|
|
3305
3340
|
|
|
3306
3341
|
<!--section--> */
|
|
3307
3342
|
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_table.scss
|
|
3308
3343
|
<!--section:docs-->
|
|
3309
3344
|
|
|
3310
|
-
###
|
|
3345
|
+
### Column expanders
|
|
3311
3346
|
|
|
3312
|
-
|
|
3313
|
-
|
|
3314
|
-
<
|
|
3315
|
-
|
|
3316
|
-
|
|
3317
|
-
|
|
3318
|
-
|
|
3319
|
-
</
|
|
3320
|
-
|
|
3321
|
-
|
|
3322
|
-
|
|
3323
|
-
|
|
3324
|
-
|
|
3325
|
-
|
|
3326
|
-
|
|
3327
|
-
|
|
3328
|
-
- https://any.digital/insights/css-frameworks/
|
|
3329
|
-
- https://any.digital/insights/ssg/
|
|
3330
|
-
- https://blades.ninja/build-awesome-11ty/#min-starters
|
|
3331
|
-
|
|
3332
|
-
How it works:
|
|
3347
|
+
Place `<hr>` element inside `<th>` column to expand it horizontally:
|
|
3348
|
+
|
|
3349
|
+
<article>
|
|
3350
|
+
|
|
3351
|
+
| Column with `<hr>`<hr> | Same column without `<hr>` | ... {style=width:100%} |
|
|
3352
|
+
| --- | --- | --- |
|
|
3353
|
+
| (012) 345-6789 | (012) 345-6789 |
|
|
3354
|
+
</article>
|
|
3355
|
+
|
|
3356
|
+
Living examples of big tables with `<hr>`-expanders: <!--A-Z-->
|
|
3357
|
+
- https://blades.ninja/ai/ide/
|
|
3358
|
+
- https://blades.ninja/build-awesome-11ty/starters/
|
|
3359
|
+
- https://blades.ninja/css/frameworks/
|
|
3360
|
+
- https://blades.ninja/ssg/
|
|
3361
|
+
|
|
3362
|
+
<details>How it works:
|
|
3333
3363
|
```css */
|
|
3334
|
-
|
|
3335
|
-
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3364
|
+
th hr {
|
|
3365
|
+
width: 12ch; /* min ~65/12 = ~5 cols */
|
|
3366
|
+
height: 0;
|
|
3367
|
+
margin: 0;
|
|
3368
|
+
visibility: hidden;
|
|
3369
|
+
}
|
|
3370
|
+
th hr.lg {
|
|
3371
|
+
width: 18ch;
|
|
3372
|
+
}
|
|
3373
|
+
th hr.x2 {
|
|
3374
|
+
width: 24ch;
|
|
3339
3375
|
}
|
|
3340
|
-
table th hr.lg {
|
|
3341
|
-
width: 18ch;
|
|
3342
|
-
}
|
|
3343
|
-
table th hr.x2 {
|
|
3344
|
-
width: 24ch;
|
|
3345
|
-
}
|
|
3346
3376
|
/*```
|
|
3377
|
+
</details>
|
|
3378
|
+
|
|
3347
3379
|
### Borderless table
|
|
3348
3380
|
|
|
3349
|
-
|
|
3381
|
+
`.borderless` removes all default borders:
|
|
3350
3382
|
|
|
3351
3383
|
<article>
|
|
3352
3384
|
|
|
3353
3385
|
| Less | borders |
|
|
3354
3386
|
| ---- | ------- |
|
|
3355
|
-
|
|
|
3387
|
+
| More | fun |
|
|
3356
3388
|
|
|
3357
3389
|
{.borderless}
|
|
3358
3390
|
</article>
|
|
@@ -3364,7 +3396,8 @@ table.borderless th,
|
|
|
3364
3396
|
table.borderless td {
|
|
3365
3397
|
border: none;
|
|
3366
3398
|
}
|
|
3367
|
-
/*
|
|
3399
|
+
/*
|
|
3400
|
+
<!--section:code-->
|
|
3368
3401
|
```css */
|
|
3369
3402
|
table.responsive,
|
|
3370
3403
|
.breakout > table:not(.does-not-exist),
|
|
@@ -3394,17 +3427,17 @@ table.responsive th,
|
|
|
3394
3427
|
padding-inline-start: 0;
|
|
3395
3428
|
}
|
|
3396
3429
|
/*```
|
|
3397
|
-
|
|
3398
|
-
Soft-increase selector specificity trick:
|
|
3399
|
-
|
|
3400
|
-
`table:not(.does-not-exist)` (inspired by postcss) is used here to increase specificity against selectors like `&:is(table, .table)`
|
|
3430
|
+
`table:not(.does-not-exist)` trick (inspired by postcss) is used here to increase specificity against selectors like `&:is(table, .table)`
|
|
3401
3431
|
|
|
3402
|
-
<!--section:
|
|
3432
|
+
<!--section:summary-->
|
|
3403
3433
|
|
|
3404
|
-
|
|
3434
|
+
`.responsive` makes a table full-bleed and scroll on mobile, without a need for a redundant wrapper (finally).
|
|
3435
|
+
Tables inside https://blades.ninja/css/breakout/ are responsive by default.
|
|
3405
3436
|
|
|
3406
3437
|
<!--section:docs-->
|
|
3407
3438
|
|
|
3439
|
+
### Demo table
|
|
3440
|
+
|
|
3408
3441
|
| Term | Description <hr class="x2"> | Link |
|
|
3409
3442
|
| ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
|
|
3410
3443
|
| Responsive design | Approach to web design that aims to make web pages render well on a variety of devices and window or screen sizes from minimum to maximum display size to ensure usability and satisfaction. | https://en.wikipedia.org/wiki/Responsive_web_design |
|
|
@@ -3413,25 +3446,34 @@ Soft-increase selector specificity trick:
|
|
|
3413
3446
|
|
|
3414
3447
|
---
|
|
3415
3448
|
|
|
3416
|
-
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
- https://
|
|
3421
|
-
- https://any.digital/insights/css-frameworks/
|
|
3422
|
-
- https://any.digital/insights/ssg/
|
|
3423
|
-
- https://blades.ninja/build-awesome-11ty/#min-starters
|
|
3449
|
+
Living examples: <!--A-Z-->
|
|
3450
|
+
- https://blades.ninja/ai/ide/
|
|
3451
|
+
- https://blades.ninja/build-awesome-11ty/starters/
|
|
3452
|
+
- https://blades.ninja/css/frameworks/
|
|
3453
|
+
- https://blades.ninja/ssg/
|
|
3424
3454
|
|
|
3425
3455
|
<!--section--> */
|
|
3426
|
-
/*
|
|
3456
|
+
/* Extends https://github.com/picocss/pico/blob/main/scss/content/_code.scss
|
|
3457
|
+
<!--section:docs-->
|
|
3458
|
+
|
|
3427
3459
|
### Code
|
|
3428
|
-
|
|
3460
|
+
|
|
3461
|
+
The `<pre><code>` blocks are Prism-compatible and support captions via `data-caption="..."` attribute:
|
|
3462
|
+
|
|
3463
|
+
```treeview {data-caption="Blades CSS:"}
|
|
3464
|
+
./assets/
|
|
3465
|
+
├── blades.core.css # reusable class-light utilities, unthemed
|
|
3466
|
+
├── blades.theme.css # minimal opinionated theme
|
|
3467
|
+
└── blades.css # above two together
|
|
3468
|
+
```
|
|
3469
|
+
<details>How it works:
|
|
3429
3470
|
```css */
|
|
3430
3471
|
pre {
|
|
3431
3472
|
padding: 1rem 1.5rem;
|
|
3432
3473
|
padding-inline-end: 2rem;
|
|
3433
3474
|
}
|
|
3434
|
-
@media
|
|
3475
|
+
@media (max-width: 767px) {
|
|
3476
|
+
|
|
3435
3477
|
pre {
|
|
3436
3478
|
border-radius: 0
|
|
3437
3479
|
}
|
|
@@ -3447,7 +3489,7 @@ code[data-caption]::before {
|
|
|
3447
3489
|
code:where(pre > *) {
|
|
3448
3490
|
padding: 0;
|
|
3449
3491
|
}
|
|
3450
|
-
|
|
3492
|
+
/* Extends https://github.com/PrismJS/prism/blob/master/plugins/treeview/prism-treeview.css */
|
|
3451
3493
|
.token.treeview-part .entry-line {
|
|
3452
3494
|
width: 2.5em !important;
|
|
3453
3495
|
opacity: 25%;
|
|
@@ -3458,7 +3500,9 @@ code:where(pre > *) {
|
|
|
3458
3500
|
.token.treeview-part .entry-name:last-child::before {
|
|
3459
3501
|
display: none !important;
|
|
3460
3502
|
}
|
|
3461
|
-
/*```
|
|
3503
|
+
/*```
|
|
3504
|
+
</details>
|
|
3505
|
+
<!--section--> */
|
|
3462
3506
|
/* Forms */
|
|
3463
3507
|
/* Moved here from https://github.com/anyblades/float-label-css for easier maintenance
|
|
3464
3508
|
<!--section:docs-->
|
|
@@ -3490,6 +3534,9 @@ label:has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea
|
|
|
3490
3534
|
```
|
|
3491
3535
|
Finally, we detect if placeholder is shown, but not in focus. That means we can safely hide it, and enlarge the float label instead:
|
|
3492
3536
|
```css */
|
|
3537
|
+
label:has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea, select) *:-moz-placeholder:not(:focus)::-moz-placeholder, .has-float-label *:-moz-placeholder:not(:focus)::-moz-placeholder {
|
|
3538
|
+
opacity: 0;
|
|
3539
|
+
}
|
|
3493
3540
|
label:has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea, select) *:placeholder-shown:not(:focus)::-moz-placeholder, .has-float-label *:placeholder-shown:not(:focus)::-moz-placeholder {
|
|
3494
3541
|
opacity: 0;
|
|
3495
3542
|
}
|
|
@@ -3517,19 +3564,49 @@ The `:has(*:placeholder-shown:not(:focus))` trick allows this input state inform
|
|
|
3517
3564
|
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.
|
|
3518
3565
|
<!--section--> */
|
|
3519
3566
|
/* Utilities */
|
|
3520
|
-
/*
|
|
3567
|
+
/* Extends https://github.com/picocss/pico/tree/main/scss/utilities
|
|
3521
3568
|
<!--section:docs-->
|
|
3522
3569
|
|
|
3523
3570
|
### Auto-dark
|
|
3571
|
+
|
|
3572
|
+
`.dark-auto` automatically creates a simple dark version of any element:
|
|
3573
|
+
|
|
3574
|
+
<article data-theme="dark">
|
|
3575
|
+
<p>Look how cool <big class="dark-auto">🔥🕷️🐦⬛🐄🦓</big> can look in the dark!</p>
|
|
3576
|
+
</article>
|
|
3577
|
+
|
|
3578
|
+
<details>How it works:
|
|
3524
3579
|
```css */
|
|
3580
|
+
/* Per https://picocss.com/docs/css-variables#css-variables-for-color-schemes */
|
|
3581
|
+
:root {
|
|
3582
|
+
--blades-dark-filter: invert(100%) hue-rotate(180deg);
|
|
3583
|
+
}
|
|
3584
|
+
.dark-auto {
|
|
3585
|
+
/* Dark color scheme (Forced) */
|
|
3586
|
+
}
|
|
3587
|
+
/* Dark color scheme (Auto) */
|
|
3525
3588
|
@media (prefers-color-scheme: dark) {
|
|
3526
|
-
|
|
3527
|
-
|
|
3528
|
-
|
|
3589
|
+
|
|
3590
|
+
.dark-auto {
|
|
3591
|
+
filter: var(--blades-dark-filter)
|
|
3529
3592
|
}
|
|
3593
|
+
}
|
|
3594
|
+
.dark-auto[data-theme="dark"],
|
|
3595
|
+
.dark-auto:where([data-theme="dark"] *) {
|
|
3596
|
+
filter: var(--blades-dark-filter);
|
|
3597
|
+
}
|
|
3530
3598
|
/*```
|
|
3599
|
+
</details>
|
|
3531
3600
|
|
|
3532
3601
|
### Faded
|
|
3602
|
+
|
|
3603
|
+
`.faded` reduces the opacity of an element:
|
|
3604
|
+
|
|
3605
|
+
<article class="faded">
|
|
3606
|
+
Hover to unfade me!
|
|
3607
|
+
</article>
|
|
3608
|
+
|
|
3609
|
+
<details>How it works:
|
|
3533
3610
|
```css */
|
|
3534
3611
|
.faded {
|
|
3535
3612
|
opacity: 50%;
|
|
@@ -3538,16 +3615,14 @@ Historically, this was not possible: the float label had to be placed after the
|
|
|
3538
3615
|
opacity: 87.5%;
|
|
3539
3616
|
}
|
|
3540
3617
|
/*```
|
|
3541
|
-
|
|
3542
|
-
|
|
3543
|
-
|
|
3544
|
-
/* Extends https://tailwindcss.com/docs/filter-invert */
|
|
3545
|
-
/* Fix the scrollbar color when inverted */
|
|
3618
|
+
</details>
|
|
3619
|
+
<!--section--> */
|
|
3620
|
+
/* Fix the scrollbar color when inverted by https://tailwindcss.com/docs/filter-invert */
|
|
3546
3621
|
.invert ::-webkit-scrollbar {
|
|
3547
3622
|
filter: invert(1) !important;
|
|
3548
3623
|
}
|
|
3549
|
-
|
|
3550
|
-
|
|
3624
|
+
/*
|
|
3625
|
+
<!--section:code-->
|
|
3551
3626
|
```css */
|
|
3552
3627
|
/* Default/fallback state */
|
|
3553
3628
|
label:has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea, select) > span,
|
|
@@ -3588,14 +3663,38 @@ label:has(input:not([type="checkbox"], [type="radio"], [type="range"]), textarea
|
|
|
3588
3663
|
.has-float-label:has(*:placeholder-shown:not(:focus)) label {
|
|
3589
3664
|
padding-block: 0.75rem; /* match Pico */
|
|
3590
3665
|
}
|
|
3666
|
+
html {
|
|
3667
|
+
/* Prevent horizontal overflow and scrolling, modern way. */
|
|
3668
|
+
overflow-x: clip;
|
|
3669
|
+
|
|
3670
|
+
/* Enable font smoothing */
|
|
3671
|
+
-webkit-font-smoothing: antialiased;
|
|
3672
|
+
-moz-osx-font-smoothing: grayscale;
|
|
3673
|
+
}
|
|
3591
3674
|
body {
|
|
3675
|
+
/* Ensure `body` takes at least the full height of the viewport (using dynamic viewport height for better mobile support). */
|
|
3676
|
+
min-height: 100dvh;
|
|
3677
|
+
|
|
3592
3678
|
/* 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. */
|
|
3593
3679
|
display: flex;
|
|
3594
3680
|
flex-direction: column;
|
|
3681
|
+
|
|
3682
|
+
/* Evaluates the last ~4 lines of text blocks to prevent a single word from sitting on the final line. */
|
|
3683
|
+
|
|
3684
|
+
/* Enable global hyphenation */
|
|
3685
|
+
/* ... except for links and tables which are better (safer) without hyphenation */
|
|
3595
3686
|
}
|
|
3596
3687
|
body > main {
|
|
3597
3688
|
flex-grow: 1;
|
|
3598
3689
|
}
|
|
3690
|
+
body {
|
|
3691
|
+
text-wrap: pretty;
|
|
3692
|
+
hyphens: auto;
|
|
3693
|
+
}
|
|
3694
|
+
body a,
|
|
3695
|
+
body table {
|
|
3696
|
+
hyphens: none;
|
|
3697
|
+
}
|
|
3599
3698
|
a:not([href^="#"]) {
|
|
3600
3699
|
text-decoration-thickness: 1px;
|
|
3601
3700
|
}
|
|
@@ -3606,22 +3705,6 @@ h1 {
|
|
|
3606
3705
|
font-size: 2.5em; /* for pico.css & tw-typography */
|
|
3607
3706
|
margin-bottom: 1rem; /* for tw-typography */
|
|
3608
3707
|
}
|
|
3609
|
-
/* Potential fix https://github.com/picocss/pico/blob/main/css/pico.css for the very first headings
|
|
3610
|
-
:where(article, address, blockquote, dl, figure, form, ol, p, pre, table, ul) ~ :is(h1, h2, h3, h4, h5, h6) {
|
|
3611
|
-
margin-top: var(--pico-typography-spacing-top);
|
|
3612
|
-
}
|
|
3613
|
-
h1,
|
|
3614
|
-
h2,
|
|
3615
|
-
h3,
|
|
3616
|
-
h4,
|
|
3617
|
-
h5,
|
|
3618
|
-
h6 {
|
|
3619
|
-
& ~ & {
|
|
3620
|
-
margin-bottom: 2rem;
|
|
3621
|
-
}
|
|
3622
|
-
}
|
|
3623
|
-
NOTE: be careful with wrapped headings, i.e. inside nav: https://blades.ninja/build-awesome-11ty/#usage
|
|
3624
|
-
*/
|
|
3625
3708
|
hr {
|
|
3626
3709
|
margin-block: 2em; /* for pico.css & tw-typography */
|
|
3627
3710
|
}
|
|
@@ -3642,6 +3725,12 @@ table td {
|
|
|
3642
3725
|
table pre {
|
|
3643
3726
|
margin-bottom: 0.25rem;
|
|
3644
3727
|
}
|
|
3728
|
+
[data-jump-to="top"] {
|
|
3729
|
+
opacity: 25%;
|
|
3730
|
+
}
|
|
3731
|
+
[data-jump-to="top"]:hover {
|
|
3732
|
+
opacity: 75%;
|
|
3733
|
+
}
|
|
3645
3734
|
[data-jump-to="top"] > i {
|
|
3646
3735
|
display: inline-block;
|
|
3647
3736
|
padding: 0.25rem 0.375rem;
|
|
@@ -3650,15 +3739,6 @@ table pre {
|
|
|
3650
3739
|
color: black;
|
|
3651
3740
|
border-color: black;
|
|
3652
3741
|
}
|
|
3653
|
-
[data-is-toc] {
|
|
3654
|
-
font-size: 87.5%;
|
|
3655
|
-
}
|
|
3656
|
-
[data-is-toc] a {
|
|
3657
|
-
text-decoration: none;
|
|
3658
|
-
}
|
|
3659
|
-
[data-is-toc] > ul > * > a {
|
|
3660
|
-
font-weight: 500;
|
|
3661
|
-
}
|
|
3662
3742
|
.breakout > img,
|
|
3663
3743
|
.breakout > figure,
|
|
3664
3744
|
.breakout-all > img,
|
package/css/pico.blades.min.css
CHANGED
|
@@ -106,8 +106,8 @@ button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus
|
|
|
106
106
|
button:focus,[type=submit]:focus,[type=button]:focus,[role=button]:focus
|
|
107
107
|
) select{border-color:transparent}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus),[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus){--pico-group-box-shadow:var(--pico-group-box-shadow-focus-with-input)}[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=group]:has(input:not([type=submit],[type=button]):focus,select:focus) button,[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [role=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=button],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) [type=submit],[role=search]:has(input:not([type=submit],[type=button]):focus,select:focus) button{--pico-button-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-border);--pico-button-hover-box-shadow:0 0 0 var(--pico-border-width) var(--pico-primary-hover-border)}[role=group] [role=button]:focus,[role=group] [type=button]:focus,[role=group] [type=reset]:focus,[role=group] [type=submit]:focus,[role=group] button:focus,[role=search] [role=button]:focus,[role=search] [type=button]:focus,[role=search] [type=reset]:focus,[role=search] [type=submit]:focus,[role=search] button:focus{box-shadow:none}}[role=search]>:first-child{border-top-left-radius:5rem;border-bottom-left-radius:5rem}[role=search]>:last-child{border-top-right-radius:5rem;border-bottom-right-radius:5rem}[aria-busy=true]:not(input,select,textarea,html,form){white-space:nowrap}[aria-busy=true]:not(input,select,textarea,html,form)::before{display:inline-block;width:1em;height:1em;background-image:var(--pico-icon-loading);background-size:1em auto;background-repeat:no-repeat;content:"";vertical-align:-.125em}[aria-busy=true]:not(input,select,textarea,html,form):not(:empty)::before{margin-inline-end:calc(var(--pico-spacing) * .5)}[aria-busy=true]:not(input,select,textarea,html,form):empty{text-align:center}[role=button][aria-busy=true],[type=button][aria-busy=true],[type=reset][aria-busy=true],[type=submit][aria-busy=true],a[aria-busy=true],button[aria-busy=true]{pointer-events:none}:host,:root{--pico-scrollbar-width:0px}dialog{display:flex;z-index:999;position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;width:inherit;min-width:100%;height:inherit;min-height:100%;padding:0;border:0;backdrop-filter:var(--pico-modal-overlay-backdrop-filter);background-color:var(--pico-modal-overlay-background-color);color:var(--pico-color)}dialog>article{width:100%;max-height:calc(100vh - var(--pico-spacing) * 2);margin:var(--pico-spacing);overflow:auto}@media (min-width:576px){dialog>article{max-width:510px}}@media (min-width:768px){dialog>article{max-width:700px}}dialog>article>header>*{margin-bottom:0}dialog>article>header .close,dialog>article>header :is(a,button)[rel=prev]{margin:0;margin-left:var(--pico-spacing);padding:0;float:right}dialog>article>footer{text-align:end}dialog>article>footer [role=button],dialog>article>footer button{margin-bottom:0}dialog>article>footer [role=button]:not(:first-of-type),dialog>article>footer button:not(:first-of-type){margin-left:calc(var(--pico-spacing) * .5)}dialog>article .close,dialog>article :is(a,button)[rel=prev]{display:block;width:1rem;height:1rem;margin-top:calc(var(--pico-spacing) * -1);margin-bottom:var(--pico-spacing);margin-left:auto;border:none;background-image:var(--pico-icon-close);background-position:center;background-size:auto 1rem;background-repeat:no-repeat;background-color:transparent;opacity:.5;transition:opacity var(--pico-transition)}dialog>article .close:is([aria-current]:not([aria-current=false]),:hover,:active,:focus),dialog>article :is(a,button)[rel=prev]:is(
|
|
108
108
|
[aria-current]:not([aria-current=false]),:hover,:active,:focus
|
|
109
|
-
){opacity:1}dialog:not([open]),dialog[open=false]{display:none}.modal-is-open{padding-right:var(--pico-scrollbar-width,0);overflow:hidden;pointer-events:none;touch-action:none}.modal-is-open dialog{pointer-events:auto;touch-action:auto}:where(.modal-is-opening,.modal-is-closing) dialog,:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-duration:.2s;animation-timing-function:ease-in-out;animation-fill-mode:both}:where(.modal-is-opening,.modal-is-closing) dialog{animation-duration:.8s;animation-name:modal-overlay}:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-delay:.2s;animation-name:modal}.modal-is-closing dialog,.modal-is-closing dialog>article{animation-delay:0s;animation-direction:reverse}@keyframes modal-overlay{from{backdrop-filter:none;background-color:transparent}}@keyframes modal{from{transform:translateY(-100%);opacity:0}}:where(nav li)::before{float:left;content:""}nav,nav ul{display:flex}nav{justify-content:space-between;overflow:visible}nav ol,nav ul{align-items:center;margin-bottom:0;padding:0;list-style:none}nav ol:first-of-type,nav ul:first-of-type{margin-left:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav ol:last-of-type,nav ul:last-of-type{margin-right:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav li{display:inline-block;margin:0;padding:var(--pico-nav-element-spacing-vertical) var(--pico-nav-element-spacing-horizontal)}nav li :where(a,[role=link]){display:inline-block;margin:calc(var(--pico-nav-link-spacing-vertical) * -1) calc(var(--pico-nav-link-spacing-horizontal) * -1);padding:var(--pico-nav-link-spacing-vertical) var(--pico-nav-link-spacing-horizontal);border-radius:var(--pico-border-radius)}nav li :where(a,[role=link]):not(:hover){text-decoration:none}nav li [role=button],nav li [type=button],nav li button,nav li input:not([type=checkbox],[type=radio],[type=range],[type=file]),nav li select{height:auto;margin-right:inherit;margin-bottom:0;margin-left:inherit;padding:calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb]{align-items:center;justify-content:start}nav[aria-label=breadcrumb] ul li:not(:first-child){margin-inline-start:var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb] ul li a{margin:calc(var(--pico-nav-link-spacing-vertical) * -1) 0;margin-inline-start:calc(var(--pico-nav-link-spacing-horizontal) * -1)}nav[aria-label=breadcrumb] ul li:not(:last-child)::after{display:inline-block;position:absolute;width:calc(var(--pico-nav-link-spacing-horizontal) * 4);margin:0 calc(var(--pico-nav-link-spacing-horizontal) * -1);content:var(--pico-nav-breadcrumb-divider);color:var(--pico-muted-color);text-align:center;text-decoration:none;white-space:nowrap}nav[aria-label=breadcrumb] a[aria-current]:not([aria-current=false]){background-color:transparent;color:inherit;text-decoration:none;pointer-events:none}aside li,aside nav,aside ol,aside ul{display:block}aside li{padding:calc(var(--pico-nav-element-spacing-vertical) * .5) var(--pico-nav-element-spacing-horizontal)}aside li a{display:block}aside li [role=button]{margin:inherit}[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after{content:"\\"}progress{display:inline-block;vertical-align:baseline}progress{-webkit-appearance:none;-moz-appearance:none;display:inline-block;appearance:none;width:100%;height:.5rem;margin-bottom:calc(var(--pico-spacing) * .5);overflow:hidden;border:0;border-radius:var(--pico-border-radius);background-color:var(--pico-progress-background-color);color:var(--pico-progress-color)}progress::-webkit-progress-bar{border-radius:var(--pico-border-radius);background:0 0}progress[value]::-webkit-progress-value{background-color:var(--pico-progress-color);-webkit-transition:inline-size var(--pico-transition);transition:inline-size var(--pico-transition)}progress::-moz-progress-bar{background-color:var(--pico-progress-color)}@media (prefers-reduced-motion:no-preference){progress:indeterminate{background:var(--pico-progress-background-color) linear-gradient(to right,var(--pico-progress-color) 30%,var(--pico-progress-background-color) 30%) top left/150% 150% no-repeat;animation:progress-indeterminate 1s linear infinite}progress:indeterminate[value]::-webkit-progress-value{background-color:transparent}progress:indeterminate::-moz-progress-bar{background-color:transparent}}@media (prefers-reduced-motion:no-preference){[dir=rtl] progress:indeterminate{animation-direction:reverse}}@keyframes progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}[data-tooltip]{position:relative}[data-tooltip]:not(a,button,input,[role=button]){border-bottom:1px dotted;text-decoration:none;cursor:help}[data-tooltip]::after,[data-tooltip]::before,[data-tooltip][data-placement=top]::after,[data-tooltip][data-placement=top]::before{display:block;z-index:99;position:absolute;bottom:100%;left:50%;padding:.25rem .5rem;overflow:hidden;transform:translate(-50%,-.25rem);border-radius:var(--pico-border-radius);background:var(--pico-tooltip-background-color);content:attr(data-tooltip);color:var(--pico-tooltip-color);font-style:normal;font-weight:var(--pico-font-weight);font-size:.875rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none}[data-tooltip]::after,[data-tooltip][data-placement=top]::after{padding:0;transform:translate(-50%,0);border-top:.3rem solid;border-right:.3rem solid transparent;border-left:.3rem solid transparent;border-radius:0;background-color:transparent;content:"";color:var(--pico-tooltip-background-color)}[data-tooltip][data-placement=bottom]::after,[data-tooltip][data-placement=bottom]::before{top:100%;bottom:auto;transform:translate(-50%,.25rem)}[data-tooltip][data-placement=bottom]:after{transform:translate(-50%,-.3rem);border:.3rem solid transparent;border-bottom:.3rem solid}[data-tooltip][data-placement=left]::after,[data-tooltip][data-placement=left]::before{top:50%;right:100%;bottom:auto;left:auto;transform:translate(-.25rem,-50%)}[data-tooltip][data-placement=left]:after{transform:translate(.3rem,-50%);border:.3rem solid transparent;border-left:.3rem solid}[data-tooltip][data-placement=right]::after,[data-tooltip][data-placement=right]::before{top:50%;right:auto;bottom:auto;left:100%;transform:translate(.25rem,-50%)}[data-tooltip][data-placement=right]:after{transform:translate(-.3rem,-50%);border:.3rem solid transparent;border-right:.3rem solid}[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{opacity:1}@media (hover:hover) and (pointer:fine){[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{--pico-tooltip-slide-to:translate(-50%, -0.25rem);transform:translate(-50%,.75rem);animation-duration:.2s;animation-fill-mode:forwards;animation-name:tooltip-slide;opacity:0}[data-tooltip]:focus::after,[data-tooltip]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, 0rem);transform:translate(-50%,-.25rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:focus::before,[data-tooltip][data-placement=bottom]:hover::after,[data-tooltip][data-placement=bottom]:hover::before{--pico-tooltip-slide-to:translate(-50%, 0.25rem);transform:translate(-50%,-.75rem);animation-name:tooltip-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, -0.3rem);transform:translate(-50%,-.5rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:focus::before,[data-tooltip][data-placement=left]:hover::after,[data-tooltip][data-placement=left]:hover::before{--pico-tooltip-slide-to:translate(-0.25rem, -50%);transform:translate(.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:hover::after{--pico-tooltip-caret-slide-to:translate(0.3rem, -50%);transform:translate(.05rem,-50%);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:focus::before,[data-tooltip][data-placement=right]:hover::after,[data-tooltip][data-placement=right]:hover::before{--pico-tooltip-slide-to:translate(0.25rem, -50%);transform:translate(-.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:hover::after{--pico-tooltip-caret-slide-to:translate(-0.3rem, -50%);transform:translate(-.05rem,-50%);animation-name:tooltip-caret-slide}}@keyframes tooltip-slide{to{transform:var(--pico-tooltip-slide-to);opacity:1}}@keyframes tooltip-caret-slide{50%{opacity:0}to{transform:var(--pico-tooltip-caret-slide-to);opacity:1}}[aria-controls]{cursor:pointer}[aria-disabled=true],[disabled]{cursor:not-allowed}[aria-hidden=false][hidden]{display:initial}[aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);position:absolute}[tabindex],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation}[dir=rtl]{direction:rtl}@media (prefers-reduced-motion:reduce){:not([aria-busy=true])::after,:not([aria-busy=true])::before,:not([aria-busy=true]):not(.unreduce-motion){background-attachment:initial!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important}}html{overflow-x:clip}body{min-height:100dvh}.columns,[data-is-toc]>ol,[data-is-toc]>ul{-moz-columns:30ch auto;columns:30ch auto}.columns>*,[data-is-toc]>ol>*,[data-is-toc]>ul>*{-moz-column-break-inside:avoid;break-inside:avoid}[data-jump-to=top]{position:fixed;bottom:0;right:0;padding-top:50vh;opacity:25%}[data-jump-to=top]:hover{opacity:75%}.breakout,.breakout-all{padding-inline:10%;max-width:calc(10% + 65ch + 10%)}.breakout-all>:is(
|
|
109
|
+
){opacity:1}dialog:not([open]),dialog[open=false]{display:none}.modal-is-open{padding-right:var(--pico-scrollbar-width,0);overflow:hidden;pointer-events:none;touch-action:none}.modal-is-open dialog{pointer-events:auto;touch-action:auto}:where(.modal-is-opening,.modal-is-closing) dialog,:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-duration:.2s;animation-timing-function:ease-in-out;animation-fill-mode:both}:where(.modal-is-opening,.modal-is-closing) dialog{animation-duration:.8s;animation-name:modal-overlay}:where(.modal-is-opening,.modal-is-closing) dialog>article{animation-delay:.2s;animation-name:modal}.modal-is-closing dialog,.modal-is-closing dialog>article{animation-delay:0s;animation-direction:reverse}@keyframes modal-overlay{from{backdrop-filter:none;background-color:transparent}}@keyframes modal{from{transform:translateY(-100%);opacity:0}}:where(nav li)::before{float:left;content:""}nav,nav ul{display:flex}nav{justify-content:space-between;overflow:visible}nav ol,nav ul{align-items:center;margin-bottom:0;padding:0;list-style:none}nav ol:first-of-type,nav ul:first-of-type{margin-left:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav ol:last-of-type,nav ul:last-of-type{margin-right:calc(var(--pico-nav-element-spacing-horizontal) * -1)}nav li{display:inline-block;margin:0;padding:var(--pico-nav-element-spacing-vertical) var(--pico-nav-element-spacing-horizontal)}nav li :where(a,[role=link]){display:inline-block;margin:calc(var(--pico-nav-link-spacing-vertical) * -1) calc(var(--pico-nav-link-spacing-horizontal) * -1);padding:var(--pico-nav-link-spacing-vertical) var(--pico-nav-link-spacing-horizontal);border-radius:var(--pico-border-radius)}nav li :where(a,[role=link]):not(:hover){text-decoration:none}nav li [role=button],nav li [type=button],nav li button,nav li input:not([type=checkbox],[type=radio],[type=range],[type=file]),nav li select{height:auto;margin-right:inherit;margin-bottom:0;margin-left:inherit;padding:calc(var(--pico-nav-link-spacing-vertical) - var(--pico-border-width) * 2) var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb]{align-items:center;justify-content:start}nav[aria-label=breadcrumb] ul li:not(:first-child){margin-inline-start:var(--pico-nav-link-spacing-horizontal)}nav[aria-label=breadcrumb] ul li a{margin:calc(var(--pico-nav-link-spacing-vertical) * -1) 0;margin-inline-start:calc(var(--pico-nav-link-spacing-horizontal) * -1)}nav[aria-label=breadcrumb] ul li:not(:last-child)::after{display:inline-block;position:absolute;width:calc(var(--pico-nav-link-spacing-horizontal) * 4);margin:0 calc(var(--pico-nav-link-spacing-horizontal) * -1);content:var(--pico-nav-breadcrumb-divider);color:var(--pico-muted-color);text-align:center;text-decoration:none;white-space:nowrap}nav[aria-label=breadcrumb] a[aria-current]:not([aria-current=false]){background-color:transparent;color:inherit;text-decoration:none;pointer-events:none}aside li,aside nav,aside ol,aside ul{display:block}aside li{padding:calc(var(--pico-nav-element-spacing-vertical) * .5) var(--pico-nav-element-spacing-horizontal)}aside li a{display:block}aside li [role=button]{margin:inherit}[dir=rtl] nav[aria-label=breadcrumb] ul li:not(:last-child) ::after{content:"\\"}progress{display:inline-block;vertical-align:baseline}progress{-webkit-appearance:none;-moz-appearance:none;display:inline-block;appearance:none;width:100%;height:.5rem;margin-bottom:calc(var(--pico-spacing) * .5);overflow:hidden;border:0;border-radius:var(--pico-border-radius);background-color:var(--pico-progress-background-color);color:var(--pico-progress-color)}progress::-webkit-progress-bar{border-radius:var(--pico-border-radius);background:0 0}progress[value]::-webkit-progress-value{background-color:var(--pico-progress-color);-webkit-transition:inline-size var(--pico-transition);transition:inline-size var(--pico-transition)}progress::-moz-progress-bar{background-color:var(--pico-progress-color)}@media (prefers-reduced-motion:no-preference){progress:indeterminate{background:var(--pico-progress-background-color) linear-gradient(to right,var(--pico-progress-color) 30%,var(--pico-progress-background-color) 30%) top left/150% 150% no-repeat;animation:progress-indeterminate 1s linear infinite}progress:indeterminate[value]::-webkit-progress-value{background-color:transparent}progress:indeterminate::-moz-progress-bar{background-color:transparent}}@media (prefers-reduced-motion:no-preference){[dir=rtl] progress:indeterminate{animation-direction:reverse}}@keyframes progress-indeterminate{0%{background-position:200% 0}100%{background-position:-200% 0}}[data-tooltip]{position:relative}[data-tooltip]:not(a,button,input,[role=button]){border-bottom:1px dotted;text-decoration:none;cursor:help}[data-tooltip]::after,[data-tooltip]::before,[data-tooltip][data-placement=top]::after,[data-tooltip][data-placement=top]::before{display:block;z-index:99;position:absolute;bottom:100%;left:50%;padding:.25rem .5rem;overflow:hidden;transform:translate(-50%,-.25rem);border-radius:var(--pico-border-radius);background:var(--pico-tooltip-background-color);content:attr(data-tooltip);color:var(--pico-tooltip-color);font-style:normal;font-weight:var(--pico-font-weight);font-size:.875rem;text-decoration:none;text-overflow:ellipsis;white-space:nowrap;opacity:0;pointer-events:none}[data-tooltip]::after,[data-tooltip][data-placement=top]::after{padding:0;transform:translate(-50%,0);border-top:.3rem solid;border-right:.3rem solid transparent;border-left:.3rem solid transparent;border-radius:0;background-color:transparent;content:"";color:var(--pico-tooltip-background-color)}[data-tooltip][data-placement=bottom]::after,[data-tooltip][data-placement=bottom]::before{top:100%;bottom:auto;transform:translate(-50%,.25rem)}[data-tooltip][data-placement=bottom]:after{transform:translate(-50%,-.3rem);border:.3rem solid transparent;border-bottom:.3rem solid}[data-tooltip][data-placement=left]::after,[data-tooltip][data-placement=left]::before{top:50%;right:100%;bottom:auto;left:auto;transform:translate(-.25rem,-50%)}[data-tooltip][data-placement=left]:after{transform:translate(.3rem,-50%);border:.3rem solid transparent;border-left:.3rem solid}[data-tooltip][data-placement=right]::after,[data-tooltip][data-placement=right]::before{top:50%;right:auto;bottom:auto;left:100%;transform:translate(.25rem,-50%)}[data-tooltip][data-placement=right]:after{transform:translate(-.3rem,-50%);border:.3rem solid transparent;border-right:.3rem solid}[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{opacity:1}@media (hover:hover) and (pointer:fine){[data-tooltip]:focus::after,[data-tooltip]:focus::before,[data-tooltip]:hover::after,[data-tooltip]:hover::before{--pico-tooltip-slide-to:translate(-50%, -0.25rem);transform:translate(-50%,.75rem);animation-duration:.2s;animation-fill-mode:forwards;animation-name:tooltip-slide;opacity:0}[data-tooltip]:focus::after,[data-tooltip]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, 0rem);transform:translate(-50%,-.25rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:focus::before,[data-tooltip][data-placement=bottom]:hover::after,[data-tooltip][data-placement=bottom]:hover::before{--pico-tooltip-slide-to:translate(-50%, 0.25rem);transform:translate(-50%,-.75rem);animation-name:tooltip-slide}[data-tooltip][data-placement=bottom]:focus::after,[data-tooltip][data-placement=bottom]:hover::after{--pico-tooltip-caret-slide-to:translate(-50%, -0.3rem);transform:translate(-50%,-.5rem);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:focus::before,[data-tooltip][data-placement=left]:hover::after,[data-tooltip][data-placement=left]:hover::before{--pico-tooltip-slide-to:translate(-0.25rem, -50%);transform:translate(.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=left]:focus::after,[data-tooltip][data-placement=left]:hover::after{--pico-tooltip-caret-slide-to:translate(0.3rem, -50%);transform:translate(.05rem,-50%);animation-name:tooltip-caret-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:focus::before,[data-tooltip][data-placement=right]:hover::after,[data-tooltip][data-placement=right]:hover::before{--pico-tooltip-slide-to:translate(0.25rem, -50%);transform:translate(-.75rem,-50%);animation-name:tooltip-slide}[data-tooltip][data-placement=right]:focus::after,[data-tooltip][data-placement=right]:hover::after{--pico-tooltip-caret-slide-to:translate(-0.3rem, -50%);transform:translate(-.05rem,-50%);animation-name:tooltip-caret-slide}}@keyframes tooltip-slide{to{transform:var(--pico-tooltip-slide-to);opacity:1}}@keyframes tooltip-caret-slide{50%{opacity:0}to{transform:var(--pico-tooltip-caret-slide-to);opacity:1}}[aria-controls]{cursor:pointer}[aria-disabled=true],[disabled]{cursor:not-allowed}[aria-hidden=false][hidden]{display:initial}[aria-hidden=false][hidden]:not(:focus){clip:rect(0,0,0,0);position:absolute}[tabindex],a,area,button,input,label,select,summary,textarea{-ms-touch-action:manipulation}[dir=rtl]{direction:rtl}@media (prefers-reduced-motion:reduce){:not([aria-busy=true])::after,:not([aria-busy=true])::before,:not([aria-busy=true]):not(.unreduce-motion){background-attachment:initial!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-delay:0s!important;transition-duration:0s!important}}.columns{-moz-columns:30ch auto;columns:30ch auto}.columns>*{-moz-column-break-inside:avoid;break-inside:avoid}[data-jump-to=top]{position:fixed;bottom:0;right:0;padding-top:50vh}.breakout,.breakout-all{padding-inline:10%;max-width:calc(10% + 65ch + 10%)}.breakout-all>:is(
|
|
110
110
|
table,pre,figure,video,iframe,canvas,img,picture,.breakout-item,.breakout-item-max
|
|
111
111
|
),.breakout>:is(
|
|
112
112
|
table,pre,figure,video,iframe,canvas,img,picture,.breakout-item,.breakout-item-max
|
|
113
|
-
){width:-moz-fit-content;width:fit-content;min-width:100%;max-width:125%;margin-left:50%;transform:translateX(-50%)}.breakout-all>:is(img,picture),.breakout>:is(img,picture){min-width:auto}.breakout-all>.breakout-item-max,.breakout>.breakout-item-max{width:125%!important}.breakout-all>:is(h2,h3,h4,h5,h6,hr):not([class]){position:relative}.breakout-all>:is(h2,h3,h4,h5,h6,hr):not([class])::before{content:"";display:block;position:absolute;background:gray;opacity:12.5%}.breakout-all>:is(h2,h3,h4,h5,h6):not([class])::before{width:10em;right:100%;margin-right:.8ch;height:.25em;top:50%;transform:translateY(-50%);background:linear-gradient(to left,gray,transparent)}.breakout-all>:is(h2,h3,h4,h5,h6):not([class]):where(hr + *)::before{display:none!important}.breakout-all>:is(hr){height:.5rem;border:none;overflow:visible}.breakout-all>:is(hr)::before{width:100vw;left:50%;height:100%;transform:translateX(-50%)}
|
|
113
|
+
){width:-moz-fit-content;width:fit-content;min-width:100%;max-width:125%;margin-left:50%;transform:translateX(-50%)}.breakout-all>:is(img,picture),.breakout>:is(img,picture){min-width:auto}.breakout-all>.breakout-item-max,.breakout>.breakout-item-max{width:125%!important}.breakout-all>:is(h2,h3,h4,h5,h6,hr):not([class]){position:relative}.breakout-all>:is(h2,h3,h4,h5,h6,hr):not([class])::before{content:"";display:block;position:absolute;background:gray;opacity:12.5%}.breakout-all>:is(h2,h3,h4,h5,h6):not([class])::before{width:10em;right:100%;margin-right:.8ch;height:.25em;top:50%;transform:translateY(-50%);background:linear-gradient(to left,gray,transparent)}.breakout-all>:is(h2,h3,h4,h5,h6):not([class]):where(hr + *)::before{display:none!important}.breakout-all>:is(hr){height:.5rem;border:none;overflow:visible}.breakout-all>:is(hr)::before{width:100vw;left:50%;height:100%;transform:translateX(-50%)}h1,h2,h3,h4,h5,h6{position:relative}h1 a[href^="#"],h2 a[href^="#"],h3 a[href^="#"],h4 a[href^="#"],h5 a[href^="#"],h6 a[href^="#"]{position:absolute;right:100%;top:50%;transform:translateY(-50%);padding-right:.2ch;color:silver;text-decoration:none;visibility:hidden}@media (hover:hover){h1:hover a[href^="#"],h2:hover a[href^="#"],h3:hover a[href^="#"],h4:hover a[href^="#"],h5:hover a[href^="#"],h6:hover a[href^="#"]{visibility:visible}}ol[style*="--list-marker:"],ul[style*="--list-marker:"]{list-style-type:var(--list-marker)}ol[style*="--list-marker:"]>li,ul[style*="--list-marker:"]>li{list-style-type:inherit}ol li[style*="--list-marker:"],ul li[style*="--list-marker:"]{list-style-type:var(--list-marker)}ol li[data-marker]::marker,ul li[data-marker]::marker{content:attr(data-marker) " "}.unlist-all ol,.unlist-all ul,ol.unlist,ol.unlist-all,ul.unlist,ul.unlist-all{padding-inline-start:0}.unlist-all ol>li,.unlist-all ul>li,ol.unlist-all>li,ol.unlist>li,ul.unlist-all>li,ul.unlist>li{list-style:none}a:has(> i){display:inline-flex;gap:.375ch;overflow-y:clip}a>i{font-style:normal;float:left;text-underline-offset:-2em}a>i>img{height:1.25em;margin-block-start:calc(-0.25em / 2);max-width:none;display:inline-block}a>i[class*=" fa-"],a>i[class^=fa-]{line-height:inherit;--fa-width:auto}a>i.fa-lg{line-height:normal}th hr{width:12ch;height:0;margin:0;visibility:hidden}th hr.lg{width:18ch}th hr.x2{width:24ch}table.borderless td,table.borderless th{border:none}.breakout-all>table:not(.does-not-exist),.breakout>table:not(.does-not-exist),table.responsive{margin-left:50%;transform:translateX(-50%);width:-moz-max-content;width:max-content;min-width:auto;max-width:100vw;padding-inline:7.5%;display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.breakout-all>table:not(.does-not-exist) td,.breakout-all>table:not(.does-not-exist) th,.breakout>table:not(.does-not-exist) td,.breakout>table:not(.does-not-exist) th,table.responsive td,table.responsive th{padding-inline-start:0}pre{padding:1rem 1.5rem;padding-inline-end:2rem}@media (max-width:767px){pre{border-radius:0}}code[data-caption]::before{content:attr(data-caption);display:block;margin-bottom:1rem;opacity:50%;font-style:italic}code:where(pre > *){padding:0}.token.treeview-part .entry-line{width:2.5em!important;opacity:25%}.token.treeview-part .entry-name:last-child{opacity:50%}.token.treeview-part .entry-name:last-child::before{display:none!important}.has-float-label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select){display:block;position:relative}.has-float-label label,.has-float-label>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select)>span{position:absolute;left:0;top:0;cursor:text;font-size:75%}.has-float-label :-moz-placeholder:not(:focus)::-moz-placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) :-moz-placeholder:not(:focus)::-moz-placeholder{opacity:0}.has-float-label :placeholder-shown:not(:focus)::-moz-placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) :placeholder-shown:not(:focus)::-moz-placeholder{opacity:0}.has-float-label :-moz-placeholder:not(:focus)::placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) :-moz-placeholder:not(:focus)::placeholder{opacity:0}.has-float-label :placeholder-shown:not(:focus)::placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) :placeholder-shown:not(:focus)::placeholder{opacity:0}.has-float-label:has(:-moz-placeholder:not(:focus)) label,.has-float-label:has(:-moz-placeholder:not(:focus))>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:-moz-placeholder:not(:focus)) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:-moz-placeholder:not(:focus))>span{font-size:inherit;opacity:50%}.has-float-label:has(:placeholder-shown:not(:focus)) label,.has-float-label:has(:placeholder-shown:not(:focus))>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:placeholder-shown:not(:focus)) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:placeholder-shown:not(:focus))>span{font-size:inherit;opacity:50%}:root{--blades-dark-filter:invert(100%) hue-rotate(180deg)}@media (prefers-color-scheme:dark){.dark-auto{filter:var(--blades-dark-filter)}}.dark-auto:where([data-theme=dark] *),.dark-auto[data-theme=dark]{filter:var(--blades-dark-filter)}.faded{opacity:50%}.faded:hover{opacity:87.5%}.invert ::-webkit-scrollbar{filter:invert(1)!important}.has-float-label label,.has-float-label>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select)>span{padding-inline-start:calc(1rem + 1px);padding-block-start:0.25rem;opacity:75%;transition:all .25s}.has-float-label input,.has-float-label select,.has-float-label textarea,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) input,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) select,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) textarea{margin-block-start:0;padding-inline-start:1rem;padding-block:1.125rem 0.375rem}.has-float-label input::-moz-placeholder,.has-float-label select::-moz-placeholder,.has-float-label textarea::-moz-placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) input::-moz-placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) select::-moz-placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) textarea::-moz-placeholder{opacity:100%;-moz-transition:all .25s;transition:all .25s}.has-float-label input::placeholder,.has-float-label select::placeholder,.has-float-label textarea::placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) input::placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) select::placeholder,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select) textarea::placeholder{opacity:100%;transition:all .25s}.has-float-label:has(:-moz-placeholder:not(:focus)) label,.has-float-label:has(:-moz-placeholder:not(:focus))>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:-moz-placeholder:not(:focus)) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:-moz-placeholder:not(:focus))>span{padding-block:0.75rem}.has-float-label:has(:placeholder-shown:not(:focus)) label,.has-float-label:has(:placeholder-shown:not(:focus))>span,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:placeholder-shown:not(:focus)) label,label:has(input:not([type=checkbox],[type=radio],[type=range]),textarea,select):has(:placeholder-shown:not(:focus))>span{padding-block:0.75rem}html{overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100dvh;display:flex;flex-direction:column}body>main{flex-grow:1}body{text-wrap:pretty;hyphens:auto}body a,body table{hyphens:none}a:not([href^="#"]){text-decoration-thickness:1px}a:not([href^="#"]):hover{text-decoration-thickness:2px}h1{font-size:2.5em;margin-bottom:1rem}hr{margin-block:2em}ul ul{font-size:87.5%}pre small{opacity:75%;font-weight:lighter}table th{vertical-align:bottom;font-weight:700}table td{vertical-align:top}table pre{margin-bottom:.25rem}[data-jump-to=top]{opacity:25%}[data-jump-to=top]:hover{opacity:75%}[data-jump-to=top]>i{display:inline-block;padding:.25rem .375rem;margin:.5rem;font-size:.75rem;color:#000;border-color:#000}.breakout-all>figure,.breakout-all>img,.breakout>figure,.breakout>img{margin-bottom:1rem}.faded a{text-decoration-style:dotted}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anyblades/pico",
|
|
3
|
-
"version": "2.2.0-
|
|
3
|
+
"version": "2.2.0-beta",
|
|
4
4
|
"description": "Minimal CSS Framework for semantic HTML",
|
|
5
5
|
"author": "Lucas Larroche",
|
|
6
6
|
"contributors": [
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"done": "echo '\\033[32m[@anyblades/pico] ✨ Done\\033[0m'"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@anyblades/blades": "^0.28.0-alpha.
|
|
53
|
+
"@anyblades/blades": "^0.28.0-alpha.8",
|
|
54
54
|
"autoprefixer": "^10.4.21",
|
|
55
55
|
"caniuse-lite": "1.0.30001704",
|
|
56
56
|
"clean-css-cli": "^5.6.3",
|