.blog{--bg: #14161a;--bg-soft: #191c21;--ink: #e8e6e1;--prose: #b6b4ae;--muted: #8b9199;--faint: #5f666e;--line: rgba(232, 230, 225, .1);--line-strong: rgba(232, 230, 225, .24);--accent: #7aa2f7;--serif: "Source Serif 4", Georgia, serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "JetBrains Mono", "SF Mono", Menlo, monospace;--top-h: 54px;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;min-height:100vh}.blog a{color:inherit;text-decoration:none}.blog-wrap{max-width:800px;margin:0 auto;padding:0 24px}.blog-top{position:sticky;top:0;z-index:10;background:#14161ad1;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.blog-top-in{max-width:800px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.blog-brand{font-family:var(--serif);font-size:1rem;letter-spacing:-.01em}.blog-brand span{color:var(--faint)}.blog-nav{display:flex;gap:22px;font-size:.82rem;color:var(--muted)}.blog-nav a{transition:color .15s}.blog-nav a:hover,.blog-nav a[aria-current=page]{color:var(--ink)}.blog-hero{padding:88px 0 44px}.blog-hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,7vw,3.9rem);line-height:1.04;letter-spacing:-.025em;margin:0 0 22px}.blog-hero h1 .plus{color:var(--accent);font-style:italic}.blog-hero p{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.65}.blog-hero p strong{color:var(--ink);font-weight:500}.blog-pinned{margin:48px 0 0;padding:26px 0 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.blog-eyebrow{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 14px}.blog-pinned h2{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;font-size:clamp(1.5rem,3.6vw,1.95rem);line-height:1.2;margin:0 0 12px}.blog-pinned h2 a:hover{color:var(--accent)}.blog-pinned-desc{margin:0 0 14px;color:var(--muted);font-size:.95rem}.blog-pinned-meta{margin:0;font-family:var(--mono);font-size:.72rem;color:var(--faint);display:flex;align-items:center;gap:10px}.blog-dot{width:3px;height:3px;border-radius:50%;background:var(--faint);display:inline-block}.blog-filters{position:sticky;top:var(--top-h);z-index:9;margin-top:20px;padding:14px 0 15px;background:#14161aeb;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.blog-chips{display:flex;flex-wrap:wrap;gap:8px}.blog-chip{font:inherit;font-size:.8rem;color:var(--muted);cursor:pointer;background:transparent;border:1px solid var(--line);border-radius:999px;padding:6px 14px;display:inline-flex;align-items:baseline;gap:7px;transition:color .15s,border-color .15s,background .15s}.blog-chip:hover{color:var(--ink);border-color:var(--line-strong)}.blog-chip.is-active{color:var(--bg);background:var(--ink);border-color:var(--ink)}.blog-chip-n{font-family:var(--mono);font-size:.68rem;opacity:.55}.blog-note{margin:22px 0 6px;color:var(--prose);font-family:var(--serif);font-size:1.2rem;line-height:1.5;letter-spacing:-.01em;min-height:1.5em;max-width:44em}.blog-stream{padding:10px 0 96px}.blog-row{display:grid;grid-template-columns:128px 1fr;gap:28px;padding:26px 0;border-bottom:1px solid var(--line)}.blog-row[hidden]{display:none}.blog-row-meta{font-family:var(--mono);font-size:.72rem;color:var(--faint);display:flex;flex-direction:column;gap:5px;padding-top:.34em}.blog-row-type{color:#7aa2f79e}.blog-row h3{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;font-size:1.28rem;line-height:1.32;margin:0}.blog-row h3 a{transition:color .15s}.blog-row h3 a:hover{color:var(--accent)}.blog-row-desc{margin:8px 0 0;color:var(--muted);font-size:.92rem}.blog-empty{padding:40px 0;color:var(--faint)}.blog-foot{border-top:1px solid var(--line);padding:34px 0 60px;color:var(--faint);font-size:.82rem}.blog-foot-in{max-width:800px;margin:0 auto;padding:0 24px;display:flex;flex-wrap:wrap;gap:12px 22px;justify-content:space-between}.blog-foot a:hover{color:var(--ink)}.blog-foot nav{display:flex;gap:18px}.blog-back{display:inline-block;margin:56px 0 34px;font-family:var(--mono);font-size:.74rem;color:var(--muted);transition:color .15s}.blog-back:hover{color:var(--accent)}.blog-post-head{padding-bottom:34px;border-bottom:1px solid var(--line)}.blog-post-meta{font-family:var(--mono);font-size:.72rem;color:var(--faint);display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 18px}.blog-post-head h1{font-family:var(--serif);font-weight:400;letter-spacing:-.03em;font-size:clamp(2rem,5vw,2.9rem);line-height:1.1;margin:0 0 16px}.blog-post-desc{margin:0;color:var(--muted);font-size:1.05rem;line-height:1.6}.blog-tags{margin:0 0 90px;padding-top:26px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px}.blog-tag{font-family:var(--mono);font-size:.7rem;color:var(--faint);border:1px solid var(--line);border-radius:999px;padding:4px 11px}.blog-prose{padding:40px 0 20px;font-size:1.02rem;line-height:1.82;color:var(--prose)}.blog-prose>*:first-child{margin-top:0}.blog-prose h2,.blog-prose h3,.blog-prose h4{font-family:var(--serif);font-weight:600;letter-spacing:-.02em;color:var(--ink);line-height:1.25}.blog-prose h2{font-size:1.6rem;margin:60px 0 18px}.blog-prose h3{font-size:1.25rem;margin:38px 0 12px}.blog-prose h4{font-size:1.05rem;margin:30px 0 10px}.blog-prose p{margin:0 0 22px}.blog-prose strong{color:var(--ink);font-weight:600}.blog-prose em{color:var(--ink)}.blog-prose a{color:var(--accent);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#7aa2f766}.blog-prose a:hover{text-decoration-color:var(--accent)}.blog-prose ul,.blog-prose ol{margin:0 0 22px;padding-left:22px}.blog-prose ul{list-style:disc}.blog-prose ol{list-style:decimal}.blog-prose li{margin-bottom:8px}.blog-prose li::marker{color:var(--faint)}.blog-prose blockquote{margin:40px 0;padding:2px 0 2px 26px;border-left:2px solid var(--accent);font-family:var(--serif);font-style:normal;font-size:1.3rem;line-height:1.5;letter-spacing:-.01em;color:var(--ink)}.blog-prose blockquote p{margin:0 0 12px}.blog-prose blockquote p:last-child{margin-bottom:0}.blog-prose blockquote cite{display:block;margin-top:12px;font-family:var(--sans);font-style:normal;font-size:.82rem;color:var(--muted)}.blog-prose hr{border:0;border-top:1px solid var(--line);margin:44px 0}.blog-prose code{font-family:var(--mono);font-size:.86em;background:var(--bg-soft);border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--ink)}.blog-prose pre{background:#101216;border:1px solid var(--line);border-radius:8px;padding:18px 20px;overflow-x:auto;margin:28px 0;font-size:.86rem;line-height:1.65}.blog-prose pre code{background:transparent;border:0;padding:0;font-size:inherit}.blog-prose img{max-width:100%;height:auto;border-radius:8px;border:1px solid var(--line);margin:30px 0;display:block}.blog-prose table{width:100%;margin:30px 0;border-collapse:collapse;font-size:.9rem;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{border:1px solid var(--line);padding:9px 12px;text-align:left}.blog-prose th{background:var(--bg-soft);color:var(--ink);font-weight:600}@media(max-width:640px){.blog-hero{padding:60px 0 32px}.blog-row{grid-template-columns:1fr;gap:10px}.blog-row-meta{flex-direction:row;gap:12px;padding-top:0}.blog-nav{gap:16px}}
