.icon{vertical-align:-.125em;display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-image:var(--svg);mask-image:var(--svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.icon-globe{--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M12 2a14.5 14.5 0 0 0 0 20a14.5 14.5 0 0 0 0-20M2 12h20'/%3E%3C/g%3E%3C/svg%3E")}.icon-rss{--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cg fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='M4 11a9 9 0 0 1 9 9M4 4a16 16 0 0 1 16 16'/%3E%3Ccircle cx='5' cy='19' r='1'/%3E%3C/g%3E%3C/svg%3E")}:root{color-scheme:light;--paper: light-dark(oklch(.95 .003 25), oklch(.2 .003 25));--accent: light-dark(oklch(.55 .2 25), oklch(.65 .2 25));--ink: light-dark(oklch(.25 0 0), oklch(.95 0 0));--ink-faded: oklch(from var(--ink) l c h / .85);--sans: 450 1.2em/1.5 Cabin, sans-serif;--mono: 400 .9em/1.5 "Fira Code", monospace;--content-width: 50ch;--content-padding: 2ch;--animation-duration: .15s;--border-radius: .3rem;--paragraph-margin: .5lh;@media(prefers-color-scheme:dark){color-scheme:dark}}*,*:before,*:after{margin:0}body{font:var(--sans);background:var(--paper)}::selection{background:var(--accent);color:#fff}img,picture,video,canvas,svg{display:block;max-width:100%;height:fit-content}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;text-wrap:balance}p{text-wrap:wrap;text-wrap:pretty}a,footnote-modal button{color:var(--accent);text-decoration:none;transition-duration:var(--animation-duration);font-weight:600;border-radius:.1em;&:hover,&:focus{background:var(--accent);color:#fff}&:focus{outline:.1em solid var(--accent)}&[href*="http://"],&[href*="https://"]{padding-inline:.25ch;&[data-external-link]:before{display:inline-block;width:.85em;height:.85em;content:"";margin-right:.35ch;vertical-align:-.05em}&.icon-globe:before{background-color:currentColor;-webkit-mask:var(--svg) center / contain no-repeat;mask:var(--svg) center / contain no-repeat}&[data-external-link]:not(.icon-globe):before{background:var(--external-link-favicon) center / contain no-repeat}}}body{color:var(--ink)}body>header{max-width:var(--content-width);padding:.25lh var(--content-padding);border-bottom:1px solid var(--ink-faded);margin-inline:auto;display:flex;align-items:baseline;justify-content:space-between;a{font:var(--mono)}>nav{display:flex;align-items:baseline;justify-content:space-between;gap:2ch}}main{max-width:var(--content-width);padding-inline:var(--content-padding);margin-block:1ch;margin-inline:auto}a[href="#main-content"]{position:absolute;top:-3rem;left:50%;transform:translate(-50%);&:focus{top:1rem}}post-list{ul{list-style:none;padding:0}li{display:flex;align-items:baseline;gap:2ch;+li{margin-block-start:1lh}}time{flex:0 0 auto;font:var(--mono);color:var(--ink-faded)}li>span{flex:1;display:flex;flex-direction:column}small{font-size:.9em;color:var(--ink-faded);margin-block-start:.15lh}}article{>*{margin-block-start:var(--paragraph-margin)}h1{text-align:left;margin-top:.25lh}small{font:var(--mono);font-size:.75em}h1,h2,h3,h4,h5,h6{>a{text-decoration:none}}a{text-decoration:underline}nav *{text-wrap:wrap}aside[data-callout]{padding:var(--paragraph-margin) 2ch;border-radius:var(--border-radius);border-inline-start:4px solid;&:before{font:var(--mono);font-size:.72em;text-transform:uppercase;letter-spacing:.12ch;display:block;margin-block-end:.2lh}>*+*{margin-block-start:var(--paragraph-margin)}}aside[data-callout=important]{border-color:var(--accent);background:oklch(from var(--accent) l c h / .09);font-weight:500;&:before{content:"Important";color:var(--accent)}}aside[data-callout=note]{border-color:var(--ink-faded);background:oklch(from var(--ink) l c h / .045);&:before{content:"Note";color:var(--ink-faded)}}figure:has(>blockquote){border-inline-start:3px solid var(--accent);background:oklch(from var(--ink) l c h / .045);padding:var(--paragraph-margin) 2ch;border-radius:var(--border-radius);blockquote{font-style:italic;>*+*{margin-block-start:var(--paragraph-margin)}}figcaption{margin-block-start:var(--paragraph-margin);font-size:.88em;color:var(--ink-faded)}cite{font-style:italic}}pre,code{font:var(--mono);overflow:auto}pre:has(code){padding:.5em 1ch;border-radius:.25em;border:1px oklch(from var(--ink-faded) l c h / .2) solid}:not(pre)>code{padding-inline:.5ch;border:1px solid oklch(from var(--ink) l c h / .4);border-radius:var(--border-radius);font-size:.8em;font-weight:600}figcaption{text-align:center;font-size:.9em;color:var(--ink-faded)}}footnote-modal{position:fixed;bottom:1ch;left:50%;transform:translate(-50%);background:var(--paper);border:1px solid oklch(from var(--ink) l c h / .8);border-radius:var(--border-radius);padding:var(--content-padding);max-width:calc(100vw - var(--content-padding) * 2);width:var(--content-width);box-sizing:border-box;header{display:flex;justify-content:space-between;font-size:1.25em;a{text-decoration:none}}button{font:var(--prism-font);border:none;background:none;cursor:pointer;border-radius:var(--border-radius);padding-inline:.5ch}}@media(prefers-color-scheme:dark){.shiki,.shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important}}error-page{display:flex;gap:1ch;align-items:center;justify-content:center;h1{color:var(--accent)}}@font-face{font-family:Cabin;font-style:normal;font-weight:100 900;font-display:swap;src:url(fonts/Cabin.woff2)}@font-face{font-family:Cabin;font-style:italic;font-weight:100 900;font-display:swap;src:url(fonts/Cabin-Italic.woff2)}@font-face{font-family:Fira Code;font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/FiraCode.woff2)}
