:root{--blog-ink:#0f172a;--blog-paper:#f6f7fb;--blog-muted:#64748b;--blog-line:#e2e8f0;--blog-accent:#673ab8;--blog-accent-strong:#5b21b6;--blog-accent-soft:#f3e8ff;--blog-card:#fff;--blog-header:#0b1020;--blog-header-fg:#e2e8f0;--blog-header-muted:#94a3b8;--blog-shadow:0 18px 50px #0f172a14;--blog-radius:1rem;--blog-sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--blog-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}[data-theme=dark]{--blog-ink:#e8edf7;--blog-paper:#0b0d12;--blog-muted:#94a3b8;--blog-line:#1e293b;--blog-accent:#c4b5fd;--blog-accent-strong:#ddd6fe;--blog-accent-soft:#2e1065;--blog-card:#12141c;--blog-header:#05070c;--blog-header-fg:#e2e8f0;--blog-header-muted:#64748b;--blog-shadow:0 18px 50px #00000059}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{font-family:var(--blog-sans);background:var(--blog-paper);color:var(--blog-ink);-webkit-font-smoothing:antialiased;margin:0;font-size:1.02rem;line-height:1.6}.blog-layout{flex-direction:column;min-height:100vh;display:flex}.blog-skip{z-index:999;background:var(--blog-accent);color:#fff;padding:.5rem 1rem;font-size:.85rem;position:absolute;left:-9999px}.blog-skip:focus{top:.5rem;left:.75rem}.blog-header{background:var(--blog-header);color:var(--blog-header-fg);border-bottom:1px solid color-mix(in srgb, var(--blog-header-fg) 10%, transparent)}.blog-header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;max-width:1080px;margin:0 auto;padding:.85rem 1.25rem;display:flex}.blog-logo{color:inherit;align-items:center;gap:.7rem;text-decoration:none;display:inline-flex}.blog-logo-mark{background:var(--blog-accent);color:#fff;letter-spacing:.04em;border-radius:.55rem;place-items:center;width:2rem;height:2rem;font-size:.72rem;font-weight:800;display:inline-grid}.blog-logo-title{letter-spacing:-.03em;font-weight:750}.blog-logo-kicker{color:var(--blog-header-muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:650;display:block}.blog-header-tools{align-items:center;gap:.35rem;display:flex}.blog-nav{flex-wrap:wrap;gap:.15rem;display:flex}.blog-nav a{color:var(--blog-header-muted);border-radius:999px;padding:.45rem .75rem;font-size:.9rem;font-weight:650;text-decoration:none}.blog-nav a:hover,.blog-nav a.active{color:var(--blog-header-fg);background:color-mix(in srgb, var(--blog-header-fg) 8%, transparent)}.blog-shell{flex:1;grid-template-columns:minmax(0,1fr);gap:2rem;width:100%;max-width:1080px;margin:0 auto;padding:2rem 1.25rem 3rem;display:grid}@media (width>=900px){.blog-shell.has-rail{grid-template-columns:minmax(0,1fr) 220px;align-items:start}}.blog-main{min-width:0}.blog-article{max-width:42rem}.blog-article.wide{max-width:none}.blog-eyebrow{color:var(--blog-accent);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .45rem;font-size:.75rem;font-weight:800}.blog-doc-title{letter-spacing:-.04em;margin:0 0 .65rem;font-size:clamp(1.85rem,3.4vw,2.6rem);line-height:1.12}.blog-doc-lead{color:var(--blog-muted);margin:0 0 1.5rem;font-size:1.12rem;line-height:1.5}.blog-post-meta{color:var(--blog-muted);flex-wrap:wrap;gap:.5rem .85rem;margin:0 0 1.5rem;font-size:.88rem;display:flex}.blog-tags{flex-wrap:wrap;gap:.45rem;margin:0 0 1.5rem;padding:0;list-style:none;display:flex}.blog-tags a{border:1px solid var(--blog-line);color:var(--blog-accent-strong);background:var(--blog-accent-soft);border-radius:999px;align-items:center;padding:.42rem .62rem;font-size:.75rem;font-weight:650;line-height:1;text-decoration:none;display:inline-flex}.blog-tags a:hover{border-color:var(--blog-accent)}.blog-doc-content p{margin:0 0 1rem}.blog-doc-content h2{letter-spacing:-.02em;margin:2rem 0 .65rem;font-size:1.28rem}.blog-doc-content h3{margin:1.5rem 0 .5rem;font-size:1.05rem}.blog-doc-content pre{background:var(--blog-header);color:#e2e8f0;border-radius:.75rem;padding:1rem 1.1rem;font-size:.88rem;line-height:1.5;overflow-x:auto}.blog-doc-content code{font-family:var(--blog-mono);font-size:.9em}.blog-doc-content :not(pre)>code{background:var(--blog-accent-soft);border-radius:.3rem;padding:.12em .35em}.blog-doc-content blockquote{border-left:3px solid var(--blog-accent);color:var(--blog-muted);margin:1.25rem 0;padding:.35rem 0 .35rem 1rem}.blog-heading{position:relative}.blog-heading-anchor{opacity:0;color:var(--blog-muted);margin-left:.35rem;font-size:.85em;font-weight:400;text-decoration:none}.blog-heading:hover .blog-heading-anchor{opacity:1}.pp-tag-index-count{color:var(--blog-muted)}.pp-tag-index-list{margin:1.2rem 0 0;padding:0;list-style:none}.pp-tag-index-list li+li{margin-top:.65rem}.pp-tag-index-list a{border:1px solid var(--blog-line);background:var(--blog-card);box-shadow:var(--blog-shadow);color:var(--blog-ink);border-radius:var(--blog-radius);padding:.85rem 1rem;text-decoration:none;display:block}.pp-tag-index-list a:hover{border-color:var(--blog-accent);color:var(--blog-accent-strong)}.blog-rail{font-size:.84rem}.blog-rail-panel{border:1px solid var(--blog-line);background:var(--blog-card);border-radius:var(--blog-radius);box-shadow:var(--blog-shadow);padding:1rem 1.1rem}.blog-rail h2{text-transform:uppercase;letter-spacing:.16em;color:var(--blog-muted);margin:0 0 .75rem;font-size:.68rem;font-weight:800}.blog-search label{color:var(--blog-muted);text-transform:uppercase;letter-spacing:.08em;flex-direction:column;gap:.35rem;margin-bottom:1rem;font-size:.72rem;display:flex}.blog-search input{border:1px solid var(--blog-line);background:var(--blog-paper);width:100%;color:var(--blog-ink);font:inherit;border-radius:.65rem;padding:.5rem .65rem;font-size:.88rem}.blog-rail ul{margin:0;padding:0;list-style:none}.blog-rail li+li{margin-top:.2rem}.blog-rail a{color:var(--blog-ink);border-radius:.5rem;padding:.4rem .45rem;text-decoration:none;display:block}.blog-rail a:hover,.blog-rail a.active{background:var(--blog-accent-soft);color:var(--blog-accent-strong)}.blog-pager{border-top:1px solid var(--blog-line);grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.5rem;padding-top:1.5rem;font-size:.9rem;display:grid}.blog-pager a{color:var(--blog-accent-strong);font-weight:650;text-decoration:none}.blog-pager span{color:var(--blog-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem;font-size:.72rem;font-weight:700;display:block}.blog-pager .next{text-align:right}.blog-doc-meta{color:var(--blog-muted);margin-top:2rem;font-size:.8rem}.blog-footer{border-top:1px solid var(--blog-line);text-align:center;color:var(--blog-muted);padding:1.25rem;font-size:.78rem}.blog-feed{gap:1.1rem;margin:.25rem 0 2rem;display:grid}.blog-featured{background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--blog-accent) 18%, transparent), transparent 18rem), var(--blog-card);border:1px solid var(--blog-line);border-radius:calc(var(--blog-radius) + .15rem);box-shadow:var(--blog-shadow);color:inherit;gap:.55rem;padding:1.5rem 1.6rem 1.4rem;text-decoration:none;display:grid}.blog-featured:hover{border-color:var(--blog-accent)}.blog-featured-title{letter-spacing:-.04em;font-size:clamp(1.45rem,3vw,2rem);font-weight:750;line-height:1.15}.blog-featured-dek{max-width:42rem;color:var(--blog-muted);font-size:1.02rem}.blog-post-list{gap:.75rem;display:grid}.blog-post-row{background:var(--blog-card);border:1px solid var(--blog-line);border-radius:var(--blog-radius);color:inherit;gap:.2rem;padding:1rem 1.1rem;text-decoration:none;display:grid}.blog-post-row:hover{border-color:var(--blog-accent)}.blog-post-kicker,.blog-featured-kicker{color:var(--blog-accent);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.blog-post-title{letter-spacing:-.02em;font-size:1.08rem;font-weight:700}.blog-post-dek{color:var(--blog-muted);font-size:.92rem}.blog-post-byline{color:var(--blog-muted);font-size:.78rem}.blog-theme-toggle{border:1px solid color-mix(in srgb, var(--blog-header-fg) 16%, transparent);width:2.25rem;height:2.25rem;color:var(--blog-header-fg);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.blog-theme-toggle:hover{background:color-mix(in srgb, var(--blog-header-fg) 8%, transparent)}.blog-theme-toggle-moon,.blog-theme-toggle-sun{justify-content:center;align-items:center;line-height:0;display:none}@media (prefers-color-scheme:light){:root:not([data-theme]) .blog-theme-toggle .blog-theme-toggle-moon{display:inline-flex}}@media (prefers-color-scheme:dark){:root:not([data-theme]) .blog-theme-toggle .blog-theme-toggle-sun{display:inline-flex}}:root[data-theme=light] .blog-theme-toggle .blog-theme-toggle-moon,:root[data-theme=dark] .blog-theme-toggle .blog-theme-toggle-sun{display:inline-flex}@media (width<=720px){.blog-pager{grid-template-columns:1fr}.blog-pager .next{text-align:left}}
