:root{color-scheme:light dark;--bg: #fbfaf7;--surface: #ffffff;--surface-2: #f2f0ea;--text: #1c1b17;--muted: #6a675d;--border: #e2dfd6;--accent: #3341c7;--accent-ink: #2a37b0;--accent-soft: #e5e6fb;--win: #17794a;--win-soft: #dceee3;--star: #b8791b;--radius: 12px;--shadow: 0 1px 2px rgba(28, 27, 23, .05), 0 12px 30px -16px rgba(28, 27, 23, .16);--fd: "Newsreader", Georgia, "Times New Roman", serif;--fb: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--fm: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--measure: 68ch}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #141311;--surface: #1c1b18;--surface-2: #24221e;--text: #ece9e2;--muted: #9d9a8f;--border: #322f2a;--accent: #8b93f2;--accent-ink: #a7adf6;--accent-soft: #24264a;--win: #57b487;--win-soft: #1a3328;--star: #d8a44e;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 14px 34px -18px rgba(0, 0, 0, .6)}}:root[data-theme=dark]{--bg: #141311;--surface: #1c1b18;--surface-2: #24221e;--text: #ece9e2;--muted: #9d9a8f;--border: #322f2a;--accent: #8b93f2;--accent-ink: #a7adf6;--accent-soft: #24264a;--win: #57b487;--win-soft: #1a3328;--star: #d8a44e;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 14px 34px -18px rgba(0, 0, 0, .6)}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--fb);font-size:17px;line-height:1.65;letter-spacing:.003em;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:var(--accent-ink);text-underline-offset:2px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.wrap{max-width:780px;margin:0 auto;padding:0 22px}.wrap-wide{max-width:1040px;margin:0 auto;padding:0 22px}.site-header{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 88%,transparent);position:sticky;top:0;backdrop-filter:saturate(140%) blur(8px);z-index:10}.site-header .row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px}.brand{font-family:var(--fd);font-weight:600;font-size:1.32rem;letter-spacing:-.02em;color:var(--text);text-decoration:none}.brand span{color:var(--accent-ink)}.nav{display:flex;gap:20px;font-size:.92rem}.nav a{color:var(--muted);text-decoration:none}.nav a:hover{color:var(--text)}.site-footer{border-top:1px solid var(--border);margin-top:72px;padding:34px 0 60px;color:var(--muted);font-size:.86rem;line-height:1.7}.site-footer a{color:var(--muted)}.site-footer .disc{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:12px 15px;margin-bottom:18px}h1,h2,h3,h4{font-family:var(--fd);font-weight:600;letter-spacing:-.018em;line-height:1.15;text-wrap:balance}.article h1{font-size:clamp(2rem,5vw,2.7rem);margin:0 0 10px}.article h2{font-size:1.6rem;margin:2.2em 0 .5em;padding-top:.4em}.article h3{font-size:1.24rem;margin:1.8em 0 .4em}.article p,.article ul,.article ol{max-width:var(--measure)}.article ul,.article ol{padding-left:1.2em}.article li{margin:.3em 0}.article strong{font-weight:600}.eyebrow{font-family:var(--fm);font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 6px}.meta{font-family:var(--fm);font-size:.78rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:14px;margin:14px 0 0}.answer-box{background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 30%,var(--border));border-radius:var(--radius);padding:18px 20px;margin:28px 0}.answer-box p{margin:0;max-width:none;font-size:1.05rem}.answer-box .label{font-family:var(--fm);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);display:block;margin-bottom:6px}.cmp-scroll{overflow-x:auto;margin:26px 0;border:1px solid var(--border);border-radius:var(--radius)}table.cmp{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}table.cmp th,table.cmp td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}table.cmp thead th{font-family:var(--fm);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:500;background:var(--surface-2)}table.cmp tbody tr:last-child td{border-bottom:none}table.cmp .tool-name{font-weight:600;font-family:var(--fb)}table.cmp .price{font-family:var(--fm);white-space:nowrap;font-variant-numeric:tabular-nums}.badge-win{display:inline-block;font-family:var(--fm);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase;color:var(--win);background:var(--win-soft);border-radius:5px;padding:1px 6px;margin-left:6px;vertical-align:1.5px}.stars{color:var(--star);letter-spacing:1px;font-size:.9rem}.stars small{color:var(--muted);font-family:var(--fm);margin-left:5px}.tool-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin:22px 0}.tool-card header{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 14px}.tool-card h3{margin:0;font-size:1.3rem}.tool-card .rank{font-family:var(--fm);color:var(--muted);font-size:.82rem}.tool-card .best-for{color:var(--muted);font-size:.92rem;margin:8px 0 0}.pc{display:grid;grid-template-columns:1fr 1fr;gap:14px 22px;margin:16px 0 4px}.pc h4{margin:0 0 6px;font-family:var(--fm);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500}.pc ul{margin:0;padding-left:1.1em;font-size:.92rem}.pc .pros h4{color:var(--win)}.pc .cons h4{color:var(--muted)}@media(max-width:520px){.pc{grid-template-columns:1fr}}.cta{display:inline-flex;align-items:center;gap:8px;margin-top:16px;font-family:var(--fb);font-weight:600;font-size:.95rem;text-decoration:none;color:#fff;background:var(--accent);padding:10px 18px;border-radius:9px}.cta:hover{background:var(--accent-ink)}.cta.secondary{color:var(--accent-ink);background:transparent;border:1px solid var(--border)}.faq{margin:34px 0}.faq details{border-bottom:1px solid var(--border);padding:14px 0}.faq summary{cursor:pointer;font-family:var(--fd);font-weight:600;font-size:1.08rem;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:var(--muted);font-family:var(--fm)}.faq details[open] summary:after{content:"–"}.faq details p{margin:10px 0 2px;max-width:none;color:var(--text)}.hero{padding:66px 0 40px}.hero h1{font-size:clamp(2.3rem,6vw,3.7rem);margin:0 0 14px}.hero p{font-size:1.15rem;color:var(--muted);max-width:46ch;margin:0}.list{display:flex;flex-direction:column;gap:2px;margin:20px 0 0}.list a.item{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:20px 16px;border-radius:10px;text-decoration:none;color:inherit;border-bottom:1px solid var(--border)}.list a.item:hover{background:var(--surface-2)}.list .q{font-family:var(--fd);font-weight:600;font-size:1.18rem;letter-spacing:-.01em}.list .sub{color:var(--muted);font-size:.92rem;grid-column:1}.list .tag{font-family:var(--fm);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);align-self:center;white-space:nowrap}.section-label{font-family:var(--fm);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:48px 0 4px;padding-top:20px;border-top:1px solid var(--border)}.prose-narrow{max-width:var(--measure)}.updated-note{font-family:var(--fm);font-size:.8rem;color:var(--muted);border-left:2px solid var(--border);padding-left:12px;margin:30px 0}
