:root{--bg: #f8fafc;--text: #111827;--muted: #64748b;--border: #cbd5e1;--border-soft: #e2e8f0;--accent: #2563eb;--accent-hover: #1d4ed8;--focus: #3b82f6;--tag-bg: #eff6ff;--tag-hover: #dbeafe;--tag-border: #bfdbfe;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace}*{box-sizing:border-box}html{background:var(--bg);font-size:18px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);line-height:1.6}a{color:var(--accent);text-decoration-color:color-mix(in srgb,var(--accent) 35%,transparent);text-decoration-thickness:.08em;text-underline-offset:.18em}a:visited{color:var(--accent)}a:hover{color:var(--accent-hover);text-decoration-color:currentColor}a:focus-visible{border-radius:.2rem;outline:3px solid color-mix(in srgb,var(--focus) 35%,transparent);outline-offset:.18rem}.container{max-width:700px;margin:0 auto;padding:1.9rem 1.4rem 5rem}.site-header{margin-bottom:2.15rem}.page-hero{margin:1.15rem 0 1rem}.eyebrow{color:var(--muted);font-size:.92rem;letter-spacing:.01em;margin:0 0 .45rem}h1,h2,h3{color:var(--text);font-weight:800;line-height:1.12}h1{font-size:2.35rem;letter-spacing:0;margin:0 0 .7rem}.page-title{font-size:clamp(2.45rem,7vw,3.45rem);letter-spacing:-.02em;line-height:.96;margin-bottom:.8rem}.title-line{display:block}.title-line+.title-line{margin-top:.02em}.intro,.lede,.home-subtitle{color:var(--muted);font-size:1rem;line-height:1.55;margin:0;max-width:38rem}.nav-row,.tag-list{display:flex;flex-wrap:wrap;gap:.5rem .75rem}.nav-row{margin-top:1.35rem}.page-nav{margin-bottom:0;margin-top:.9rem}.nav-row a{font-family:var(--font-mono);font-size:.88rem;font-weight:700}.nav-row a[aria-current=page]{color:var(--text);text-decoration-color:var(--accent);text-decoration-thickness:.12em}.divider{border:0;border-top:1px solid var(--border-soft);margin:1.25rem 0}.blog-meta{border-bottom:1px solid var(--border-soft)}.blog-meta-row{align-items:center;column-gap:1rem;display:grid;grid-template-columns:7rem 1fr;min-height:2.65rem;padding:.35rem 0}.blog-meta-label{color:var(--muted);font-family:var(--font-mono);font-size:.82rem;font-weight:700;letter-spacing:.05em;line-height:1.2;text-transform:uppercase}.blog-meta-links,.blog-post-tags{align-items:center;display:flex;flex-wrap:wrap;gap:.35rem 1rem;line-height:1.2}.blog-meta-links a{line-height:1.2}.blog-meta-link,.blog-topic-link{color:var(--accent);font-family:var(--font-mono);font-weight:700;text-decoration-color:color-mix(in srgb,var(--accent) 30%,transparent)}.blog-topic-link{font-size:.84rem;font-weight:400}.home-blurb{border-top:1px solid var(--border-soft);margin-top:0;max-width:36rem;padding-top:1.1rem}.home-blurb p{margin:0}.section-label{color:var(--muted);font-family:var(--font-mono);font-size:.82rem;font-weight:700;letter-spacing:.05em;margin:0;text-transform:uppercase}.tag-list{margin:0;padding:0}.tag{background:var(--tag-bg);border:1px solid var(--tag-border);border-radius:999px;color:#1e40af;display:inline-block;font-size:.84rem;line-height:1.25;padding:.22rem .58rem;text-decoration:none}.tag:hover{background:var(--tag-hover);color:var(--accent-hover);text-decoration:none}.feed,.archive-list{display:grid;gap:1.35rem;margin:0;padding:0}.feed{list-style:none}.post-item{border-top:1px solid var(--border-soft);padding-top:1.2rem}.post-title{display:inline-block;font-size:1.1rem;font-weight:700;line-height:1.25}.post-line{align-items:baseline;display:flex;flex-wrap:wrap;gap:.15rem .65rem}.post-line-date{color:var(--muted);font-family:var(--font-mono);font-size:.78rem;font-style:italic}.blog-year-list{display:grid;gap:1.65rem;margin-top:1.35rem}.blog-year-section{scroll-margin-top:1.5rem}.blog-year-heading{border-bottom:1px solid var(--border-soft);font-size:1.45rem;margin:0 0 .75rem;padding-bottom:.3rem}.compact-post-list{display:grid;gap:.95rem;list-style:none;margin:0;padding:0}.compact-post-item{padding-top:0}.meta,.date{color:var(--muted);font-family:var(--font-mono);font-size:.9rem}.post-item .meta{margin:.22rem 0 .62rem}.back{display:inline-block;font-weight:700;margin-bottom:1.75rem}.year-block{border-top:1px solid var(--border-soft);margin-top:2rem;padding-top:1.1rem}.year-title{font-size:1.65rem;margin:0 0 1rem}.archive-list{list-style:none}.archive-list li{display:grid;gap:.12rem}.post-heading{margin-bottom:1.55rem}.post-heading h1{margin-bottom:.75rem}.prose{border-top:1px solid var(--border-soft);padding-top:1.55rem}.prose p,.prose ul,.prose ol{margin:0 0 1.25rem}.prose li{margin-bottom:.35rem}.prose h2,.prose h3{margin:2.25rem 0 .85rem}.prose blockquote{border-left:3px solid var(--border);color:var(--muted);margin:1.7rem 0;padding-left:1.1rem}@media(max-width:520px){html{font-size:17px}.container{padding:1.35rem 1rem 4rem}h1{font-size:2.05rem}.post-title{font-size:1.18rem}.site-header{margin-bottom:1.8rem}.page-hero{margin-top:.85rem}.divider{margin:1.55rem 0}.blog-year-list{gap:1.5rem}.blog-year-heading{font-size:1.35rem}}
