@layer theme,base;@layer components{.blog-page{overflow-x:clip}.blog-shell{max-width:1440px;margin-inline:auto;padding-inline:1rem}@media (min-width:640px){.blog-shell{padding-inline:1.5rem}}@media (min-width:1024px){.blog-shell{padding-inline:2.5rem}}@media (min-width:1280px){.blog-shell{padding-inline:4rem}}.blog-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);align-items:center;gap:.4rem;display:inline-flex}.blog-badge{border:1px solid var(--blog-rule);width:fit-content;font-family:var(--font-mono);font-size:calc(11px * var(--text-scale));color:var(--color-ink-muted);border-radius:9999px;padding:.1rem .6rem;display:inline-block}.blog-badge.is-draft{border:1px dashed var(--local-admin-ink,currentColor);color:var(--local-admin-ink,currentColor)}.blog-header{background:var(--blog-tint);border-bottom:1px solid var(--blog-rule);padding-block:2.5rem 3rem;position:relative}@media (min-width:1024px){.blog-header{padding-block:3.5rem 4rem}}.blog-intro{gap:1.25rem;margin-top:2rem;display:grid}@media (min-width:1024px){.blog-intro{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:3rem}}.blog-heading{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2.6rem,8vw,6.5rem);font-weight:700;line-height:.95}.blog-index{padding-block:2.5rem 5rem}.blog-index-layout{grid-template-columns:minmax(0,1fr);gap:2rem;display:grid}@media (min-width:1024px){.blog-index-layout{grid-template-columns:14rem minmax(0,50rem);gap:4rem}.blog-filter{top:calc(var(--blog-header-h) + 2rem);align-self:start;position:sticky}}.blog-chips{scrollbar-width:none;gap:.4rem;margin:.75rem -1rem 0;padding:.15rem 1rem;display:flex;overflow-x:auto}.blog-chips::-webkit-scrollbar{display:none}@media (min-width:1024px){.blog-chips{flex-direction:column;margin-inline:0;padding-inline:0;overflow:visible}}.blog-chip{border:1px solid var(--blog-rule);min-height:2.5rem;font-family:var(--font-heading);font-size:var(--text-sm);white-space:nowrap;color:var(--color-ink-muted);border-radius:9999px;justify-content:space-between;align-items:center;gap:.75rem;padding-inline:.95rem;font-weight:500;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}@media (min-width:1024px){.blog-chip{text-align:left;width:100%}}.blog-chip:hover{color:var(--color-ink);border-color:var(--blog-ink)}.blog-chip[aria-pressed=true]{background:var(--blog-fill);border-color:var(--blog-fill);color:var(--blog-on-fill)}.blog-chip-count{font-family:var(--font-mono);font-size:calc(.7rem * var(--text-scale));opacity:.75}.blog-list{border-bottom:1px solid var(--blog-rule);margin-top:.75rem}.blog-row{border-top:1px solid var(--blog-rule);align-content:start;gap:.7rem;padding-block:1.75rem;animation:.5s cubic-bezier(.2,.7,.2,1) both blog-enter;display:grid;position:relative}@keyframes blog-enter{0%{opacity:0;translate:0 10px}}.blog-row-thumb{display:none}@media (min-width:640px){.blog-row.has-thumb{grid-template-columns:minmax(0,1fr) 10rem;column-gap:2rem}.blog-row.has-thumb>:not(.blog-row-thumb){grid-column:1}.blog-row-thumb{aspect-ratio:4/3;border:1px solid var(--blog-rule);background:var(--blog-paper);grid-area:1/2/span 4;align-self:start;display:block;overflow:hidden}}.blog-row-img{object-fit:cover;width:100%;height:100%;transition:scale .5s}.blog-row:hover .blog-row-img{scale:1.03}.blog-row-meta{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-ink-muted);flex-wrap:wrap;align-items:center;gap:.35rem .55rem;display:flex}.blog-row-latest{background:var(--blog-fill);color:var(--blog-on-fill);text-transform:uppercase;letter-spacing:.08em;border-radius:9999px;padding:.05rem .5rem}.blog-row-title{font-family:var(--font-heading);font-weight:700;font-size:calc(clamp(1.3rem, 2.4vw, 1.7rem) * var(--text-scale));letter-spacing:-.02em;text-wrap:balance;overflow-wrap:anywhere;line-height:1.15}.blog-row[data-featured] .blog-row-title{font-size:calc(clamp(1.75rem, 4vw, 2.6rem) * var(--text-scale))}.blog-row-link:after{content:"";position:absolute;inset:0}.blog-row-link{text-underline-offset:.2em;text-decoration-line:underline;text-decoration-color:#0000;text-decoration-thickness:2px;transition:text-decoration-color .2s}.blog-row:hover .blog-row-link,.blog-row-link:focus-visible{-webkit-text-decoration-color:var(--blog-ink);text-decoration-color:var(--blog-ink)}.blog-row-link:focus-visible{outline:none}.blog-row:has(.blog-row-link:focus-visible){outline:2px solid var(--color-blue-ambient);outline-offset:6px}.blog-row-excerpt{max-width:62ch;color:var(--color-ink-muted);line-height:1.6}.blog-empty{max-width:50rem;padding-block:1rem 2rem}.blog-empty-title{font-family:var(--font-display);font-weight:700;font-size:calc(clamp(2rem, 5vw, 3.25rem) * var(--text-scale));letter-spacing:-.03em;margin-top:1rem;line-height:1.05}.blog-toc{column-gap:2.5rem;margin-top:.75rem;display:grid}@media (min-width:768px){.blog-toc{grid-template-columns:1fr 1fr}}.blog-toc li{border-top:1px solid var(--blog-rule);align-items:baseline;gap:1rem;padding-block:.85rem;display:flex}.blog-toc-index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--blog-ink)}.blog-toc-name{font-family:var(--font-heading);font-size:calc(clamp(1.1rem, 2vw, 1.35rem) * var(--text-scale));font-weight:500}.blog-column{width:100%;max-width:42rem;margin-inline:auto;padding-inline:1rem}.blog-article-top{padding-block:2rem 0}@media (min-width:1024px){.blog-article-top{padding-top:3rem}}.blog-back{min-height:2.75rem;font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-ink-muted);align-items:center;gap:.5rem;display:inline-flex}.blog-back:hover{color:var(--color-ink)}.blog-preview{width:100%}.blog-preview-list{font-size:var(--text-sm);gap:.35rem;display:grid}.blog-preview-list dt{font-family:var(--font-mono);font-size:calc(11px * var(--text-scale));letter-spacing:.12em;text-transform:uppercase;margin-top:.4rem}.blog-preview-list dd{gap:.5rem;display:flex}.blog-draft-gone{font-size:var(--text-lg);color:var(--color-ink-muted);margin-block:3rem 6rem}.blog-note{border-left:2px solid var(--blog-ink);font-size:var(--text-sm);color:var(--color-ink-muted);padding-left:.85rem;line-height:1.6}.blog-meta{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-ink-muted);flex-wrap:wrap;gap:.35rem .55rem;display:flex}.blog-article-title{font-family:var(--font-display);font-weight:700;font-size:calc(clamp(2.1rem, 6vw, 3.4rem) * var(--text-scale));letter-spacing:-.035em;text-wrap:balance;overflow-wrap:anywhere;margin-top:1rem;line-height:1.04}.blog-article-lead{font-size:calc(clamp(1.15rem, 2vw, 1.3rem) * var(--text-scale));color:var(--color-ink-muted);text-wrap:pretty;margin-top:1.25rem;line-height:1.55}.blog-topic-link{border:1px solid var(--blog-rule);min-height:2.25rem;font-family:var(--font-heading);font-size:var(--text-sm);color:var(--color-ink-muted);border-radius:9999px;align-items:center;padding-inline:.8rem;font-weight:500;transition:border-color .2s,color .2s;display:inline-flex}.blog-topic-link:hover{color:var(--color-ink);border-color:var(--blog-ink)}.blog-body{gap:2.25rem;padding:3rem 1rem 1rem;display:grid}@media (min-width:1024px){.blog-body{padding-top:3.5rem}}.blog-body>*,.blog-draft-block>*{width:100%;max-width:40rem;margin-inline:auto}.blog-body>[data-size=wide],.blog-draft-block>[data-size=wide]{max-width:64rem}.blog-draft-block{border:1px dashed var(--local-admin-ink,currentColor);border-radius:.5rem;gap:.75rem;padding:1rem;display:grid}.blog-draft-block>.blog-badge{width:fit-content;margin-inline:max(0px,50% - 20rem) 0}.blog-draft-block[data-size=column]{max-width:42rem}.blog-draft-block[data-size=wide]{max-width:66rem}.blog-prose{font-family:var(--font-sans);font-size:calc(1.0625rem * var(--text-scale));color:var(--color-ink);overflow-wrap:break-word;line-height:1.75}@media (min-width:640px){.blog-prose{font-size:calc(1.1875rem * var(--text-scale))}}.blog-prose>*+*{margin-top:1.25em}.blog-prose h2{font-family:var(--font-heading);letter-spacing:-.02em;text-wrap:balance;margin-top:2.2em;font-size:1.5em;font-weight:700;line-height:1.2}.blog-prose h3{font-family:var(--font-heading);letter-spacing:-.01em;margin-top:1.8em;font-size:1.2em;font-weight:700;line-height:1.3}.blog-prose>:first-child{margin-top:0}.blog-prose :is(h2,h3)+*{margin-top:.6em}.blog-prose ul,.blog-prose ol{padding-left:1.35em}.blog-prose ul{list-style:outside}.blog-prose ol{list-style:decimal}.blog-prose li+li{margin-top:.45em}.blog-prose li::marker{color:var(--blog-ink)}.blog-prose blockquote{border-left:3px solid var(--blog-ink);font-family:var(--font-heading);padding-left:1.1em;font-size:1.12em;line-height:1.55}.blog-prose blockquote>*+*{margin-top:.8em}.blog-prose a{text-decoration-line:underline;-webkit-text-decoration-color:var(--blog-ink);text-decoration-color:var(--blog-ink);text-underline-offset:.2em;text-decoration-thickness:1px;transition:text-decoration-thickness .15s}.blog-prose a:hover{text-decoration-thickness:2px}.blog-prose strong{font-weight:700}.blog-prose code{background:color-mix(in oklab, var(--color-ink) 9%, transparent);font-family:var(--font-mono);border-radius:.3em;padding:.1em .35em;font-size:.86em}.blog-prose pre{border:1px solid var(--blog-rule);background:var(--blog-paper);border-radius:.5rem;padding:1rem 1.1rem;font-size:.85em;line-height:1.6;overflow-x:auto}.blog-prose pre code{font-size:inherit;background:0 0;padding:0}.blog-prose hr{text-align:center;border:0;margin-block:2.5em;overflow:visible}.blog-prose hr:before{content:"/ / /";font-family:var(--font-mono);letter-spacing:.4em;color:var(--blog-ink);font-size:.85em}.blog-figure{gap:.75rem;display:grid}.blog-figure-img{border:1px solid var(--blog-rule);background:var(--blog-paper);width:100%;height:auto;margin-inline:auto;display:block}.blog-cover{width:100%;max-width:66rem;margin:2.5rem auto 0;padding-inline:1rem}.blog-caption{max-width:40rem;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-muted);line-height:1.6}.blog-figure[data-size=wide] .blog-caption{width:100%;margin-inline:auto}.blog-related{margin-top:3.5rem}.blog-related-card{border:1px solid var(--blog-rule);background:var(--blog-paper);border-radius:.5rem;gap:1rem;margin-top:.85rem;padding:1rem;transition:border-color .2s;display:grid}@media (min-width:640px){.blog-related-card{grid-template-columns:14rem minmax(0,1fr);align-items:center;gap:1.5rem}}.blog-related-card:hover{border-color:var(--blog-ink)}.blog-related-img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--blog-rule);width:100%}.blog-related-text{gap:.5rem;display:grid}.blog-related-title{font-family:var(--font-heading);font-size:calc(1.3rem * var(--text-scale));font-weight:700;line-height:1.2}.blog-related-summary{font-size:var(--text-sm);color:var(--color-ink-muted);line-height:1.6}.blog-related-cta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--blog-ink);align-items:center;gap:.4rem;display:inline-flex}.blog-more{background:linear-gradient(var(--blog-rule), var(--blog-rule)) top center / calc(100% - 2rem) 1px no-repeat;gap:1rem;margin-block:4rem 5rem;padding-top:1.5rem;display:grid}@media (min-width:640px){.blog-more{grid-template-columns:1fr 1fr}}.blog-more-link{gap:.4rem;min-height:2.75rem;display:grid}.blog-more-link[data-direction=older]{text-align:right;grid-column:-2;justify-items:end}.blog-more-title{font-family:var(--font-heading);font-size:calc(1.15rem * var(--text-scale));text-wrap:balance;font-weight:600;line-height:1.25}.blog-more-link:hover .blog-more-title{text-decoration:underline;-webkit-text-decoration-color:var(--blog-ink);text-decoration-color:var(--blog-ink);text-underline-offset:.2em}}@layer utilities;:root{--blog-ink:var(--color-yellow);--blog-fill:var(--color-yellow);--blog-on-fill:var(--color-ink-dark);--blog-rule:color-mix(in oklab, var(--color-ink-muted) 22%, transparent);--blog-paper:color-mix(in oklab, var(--color-ink) 4%, var(--color-surface));--blog-tint:color-mix(in oklab, var(--color-ink) 3%, var(--color-night));--blog-header-h:77px}:root[data-theme=light]{--blog-ink:var(--color-blue-safe);--blog-fill:var(--color-blue-safe);--blog-on-fill:#fff}@media (min-width:1024px){:root{--blog-header-h:63px}}@media (prefers-reduced-motion:reduce){.blog-row{animation:none}.blog-row:hover .blog-row-img{scale:none}}:root[data-a11y-motion=reduce] .blog-row{animation:none}:root[data-a11y-motion=reduce] .blog-row:hover .blog-row-img{scale:none}:root[data-a11y-contrast=high]{--blog-ink:var(--color-yellow);--blog-fill:var(--color-yellow);--blog-on-fill:#000;--blog-rule:#fff;--blog-paper:#000;--blog-tint:#000}@media (forced-colors:active){.blog-chip[aria-pressed=true],.blog-row-latest{border:2px solid highlight}}:root:has(.blog-page){scroll-padding-top:calc(var(--blog-header-h) + 1rem)}
