.blog-shell{--blog-bg-ink:#0b1220;--blog-bg-mid:#13233f;--blog-bg-soft:#f4f7fb;--blog-surface:#fff;--blog-surface-tint:#eef4ff;--blog-border:#d5e2f8;--blog-copy:#1c2534;--blog-copy-soft:#4b5a75;--blog-accent:#0f4dc7;--blog-accent-strong:#0a2f80;--blog-focus:#fdc93c;--blog-shadow:0 18px 44px -28px rgba(15,34,66,.55);--blog-radius-lg:22px;--blog-radius-md:14px;--blog-font-head:"Fraunces","Iowan Old Style","Palatino Linotype","Book Antiqua",serif;--blog-font-body:"Spectral","Charter","Bitstream Charter","Cambria",serif;--blog-font-ui:"Manrope","Avenir Next","Segoe UI",sans-serif;min-height:100%;background:linear-gradient(180deg,var(--blog-bg-soft) 0,#eef3fa 100%),linear-gradient(90deg,rgba(73,147,255,.08) 0 1px,transparent 1px 100%);background-size:auto,72px 72px;color:var(--blog-copy);padding:.25rem 0 2rem;transition:background-color .28s ease,color .28s ease}.blog-shell[data-theme=dark]{--blog-bg-ink:#f4f6f9;--blog-bg-mid:#e8ecf1;--blog-bg-soft:#1a202c;--blog-surface:#22293a;--blog-surface-tint:#2d3a52;--blog-border:#3d4a63;--blog-copy:#e9edf4;--blog-copy-soft:#a8b3c5;--blog-accent:#6eaeff;--blog-accent-strong:#8ec5ff;--blog-focus:#fdc93c;--blog-shadow:0 18px 44px -28px rgba(0,0,0,.75);background:linear-gradient(180deg,#1a202c,#151d2e),linear-gradient(90deg,rgba(110,174,255,.08) 0 1px,transparent 1px 100%)}.blog-shell[data-theme=high-contrast]{--blog-bg-ink:#000;--blog-bg-mid:#0a0a0a;--blog-bg-soft:#fff;--blog-surface:#fff;--blog-surface-tint:#f0f0f0;--blog-border:#000;--blog-copy:#000;--blog-copy-soft:#1a1a1a;--blog-accent:#00e;--blog-accent-strong:#00c;--blog-focus:#000;--blog-shadow:2px 2px 0px rgba(0,0,0,.8);background:#fff}.blog-shell[data-theme=high-contrast] .blog-article,.blog-shell[data-theme=high-contrast] .blog-card,.blog-shell[data-theme=high-contrast] .blog-discussion,.blog-shell[data-theme=high-contrast] .blog-hero,.blog-shell[data-theme=high-contrast] .blog-post-header{border-width:2px}.blog-shell :is(h1,h2,h3,h4){font-family:var(--blog-font-head);letter-spacing:0;line-height:1.2;color:var(--blog-bg-ink)}.blog-shell li,.blog-shell p{font-family:var(--blog-font-body);font-size:1.08rem;line-height:1.72;color:var(--blog-copy)}.blog-shell a{color:var(--blog-accent);text-decoration-thickness:1.5px;text-underline-offset:.16em}.blog-shell a:hover{color:var(--blog-accent-strong)}.blog-shell [tabindex="0"]:focus-visible,.blog-shell a:focus-visible,.blog-shell button:focus-visible{outline:3px solid var(--blog-focus);outline-offset:2px;border-radius:8px}.blog-index,.blog-post{margin-inline:auto}.blog-index{max-width:72rem}.blog-post{max-width:48rem}.blog-article,.blog-card,.blog-discussion,.blog-hero,.blog-post-header{border:1px solid var(--blog-border);border-radius:var(--blog-radius-lg);background:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(249,251,255,.94));box-shadow:var(--blog-shadow)}.blog-shell[data-theme=dark] .blog-article,.blog-shell[data-theme=dark] .blog-card,.blog-shell[data-theme=dark] .blog-discussion,.blog-shell[data-theme=dark] .blog-hero,.blog-shell[data-theme=dark] .blog-post-header{background:linear-gradient(180deg,#2d3a52,#22293a)}.blog-shell[data-theme=high-contrast] .blog-article,.blog-shell[data-theme=high-contrast] .blog-card,.blog-shell[data-theme=high-contrast] .blog-discussion,.blog-shell[data-theme=high-contrast] .blog-hero,.blog-shell[data-theme=high-contrast] .blog-post-header{background:#fff;border:2px solid #000}.blog-hero,.blog-post-header{position:relative;overflow:hidden;padding:clamp(1.25rem,2.1vw,2rem)}.blog-hero{display:grid;gap:1.25rem;align-items:end;background:radial-gradient(circle at 15% 25%,rgba(191,233,220,.34),transparent 24rem),linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(249,251,255,.94))}@media (min-width:820px){.blog-hero{grid-template-columns:minmax(0,1fr) minmax(16rem,.32fr)}}.blog-hero:after,.blog-post-header:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 0 70%,rgba(46,114,224,.08) 70% 71%,transparent 71% 100%);pointer-events:none}.blog-shell[data-theme=dark] .blog-hero:after,.blog-shell[data-theme=dark] .blog-post-header:after{background:linear-gradient(120deg,transparent 0 70%,rgba(110,174,255,.08) 70% 71%,transparent 71% 100%)}.blog-shell[data-theme=high-contrast] .blog-hero:after,.blog-shell[data-theme=high-contrast] .blog-post-header:after{display:none}.blog-date,.blog-hero-kicker{font-family:var(--blog-font-ui);text-transform:uppercase;letter-spacing:.13em;font-weight:700;font-size:.76rem;color:var(--blog-accent-strong)}.blog-hero h1,.blog-post-header h1{margin-top:.45rem;font-size:clamp(2.35rem,5.8vw,5rem);line-height:.96}.blog-hero p,.blog-post-header p{margin-top:.6rem;color:var(--blog-copy-soft)}.blog-hero-copy{position:relative;z-index:1}.blog-hero-copy>p:not(.blog-hero-kicker){max-width:48rem;font-family:var(--blog-font-ui);font-size:clamp(1rem,1.5vw,1.18rem);font-weight:650;line-height:1.65}.blog-hero-actions,.blog-meta-row{display:flex;flex-wrap:wrap;gap:.75rem}.blog-hero-actions{margin-top:1.25rem}.blog-shell a.blog-button{display:inline-flex;min-height:2.75rem;align-items:center;justify-content:center;border-radius:var(--blog-radius-md);padding:.7rem 1rem;font-family:var(--blog-font-ui);font-size:.9rem;font-weight:900;text-align:center;text-decoration:none}.blog-shell a.blog-button:focus-visible,.blog-shell a.blog-button:hover{text-decoration:none}.blog-shell a.blog-button-primary{border:1px solid var(--blog-accent-strong);background:var(--blog-accent-strong);color:#fff}.blog-shell a.blog-button-primary:focus-visible,.blog-shell a.blog-button-primary:hover{color:#fff;background:#08235f}.blog-shell a.blog-button-secondary{border:1px solid var(--blog-border);background:var(--blog-surface);color:var(--blog-accent-strong)}.blog-shell a.blog-button-secondary:focus-visible,.blog-shell a.blog-button-secondary:hover{color:var(--blog-accent-strong);background:var(--blog-surface-tint)}.blog-shell[data-theme=dark] a.blog-button-primary{border-color:#b9d9ff;background:#d9ecff;color:#102033}.blog-shell[data-theme=dark] a.blog-button-primary:focus-visible,.blog-shell[data-theme=dark] a.blog-button-primary:hover{background:#fff;color:#102033}.blog-shell[data-theme=dark] a.blog-button-secondary{border-color:#6f86aa;background:#1c2638;color:#d9ecff}.blog-shell[data-theme=dark] a.blog-button-secondary:focus-visible,.blog-shell[data-theme=dark] a.blog-button-secondary:hover{background:#2d3a52;color:#fff}.blog-shell[data-theme=high-contrast] a.blog-button-primary,.blog-shell[data-theme=high-contrast] a.blog-button-secondary{border:2px solid #000}.blog-shell[data-theme=high-contrast] a.blog-button-primary{background:#000;color:#fff}.blog-shell[data-theme=high-contrast] a.blog-button-secondary{background:#fff;color:#000}.blog-hero-stats{position:relative;z-index:1;display:grid;gap:.75rem}.blog-hero-stats article{border:1px solid var(--blog-border);border-radius:var(--blog-radius-md);background:hsla(0,0%,100%,.72);padding:.9rem}.blog-hero-stats span,.blog-hero-stats strong{display:block;font-family:var(--blog-font-ui)}.blog-hero-stats strong{color:var(--blog-accent-strong);font-size:1.9rem;font-weight:950;line-height:1}.blog-hero-stats span{margin-top:.25rem;color:var(--blog-copy-soft);font-size:.8rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.blog-ecosystem,.blog-featured-grid{display:grid;gap:1rem}@media (min-width:900px){.blog-featured-grid{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr)}.blog-ecosystem{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);align-items:start}}.blog-ecosystem,.blog-featured-card,.blog-latest-strip,.blog-library-section,.blog-reading-path{border:1px solid var(--blog-border);border-radius:var(--blog-radius-lg);background:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(249,251,255,.94));box-shadow:var(--blog-shadow);padding:clamp(1rem,2.2vw,1.5rem)}.blog-ecosystem h2,.blog-featured-card h2,.blog-latest-strip h2,.blog-library-section h2,.blog-reading-path h2{margin-top:.35rem;font-size:clamp(1.55rem,3vw,2.4rem)}.blog-meta-row{margin-top:1rem;font-family:var(--blog-font-ui);color:var(--blog-copy-soft);font-size:.82rem;font-weight:850}.blog-ecosystem p,.blog-reading-path p{margin-top:.75rem;color:var(--blog-copy-soft)}.blog-reading-path ol{margin-top:1rem;padding-left:1.35rem}.blog-reading-path li{font-family:var(--blog-font-ui);font-size:.94rem;font-weight:800}.blog-route-grid{display:grid;gap:.75rem}@media (min-width:640px){.blog-route-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.blog-route-card{display:block;min-height:7.5rem;border:1px solid var(--blog-border);border-radius:var(--blog-radius-md);background:var(--blog-surface);padding:1rem;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.blog-route-card:focus-visible,.blog-route-card:hover{border-color:#bad1f4;text-decoration:none;transform:translateY(-2px);box-shadow:var(--blog-shadow)}.blog-route-card span,.blog-route-card strong{display:block}.blog-route-card span{font-family:var(--blog-font-ui);color:var(--blog-accent-strong);font-size:.9rem;font-weight:950}.blog-route-card strong{margin-top:.4rem;color:var(--blog-copy-soft);font-family:var(--blog-font-ui);font-size:.78rem;font-weight:700;line-height:1.45}.blog-shell[data-theme=dark] .blog-route-card{background:#1c2638;border-color:#3d4a63}.blog-shell[data-theme=dark] .blog-route-card span{color:#d9ecff}.blog-shell[data-theme=dark] .blog-route-card strong{color:#c7d1e3}.blog-shell[data-theme=high-contrast] .blog-route-card{border:2px solid #000;background:#fff}.blog-shell[data-theme=high-contrast] .blog-route-card span,.blog-shell[data-theme=high-contrast] .blog-route-card strong{color:#000}.blog-latest-strip{display:grid;gap:1rem}@media (min-width:860px){.blog-latest-strip{grid-template-columns:minmax(14rem,.36fr) minmax(0,1fr);align-items:start}}.blog-latest-strip ul{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.blog-latest-strip li{border:1px solid var(--blog-border);border-radius:var(--blog-radius-md);background:var(--blog-surface);padding:.85rem}.blog-latest-strip li span{color:var(--blog-bg-ink);font-family:var(--blog-font-ui);font-size:.95rem;font-weight:900}.blog-latest-strip li p{margin-top:.2rem;color:var(--blog-copy-soft);font-family:var(--blog-font-ui);font-size:.78rem;line-height:1.4}.blog-section-heading{margin-bottom:1rem}.blog-cards{display:grid;gap:1rem}.blog-card{padding:1.2rem clamp(1rem,2vw,1.55rem);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.blog-card:hover{transform:translateY(-2px);border-color:#bad1f4;box-shadow:0 20px 38px -30px rgba(15,39,83,.65)}.blog-shell[data-theme=dark] .blog-card:hover{border-color:#4d5f7a;box-shadow:0 20px 38px -30px rgba(0,0,0,.8)}.blog-shell[data-theme=high-contrast] .blog-card:hover{transform:translateY(-2px);border-color:#000;box-shadow:3px 3px 0 rgba(0,0,0,.8)}.blog-card h2{margin-top:.25rem;font-size:clamp(1.35rem,2.2vw,1.7rem)}.blog-card-excerpt{color:var(--blog-copy-soft)}.blog-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem;padding:0;list-style:none}.blog-tags li{border-radius:999px;border:1px solid #bfd6ff;background:var(--blog-surface-tint);padding:.26rem .7rem;font-family:var(--blog-font-ui);font-size:.73rem;font-weight:700;letter-spacing:.04em;color:#16438f}.blog-shell[data-theme=dark] .blog-tags li{border-color:#3d4a63;background:#3d4a63;color:#a8b3c5}.blog-shell[data-theme=high-contrast] .blog-tags li{border:1px solid #000;background:#f0f0f0;color:#000}.blog-article{padding:clamp(1.1rem,2.6vw,2rem)}.blog-article>:first-child{margin-top:0}.blog-article :is(h2,h3){margin-top:1.9rem;margin-bottom:.75rem}.blog-article ol,.blog-article ul{padding-left:1.2rem}.blog-article li+li{margin-top:.35rem}.blog-post-back{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.4rem;font-family:var(--blog-font-ui);font-weight:700;font-size:.86rem}.blog-discussion{padding:clamp(1rem,2.4vw,1.75rem)}.blog-discussion h2{font-size:clamp(1.45rem,3vw,1.9rem)}.blog-discussion-note{color:var(--blog-copy-soft)}.giscus-shell{margin-top:1rem;border-radius:var(--blog-radius-md);border:1px solid #d7e4fa;background:#f9fbff;padding:.65rem}.blog-shell[data-theme=dark] .giscus-shell{border-color:#3d4a63;background:#2d3a52}.blog-shell[data-theme=high-contrast] .giscus-shell{border:2px solid #000;background:#fff;padding:.85rem}.giscus-shell .giscus{width:100%}.giscus-warning{border-radius:10px;border:1px solid #f8ce7a;background:#fff9eb;color:#7b4b06;padding:.85rem;font-family:var(--blog-font-ui);font-size:.92rem}.blog-shell[data-theme=dark] .giscus-warning{border-color:#6b5a2a;background:#3a2f1a;color:#ffc876}.blog-shell[data-theme=high-contrast] .giscus-warning{border:2px solid #000;background:#fff;color:#000}.blog-theme-switcher{position:fixed;bottom:2rem;right:2rem;z-index:999;display:flex;gap:.5rem;padding:.5rem;border-radius:999px;border:1.5px solid var(--blog-border);background:var(--blog-surface);box-shadow:0 8px 24px -12px rgba(0,0,0,.15);transition:box-shadow .22s ease}.blog-shell[data-theme=dark] .blog-theme-switcher{border-color:#3d4a63;background:#22293a}.blog-shell[data-theme=high-contrast] .blog-theme-switcher{border:2px solid #000;background:#fff}.blog-theme-switcher:hover{box-shadow:0 12px 32px -14px rgba(0,0,0,.25)}.blog-theme-btn{display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;border-radius:50%;border:none;background:transparent;color:var(--blog-accent);font-size:1.1rem;cursor:pointer;transition:background-color .18s ease,color .18s ease,transform .12s ease;font-family:var(--blog-font-ui)}.blog-theme-btn:hover{background:var(--blog-surface-tint);transform:scale(1.08)}.blog-shell[data-theme=dark] .blog-theme-btn:hover{background:#3d4a63}.blog-shell[data-theme=high-contrast] .blog-theme-btn:hover{background:#f0f0f0;color:#000;outline:2px solid #000}.blog-theme-btn.active{background:var(--blog-accent);color:#fff}.blog-shell[data-theme=high-contrast] .blog-theme-btn.active{background:#000;color:#fff;outline:2px solid #000}@media (max-width:700px){.blog-shell li,.blog-shell p{font-size:1rem;line-height:1.65}.blog-article,.blog-card,.blog-discussion,.blog-hero,.blog-post-header{border-radius:16px}.blog-theme-switcher{bottom:1rem;right:1rem}}@media (prefers-reduced-motion:reduce){.blog-card,.blog-theme-btn,.blog-theme-switcher{transition:none}}