+* {
+ padding: 0;
+ margin: 0
+}
html { scroll-behavior: smooth }
-
body {
font-size: 1em;
- font: -apple-system-body;
font-family: "Hoefler Text", "Times New Roman", serif;
font-feature-settings: "liga" 1, "dlig" 1, "pnum" 1;
line-height: 1.6;
letter-spacing: 0.02em;
- text-align: justify;
+ padding: 2em;
+}
+@supports (-webkit-touch-callout: none) {
+ body {
+ font-size: 1em;
+ font: -apple-system-body;
+ font-family: "Hoefler Text", "Times New Roman", serif;
+ font-feature-settings: "liga" 1, "dlig" 1, "pnum" 1;
+ line-height: 1.6;
+ letter-spacing: 0.02em;
+ padding: 2em;
+ }
}
-
aside {
clear: both;
- padding-top: 2em;
+ padding: 2em 0;
}
-
::selection {
- color: #00f;
background-color: #e8e8e8;
+ color: #00f;
}
-
+.h2 { margin-top: 1em }
@media only screen and (min-width: 500px) {
body { overflow-x: auto }
- main { padding: 0 64px 0 84px }
+ .columned {
+ width: max-content;
+
+ .h2:not(:only-child) {
+ float: left;
+ margin: 0 60px 0 0;
+
+ h2 { max-width: 14.6em }
+ .h3,
+ li,
+ p { max-width: 24em }
+ pre { max-width: 25em }
+ }
+
+ .h2:first-of-type {
+ columns: 3;
+ width: 24em;
+
+ h2:empty {display: none}
+ h2,
+ pre,
+ ul,
+ p:not(.a) { column-span: all }
+ p { break-after: column }
+ p.a { break-after: avoid }
+ }
+ }
+}
- h1 a {
- display: block;
- width: 64px;
+.a { margin: 0 0.3em }
+pre {
+ background-color: #eee;
+ font-family: courier, monospace;
+ font-size: 0.875em;
+ max-width: 55em;
+ overflow-x: auto;
+ padding: 1em;
+}
+pre[role="img"] { display: none }
+blockquote, p, article > div {
+ max-width: 45em
+}
+blockquote {
+ border-left: 4px solid #ccc;
+ padding-left: 10px;
+}
+br { display: none }
+h1, h2, h3 {
+ font-family: "Avenir Next", "Segoe UI", "Fira Sans", "Roboto", sans-serif;
+ font-weight: 900
+}
+h1 { font-size: 4em }
+h2 {
+ font-size: 2em;
+ text-transform: lowercase;
+}
+h3 {
+ display: inline-block;
+ font-weight: 600;
+ margin-top: 1em
+}
+
+h2, h3, a { color: #00f }
+[data-title="/index.html"] {
+ .h2:nth-of-type(n+5):nth-of-type(-n+6) {
+ h2, h3, a { color: #EE0700 }
}
- .columned { width: max-content }
+ .h2:nth-of-type(n+7):nth-of-type(-n+9) {
+ h2, h3, a { color: #6A5ACD }
+ }
- .columned .h2:not(:only-child) {
- float: left;
- margin: 0 40px 0 0;
+ .h2:nth-of-type(10) {
+ h2, h3, a { color: #A76905 }
}
- .columned .h2:not(:only-child) h2 { width: 14.6em }
+ .h2:nth-of-type(11) {
+ h2, h3, a { color: #398557 }
+ }
- .columned .h2:not(:only-child) .h3,
- .columned .h2:not(:only-child) li,
- .columned .h2:not(:only-child) p { width: 24em }
- .columned .h2:not(:only-child) pre { width: 25em }
+ .h2:nth-of-type(n+12):nth-of-type(-n+16) {
+ h2, h3, a { color: #D505C6 }
+ }
- header {
- float: left;
- margin-top: 0.8em;
+ .h2:nth-of-type(17) {
+ h2, h3, a { color: #6A788A }
}
}
-.columned .h2:first-of-type pre { line-height: 1 }
+.h2 a {
+ display: inline-block;
+ padding: 0.25em 0;
+ margin: 0.25em 0;
+}
-.a { margin: 0 0.3em }
-blockquote, p, article > div {
- max-width: 45em
+header { position: relative }
+main {
+ position: relative;
+ z-index: 1
}
-pre { max-width: 55em }
-blockquote {
- border-left: 4px solid #ccc;
- padding-left: 10px;
+header h1 {
+ font-size: min(7.5rem, 17vw);
+ font-weight: 900;
+ letter-spacing: -0.2em;
+ line-height: 1em;
}
-
-br { display: none }
-h1, h2, h3 { font-weight: normal }
-h1 { font-size: 2em }
-h2 { font-size: 1.65em }
-h3 { font-size: 1.25em }
-header h1 { font-size: 1em }
-pre {
- font-family: courier, monospace;
- font-size: 0.875em;
- background-color: #eee;
- overflow-x: auto;
- padding: 1em;
+header h1 a {
+ background: repeating-linear-gradient(
+ 0deg,
+ black,
+ black 1px,
+ white 1px,
+ white 2px
+ );
+ background-clip: text;
+ color: transparent;
+ display: inline-block;
+ padding-right: 0.2em;
+ text-decoration: none;
+ -webkit-text-stroke: 1px #000;
}
canvas {
- width: 64px;
- height: 64px;
- display: block;
background-color: #000;
border: 1px solid #000;
+ display: inline-block;
+ height: 64px;
+ width: 64px;
}
@media (prefers-color-scheme: dark) {
body {
- color: #fff;
background: #000;
+ color: #fff;
}
-
canvas {
background-color: #fff;
border: 1px solid #fff;
}
-
- a {
- color: #5dc1fd;
- display: inline-block;
- min-height: 48px;
+ h2, h3, a { color: #5dc1fd }
+ [data-title="/index.html"] .h2:nth-of-type(n+7):nth-of-type(-n+9) {
+ h2, h3, a { color: #675CFB }
}
-
- a:visited { color: #ed6eff }
-
pre { background-color: #222 }
+ header h1 a {
+ -webkit-text-stroke: 1px #fff;
+ }
}