:root{--bg:#f6f2e9;--bg-deep:#efe9dc;--surface:#fffdf8;--ink:#1b1730;--ink-soft:#3d3757;--muted:#6f6885;--line:#ded6c6;--line-strong:#c9bfa9;--violet:#5b4bdb;--violet-deep:#3b2fa8;--violet-soft:#ece8ff;--lime:#d9f36a;--lime-soft:#f1f9cf;--coral:#ff7a59;--coral-soft:#ffe6de;--blue:#2f7df6;--green:#1e8a5f;--radius-sm:12px;--radius:18px;--radius-lg:28px;--shadow:0 22px 50px -32px #1b173073;--shadow-soft:0 12px 30px -22px #1b173059;--font-display:Georgia, "Times New Roman", "PT Serif", serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "Cascadia Code", "Segoe UI Mono", Consolas, monospace;--container:1180px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}body:before{content:"";z-index:-1;pointer-events:none;background-image:radial-gradient(#1b17300e 1px,#0000 1px);background-size:26px 26px;position:fixed;inset:0}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0 0 .5em;font-weight:700;line-height:1.08}p{text-wrap:pretty;margin:0 0 1em}a{color:var(--violet-deep);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--violet)}img,svg{max-width:100%;height:auto}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:4px}::selection{background:var(--lime);color:var(--ink)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(16px,4vw,32px)}.skip-link{z-index:100;background:var(--ink);color:var(--surface);border-radius:8px;padding:10px 16px;text-decoration:none;transition:top .2s;position:absolute;top:-60px;left:12px}.skip-link:focus{color:var(--surface);top:12px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.site-header{z-index:40;backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#f6f2e9e0;position:sticky;top:0}.site-header__inner{align-items:center;gap:24px;min-height:74px;display:flex}.brand{color:var(--ink);flex:none;align-items:center;gap:11px;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand__mark{background:var(--violet);width:40px;height:40px;color:var(--surface);font-family:var(--font-display);border-radius:13px;place-items:center;font-size:24px;font-weight:700;line-height:1;display:grid;position:relative;box-shadow:0 6px #3b2fa840}.brand__mark:after{content:"";background:var(--lime);border:2px solid var(--bg);border-radius:50%;width:12px;height:12px;position:absolute;top:-4px;right:-4px}.brand__text{flex-direction:column;gap:6px;line-height:1.05;display:flex}.brand__name{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-weight:700}.brand__tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:9px}.site-nav{align-items:center;gap:6px;margin-left:auto;display:flex}.site-nav a{color:var(--ink-soft);border-radius:999px;padding:8px 13px;font-size:15px;font-weight:500;text-decoration:none;transition:background .18s,color .18s;display:inline-block}.site-nav a:hover{color:var(--violet-deep);background:#5b4bdb17}.site-nav a[aria-current=page]{background:var(--ink);color:var(--surface)}.site-footer{border-top:1px solid var(--line);background:var(--bg-deep);margin-top:clamp(56px,8vw,96px)}.site-footer__inner{grid-template-columns:minmax(0,1.6fr) repeat(2,minmax(0,1fr));gap:36px;padding-block:46px 30px;display:grid}.site-footer__about p{max-width:42ch;color:var(--muted);margin:14px 0 0;font-size:15px}.site-footer h2{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-size:11px}.site-footer ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:var(--ink-soft);font-size:15px;text-decoration:none}.site-footer a:hover{color:var(--violet);text-decoration:underline}.site-footer__bottom{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-block:18px 26px;font-size:13px;display:flex}.site-footer__bottom p{margin:0}.eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--violet-deep);align-items:center;gap:9px;margin:0 0 18px;font-size:11px;display:inline-flex}.eyebrow:before{content:"";background:var(--violet);width:22px;height:2px}.btn{background:var(--ink);color:var(--surface);cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:13px 22px;font-size:15px;font-weight:600;line-height:1.2;text-decoration:none;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.btn:hover{color:var(--surface);transform:translateY(-2px);box-shadow:0 10px 22px -14px #1b1730b3}.btn--accent{background:var(--violet);color:#fff}.btn--accent:hover{background:var(--violet-deep)}.btn--ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{background:var(--surface);color:var(--ink)}.btn[disabled],.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.rating{background:var(--lime);color:var(--ink);font-family:var(--font-mono);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.rating:before{content:"★";font-size:11px;transform:translateY(-.5px)}.tool-logo{color:#fff;width:48px;height:48px;font-family:var(--font-display);background:var(--logo-color,var(--violet));border-radius:50%;flex:none;place-items:center;font-size:23px;font-weight:700;line-height:1;display:inline-grid;box-shadow:inset 0 -3px #0000001f}.tool-logo--lg{border-radius:50%;width:76px;height:76px;font-size:36px}.tag{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;line-height:1.4;display:inline-flex}.tag--on{background:var(--lime-soft);color:#41520a;border-color:#d5e99a}.tag--off{color:var(--muted);background:0 0}.breadcrumbs{color:var(--muted);padding-top:22px;font-size:13px}.breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs li{align-items:center;gap:8px;display:inline-flex}.breadcrumbs li+li:before{content:"/";color:var(--line-strong)}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--violet);text-decoration:underline}.breadcrumbs [aria-current=page]{color:var(--ink-soft)}.hero{padding:clamp(40px,7vw,84px) 0 clamp(28px,4vw,46px)}.hero__grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:clamp(30px,5vw,64px);display:grid}.hero h1{margin-bottom:22px;font-size:clamp(2.35rem,4.9vw,3.9rem)}.hero h1 em{color:var(--violet);text-decoration:underline;text-decoration-color:var(--lime);text-underline-offset:.04em;text-decoration-skip-ink:none;font-style:italic;text-decoration-thickness:.14em}.hero__lead{max-width:58ch;color:var(--ink-soft);margin-bottom:28px;font-size:clamp(17px,2vw,20px)}.hero__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.hero__note{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);margin:20px 0 0;font-size:11.5px}.quiz-mock{border-radius:var(--radius-lg);background:var(--violet);color:#fff;isolation:isolate;padding:22px;position:relative;transform:rotate(1.5deg);box-shadow:0 30px 60px -34px #3b2fa8bf}.quiz-mock:before{content:"";border-radius:var(--radius-lg);z-index:-1;border:2px dashed #ffffff59;position:absolute;inset:10px -10px -10px 10px}.quiz-mock__bar{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:#ffffffb3;justify-content:space-between;align-items:center;margin-bottom:22px;font-size:10.5px;display:flex}.quiz-mock__progress{background:#ffffff38;border-radius:999px;height:4px;margin-bottom:22px;overflow:hidden}.quiz-mock__progress span{background:var(--lime);border-radius:inherit;width:62%;height:100%;display:block}.quiz-mock h2{color:#fff;margin-bottom:18px;font-size:clamp(22px,3vw,28px)}.quiz-mock__options{gap:9px;margin-bottom:20px;display:grid}.quiz-mock__option{background:#ffffff14;border:1px solid #ffffff4d;border-radius:12px;align-items:center;gap:10px;padding:11px 14px;font-size:14px;line-height:1.35;display:flex}.quiz-mock__option--active{background:var(--surface);color:var(--ink);border-color:var(--surface);font-weight:600}.quiz-mock__option i{border:1.5px solid;border-radius:50%;flex:none;place-items:center;width:16px;height:16px;font-size:9px;font-style:normal;display:grid}.quiz-mock__option--active i{border-color:var(--violet);background:var(--violet);color:#fff}.quiz-mock__footer{color:#ffffffb8;justify-content:space-between;align-items:center;font-size:12px;display:flex}.quiz-mock__badge{background:var(--lime);color:var(--ink);font-family:var(--font-mono);border-radius:999px;padding:5px 12px;font-size:11px;font-weight:700}.stats{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stats__item{flex-direction:column-reverse;gap:3px;padding:20px clamp(10px,2vw,24px);display:flex}.stats__item+.stats__item{border-left:1px solid var(--line)}.stats__num{font-family:var(--font-display);font-size:clamp(28px,3.4vw,40px);font-weight:700;line-height:1}.stats__label{color:var(--muted);font-size:12.5px;line-height:1.35}.section{padding:clamp(42px,6vw,72px) 0 0}.section__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px 32px;margin-bottom:26px;display:flex}.section__head h2{margin-bottom:.25em;font-size:clamp(1.8rem,3.5vw,2.8rem)}.section__head p{max-width:62ch;color:var(--muted);margin:0;font-size:16px}.section__link{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid;padding-bottom:2px;font-size:12px;text-decoration:none}.filters{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);margin-bottom:26px;padding:clamp(16px,2.4vw,24px)}.filters__grid{grid-template-columns:minmax(0,1fr) minmax(180px,240px) minmax(170px,220px);align-items:start;gap:20px 28px;display:grid}.filters fieldset{border:0;min-width:0;margin:0;padding:0}.filters legend,.filters__label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:10.5px;display:block}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{position:relative}.chip input{opacity:0;width:1px;height:1px;position:absolute}.chip span{border:1px solid var(--line);background:var(--surface);cursor:pointer;user-select:none;border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-size:14px;line-height:1.3;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.chip span:before{content:"";border:1.5px solid var(--line-strong);border-radius:5px;flex:none;width:15px;height:15px;transition:background .16s,border-color .16s;display:inline-block}.chip span:hover{border-color:var(--violet)}.chip input:checked+span{background:var(--violet-soft);border-color:var(--violet);color:var(--violet-deep);font-weight:600}.chip input:checked+span:before{background:var(--violet);border-color:var(--violet);box-shadow:inset 0 0 0 3px var(--violet-soft)}.chip input:focus-visible+span{outline:3px solid var(--violet);outline-offset:2px}.filters__select{appearance:none;border:1px solid var(--line);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236f6885' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 13px center;cursor:pointer;border-radius:10px;width:100%;padding:10px 36px 10px 12px;font-size:14px;line-height:1.4}.filters__footer{border-top:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 20px;margin-top:18px;padding-top:14px;display:flex}.filters__count{color:var(--ink-soft);margin:0;font-size:14px}.filters__count strong{font-family:var(--font-mono);background:var(--ink);color:var(--surface);border-radius:999px;margin-right:5px;padding:2px 8px;font-size:13px}.filters__reset{color:var(--muted);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;text-decoration:underline}.filters__reset:hover{color:var(--violet)}.tools-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.tool-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);flex-direction:column;padding:20px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;position:relative}.tool-card:hover{box-shadow:var(--shadow);border-color:var(--line-strong);transform:translateY(-4px)}.tool-card__top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.tool-card__index{font-family:var(--font-mono);letter-spacing:.08em;color:var(--line-strong);font-size:11px}.tool-card__head{align-items:center;gap:12px;margin-bottom:12px;display:flex}.tool-card__head h3{margin:0;font-size:23px;line-height:1.15}.tool-card__head h3 a{color:var(--ink);text-decoration:none}.tool-card__head h3 a:after{content:"";border-radius:inherit;position:absolute;inset:0}.tool-card__head h3 a:focus-visible{outline:none}.tool-card:hover .tool-card__head h3 a{color:var(--violet-deep)}.tool-card__short{color:var(--muted);flex-grow:1;margin:0 0 14px;font-size:14.5px;line-height:1.55}.tool-card__tags{flex-wrap:wrap;gap:6px;margin-bottom:16px;display:flex}.tool-card__meta{border-top:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;padding-top:13px;font-size:13px;display:flex}.tool-card__price{min-width:0;color:var(--ink);font-size:13.5px;font-weight:600}.tool-card__more{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--violet-deep);white-space:nowrap;margin-left:auto;font-size:11px}.tool-card.is-hidden{display:none}.empty-state{border:1px dashed var(--line-strong);border-radius:var(--radius);text-align:center;background:#fffdf899;padding:40px 24px}.empty-state h3{margin-bottom:8px;font-size:22px}.empty-state p{color:var(--muted);margin-bottom:18px}.article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.article-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-soft);flex-direction:column;gap:10px;padding:22px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.article-card:hover{box-shadow:var(--shadow);color:var(--ink);transform:translateY(-4px)}.article-card__meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:8px;font-size:10.5px;display:flex}.article-card h3{margin:0;font-size:22px;line-height:1.2}.article-card p{color:var(--muted);margin:0;font-size:14.5px;line-height:1.55}.article-card__more{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--violet-deep);margin-top:auto;padding-top:8px;font-size:11px}.page-hero{padding:clamp(28px,4vw,46px) 0 clamp(24px,3vw,36px)}.page-hero--wide{max-width:var(--container)}.page-hero--wide h1,.page-hero--wide .eyebrow,.page-hero--wide p{max-width:820px}.page-hero h1{margin-bottom:16px;font-size:clamp(2rem,4.6vw,3.4rem)}.page-hero p{color:var(--muted);max-width:68ch;margin:0;font-size:17px}.tool-hero{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:start;gap:clamp(24px,4vw,48px);padding:clamp(24px,4vw,44px) 0 30px;display:grid}.tool-hero__head{align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.tool-hero h1{margin-bottom:8px;font-size:clamp(2.1rem,4vw,3.2rem)}.tool-hero__short{color:var(--ink-soft);max-width:58ch;margin:0;font-size:17px}.tool-hero__badges{flex-wrap:wrap;gap:7px;margin-top:16px;display:flex}.tool-hero__side{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);gap:14px;padding:22px;display:grid}.tool-hero__rating{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:9px;padding-bottom:14px;display:flex}.tool-hero__rating-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:10.5px}.tool-hero__rating-value{font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1}.tool-hero__rating-value span{color:var(--muted);font-size:15px}.tool-hero__price{color:var(--muted);margin:0;font-size:14px}.tool-hero__price strong{color:var(--ink);font-size:19px;font-family:var(--font-display);margin-top:2px;display:block}.tool-hero__side .btn{width:100%}.tool-hero__disclaimer{color:var(--muted);text-align:center;margin:0;font-size:11.5px;line-height:1.45}.detail-section{padding-top:clamp(30px,4vw,46px)}.detail-section>h2{margin-bottom:16px;font-size:clamp(1.6rem,2.8vw,2.2rem)}.prose-block{max-width:78ch}.prose-block p{color:var(--ink-soft);font-size:16.5px}.detail-columns{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:24px;display:grid}.feature-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.feature-list li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:13px 15px 13px 42px;font-size:14.5px;line-height:1.45;position:relative}.feature-list li:before{content:"✓";background:var(--lime);width:20px;height:20px;color:var(--ink);border-radius:6px;place-items:center;font-size:11px;font-weight:700;display:grid;position:absolute;top:12px;left:14px}.spec-table{border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;overflow:hidden}.spec-table caption{text-align:left;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-bottom:10px;font-size:10.5px}.spec-table th,.spec-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 16px;font-size:14.5px}.spec-table tr:last-child th,.spec-table tr:last-child td{border-bottom:0}.spec-table th{width:46%;color:var(--muted);background:#efe9dc59;font-weight:500}.spec-table td{color:var(--ink)}.pros-cons{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.pros-cons__box{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:22px}.pros-cons__box--pros{border-top:4px solid var(--green)}.pros-cons__box--cons{border-top:4px solid var(--coral)}.pros-cons__box h3{margin-bottom:12px;font-size:20px}.pros-cons__box ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.pros-cons__box li{color:var(--ink-soft);padding-left:24px;font-size:14.5px;line-height:1.5;position:relative}.pros-cons__box--pros li:before{content:"+";font-family:var(--font-mono);color:var(--green);font-weight:700;position:absolute;top:-1px;left:0}.pros-cons__box--cons li:before{content:"−";font-family:var(--font-mono);color:var(--coral);font-weight:700;position:absolute;top:-1px;left:0}.reviews{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:18px;display:grid}.reviews__empty{border:1px dashed var(--line-strong);border-radius:var(--radius);background:#fffdf899;flex-direction:column;justify-content:center;padding:26px;display:flex}.reviews__empty h3{margin-bottom:8px;font-size:21px}.reviews__empty p{color:var(--muted);max-width:42ch;margin:0;font-size:14.5px}.review-form{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:10px;padding:22px;display:grid}.review-form h3{margin:0 0 4px;font-size:19px}.review-form label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10px}.review-form input,.review-form textarea{border:1px solid var(--line);background:var(--bg);border-radius:9px;width:100%;padding:10px 12px;font-size:14px}.review-form textarea{resize:vertical;min-height:78px}.review-form .btn{justify-self:start;margin-top:4px}.review-form__note{color:var(--muted);margin:0;font-size:12px}.related__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.related__head h2{margin:0;font-size:clamp(1.6rem,2.8vw,2.2rem)}.table-wrap{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-overflow-scrolling:touch;overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;min-width:900px}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:13px 16px;font-size:14px}.compare-table thead th{background:var(--bg-deep);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted);white-space:nowrap;z-index:1;font-size:10.5px;font-weight:500;position:sticky;top:0}.compare-table tbody tr:hover{background:#5b4bdb0b}.compare-table tbody tr:last-child td{border-bottom:0}.compare-table td:first-child{min-width:190px}.compare-table__name{color:var(--ink);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:flex}.compare-table__name:hover{color:var(--violet-deep)}.compare-table__name .tool-logo{border-radius:50%;width:32px;height:32px;font-size:15px}.compare-table .rating{padding:4px 9px;font-size:12px}.yes{color:var(--green);font-weight:600}.no{color:var(--muted)}.compare-legend{color:var(--muted);flex-wrap:wrap;gap:8px 18px;margin:12px 0 0;font-size:12.5px;display:flex}.compare-scroll-hint{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:10.5px;display:none}.article-list{gap:16px;max-width:900px;display:grid}.article-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 28px;padding:22px 24px;text-decoration:none;transition:transform .18s,border-color .18s;display:grid}.article-row:hover{border-color:var(--violet);color:var(--ink);transform:translate(4px)}.article-row h2{margin:0 0 6px;font-size:clamp(1.35rem,2.4vw,1.8rem)}.article-row p{color:var(--muted);max-width:66ch;margin:0;font-size:14.5px}.article-row__meta{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;flex-direction:column;align-items:flex-end;gap:4px;font-size:10.5px;display:flex}.article-row__arrow{color:var(--violet);font-size:18px}.article{max-width:780px;margin-inline:auto}.article__header{border-bottom:1px solid var(--line);padding:clamp(26px,4vw,44px) 0 28px}.article__meta{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex-wrap:wrap;gap:6px 18px;margin-bottom:16px;font-size:10.5px;display:flex}.article h1{margin-bottom:16px;font-size:clamp(2rem,4.6vw,3.4rem)}.article__lead{color:var(--ink-soft);margin:0;font-size:clamp(17px,2vw,20px);line-height:1.55}.article__body{padding-top:28px;font-size:17px;line-height:1.75}.article__body h2{margin:1.9em 0 .55em;scroll-margin-top:90px;font-size:clamp(1.55rem,2.8vw,2.05rem)}.article__body h3{margin:1.6em 0 .45em;font-size:1.28rem}.article__body p{margin:0 0 1.15em}.article__body ul,.article__body ol{margin:0 0 1.2em;padding-left:1.35em}.article__body li{margin-bottom:.4em}.article__body li::marker{color:var(--violet)}.article__body a{color:var(--violet-deep);text-decoration-color:#5b4bdb59}.article__body a:hover{text-decoration-color:currentColor}.article__body blockquote{border-left:4px solid var(--violet);background:var(--violet-soft);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-family:var(--font-display);color:var(--ink-soft);margin:1.6em 0;padding:16px 22px;font-size:1.1em}.article__body blockquote p:last-child{margin-bottom:0}.article__body strong{color:var(--ink)}.article__body hr{border:0;border-top:1px solid var(--line);margin:2em 0}.article__cta{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--violet-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 28px;margin-top:40px;padding:24px;display:flex}.article__cta h2{margin:0 0 4px;font-size:1.45rem}.article__cta p{color:var(--ink-soft);margin:0;font-size:14.5px}.article__back{margin-top:28px;font-size:14px}.about-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:start;gap:clamp(24px,5vw,56px);display:grid}.about-grid h2{margin-top:1.6em;font-size:clamp(1.5rem,2.6vw,2rem)}.about-grid h2:first-child{margin-top:0}.about-grid p,.about-grid li{max-width:72ch;color:var(--ink-soft)}.about-aside{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-soft);padding:24px}.about-aside h2{margin:0 0 14px;font-size:1.25rem}.about-aside ol{color:var(--ink-soft);gap:10px;margin:0;padding-left:1.2em;font-size:14.5px;display:grid}.about-aside li::marker{font-family:var(--font-mono);color:var(--violet);font-weight:700}.criteria{gap:12px;margin:0;padding:0;list-style:none;display:grid}.criteria li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);padding:16px 18px}.criteria strong{font-family:var(--font-display);margin-bottom:2px;font-size:1.05rem;display:block}.criteria span{color:var(--muted);font-size:14px}.notfound{text-align:center;padding:clamp(60px,12vw,130px) 0}.notfound__code{font-family:var(--font-display);color:var(--violet);opacity:.18;margin:0;font-size:clamp(5rem,18vw,11rem);line-height:.9}.notfound h1{margin-top:-.2em;font-size:clamp(1.9rem,4vw,2.8rem)}.notfound p{color:var(--muted);max-width:50ch;margin:0 auto 24px}.notfound__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@media (width<=980px){.hero__grid{grid-template-columns:1fr;gap:34px}.quiz-mock{max-width:440px;transform:none}.filters__grid{grid-template-columns:1fr 1fr}.filters__grid fieldset:first-child{grid-column:1/-1}.tools-grid,.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-hero{grid-template-columns:1fr}.tool-hero__side{max-width:460px}.detail-columns{grid-template-columns:1fr}.site-footer__inner{grid-template-columns:1fr 1fr}.site-footer__about{grid-column:1/-1}.about-grid{grid-template-columns:1fr}}@media (width<=760px){body{font-size:16px}.site-header__inner{flex-wrap:wrap;gap:0 16px;min-height:0;padding-block:10px 0}.brand{padding-bottom:10px}.site-nav{scrollbar-width:none;order:3;gap:2px;width:100%;margin-left:0;padding-bottom:8px;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav a{white-space:nowrap;padding:7px 11px;font-size:14px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats__item:nth-child(3){border-left:0;border-top:1px solid var(--line)}.stats__item:nth-child(4){border-top:1px solid var(--line)}.filters__grid,.pros-cons,.reviews,.feature-list,.article-row{grid-template-columns:1fr}.article-row__meta{flex-direction:row;align-items:center;gap:6px 14px}.compare-scroll-hint{display:block}.site-footer__inner{gap:26px;padding-block:34px 24px}}@media (width<=560px){.tools-grid,.article-grid{grid-template-columns:1fr}.hero{padding-top:30px}.hero__actions .btn{width:100%}.quiz-mock{padding:18px}.tool-hero__head{flex-direction:column;gap:14px}.section__head{flex-direction:column;align-items:flex-start}.filters__footer{align-items:flex-start}.site-footer__inner{grid-template-columns:1fr}.site-footer__bottom{flex-direction:column}.article__cta{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.tool-logo--img{border:1px solid var(--line);object-fit:contain;box-shadow:none;background:#fff;padding:6px}.tool-logo--lg.tool-logo--img{padding:10px}.compare-table__name .tool-logo--img{padding:4px}body{overflow-wrap:break-word;overflow-x:hidden}.article__body table{border-collapse:collapse;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;margin:1.5em 0;font-size:14.5px;line-height:1.5;display:block;overflow-x:auto}.article__body th,.article__body td{border:1px solid var(--line);text-align:left;vertical-align:top;min-width:120px;padding:8px 12px}.article__body th{background:var(--bg-deep);font-weight:600}.article__body pre{border-radius:var(--radius-sm);background:var(--ink);max-width:100%;color:var(--surface);padding:14px 16px;overflow-x:auto}.article__body code{overflow-wrap:anywhere}.article__body img{height:auto}
