.code-block-wrapper{position:relative}.code-block-wrapper pre{overflow:hidden!important;overflow-x:hidden!important;overflow-wrap:anywhere;white-space:pre-wrap}.code-block-wrapper pre>code{display:block;overflow-wrap:inherit;white-space:inherit;word-break:inherit}.code-copy-button{position:absolute;top:4px;right:8px;z-index:1;height:26px;padding:0 12px;border:0;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-text) 8%,transparent);color:var(--color-text);font:inherit;font-size:12px;line-height:26px;cursor:pointer;transition:background-color .2s ease}.code-copy-button:hover,.code-copy-button:focus-visible{background:color-mix(in srgb,var(--color-text) 14%,transparent)}main[data-astro-cid-bvzihdzo]{width:100%;max-width:100%;padding:0}.reading-progress[data-astro-cid-bvzihdzo]{position:fixed;inset:0 0 auto;z-index:60;height:3px;pointer-events:none}.reading-progress[data-astro-cid-bvzihdzo] span[data-astro-cid-bvzihdzo]{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--color-brand),#64d2ff);transform:scaleX(0);transform-origin:left}.post-header[data-astro-cid-bvzihdzo]{display:flex;max-width:860px;margin:0 auto;padding:64px 16px 40px;flex-direction:column;align-items:center;gap:20px;text-align:center}.post-header[data-astro-cid-bvzihdzo] .pill[data-astro-cid-bvzihdzo]{font-size:13px}.post-header[data-astro-cid-bvzihdzo] h1[data-astro-cid-bvzihdzo]{margin:0;font-size:clamp(2rem,4.4vw,3rem);line-height:1.25;letter-spacing:-.015em;text-wrap:balance}.post-meta[data-astro-cid-bvzihdzo]{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 18px;color:var(--color-text-muted);font-size:15px}.post-author[data-astro-cid-bvzihdzo]{display:inline-flex;align-items:center;gap:8px}.post-cover[data-astro-cid-bvzihdzo]{position:relative;max-width:var(--content-width);margin:0 auto;overflow:hidden;aspect-ratio:21 / 9;border-radius:var(--radius-card);box-shadow:var(--card-shadow)}.post-cover[data-astro-cid-bvzihdzo].is-fallback{aspect-ratio:4 / 1}.post-cover-wrap[data-astro-cid-bvzihdzo]{padding:0 16px}.post-cover[data-astro-cid-bvzihdzo] img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}.post-cover-fallback[data-astro-cid-bvzihdzo]{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:radial-gradient(120% 90% at 15% 10%,color-mix(in srgb,var(--cover-from) 70%,transparent),transparent 60%),radial-gradient(90% 90% at 90% 100%,color-mix(in srgb,var(--cover-to) 80%,transparent),transparent 65%),linear-gradient(135deg,color-mix(in srgb,var(--cover-to) 55%,#0b1a2e),color-mix(in srgb,var(--cover-from) 45%,#1f3b63))}.post-cover-fallback[data-astro-cid-bvzihdzo] .category-icon{border:1px solid rgba(255,255,255,.3);background:#ffffff2e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.cover-chip[data-astro-cid-bvzihdzo]{position:absolute;bottom:20px;left:20px;padding:8px 14px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius-pill);background:#1c1c1e73;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#f5f5f7;font-size:12px}.post-shell[data-astro-cid-bvzihdzo]{display:grid;grid-template-columns:minmax(0,720px);justify-content:center;gap:56px;max-width:var(--content-width);margin:0 auto;padding:56px 16px 96px}.post-shell[data-astro-cid-bvzihdzo].has-toc{grid-template-columns:minmax(0,720px) minmax(220px,260px);align-items:start}.post-article[data-astro-cid-bvzihdzo]{min-width:0}.post-summary[data-astro-cid-bvzihdzo]{display:flex;gap:16px;margin-bottom:36px;padding:22px 24px;border-radius:var(--radius-container);background:var(--color-bg-secondary)}.post-summary-label[data-astro-cid-bvzihdzo]{display:block;margin-bottom:4px;color:var(--color-text);font-size:15px;font-weight:600}.post-summary[data-astro-cid-bvzihdzo] p[data-astro-cid-bvzihdzo]{margin:0;color:var(--color-text-secondary);font-size:16px;line-height:1.8}.table-of-contents[data-astro-cid-bvzihdzo]{position:sticky;top:calc(var(--header-height) + 16px);max-height:calc(100vh - var(--header-height) - 40px);overflow:auto;padding:18px;border-radius:var(--radius-container);font-size:14px;line-height:1.5}.toc-title[data-astro-cid-bvzihdzo]{margin:0 0 8px;padding:0 12px;color:var(--color-text-muted);font-size:13px;font-weight:600}.table-of-contents[data-astro-cid-bvzihdzo] ol[data-astro-cid-bvzihdzo]{display:grid;gap:2px;margin:0;padding:0;list-style:none}.table-of-contents[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo]{display:block;padding:8px 12px;border-radius:var(--radius-small);color:var(--color-text-muted);overflow-wrap:anywhere;transition:background-color .25s ease,color .25s ease}.table-of-contents[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo]:hover{color:var(--color-text)}.table-of-contents[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo].active{background:color-mix(in srgb,var(--color-text) 7%,transparent);color:var(--color-text);font-weight:500}.table-of-contents[data-astro-cid-bvzihdzo] .toc-depth-3[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo]{padding-left:24px;font-size:13px}.prose[data-astro-cid-bvzihdzo]{color:var(--color-text);font-size:18px;line-height:1.85;overflow-wrap:anywhere}.prose[data-astro-cid-bvzihdzo]>h1:first-child{display:none}.prose[data-astro-cid-bvzihdzo] p{margin:0 0 1.35em}.prose[data-astro-cid-bvzihdzo] h2{margin:2.2em 0 .7em;font-size:1.75rem;line-height:1.35}.prose[data-astro-cid-bvzihdzo] h3{margin:1.9em 0 .6em;font-size:1.35rem;line-height:1.4}.prose[data-astro-cid-bvzihdzo] h4{margin:1.7em 0 .6em;font-size:1.12rem}.prose[data-astro-cid-bvzihdzo] ul,.prose[data-astro-cid-bvzihdzo] ol{margin:0 0 1.35em;padding-left:1.35em}.prose[data-astro-cid-bvzihdzo] li+li{margin-top:.35em}.prose[data-astro-cid-bvzihdzo] blockquote{margin:1.8em 0}.prose[data-astro-cid-bvzihdzo] blockquote p:last-child{margin-bottom:0}.prose[data-astro-cid-bvzihdzo] pre{max-width:100%;margin:1.6rem 0 1.9rem;overflow:hidden!important;font-size:.86rem;line-height:1.75;white-space:pre-wrap}.prose[data-astro-cid-bvzihdzo] pre>code{display:block;overflow-wrap:inherit;white-space:inherit}.prose[data-astro-cid-bvzihdzo] img,.prose[data-astro-cid-bvzihdzo] video,.prose[data-astro-cid-bvzihdzo] iframe{max-width:100%;border-radius:var(--radius-container)}.prose[data-astro-cid-bvzihdzo] table{display:block;max-width:100%;overflow-x:auto;border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:var(--radius-container);font-size:.95rem}.prose[data-astro-cid-bvzihdzo] th,.prose[data-astro-cid-bvzihdzo] td{padding:10px 14px;border-bottom:1px solid var(--color-border);vertical-align:top}.prose[data-astro-cid-bvzihdzo] th{background:var(--color-bg-secondary);text-align:left}.prose[data-astro-cid-bvzihdzo] tr:last-child td{border-bottom:0}.prose[data-astro-cid-bvzihdzo] a{text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--color-link) 35%,transparent);text-underline-offset:.2em}.prose[data-astro-cid-bvzihdzo] a:hover{text-decoration-color:currentColor}.post-footer[data-astro-cid-bvzihdzo]{display:grid;gap:28px;margin-top:48px}.post-tags[data-astro-cid-bvzihdzo]{display:flex;flex-wrap:wrap;gap:8px}.post-updated[data-astro-cid-bvzihdzo]{margin:0;color:var(--color-text-muted);font-size:14px}.post-nav[data-astro-cid-bvzihdzo]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.post-nav[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo]{display:flex;flex-direction:column;gap:8px;padding:22px 24px;border-radius:var(--radius-card);background:var(--color-bg-secondary);color:var(--color-text)}.post-nav[data-astro-cid-bvzihdzo] a[data-astro-cid-bvzihdzo]:hover{background:var(--color-bg-hover);color:var(--color-text)}.post-nav[data-astro-cid-bvzihdzo] span[data-astro-cid-bvzihdzo]{color:var(--color-text-muted);font-size:13px}.post-nav[data-astro-cid-bvzihdzo] strong[data-astro-cid-bvzihdzo]{font-size:17px;font-weight:600;line-height:1.5}.post-nav[data-astro-cid-bvzihdzo] .is-next[data-astro-cid-bvzihdzo]{text-align:right}@media(max-width:1080px){.post-shell[data-astro-cid-bvzihdzo],.post-shell[data-astro-cid-bvzihdzo].has-toc{grid-template-columns:minmax(0,720px)}.table-of-contents[data-astro-cid-bvzihdzo]{position:static;order:-1;max-height:none}}@media(max-width:720px){.post-header[data-astro-cid-bvzihdzo]{padding:40px 16px 28px}.post-cover[data-astro-cid-bvzihdzo]{aspect-ratio:16 / 9}.post-cover[data-astro-cid-bvzihdzo].is-fallback{aspect-ratio:5 / 2}.post-shell[data-astro-cid-bvzihdzo]{padding:36px 16px 72px;gap:28px}.prose[data-astro-cid-bvzihdzo]{font-size:17px;line-height:1.82}.prose[data-astro-cid-bvzihdzo] h2{font-size:1.45rem}.prose[data-astro-cid-bvzihdzo] h3{font-size:1.2rem}}
