.blog-list{grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.blog-list>li{min-inline-size:0;display:grid}.blog-card{background:var(--mask-raised);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-card);transition:translate var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out);align-content:start;gap:8px;padding:20px 22px;display:grid;position:relative}.blog-card:has(a:active){background:color-mix(in srgb, var(--silk) 6%, var(--mask-raised))}.blog-card-title{letter-spacing:-.02em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.125rem,1.05rem + .35vw,1.3125rem);font-weight:650;line-height:1.25}.blog-card-title a{color:var(--silk);touch-action:manipulation;text-decoration:none}.blog-card-title a:after{content:"";border-radius:inherit;position:absolute;inset:0}.blog-card-title a:focus-visible{outline:none}.blog-card:has(a:focus-visible){outline:2px solid var(--copper-hot);outline-offset:2px}.blog-card-meta{color:var(--silk-muted);font-family:var(--font-mono);font-size:var(--micro);letter-spacing:.04em;text-transform:uppercase;order:-1;margin:0}.blog-card-text{max-inline-size:68ch;color:var(--silk-muted);margin:0}@media (hover:hover) and (pointer:fine){.blog-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-card-hover)}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){:root:not([data-reduced-motion=true]) .blog-card:hover{translate:0 -2px}}.blog-tags{flex-wrap:wrap;gap:6px;margin:4px 0 0;padding:0;list-style:none;display:flex}.blog-tags li{border:1px solid var(--border);border-radius:var(--radius-s);min-block-size:26px;color:var(--silk-muted);font-size:var(--small);align-items:center;padding:2px 9px;line-height:1.3;display:inline-flex}.blog-empty{color:var(--silk-muted);margin:0;font-size:1.0625rem}.blog-pager{border-block-start:1px solid var(--hairline);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin-block-start:40px;padding-block-start:24px;display:grid}.blog-pager-at{color:var(--silk-muted);font-family:var(--font-mono);font-size:var(--micro);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;margin:0}.blog-pager>:last-child{justify-self:end}.blog-pager-newer{flex-direction:row-reverse}.blog-pager-newer:after{rotate:180deg}.blog-feed,.blog-all{margin:24px 0 0}.blog-up{color:inherit;text-decoration:none}@media (hover:hover) and (pointer:fine){.blog-up:hover{color:var(--silk)}}.read .blog-title{letter-spacing:-.035em;overflow-wrap:break-word;text-wrap:balance;max-inline-size:22ch;font-size:clamp(2rem,1.4rem + 2.8vw,3.25rem);line-height:1.06}.blog-meta{max-inline-size:none;color:var(--silk-muted);font-family:var(--font-mono);font-size:var(--micro);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;gap:6px 20px;margin:0;display:flex}.blog-meta>*{white-space:nowrap}.blog-head .blog-tags{margin-block-start:16px}.blog-head{margin-block-end:40px}.blog-hero{max-inline-size:var(--read-measure);margin:0 0 40px}.blog-hero img{aspect-ratio:1200/630;object-fit:cover;border:1px solid var(--border);border-radius:var(--radius-l);background:var(--mask-sunken);block-size:auto;inline-size:100%;display:block}.blog-faq{border-block-start:1px solid var(--hairline);margin-block-start:56px;padding-block-start:40px}.blog-faq-item+.blog-faq-item{margin-block-start:24px}.blog-faq-item h3{margin-block-start:0}.blog-faq-item>:last-child{margin-block-end:0}.blog-cta{max-inline-size:var(--read-measure);background:var(--mask-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);justify-items:start;gap:12px;margin-block-start:64px;padding:28px;display:grid}.blog-cta h2{letter-spacing:-.028em;margin:0;font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem);line-height:1.15}.blog-cta p{max-inline-size:52ch;color:var(--silk-muted);margin:0 0 8px}.blog-related{margin-block-start:72px}.blog-related h2{letter-spacing:-.028em;margin:0 0 16px;font-size:clamp(1.375rem,1.2rem + .8vw,1.75rem)}.blog-prose>:first-child{margin-block-start:0}.blog-prose h2{margin-block-start:48px}.blog-prose h3{margin-block-start:32px;font-size:1.1875rem}.blog-prose :is(h4,h5,h6){margin:24px 0 8px;font-size:1.0625rem;font-weight:650}.blog-prose :is(h2,h3,h4,h5,h6){overflow-wrap:break-word;scroll-margin-block-start:96px}.blog-prose a:not([class]){color:var(--silk);overflow-wrap:anywhere}.blog-prose ol{list-style:decimal}.blog-prose li>:is(ul,ol){margin-block:8px 0}.blog-prose li>p{margin-block-end:8px}.blog-prose blockquote{border-inline-start:2px solid var(--copper-hot);color:var(--silk);margin:24px 0;padding:2px 0 2px 20px}.blog-prose blockquote>:last-child{margin-block-end:0}.blog-prose hr{border:0;border-block-start:1px solid var(--hairline);margin:40px 0}.blog-prose img{border-radius:var(--radius-m);block-size:auto;max-inline-size:100%;margin:24px 0;display:block}.blog-prose :is(figure,picture){margin:24px 0}.blog-prose figcaption{color:var(--silk-muted);font-size:var(--small);margin-block-start:8px}.blog-prose .read-table td:first-child{min-inline-size:0}.blog-prose :is(del,s){color:var(--silk-muted)}.blog-prose input[type=checkbox]{accent-color:var(--silk);margin-inline-end:8px}.blog-prose li:has(>input[type=checkbox]):before{display:none}.blog-prose kbd{border:1px solid var(--border-strong);font-family:var(--font-mono);border-radius:5px;padding:1px 6px;font-size:.8125em}.blog-prose dl{margin:0 0 16px}.blog-prose dt{font-weight:650}.blog-prose dd{color:var(--silk-muted);margin:0 0 12px}.blog-prose sup{line-height:0}.blog-prose sup a{font-family:var(--font-mono);padding-inline:2px;font-size:.75em;text-decoration:none}.blog-prose :is(.footnotes,[data-footnotes]){border-block-start:1px solid var(--hairline);color:var(--silk-muted);margin-block-start:56px;padding-block-start:24px;font-size:.9375rem}.blog-prose :is(.footnotes,[data-footnotes]) h2{font-family:var(--font-mono);font-size:var(--micro);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-weight:500}.blog-prose :is(.footnotes,[data-footnotes]) ol{padding-inline-start:1.25rem}.blog-prose :is(.footnotes,[data-footnotes]) li p{margin-block-end:4px}.blog-prose :is(.footnotes,[data-footnotes]) :target{color:var(--silk)}@container (width>=760px){.blog-related .blog-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@container (width>=600px){.blog-index .blog-card{padding:24px 28px}}.blog-index .blog-list{max-inline-size:840px}
