body{ background-color:#000; color:#8f8; font-family:sans-serif; margin-left:3vw; margin-right:3vw; margin-top:10px; margin-bottom:10px; }
.todo{ color:#f00; background-color:#fff; }
hr, td, th, pre code, figure, p.update{ border-color:#035; border-width:1px; border-style:solid; }
hr.feint{ border-color:#010; }
h1, h2, h3, h4, code:not([class]), strong, th, td, a:link, a:visited{ color:#4fc; }
a:focus, a:hover, a:active{ color:#fff; }
.todo, p.update{ font-weight:bold; }
h1, h2, h3, h4{ font-style:normal; margin-bottom:0; }
time, tr:has(:nth-last-child(n+3)){ font-size:smaller; }
h1{ font-size:2em; }
th{ text-align:left; }
p, time{ margin-top:1ex; }
h1, h2:first-child, h3, h4{ margin-top:0; }
header{ margin-bottom:1lh; }
footer{ margin-top:1lh; }
table{ margin-top:0; border-collapse:collapse; }
td, th, pre code, figure, p.update{ padding:1em; margin:0; }
p, table{ margin-bottom:1ex; }
img{ margin-bottom:2ex; width:100%; display:block; }
hr{ margin-top:1lh; margin-bottom:1lh; }
code:not(pre code){ white-space:nowrap; }
h1 span, p.tag-line span, p.aliases span{ display:inline-block; }
#cover-pic{
 margin-top:1lh;
 margin-bottom:1lh;
}
#cover-pic img{ max-height:70vh; max-width:100%; width:auto; margin-left:auto; margin-right:auto; }
section, header, footer{
 display:grid;
 -moz-column-gap:6vw;
      column-gap:6vw;
 justify-self:center;
 grid-template-columns:min( 41vw, 70ch ) min( 41vw, 70ch );
}
@media (width < 1000px){
section, header, footer{ grid-template-columns:min( 94vw, 70ch );
} }
@media (width >= 1000px){
 h1, time, footer div{ grid-column:span 2; }
}
section:not(.front-page){ margin-bottom:2lh; }
section.front-page{ row-gap:5lh; }
aside{
 overflow-x:auto;
 display:flex;
 flex-direction:column;
 justify-content:flex-end;
}
aside  > figure,aside  > pre,aside  > table{ max-width:100%; }
pre code{ width:-moz-fit-content; width:fit-content; display:block; overflow-x:auto; }
.hljs-class{ font-weight:bold; }
.hljs-string{ color:#ffb; }
.hljs-comment{ color:#777; }
.hljs-attr, .hljs-property, .hljs-variable{ color:#5fd; }
.hljs-params{ color:#fc7; }
.hljs-built_in, .hljs-punctuation, .hljs-keyword{ color:#f4a; }
.hljs-subst{ color:#44f; }
.hljs-number, .hljs-literal{ color:#88f; }
.hljs-function{ color:#f0f; }
.hljs-title{ color:#fa0; }
.hljs-meta{ color:#ff6; }
