vowel 0.7.1-beta.0 → 0.7.3
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/LICENSE +21 -0
- package/README.md +41 -239
- package/bin.js +91 -31
- package/cli.js +32 -0
- package/config.js +12 -0
- package/extractDate.js +1 -1
- package/package.json +8 -34
- package/pathDate.js +69 -0
- package/plugins/assets/index.js +1 -1
- package/plugins/atproto/body.js +3 -1
- package/plugins/atproto/index.js +5 -45
- package/plugins/atproto/publish.js +42 -11
- package/plugins/atproto/record.js +47 -4
- package/plugins/deploy-cloudflare/index.js +4 -1
- package/plugins/export/index.js +131 -0
- package/plugins/html/bundle/index.js +101 -44
- package/plugins/html/editor/Editor.svelte +9 -5
- package/plugins/html/editor/create-session.js +3 -1
- package/plugins/html/editor/directives.js +12 -0
- package/plugins/html/editor/frontmatter.js +77 -12
- package/plugins/html/editor/ingest.js +29 -31
- package/plugins/html/editor/main.js +5 -1
- package/plugins/html/editor/serialize.js +8 -4
- package/plugins/html/editor/socket.js +34 -4
- package/plugins/html/image.js +88 -27
- package/plugins/html/index.js +237 -109
- package/plugins/html/partials.js +41 -17
- package/plugins/html/socialLinks.js +13 -11
- package/plugins/html/writeRules.js +234 -42
- package/plugins/images/favicon.png +0 -0
- package/plugins/images/index.js +69 -8
- package/plugins/markdown/colorScheme.js +70 -14
- package/plugins/markdown/frontmatter.js +18 -8
- package/plugins/markdown/index.js +94 -25
- package/plugins/markdown/metadata.js +132 -32
- package/plugins/markdown/typography.js +11 -11
- package/plugins/styles/index.js +4 -4
- package/plugins/xml/index.js +17 -10
- package/stylesheets/DefaultStyles.css +163 -108
- package/stylesheets/TypographyStyles.css +148 -81
- package/utils.js +74 -21
|
@@ -3,84 +3,108 @@
|
|
|
3
3
|
Barebones, Basic.css, Pico, Typeplate, Simple.css, and more
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
/*
|
|
7
|
+
Variable names: --{kind}-{subject}-{variant}-{state}-{context},
|
|
8
|
+
general to specific, unused positions dropped, one word per position
|
|
9
|
+
(compounds joined: fontsize, borderradius).
|
|
10
|
+
|
|
11
|
+
kind the CSS type when the value feeds many properties (color,
|
|
12
|
+
url, string), else the property it feeds (fontsize, gap)
|
|
13
|
+
context where it applies: an element (main, article, aside) or a
|
|
14
|
+
component (menu, panel); none means the default
|
|
15
|
+
|
|
16
|
+
--color-link-hover-menu --fontsize-h1-article --color-primary-01
|
|
17
|
+
--_name is internal to a sheet: computed here, not for setting.
|
|
18
|
+
*/
|
|
19
|
+
|
|
6
20
|
@layer reset, typography, default, dynamic-typography;
|
|
7
21
|
|
|
8
22
|
@layer default {
|
|
9
23
|
:root {
|
|
10
24
|
|
|
11
25
|
/* vertical space between main sections */
|
|
12
|
-
--large
|
|
26
|
+
--gap-large: 3em;
|
|
13
27
|
|
|
14
28
|
/* vertical space within content */
|
|
15
|
-
--small
|
|
29
|
+
--gap-small: 2em;
|
|
16
30
|
|
|
17
31
|
/* horizontal space between items */
|
|
18
|
-
--gutter: 2em;
|
|
32
|
+
--gap-gutter: 2em;
|
|
19
33
|
|
|
20
34
|
/* main body maximum width */
|
|
21
35
|
--width-body: 100ch;
|
|
22
36
|
|
|
23
|
-
--separator-breadcrumb: "/";
|
|
37
|
+
--string-separator-breadcrumb: "/";
|
|
24
38
|
|
|
25
39
|
/* borders */
|
|
26
|
-
--
|
|
27
|
-
--
|
|
40
|
+
--borderradius-tight: 5px;
|
|
41
|
+
--borderradius-loose: calc(clamp(0.3rem, 1vw, 0.7rem) + 2px);
|
|
28
42
|
|
|
29
43
|
/* body colors */
|
|
30
|
-
--color-background-body: light-dark(var(--primary-10), var(--primary-01));
|
|
31
|
-
--color-text-body: light-dark(var(--primary-01), var(--primary-10));
|
|
32
|
-
--color-heading-body: light-dark(var(--primary-01), var(--primary-09));
|
|
33
|
-
--color-link-body: light-dark(var(--secondary-05), var(--secondary-09));
|
|
34
|
-
--color-link-hover-body: light-dark(var(--secondary-07), var(--secondary-10));
|
|
35
|
-
--color-border-body: light-dark(var(--primary-07), var(--primary-
|
|
36
|
-
--color-highlight-body: light-dark(var(--secondary-08), var(--secondary-03));
|
|
44
|
+
--color-background-body: light-dark(var(--color-primary-10), var(--color-primary-01));
|
|
45
|
+
--color-text-body: light-dark(var(--color-primary-01), var(--color-primary-10));
|
|
46
|
+
--color-heading-body: light-dark(var(--color-primary-01), var(--color-primary-09));
|
|
47
|
+
--color-link-body: light-dark(var(--color-secondary-05), var(--color-secondary-09));
|
|
48
|
+
--color-link-hover-body: light-dark(var(--color-secondary-07), var(--color-secondary-10));
|
|
49
|
+
--color-border-body: light-dark(var(--color-primary-07), var(--color-primary-03));
|
|
50
|
+
--color-highlight-body: light-dark(var(--color-secondary-08), var(--color-secondary-03));
|
|
37
51
|
|
|
38
52
|
/* menu colors */
|
|
39
|
-
--color-background-menu: light-dark(var(--primary-09), var(--primary-02));
|
|
40
|
-
--color-surface-menu: light-dark(var(--tertiary-09), var(--tertiary-02));
|
|
41
|
-
--color-surface-
|
|
42
|
-
--color-border-menu: light-dark(var(--primary-07), var(--primary-03));
|
|
43
|
-
--color-link-menu: light-dark(var(--tertiary-04), var(--tertiary-09));
|
|
44
|
-
--color-link-disabled-menu: light-dark(var(--secondary-04), var(--secondary-07));
|
|
45
|
-
--color-link-hover-menu: light-dark(var(--tertiary-06), var(--tertiary-10));
|
|
53
|
+
--color-background-menu: light-dark(var(--color-primary-09), var(--color-primary-02));
|
|
54
|
+
--color-surface-menu: light-dark(var(--color-tertiary-09), var(--color-tertiary-02));
|
|
55
|
+
--color-border-surface-menu: light-dark(var(--color-tertiary-09), var(--color-tertiary-01));
|
|
56
|
+
--color-border-menu: light-dark(var(--color-primary-07), var(--color-primary-03));
|
|
57
|
+
--color-link-menu: light-dark(var(--color-tertiary-04), var(--color-tertiary-09));
|
|
58
|
+
--color-link-disabled-menu: light-dark(var(--color-secondary-04), var(--color-secondary-07));
|
|
59
|
+
--color-link-hover-menu: light-dark(var(--color-tertiary-06), var(--color-tertiary-10));
|
|
46
60
|
|
|
47
61
|
/* panel colors */
|
|
48
|
-
--color-background-panel: light-dark(var(--primary-09), var(--primary-02));
|
|
49
|
-
--color-background-hover-panel: light-dark(var(--primary-09), var(--primary-02));
|
|
50
|
-
--color-border-panel: light-dark(var(--primary-08), var(--primary-02));
|
|
51
|
-
--color-text-panel: light-dark(var(--primary-02), var(--primary-08));
|
|
52
|
-
--color-text-hover-panel: light-dark(var(--primary-02), var(--primary-08));
|
|
53
|
-
--color-border-hover-panel: light-dark(var(--accent-08), var(--accent-05));
|
|
62
|
+
--color-background-panel: light-dark(var(--color-primary-09), var(--color-primary-02));
|
|
63
|
+
--color-background-hover-panel: light-dark(var(--color-primary-09), var(--color-primary-02));
|
|
64
|
+
--color-border-panel: light-dark(var(--color-primary-08), var(--color-primary-02));
|
|
65
|
+
--color-text-panel: light-dark(var(--color-primary-02), var(--color-primary-08));
|
|
66
|
+
--color-text-hover-panel: light-dark(var(--color-primary-02), var(--color-primary-08));
|
|
67
|
+
--color-border-hover-panel: light-dark(var(--color-accent-08), var(--color-accent-05));
|
|
54
68
|
|
|
55
69
|
/* pre colors */
|
|
56
|
-
--color-background-pre: light-dark(var(--tertiary-09), var(--tertiary-02));
|
|
57
|
-
--color-border-pre: light-dark(var(--tertiary-08), var(--tertiary-01));
|
|
58
|
-
--color-text-pre: light-dark(var(--tertiary-02), var(--tertiary-02));
|
|
59
|
-
|
|
60
|
-
/*
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
--color-
|
|
68
|
-
--color-
|
|
69
|
-
--color-
|
|
70
|
-
|
|
71
|
-
--color-
|
|
72
|
-
|
|
73
|
-
--color-
|
|
74
|
-
--color-
|
|
75
|
-
--color-
|
|
76
|
-
|
|
77
|
-
--color-
|
|
78
|
-
|
|
79
|
-
--color-
|
|
80
|
-
--color-
|
|
81
|
-
--color-
|
|
82
|
-
|
|
83
|
-
--color-
|
|
70
|
+
--color-background-pre: light-dark(var(--color-tertiary-09), var(--color-tertiary-02));
|
|
71
|
+
--color-border-pre: light-dark(var(--color-tertiary-08), var(--color-tertiary-01));
|
|
72
|
+
--color-text-pre: light-dark(var(--color-tertiary-02), var(--color-tertiary-02));
|
|
73
|
+
|
|
74
|
+
/*
|
|
75
|
+
alert colors: --color-{element}-alert-{type} for the types the
|
|
76
|
+
theme colours, and --color-{element}-alert for any other type
|
|
77
|
+
([!CARD] is .alert.card): set those inside .alert.card to
|
|
78
|
+
colour your own
|
|
79
|
+
*/
|
|
80
|
+
--color-text-alert: var(--color-text-body);
|
|
81
|
+
--color-heading-alert: var(--color-heading-body);
|
|
82
|
+
--color-background-alert: transparent;
|
|
83
|
+
--color-border-alert: var(--color-border-body);
|
|
84
|
+
|
|
85
|
+
--color-text-alert-warning: light-dark(var(--color-warning-01), var(--color-warning-10));
|
|
86
|
+
--color-heading-alert-warning: light-dark(var(--color-warning-02), var(--color-warning-09));
|
|
87
|
+
--color-icon-alert-warning: light-dark(var(--color-warning-04), var(--color-warning-07));
|
|
88
|
+
--color-background-alert-warning: light-dark(var(--color-warning-09), var(--color-warning-02));
|
|
89
|
+
--color-border-alert-warning: light-dark(var(--color-warning-07), var(--color-warning-04));
|
|
90
|
+
|
|
91
|
+
--color-text-alert-note: light-dark(var(--color-info-01), var(--color-info-10));
|
|
92
|
+
--color-heading-alert-note: light-dark(var(--color-info-02), var(--color-info-09));
|
|
93
|
+
--color-icon-alert-note: light-dark(var(--color-info-04), var(--color-info-07));
|
|
94
|
+
--color-background-alert-note: light-dark(var(--color-info-09), var(--color-info-02));
|
|
95
|
+
--color-border-alert-note: light-dark(var(--color-info-07), var(--color-info-04));
|
|
96
|
+
|
|
97
|
+
--color-text-alert-success: light-dark(var(--color-success-01), var(--color-success-10));
|
|
98
|
+
--color-heading-alert-success: light-dark(var(--color-success-02), var(--color-success-09));
|
|
99
|
+
--color-icon-alert-success: light-dark(var(--color-success-04), var(--color-success-07));
|
|
100
|
+
--color-background-alert-success: light-dark(var(--color-success-09), var(--color-success-02));
|
|
101
|
+
--color-border-alert-success: light-dark(var(--color-success-07), var(--color-success-04));
|
|
102
|
+
|
|
103
|
+
--color-text-alert-danger: light-dark(var(--color-danger-01), var(--color-danger-10));
|
|
104
|
+
--color-heading-alert-danger: light-dark(var(--color-danger-02), var(--color-danger-09));
|
|
105
|
+
--color-icon-alert-danger: light-dark(var(--color-danger-04), var(--color-danger-07));
|
|
106
|
+
--color-background-alert-danger: light-dark(var(--color-danger-09), var(--color-danger-02));
|
|
107
|
+
--color-border-alert-danger: light-dark(var(--color-danger-07), var(--color-danger-04));
|
|
84
108
|
|
|
85
109
|
/* automatic dark mode */
|
|
86
110
|
color-scheme: light dark;
|
|
@@ -128,7 +152,7 @@
|
|
|
128
152
|
}
|
|
129
153
|
|
|
130
154
|
&:hover {
|
|
131
|
-
color: var(--color-link-body
|
|
155
|
+
color: var(--color-link-hover-body);
|
|
132
156
|
}
|
|
133
157
|
|
|
134
158
|
&:before {
|
|
@@ -138,7 +162,7 @@
|
|
|
138
162
|
|
|
139
163
|
nav[aria-label=Contents]>ol {
|
|
140
164
|
/* background: var(--color-surface-menu); */
|
|
141
|
-
/* border-color: var(--color-surface-
|
|
165
|
+
/* border-color: var(--color-border-surface-menu); */
|
|
142
166
|
|
|
143
167
|
a {
|
|
144
168
|
|
|
@@ -198,6 +222,10 @@
|
|
|
198
222
|
display: grid;
|
|
199
223
|
grid-template-columns: subgrid;
|
|
200
224
|
align-items: baseline;
|
|
225
|
+
|
|
226
|
+
nav {
|
|
227
|
+
justify-self: end;
|
|
228
|
+
}
|
|
201
229
|
}
|
|
202
230
|
|
|
203
231
|
&>main {
|
|
@@ -206,6 +234,7 @@
|
|
|
206
234
|
|
|
207
235
|
display: grid;
|
|
208
236
|
grid-template-columns: subgrid;
|
|
237
|
+
align-content: start;
|
|
209
238
|
|
|
210
239
|
&>* {
|
|
211
240
|
grid-column-start: 1;
|
|
@@ -268,9 +297,6 @@
|
|
|
268
297
|
}
|
|
269
298
|
|
|
270
299
|
nav {
|
|
271
|
-
border-radius: var(--border-radius-tight);
|
|
272
|
-
border: 1px solid var(--color-menu-border);
|
|
273
|
-
|
|
274
300
|
&>:first-child~* {
|
|
275
301
|
display: none;
|
|
276
302
|
}
|
|
@@ -285,6 +311,7 @@
|
|
|
285
311
|
ul {
|
|
286
312
|
list-style: none;
|
|
287
313
|
display: flex;
|
|
314
|
+
flex-wrap: wrap;
|
|
288
315
|
gap: 2ch;
|
|
289
316
|
}
|
|
290
317
|
|
|
@@ -295,23 +322,17 @@
|
|
|
295
322
|
text-transform: uppercase;
|
|
296
323
|
|
|
297
324
|
&+a:before {
|
|
298
|
-
content: var(--separator-breadcrumb);
|
|
325
|
+
content: var(--string-separator-breadcrumb);
|
|
299
326
|
margin-inline: 1ch;
|
|
300
327
|
}
|
|
301
328
|
}
|
|
302
329
|
|
|
303
|
-
/* TODO: Only render contents when necessary */
|
|
304
|
-
nav[aria-label=Contents]:has(>ol:empty),
|
|
305
|
-
nav[aria-label=Contents]:has(>ol>li:only-of-type>a) {
|
|
306
|
-
display: none;
|
|
307
|
-
}
|
|
308
|
-
|
|
309
330
|
/* table of contents */
|
|
310
331
|
|
|
311
332
|
nav[aria-label=Contents]>ol {
|
|
312
333
|
/* border-width: 1px; */
|
|
313
334
|
/* border-style: solid; */
|
|
314
|
-
/* border-radius: var(--
|
|
335
|
+
/* border-radius: var(--borderradius-tight); */
|
|
315
336
|
height: max-content;
|
|
316
337
|
max-height: 80vh;
|
|
317
338
|
|
|
@@ -376,6 +397,27 @@
|
|
|
376
397
|
}
|
|
377
398
|
}
|
|
378
399
|
|
|
400
|
+
/*
|
|
401
|
+
A hack, on purpose, for social link icons only: each takes the
|
|
402
|
+
colour of the text around it. The <img>'s background is that
|
|
403
|
+
colour and its own url (--url-icon) is the mask; object-position
|
|
404
|
+
moves its own pixels out of its box, where the browser clips
|
|
405
|
+
them. It keeps its size and its alt. The logo and inline icons
|
|
406
|
+
carry their url the same way (--url-logo, --url-icon) for an
|
|
407
|
+
author who wants this.
|
|
408
|
+
*/
|
|
409
|
+
.social-links img {
|
|
410
|
+
background: currentColor;
|
|
411
|
+
mask: var(--url-icon) center / contain no-repeat;
|
|
412
|
+
object-position: -100vmax 0;
|
|
413
|
+
}
|
|
414
|
+
|
|
415
|
+
/* images: a blurry copy behind each one while it loads */
|
|
416
|
+
|
|
417
|
+
picture>img {
|
|
418
|
+
background: var(--url-image-placeholder, none) center / cover no-repeat;
|
|
419
|
+
}
|
|
420
|
+
|
|
379
421
|
/* main */
|
|
380
422
|
|
|
381
423
|
main>p:where([itemprop=description]) {
|
|
@@ -386,20 +428,22 @@
|
|
|
386
428
|
main {
|
|
387
429
|
|
|
388
430
|
max-width: min(80rch, 100%);
|
|
389
|
-
margin-bottom: var(--large
|
|
431
|
+
margin-bottom: var(--gap-large);
|
|
390
432
|
overflow-x: clip;
|
|
391
433
|
/* position: relative; */
|
|
392
434
|
|
|
393
435
|
table {
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
thead {
|
|
398
|
-
position: sticky;
|
|
399
|
-
top: 0;
|
|
436
|
+
th,
|
|
437
|
+
td {
|
|
438
|
+
vertical-align: top;
|
|
400
439
|
}
|
|
401
440
|
}
|
|
402
441
|
|
|
442
|
+
/* the page's own image, beside its title, as well as the content's */
|
|
443
|
+
img {
|
|
444
|
+
border-radius: var(--borderradius-tight);
|
|
445
|
+
}
|
|
446
|
+
|
|
403
447
|
/* content */
|
|
404
448
|
|
|
405
449
|
section#content {
|
|
@@ -416,10 +460,6 @@
|
|
|
416
460
|
}
|
|
417
461
|
}
|
|
418
462
|
|
|
419
|
-
img {
|
|
420
|
-
border-radius: var(--border-radius-tight);
|
|
421
|
-
}
|
|
422
|
-
|
|
423
463
|
mark,
|
|
424
464
|
code {
|
|
425
465
|
padding: 0.1cap 0.5ch;
|
|
@@ -434,7 +474,7 @@
|
|
|
434
474
|
pre,
|
|
435
475
|
:not(pre)>code {
|
|
436
476
|
border: 1px solid var(--color-border-pre);
|
|
437
|
-
border-radius: var(--
|
|
477
|
+
border-radius: var(--borderradius-tight);
|
|
438
478
|
}
|
|
439
479
|
|
|
440
480
|
|
|
@@ -453,6 +493,15 @@
|
|
|
453
493
|
border-bottom: 1px solid var(--color-border-body);
|
|
454
494
|
}
|
|
455
495
|
|
|
496
|
+
/*
|
|
497
|
+
Tables fill the content's width, the spare space shared
|
|
498
|
+
between columns by their content. A table too wide for the
|
|
499
|
+
page scrolls inside its <figure> (the typography sheet).
|
|
500
|
+
*/
|
|
501
|
+
table {
|
|
502
|
+
width: 100%;
|
|
503
|
+
}
|
|
504
|
+
|
|
456
505
|
hr {
|
|
457
506
|
border-top: 1px solid var(--color-border-body);
|
|
458
507
|
}
|
|
@@ -473,7 +522,7 @@
|
|
|
473
522
|
background: var(--color-background-panel);
|
|
474
523
|
transition-property: border-color, box-shadow, color;
|
|
475
524
|
transition-duration: 0.2s;
|
|
476
|
-
border-radius: var(--
|
|
525
|
+
border-radius: var(--borderradius-loose);
|
|
477
526
|
|
|
478
527
|
a &:hover {
|
|
479
528
|
border-color: var(--color-border-hover-panel);
|
|
@@ -491,61 +540,67 @@
|
|
|
491
540
|
/* alerts */
|
|
492
541
|
|
|
493
542
|
aside.alert {
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
543
|
+
/* GitHub's CAUTION and TIP share DANGER's and SUCCESS's colours */
|
|
544
|
+
&.danger,
|
|
545
|
+
&.caution {
|
|
546
|
+
--string-alert-icon: '⛔️';
|
|
547
|
+
background: var(--color-background-alert-danger);
|
|
548
|
+
color: var(--color-text-alert-danger);
|
|
549
|
+
border-color: var(--color-border-alert-danger);
|
|
499
550
|
|
|
500
551
|
h2 {
|
|
501
|
-
color: var(--color-heading-danger);
|
|
552
|
+
color: var(--color-heading-alert-danger);
|
|
502
553
|
}
|
|
503
554
|
}
|
|
504
555
|
|
|
505
556
|
&.note {
|
|
506
|
-
--icon: 'ℹ️';
|
|
507
|
-
background: var(--color-background-note);
|
|
508
|
-
color: var(--color-text-note);
|
|
509
|
-
border-color: var(--color-border-note);
|
|
557
|
+
--string-alert-icon: 'ℹ️';
|
|
558
|
+
background: var(--color-background-alert-note);
|
|
559
|
+
color: var(--color-text-alert-note);
|
|
560
|
+
border-color: var(--color-border-alert-note);
|
|
510
561
|
|
|
511
562
|
h2 {
|
|
512
|
-
color: var(--color-heading-note);
|
|
563
|
+
color: var(--color-heading-alert-note);
|
|
513
564
|
}
|
|
514
565
|
}
|
|
515
566
|
|
|
516
|
-
&.success
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
567
|
+
&.success,
|
|
568
|
+
&.tip {
|
|
569
|
+
--string-alert-icon: '💡';
|
|
570
|
+
background: var(--color-background-alert-success);
|
|
571
|
+
color: var(--color-text-alert-success);
|
|
572
|
+
border-color: var(--color-border-alert-success);
|
|
521
573
|
|
|
522
574
|
h2 {
|
|
523
|
-
color: var(--color-heading-success);
|
|
575
|
+
color: var(--color-heading-alert-success);
|
|
524
576
|
}
|
|
525
577
|
}
|
|
526
578
|
|
|
527
579
|
&.warning {
|
|
528
|
-
--icon: '⚠️';
|
|
529
|
-
background: var(--color-background-warning);
|
|
530
|
-
color: var(--color-text-warning);
|
|
531
|
-
border-color: var(--color-border-warning);
|
|
580
|
+
--string-alert-icon: '⚠️';
|
|
581
|
+
background: var(--color-background-alert-warning);
|
|
582
|
+
color: var(--color-text-alert-warning);
|
|
583
|
+
border-color: var(--color-border-alert-warning);
|
|
532
584
|
|
|
533
585
|
h2 {
|
|
534
|
-
color: var(--color-heading-warning);
|
|
586
|
+
color: var(--color-heading-alert-warning);
|
|
535
587
|
}
|
|
536
588
|
}
|
|
537
589
|
|
|
590
|
+
background: var(--color-background-alert);
|
|
591
|
+
color: var(--color-text-alert);
|
|
592
|
+
border-color: var(--color-border-alert);
|
|
538
593
|
border-left-width: 0.5ch;
|
|
539
594
|
border-left-style: solid;
|
|
540
595
|
|
|
541
596
|
h2 {
|
|
542
|
-
color: var(--heading);
|
|
597
|
+
color: var(--color-heading-alert);
|
|
543
598
|
|
|
544
599
|
&:before {
|
|
545
600
|
font-size: 0.8em;
|
|
546
601
|
margin-right: 0.7rem;
|
|
547
602
|
opacity: 0.9;
|
|
548
|
-
content: var(--icon);
|
|
603
|
+
content: var(--string-alert-icon);
|
|
549
604
|
}
|
|
550
605
|
}
|
|
551
606
|
}
|
|
@@ -604,18 +659,18 @@ footer {
|
|
|
604
659
|
|
|
605
660
|
/* homepage */
|
|
606
661
|
@media (min-width: 140rch) {
|
|
607
|
-
body.
|
|
662
|
+
body.page_home {
|
|
608
663
|
grid-template-columns: 1fr 15rch 70rch 15rch 1fr;
|
|
609
664
|
}
|
|
610
665
|
}
|
|
611
666
|
|
|
612
|
-
body.
|
|
667
|
+
body.page_home {
|
|
613
668
|
|
|
614
669
|
|
|
615
670
|
/*
|
|
616
|
-
The homepage's
|
|
671
|
+
The homepage's slogan is the hero
|
|
617
672
|
*/
|
|
618
|
-
|
|
673
|
+
main>[itemprop="slogan"] {
|
|
619
674
|
font-size: 4em;
|
|
620
675
|
font-weight: bold;
|
|
621
676
|
padding-block: 0.5lh;
|