@font-face{font-family:literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/literata-normal-latin.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:literata;font-style:normal;font-weight:400 700;font-display:swap;src:url(../fonts/literata-normal-latin-ext.woff2)format('woff2');unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:literata;font-style:italic;font-weight:400 700;font-display:swap;src:url(../fonts/literata-italic-latin.woff2)format('woff2');unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:literata;font-style:italic;font-weight:400 700;font-display:swap;src:url(../fonts/literata-italic-latin-ext.woff2)format('woff2');unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--bg:#faf9f7;--text:#26221e;--text-muted:#6f6a63;--link:#7a4a2b;--border:#e4e0da}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1b1917;--text:#e6e2dc;--text-muted:#9a948c;--link:#d09a6e;--border:#35312c}}:root[data-theme=dark]{--bg:#1b1917;--text:#e6e2dc;--text-muted:#9a948c;--link:#d09a6e;--border:#35312c}*{box-sizing:border-box}body{margin:0 auto;padding:1.5rem 1.25rem 3rem;max-width:40rem;background:var(--bg);color:var(--text);font-family:literata,Georgia,times new roman,serif;font-size:1.0625rem;line-height:1.65}@media(min-width:600px){body{font-size:1.1875rem}}a{color:var(--link);text-underline-offset:.15em}h1,h2,h3{line-height:1.25;text-wrap:balance}h1{margin:0 0 .5rem;font-size:1.75rem}.site-header{margin-bottom:3rem;padding-bottom:1rem;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem}.site-title{color:var(--text);text-decoration:none;font-weight:700;font-size:1.25rem;margin-right:auto}.site-nav{display:flex;gap:1.25rem}.site-nav a{color:var(--text-muted);text-decoration:none;font-size:.9375rem}.site-nav a:hover{color:var(--link)}.theme-toggle{border:none;background:0 0;padding:0;cursor:pointer;color:var(--text-muted);font-size:1.125rem;line-height:1}.theme-toggle:hover{color:var(--link)}.site-footer{margin-top:4rem;padding-top:1rem;border-top:1px solid var(--border);color:var(--text-muted);font-size:.875rem}.post-list{list-style:none;margin:0;padding:0}.post-item{margin-bottom:2.5rem}.post-item-title{margin:0 0 .25rem;font-size:1.375rem}.post-item-title a{color:var(--text);text-decoration:none}.post-item-title a:hover{color:var(--link)}.post-item-date{color:var(--text-muted);font-size:.875rem}.post-item-summary{margin:.5rem 0 0}.post-item-more{display:inline-block;margin-top:.5rem;font-size:.9375rem}.post-header{margin-bottom:2.5rem}.post-header h1{margin:0 0 .5rem;font-size:1.75rem}.post-header time{color:var(--text-muted);font-size:.875rem}.post-content{hyphens:auto;-webkit-hyphens:auto}.post-content p{margin:0 0 1.3em}.post-content h2{margin:2em 0 .75em;font-size:1.375rem}.post-content h3{margin:1.75em 0 .75em;font-size:1.1875rem}.post-content img{max-width:100%;height:auto}.post-content blockquote{margin:1.5rem 0;padding-left:1.25rem;border-left:3px solid var(--border);color:var(--text-muted)}.post-content ul,.post-content ol{margin:0 0 1.3em;padding-left:1.5rem}.post-content li{margin-bottom:.4em}.post-content hr{margin:2.5rem auto;border:none;border-top:1px solid var(--border);width:6rem}.post-content code{font-family:ui-monospace,Consolas,monospace;font-size:.875em}.post-content pre{margin:0 0 1.3em;padding:1rem 1.25rem;overflow-x:auto;border-radius:4px;line-height:1.5}.post-content pre code{font-size:.8125em}.post-content table{margin:0 0 1.3em;border-collapse:collapse;font-size:.9375em}.post-content th,.post-content td{padding:.4em .9em;border:1px solid var(--border);text-align:left}.post-content th{font-weight:700}.comments{margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--border)}.comments h2{margin:0 0 1rem;font-size:1.375rem}.footnotes{margin-top:3rem;color:var(--text-muted);font-size:.875em}.footnotes hr{width:100%}