:root{--color-button-text:#fff;--color-button-background:#47e;--color-button-hover-background:#69f;--color-separator:#ccc;--color-text:#222;--color-text-underline:#444}:root{--color-background:#fff;--color-text:#222;--color-link:#25c;--color-link-visited:#419;--color-link-underline:#47e;--color-link-visited-underline:#63b;--color-pre-background:#eee;--color-pre-border:#666;--color-secondary:#666;--color-secondary-underline:#888;--color-separator:#ccc}@media(prefers-color-scheme:dark){:root{--color-background:#1a1a1a;--color-text:#e6e6e6;--color-link:#7cb7ff;--color-link-visited:#b19eff;--color-link-underline:#5c8cd6;--color-link-visited-underline:#8c7ed6;--color-pre-background:#2d2d2d;--color-pre-border:#999;--color-secondary:#999;--color-secondary-underline:#777;--color-separator:#444}}@media(prefers-color-scheme:dark){:root{--color-button-text:#fff;--color-button-background:#47e;--color-button-hover-background:#69f}}html,body{background:var(--color-background);font-family:Georgia,serif;font-weight:400;margin:0;color:var(--color-text);height:100%;line-height:1;font-size:18px}body{position:relative;min-height:100%}.center{max-width:670px;margin:0 auto;padding:0 15px}header{padding-top:15px}nav.top{text-align:center;margin-bottom:20px}.footer-padder{margin-top:5vw;height:22vw}footer{height:22vw;position:absolute;bottom:0;left:0;width:100%;background-size:105%;background-repeat:no-repeat}h1{font-family:Helvetica,Arial,sans-serif;font-weight:700;font-size:2.4em;line-height:1.4em;margin-top:25px;margin-bottom:15px;text-align:center}h2{font-family:Helvetica,Arial,sans-serif;font-size:1.4em;font-weight:700;margin:15px 0 10px;line-height:1.5}p,li{line-height:150%;margin:10px 0}a{text-decoration:none;color:var(--color-link);border-bottom:1px dotted var(--color-link-underline);margin-bottom:-1px}a:visited{color:var(--color-link-visited);border-bottom-color:var(--color-link-visited-underline)}a:hover{border-bottom-width:1px;border-bottom-style:solid!important}.post{margin-top:10px;margin-bottom:40px;position:relative}.ui-sans{font-family:Helvetica,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase;font-size:.75em}.ui-gray{color:var(--color-secondary)}blockquote{margin-right:2em;margin-left:.6em;border-left:2px solid var(--color-separator);padding-left:.8em;font-size:.9em}code{background-color:var(--color-pre-background);font-family:monospace;font-size:.8em;padding:2px}pre{margin:1.2em;padding:.3em;border-top:1px dotted var(--color-pre-border);border-bottom:1px dotted var(--color-pre-border);background-color:var(--color-pre-background);overflow-x:auto}hr.line{background:var(--color-separator);width:100%;height:1px;display:block;margin:40px 0;border:none}.post:last-child hr.line{display:none}.post h2{margin-bottom:5px}.post h2 a{color:var(--color-text)!important;border-bottom-color:var(--color-text-underline)!important}.ui-gray{margin-bottom:15px}.post-content{margin-top:25px}.post p{margin:10px 0;line-height:150%}html,body{background:var(--color-background);color:var(--color-text);transition:background-color .3s ease,color .3s ease}a{color:var(--color-link);border-bottom-color:var(--color-link-underline);transition:color .3s ease,border-bottom-color .3s ease}a:visited{color:var(--color-link-visited);border-bottom-color:var(--color-link-visited-underline)}pre,code{background-color:var(--color-pre-background);transition:background-color .3s ease}pre{border-color:var(--color-pre-border)}.ui-gray{color:var(--color-secondary);transition:color .3s ease}hr.line{background:var(--color-separator);transition:background-color .3s ease}blockquote{border-left-color:var(--color-separator);transition:border-left-color .3s ease}.introduction{margin:2em 0 4em;font-size:1.1em;line-height:1.6}.introduction p{margin-bottom:1.2em}.introduction a{font-weight:500}.introduction::after{content:"";display:block;width:100%;height:1px;background:var(--color-separator);margin:2em 0;opacity:.5}.posts article:first-child{margin-top:0}.ui-sans{font-family:Helvetica,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase;font-size:.75em}nav.top{text-align:center;margin-bottom:-4px;padding:0}nav.top a{text-decoration:none;color:var(--color-text);border-bottom:1px dotted var(--color-text-underline)}nav.top a:hover{border-bottom-style:solid}header{padding-top:15px}.center{max-width:670px;margin:0 auto;padding:0 15px}