.blog-card[data-astro-cid-hlaek5cb]{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--fg-1);min-width:0;height:100%;transition:border-color var(--dur-fast), box-shadow var(--dur-fast);flex-direction:column;gap:20px;padding:26px;text-decoration:none;display:flex}.blog-card[data-astro-cid-hlaek5cb]:hover{border-color:var(--accent);box-shadow:var(--shadow-xs)}.blog-card[data-astro-cid-hlaek5cb]:active{background:var(--bg-quote)}.blog-card__meta[data-astro-cid-hlaek5cb]{color:var(--fg-3);flex-wrap:wrap;align-items:baseline;gap:8px;font-size:13px;line-height:1.5;display:flex}.blog-card__title[data-astro-cid-hlaek5cb]{font-family:var(--font-display);font-size:24px;font-weight:700;line-height:1.22}.blog-card__image[data-astro-cid-hlaek5cb]{aspect-ratio:361/197;border-radius:var(--radius-card);object-fit:cover;width:100%;height:auto;display:block}.blog-card__excerpt[data-astro-cid-hlaek5cb]{color:var(--fg-2);font-size:16px;line-height:1.52}.blog-card__tags[data-astro-cid-hlaek5cb]{flex-wrap:wrap;gap:8px;margin:auto 0 0;padding:0;list-style:none;display:flex}.blog-card__read[data-astro-cid-hlaek5cb]{align-items:center;gap:10px;margin-top:auto;font-size:14px;font-weight:600;display:flex}@media (width<=639px){.blog-card[data-astro-cid-hlaek5cb]{padding:22px}.blog-card__title[data-astro-cid-hlaek5cb]{font-size:23px}}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.blog-grid>[hidden],.blog-filters[hidden],.blog-empty[hidden]{display:none}.blog-badge{background:var(--accent-wash);border-radius:var(--radius-pill);color:var(--accent-ink);padding:4px 12px;font-size:13px;line-height:1.35;display:inline-flex}.blog-filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.blog-filters__chips{flex-wrap:wrap;gap:10px;display:flex}.blog-filters__mobile{display:none}.blog-filters__select{appearance:auto;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-card);color:var(--fg-1);min-height:48px;scroll-margin-top:calc(var(--header-height) + var(--space-4));width:100%;padding:10px 12px;font-size:16px;line-height:1.5}.blog-filters__select:hover,.blog-filters__select:focus-visible{border-color:var(--accent)}.blog-filters__select:focus-visible{box-shadow:none;outline:2px solid var(--accent);outline-offset:2px}.blog-filters button{border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--accent-ink);min-height:44px;transition:background-color var(--dur-fast);padding:8px 16px;font-size:14px}.blog-filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.blog-filters button:hover{border-color:var(--accent)}.blog-empty{border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--fg-2);padding:32px}.blog-reset{color:var(--accent-ink);min-height:44px;margin-top:16px;font-weight:600;display:inline-block}.blog-heading{color:var(--fg-1);font-family:var(--font-display);font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1.2}.blog-section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:32px;display:flex}.blog-section-head a:not(.button-link){color:var(--accent-ink);min-height:44px;padding-top:8px;font-weight:600}.blog-article{--article-anchor-offset:112px;padding-block:48px 72px}.blog-article__top-space{height:var(--space-8);border:0}.blog-article__layout{grid-template-columns:minmax(0,800px) 240px;justify-content:space-between;gap:64px;display:grid}.blog-article__main{min-width:0}.blog-article__aside{align-self:start;max-height:calc(100dvh - 120px);position:sticky;top:100px;overflow-y:auto}.blog-article__mobile-toc{display:none}.blog-article__header h1{font-family:var(--font-display);text-wrap:balance;margin-top:20px;font-size:clamp(30px,3.5vw,46px);font-weight:700;line-height:1.17}.blog-article__excerpt{color:var(--fg-2);margin-top:20px;font-size:20px;line-height:1.5}.blog-article__byline{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin-top:28px;display:grid}.blog-article__author{align-items:center;gap:10px;font-size:16px;font-weight:600;display:flex}.blog-article__byline img{border-radius:50%;width:80px;height:80px}.blog-article__meta{color:var(--fg-3);font-size:14px;line-height:1.6}.blog-article__demo{color:var(--fg-3);margin-top:20px;font-size:14px;line-height:1.5}.blog-article__cover{border-radius:var(--radius-card);width:100%;height:auto;margin-block:28px 36px;display:block}.blog-article .blog-content{font-size:18px;line-height:1.75}.blog-article .blog-content ul{padding-inline-start:1.5em;list-style:outside}.blog-article .blog-content ol{padding-inline-start:1.5em;list-style:decimal}.blog-article .blog-content li+li{margin-top:.4em}.blog-article .blog-content h2{scroll-margin-top:var(--article-anchor-offset);margin-top:48px;font-size:28px;line-height:1.3}.blog-article .blog-content h3{scroll-margin-top:var(--article-anchor-offset);margin-top:32px;font-size:22px;line-height:1.35}.blog-table__hint{color:var(--fg-3);font-size:var(--fs-sm);line-height:var(--lh-normal);margin-bottom:var(--space-3);display:none}.blog-table-scroll{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-card);overscroll-behavior-inline:contain;scrollbar-color:var(--fg-3) var(--bg-card);max-width:100%;overflow-x:auto}.blog-table-scroll table{border-collapse:collapse;font-size:var(--fs-base);line-height:var(--lh-relaxed);width:100%;min-width:40rem}.blog-table-scroll :is(th,td){padding:var(--space-4) var(--space-5);vertical-align:top}.blog-table-scroll :is(th,td):not([align]){text-align:start}.blog-table-scroll th{background:var(--accent-wash);color:var(--fg-1);font-weight:600}.blog-table-scroll td{border-top:1px solid var(--border-subtle)}.blog-table-scroll :is(th,td)+:is(th,td){border-left:1px solid var(--border-subtle)}.blog-table-scroll td:first-child{color:var(--fg-1);font-weight:600}.blog-article__tags{flex-wrap:wrap;gap:8px;margin-block:32px;display:flex}.blog-article__tags a{align-items:center;min-height:44px}.blog-related{border-top:1px solid var(--border-subtle);margin-top:48px;padding-top:32px}.blog-related .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=1023px){.blog-article{--article-anchor-offset:calc(var(--header-height) + 53px + var(--space-4));--article-toc-gutter:var(--space-6)}.blog-article__layout{max-width:800px;margin-inline:auto;display:block}.blog-article__aside{display:none}.blog-article__mobile-toc{margin-bottom:var(--space-8);margin-inline:calc(-1 * var(--article-toc-gutter));display:block}.blog-article__mobile-toc:has([data-reader-ready]){top:calc(var(--header-height) + 1px);z-index:30;position:sticky}.blog-article__mobile-toc:has([data-reader-ready] details[open]):before{content:"";inset:calc(var(--header-height) + 1px) 0 0;pointer-events:none;z-index:-1;background:#0000005c;position:fixed}.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=767px){.blog-table__hint{display:block}.blog-filters{gap:8px}.blog-filters__chips{display:none}.blog-filters__mobile{width:100%;display:block}}@media (width<=639px){.blog-article{--article-toc-gutter:var(--space-4)}.blog-article__top-space{height:var(--space-6)}.blog-article__byline img{width:64px;height:64px}.blog-grid,.blog-related .blog-grid{grid-template-columns:minmax(0,1fr)}.blog-article{padding-block:32px 48px}.blog-article__excerpt{font-size:18px}.blog-article .blog-content{font-size:17px;line-height:1.7}.blog-article .blog-content h2{font-size:25px}.blog-article .blog-content h3{font-size:21px}}
