:root{--font-serif:Charter, "Bitstream Charter", "Iowan Old Style", "Palatino Linotype",
                Palatino, Georgia, "Times New Roman", serif;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:"SF Mono", ui-monospace, "JetBrains Mono", "Fira Code", Menlo, Consolas, monospace;--bg:#fbf9f5;--bg-offset:#f0ece3;--fg:#191712;--fg-muted:#6a6459;--rule:#e2ddd1;--accent:#9a3b2e;--accent-fg:#ffffff;--accent-soft:#f0e1da;--measure:40rem;--measure-wide:46rem;--gutter:clamp(1.25rem, 5vw, 3rem);--leading:1.7}@media(prefers-color-scheme:dark){:root{--bg:#15141a;--bg-offset:#201f27;--fg:#e7e4dc;--fg-muted:#9d9a8f;--rule:#302f38;--accent:#e0876f;--accent-fg:#15141a;--accent-soft:#2e2420}}*,*::before,*::after{box-sizing:border-box}html{font-size:112.5%;-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-serif);line-height:var(--leading);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;display:flex;flex-direction:column;min-height:100vh}.wrap,main>*>*,main>article,main>section{max-width:var(--measure);margin-inline:auto;padding-inline:var(--gutter)}main{flex:1 0 auto;width:100%;padding-block:2.5rem 4rem}a{color:inherit;text-decoration-color:var(--accent);text-underline-offset:.15em}a:hover{color:var(--accent)}h1,h2,h3,h4{font-weight:600;line-height:1.25;letter-spacing:-.01em;margin:2.5rem 0 1rem}h1{font-size:2rem;margin-top:0}h2{font-size:1.4rem}h3{font-size:1.15rem}p,ul,ol,blockquote,pre,table,figure{margin:0 0 1.4rem}blockquote{border-left:3px solid var(--accent);padding-left:1.2rem;color:var(--fg-muted);font-style:italic}hr{border:0;border-top:1px solid var(--rule);margin:2.5rem 0}img,video{max-width:100%;height:auto;border-radius:3px}figure{margin:2rem 0}figure img{display:block;margin-inline:auto}figure picture{display:block}figcaption{margin-top:.6rem;font-family:var(--font-sans);font-size:.85rem;color:var(--fg-muted);text-align:center}code,kbd,samp{font-family:var(--font-mono);font-size:.85em}:not(pre)>code{background:var(--bg-offset);padding:.15em .35em;border-radius:3px}pre{background:var(--bg-offset);padding:1rem 1.2rem;border-radius:5px;overflow-x:auto;line-height:1.5;border:1px solid var(--rule)}table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:.9rem}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--rule)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:var(--accent);color:var(--accent-fg);padding:.5rem .75rem;border-radius:4px;z-index:10}.tick::after,.post-header h1::after,.masthead__title::after{content:"";display:block;width:2.5rem;height:3px;margin-top:.9rem;border-radius:2px;background:var(--accent)}.site-header{border-bottom:1px solid var(--rule);background:var(--bg)}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding-block:1.1rem}.site-brand{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:inherit}.site-brand__mark{width:40px;height:40px;border-radius:6px;box-shadow:0 0 0 1px var(--rule)inset;flex-shrink:0}.site-brand__name{font-weight:600;font-size:1.15rem;letter-spacing:-.01em}.site-brand:hover .site-brand__name{color:var(--accent)}.site-nav{font-family:var(--font-sans);font-size:.9rem;display:flex;gap:1.25rem}.site-nav a{text-decoration:none;color:var(--fg-muted)}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.site-footer{flex-shrink:0;border-top:1px solid var(--rule);font-family:var(--font-sans);font-size:.85rem;color:var(--fg-muted)}.site-footer .wrap{padding-block:2.25rem}.site-footer__mark{width:28px;height:28px;border-radius:5px;opacity:.85;margin-bottom:.9rem;box-shadow:0 0 0 1px var(--rule)inset}.site-footer p{margin:0}.site-footer__social{display:flex;gap:1rem;margin-bottom:.5rem}.site-footer__social a{text-decoration:none}.site-footer__social a:hover{color:var(--accent)}.masthead{max-width:var(--measure-wide);position:relative;display:flex;align-items:center;gap:1.4rem 2.25rem;flex-wrap:wrap;padding-block:.5rem 2.25rem;margin-bottom:2.75rem}.masthead::after{content:"";position:absolute;left:var(--gutter);right:var(--gutter);bottom:0;border-bottom:1px solid var(--rule)}.masthead>*{max-width:none;margin-inline:0;padding-inline:0}.masthead__art{flex-shrink:0;display:block}.masthead__art img{width:120px;height:120px;border-radius:10px;box-shadow:0 0 0 1px var(--rule),0 10px 22px -16px rgba(0,0,0,.4)}.masthead__body{flex:1 1 15rem}.masthead__title{margin:0;font-size:clamp(1.9rem,4.5vw,2.4rem);line-height:1.12}.masthead__title::after{margin-top:.8rem;width:2.75rem}.masthead__tagline{margin-top:1rem;color:var(--fg-muted);font-size:1.05rem}.masthead__tagline p{margin:0}.archive{max-width:var(--measure-wide);margin-inline:auto;padding-inline:var(--gutter)}.archive>*{max-width:none;margin-inline:0;padding-inline:0}.archive-year{margin-bottom:2.25rem}.archive-year__num{margin:0 0 .35rem;padding-bottom:.4rem;border-bottom:1px solid var(--rule);font-family:var(--font-sans);font-size:.75rem;font-weight:700;letter-spacing:.14em;color:var(--accent)}.post-list{list-style:none;padding:0;margin:0}.post-list__item{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--rule);transition:padding-left .14s ease}.post-list__item:hover{padding-left:.4rem}.post-list__link{text-decoration:none;font-size:1.05rem}.post-list__item:hover .post-list__link{color:var(--accent);text-decoration:underline}.post-list__date{flex-shrink:0;font-family:var(--font-sans);font-size:.8rem;color:var(--fg-muted);font-variant-numeric:tabular-nums}.more{font-family:var(--font-sans);font-size:.9rem}.page-header{margin-bottom:2.5rem}.page-header h1{margin-bottom:0}.page-header h1.tick::after{margin-bottom:.25rem}.page-intro,.page-header p{color:var(--fg-muted);font-family:var(--font-sans);font-size:.9rem}.post-header{margin-bottom:2.75rem}.post-header h1{margin-bottom:0}.post-meta{font-family:var(--font-sans);font-size:.85rem;color:var(--fg-muted);display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;margin-top:1rem}.post-meta__tags{display:inline-flex;flex-wrap:wrap;gap:.4rem}.post-meta__tags a{text-decoration:none;font-size:.75rem;line-height:1.6;padding:.05rem .6rem;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.post-meta__tags a:hover{background:var(--accent);color:var(--accent-fg)}.post-meta__draft{color:var(--accent);border:1px solid var(--accent);border-radius:3px;padding:0 .35em;font-size:.75rem}.post-content>*:first-child{margin-top:0}.post-content h2{margin-top:2.75rem}.post-content h2::after{content:"";display:block;width:1.75rem;height:2px;margin-top:.5rem;border-radius:2px;background:var(--rule)}.post-footer{margin-top:3.5rem;padding-top:1.5rem;border-top:1px solid var(--rule);display:flex;justify-content:space-between;gap:1rem;font-family:var(--font-sans);font-size:.9rem}.post-nav{text-decoration:none;color:var(--fg-muted);max-width:45%}.post-nav:hover{color:var(--accent)}.post-nav--older{text-align:right;margin-left:auto}.tag-cloud{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.6rem .75rem;font-family:var(--font-sans)}.tag-cloud li{display:inline-flex;align-items:baseline;gap:.3rem;padding:.2rem .7rem;border:1px solid var(--rule);border-radius:999px;font-size:.9rem}.tag-cloud li:hover{border-color:var(--accent)}.tag-cloud a{text-decoration:none}.tag-cloud__count{color:var(--fg-muted);font-size:.75rem}.notfound{text-align:center;padding-block:4rem}.notfound img{width:96px;height:96px;padding:0;border-radius:10px;box-shadow:0 0 0 1px var(--rule);margin:0 auto 1.5rem}