html { --bg: #fff; --bg-secondary: #f8f9fa; --headings: #000; --text: #333; --links: blue; --highlight: #ffecb2; // light yellow } @mixin dark-appearance { html, body { --bg: #1f242A; --bg-secondary: #323945; --headings: #3D9970; --text: #adb5bd; --links: #91a7ff; --highlight: #ffd8a8; --highlight: #ffd43b; }; } html[data-theme="dark"] { @include dark-appearance; } @media (prefers-color-scheme: dark) { body[data-theme="auto"] { @include dark-appearance; } } html { height: 100%; } body { font-family: monospace; font-size: 1rem; line-height: 1.5; margin: 0; min-height: 100%; } h2, h3, h4, h5 { margin-top: 1.5em; } hr { margin: 1em 0; } p { margin: 1em 0; } li { margin: 0.4em 0; } .w { max-width: 640px; margin: 0 auto; padding: 4em 2em; } table, th, td { width: 100%; border: thin solid black; border-collapse: collapse; padding: 0.4em; } div.highlighter-rouge code, code.highlighter-rouge { display: block; overflow-x: auto; padding: 1em; } blockquote { font-style: italic; border: thin solid black; padding: 1em; p { margin: 0; } } img { max-width: 100%; display: block; margin: 0 auto; } html, body { background-color: var(--bg); color: var(--text); } h1, h2, h3, h4, h5, h6 { color: var(--headings); } p, strong, b, em, span, small, li, hr, table, code, figcaption { color: var(--text); } code, blockquote { background-color: var(--bg-secondary); border: 1px var(--text) solid; } a { color: var(--links); } *:target { background-color: var(--bg-secondary); } html.transition, html.transition *, html.transition *:before, html.transition *:after { transition: all 250ms !important; transition-delay: 0 !important; } .theme-toggle { color: var(--text); background-color: transparent; padding: 4px; cursor: pointer; margin: 1em; position: fixed; right: 0; top: 0; border: 2px transparent solid; outline: none; } .theme-toggle:hover { color: var(--links); outline: none; } .theme-toggle:focus { outline: none; } .dashed { border-top: 1px var(--text) dashed; margin: 0.5em 0; } mark { padding: 0.4em; background-color: var(--highlight); font-size: 0.8em; }