.blog-index,.blog-post{padding-top:clamp(40px,6vw,92px);padding-bottom:96px}.blog-kicker{letter-spacing:.1em;color:var(--muted);margin:0 0 24px;font-size:.875rem;font-weight:700}.blog-heading{padding-bottom:clamp(36px,5vw,72px)}.blog-heading-line{justify-content:space-between;align-items:end;gap:32px;display:flex}.blog-heading h1{letter-spacing:-.06em;margin:0;font-size:clamp(64px,8vw,120px);font-weight:800;line-height:1.15}.blog-heading h1>span{color:var(--blue)}.blog-heading-line>p{max-width:390px;color:var(--muted);margin:0 0 9px;font-size:1.125rem;line-height:1.9}.blog-topics{border-block:1px solid var(--line);flex-wrap:wrap;gap:20px 48px;padding:24px 0;display:flex}.blog-topics>span{align-items:center;gap:12px;font-size:1rem;display:inline-flex}.blog-topics small{color:var(--blue);font-variant-numeric:tabular-nums;font-size:.875rem}.blog-entries{min-height:310px;padding-top:44px}.blog-section-label{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.blog-section-label h2{margin:0;font-size:1rem;font-weight:600}.blog-section-label>span{color:var(--muted);font-size:.875rem}.blog-list{margin:0;padding:0;list-style:none}.blog-entry{border-top:1px solid var(--line);grid-template-columns:180px minmax(0,1fr) 32px;align-items:start;gap:36px;padding:36px 0;display:grid}.blog-entry-meta{color:var(--muted);flex-direction:column;align-items:start;gap:10px;font-size:.875rem;display:flex}.blog-entry-meta>span{color:var(--blue)}.blog-entry-copy h3{letter-spacing:-.025em;overflow-wrap:anywhere;margin:-5px 0 14px;font-size:clamp(24px,2.6vw,38px);line-height:1.45}.blog-entry-copy p{color:var(--muted);margin:0;font-size:1rem;line-height:1.8}.blog-entry-copy .blog-entry-source{margin-top:12px;font-size:.875rem}.blog-reading-label{background:color-mix(in srgb, var(--blue) 8%, transparent);color:var(--blue);padding:4px 8px;font-size:.8125rem;font-weight:500}.blog-entry:hover h3{color:var(--blue)}.blog-entry>svg{margin-top:4px}.blog-draft-label{border:1px solid var(--line);padding:4px 8px;font-size:.875rem;font-weight:500;display:inline-block}.blog-empty{border-top:1px solid var(--line);padding:36px 0 58px}.blog-empty p{color:var(--muted);font-size:1rem;line-height:1.8}.blog-empty .blog-empty-title{color:var(--ink);margin:0 0 12px;font-size:clamp(24px,3vw,36px)}.blog-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:72px;padding-top:24px;font-size:.875rem;display:flex}.blog-footer>span{color:var(--muted)}.blog-footer a{align-items:center;gap:16px;min-height:44px;display:inline-flex}.blog-footer a:hover,.blog-back:hover{color:var(--blue)}.blog-back{align-items:center;gap:12px;min-height:44px;margin-bottom:36px;font-size:.875rem;display:inline-flex}.blog-draft-note{border-left:3px solid var(--blue);background:color-mix(in srgb, var(--blue) 7%, transparent);margin:0 0 36px;padding:16px 20px;font-size:1rem;line-height:1.7}.blog-post-header{max-width:960px;padding-bottom:44px}.blog-post-header h1{letter-spacing:-.035em;overflow-wrap:anywhere;margin:0 0 24px;font-size:clamp(32px,4.5vw,64px);line-height:1.35}.blog-post-description{max-width:780px;color:var(--muted);margin:0 0 26px;font-size:1.125rem;line-height:1.9}.blog-post-meta{color:var(--muted);flex-wrap:wrap;gap:12px 28px;font-size:.875rem;display:flex}.blog-source{border:1px solid var(--line);border-left:3px solid var(--blue);max-width:780px;margin-top:30px;padding:24px}.blog-source p{margin:0 0 12px}.blog-source .blog-source-label{color:var(--blue);font-size:.8125rem}.blog-source-title{overflow-wrap:anywhere;font-size:1.125rem;line-height:1.65}.blog-source-meta,.blog-source-note{color:var(--muted);font-size:.875rem;line-height:1.8}.blog-source-link{min-height:44px;color:var(--blue);text-underline-offset:5px;align-items:center;gap:16px;font-weight:600;text-decoration:underline;display:inline-flex}.blog-reading-layout{border-top:1px solid var(--line);grid-template-columns:minmax(0,220px) minmax(0,760px);gap:clamp(32px,5vw,80px);padding-top:40px;display:grid}.blog-toc{align-self:start;font-size:.875rem;position:sticky;top:32px}.blog-toc>p{color:var(--muted);margin:0 0 20px}.blog-toc ol{margin:0;padding:0;list-style:none}.blog-toc a{overflow-wrap:anywhere;padding:10px 0;line-height:1.6;display:block}.blog-toc a:hover{color:var(--blue)}.blog-prose{overflow-wrap:anywhere;grid-column:2;min-width:0;font-size:1.125rem;line-height:1.95}.blog-prose>:first-child{margin-top:0}.blog-prose p,.blog-prose ul,.blog-prose ol{margin:0 0 1.5em}.blog-prose ul{padding-left:1.6em;list-style:outside}.blog-prose ol{padding-left:1.6em;list-style:decimal}.blog-prose li{margin-bottom:.5em;padding-left:.2em}.blog-prose h2{margin:2.3em 0 .8em;scroll-margin-top:28px;font-size:1.6em;font-weight:700;line-height:1.5}.blog-prose h3{margin:1.8em 0 .7em;font-size:1.25em;font-weight:700;line-height:1.5}.blog-prose a{color:var(--blue);text-underline-offset:4px;text-decoration:underline}.blog-prose strong{font-weight:700}.blog-prose blockquote{border-left:3px solid var(--blue);color:var(--muted);margin:1.5em 0;padding:.2em 0 .2em 1.2em}.blog-prose blockquote>:last-child{margin-bottom:0}.blog-prose img,.blog-prose video{max-width:100%;height:auto;margin:2em auto;display:block}.blog-prose pre{border:1px solid var(--line);border-radius:8px;margin:1.8em 0;padding:24px;font-size:.875rem;line-height:1.8;overflow-x:auto}.blog-prose :not(pre)>code{background:color-mix(in srgb, var(--ink) 7%, transparent);border-radius:4px;padding:.15em .35em;font-size:.9em}.blog-prose table{border-collapse:collapse;max-width:100%;margin:1.8em 0;font-size:1rem;display:block;overflow-x:auto}.blog-prose th,.blog-prose td{border:1px solid var(--line);text-align:left;padding:12px 16px}.blog-prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}.blog-index a:focus-visible,.blog-post a:focus-visible{outline:2px solid var(--blue);outline-offset:5px}@media (width<=900px){.blog-heading-line{display:block}.blog-heading-line>p{margin-top:24px}.blog-entry{grid-template-columns:minmax(0,1fr) 28px;gap:18px}.blog-entry-meta{flex-flow:wrap;grid-column:1/-1;align-items:center;gap:12px 18px}.blog-entry-copy h3{margin-top:0}.blog-reading-layout{grid-template-columns:minmax(0,1fr)}.blog-toc{border-bottom:1px solid var(--line);padding-bottom:24px;position:static}.blog-toc ol{flex-wrap:wrap;gap:0 24px;display:flex}.blog-prose{grid-column:1;font-size:1.0625rem}}@media (width<=480px){.blog-topics{gap:16px 24px}.blog-topics>span{font-size:.9375rem}.blog-footer{margin-top:48px}.blog-prose pre{padding:16px}}
