.stat-callout[data-astro-cid-rm5uvzw4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin:2em 0;padding:1.5rem;background:linear-gradient(135deg,#fff7f8,#fff);border:1px solid #ffd1da;border-radius:14px;text-align:center}.stat-item[data-astro-cid-rm5uvzw4]{display:flex;flex-direction:column;gap:.2rem}.stat-value[data-astro-cid-rm5uvzw4]{font-size:1.85rem;font-weight:700;color:var(--brand-primary);line-height:1.1;font-variant-numeric:tabular-nums}.stat-label[data-astro-cid-rm5uvzw4]{font-size:.78rem;font-weight:500;color:#3f3f3f;line-height:1.35}@media(max-width:600px){.stat-callout[data-astro-cid-rm5uvzw4]{grid-template-columns:1fr 1fr;padding:1rem}.stat-value[data-astro-cid-rm5uvzw4]{font-size:1.4rem}}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:100;background:transparent;pointer-events:none}.reading-progress-bar{height:100%;background:linear-gradient(90deg,var(--brand-primary),#ffaab9);transform-origin:0 50%;transform:scaleX(0);transition:transform .05s linear}.toc-mobile-btn{display:none;position:fixed;bottom:1.25rem;right:1.25rem;z-index:90;align-items:center;gap:.4rem;padding:.7rem 1.1rem;background:var(--brand-primary);color:#fff;border:none;border-radius:999px;font-weight:600;font-size:.9rem;box-shadow:0 4px 12px #c41e3a59;cursor:pointer}.toc-mobile-btn:hover{background:#e00b41}@media(max-width:1100px){.toc-mobile-btn{display:inline-flex}}.article{max-width:var(--wide-width);margin:0 auto}.article-hero{margin:var(--spacing-16) var(--spacing-6);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface)}.article-hero img{width:100%;height:auto;aspect-ratio:1440 / 800;max-height:500px;object-fit:cover;display:block}.article-grid{display:grid;grid-template-columns:var(--meta-col-width) minmax(0,var(--content-width)) var(--gutter-width);gap:var(--spacing-10);justify-content:center;padding:0 var(--spacing-6);margin:var(--spacing-16) 0}.article-meta-col{display:block}.meta-sticky{position:sticky;top:calc(var(--nav-height) + var(--spacing-8))}.meta-block{margin-bottom:var(--spacing-6)}.meta-label{display:block;font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-muted);margin-bottom:var(--spacing-1)}.meta-value{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.updated-block .meta-label{color:var(--brand-primary)}.updated-block .meta-value{color:var(--color-text);font-weight:500}.meta-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-1)}.meta-tag{display:inline-block;padding:var(--tag-padding-y) var(--spacing-2);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--radius);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast)}.meta-tag:hover{color:var(--color-text);background:var(--color-border)}.bylines{display:flex;flex-direction:column;gap:var(--spacing-1)}.byline{display:flex;align-items:center;gap:var(--spacing-2)}.byline-link{text-decoration:none;color:inherit;transition:color var(--transition-fast)}.byline-link:hover .byline-name{color:var(--brand-primary)}.byline-avatar{width:var(--avatar-size-lg);height:var(--avatar-size-lg);border-radius:50%;object-fit:cover}.byline-info{display:flex;flex-direction:column}.byline-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.byline-role{font-size:var(--font-size-xs);color:var(--color-muted)}.reviewer-block .meta-label{color:var(--brand-primary)}.reviewers{display:flex;flex-direction:column;gap:var(--spacing-1)}.reviewer{display:flex;align-items:center;gap:var(--spacing-2)}.reviewer-link{text-decoration:none;color:inherit;transition:color var(--transition-fast)}.reviewer-link:hover .reviewer-name{color:var(--brand-primary)}.reviewer-avatar{width:var(--avatar-size-sm, 28px);height:var(--avatar-size-sm, 28px);border-radius:50%;object-fit:cover}.reviewer-info{display:flex;flex-direction:column}.reviewer-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.reviewer-role{font-size:var(--font-size-xs);color:var(--color-muted)}.article-main{min-width:0}.article-breadcrumb{margin-bottom:var(--spacing-4);font-size:.85rem;color:var(--color-muted)}.article-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.35em;align-items:center;list-style:none;padding:0;margin:0}.article-breadcrumb li{display:inline-flex;align-items:center;gap:.35em}.article-breadcrumb a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.article-breadcrumb a:hover{color:var(--brand-primary)}.article-breadcrumb [aria-current=page]{color:var(--color-text);font-weight:500;max-width:50ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-breadcrumb .bc-sep{color:var(--color-muted);opacity:.6}@media(max-width:640px){.article-breadcrumb [aria-current=page]{max-width:22ch}}.article-header{margin-bottom:var(--spacing-10)}.article-cta-top{margin-top:var(--spacing-6)}.sidebar-cta{margin-bottom:var(--spacing-8)}.sidebar-cta .cta--banner{margin:0;padding:1.25rem;grid-template-columns:1fr;gap:.75rem}.sidebar-cta .cta-banner-heading{font-size:1rem}.sidebar-cta .cta-banner-subheading{font-size:.85rem}.sidebar-cta .cta-banner-action{justify-self:stretch;justify-content:center;padding:.7rem 1rem}.article-header .article-meta{display:none;align-items:center;flex-wrap:wrap;column-gap:var(--spacing-3);row-gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--color-muted);margin-bottom:var(--spacing-4)}.article-meta-byline{font-weight:500;color:var(--color-text-secondary)}.footnotes{margin-top:var(--spacing-12);padding-top:var(--spacing-6);border-top:1px solid var(--color-border-subtle)}.footnotes-heading{font-size:var(--font-size-lg)!important;font-weight:700;margin:0 0 var(--spacing-4)!important;letter-spacing:-.01em}.footnotes-list{list-style:decimal;padding-left:var(--spacing-6);margin:0;font-size:.95rem;line-height:1.55;color:var(--color-text-secondary)}.footnote-item{margin-bottom:var(--spacing-3);scroll-margin-top:80px}.footnote-item:target{background:#fff7f8;border-radius:4px;padding:.2em .4em;margin-left:-.4em}.footnote-source{color:var(--color-text)}.footnote-return{color:var(--brand-primary);text-decoration:none;font-weight:600;margin-left:.25em}.footnote-return:hover,.footnote-return:focus{text-decoration:underline}.article-meta-updated{color:var(--color-text-secondary)}.article-meta-updated-label{color:var(--brand-primary);font-weight:500;text-transform:lowercase}.article-title{font-size:clamp(2rem,5vw,var(--font-size-5xl));font-weight:700;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);margin-bottom:var(--spacing-4)}.article-excerpt{font-size:var(--font-size-xl);line-height:var(--leading-relaxed);color:var(--color-text-secondary)}.article-content{font-size:var(--font-size-lg);line-height:var(--leading-relaxed);counter-reset:section}.article-content p{margin-bottom:1.5em;hyphens:auto;-webkit-hyphens:auto}.article-content>p:first-of-type:first-letter,.article-content>p:first-child:first-letter{float:left;font-size:3.4em;line-height:.85;font-weight:700;color:var(--brand-primary);padding-right:.1em;padding-top:.08em;padding-bottom:.05em;font-feature-settings:"ss01"}.article-content>p:first-of-type,.article-content>p:first-child{font-size:1.08em;color:#2a2a2a;line-height:1.55}.article-content h2{position:relative;font-size:var(--font-size-2xl);margin-top:2.5em;margin-bottom:.75em;padding-top:1.25em;scroll-margin-top:calc(var(--nav-height) + var(--spacing-4));counter-increment:section}.article-content h2:before{content:"";position:absolute;top:0;left:0;width:64px;height:3px;background:linear-gradient(90deg,var(--brand-primary),#ffaab9);border-radius:2px}.article-content h2:after{content:counter(section,decimal-leading-zero);position:absolute;top:.85em;right:0;font-size:.55em;font-weight:600;color:var(--brand-primary);letter-spacing:.05em;font-variant-numeric:tabular-nums;opacity:.7}@media(max-width:600px){.article-content h2:after{display:none}}.article-content h3{font-size:var(--font-size-xl);margin-top:2em;margin-bottom:.5em;scroll-margin-top:calc(var(--nav-height) + var(--spacing-4))}.article-content ul{list-style:none;padding-left:0}.article-content ul li{position:relative;padding-left:1.5em}.article-content ul li:before{content:"";position:absolute;left:.4em;top:.85em;width:6px;height:6px;background:var(--brand-primary);border-radius:50%;opacity:.9}.article-content ol{list-style:none;padding-left:0;counter-reset:ord-item}.article-content ol>li{position:relative;padding-left:2em;counter-increment:ord-item}.article-content ol>li:before{content:counter(ord-item) ".";position:absolute;left:0;top:0;font-weight:700;color:var(--brand-primary);font-variant-numeric:tabular-nums;min-width:1.5em}.article-content blockquote{position:relative;margin:2em 0;padding:1.1rem 1.25rem 1.1rem 3.2rem;border-left:4px solid var(--brand-primary);background:linear-gradient(135deg,#fff7f8,#fff 60%);border-radius:0 12px 12px 0;color:#3f3f3f;font-style:normal;box-shadow:0 1px 4px #00000008}.article-content blockquote:before{content:"💡";position:absolute;left:.95rem;top:1.15rem;font-size:1.15rem;line-height:1}.article-content blockquote p{margin:0}.article-content blockquote p+p{margin-top:.6em}.toc-mobile-drawer{position:fixed;inset:0;z-index:1000;visibility:hidden;opacity:0;transition:opacity .18s ease,visibility .18s ease}.toc-mobile-drawer.open{visibility:visible;opacity:1}.toc-mobile-backdrop{position:absolute;inset:0;background:#00000073}.toc-mobile-nav{position:absolute;right:0;top:0;bottom:0;width:min(85vw,320px);background:#fff;padding:1.5rem 1.25rem;overflow-y:auto;transform:translate(100%);transition:transform .22s ease}.toc-mobile-drawer.open .toc-mobile-nav{transform:translate(0)}.toc-mobile-nav .toc-list{list-style:none;padding:0;margin:0}.toc-mobile-nav .toc-item{margin-bottom:.4rem}.toc-mobile-nav .toc-item--nested{padding-left:1rem}.toc-mobile-nav .toc-link{display:block;padding:.55rem 0;color:#222;text-decoration:none;border-bottom:1px solid #f0f0f0;font-size:.95rem}.toc-mobile-nav .toc-link:hover{color:var(--brand-primary)}.article-content pre{margin:2em 0;padding:var(--spacing-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto;font-family:var(--font-mono);font-size:var(--font-size-sm);line-height:1.6}.article-content code{font-family:var(--font-mono);font-size:.9em;background:var(--color-surface);padding:.2em .4em;border-radius:var(--radius)}.article-content pre code{background:none;padding:0}.article-content ul,.article-content ol{margin-bottom:1.5em;padding-left:1.5em}.article-content li{margin-bottom:.5em}.article-content img{margin:2em 0;border-radius:var(--radius-lg)}.article-content hr{margin:3em 0;border:none;border-top:1px solid var(--color-border)}.article-content a{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.article-content a:hover{text-decoration-thickness:2px}.article-sidebar{display:block}.sidebar-sticky{position:sticky;top:calc(var(--nav-height) + var(--spacing-8))}.toc{margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--color-border-subtle)}.toc-title{font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-muted);margin-bottom:var(--spacing-3)}.toc-content .toc-list{list-style:none;padding:0;margin:0}.toc-content .toc-item{margin-bottom:var(--spacing-1)}.toc-content .toc-item--nested{padding-left:var(--spacing-3)}.toc-content .toc-link{display:block;font-size:var(--font-size-sm);color:var(--color-muted);text-decoration:none;padding:var(--spacing-1) 0;transition:color var(--transition-fast);line-height:var(--leading-snug)}.toc-content .toc-link:hover,.toc-content .toc-link.active{color:var(--color-text)}.sidebar-widgets .widget-area{display:flex;flex-direction:column;gap:var(--spacing-6)}.sidebar-widgets .widget{font-size:var(--font-size-sm)}.sidebar-widgets .widget__title{font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-muted);margin-bottom:var(--spacing-3)}.sidebar-widgets .widget__content{color:var(--color-text-secondary);line-height:var(--leading-relaxed)}.sidebar-widgets .widget-search{display:flex;flex-direction:column;gap:var(--spacing-2)}.sidebar-widgets .widget-search__input{width:100%;padding:var(--spacing-2) var(--spacing-3);font-family:var(--font-sans);font-size:var(--font-size-sm);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.sidebar-widgets .widget-search__input::placeholder{color:var(--color-muted)}.sidebar-widgets .widget-search__input:focus,.sidebar-widgets .widget-search__input:focus-visible{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.sidebar-widgets .widget-search__button{display:none}.sidebar-widgets .widget-categories{list-style:none;padding:0;margin:0}.sidebar-widgets .widget-categories li{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-2) 0;border-bottom:1px solid var(--color-border-subtle)}.sidebar-widgets .widget-categories li:last-child{border-bottom:none}.sidebar-widgets .widget-categories__link{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.sidebar-widgets .widget-categories__link:hover{color:var(--color-text)}.sidebar-widgets .widget-categories__count{font-size:var(--font-size-xs);color:var(--color-muted);background:var(--color-surface);padding:var(--tag-padding-y) var(--spacing-2);border-radius:var(--radius)}.sidebar-widgets .widget-tags__cloud{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.sidebar-widgets .widget-tags__cloud li{margin:0}.sidebar-widgets .widget-tags__link{display:inline-block;padding:var(--tag-padding-y) var(--spacing-2);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--radius);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar-widgets .widget-tags__link:hover{color:var(--color-text);background:var(--color-border)}.sidebar-widgets .widget-tags__count{display:none}.sidebar-widgets .widget-recent-posts{list-style:none;padding:0;margin:0}.sidebar-widgets .widget-recent-posts li{padding:var(--spacing-2) 0;border-bottom:1px solid var(--color-border-subtle)}.sidebar-widgets .widget-recent-posts li:last-child{border-bottom:none}.sidebar-widgets .widget-recent-posts a{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast);line-height:var(--leading-snug)}.sidebar-widgets .widget-recent-posts a:hover{color:var(--color-text)}.sidebar-widgets .widget-archives{list-style:none;padding:0;margin:0}.sidebar-widgets .widget-archives li{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-2) 0;border-bottom:1px solid var(--color-border-subtle)}.sidebar-widgets .widget-archives li:last-child{border-bottom:none}.sidebar-widgets .widget-archives__link{color:var(--color-text-secondary);text-decoration:none;transition:color var(--transition-fast)}.sidebar-widgets .widget-archives__link:hover{color:var(--color-text)}.sidebar-widgets .widget-archives__count{font-size:var(--font-size-xs);color:var(--color-muted);background:var(--color-surface);padding:var(--tag-padding-y) var(--spacing-2);border-radius:var(--radius)}.article-comments{margin-top:var(--spacing-16);padding-top:var(--spacing-10);border-top:1px solid var(--color-border)}.article-comments .ec-comments{--ec-comment-border: 1px solid var(--color-border)}.article-comments .ec-comments-heading{font-size:var(--font-size-2xl);font-weight:600;margin-bottom:var(--spacing-8)}.article-comments .ec-comment-author{color:var(--color-text)}.article-comments .ec-comment-date{font-family:var(--font-mono);color:var(--color-muted)}.article-comments .ec-comment-body{color:var(--color-text)}.article-comments .ec-comment-form-field input,.article-comments .ec-comment-form-field textarea{background:var(--color-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}.article-comments .ec-comment-user-info{background:var(--color-surface)!important;border-color:var(--color-border)!important}.article-comments .ec-comment-form-submit{background:var(--color-accent)!important;color:var(--color-on-accent)!important}.more-posts{background:var(--color-bg-subtle);padding:var(--spacing-16) 0;margin-top:var(--spacing-16)}.more-inner{max-width:var(--wide-width);margin:0 auto;padding:0 var(--spacing-6)}.more-title{font-size:var(--font-size-2xl);font-weight:600;margin-bottom:var(--spacing-10)}.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-8)}@media(max-width:1100px){.article-grid{grid-template-columns:minmax(0,var(--content-width));gap:0}.article-meta-col,.article-sidebar{display:none}.article-header .article-meta{display:flex}}@media(max-width:900px){.article-hero{margin:var(--spacing-4) var(--spacing-4) var(--spacing-8);border-radius:var(--radius)}.article-grid{padding:0 var(--spacing-4)}.more-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.article-title{font-size:var(--font-size-3xl)}.more-grid{grid-template-columns:1fr}}.mobile-sticky-cta{display:none}@media(max-width:767px){.mobile-sticky-cta{display:flex;position:fixed;left:12px;right:12px;bottom:12px;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.1rem;background:var(--brand-primary);color:#fff;font-size:.95rem;font-weight:600;text-decoration:none;border-radius:14px;box-shadow:0 6px 22px #c41e3a52;z-index:90;opacity:0;transform:translateY(120%);transition:opacity .2s ease,transform .25s cubic-bezier(.22,1,.36,1);pointer-events:none}.mobile-sticky-cta.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.msc-label{flex:1 1 auto;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msc-icon{font-size:1.1rem}}
