.blog-page{padding-block:64px 88px}.blog-heading{max-width:760px;margin-bottom:38px}.blog-heading h1{letter-spacing:-.05em;font-size:clamp(38px,5vw,60px);font-weight:500;line-height:1.1}.blog-heading p{color:var(--muted-foreground);max-width:65ch;margin-top:20px;font-size:17px;line-height:1.8}.blog-tools{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-block:32px;display:flex}.blog-search{gap:8px;width:min(100%,360px);font-size:13px;display:grid}.blog-search input{border:1px solid var(--border);color:var(--foreground);background:#fff;border-radius:10px;width:100%;padding:12px 14px}.blog-filters{flex-wrap:wrap;gap:8px;display:flex}.blog-filters button{border:1px solid var(--border);cursor:pointer;border-radius:999px;padding:10px 15px;font-size:12px}.blog-filters button[aria-pressed=true]{background:var(--foreground);color:#fff;border-color:var(--foreground)}.blog-feature{border:1px solid var(--border);background:#fafbfe;border-radius:18px;grid-template-columns:1fr 1fr;align-items:center;gap:44px;margin-top:32px;padding:32px;display:grid}.blog-feature h2{letter-spacing:-.035em;margin-block:14px;font-size:clamp(26px,3vw,36px);font-weight:500;line-height:1.2}.blog-feature p{color:var(--muted-foreground);font-size:15px;line-height:1.8}.blog-feature .article-diagram{margin:0}.blog-meta{color:var(--muted-foreground);flex-wrap:wrap;gap:8px 20px;font-size:12px;display:flex}.blog-link{color:var(--primary);text-underline-offset:4px;margin-top:18px;font-size:13px;text-decoration:underline;display:inline-block}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:24px;display:grid}.blog-card{border-top:1px solid var(--border);min-width:0;padding-block:22px}.blog-card h2,.blog-card h3{letter-spacing:-.025em;margin-block:12px;font-size:22px;font-weight:500;line-height:1.35}.blog-card h2 a:hover,.blog-card h3 a:hover,.blog-feature h2 a:hover{color:var(--primary)}.blog-card p{color:var(--muted-foreground);font-size:14px;line-height:1.8}.blog-results{color:var(--muted-foreground);margin-top:30px;font-size:12px}.blog-empty{padding-block:30px}.blog-article{max-width:1120px}.post-header{max-width:850px;margin-top:32px}.post-header h1{letter-spacing:-.045em;margin-block:20px;font-size:clamp(35px,4.4vw,54px);font-weight:500;line-height:1.15}.post-lead{color:var(--muted-foreground);max-width:65ch;margin-bottom:25px;font-size:20px;line-height:1.7}.post-actions{flex-wrap:wrap;gap:20px;margin-top:18px;font-size:12px;display:flex}.post-actions a{color:var(--primary);text-underline-offset:4px;text-decoration:underline}.post-byline{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:20px;font-size:12px;display:flex}.author-link{color:var(--foreground);align-items:center;gap:12px;font-size:14px;display:inline-flex}.author-link small{color:var(--muted-foreground);margin-top:3px;font-size:12px;display:block}.author-link img,.card-author img,.author-bio img,.author-profile img{object-fit:cover;border-radius:50%;flex-shrink:0}.card-author{align-items:center;gap:8px;margin-top:16px;font-size:12px;display:flex}.author-bio{background:#f7f8fc;border-radius:12px;align-items:start;gap:18px;max-width:760px;margin-top:42px;padding:24px;display:flex}.author-bio h2{font-size:15px;font-weight:550}.author-bio h2 span{color:var(--muted-foreground);margin-top:4px;font-size:12px;font-weight:400;display:block}.author-bio p{color:var(--muted-foreground);margin-top:12px;font-size:14px;line-height:1.8}.author-bio p a,.author-profile p a{color:var(--primary);text-underline-offset:4px;text-decoration:underline}.author-profile{align-items:start;gap:24px;max-width:760px;margin-block:40px;display:flex}.author-profile h1{letter-spacing:-.04em;font-size:40px;font-weight:500}.author-profile p{color:var(--muted-foreground);margin-top:8px;font-size:15px;line-height:1.8}.author-posts-heading{font-size:25px;font-weight:500}.post-layout{grid-template-columns:minmax(0,760px) 220px;align-items:start;gap:56px;margin-top:38px;display:grid}.post-content{min-width:0;font-size:16px;line-height:1.85}.post-content>:first-child{margin-top:0}.post-content p{margin-block:20px}.post-content h2{letter-spacing:-.025em;margin-block:42px 16px;scroll-margin-top:140px;font-size:27px;font-weight:550;line-height:1.3}.post-content h3{margin-block:26px 12px;scroll-margin-top:140px;font-size:21px;font-weight:550;line-height:1.4}.post-content a{color:var(--primary);text-underline-offset:4px;overflow-wrap:anywhere;text-decoration:underline}.post-content ul,.post-content ol{margin-block:20px;padding-left:24px}.post-content li{margin-block:8px}.post-content blockquote{border-left:3px solid var(--primary);background:#f7f8fc;margin-block:24px;padding:4px 22px}.post-content code{background:var(--muted);overflow-wrap:anywhere;border-radius:4px;padding:2px 4px;font-size:.88em}.post-content pre{border-radius:12px;max-width:100%;margin-block:24px;padding:22px;font-size:13px;line-height:1.7;overflow-x:auto}.post-content pre code{overflow-wrap:normal;font-size:inherit;background:0 0;padding:0}.post-content table{border-collapse:collapse;max-width:100%;margin-block:26px;font-size:14px;display:block;overflow-x:auto}.post-content th,.post-content td{border:1px solid var(--border);text-align:left;vertical-align:top;min-width:140px;padding:12px 14px}.post-content th{background:#f7f8fc;font-weight:550}.article-diagram{border:1px solid var(--border);background:#f7f8fc;border-radius:14px;margin-block:30px;padding:24px}.article-diagram ol{gap:25px;margin:0;padding:0;list-style:none;display:grid}.article-diagram li{color:#25264b;background:#fff;border:1px solid #dfe2f5;border-radius:9px;margin:0;padding:17px 20px;font-size:15px;line-height:1.6;position:relative}.article-diagram li+li:before{content:"↓";color:var(--primary);font-size:18px;position:absolute;top:-26px;left:calc(50% - 6px)}.article-diagram li:last-child{border-color:#aaaaf5}.article-diagram figcaption{color:var(--muted-foreground);margin-top:18px;font-size:12px;line-height:1.7}.diagram-compact li{padding:12px 16px;font-size:13px}.post-toc{border-left:1px solid var(--border);padding-left:20px;font-size:12px;position:sticky;top:150px}.post-toc h2{margin-bottom:14px;font-size:13px;font-weight:550}.post-toc ul{padding:0;list-style:none}.post-toc li{margin-block:12px;line-height:1.6}.post-toc a{color:var(--muted-foreground)}.post-toc a:hover{color:var(--primary)}.blog-related{border-top:1px solid var(--border);margin-top:60px;padding-top:30px}.blog-related>h2{letter-spacing:-.03em;font-size:25px;font-weight:500}.blog-page [hidden]{display:none!important}.blog-page :is(a,button,input):focus-visible{outline:2px solid var(--primary);outline-offset:5px}@media (width<=1000px){.post-layout{grid-template-columns:minmax(0,1fr)}.post-toc{display:none}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.blog-page{padding-block:40px 60px}.blog-feature{grid-template-columns:1fr;gap:20px;padding:22px}.blog-grid{grid-template-columns:1fr;gap:4px}.post-lead{font-size:17px}.post-content{font-size:15px}.article-diagram{padding:16px}.post-content h2{font-size:24px}}
