html:has(.blog-root){scroll-behavior:smooth;background-color:var(--color-landing-bg)}:is(html:has(.blog-root),body:has(.blog-root)){overscroll-behavior:none;width:100%;max-width:100%;position:relative}@media (max-width:767px){:is(html:has(.blog-root),body:has(.blog-root)){overscroll-behavior-x:none;touch-action:pan-y pinch-zoom;overflow-x:hidden}}.blog-root{font-family:var(--font-body);color:var(--color-text-on-light);background-color:var(--color-landing-bg);min-height:100vh;font-weight:400}.blog-root *,.blog-root :before,.blog-root :after{box-sizing:border-box;-webkit-overflow-scrolling:touch;margin:0;padding:0}.blog-root img,.blog-root video,.blog-root canvas,.blog-root svg{max-width:100%}.blog-root .wrapgrid{overflow-x:hidden}.blog-root a{color:var(--color-accent-on-light);text-decoration:none}.blog-root h1,.blog-root h2,.blog-root h3,.blog-root h4,.blog-root h5,.blog-root h6{font-family:var(--font-body);font-weight:700}.blog-root code,.blog-root pre,.blog-root .mono{font-family:var(--font-code)}.blog-root button,.blog-root .animated-button{-webkit-tap-highlight-color:transparent}.markdown-link{transition:opacity .2s}.markdown-link:hover{opacity:.8}.markdown-paragraph{margin-bottom:var(--spacing-md)}.markdown-blockquote>p:first-child{margin-top:0}.markdown-blockquote>p:last-child{margin-bottom:0}.background-blur{z-index:-1;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.background-blur img{object-fit:cover;filter:blur(10px);opacity:1;width:100%;height:100%;transform:scale(1.05)}.blog-root{--color-background:var(--color-landing-bg);--color-text:var(--color-text-on-light);--color-dark-background:var(--color-about-bg);--color-dark-text:var(--color-text-on-dark);--color-nav-background:var(--color-nav-bg);--color-card:var(--color-card-bg);--font-body:var(--font-blog-sans), sans-serif;--font-code:var(--font-blog-mono), monospace}@keyframes blogShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.post-content{font-family:var(--font-body);color:#f5f5f5;font-size:clamp(12px,1.8vw,18px);line-height:1.8}.post-content h1,.post-content h2,.post-content h3,.post-content h4,.post-content h5,.post-content h6{font-family:var(--font-body);color:#f5f5f5;font-weight:700}.post-content h1{font-size:var(--text-3xl);margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md);line-height:1.2}.post-content h2{font-size:var(--text-2xl);margin-top:var(--spacing-md);margin-bottom:var(--spacing-md);line-height:1.3}.post-content h3{font-size:var(--text-xl);margin-top:var(--spacing-sm);margin-bottom:var(--spacing-sm);line-height:1.4}.post-content p{margin-bottom:var(--spacing-md)}.post-content a{color:var(--color-accent);text-decoration:none;transition:color .3s}.post-content a:hover{opacity:.8}.post-content code{font-family:var(--font-code);font-size:var(--text-sm);color:var(--color-accent);background-color:#f5f5f5;border-radius:4px;padding:2px 6px}.post-content blockquote{border-left:4px solid var(--color-accent);padding-left:var(--spacing-md);margin:var(--spacing-md) 0;color:#666;font-style:italic}.post-layout{gap:var(--spacing-md);padding:var(--spacing-lg)}.post-main{padding:var(--spacing-lg)}.post-sidebar{flex-shrink:0;align-self:flex-start;width:18%;max-height:calc(100vh - 104px);position:sticky;top:88px;overflow:hidden auto}@media (max-width:767px){.post-layout{padding:var(--spacing-md) 36px;gap:0}.post-main{padding:var(--spacing-lg) 0 var(--spacing-md)}.post-sidebar{display:none}}.toc-container{padding-top:var(--spacing-sm);padding-left:var(--spacing-lg);position:sticky;top:120px}@media (max-width:767px){.toc-container{display:none}}.toc-title{font-family:var(--font-body);color:var(--color-text);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em;font-size:clamp(12px,1.8vw,18px);font-weight:700}.toc-list{margin:0;padding:0;list-style:none}.toc-item{font-family:var(--font-body);font-size:var(--text-sm);color:#999;cursor:pointer;padding:var(--spacing-xs) 0;font-weight:400;transition:color .8s,font-weight .4s,transform .3s}@media (hover:hover){.toc-item:hover{color:var(--color-accent);transform:translate(4px)}}.toc-item.active{color:var(--color-accent);font-weight:600}.series-card{padding:var(--spacing-sm);cursor:pointer;background-color:#363d44;border:1px solid #ffffff1a;border-radius:clamp(4px,1vw,8px);flex-direction:column;flex-shrink:0;gap:clamp(6px,1vh,12px);width:clamp(120px,20vw,240px);text-decoration:none;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}@media (hover:hover){.series-card:hover{border-color:var(--color-accent);transform:translateY(-2px)}}.series-card-title{font-family:var(--font-body);color:var(--color-accent);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:clamp(12px,1.8vw,18px);font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.reading-progress{background-color:var(--color-accent);z-index:999;height:3px;transition:bottom .3s;position:fixed;bottom:0;left:0}.reading-progress.above-footer{bottom:80px}.blog-root .nav-item:before{padding:inherit;margin:inherit;padding-right:0}.blog-root .close-button{color:var(--color-dark-text);transition:color .3s var(--ease-in-out-soft)}@media (hover:hover){.blog-root .close-button:hover{color:var(--color-accent)}}@media (min-width:481px) and (max-height:760px){.blog-home{--blog-hero-h:max(240px, calc(100vh - 2 * var(--nav-h,80px)));--blog-nav-font:clamp(16px, 3.2vh, 20px);--blog-nav-icon:clamp(18px, 3.6vh, 24px);--blog-headline:clamp(1.75rem, 8vh, 3rem);--blog-tap-bottom:clamp(20px, 6vh, 48px);--blog-tap-dot:clamp(36px, 7vh, 48px);--blog-tap-icon:clamp(16px, 3.4vh, 20px);--blog-tap-h:auto;--blog-tap-font:12px}}@media (min-width:1800px) and (min-height:1100px){.blog-home{--blog-hero-w:min(80vw, 1600px);--blog-hero-h:min(80vh, 1100px);--blog-nav-x:clamp(60px, 4vw, 96px);--blog-nav-font:clamp(24px, 1.5vw, 32px);--blog-nav-icon:clamp(28px, 1.8vw, 36px);--blog-headline:clamp(3.5rem, 4.5vw, 5.5rem);--blog-tap-bottom:clamp(60px, 7vh, 96px);--blog-tap-w:280px;--blog-tap-h:auto;--blog-tap-dot:clamp(60px, 4vw, 84px);--blog-tap-icon:clamp(24px, 1.6vw, 32px);--blog-tap-font:clamp(14px, .9vw, 18px)}}
