.blog-scope{font-family:var(--blog-font-body);color:var(--blog-text)}.blog-scope .reading-progress{z-index:60;pointer-events:none;background:0 0;height:3px;position:fixed;inset:0 0 auto}.blog-scope .reading-progress span{background:var(--blog-link);width:0;height:100%;transition:width .1s linear;display:block}.blog-scope .post-page__body{color:var(--blog-text);font-size:1.09rem;line-height:1.75}.blog-scope .post-page__body>:first-child{margin-top:0}.blog-scope .post-page__body :is(h1,h2,h3,h4,h5,h6){font-family:var(--blog-font-display);color:var(--blog-text);letter-spacing:-.01em;font-weight:800}.blog-scope .post-page__body h2{border-top:1px solid var(--blog-border);margin-top:2.75rem;padding-top:1.35rem;font-size:clamp(1.45rem,2.6vw,1.85rem);line-height:1.25}.blog-scope .post-page__body h3{margin-top:2rem;font-size:1.28rem;font-weight:700;line-height:1.3}.blog-scope .post-page__body :is(h2,h3,h4),.blog-scope .post-page__body [id]{scroll-margin-top:5rem}.blog-scope .post-page__body p{margin:1.05rem 0}.blog-scope .post-page__body>p:first-of-type{font-size:1.18rem;line-height:1.7}.blog-scope .post-page__body a{color:var(--blog-link);text-underline-offset:2px;transition:color .15s var(--blog-ease);text-decoration:underline}.blog-scope .post-page__body a:hover{color:var(--blog-accent-hover)}.blog-scope .post-page__body strong{color:var(--blog-text);font-weight:700}.blog-scope .post-page__body blockquote{border-left:3px solid var(--blog-accent);color:var(--blog-muted);margin:1.5rem 0;padding:.25rem 0 .25rem 1.15rem;font-style:italic}.blog-scope .post-page__body :not(pre)>code{background:var(--blog-elevated);border-radius:6px;padding:.12em .4em;font-size:.9em}.blog-scope .post-page__body hr{border:0;border-top:1px solid var(--blog-border);margin:2.5rem 0}.blog-scope .post-page__body ul{margin:1.05rem 0;padding-left:1.35rem;list-style:none}.blog-scope .post-page__body ul>li{margin:.4rem 0;position:relative}.blog-scope .post-page__body ul>li:before{content:"";background:var(--blog-link);border-radius:2px;width:8px;height:8px;position:absolute;top:.68em;left:-1.2rem}.blog-scope .post-page__body ol{margin:1.05rem 0;padding-left:1.35rem}.blog-scope .post-page__body ol>li{margin:.4rem 0}.blog-scope .post-page__body ol>li::marker{color:var(--blog-accent-hover);font-family:var(--blog-font-display);font-weight:700}.blog-scope .post-toc__link{border-left:2px solid var(--blog-border);color:var(--blog-muted);transition:color .15s var(--blog-ease), border-color .15s var(--blog-ease);margin-left:-1px;padding:.32rem 0 .32rem .85rem;font-size:.85rem;line-height:1.4;text-decoration:none;display:block}.blog-scope .post-toc__link:hover{color:var(--blog-text)}.blog-scope .post-toc__link.is-active{color:var(--blog-link);border-left-color:var(--blog-link);font-weight:600}.blog-scope .post-page__body h2.kt-heading{background:var(--blog-accent-soft);border:1px solid color-mix(in srgb, var(--blog-accent) 32%, white);border-radius:var(--blog-radius-lg) var(--blog-radius-lg) 0 0;border-bottom:0;margin:2.75rem 0 0;padding:1.15rem 1.4rem .3rem;font-size:clamp(1.2rem,2vw,1.45rem)}.blog-scope .post-page__body :is(ul,ol).kt-list{background:var(--blog-accent-soft);border:1px solid color-mix(in srgb, var(--blog-accent) 32%, white);border-radius:0 0 var(--blog-radius-lg) var(--blog-radius-lg);border-top:0;margin:0 0 2rem;padding:.5rem 1.5rem 1.2rem 2.7rem}.blog-scope .mobile-toc-panel,.blog-scope .mobile-toc-scrim,.blog-scope .mobile-bar{display:none}@media (width<=1000px){.blog-scope .post-layout{padding-bottom:5.5rem}.blog-scope .mobile-bar{z-index:55;padding:.6rem .9rem calc(.6rem + env(safe-area-inset-bottom,0px));background:color-mix(in srgb, var(--blog-surface) 92%, transparent);-webkit-backdrop-filter:saturate(140%)blur(10px);backdrop-filter:saturate(140%)blur(10px);border-top:1px solid var(--blog-border);align-items:center;gap:.75rem;display:flex;position:fixed;inset:auto 0 0}.blog-scope .mobile-bar__toc{border:1px solid var(--blog-border);border-radius:var(--blog-radius);background:var(--blog-surface);color:var(--blog-text);cursor:pointer;align-items:center;gap:.4rem;padding:.7rem 1rem;font-size:.9rem;font-weight:600;display:inline-flex}.blog-scope .mobile-bar__cta{border-radius:var(--blog-radius);background:var(--blog-accent);color:var(--blog-accent-contrast);flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.7rem 1rem;font-size:.9rem;font-weight:700;text-decoration:none;display:inline-flex}.blog-scope .mobile-toc-scrim{z-index:56;visibility:hidden;transition:background .3s var(--blog-ease), visibility .3s var(--blog-ease);background:#0e141200;display:block;position:fixed;inset:0}.blog-scope .mobile-toc-panel{z-index:57;max-height:70vh;padding:1rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom,0px));background:var(--blog-surface);border-radius:var(--blog-radius-lg) var(--blog-radius-lg) 0 0;box-shadow:var(--blog-shadow-hover);transition:transform .3s var(--blog-ease);display:block;position:fixed;inset:auto 0 0;overflow-y:auto;transform:translateY(101%)}.blog-scope .mobile-toc-panel__head{font-family:var(--blog-font-display);color:var(--blog-text);justify-content:space-between;align-items:center;margin-bottom:.5rem;font-weight:700;display:flex}.blog-scope .mobile-toc-panel__close{border-radius:var(--blog-radius);color:var(--blog-muted);cursor:pointer;padding:.25rem .6rem;font-size:1rem}.blog-scope .mobile-toc-panel.is-open{transform:translateY(0)}.blog-scope .mobile-toc-scrim.is-open{visibility:visible;background:#0e141273}}
