.blog-article{--prose-accent: var(--brand);--prose-accent-dark: var(--brand-dark);--prose-accent-soft: var(--brand-soft);--prose-success: var(--brand);--prose-success-soft: var(--brand-soft);--prose-text: var(--ink);--prose-muted: var(--secondary);--prose-border: #e8ecf0;--prose-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;color:var(--regular);font-size:17px;line-height:1.82}.blog-article :where(p,ul,ol,blockquote,pre,table,figure){margin:0 0 1.15em}.blog-article :where(h2,h3,h4){color:var(--prose-text);font-weight:750;letter-spacing:-.02em}.blog-article a{color:var(--prose-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-color:#f0212159}.blog-article a:hover{color:var(--brand-dark);text-decoration-color:#d40a0a73}.blog-article code{font-family:var(--prose-mono);font-size:.84em;padding:.14em .45em;border-radius:6px;background:#f5f5f5;color:#3d4654}.blog-article strong{color:var(--prose-text);font-weight:700}.blog-article .section{margin-bottom:2.8rem;padding-bottom:.2rem}.blog-article .section+.section{padding-top:.6rem;border-top:none;background:linear-gradient(180deg,transparent 0,transparent .35rem,rgba(232,236,240,.65) .35rem,rgba(232,236,240,.65) calc(.35rem + 1px),transparent calc(.35rem + 1px))}.blog-article .section-title{display:block;margin:0 0 1.1rem;padding:0 0 0 14px;border-bottom:none;border-left:none;background:linear-gradient(90deg,rgba(240,33,33,.55),rgba(240,33,33,.08) 3px,transparent 3px);font-size:1.24rem;line-height:1.4;color:var(--prose-text)}.blog-article .section-title .num{display:none}.blog-article .sub-title{margin:1.4rem 0 .6rem;font-size:1rem;font-weight:700;color:var(--prose-accent-dark)}.blog-article .p{margin-bottom:.9rem;font-size:.98rem;line-height:1.8}.blog-article .card{padding:1.15rem 1.2rem;border:none;border-radius:14px;background:linear-gradient(145deg,#f8fafcf2,#ffffffe0);box-shadow:0 1px 2px #0f172a08,inset 0 1px #ffffffd9}.blog-article .card p{font-size:.98rem}.blog-article .highlight-box,.blog-article .block-quote{padding:.9rem 1rem;border-radius:12px;border:none;background:linear-gradient(135deg,#fff5f5f2,#ffffffe6);box-shadow:inset 3px 0 #f0212173;font-size:.95rem;line-height:1.7}.blog-article .highlight-box.purple,.blog-article .block-quote.purple{background:linear-gradient(135deg,#fff5f5f2,#ffffffe6);box-shadow:inset 3px 0 #f4552866}.blog-article .highlight-box.success,.blog-article .block-quote.success{background:linear-gradient(135deg,#fff5f5f2,#ffffffe6);box-shadow:inset 3px 0 #f0212173}.blog-article .highlight-box.warn,.blog-article .block-quote.gold{background:linear-gradient(135deg,#fffbebf2,#ffffffe6);box-shadow:inset 3px 0 #f59e0b73}.blog-article .block-quote.danger{background:linear-gradient(135deg,#fef2f2f2,#ffffffe6);box-shadow:inset 3px 0 #ef444466}.blog-article .read-guide{padding:1rem 1.1rem;margin-bottom:1.6rem;border:1px solid var(--prose-border);border-radius:12px;background:#f5f5f5;font-size:.92rem;color:var(--prose-muted)}.blog-article .read-guide strong{color:var(--prose-text)}.blog-article .read-guide ol{margin:.5rem 0 0;padding-left:1.2rem}.blog-article .read-guide .hot,.blog-article .em{color:var(--prose-accent-dark);font-weight:650}.blog-article .note,.blog-article .footnote{font-size:.86rem;color:var(--prose-muted);line-height:1.65}.blog-article .note{padding:.75rem .9rem;border-radius:10px;border:1px solid var(--prose-border);background:#fafbfc}.blog-article .pillar-grid,.blog-article .compare-grid,.blog-article .figure-row.two{display:grid;gap:12px;margin:1rem 0}@media(min-width:640px){.blog-article .pillar-grid,.blog-article .compare-grid,.blog-article .figure-row.two{grid-template-columns:1fr 1fr}}.blog-article .pillar-card,.blog-article .compare-card,.blog-article .metric-box{padding:1rem 1.05rem;border:none;border-radius:14px;background:linear-gradient(160deg,#f8fafcfa,#ffffffe6)!important;box-shadow:0 1px 3px #0f172a0a;font-size:.94rem}.blog-article .pillar-card h4,.blog-article .compare-card h4,.blog-article .metric-box h4{margin:0 0 .45rem;font-size:.95rem;color:var(--prose-accent-dark)}.blog-article .compare-card.bad{background:linear-gradient(160deg,#fff5f5f2,#ffffffe6)!important;box-shadow:inset 0 0 0 1px #fecaca73}.blog-article .compare-card.good{background:linear-gradient(160deg,#eaf8eff2,#ffffffe6)!important;box-shadow:inset 0 0 0 1px #b7eb8f73}.blog-article .flow-step{display:flex;gap:10px;align-items:flex-start;margin:.55rem 0;padding:.7rem .85rem;border:1px solid var(--prose-border);border-radius:10px;background:#fafbfc}.blog-article .flow-step .flow-num{flex:none;width:24px;height:24px;border-radius:999px;background:var(--prose-accent);color:#fff;font-size:.72rem;font-weight:700;line-height:24px;text-align:center}.blog-article .flow-box{padding:1rem;border:1px solid var(--prose-border);border-radius:12px;background:linear-gradient(180deg,#f5f5f5,#fff);text-align:center;font-size:.9rem;line-height:1.9}.blog-article ul,.blog-article ol{padding-left:1.25rem}.blog-article li{margin-bottom:.35rem}.blog-article .num-list{list-style:none;padding:0;counter-reset:item}.blog-article .num-list li{position:relative;padding:.85rem .9rem .85rem 3rem;margin-bottom:.55rem;border:1px solid var(--prose-border);border-radius:10px;background:#fafbfc;counter-increment:item}.blog-article .num-list li:before{content:counter(item);position:absolute;left:12px;top:14px;width:24px;height:24px;border-radius:8px;background:var(--prose-accent);color:#fff;font-size:.72rem;font-weight:700;line-height:24px;text-align:center}.blog-article .sep{display:flex;align-items:center;gap:12px;margin:1.6rem 0;color:var(--prose-muted);font-size:.75rem}.blog-article .sep:before,.blog-article .sep:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--prose-border),transparent)}.blog-article .summary-table,.blog-article .vs-table,.blog-article .kv{width:100%;border-collapse:collapse;font-size:.9rem;line-height:1.55}.blog-article .summary-table th,.blog-article .summary-table td,.blog-article .vs-table th,.blog-article .vs-table td,.blog-article .kv td{padding:.65rem .75rem;border:1px solid var(--prose-border);vertical-align:top}.blog-article .summary-table th,.blog-article .vs-table th{background:var(--prose-accent-soft);color:var(--prose-accent-dark);font-weight:650;text-align:left}.blog-article .vs-table td.win{color:var(--prose-success);font-weight:650}.blog-article .table-wrap,.blog-article .compare-wrap{overflow-x:auto;margin:1rem 0;border:1px solid var(--prose-border);border-radius:12px;-webkit-overflow-scrolling:touch}.blog-article .compare-table{width:100%;min-width:620px;border-collapse:collapse;font-size:.78rem;line-height:1.5}.blog-article .compare-table th,.blog-article .compare-table td{padding:.65rem .55rem;border:1px solid #f0f2f5;vertical-align:top}.blog-article .compare-table thead th.col-db{color:var(--prose-accent-dark);border-top:3px solid var(--prose-accent)}.blog-article .compare-table td.col-db{background:var(--brand-soft)}.blog-article .stars{color:#f5a623;letter-spacing:1px}.blog-article .star-legend,.blog-article .scroll-hint{font-size:.78rem;color:var(--prose-muted)}.blog-article .star-legend{display:flex;flex-wrap:wrap;gap:6px 12px;padding:.65rem .8rem;margin-bottom:.75rem;border:1px solid var(--prose-border);border-radius:10px;background:#fafbfc}.blog-article .img-figure,.blog-article .figure{margin:1.2rem 0 1.4rem;text-align:center}.blog-article .img-figure img,.blog-article .figure img{width:100%;border-radius:12px;border:1px solid var(--prose-border);box-shadow:var(--shadow)}.blog-article .img-figure figcaption,.blog-article .figure figcaption{margin-top:.55rem;font-size:.8rem;color:var(--prose-muted);line-height:1.55}.blog-article .code-block,.blog-article pre{overflow-x:auto;margin:1rem 0;padding:.9rem 1rem;border-radius:12px;background:#1e2430;color:#e6edf7;font-family:var(--prose-mono);font-size:.82rem;line-height:1.55}.blog-article pre code{background:transparent;padding:0;border-radius:0;color:inherit;font-size:inherit;font-weight:inherit}.blog-article .release-note-body{margin:0;border:none;overflow:visible}.blog-article .release-lead{margin:0 0 1.15em;font-size:.98rem;line-height:1.8}.blog-article .figure .caption{margin-top:.55rem;font-size:.8rem;color:var(--prose-muted);line-height:1.55;text-align:center}.blog-article .cta-box,.blog-article .cta-block{display:none}.blog-article .interact{padding:1rem;border:1px solid #fde68a;border-radius:12px;background:#fffbeb;font-size:.92rem}.blog-article .interact h4{margin:0 0 .45rem;color:#b45309;font-size:.95rem}.blog-article .tag{display:inline-flex;align-items:center;padding:.15rem .55rem;margin-right:.35rem;border-radius:999px;font-size:.76rem;font-weight:650}.blog-article .tag-blue,.blog-article .tag-green,.blog-article .tag-purple{background:var(--brand-soft);color:var(--brand-dark)}@media(max-width:720px){.blog-article{font-size:15px}.blog-article .section-title{font-size:1.12rem}}.blog-article .write-perf-report{--wpr-primary: #0d9488;--wpr-db: #1d4ed8;--wpr-sw: #0f766e;--wpr-border: #e2e8f0;--wpr-muted: #64748b;--wpr-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;margin:0;border:none;overflow:visible}.blog-article .write-perf-report.compare-wrap{margin:0;border:none;overflow:visible}.blog-article .write-perf-meta,.blog-article .write-perf-lead{margin:0 0 1.35rem!important;padding:.75rem .95rem;border-radius:10px;background:#f8fafc;border:1px solid var(--wpr-border, #e2e8f0);font-size:.88rem;color:var(--wpr-muted, var(--secondary));line-height:1.65}.blog-article .write-perf-meta strong,.blog-article .write-perf-lead strong{color:var(--prose-text)}.blog-article .write-perf-report .kicker{font-size:1.02rem;font-weight:700;color:var(--wpr-primary);margin:1.75rem 0 .75rem}.blog-article .write-perf-report .kicker:first-of-type{margin-top:0}.blog-article .write-perf-report .card{background:#fff;border:1px solid var(--wpr-border);border-radius:12px;padding:1rem 1.1rem;margin-bottom:.9rem;overflow-x:auto;-webkit-overflow-scrolling:touch}.blog-article .write-perf-report table{width:100%;border-collapse:collapse;font-size:.88rem}.blog-article .write-perf-report th,.blog-article .write-perf-report td{padding:.55rem .65rem;border:1px solid var(--wpr-border);text-align:left;vertical-align:top}.blog-article .write-perf-report th{background:#f0fdfa;font-weight:600;color:var(--secondary)}.blog-article .write-perf-report td.n,.blog-article .write-perf-report th.n{text-align:right;font-family:var(--wpr-mono);white-space:nowrap}.blog-article .write-perf-report td.name{font-weight:600}.blog-article .write-perf-report td.cmp{font-size:.84rem;color:var(--secondary)}.blog-article .write-perf-report .kpis{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-bottom:.9rem}.blog-article .write-perf-report .kpis--three{grid-template-columns:repeat(3,minmax(0,1fr))}.blog-article .write-perf-report .kpi{background:#fff;border:1px solid var(--wpr-border);border-radius:12px;padding:.9rem 1rem;text-align:center}.blog-article .write-perf-report .kpi .label{font-size:.82rem;color:var(--wpr-muted);font-weight:600}.blog-article .write-perf-report .kpi .value-row{margin-top:.45rem;display:flex;align-items:baseline;justify-content:center;gap:.35rem;flex-wrap:nowrap}.blog-article .write-perf-report .kpi .value{font-family:var(--wpr-mono);font-size:1.65rem;font-weight:700;color:#047857;line-height:1}.blog-article .write-perf-report .kpi .value.db{color:var(--wpr-db)}.blog-article .write-perf-report .kpi .value.sw{color:var(--wpr-sw)}.blog-article .write-perf-report .kpi .unit{font-family:var(--wpr-mono);font-size:.78rem;font-weight:700;color:var(--wpr-db);background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:.1rem .45rem}.blog-article .write-perf-report .kpi .unit.db{color:var(--wpr-db);background:#eff6ff;border-color:#bfdbfe}.blog-article .write-perf-report .kpi .unit.sw{color:var(--wpr-sw);background:#ccfbf1;border-color:#99f6e4}.blog-article .write-perf-report .kpi .hint{margin-top:.35rem;font-size:.76rem;color:var(--wpr-muted)}.blog-article .write-perf-report .spec{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.65rem}.blog-article .write-perf-report .spec-item{background:#f8fafc;border-radius:8px;padding:.65rem .75rem}.blog-article .write-perf-report .spec-item .k{font-size:.74rem;color:var(--wpr-muted);margin-bottom:.15rem}.blog-article .write-perf-report .spec-item .v{font-size:1rem;font-weight:700;font-family:var(--wpr-mono)}.blog-article .write-perf-report .unit-mark{display:inline-block;padding:.05rem .45rem;border-radius:6px;font-family:var(--wpr-mono);font-weight:800;font-size:.8rem}.blog-article .write-perf-report .unit-mark.db{background:#dbeafe;color:var(--wpr-db)}.blog-article .write-perf-report .unit-mark.sw{background:#ccfbf1;color:var(--wpr-sw)}.blog-article .write-perf-report .note{font-size:.78rem;color:var(--wpr-muted);margin-top:.55rem!important;margin-bottom:0!important}.blog-article .write-perf-report .chart-wrap{position:relative;height:260px}.blog-article .write-perf-report .chart-wrap.sm{height:200px;margin-top:.75rem}.blog-article .write-perf-report .grid2{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.blog-article .write-perf-source{margin-top:1.5rem!important;font-size:.88rem;color:var(--secondary)}@media(max-width:720px){.blog-article .write-perf-report .kpis,.blog-article .write-perf-report .kpis--three,.blog-article .write-perf-report .spec,.blog-article .write-perf-report .grid2{grid-template-columns:1fr}.blog-article .write-perf-report .kpi .value{font-size:1.35rem}}
