.reading-progress{background:linear-gradient(90deg, var(--color-accent), #e74c3c, #ff6b6b);z-index:101;width:0%;height:3px;transition:width 50ms linear;position:fixed;top:56px;left:0}.blog-header{z-index:100;background:var(--color-bg);border-bottom:1px solid var(--color-border);position:sticky;top:0}.blog-header .header-inner{justify-content:space-between;align-items:center;max-width:1080px;height:56px;margin:0 auto;padding:0 1.5rem;display:flex}.blog-header .logo{font-family:var(--font-heading);color:var(--color-text);letter-spacing:-.01em;align-items:center;gap:.75rem;font-size:1.0625rem;font-weight:700;text-decoration:none;display:flex}.blog-header .logo svg{flex-shrink:0}.blog-header .header-nav{gap:2rem;display:flex}.blog-header .header-nav a{color:var(--color-text-muted);letter-spacing:.01em;font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .2s}.blog-header .header-nav a:hover,.blog-header .header-nav a.active{color:var(--color-accent)}.breadcrumb{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.5rem;padding:1rem 0;font-size:.8125rem;display:flex}.breadcrumb a{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.breadcrumb a:hover{color:var(--color-accent)}.breadcrumb .separator{opacity:.4;font-size:.75rem}.breadcrumb .current{color:var(--color-text);font-weight:500}.blog-hero{text-align:center;padding:4rem 0 2rem}.blog-hero h1{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1rem;font-size:2.75rem;font-weight:700;line-height:1.15}.blog-hero p{color:var(--color-text-muted);max-width:640px;margin:0 auto;font-size:1.125rem;line-height:1.7}.blog-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding-bottom:4rem;display:grid}.blog-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s;display:flex;overflow:hidden}.blog-card:hover{border-color:var(--color-accent);transform:translateY(-4px);box-shadow:0 12px 32px -8px #0000001f}.blog-card__image{object-fit:cover;width:100%;height:200px;display:block}.blog-card__body{flex-direction:column;flex:1;padding:1.5rem;display:flex}.blog-card__badge{text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);background:var(--color-accent-soft);border-radius:100px;align-items:center;gap:.375rem;width:fit-content;margin-bottom:.75rem;padding:.25rem .625rem;font-size:.6875rem;font-weight:600;display:inline-flex}.blog-card__title{font-family:var(--font-heading);color:var(--color-text);margin-bottom:.625rem;font-size:1.25rem;font-weight:700;line-height:1.3}.blog-card__title a{color:inherit;text-decoration:none;transition:color .2s}.blog-card__title a:hover{color:var(--color-accent)}.blog-card__excerpt{color:var(--color-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:1rem;font-size:.875rem;line-height:1.65;display:-webkit-box;overflow:hidden}.blog-card__meta{color:var(--color-text-light);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:.75rem;font-size:.75rem;display:flex}.blog-card__readtime{align-items:center;gap:.375rem;display:flex}.article-container{grid-template-columns:1fr 240px;align-items:start;gap:3rem;max-width:1080px;margin:0 auto;padding:0 1.5rem;display:grid}.article-main{min-width:0}.article-hero{margin-bottom:2.5rem}.article-hero__badge{text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);background:var(--color-accent-soft);border-radius:100px;align-items:center;gap:.375rem;margin-bottom:1rem;padding:.3rem .75rem;font-size:.6875rem;font-weight:600;display:inline-flex}.article-hero h1{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1rem;font-size:2.25rem;font-weight:700;line-height:1.2}.article-hero__meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:1.5rem;margin-bottom:1.5rem;font-size:.8125rem;display:flex}.article-hero__meta span{align-items:center;gap:.375rem;display:flex}.article-hero__image{border-radius:12px;width:100%;margin-bottom:.5rem;overflow:hidden}.article-hero__image img{width:100%;height:auto;display:block}.article-body h2{font-family:var(--font-heading);color:var(--color-text);border-bottom:2px solid var(--color-border);margin-top:3rem;margin-bottom:1rem;padding-bottom:.5rem;scroll-margin-top:80px;font-size:1.625rem;font-weight:700}.article-body h3{font-family:var(--font-heading);color:var(--color-text);margin-top:2rem;margin-bottom:.75rem;scroll-margin-top:80px;font-size:1.25rem;font-weight:600}.article-body h4{font-family:var(--font-heading);color:var(--color-text);margin-top:1.5rem;margin-bottom:.5rem;font-size:1.0625rem;font-weight:600}.article-body p{color:var(--color-text);margin-bottom:1.25rem;font-size:1rem;line-height:1.8}.article-body ul,.article-body ol{margin-bottom:1.25rem;padding-left:1.5rem}.article-body li{color:var(--color-text);margin-bottom:.5rem;font-size:1rem;line-height:1.8}.article-body strong{color:var(--color-text);font-weight:600}.article-body a{color:var(--color-accent);text-underline-offset:3px;text-decoration:underline #d630314d;transition:text-decoration-color .2s}.article-body a:hover{text-decoration-color:var(--color-accent)}.article-body blockquote{border-left:4px solid var(--color-accent);background:var(--color-accent-soft);border-radius:0 8px 8px 0;margin:1.5rem 0;padding:1rem 1.5rem;font-style:italic}.article-body blockquote p{color:var(--color-text);margin-bottom:0}.article-body code{background:var(--color-bg-alt);border-radius:4px;padding:.15rem .4rem;font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem}.diagram{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;margin:2rem 0;padding:2rem;overflow-x:auto}.diagram__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);text-align:center;margin-bottom:1.25rem;font-size:.875rem;font-weight:600}.diagram__visual{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.diagram__box{background:var(--color-bg-alt);border:1px solid var(--color-border);text-align:center;border-radius:8px;min-width:120px;padding:1rem 1.25rem;transition:transform .2s,box-shadow .2s}.diagram__box:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.diagram__box--accent{border-color:var(--color-accent);background:var(--color-accent-soft)}.diagram__box--success{border-color:var(--color-success);background:var(--color-success-soft)}.diagram__box-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:.25rem;font-size:.75rem;font-weight:600}.diagram__box-value{font-family:var(--font-heading);color:var(--color-text);font-size:1.125rem;font-weight:700}.diagram__arrow{color:var(--color-text-muted);flex-shrink:0;font-size:1.25rem}.flow-diagram{flex-direction:column;align-items:center;gap:.5rem;display:flex}.flow-step{align-items:center;gap:1rem;width:100%;max-width:500px;display:flex}.flow-step__number{background:var(--color-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:700;display:flex}.flow-step__content{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:8px;flex:1;padding:.75rem 1rem}.flow-step__label{color:var(--color-text);font-size:.9375rem;font-weight:600}.flow-step__desc{color:var(--color-text-muted);margin-top:.25rem;font-size:.8125rem}.flow-connector{background:var(--color-border);width:2px;height:20px;margin-left:17px}.article-body .comparison-table{border-collapse:collapse;border:1px solid var(--color-border);border-radius:8px;width:100%;margin:1.5rem 0;font-size:.875rem;overflow:hidden}.article-body .comparison-table thead{background:var(--color-bg-alt)}.article-body .comparison-table th{text-align:left;color:var(--color-text);border-bottom:2px solid var(--color-border);padding:.875rem 1rem;font-size:.8125rem;font-weight:600}.article-body .comparison-table td{border-bottom:1px solid var(--color-border);vertical-align:top;padding:.75rem 1rem;line-height:1.5}.article-body .comparison-table tbody tr:last-child td{border-bottom:none}.article-body .comparison-table tbody tr:hover{background:var(--color-accent-soft)}.table-wrap{border-radius:8px;margin:1.5rem 0;overflow-x:auto}.callout{background:linear-gradient(135deg, var(--color-accent-soft), #fff5f5);border:1px solid #d6303126;border-left:4px solid var(--color-accent);border-radius:0 12px 12px 0;margin:2rem 0;padding:1.25rem 1.5rem}.callout__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:700;display:flex}.callout__text{color:var(--color-text);margin:0;font-size:.9375rem;line-height:1.7}.callout--success{background:linear-gradient(135deg, var(--color-success-soft), #f0fff4);border-color:#16a34a26;border-left-color:var(--color-success)}.callout--success .callout__title{color:var(--color-success)}.toc{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;max-height:calc(100vh - 100px);padding:1.5rem;position:sticky;top:80px;overflow-y:auto}.toc__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);margin-bottom:1rem;padding-bottom:.75rem;font-size:.8125rem;font-weight:700}.toc__list{margin:0;padding:0;list-style:none}.toc__list li{margin-bottom:.125rem}.toc__list a{color:var(--color-text-muted);border-left:2px solid #0000;border-radius:6px;padding:.375rem .75rem;font-size:.8125rem;line-height:1.4;text-decoration:none;transition:all .2s;display:block}.toc__list a:hover{color:var(--color-accent);background:var(--color-accent-soft)}.toc__list a.active{color:var(--color-accent);border-left-color:var(--color-accent);background:var(--color-accent-soft);font-weight:500}.related-posts{border-top:2px solid var(--color-border);margin-top:4rem;padding-top:3rem}.related-posts__title{font-family:var(--font-heading);color:var(--color-text);margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.related-posts__grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;display:grid}.article-faq{margin-top:2.5rem}.article-faq details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;margin-bottom:.75rem;transition:border-color .2s}.article-faq details:hover,.article-faq details[open]{border-color:var(--color-accent)}.article-faq summary{cursor:pointer;color:var(--color-text);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:1rem;font-weight:600;list-style:none;display:flex}.article-faq summary::-webkit-details-marker{display:none}.article-faq summary:after{content:"+";color:var(--color-accent);flex-shrink:0;font-size:1.25rem;font-weight:700;transition:transform .2s}.article-faq details[open] summary:after{content:"−"}.article-faq .faq-answer{color:var(--color-text-muted);padding:0 1.25rem 1.25rem;font-size:.9375rem;line-height:1.75}.blog-preview{padding:4rem 0}.blog-preview .section-heading{text-align:center;margin-bottom:.75rem}.blog-preview__subtitle{text-align:center;color:var(--color-text-muted);max-width:600px;margin-bottom:2.5rem;margin-left:auto;margin-right:auto;font-size:1.0625rem}.blog-preview__grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.blog-preview__cta{text-align:center;margin-top:2rem}.blog-preview__cta a{background:var(--color-accent);color:#fff;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:.9375rem;font-weight:600;text-decoration:none;transition:background .2s,transform .2s;display:inline-flex}.blog-preview__cta a:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.internal-link-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:1rem;margin:1.5rem 0;padding:1rem 1.25rem;text-decoration:none;transition:all .2s;display:flex}.internal-link-card:hover{border-color:var(--color-accent);transform:translate(4px);box-shadow:0 4px 12px #d6303114}.internal-link-card__icon{background:var(--color-accent-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.internal-link-card__icon svg{color:var(--color-accent)}.internal-link-card__text{flex:1}.internal-link-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-accent);margin-bottom:.125rem;font-size:.6875rem;font-weight:600}.internal-link-card__title{color:var(--color-text);font-size:.9375rem;font-weight:600}.internal-link-card__arrow{color:var(--color-text-light);transition:color .2s,transform .2s}.internal-link-card:hover .internal-link-card__arrow{color:var(--color-accent);transform:translate(2px)}.checklist{margin:1.5rem 0;padding:0;list-style:none}.checklist li{padding:.5rem 0 .5rem 2rem;font-size:.9375rem;line-height:1.6;position:relative}.checklist li:before{content:"✓";background:var(--color-success);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.6875rem;font-weight:700;display:flex;position:absolute;top:.5rem;left:0}@media (width<=860px){.article-container{grid-template-columns:1fr;gap:0}.toc{max-height:none;margin-bottom:2rem;position:static}.article-hero h1{font-size:1.75rem}.blog-hero h1{font-size:2rem}.blog-grid,.related-posts__grid,.blog-preview__grid{grid-template-columns:1fr}.diagram__visual{flex-direction:column}.diagram__arrow{transform:rotate(90deg)}}@media (width<=640px){.blog-header .header-nav{gap:1rem}.blog-header .header-nav a{font-size:.75rem}.article-body h2{font-size:1.375rem}.blog-hero h1{font-size:1.625rem}.flow-step{flex-direction:column;align-items:flex-start;gap:.5rem}.flow-connector{height:12px;margin-left:17px}}
