Logs
Patchsets
Patchset ps-41
style(prose): update smol.css
Eric Bower
pastes/public/smol.css
+140
-158
prose/public/main.css
+4
-0
prose/public/smol.css
+140
-158
style(prose): update smol.css
pastes/public/smol.css
link
+140
-158
+140
-158
1diff --git a/pastes/public/smol.css b/pastes/public/smol.css
2index e9b59ec..37fa0ed 100644
3--- a/pastes/public/smol.css
4+++ b/pastes/public/smol.css
5@@ -15,9 +15,13 @@
6 box-shadow: none;
7 }
8
9+:root {
10+ --line-height: 1.3rem;
11+ --grid-height: 0.65rem;
12+}
13+
14 @media (prefers-color-scheme: light) {
15 :root {
16- --main-hue: 250;
17 --white: #2e3f53;
18 --white-light: #cfe0f4;
19 --white-dark: #6c6a6a;
20@@ -32,13 +36,11 @@
21 --hover: #c11e7a;
22 --grey: #ccc;
23 --grey-light: #6a708e;
24- --shadow: #e8e8e8;
25 }
26 }
27
28 @media (prefers-color-scheme: dark) {
29 :root {
30- --main-hue: 250;
31 --white: #f2f2f2;
32 --white-light: #f2f2f2;
33 --white-dark: #e8e8e8;
34@@ -53,15 +55,14 @@
35 --hover: #ff80bf;
36 --grey: #414558;
37 --grey-light: #6a708e;
38- --shadow: #252525;
39 }
40 }
41
42 html {
43 background-color: var(--bg-color);
44 color: var(--text-color);
45- font-size: 18px;
46- line-height: 1.5;
47+ font-size: 16px;
48+ line-height: var(--line-height);
49 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
50 Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial,
51 sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
52@@ -89,8 +90,7 @@ code,
53 kbd,
54 samp,
55 pre {
56- font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo,
57- monospace;
58+ font-family: monospace;
59 }
60
61 code,
62@@ -103,19 +103,19 @@ pre > code {
63 background-color: inherit;
64 padding: 0;
65 border: none;
66+ border-radius: 0;
67 }
68
69 code {
70 font-size: 90%;
71 border-radius: 0.3rem;
72- padding: 0.1rem 0.3rem;
73+ padding: 0.025rem 0.3rem;
74 }
75
76 pre {
77- font-size: 14px;
78- border-radius: 5px;
79- padding: 1rem;
80- margin: 1rem 0;
81+ font-size: 0.8rem;
82+ border-radius: 1px;
83+ padding: var(--line-height);
84 overflow-x: auto;
85 background-color: var(--pre) !important;
86 }
87@@ -124,6 +124,16 @@ small {
88 font-size: 0.8rem;
89 }
90
91+details {
92+ border: 2px solid var(--grey-light);
93+ padding: calc(var(--line-height) - 2px) 1ch;
94+ margin-bottom: var(--line-height);
95+}
96+
97+details[open] summary {
98+ margin-bottom: var(--line-height);
99+}
100+
101 summary {
102 display: list-item;
103 cursor: pointer;
104@@ -134,7 +144,7 @@ h2,
105 h3,
106 h4 {
107 margin: 0;
108- padding: 0.5rem 0 0 0;
109+ padding: 0;
110 border: 0;
111 font-style: normal;
112 font-weight: inherit;
113@@ -149,11 +159,9 @@ path {
114 hr {
115 color: inherit;
116 border: 0;
117- margin: 0;
118 height: 2px;
119 background: var(--grey);
120- margin: 1rem auto;
121- text-align: center;
122+ margin: calc(var(--grid-height) - 2px) auto;
123 }
124
125 a {
126@@ -164,22 +172,12 @@ a {
127 a:hover,
128 a:visited:hover {
129 text-decoration: underline;
130- color: var(--hover);
131 }
132
133 a:visited {
134 color: var(--visited);
135 }
136
137-a.link-grey {
138- text-decoration: underline;
139- color: var(--white);
140-}
141-
142-a.link-grey:visited {
143- color: var(--white);
144-}
145-
146 section {
147 margin-bottom: 1.4rem;
148 }
149@@ -193,7 +191,8 @@ header {
150 }
151
152 p {
153- margin: 0.5rem 0;
154+ margin-top: var(--line-height);
155+ margin-bottom: var(--line-height);
156 }
157
158 article {
159@@ -203,8 +202,8 @@ article {
160 blockquote {
161 border-left: 5px solid var(--blockquote);
162 background-color: var(--blockquote-bg);
163- padding: 0.5rem 0.75rem;
164- margin: 0.5rem 0;
165+ padding: var(--grid-height);
166+ margin: var(--line-height) 0;
167 }
168
169 blockquote > p {
170@@ -217,16 +216,28 @@ blockquote code {
171
172 ul,
173 ol {
174- padding: 0 0 0 1rem;
175- list-style-position: outside;
176+ padding: 0 0 0 var(--line-height);
177+ list-style-position: inside;
178+ list-style-type: square;
179+ margin: var(--line-height) 0;
180 }
181
182 ul[style*="list-style-type: none;"] {
183 padding: 0;
184 }
185
186+ol ul, ol ol, ul ol, ul ul {
187+ padding: 0 0 0 3ch;
188+ margin: 0;
189+}
190+
191 li {
192- margin: 0.5rem 0;
193+ margin: 0;
194+ padding: 0;
195+}
196+
197+li::marker {
198+ line-height: 0;
199 }
200
201 li > pre {
202@@ -235,7 +246,7 @@ li > pre {
203
204 footer {
205 text-align: center;
206- margin-bottom: 4rem;
207+ margin-bottom: calc(var(--line-height) * 3);
208 }
209
210 dt {
211@@ -254,6 +265,10 @@ figure {
212 margin: 0;
213 }
214
215+#toc {
216+ margin-top: var(--line-height);
217+}
218+
219 .container {
220 max-width: 50em;
221 width: 100%;
222@@ -272,21 +287,7 @@ figure {
223 }
224
225 .mono {
226- font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo,
227- monospace;
228-}
229-
230-.link-alt-adj,
231-.link-alt-adj:visited,
232-.link-alt-adj:visited:hover,
233-.link-alt-adj:hover {
234- color: var(--link-color);
235- text-decoration: none;
236-}
237-
238-.link-alt-adj:visited:hover,
239-.link-alt-adj:hover {
240- text-decoration: underline;
241+ font-family: monospace;
242 }
243
244 .link-alt-hover,
245@@ -315,36 +316,28 @@ figure {
246 text-decoration: underline;
247 }
248
249-.text-3xl {
250- font-size: 2.5rem;
251+.text-2xl code, .text-xl code, .text-lg code, .text-md code {
252+ text-transform: none;
253 }
254
255 .text-2xl {
256- font-size: 1.9rem;
257- line-height: 1.15;
258-}
259-
260-.text-xl {
261- font-size: 1.55rem;
262- line-height: 1.15;
263-}
264-
265-.text-lg {
266- font-size: 1.35rem;
267- line-height: 1.15;
268+ font-size: var(--line-height);
269+ font-weight: bold;
270+ line-height: var(--line-height);
271+ margin-bottom: var(--grid-height);
272+ text-transform: uppercase;
273 }
274
275-.text-md {
276- font-size: 1.15rem;
277- line-height: 1.15;
278+.text-xl, .text-lg, .text-md {
279+ font-size: 1rem;
280+ font-weight: bold;
281+ line-height: var(--line-height);
282+ margin-bottom: var(--grid-height);
283+ text-transform: uppercase;
284 }
285
286 .text-sm {
287- font-size: 0.875rem;
288-}
289-
290-.text-xs {
291- font-size: 0.775rem;
292+ font-size: 0.8rem;
293 }
294
295 .cursor-pointer {
296@@ -372,19 +365,14 @@ figure {
297 }
298
299 .text-underline {
300- border-bottom: 3px solid var(--text-color);
301- padding-bottom: 3px;
302+ text-decoration: underline;
303+ text-decoration-thickness: 2px;
304 }
305
306 .text-hdr {
307 color: var(--hover);
308 }
309
310-.text-underline-hdr {
311- border-bottom: 3px solid var(--hover);
312- padding-bottom: 3px;
313-}
314-
315 .font-bold {
316 font-weight: bold;
317 }
318@@ -429,40 +417,32 @@ figure {
319 margin: 0;
320 }
321
322+.mt-0 {
323+ margin-top: 0;
324+}
325+
326 .mt {
327- margin-top: 0.5rem;
328+ margin-top: var(--grid-height);
329 }
330
331 .mt-2 {
332- margin-top: 1rem;
333+ margin-top: var(--line-height);
334 }
335
336 .mt-4 {
337- margin-top: 2rem;
338-}
339-
340-.mt-8 {
341- margin-top: 4rem;
342+ margin-top: calc(var(--line-height) * 2);
343 }
344
345 .mb {
346- margin-bottom: 0.5rem;
347+ margin-bottom: var(--grid-height);
348 }
349
350 .mb-2 {
351- margin-bottom: 1rem;
352+ margin-bottom: var(--line-height);
353 }
354
355 .mb-4 {
356- margin-bottom: 2rem;
357-}
358-
359-.mb-8 {
360- margin-bottom: 4rem;
361-}
362-
363-.mb-16 {
364- margin-bottom: 8rem;
365+ margin-bottom: calc(var(--line-height) * 2);
366 }
367
368 .mr {
369@@ -482,23 +462,18 @@ figure {
370 }
371
372 .my {
373- margin-top: 0.5rem;
374- margin-bottom: 0.5rem;
375+ margin-top: var(--grid-height);
376+ margin-bottom: var(--grid-height);
377 }
378
379 .my-2 {
380- margin-top: 1rem;
381- margin-bottom: 1rem;
382+ margin-top: var(--line-height);
383+ margin-bottom: var(--line-height);
384 }
385
386 .my-4 {
387- margin-top: 2rem;
388- margin-bottom: 2rem;
389-}
390-
391-.my-8 {
392- margin-top: 4rem;
393- margin-bottom: 4rem;
394+ margin-top: calc(var(--line-height) * 2);
395+ margin-bottom: calc(var(--line-height) * 2);
396 }
397
398 .mx {
399@@ -512,11 +487,11 @@ figure {
400 }
401
402 .m-1 {
403- margin: 0.5rem;
404+ margin: var(--grid-height);
405 }
406
407 .p-1 {
408- padding: 0.5rem;
409+ padding: var(--grid-height);
410 }
411
412 .p-0 {
413@@ -534,23 +509,18 @@ figure {
414 }
415
416 .py {
417- padding-top: 0.5rem;
418- padding-bottom: 0.5rem;
419+ padding-top: var(--grid-height);
420+ padding-bottom: var(--grid-height);
421 }
422
423 .py-2 {
424- padding-top: 1rem;
425- padding-bottom: 1rem;
426+ padding-top: var(--line-height);
427+ padding-bottom: var(--line-height);
428 }
429
430 .py-4 {
431- padding-top: 2rem;
432- padding-bottom: 2rem;
433-}
434-
435-.py-8 {
436- padding-top: 4rem;
437- padding-bottom: 4rem;
438+ padding-top: calc(var(--line-height) * 2);
439+ padding-bottom: calc(var(--line-height) * 2);
440 }
441
442 .justify-between {
443@@ -562,28 +532,28 @@ figure {
444 }
445
446 .gap {
447- gap: 0.5rem;
448+ gap: var(--grid-height);
449 }
450
451 .gap-2 {
452- gap: 1rem;
453+ gap: var(--line-height);
454 }
455
456 .group {
457 display: flex;
458 flex-direction: column;
459- gap: 0.5rem;
460+ gap: var(--grid-height);
461 }
462
463 .group-2 {
464 display: flex;
465 flex-direction: column;
466- gap: 1rem;
467+ gap: var(--line-height);
468 }
469
470 .group-h {
471 display: flex;
472- gap: 0.5rem;
473+ gap: var(--grid-height);
474 align-items: center;
475 }
476
477@@ -622,7 +592,8 @@ figure {
478 .md h3,
479 .md h4 {
480 padding: 0;
481- margin: 1.5rem 0 0.9rem 0;
482+ margin: 0;
483+ /* margin: 1.5rem 0 0.9rem 0; */
484 font-weight: bold;
485 }
486
487@@ -634,26 +605,24 @@ figure {
488 text-decoration: none;
489 }
490
491-.md h1 {
492- font-size: 1.6rem;
493- line-height: 1.15;
494- border-bottom: 2px solid var(--grey);
495- padding-bottom: 0.7rem;
496-}
497-
498-.md h2 {
499- font-size: 1.3rem;
500- line-height: 1.15;
501- color: var(--white-dark);
502+h1 code, h2 code, h3 code, h4 code {
503+ text-transform: none;
504 }
505
506-.md h3 {
507- font-size: 1.2rem;
508- color: var(--white-dark);
509+.md h1 {
510+ font-size: 1rem;
511+ line-height: var(--line-height);
512+ margin-top: calc(var(--line-height) * 2);
513+ margin-bottom: var(--grid-height);
514+ text-transform: uppercase;
515 }
516
517-.md h4 {
518+.md h2, .md h3, .md h4 {
519 font-size: 1rem;
520+ line-height: var(--line-height);
521+ margin-top: calc(var(--line-height) * 2);
522+ margin-bottom: var(--line-height);
523+ text-transform: uppercase;
524 color: var(--white-dark);
525 }
526
527@@ -669,8 +638,8 @@ figure {
528 border: 3px solid #FF79C6;
529 padding: 8px 10px 10px 10px;
530 border-radius: 10px;
531- box-shadow: 0px 5px 0px 0px var(--shadow);
532 background-size: 100%;
533+ margin: 0:
534 -webkit-background-clip: text;
535 -moz-background-clip: text;
536 -webkit-text-fill-color: transparent;
537@@ -689,47 +658,40 @@ figure {
538 .btn-link:visited {
539 border: 2px solid var(--link-color);
540 color: var(--link-color);
541- padding: 0.4rem 1rem;
542+ padding: var(--grid-height) 1rem;
543 text-decoration: none;
544 font-weight: bold;
545 display: inline-block;
546 }
547
548-.btn-link:visited:hover,
549-.btn-link:hover {
550- border: 2px solid var(--hover);
551-}
552-
553-.btn-link-alt,
554-.btn-link-alt:visited {
555- border: 2px solid var(--white);
556- color: var(--white);
557-}
558-
559 .box {
560 border: 2px solid var(--grey-light);
561- padding: 0.5rem 0.75rem;
562+ padding: var(--line-height);
563 }
564
565 .box-sm {
566 border: 2px solid var(--grey-light);
567- padding: 0.15rem 0.35rem;
568+ padding: var(--grid-height);
569 }
570
571 .box-alert {
572 border: 2px solid var(--hover);
573- padding: 0.5rem 0.75rem;
574+ padding: var(--line-height);
575 }
576
577 .box-sm-alert {
578 border: 2px solid var(--hover);
579- padding: 0.15rem 0.35rem;
580+ padding: var(--grid-height);
581 }
582
583 .list-none {
584 list-style-type: none;
585 }
586
587+.list-square {
588+ list-style-type: square;
589+}
590+
591 .list-disc {
592 list-style-type: disc;
593 }
594@@ -766,3 +728,23 @@ figure {
595 flex-direction: column;
596 }
597 }
598+
599+#debug {
600+ position: relative;
601+}
602+
603+#debug .debug-grid {
604+ width: 100%;
605+ height: 100%;
606+ position: absolute;
607+ top: 0;
608+ left: 0;
609+ right: 0;
610+ bottom: 0;
611+ z-index: -1;
612+ background-image:
613+ repeating-linear-gradient(var(--code) 0 1px, transparent 1px 100%),
614+ repeating-linear-gradient(90deg, var(--code) 0 1px, transparent 1px 100%);
615+ background-size: 1ch var(--grid-height);
616+ margin: 0;
617+}
prose/html/blog-aside.partial.tmpl
link
+3
-3
+3
-3
1diff --git a/prose/html/blog-aside.partial.tmpl b/prose/html/blog-aside.partial.tmpl
2index b7b48b8..095700f 100644
3--- a/prose/html/blog-aside.partial.tmpl
4+++ b/prose/html/blog-aside.partial.tmpl
5@@ -2,7 +2,7 @@
6 <main class="flex">
7 <section class="flex-1 mr">
8 <div>
9- <h1 class="text-2xl font-bold">{{.Header.Title}}</h1>
10+ <h1 class="text-2xl font-bold mt-2">{{.Header.Title}}</h1>
11 {{if .Header.Bio}}<span>{{.Header.Bio}}</span>{{end}}
12 </div>
13
14@@ -25,12 +25,12 @@
15 <a href={{.URL}}>clear filters</a>
16 {{end}}
17
18- <div class="posts group mt">
19+ <div class="posts group mt-2">
20 {{range .Posts}}
21 <article>
22 <div class="flex items-center">
23 <time datetime="{{.PublishAtISO}}" class="text-sm post-date">{{.PublishAt}}</time>
24- <span class="text-md flex-1"><a href="{{.URL}}">{{.Title}}</a></span>
25+ <span class="text-md flex-1 m-0"><a href="{{.URL}}">{{.Title}}</a></span>
26 </div>
27 </article>
28 {{end}}
prose/html/blog-default.partial.tmpl
link
+4
-4
+4
-4
1diff --git a/prose/html/blog-default.partial.tmpl b/prose/html/blog-default.partial.tmpl
2index d6bb676..b32e451 100644
3--- a/prose/html/blog-default.partial.tmpl
4+++ b/prose/html/blog-default.partial.tmpl
5@@ -1,7 +1,7 @@
6 {{define "blog-default"}}
7 <header class="text-center">
8- <h1 class="text-2xl font-bold">{{.Header.Title}}</h1>
9- {{if .Header.Bio}}<p class="text-lg">{{.Header.Bio}}</p>{{end}}
10+ <h1 class="text-2xl font-bold mt-2">{{.Header.Title}}</h1>
11+ {{if .Header.Bio}}<span>{{.Header.Bio}}</span>{{end}}
12 <nav>
13 {{range .Header.Nav}}
14 <a href="{{.URL}}" class="text-lg">{{.Text}}</a> |
15@@ -20,7 +20,7 @@
16 </section>
17 {{end}}
18
19- <section class="posts group mt">
20+ <section class="posts group mt-2">
21 {{if .HasFilter}}
22 <a href={{.URL}}>clear filters</a>
23 {{end}}
24@@ -28,7 +28,7 @@
25 <article>
26 <div class="flex items-center">
27 <time datetime="{{.PublishAtISO}}" class="text-sm post-date">{{.PublishAt}}</time>
28- <span class="text-md flex-1"><a href="{{.URL}}">{{.Title}}</a></span>
29+ <span class="text-md flex-1 m-0"><a href="{{.URL}}">{{.Title}}</a></span>
30 </div>
31 </article>
32 {{end}}
prose/html/post.page.tmpl
link
+4
-2
+4
-2
1diff --git a/prose/html/post.page.tmpl b/prose/html/post.page.tmpl
2index e667978..58cce0e 100644
3--- a/prose/html/post.page.tmpl
4+++ b/prose/html/post.page.tmpl
5@@ -53,13 +53,15 @@
6 {{if .Unlisted}} <code>unlisted</code>{{end}}
7 <time datetime="{{.PublishAtISO}}">{{.PublishAt}}</time>
8 <span>·<span>
9- <a href="{{.BlogURL}}">{{.BlogName}}</a></p>
10- {{if .Description}}<blockquote class="font-italic">{{.Description}}</blockquote>{{end}}
11+ <a href="{{.BlogURL}}">{{.BlogName}}</a>
12+ </p>
13+ {{if .Description}}<blockquote>{{.Description}}</blockquote>{{end}}
14 <div class="tags">
15 {{range .Tags}}
16 <a class="tag" href="{{$.BlogURL}}?tag={{.}}">#{{.}}</a>
17 {{end}}
18 </div>
19+ <hr />
20 </header>
21 <main>
22 {{if .Diff}}
prose/public/main.css
link
+4
-0
+4
-0
1diff --git a/prose/public/main.css b/prose/public/main.css
2index bbd09b0..478c1db 100644
3--- a/prose/public/main.css
4+++ b/prose/public/main.css
5@@ -12,6 +12,10 @@ table {
6 border-collapse: separate;
7 }
8
9+header blockquote {
10+ margin: var(--grid-height) 0;
11+}
12+
13 .post-date {
14 width: 110px;
15 }
prose/public/smol.css
link
+140
-158
+140
-158
1diff --git a/prose/public/smol.css b/prose/public/smol.css
2index e9b59ec..37fa0ed 100644
3--- a/prose/public/smol.css
4+++ b/prose/public/smol.css
5@@ -15,9 +15,13 @@
6 box-shadow: none;
7 }
8
9+:root {
10+ --line-height: 1.3rem;
11+ --grid-height: 0.65rem;
12+}
13+
14 @media (prefers-color-scheme: light) {
15 :root {
16- --main-hue: 250;
17 --white: #2e3f53;
18 --white-light: #cfe0f4;
19 --white-dark: #6c6a6a;
20@@ -32,13 +36,11 @@
21 --hover: #c11e7a;
22 --grey: #ccc;
23 --grey-light: #6a708e;
24- --shadow: #e8e8e8;
25 }
26 }
27
28 @media (prefers-color-scheme: dark) {
29 :root {
30- --main-hue: 250;
31 --white: #f2f2f2;
32 --white-light: #f2f2f2;
33 --white-dark: #e8e8e8;
34@@ -53,15 +55,14 @@
35 --hover: #ff80bf;
36 --grey: #414558;
37 --grey-light: #6a708e;
38- --shadow: #252525;
39 }
40 }
41
42 html {
43 background-color: var(--bg-color);
44 color: var(--text-color);
45- font-size: 18px;
46- line-height: 1.5;
47+ font-size: 16px;
48+ line-height: var(--line-height);
49 font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen,
50 Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", Arial,
51 sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
52@@ -89,8 +90,7 @@ code,
53 kbd,
54 samp,
55 pre {
56- font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo,
57- monospace;
58+ font-family: monospace;
59 }
60
61 code,
62@@ -103,19 +103,19 @@ pre > code {
63 background-color: inherit;
64 padding: 0;
65 border: none;
66+ border-radius: 0;
67 }
68
69 code {
70 font-size: 90%;
71 border-radius: 0.3rem;
72- padding: 0.1rem 0.3rem;
73+ padding: 0.025rem 0.3rem;
74 }
75
76 pre {
77- font-size: 14px;
78- border-radius: 5px;
79- padding: 1rem;
80- margin: 1rem 0;
81+ font-size: 0.8rem;
82+ border-radius: 1px;
83+ padding: var(--line-height);
84 overflow-x: auto;
85 background-color: var(--pre) !important;
86 }
87@@ -124,6 +124,16 @@ small {
88 font-size: 0.8rem;
89 }
90
91+details {
92+ border: 2px solid var(--grey-light);
93+ padding: calc(var(--line-height) - 2px) 1ch;
94+ margin-bottom: var(--line-height);
95+}
96+
97+details[open] summary {
98+ margin-bottom: var(--line-height);
99+}
100+
101 summary {
102 display: list-item;
103 cursor: pointer;
104@@ -134,7 +144,7 @@ h2,
105 h3,
106 h4 {
107 margin: 0;
108- padding: 0.5rem 0 0 0;
109+ padding: 0;
110 border: 0;
111 font-style: normal;
112 font-weight: inherit;
113@@ -149,11 +159,9 @@ path {
114 hr {
115 color: inherit;
116 border: 0;
117- margin: 0;
118 height: 2px;
119 background: var(--grey);
120- margin: 1rem auto;
121- text-align: center;
122+ margin: calc(var(--grid-height) - 2px) auto;
123 }
124
125 a {
126@@ -164,22 +172,12 @@ a {
127 a:hover,
128 a:visited:hover {
129 text-decoration: underline;
130- color: var(--hover);
131 }
132
133 a:visited {
134 color: var(--visited);
135 }
136
137-a.link-grey {
138- text-decoration: underline;
139- color: var(--white);
140-}
141-
142-a.link-grey:visited {
143- color: var(--white);
144-}
145-
146 section {
147 margin-bottom: 1.4rem;
148 }
149@@ -193,7 +191,8 @@ header {
150 }
151
152 p {
153- margin: 0.5rem 0;
154+ margin-top: var(--line-height);
155+ margin-bottom: var(--line-height);
156 }
157
158 article {
159@@ -203,8 +202,8 @@ article {
160 blockquote {
161 border-left: 5px solid var(--blockquote);
162 background-color: var(--blockquote-bg);
163- padding: 0.5rem 0.75rem;
164- margin: 0.5rem 0;
165+ padding: var(--grid-height);
166+ margin: var(--line-height) 0;
167 }
168
169 blockquote > p {
170@@ -217,16 +216,28 @@ blockquote code {
171
172 ul,
173 ol {
174- padding: 0 0 0 1rem;
175- list-style-position: outside;
176+ padding: 0 0 0 var(--line-height);
177+ list-style-position: inside;
178+ list-style-type: square;
179+ margin: var(--line-height) 0;
180 }
181
182 ul[style*="list-style-type: none;"] {
183 padding: 0;
184 }
185
186+ol ul, ol ol, ul ol, ul ul {
187+ padding: 0 0 0 3ch;
188+ margin: 0;
189+}
190+
191 li {
192- margin: 0.5rem 0;
193+ margin: 0;
194+ padding: 0;
195+}
196+
197+li::marker {
198+ line-height: 0;
199 }
200
201 li > pre {
202@@ -235,7 +246,7 @@ li > pre {
203
204 footer {
205 text-align: center;
206- margin-bottom: 4rem;
207+ margin-bottom: calc(var(--line-height) * 3);
208 }
209
210 dt {
211@@ -254,6 +265,10 @@ figure {
212 margin: 0;
213 }
214
215+#toc {
216+ margin-top: var(--line-height);
217+}
218+
219 .container {
220 max-width: 50em;
221 width: 100%;
222@@ -272,21 +287,7 @@ figure {
223 }
224
225 .mono {
226- font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", Menlo,
227- monospace;
228-}
229-
230-.link-alt-adj,
231-.link-alt-adj:visited,
232-.link-alt-adj:visited:hover,
233-.link-alt-adj:hover {
234- color: var(--link-color);
235- text-decoration: none;
236-}
237-
238-.link-alt-adj:visited:hover,
239-.link-alt-adj:hover {
240- text-decoration: underline;
241+ font-family: monospace;
242 }
243
244 .link-alt-hover,
245@@ -315,36 +316,28 @@ figure {
246 text-decoration: underline;
247 }
248
249-.text-3xl {
250- font-size: 2.5rem;
251+.text-2xl code, .text-xl code, .text-lg code, .text-md code {
252+ text-transform: none;
253 }
254
255 .text-2xl {
256- font-size: 1.9rem;
257- line-height: 1.15;
258-}
259-
260-.text-xl {
261- font-size: 1.55rem;
262- line-height: 1.15;
263-}
264-
265-.text-lg {
266- font-size: 1.35rem;
267- line-height: 1.15;
268+ font-size: var(--line-height);
269+ font-weight: bold;
270+ line-height: var(--line-height);
271+ margin-bottom: var(--grid-height);
272+ text-transform: uppercase;
273 }
274
275-.text-md {
276- font-size: 1.15rem;
277- line-height: 1.15;
278+.text-xl, .text-lg, .text-md {
279+ font-size: 1rem;
280+ font-weight: bold;
281+ line-height: var(--line-height);
282+ margin-bottom: var(--grid-height);
283+ text-transform: uppercase;
284 }
285
286 .text-sm {
287- font-size: 0.875rem;
288-}
289-
290-.text-xs {
291- font-size: 0.775rem;
292+ font-size: 0.8rem;
293 }
294
295 .cursor-pointer {
296@@ -372,19 +365,14 @@ figure {
297 }
298
299 .text-underline {
300- border-bottom: 3px solid var(--text-color);
301- padding-bottom: 3px;
302+ text-decoration: underline;
303+ text-decoration-thickness: 2px;
304 }
305
306 .text-hdr {
307 color: var(--hover);
308 }
309
310-.text-underline-hdr {
311- border-bottom: 3px solid var(--hover);
312- padding-bottom: 3px;
313-}
314-
315 .font-bold {
316 font-weight: bold;
317 }
318@@ -429,40 +417,32 @@ figure {
319 margin: 0;
320 }
321
322+.mt-0 {
323+ margin-top: 0;
324+}
325+
326 .mt {
327- margin-top: 0.5rem;
328+ margin-top: var(--grid-height);
329 }
330
331 .mt-2 {
332- margin-top: 1rem;
333+ margin-top: var(--line-height);
334 }
335
336 .mt-4 {
337- margin-top: 2rem;
338-}
339-
340-.mt-8 {
341- margin-top: 4rem;
342+ margin-top: calc(var(--line-height) * 2);
343 }
344
345 .mb {
346- margin-bottom: 0.5rem;
347+ margin-bottom: var(--grid-height);
348 }
349
350 .mb-2 {
351- margin-bottom: 1rem;
352+ margin-bottom: var(--line-height);
353 }
354
355 .mb-4 {
356- margin-bottom: 2rem;
357-}
358-
359-.mb-8 {
360- margin-bottom: 4rem;
361-}
362-
363-.mb-16 {
364- margin-bottom: 8rem;
365+ margin-bottom: calc(var(--line-height) * 2);
366 }
367
368 .mr {
369@@ -482,23 +462,18 @@ figure {
370 }
371
372 .my {
373- margin-top: 0.5rem;
374- margin-bottom: 0.5rem;
375+ margin-top: var(--grid-height);
376+ margin-bottom: var(--grid-height);
377 }
378
379 .my-2 {
380- margin-top: 1rem;
381- margin-bottom: 1rem;
382+ margin-top: var(--line-height);
383+ margin-bottom: var(--line-height);
384 }
385
386 .my-4 {
387- margin-top: 2rem;
388- margin-bottom: 2rem;
389-}
390-
391-.my-8 {
392- margin-top: 4rem;
393- margin-bottom: 4rem;
394+ margin-top: calc(var(--line-height) * 2);
395+ margin-bottom: calc(var(--line-height) * 2);
396 }
397
398 .mx {
399@@ -512,11 +487,11 @@ figure {
400 }
401
402 .m-1 {
403- margin: 0.5rem;
404+ margin: var(--grid-height);
405 }
406
407 .p-1 {
408- padding: 0.5rem;
409+ padding: var(--grid-height);
410 }
411
412 .p-0 {
413@@ -534,23 +509,18 @@ figure {
414 }
415
416 .py {
417- padding-top: 0.5rem;
418- padding-bottom: 0.5rem;
419+ padding-top: var(--grid-height);
420+ padding-bottom: var(--grid-height);
421 }
422
423 .py-2 {
424- padding-top: 1rem;
425- padding-bottom: 1rem;
426+ padding-top: var(--line-height);
427+ padding-bottom: var(--line-height);
428 }
429
430 .py-4 {
431- padding-top: 2rem;
432- padding-bottom: 2rem;
433-}
434-
435-.py-8 {
436- padding-top: 4rem;
437- padding-bottom: 4rem;
438+ padding-top: calc(var(--line-height) * 2);
439+ padding-bottom: calc(var(--line-height) * 2);
440 }
441
442 .justify-between {
443@@ -562,28 +532,28 @@ figure {
444 }
445
446 .gap {
447- gap: 0.5rem;
448+ gap: var(--grid-height);
449 }
450
451 .gap-2 {
452- gap: 1rem;
453+ gap: var(--line-height);
454 }
455
456 .group {
457 display: flex;
458 flex-direction: column;
459- gap: 0.5rem;
460+ gap: var(--grid-height);
461 }
462
463 .group-2 {
464 display: flex;
465 flex-direction: column;
466- gap: 1rem;
467+ gap: var(--line-height);
468 }
469
470 .group-h {
471 display: flex;
472- gap: 0.5rem;
473+ gap: var(--grid-height);
474 align-items: center;
475 }
476
477@@ -622,7 +592,8 @@ figure {
478 .md h3,
479 .md h4 {
480 padding: 0;
481- margin: 1.5rem 0 0.9rem 0;
482+ margin: 0;
483+ /* margin: 1.5rem 0 0.9rem 0; */
484 font-weight: bold;
485 }
486
487@@ -634,26 +605,24 @@ figure {
488 text-decoration: none;
489 }
490
491-.md h1 {
492- font-size: 1.6rem;
493- line-height: 1.15;
494- border-bottom: 2px solid var(--grey);
495- padding-bottom: 0.7rem;
496-}
497-
498-.md h2 {
499- font-size: 1.3rem;
500- line-height: 1.15;
501- color: var(--white-dark);
502+h1 code, h2 code, h3 code, h4 code {
503+ text-transform: none;
504 }
505
506-.md h3 {
507- font-size: 1.2rem;
508- color: var(--white-dark);
509+.md h1 {
510+ font-size: 1rem;
511+ line-height: var(--line-height);
512+ margin-top: calc(var(--line-height) * 2);
513+ margin-bottom: var(--grid-height);
514+ text-transform: uppercase;
515 }
516
517-.md h4 {
518+.md h2, .md h3, .md h4 {
519 font-size: 1rem;
520+ line-height: var(--line-height);
521+ margin-top: calc(var(--line-height) * 2);
522+ margin-bottom: var(--line-height);
523+ text-transform: uppercase;
524 color: var(--white-dark);
525 }
526
527@@ -669,8 +638,8 @@ figure {
528 border: 3px solid #FF79C6;
529 padding: 8px 10px 10px 10px;
530 border-radius: 10px;
531- box-shadow: 0px 5px 0px 0px var(--shadow);
532 background-size: 100%;
533+ margin: 0:
534 -webkit-background-clip: text;
535 -moz-background-clip: text;
536 -webkit-text-fill-color: transparent;
537@@ -689,47 +658,40 @@ figure {
538 .btn-link:visited {
539 border: 2px solid var(--link-color);
540 color: var(--link-color);
541- padding: 0.4rem 1rem;
542+ padding: var(--grid-height) 1rem;
543 text-decoration: none;
544 font-weight: bold;
545 display: inline-block;
546 }
547
548-.btn-link:visited:hover,
549-.btn-link:hover {
550- border: 2px solid var(--hover);
551-}
552-
553-.btn-link-alt,
554-.btn-link-alt:visited {
555- border: 2px solid var(--white);
556- color: var(--white);
557-}
558-
559 .box {
560 border: 2px solid var(--grey-light);
561- padding: 0.5rem 0.75rem;
562+ padding: var(--line-height);
563 }
564
565 .box-sm {
566 border: 2px solid var(--grey-light);
567- padding: 0.15rem 0.35rem;
568+ padding: var(--grid-height);
569 }
570
571 .box-alert {
572 border: 2px solid var(--hover);
573- padding: 0.5rem 0.75rem;
574+ padding: var(--line-height);
575 }
576
577 .box-sm-alert {
578 border: 2px solid var(--hover);
579- padding: 0.15rem 0.35rem;
580+ padding: var(--grid-height);
581 }
582
583 .list-none {
584 list-style-type: none;
585 }
586
587+.list-square {
588+ list-style-type: square;
589+}
590+
591 .list-disc {
592 list-style-type: disc;
593 }
594@@ -766,3 +728,23 @@ figure {
595 flex-direction: column;
596 }
597 }
598+
599+#debug {
600+ position: relative;
601+}
602+
603+#debug .debug-grid {
604+ width: 100%;
605+ height: 100%;
606+ position: absolute;
607+ top: 0;
608+ left: 0;
609+ right: 0;
610+ bottom: 0;
611+ z-index: -1;
612+ background-image:
613+ repeating-linear-gradient(var(--code) 0 1px, transparent 1px 100%),
614+ repeating-linear-gradient(90deg, var(--code) 0 1px, transparent 1px 100%);
615+ background-size: 1ch var(--grid-height);
616+ margin: 0;
617+}