:root{--paper:#efeade;--paper-dim:#e4dfd0;--ink:#221f1a;--ink-soft:#5c584c;--ink-faint:#8b8677;--accent:#7a2e2e;--accent-soft:#a9683f;--line:#d5cdb9;--line-strong:#c2b89f;--font-display:"Fraunces", "Noto Serif SC", Georgia, serif;--font-body:"Source Serif 4", "Noto Serif SC", Georgia, serif;--font-ui:"Space Grotesk", "Noto Sans SC", system-ui, sans-serif;--sidebar-w:280px;--content-max:700px}*{box-sizing:border-box}html{background:var(--paper);color-scheme:light}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:18px;line-height:1.7}a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent-soft)}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);letter-spacing:-.01em;font-weight:600;line-height:1.25}.eyebrow{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem}.shell{max-width:1180px;min-height:100vh;margin:0 auto;display:flex}.sidebar{width:var(--sidebar-w);border-right:1px solid var(--line);height:100vh;font-family:var(--font-ui);flex-shrink:0;padding:3rem 1.75rem 3rem 2rem;position:sticky;top:0;overflow-y:auto}.main{flex:1;min-width:0;padding:3rem 3rem 6rem}.content-col{max-width:var(--content-max)}@media (width<=860px){.shell{flex-direction:column}.sidebar{border-right:none;border-bottom:1px solid var(--line);width:100%;height:auto;padding:1.75rem 1.5rem;position:static}.main{padding:2rem 1.5rem 4rem}}.site-mark{font-family:var(--font-display);color:var(--ink);font-size:1.5rem;font-weight:600;text-decoration:none;display:block}.site-tagline{color:var(--ink-soft);margin-top:.35rem;font-size:.85rem;line-height:1.5}.sidebar-section{margin-top:2.5rem}.sidebar-section h2{font-family:var(--font-ui);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 .85rem;font-size:.72rem;font-weight:600}.cat-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.cat-list a{color:var(--ink);border-bottom:1px dotted #0000;justify-content:space-between;gap:.5rem;padding:.15rem 0;font-size:.92rem;text-decoration:none;display:flex}.cat-list a:hover{border-bottom-color:var(--line-strong)}.cat-list a.active{color:var(--accent);font-weight:600}.cat-count{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:.82rem}.ledger{border-left:1px solid var(--line-strong);flex-direction:column;gap:.9rem;padding-left:1.1rem;display:flex;position:relative}.ledger-year{position:relative}.ledger-year:before{content:"";background:var(--accent-soft);width:8px;height:1px;position:absolute;top:.45rem;left:-1.35rem}.ledger-year a{color:var(--ink);justify-content:space-between;gap:.5rem;font-size:.92rem;text-decoration:none;display:flex}.ledger-year a:hover{color:var(--accent)}.ledger-year a.active{color:var(--accent);font-weight:600}.post-list{flex-direction:column;margin:2rem 0 0;padding:0;list-style:none;display:flex}.post-item{border-top:1px solid var(--line);padding:1.6rem 0}.post-item:first-child{border-top:none;padding-top:.5rem}.post-meta{font-family:var(--font-ui);color:var(--ink-faint);align-items:center;gap:.6rem;margin-bottom:.4rem;font-size:.78rem;display:flex}.post-meta .tag{color:var(--accent-soft)}.post-item h2{margin:0 0 .5rem;font-size:1.5rem}.post-item h2 a{color:var(--ink);text-decoration:none}.post-item h2 a:hover{color:var(--accent)}.post-excerpt{color:var(--ink-soft);margin:0;font-size:1rem}.post-header{margin-bottom:2.5rem}.post-title{margin:.6rem 0 1rem;font-size:2.4rem}.post-body{font-size:1.08rem}.post-body>:first-child:first-letter{font-family:var(--font-display);float:left;color:var(--accent);padding:.05em .08em 0 0;font-size:3.4em;line-height:.85}.post-body p{margin:0 0 1.3em}.post-body h2{margin:2.2em 0 .8em;font-size:1.5rem}.post-body h3{margin:1.8em 0 .6em;font-size:1.2rem}.post-body a{text-decoration:underline}.post-body img{border-radius:2px;max-width:100%}.post-body blockquote{border-left:3px solid var(--accent-soft);color:var(--ink-soft);margin:1.6em 0;padding:.2em 0 .2em 1.2em;font-style:italic}.post-body code{background:var(--paper-dim);border-radius:3px;padding:.1em .35em;font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.88em}.post-body pre{border:1px solid var(--line);border-radius:4px;padding:1.1rem 1.2rem;font-size:.88rem;overflow-x:auto}.post-body pre code{background:0 0;padding:0}.back-link{font-family:var(--font-ui);color:var(--ink-soft);margin-bottom:2rem;font-size:.85rem;text-decoration:none;display:inline-block}.back-link:hover{color:var(--accent)}.page-title{margin-bottom:.3rem;font-size:2rem}.page-lede{color:var(--ink-soft);margin:0 0 1rem}.empty-note{color:var(--ink-faint);font-family:var(--font-ui);margin-top:2rem;font-size:.9rem}@media (prefers-reduced-motion:no-preference){.post-item,.cat-list a,.ledger-year a{transition:color .15s,border-color .15s}}
