.blog{padding:132px 0 clamp(56px, 9vw, var(--space-4xl))}.blog-index__inner,.blog-post__inner{max-width:var(--max-width);padding:0 var(--space-lg);margin:0 auto}.blog-post__column{max-width:720px;margin:0 auto}.blog-progress{background:var(--accent);transform-origin:0;z-index:300;pointer-events:none;height:3px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.blog-index{padding-bottom:var(--space-2xl);border-bottom:1px solid var(--border)}.blog-index__eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);border-top:1px solid var(--border);padding-top:var(--space-sm);margin-bottom:var(--space-md);font-size:.75rem;font-weight:600}.blog-index__title{font-family:var(--font-serif);letter-spacing:-.04em;font-variation-settings:"opsz" 72;font-size:clamp(2.4rem,6vw,3.6rem);font-weight:800;line-height:1.02}.blog-index__lede{margin-top:var(--space-md);max-width:var(--read-width);padding-left:var(--space-md);border-left:2px solid var(--accent);color:var(--text-secondary);font-size:1rem;line-height:1.6}.blog-index__rss{margin-top:var(--space-lg);font-family:var(--font-mono);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);transition:color var(--t-fast), border-color var(--t-fast);align-items:center;gap:6px;padding:5px 12px;font-size:.78rem;display:inline-flex}.blog-index__rss:hover{color:var(--accent);border-color:var(--accent)}.blog-index__rss .icon{width:14px;height:14px}.blog-featured{gap:clamp(var(--space-lg), 4vw, var(--space-3xl));margin-top:var(--space-3xl);grid-template-columns:1.05fr 1fr;align-items:center;display:grid;position:relative}.blog-featured__cover{aspect-ratio:16/10;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-code);overflow:hidden}.blog-featured__cover img{object-fit:cover;width:100%;height:100%}.blog-featured__meta{align-items:center;gap:var(--space-sm);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);flex-wrap:wrap;font-size:.68rem;display:flex}.blog-featured__tag{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 40%, var(--border));border-radius:var(--radius-sm);padding:2px 8px}.blog-featured__title{font-family:var(--font-serif);letter-spacing:-.03em;margin-top:var(--space-md);font-variation-settings:"opsz" 60;font-size:clamp(1.7rem,3.6vw,2.5rem);font-weight:800;line-height:1.08}.blog-featured__title a{color:var(--text)}.blog-featured__title a:after{content:"";position:absolute;inset:0}.blog-featured__title a:hover{color:var(--accent)}.blog-featured__subtitle{margin-top:var(--space-md);color:var(--text-secondary);max-width:52ch;font-size:1rem;line-height:1.6}.blog-featured__author{justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);color:var(--text-secondary);font-size:.85rem;display:flex}.blog-featured__read{font-family:var(--font-mono);color:var(--accent);align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.blog-featured__read .icon{width:14px;height:14px;transition:transform var(--t-fast)}.blog-featured:hover .blog-featured__read .icon{transform:translate(3px)}.blog-list-section{margin-top:var(--space-3xl)}.blog-list__title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);margin-bottom:var(--space-md);font-size:.72rem;font-weight:600}.blog-row{gap:var(--space-lg);padding:var(--space-lg) 0;border-bottom:1px solid var(--border);grid-template-columns:200px 1fr;align-items:center;display:grid;position:relative}.blog-row__media{aspect-ratio:16/9;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-code);overflow:hidden}.blog-row__media img{object-fit:cover;width:100%;height:100%}.blog-row__meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-size:.68rem}.blog-row__title{font-family:var(--font-serif);letter-spacing:-.02em;margin:var(--space-sm) 0;font-size:1.3rem;font-weight:700;line-height:1.2}.blog-row__title a{color:var(--text)}.blog-row__title a:after{content:"";position:absolute;inset:0}.blog-row__title a:hover{color:var(--accent)}.blog-row__desc{color:var(--text-secondary);max-width:60ch;font-size:.9rem}.blog-empty{margin-top:var(--space-2xl);color:var(--text-muted)}.blog-post__back{font-family:var(--font-mono);color:var(--text-secondary);transition:color var(--t-fast);align-items:center;gap:6px;font-size:.78rem;display:inline-flex}.blog-post__back:hover{color:var(--accent)}.blog-post__back .icon{width:14px;height:14px}.blog-post__hero{margin-top:var(--space-lg);border-radius:var(--radius-lg);background:#0b0b0b;align-items:flex-end;min-height:clamp(320px,54vw,560px);display:flex;position:relative;overflow:hidden}.blog-post__cover{z-index:0;position:absolute;inset:0}.blog-post__cover img{object-fit:cover;width:100%;height:100%}.blog-post__hero:after{content:"";z-index:1;background:linear-gradient(#08080847 0%,#08080880 45%,#080808e6 100%);position:absolute;inset:0}.blog-post__head{z-index:2;width:100%;padding:clamp(24px,4vw,52px);position:relative}.blog-post__title{font-family:var(--font-serif);letter-spacing:-.035em;color:#fff;text-wrap:balance;font-variation-settings:"opsz" 72;font-size:clamp(2rem,4.6vw,3.3rem);font-weight:800;line-height:1.06}.blog-post__subtitle{margin-top:var(--space-md);color:#ffffffeb;max-width:48ch;font-size:clamp(1.05rem,1.8vw,1.3rem);line-height:1.5}.blog-post__meta-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-xl) 0 var(--space-lg);border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex}.blog-post__byline{align-items:center;gap:var(--space-md);min-width:0;display:flex}.blog-post__avatar{background:var(--accent-dim);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));width:46px;height:46px;color:var(--accent);font-family:var(--font-mono);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.blog-post__byline-text{flex-direction:column;gap:2px;display:flex}.blog-post__author-name{color:var(--text);font-weight:650}.blog-post__byline-meta{color:var(--text-secondary);font-size:.82rem;line-height:1.5}.blog-post__byline-meta a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.blog-post__sep{color:var(--border-light)}.blog-share{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.blog-share--compact{margin-left:auto}.blog-share__heading{margin-right:var(--space-sm);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);align-items:center;gap:6px;font-size:.72rem;display:inline-flex}.blog-share__heading .icon{width:14px;height:14px}.blog-share__list{gap:var(--space-sm);flex-wrap:wrap;display:flex}.blog-share__item{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:30px;font-family:var(--font-mono);color:var(--text-secondary);transition:color var(--t-fast), border-color var(--t-fast), background var(--t-fast);align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;line-height:1;display:inline-flex}.blog-share__item:hover{color:var(--accent);border-color:var(--accent)}.blog-share__item .icon{width:13px;height:13px}.blog-share__copy[data-copied=true]{color:var(--green);border-color:var(--green)}.blog-post__tldr{margin:var(--space-lg) 0;padding:var(--space-md) var(--space-lg);border-left:2px solid var(--accent);background:var(--accent-dim);border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--text-secondary);align-items:baseline;gap:10px;font-size:.9375rem;line-height:1.6;display:flex}.blog-post__tldr-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:none;font-size:.66rem;font-weight:700}.blog-toc{margin:var(--space-lg) 0 var(--space-xl);padding:var(--space-lg);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-card)}.blog-toc__title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:var(--space-sm);font-size:.7rem}.blog-toc__list{flex-direction:column;gap:2px;display:flex}.blog-toc__item a{color:var(--text-secondary);transition:color var(--t-fast);padding:3px 0;font-size:.9rem;display:block}.blog-toc__item a:hover{color:var(--accent)}.blog-toc__item--sub a{padding-left:var(--space-lg);font-size:.85rem}.blog-prose{max-width:100%}.blog-prose h2{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--text);margin:var(--space-2xl) 0 var(--space-md);font-variation-settings:"opsz" 48;font-size:clamp(1.6rem,3vw,2rem);font-weight:700;line-height:1.15}.blog-prose h3{font-family:var(--font-sans);color:var(--text);margin:var(--space-xl) 0 var(--space-sm);font-size:1.15rem;font-weight:650}.blog-prose p{color:var(--text);margin-bottom:var(--space-lg);overflow-wrap:break-word;word-break:normal;font-size:clamp(1.06rem,1.06rem + .35vw,1.22rem);line-height:1.72}.blog-prose a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.blog-prose strong{color:var(--text);font-weight:700}.blog-prose em{color:var(--text)}.blog-prose code{font-family:var(--font-mono);background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);overflow-wrap:break-word;word-break:normal;padding:1px 5px;font-size:.86em}.blog-prose hr{border:none;border-top:1px solid var(--border);margin:var(--space-2xl) 0}.blog-prose ul,.blog-prose ol{margin-bottom:var(--space-lg);padding-left:1.4em}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li{color:var(--text);overflow-wrap:break-word;word-break:normal;margin-bottom:10px;font-size:clamp(1.06rem,1.06rem + .35vw,1.22rem);line-height:1.7}.blog-prose li::marker{color:var(--accent)}.blog-prose blockquote{margin:var(--space-lg) 0;padding:var(--space-md) var(--space-lg);border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));border-left:3px solid var(--accent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--accent) 6%, var(--bg-card))}.blog-prose blockquote p{margin-bottom:0;font-size:1.05rem}.blog-post__foot{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);margin-top:var(--space-2xl);padding:var(--space-lg) 0 var(--space-xl);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.blog-post__foot-right{align-items:flex-end;gap:var(--space-md);flex-direction:column;margin-left:auto;display:flex}.blog-tags{gap:var(--space-sm);padding-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.blog-tags__item{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:28px;font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-secondary);align-items:center;padding:5px 10px;font-size:.68rem;line-height:1;display:inline-flex}@media (width<=860px){.blog-featured{gap:var(--space-xl);grid-template-columns:1fr}}@media (width<=620px){.blog-row{gap:var(--space-md);grid-template-columns:1fr}.blog-row__media{max-width:260px}.blog-share--compact{margin-left:0}.blog-post__foot{flex-direction:column;align-items:stretch}.blog-post__foot-right{align-items:flex-start;margin-left:0}}
