.blog-layout{display:grid;grid-template-columns:220px minmax(0,1fr) 290px;grid-gap:36px;gap:36px;align-items:start}.blog-layout>*{min-width:0}.blog-left,.blog-right{display:grid;grid-gap:26px;gap:26px;position:-webkit-sticky;position:sticky;top:84px;align-self:start}.blog-panel-h{font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin:0 0 8px}.blog-cats{list-style:none;margin:0;padding:0;display:grid;grid-gap:2px;gap:2px}.blog-cats a{display:flex;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:var(--radius);color:var(--ink-2);text-decoration:none;font-size:15px}.blog-cats a:hover{background:var(--surface);color:var(--ink)}.blog-cats a.on{background:var(--brand-soft);color:var(--brand);font-weight:700}.blog-cats .num{font-size:12px;color:var(--ink-3);align-self:center}.blog-cta{border:1px solid var(--rule);border-radius:var(--radius);padding:14px;background:var(--surface)}.blog-cta p{margin:4px 0 10px}.blog-open{border-left:3px solid var(--sun);background:var(--sun-soft);color:var(--sun-ink);padding:12px 14px;border-radius:0 var(--radius) var(--radius) 0}.blog-open p{margin:4px 0 0}.blog-open a{color:inherit}.blog-latest{margin:0;padding-left:18px;display:grid;grid-gap:8px;gap:8px;font-size:15px}.blog-tags{display:flex;flex-wrap:wrap;gap:6px}.blog-tags a.chip{text-decoration:none}.blog-tags a.chip:hover{background:var(--brand-soft);color:var(--brand)}.blog-toc ol,.blog-toc-side ol{margin:0;padding-left:18px;display:grid;grid-gap:6px;gap:6px;font-size:15px}.blog-toc{border:1px solid var(--rule);border-radius:var(--radius);padding:14px 16px;background:var(--surface);margin:0 0 28px}.blog-toc-side{display:none}.blog-card{border:1px solid var(--rule);border-radius:var(--radius);padding:18px;background:var(--bg);display:flex;flex-direction:column;gap:8px}.blog-card:hover{border-color:var(--brand)}.blog-card-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}.blog-card-meta .chip{text-decoration:none}.blog-card-h{font-size:20px;margin:0}.blog-card-h a{color:var(--ink);text-decoration:none}.blog-card-h a:hover{color:var(--brand)}.blog-card-dek{margin:0;color:var(--ink-2);font-size:16px}.blog-card.lead{border-top:4px solid var(--brand);padding:24px}.blog-card.lead .blog-card-h{font-size:clamp(24px,3vw,32px)}.blog-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.blog-list>*{min-width:0}.blog-main>*+*{margin-top:28px}.blog-empty{border:1px dashed var(--rule-strong);border-radius:var(--radius);padding:22px;color:var(--ink-2)}.blog-meta{display:flex;flex-wrap:wrap;gap:4px 16px;color:var(--ink-3);font-size:15px;margin:10px 0 0}.blog-body{font-size:18px;line-height:1.65;max-width:740px}.blog-body h2{margin:1.6em 0 .5em;scroll-margin-top:90px}.blog-body h3{margin:1.3em 0 .4em}.blog-body ol,.blog-body ul{padding-left:22px;margin:0 0 1em}.blog-body li{margin-bottom:.35em}.blog-body blockquote{margin:1em 0;padding:4px 16px;border-left:4px solid var(--brand);color:var(--ink-2)}.blog-body table{margin:.5em 0 1em}.blog-body code{font-family:var(--font-mono);font-size:.9em;background:var(--surface-2);padding:1px 5px;border-radius:3px}.blog-body .blog-source{margin-top:-.4em}.blog-body figure.chart{margin:1.4em 0}.blog-fig{margin:1.6em 0}.blog-fig img{display:block;width:100%;height:auto;border-radius:6px;background:var(--surface-2)}.blog-fig figcaption{margin-top:6px}.blog-hero{margin:0 0 1.4em;max-width:740px}.blog-embed{margin:1.6em 0}.blog-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.blog-share-h{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-right:4px}.blog-share a,.blog-share button{font:inherit;font-size:14px;font-weight:700;color:var(--brand);background:var(--brand-soft);border:0;border-radius:4px;padding:5px 11px;text-decoration:none;cursor:pointer}.blog-share a:hover,.blog-share button:hover{background:var(--brand);color:var(--on-brand)}.blog-author{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--rule);border-radius:var(--radius);padding:18px;background:var(--surface)}.blog-author img{object-fit:cover}.blog-author img,.blog-author-mark{width:72px;height:72px;border-radius:50%;flex:none}.blog-author-mark{background:var(--brand);color:var(--on-brand);display:flex;align-items:center;justify-content:center;font-weight:800;font-family:var(--font-display)}.blog-author p{margin:6px 0 0}.blog-related .grid-3{margin-top:12px}.blog-foot>*+*,.blog-legacy>*+*{margin-top:24px}.blog-legacy{max-width:860px}@media (max-width:1100px){.blog-layout{grid-template-columns:200px minmax(0,1fr)}.blog-right{grid-column:1/-1;position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.blog-layout{grid-template-columns:minmax(0,1fr);gap:24px}.blog-left,.blog-right{position:static}.blog-left>nav .blog-cats{display:flex;flex-wrap:wrap;gap:6px}.blog-left>nav .blog-cats a{border:1px solid var(--rule)}.blog-left>div{display:none}.blog-list,.blog-right{grid-template-columns:minmax(0,1fr)}.blog-body{font-size:17px}}@media (min-width:1101px){.blog-toc-side{display:block}.blog-toc-wrap{display:none}}