* { margin:0;padding:0;text-decoration:none;box-sizing:border-box;color:#000 }
body { padding:30px;font-family:serif;font-size:16px }
body > *, body > * > *, main figure > *, main figure > div > *, main p { margin-bottom:30px }
body a.self, body a.parent { font-style:italic }
body a:hover, main a:hover > * { background-color:#000;color:#fff;text-decoration:none }
table td, table th { vertical-align:top;padding:2.5px 5px;text-align:left }
table td > pre, table th > pre { background:none;padding:0;margin:0 }
table tr img { margin-bottom:0 }
header { float:left;margin:5px 30px 0 0;min-height:90px }
header img { display:block }
nav { margin:0 0 30px }
nav ul { padding:0;margin:0 45px 30px 0;float:left }
nav ul li { list-style-type:none;white-space:pre }
nav ul li a { padding:0px 4px}
main { max-width:624px;clear:both }
main a { text-decoration:underline }
main a[target="_blank"] { text-decoration-style:dotted }
main article { border-left:5px solid #efefef;padding-left:25px;clear:both }
main cite { display:block;clear:both;margin-bottom:30px }
main cite:before { content:"— " }
main > figure:first-child img:first-child { margin-left:-30px;width:800px;max-width:100vw }
main iframe { width:100% }
main h1, main h2, main h3, main h4, main h5 { max-width:400px }
main ul, main ol { margin:0 30px 30px 30px }
main ul ul { margin-bottom:0 }
main ul li, main ol li { line-height:25px;padding:0px 5px }
main figure figcaption { color: #888;font-size:90%;max-width:65%;padding-left:15px;margin-top: -15px }
main p { line-height:160% }
main ::selection { background-color:#72dec2;color:#000;text-decoration:none }
main q { font-family:serif;font-size:18px;font-style:italic;display:block;max-width:400px }
main img, main svg { max-width:100%;display:inline-block;margin:0 0 25px }
main pre { overflow:auto;background:#efefef;padding:10px;font-size:80%;margin-bottom:30px }
main pre code, main pre i { color:#777 }
main code { white-space:pre }
main hr { clear:both }
main kbd { font-size:12px;display:inline-block;padding:0px 5px;font-weight:bold;border-radius:4px;line-height:20px;border:2px solid #222 }
footer { border-top:1.5px solid;padding:30px 0 0 0;line-height:30px;clear:both }
footer > * { display:inline-block;margin-right:5px }
footer img { width:34px;padding:2px;vertical-align:middle }
footer a:hover img { filter:invert(1) hue-rotate(180deg) }

@media (prefers-color-scheme:dark) {
    * { color:white }
	body { background:black }
	body a:hover, main a:hover > * { background-color:#fff;color:#000;text-decoration:none }
	img[src*="svg"], img[src*="png"] { background:white;filter:invert(1) hue-rotate(180deg) }
	main pre { background:#111 }
	main table { border-style:solid }
	main th, main td { border-style:dotted }
	.nodark { filter:invert(0) hue-rotate(0deg) !important;background:transparent !important }
}