:root { --black: #0f0f0f; --white: WhiteSmoke; --ac: MediumPurple; --fg: var(--black); --bg: var(--white); --body-spacing: 45px; --body-line-height: 1.3; --body-inline-padding: 15px; color-scheme: light dark; } ::selection { background: var(--ac); opacity: 1.0; color: var(--black); padding: 10px; } a { color: var(--fg); } a:hover { background: color-mix(in srgb, var(--ac) 40%, transparent); } body { background: var(--bg); color: var(--fg); overflow-x: hidden; font-family: var(--ff, sans-serif); padding: var(--body-spacing); margin: 0; } body>*+* { margin-top: var(--body-spacing); } header { float: left; margin: 0 var(--body-spacing) 0 0; } header a { text-decoration: none; } header a img { max-height: 55px; vertical-align: bottom; } header+nav { margin-top: 0; } nav section { display: inline-block; line-height: var(--body-line-height); vertical-align: top; } nav section+* { margin-left: 1rem; } nav ul { margin: 0px; padding: 0px; } main { clear: both; max-width: 700px; } main img { width: 100%; max-width: 700px; } main>* { margin-bottom: 30px } main>h1 { font-size: 1.5rem; text-transform: capitalize; } main>h2 { font-size: 1.3rem; text-transform: capitalize } main>h3 { font-size: 1.2rem; text-transform: capitalize } main>h4 { font-size: 1.1rem; text-transform: capitalize } main p { line-height: var(--body-line-height); margin-top: 0px; } figure { margin: 0; padding-bottom: var(--body-inline-padding); } figcaption { text-align: end; font-size: smaller; padding: 2px } main hr { border-color: color-mix(in srgb, var(--fg) 20%, var(--bg)); clear: both; } main img.sm { max-width: 192px; } main img.left { float: left; padding-right: var(--body-inline-padding); } main img.right { float: right; padding-left: var(--body-inline-padding); } main>q { max-width: 500px; display: block; margin-left: 30px; } main>pre { font-family: monospace; background: var(--fg); color: var(--bg); padding: var(--body-inline-padding); } main>code { font-family: monospace; margin-bottom: 30px; display: block; background: var(--fg); color: var(--bg); padding: var(--body-inline-padding); white-space: pre } main>code comment { color: #777 } main ol, main ul { margin-bottom: 30px; line-height: var(--body-line-height); } /*main ol li+*,*/ /*main ul li+* {*/ /* margin-top: 1ex;*/ /*}*/ main ol li>p, main ul li>p { margin: 0; } main ol { list-style-type: decimal-leading-zero; } /* TASK LIST */ main ul.task-list li { list-style-type: none; padding: 5px; } main ul.task-list li+* { margin-top: 1ex; } main ul.task-list li:has(label:hover) { padding: 4px; background: color-mix(in srgb, var(--fg) 5%, transparent); border: 1px solid color-mix(in srgb, var(--fg) 10%, transparent); } main ul.task-list li:has(input:checked) { padding: 4px; background: color-mix(in srgb, var(--ac) 10%, transparent); border: 1px solid color-mix(in srgb, var(--ac) 20%, transparent); } main ul.task-list input { margin: 0 1em 0 -2em; } /* GALLERY */ main ul.gallery { padding: 0; } main ul.gallery li { clear: both; display: block; } main ul.gallery li a { display: block; padding: 10px } main ul.gallery li img { display: block; } main>table img { max-width: 100%; display: block; margin: 20px 0; } main>table tr th { text-align: start; font-weight: bold } main>table tr>* { padding: 5px 15px; vertical-align: top; } main span.date { font-family: monospace; display: inline-block; width: 100%; text-align: end; } main>nav.table-of-contents { /*max-width: 30ch;*/ position: sticky; top: 1rem; float: right; margin-right: -22ch; } main>nav.table-of-contents>ol>:first-child { text-transform: none; line-height: 2.0; } main>section#footnotes { margin-bottom: 0; font-size: smaller; } main>section#footnotes hr { display: none; } .footnote-back { margin-left: 1ch; } footer { border-top: 1px solid color-mix(in srgb, var(--fg) 20%, var(--bg)); padding-top: var(--body-spacing); line-height: var(--body-line-height); clear: both; } body>a[href="#top"]:last-child { float: right; margin-top: -2rem; } details[open]>*:not(summary) { margin: 1ex 0 0 0; } /* modular */ .col2 { columns: 2 } .capital { text-transform: capitalize } .nocapital { text-transform: unset !important; } .notice { padding: var(--body-inline-padding); border: 1px solid var(--ac); background-color: color-mix(in srgb, var(--ac) 10%, var(--bg)); color: color-mix(in srgb, var(--fg) 90%, var(--bg)); } .notice, .notice>* { font-size: 0.8rem; } .notice h1 { text-align: end; font-size: 0.9rem; text-transform: capitalize; } ul.nobull li { list-style-type: none } .hidden { display: none } /* theme */ @media (prefers-color-scheme: dark) { :root { --fg: var(--white); --bg: var(--black); } .mono { filter: invert(1) } } /* mobile */ @media (max-width: 1100px) { :root { --body-spacing: 25px; } ul a, ol a { line-height: 1.8; } } @media (max-width: 1100px) and (min-width: 651px) {} @media (max-width: 650px) and (min-width: 501px) {} @media (max-width: 500px) and (min-width: 351px) {} @media (max-width: 350px) {} /* typography */ :root { --vf-grad: 0; } @media (prefers-color-scheme: dark) { :root { --vf-grad: -50; } } html { font-synthesis: none; font-variation-settings: "GRAD" var(--vf-grad, 0); text-size-adjust: none; -moz-text-size-adjust: none; -webkit-text-size-adjust: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; text-align: justify; text-justify: inter-word; text-decoration-skip-ink: auto; } main { margin-block-start: var(--body-spacing); } main pre, main code, main var, main samp, main kbd, main h1, main h2, main h3, main h4, main h5, main h6 { -webkit-hyphens: manual; hyphens: manual; } h1 { font-variant-numeric: lining-nums; font-variant-ligatures: discretionary-ligatures; } td, math, time[datetime*=":"] { font-variant-numeric: tabular-nums lining-nums slashed-zero; }