.tool-card[data-astro-cid-xd24uzt5]{background:var(--color-bg);border:1px solid var(--color-border);border-top:3px solid var(--accent);padding:var(--space-5) var(--space-5) var(--space-6);border-radius:14px;box-shadow:0 4px 18px #0f172a0f}.tool-card-eyebrow[data-astro-cid-xd24uzt5]{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-3);font-size:11px;font-weight:700;display:inline-block}.tool-card-head[data-astro-cid-xd24uzt5]{margin-bottom:var(--space-2);align-items:center;gap:10px;display:flex}.tool-card-icon[data-astro-cid-xd24uzt5]{background:color-mix(in srgb, var(--accent) 12%, transparent);width:38px;height:38px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.tool-card-name[data-astro-cid-xd24uzt5]{color:var(--color-text);font-size:15px;font-weight:700;line-height:1.2}.tool-card-free[data-astro-cid-xd24uzt5]{letter-spacing:.01em;color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:var(--radius-full);margin:var(--space-3) 0 var(--space-3);padding:3px 10px;font-size:11px;font-weight:700;display:inline-block}.tool-card-tagline[data-astro-cid-xd24uzt5]{color:var(--color-text-secondary);margin:0 0 var(--space-4);font-size:13px;line-height:1.5}.tool-card-stat[data-astro-cid-xd24uzt5]{padding:var(--space-4);background:color-mix(in srgb, var(--accent) 7%, transparent);margin-bottom:var(--space-4);border-radius:10px;flex-direction:column;gap:2px;display:flex}.tool-card-stat-value[data-astro-cid-xd24uzt5]{letter-spacing:-.02em;color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.9rem;font-weight:800;line-height:1}.tool-card-stat-label[data-astro-cid-xd24uzt5]{color:var(--color-text-secondary);font-size:12.5px;line-height:1.45}.tool-card-bullets[data-astro-cid-xd24uzt5]{margin:0 0 var(--space-5);flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.tool-card-bullets[data-astro-cid-xd24uzt5] li[data-astro-cid-xd24uzt5]{color:var(--color-text-secondary);align-items:flex-start;gap:8px;font-size:13px;line-height:1.45;display:flex}.tool-card-bullets[data-astro-cid-xd24uzt5] svg[data-astro-cid-xd24uzt5]{color:var(--accent);flex-shrink:0;margin-top:2px}.tool-card-actions[data-astro-cid-xd24uzt5]{gap:var(--space-3);flex-direction:column;align-items:stretch;display:flex}.tool-card-btn[data-astro-cid-xd24uzt5]{background:var(--accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;height:44px;font-size:14.5px;font-weight:600;text-decoration:none;transition:filter .14s;display:flex}.tool-card-btn[data-astro-cid-xd24uzt5]:hover{filter:brightness(.92)}.tool-card-link[data-astro-cid-xd24uzt5]{text-align:center;color:var(--accent);font-size:13.5px;font-weight:600;text-decoration:none}.tool-card-link[data-astro-cid-xd24uzt5]:hover{text-decoration:underline}.blog-post{background:var(--color-bg)}.bp-wrap{max-width:1180px;padding:var(--space-8) var(--space-6) var(--space-12);margin-inline:auto}#bp-progress{background:linear-gradient(90deg, var(--color-primary), #7c3aed);z-index:200;pointer-events:none;width:0%;height:3px;position:fixed;top:0;left:0}.bp-crumbs ol{margin:0 0 var(--space-6);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:8px;padding:0;font-size:13px;list-style:none;display:flex}.bp-crumbs a{color:var(--color-text-secondary);font-weight:var(--weight-medium);text-decoration:none}.bp-crumbs a:hover{color:var(--color-primary)}.bp-grid{display:block}.bp-article{min-width:0;max-width:720px;margin-inline:auto}@media (width>=1024px){.bp-grid{grid-template-columns:minmax(0,1fr) clamp(248px,23vw,332px);align-items:start;gap:clamp(1.75rem,3.2vw,3rem);display:grid}.bp-article{max-width:none;margin:0}}.bp-cat{font-size:12px;font-weight:var(--weight-bold);letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb, var(--accent) 11%, transparent);border-radius:var(--radius-full);margin-bottom:var(--space-4);padding:4px 11px;text-decoration:none;display:inline-block}.bp-cat:hover{background:color-mix(in srgb, var(--accent) 18%, transparent)}.bp-head h1{font-size:2.5rem;font-weight:var(--weight-bold);letter-spacing:-.03em;color:var(--color-text);margin:0 0 var(--space-4);line-height:1.12}.bp-dek{color:var(--color-text-secondary);margin:0 0 var(--space-6);max-width:65ch;font-size:1.2rem;line-height:1.55}.bp-byline{align-items:center;gap:var(--space-3);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border);display:flex}.bp-avatar,.bp-author-avatar{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;width:42px;height:42px;font-size:14px;font-weight:var(--weight-bold);letter-spacing:-.02em;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.bp-byline-text{flex-direction:column;gap:2px;display:flex}.bp-byline-author{color:var(--color-text);font-size:14px;font-weight:var(--weight-semibold)}.bp-byline-author a{color:var(--color-text);text-decoration:none}.bp-byline-author a:hover{color:var(--color-primary)}.bp-byline-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:13px;display:flex}.bp-tool-mobile{margin:var(--space-6) 0}@media (width>=1024px){.bp-tool-mobile{display:none}}.bp-toc{background:var(--color-bg-raised);border:1px solid var(--color-border);padding:0 var(--space-5);margin:var(--space-6) 0;border-radius:12px}.bp-toc summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;cursor:pointer;font-size:13px;font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary);list-style:none;display:flex}.bp-toc summary::-webkit-details-marker{display:none}.bp-toc-chevron{color:var(--color-text-muted);transition:transform .18s;display:inline-flex}.bp-toc[open] .bp-toc-chevron{transform:rotate(180deg)}.bp-toc ol{padding:0 0 var(--space-4);flex-direction:column;gap:8px;margin:0;list-style:none;display:flex}.bp-toc a{color:var(--color-text-secondary);font-size:14px;line-height:1.4;text-decoration:none}.bp-toc a:hover{color:var(--color-primary);text-decoration:underline}.bp-prose{color:#2b3340;font-size:1.075rem;line-height:1.78}.bp-prose>*{scroll-margin-top:90px}.bp-prose h2{font-size:1.55rem;font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--color-text);margin:var(--space-12) 0 var(--space-4);line-height:1.28}.bp-prose h3{font-size:1.2rem;font-weight:var(--weight-bold);color:var(--color-text);margin:var(--space-6) 0 var(--space-3)}.bp-prose p{margin:0 0 var(--space-5)}.bp-prose a{color:var(--color-primary);text-underline-offset:2px;font-weight:var(--weight-medium);text-decoration:underline}.bp-prose a:hover{color:var(--color-primary-hover)}.bp-prose ul,.bp-prose ol{margin:0 0 var(--space-5);padding-left:var(--space-6);flex-direction:column;gap:8px;display:flex}.bp-prose li{line-height:1.7}.bp-prose strong{color:var(--color-text);font-weight:var(--weight-semibold)}.bp-prose blockquote{margin:var(--space-6) 0;padding:var(--space-2) var(--space-6);border-left:3px solid var(--color-primary);background:var(--color-primary-muted);color:var(--color-text);border-radius:0 10px 10px 0;font-style:italic}.bp-prose code{font-family:var(--font-mono);background:var(--color-bg-surface);color:var(--color-text);border-radius:6px;padding:2px 6px;font-size:.875em}.bp-prose pre{color:#e2e8f0;padding:var(--space-5);margin:0 0 var(--space-6);background:#0f172a;border-radius:12px;overflow-x:auto}.bp-prose pre code{color:inherit;background:0 0;padding:0;font-size:13px;line-height:1.7}.bp-prose table{border-collapse:collapse;width:100%;margin:0 0 var(--space-6);font-size:.95rem}.bp-prose th,.bp-prose td{text-align:left;border:1px solid var(--color-border);padding:10px 14px}.bp-prose th{background:var(--color-bg-raised);color:var(--color-text);font-weight:var(--weight-semibold)}.bp-section-h{font-size:1.5rem;font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--color-text);margin:0 0 var(--space-5)}.bp-disclosure{margin:var(--space-6) 0;padding:var(--space-4) var(--space-5);background:color-mix(in srgb, var(--color-primary) 6%, transparent);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:0 10px 10px 0;flex-direction:column;gap:4px;display:flex}.bp-disclosure-label{font-size:11px;font-weight:var(--weight-bold);letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary)}.bp-disclosure p{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.6}.bp-product-disclosure{margin:var(--space-8) 0 0;padding:var(--space-3) var(--space-4);color:var(--color-text-muted);background:var(--color-bg-raised);border:1px solid var(--color-border-subtle);border-radius:10px;font-size:13px;line-height:1.55}.bp-sources{margin-top:var(--space-10)}.bp-sources-list{padding-left:var(--space-6);gap:var(--space-3);flex-direction:column;margin:0;display:flex}.bp-sources-list li{color:var(--color-text-secondary);font-size:15px;line-height:1.6}.bp-sources-list a{color:var(--color-primary);text-underline-offset:2px;font-weight:var(--weight-medium);text-decoration:underline}.bp-source-note{color:var(--color-text-muted)}.bp-sources-accessed{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:13px}.bp-takeaways{margin-top:var(--space-10);background:var(--color-bg-raised);border:1px solid var(--color-border);padding:var(--space-6) var(--space-8);border-radius:14px}.bp-takeaways h2{font-size:1.1rem;font-weight:var(--weight-bold);color:var(--color-text);margin:0 0 var(--space-4)}.bp-takeaways ul{padding-left:var(--space-5);gap:var(--space-3);flex-direction:column;margin:0;display:flex}.bp-takeaways li{color:var(--color-text-secondary);font-size:15px;line-height:1.6}.bp-faq{margin-top:var(--space-10)}.bp-faq-list{border:1px solid var(--color-border);padding:0 var(--space-6);border-radius:14px}.bp-faq-item{border-bottom:1px solid var(--color-border-subtle)}.bp-faq-item:last-child{border-bottom:none}.bp-faq-item summary{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) 0;cursor:pointer;font-size:15.5px;font-weight:var(--weight-semibold);color:var(--color-text);list-style:none;display:flex}.bp-faq-item summary::-webkit-details-marker{display:none}.bp-faq-item summary:hover{color:var(--color-primary)}.bp-faq-chevron{color:var(--color-text-muted);flex-shrink:0;transition:transform .18s;display:inline-flex}.bp-faq-item[open] .bp-faq-chevron{transform:rotate(180deg)}.bp-faq-item p{padding:0 0 var(--space-5);color:var(--color-text-secondary);margin:0;font-size:15px;line-height:1.7}.bp-keepreading{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--color-border)}.bp-keepreading-title{font-size:12px;font-weight:var(--weight-bold);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3);display:block}.bp-keepreading ul{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bp-keepreading a{color:var(--color-primary);font-weight:var(--weight-semibold);font-size:15px;text-decoration:none}.bp-keepreading a:hover{text-decoration:underline}.bp-author{gap:var(--space-4);margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--color-border);display:flex}.bp-author>div{flex-direction:column;gap:2px;display:flex}.bp-author-name{font-size:15px;font-weight:var(--weight-bold);color:var(--color-text);text-decoration:none}.bp-author-name:hover{color:var(--color-primary)}.bp-author-title{color:var(--color-text-muted);font-size:13px}.bp-author-bio{color:var(--color-text-secondary);margin:var(--space-2) 0 0;font-size:14px;line-height:1.65}.bp-pn{gap:var(--space-4);margin-top:var(--space-10);grid-template-columns:1fr 1fr;display:grid}.bp-pn-card{padding:var(--space-4) var(--space-5);border:1px solid var(--color-border);border-radius:12px;flex-direction:column;gap:6px;text-decoration:none;transition:border-color .16s,background .16s;display:flex}.bp-pn-card:hover{border-color:var(--color-primary);background:var(--color-primary-muted)}.bp-pn-next{text-align:right;align-items:flex-end}.bp-pn-label{font-size:12px;font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);align-items:center;gap:6px;display:inline-flex}.bp-pn-title{font-size:14.5px;font-weight:var(--weight-semibold);color:var(--color-text);line-height:1.35}.bp-pn-card:hover .bp-pn-title{color:var(--color-primary)}@media (width<=640px){.bp-pn{grid-template-columns:1fr}.bp-pn-next{text-align:left;align-items:flex-start}}.bp-side{display:none}@media (width>=1024px){.bp-side{align-self:start;display:block;position:sticky;top:88px}}.bp-side-sticky{gap:var(--space-5);flex-direction:column;display:flex}.bp-inline-sub{align-items:center;gap:var(--space-4);margin:var(--space-8) 0;padding:var(--space-4) var(--space-5);background:var(--color-bg-raised);border:1px solid var(--color-border);border-radius:12px;flex-wrap:wrap;display:flex}.bp-inline-sub-icon{color:var(--color-text-muted);flex-shrink:0;display:inline-flex}.bp-inline-sub-text{color:var(--color-text-secondary);flex:220px;font-size:14px;line-height:1.45}.bp-inline-sub a.bp-inline-sub-link{font-size:13.5px;font-weight:var(--weight-semibold);color:var(--color-primary);white-space:nowrap;border:1px solid var(--color-border-strong);border-radius:8px;flex-shrink:0;padding:8px 16px;text-decoration:none}.bp-inline-sub a.bp-inline-sub-link:hover{border-color:var(--color-primary);background:var(--color-primary-muted)}.bp-related{background:var(--color-bg-raised);border-top:1px solid var(--color-border-subtle);padding-block:var(--space-16)}.bp-related-inner{max-width:1180px;padding-inline:var(--space-6);margin-inline:auto}.bp-related-inner>h2{font-size:1.5rem;font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--color-text);margin:0 0 var(--space-6)}.bp-related-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.bp-related .bpc{background:var(--color-bg)}@media (width<=1024px){.bp-related-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.bp-head h1{font-size:2rem}.bp-dek{font-size:1.08rem}.bp-prose{font-size:1.02rem}.bp-prose h2{font-size:1.35rem}}@media (width<=640px){.bp-wrap{padding:var(--space-6) var(--space-5) var(--space-10)}.bp-related-grid{grid-template-columns:1fr;max-width:420px}.bp-takeaways{padding:var(--space-5)}}
