.blog-article,.blog-index{--blog-accent:#06c;--blog-accent-dark:#004d99;--blog-accent-soft:rgba(0,102,204,.08);--blog-ink:#1f2933;--blog-muted:#64748b;--blog-line:#e2e8f0;--blog-surface:#fff;--blog-code-bg:#0f172a}.accent-blue{--blog-accent:#06c;--blog-accent-dark:#004d99;--blog-accent-soft:rgba(0,102,204,.08)}.accent-violet{--blog-accent:#7c3aed;--blog-accent-dark:#5b21b6;--blog-accent-soft:rgba(124,58,237,.08)}.accent-red{--blog-accent:#dc2626;--blog-accent-dark:#991b1b;--blog-accent-soft:rgba(220,38,38,.07)}.accent-amber{--blog-accent:#d97706;--blog-accent-dark:#92400e;--blog-accent-soft:rgba(217,119,6,.08)}.accent-teal{--blog-accent:#0d9488;--blog-accent-dark:#115e59;--blog-accent-soft:rgba(13,148,136,.08)}.accent-slate{--blog-accent:#475569;--blog-accent-dark:#1e293b;--blog-accent-soft:rgba(71,85,105,.08)}.bi-hero{background:linear-gradient(135deg,#06c 0%,#004d99 70%);color:#fff;padding:3.25rem 0 3rem;border-radius:0 0 28px 28px;margin-bottom:2.25rem;text-align:center}.bi-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border-radius:999px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);font-weight:700;font-size:.85rem;margin-bottom:1.1rem}.bi-title{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800;line-height:1.15;margin:0 0 .9rem}.bi-lead{max-width:760px;margin:0 auto;font-size:1.05rem;line-height:1.6;opacity:.95}.bi-body{padding-bottom:3rem}.bi-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:1.75rem}.bi-tag{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid var(--blog-line);background:#fff;color:var(--blog-ink);font-size:.9rem;font-weight:600;text-decoration:none;transition:border-color .15s ease,color .15s ease,background .15s ease}.bi-tag:hover{border-color:#06c;color:#06c}.bi-tag.is-active{background:#06c;border-color:#06c;color:#fff}.bi-tag-count{font-size:.78rem;opacity:.7;font-weight:700}.bi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(340px,100%),1fr));gap:1.25rem}.bi-card{display:flex;flex-direction:column;padding:1.4rem 1.4rem 1.15rem;border:1px solid var(--blog-line);border-top:4px solid var(--blog-accent);border-radius:16px;background:var(--blog-surface);color:var(--blog-ink);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}.bi-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(15,23,42,.1);color:var(--blog-ink)}.bi-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:.9rem}.bi-card-icon{font-size:1.6rem;color:var(--blog-accent)}.bi-card-tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.bi-card-tag{padding:3px 10px;border-radius:999px;background:var(--blog-accent-soft);color:var(--blog-accent-dark);font-size:.72rem;font-weight:700;white-space:nowrap}.bi-card-title{font-size:1.16rem;font-weight:800;line-height:1.3;margin:0 0 .6rem}.bi-card-lead{font-size:.94rem;line-height:1.55;color:var(--blog-muted);margin:0 0 1rem;flex-grow:1}.bi-card-services{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:.9rem}.bi-card-service{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border:1px solid var(--blog-line);border-radius:8px;font-size:.75rem;color:var(--blog-muted);white-space:nowrap}.bi-card-service-more{font-weight:700}.bi-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:.8rem;border-top:1px solid var(--blog-line);font-size:.82rem;color:var(--blog-muted)}.bi-card-read{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--blog-accent);white-space:nowrap}.bi-empty{margin-top:1.5rem}.bi-cta{margin-top:2.75rem;padding:2rem;border-radius:18px;background:linear-gradient(135deg,#f8fafc 0%,#eef2f7 100%);border:1px solid var(--blog-line);text-align:center}.bi-cta-title{font-size:1.3rem;font-weight:800;margin:0 0 .6rem}.bi-cta-text{max-width:640px;margin:0 auto 1.3rem;color:var(--blog-muted);line-height:1.6}.bi-cta-text code,.ba-cta-text code{padding:2px 7px;border-radius:6px;background:#0f172a;color:#e2e8f0;font-size:.85em}.bi-cta-actions,.ba-cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.ba-hero{background:linear-gradient(135deg,var(--blog-accent) 0%,var(--blog-accent-dark) 75%);color:#fff;padding:2.25rem 0 2.75rem;border-radius:0 0 28px 28px;margin-bottom:2.25rem}.ba-crumbs{display:flex;gap:8px;font-size:.85rem;margin-bottom:1.1rem;opacity:.85}.ba-crumbs a{color:#fff;text-decoration:none}.ba-crumbs a:hover{text-decoration:underline}.ba-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:1rem}.ba-tag{padding:5px 13px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:.78rem;font-weight:700;text-decoration:none}.ba-tag:hover{background:rgba(255,255,255,.28);color:#fff}.ba-title{display:flex;align-items:flex-start;gap:14px;font-size:clamp(1.6rem,3.1vw,2.35rem);font-weight:800;line-height:1.2;margin:0 0 1rem;max-width:900px}.ba-title-icon{font-size:.85em;opacity:.85;margin-top:.15em}.ba-lead{max-width:820px;font-size:1.08rem;line-height:1.6;opacity:.95;margin:0 0 1.4rem}.ba-meta{display:flex;flex-wrap:wrap;gap:18px;font-size:.85rem;opacity:.9}.ba-meta-item{display:inline-flex;align-items:center;gap:7px}.ba-body-wrap{padding-bottom:3rem}.ba-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:2.5rem;align-items:start}@media(max-width:991px){.ba-grid{grid-template-columns:1fr;gap:1.5rem}}.ba-toc{position:sticky;top:90px;padding:1.1rem 1.2rem;border:1px solid var(--blog-line);border-left:3px solid var(--blog-accent);border-radius:12px;background:#fff}@media(max-width:991px){.ba-toc{position:static}}.ba-toc-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--blog-muted);margin:0 0 .7rem}.ba-toc-list{margin:0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.55rem}.ba-toc-list a{color:var(--blog-ink);text-decoration:none;font-size:.9rem;line-height:1.35}.ba-toc-list a:hover{color:var(--blog-accent);text-decoration:underline}.ba-content{max-width:760px;font-size:1.05rem;line-height:1.72;color:var(--blog-ink)}.ba-content>p{margin:0 0 1.15rem}.ba-content h2,.ba-content .ba-h2{font-size:1.55rem;font-weight:800;line-height:1.25;margin:2.6rem 0 1.1rem;padding-top:.4rem;scroll-margin-top:90px}.ba-content h3{font-size:1.2rem;font-weight:700;margin:1.9rem 0 .8rem;scroll-margin-top:90px}.ba-content ul,.ba-content ol{margin:0 0 1.2rem;padding-left:1.4rem}.ba-content li{margin-bottom:.5rem}.ba-content a{color:var(--blog-accent);text-underline-offset:3px}.ba-content blockquote{margin:1.5rem 0;padding:.9rem 1.2rem;border-left:3px solid var(--blog-accent);background:var(--blog-accent-soft);border-radius:0 10px 10px 0;font-style:italic;color:#334155}.ba-content p code,.ba-content li code,.ba-content td code{padding:2px 6px;border-radius:5px;background:#f1f5f9;border:1px solid #e2e8f0;font-size:.88em;color:#0f172a}.blog-table{width:100%;border-collapse:collapse;margin:1.4rem 0 1.6rem;font-size:.94rem}.blog-table th,.blog-table td{padding:10px 12px;border:1px solid var(--blog-line);text-align:left;vertical-align:top}.blog-table thead th{background:var(--blog-accent-soft);color:var(--blog-accent-dark);font-weight:700}.blog-table tbody tr:nth-child(even){background:#fafbfc}.key-takeaways{margin:0 0 2rem;padding:1.3rem 1.5rem;border-radius:14px;background:var(--blog-accent-soft);border:1px solid var(--blog-line);border-left:4px solid var(--blog-accent)}.kt-title{display:flex;align-items:center;gap:9px;margin:0 0 .75rem;font-weight:800;font-size:.85rem;text-transform:uppercase;letter-spacing:.07em;color:var(--blog-accent-dark)}.kt-list{margin:0;padding-left:1.2rem}.kt-list li{margin-bottom:.45rem;line-height:1.6}.kt-list li:last-child{margin-bottom:0}.pain-card{margin:1.5rem 0;padding:1.25rem 1.4rem;border:1px solid var(--blog-line);border-radius:14px;background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.04)}.pc-head{display:flex;align-items:center;gap:11px;margin-bottom:1rem}.pc-icon{font-size:1.25rem;color:#dc2626}.pc-title{margin:0;font-size:1.12rem;font-weight:800;line-height:1.3}.pc-rows{margin:0;display:flex;flex-direction:column;gap:.7rem}.pc-row{display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px}@media(max-width:575px){.pc-row{grid-template-columns:1fr;gap:3px}}.pc-row dt{font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--blog-muted);padding-top:3px}.pc-row dd{margin:0;line-height:1.6;font-size:.97rem}.pc-cost{color:#b91c1c;font-weight:600}.pc-fix{color:#047857}.callout{display:flex;gap:14px;margin:1.5rem 0;padding:1.1rem 1.25rem;border-radius:12px;border:1px solid;line-height:1.62;font-size:.98rem}.callout p:last-child{margin-bottom:0}.co-icon{font-size:1.15rem;line-height:1.4;flex-shrink:0}.co-title{margin:0 0 .35rem;font-weight:800}.co-text p{margin:0 0 .6rem}.callout-info{background:#eff6ff;border-color:#bfdbfe;color:#1e3a8a}.callout-info .co-icon{color:#2563eb}.callout-warn{background:#fffbeb;border-color:#fde68a;color:#78350f}.callout-warn .co-icon{color:#d97706}.callout-money{background:#f0fdf4;border-color:#bbf7d0;color:#14532d}.callout-money .co-icon{color:#16a34a}.callout-tip{background:#f5f3ff;border-color:#ddd6fe;color:#4c1d95}.callout-tip .co-icon{color:#7c3aed}.code-sample{margin:1.6rem 0 2rem}.cs-caption{font-size:.87rem;font-weight:700;color:var(--blog-muted);margin-bottom:.55rem}.cs{border-radius:12px;overflow:hidden;border:1px solid #1e293b}.cs-radio{position:absolute;opacity:0;pointer-events:none}.cs-bar{display:flex;flex-wrap:wrap;background:#1e293b;padding:0 4px}.cs-tab{padding:9px 15px;font-size:.83rem;font-weight:700;color:#94a3b8;cursor:pointer;border-bottom:2px solid transparent;transition:color .12s ease,border-color .12s ease;user-select:none;margin-bottom:0}.cs-tab:hover{color:#e2e8f0}.cs-panels>.cs-panel{display:none;position:relative;background:var(--blog-code-bg)}.cs>.cs-radio:nth-of-type(1):checked~.cs-bar>.cs-tab:nth-child(1),.cs>.cs-radio:nth-of-type(2):checked~.cs-bar>.cs-tab:nth-child(2),.cs>.cs-radio:nth-of-type(3):checked~.cs-bar>.cs-tab:nth-child(3),.cs>.cs-radio:nth-of-type(4):checked~.cs-bar>.cs-tab:nth-child(4),.cs>.cs-radio:nth-of-type(5):checked~.cs-bar>.cs-tab:nth-child(5),.cs>.cs-radio:nth-of-type(6):checked~.cs-bar>.cs-tab:nth-child(6),.cs>.cs-radio:nth-of-type(7):checked~.cs-bar>.cs-tab:nth-child(7),.cs>.cs-radio:nth-of-type(8):checked~.cs-bar>.cs-tab:nth-child(8){color:#fff;border-bottom-color:#38bdf8}.cs>.cs-radio:nth-of-type(1):checked~.cs-panels>.cs-panel:nth-child(1),.cs>.cs-radio:nth-of-type(2):checked~.cs-panels>.cs-panel:nth-child(2),.cs>.cs-radio:nth-of-type(3):checked~.cs-panels>.cs-panel:nth-child(3),.cs>.cs-radio:nth-of-type(4):checked~.cs-panels>.cs-panel:nth-child(4),.cs>.cs-radio:nth-of-type(5):checked~.cs-panels>.cs-panel:nth-child(5),.cs>.cs-radio:nth-of-type(6):checked~.cs-panels>.cs-panel:nth-child(6),.cs>.cs-radio:nth-of-type(7):checked~.cs-panels>.cs-panel:nth-child(7),.cs>.cs-radio:nth-of-type(8):checked~.cs-panels>.cs-panel:nth-child(8){display:block}.cs-pre{margin:0;padding:1.1rem 1.2rem;overflow-x:auto;background:var(--blog-code-bg)}.cs-code{font-family:"JetBrains Mono","Cascadia Code",Consolas,monospace;font-size:.86rem;line-height:1.6;color:#e2e8f0;white-space:pre}.cs-repo{margin:.7rem 0 0;font-size:.87rem;color:var(--blog-muted);line-height:1.55}.cs-repo a{color:var(--blog-accent);font-weight:600}.blog-copy{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:7px;border:1px solid #334155;background:rgba(30,41,59,.9);color:#94a3b8;font-size:.76rem;font-weight:600;cursor:pointer;opacity:0;transition:opacity .15s ease,color .15s ease}.cs-panel:hover .blog-copy,.ba-cta-code:hover .blog-copy,.blog-copy:focus-visible{opacity:1}.blog-copy:hover{color:#fff;border-color:#38bdf8}.blog-copy.is-copied{opacity:1;color:#4ade80;border-color:#4ade80}.faq-block{margin-top:2.4rem}.faq-item{border:1px solid var(--blog-line);border-radius:12px;margin-bottom:.7rem;background:#fff;overflow:hidden}.faq-item[open]{border-color:var(--blog-accent)}.faq-q{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:1rem 1.2rem;cursor:pointer;font-weight:700;font-size:1rem;line-height:1.45;list-style:none}.faq-q::-webkit-details-marker{display:none}.faq-q:hover{color:var(--blog-accent)}.faq-chevron{flex-shrink:0;color:var(--blog-muted);transition:transform .18s ease}.faq-item[open] .faq-chevron{transform:rotate(180deg)}.faq-a{padding:0 1.2rem 1.1rem;color:#475569;line-height:1.65}.faq-a p{margin:0}.ba-services{margin-top:3rem}.ba-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:1rem}.ba-service-card{padding:1.1rem 1.2rem;border-radius:14px!important;border:1px solid var(--blog-line)!important;box-shadow:none!important}.ba-service-head{display:flex;align-items:center;gap:10px;margin-bottom:.55rem;color:var(--blog-accent);font-size:1.05rem}.ba-service-name{font-weight:800;font-size:.98rem;color:var(--blog-ink);line-height:1.3}.ba-service-tagline{margin:0 0 .9rem;font-size:.87rem;line-height:1.5;color:var(--blog-muted)}.ba-service-links{display:flex;flex-wrap:wrap;gap:6px}.ba-service-links a{padding:4px 10px;border:1px solid var(--blog-line);border-radius:7px;font-size:.78rem;font-weight:600;color:var(--blog-accent);text-decoration:none;white-space:nowrap}.ba-service-links a:hover{background:var(--blog-accent);border-color:var(--blog-accent);color:#fff}.ba-cta{margin-top:3rem;padding:2rem;border-radius:18px;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:#e2e8f0}.ba-cta-title{margin:0 0 .7rem;font-size:1.35rem;font-weight:800;color:#fff}.ba-cta-text{margin:0 0 1.2rem;font-size:.97rem;line-height:1.65;color:#cbd5e1}.ba-cta-text code{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#7dd3fc}.ba-cta-code{position:relative;margin-bottom:1.4rem;border-radius:10px;border:1px solid #334155;overflow:hidden}.ba-cta-code pre{margin:0;padding:1rem 1.1rem;overflow-x:auto;background:#0b1220}.ba-cta-code code{font-family:"JetBrains Mono","Cascadia Code",Consolas,monospace;font-size:.84rem;line-height:1.55;color:#e2e8f0;white-space:pre}.ba-cta-actions{justify-content:flex-start}.ba-btn{display:inline-flex;align-items:center;gap:9px;padding:11px 20px;border-radius:10px;font-weight:700;font-size:.94rem;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.ba-btn:hover{transform:translateY(-1px)}.ba-btn-primary{background:#06c;color:#fff;box-shadow:0 6px 18px rgba(0,102,204,.3)}.ba-btn-primary:hover{background:#0055ad;color:#fff}.ba-btn-ghost{border:1px solid #475569;color:#e2e8f0}.ba-btn-ghost:hover{border-color:#94a3b8;color:#fff}.bi-cta .ba-btn-ghost{border-color:#cbd5e1;color:#334155}.bi-cta .ba-btn-ghost:hover{border-color:#06c;color:#06c}.ba-share{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--blog-line)}.ba-share-label{font-size:.9rem;color:var(--blog-muted);margin-right:4px}.ba-share-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border:1px solid var(--blog-line);border-radius:999px;font-size:.85rem;font-weight:600;color:var(--blog-ink);text-decoration:none}.ba-share-btn:hover{border-color:var(--blog-accent);color:var(--blog-accent)}.ba-related{margin-top:2.75rem}.ba-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:1rem}.ba-related-card{display:flex;flex-direction:column;gap:.5rem;padding:1.1rem 1.2rem;border:1px solid var(--blog-line);border-top:3px solid var(--blog-accent);border-radius:12px;background:#fff;text-decoration:none;color:var(--blog-ink);transition:transform .15s ease,box-shadow .15s ease}.ba-related-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(15,23,42,.09);color:var(--blog-ink)}.ba-related-icon{font-size:1.3rem;color:var(--blog-accent)}.ba-related-title{font-weight:800;font-size:.97rem;line-height:1.35}.ba-related-lead{font-size:.85rem;line-height:1.5;color:var(--blog-muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ba-related-more{margin-top:auto;padding-top:.5rem;font-size:.83rem;font-weight:700;color:var(--blog-accent)}