:root{--paper:#f5f2ec;--surface:#fbf9f5;--fg:#16212e;--fg-2:#4a5a68;--fg-3:#5c6b79;--line:#d9d3c8;--line-2:#c3bbac;--accent:#1f6152;--accent-bg:#e7ece8;--accent-fg:#164a3f;--rust:#a8412a;--lv-paid:#1f6152;--lv-trial:#2f6b8f;--lv-free:#8a6a1f;--lv-pricing:#5c6b79;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--s8:4rem;--t-xs:.8125rem;--t-sm:.9375rem;--t-base:1.0625rem;--t-lg:1.1875rem;--t-xl:1.375rem;--t-2xl:1.75rem;--r:6px;--r-lg:10px;--measure:44rem;--wide:60rem;--max:var(--measure);--shadow-col:rgba(22,33,46,.1)}@media(prefers-color-scheme:dark){:root{--paper:#14191f;--surface:#1b222a;--fg:#eceff2;--fg-2:#aab6c1;--fg-3:#8b98a4;--line:#2b343d;--line-2:#3d4954;--accent:#63bf9f;--accent-bg:#152724;--accent-fg:#8fd4ba;--rust:#e0785c;--lv-paid:#63bf9f;--lv-trial:#7fb3d5;--lv-free:#d0ab5e;--lv-pricing:#8b98a4;--shadow-col:rgba(0,0,0,.45)}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:var(--t-base);line-height:1.7}img{max-width:100%;height:auto}a{color:var(--accent)}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}::selection{background:var(--accent-bg);color:var(--accent-fg)}.wrap{max-width:var(--measure);margin:0 auto;padding:0 var(--s5)}.skip{position:absolute;left:-9999px}.skip:focus{left:var(--s4);top:var(--s2);z-index:10;background:var(--surface);color:var(--fg);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r)}header.site{border-bottom:1px solid var(--line);background:var(--paper)}header.site .wrap{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s5);align-items:center;padding-block:var(--s4)}header.site .brand{display:flex;align-items:center;gap:var(--s2);font-weight:700;font-size:var(--t-lg);color:var(--fg);text-decoration:none;letter-spacing:-.015em}header.site .brand img{width:1.6rem;height:1.6rem;border-radius:var(--r)}header.site nav{display:flex;flex-wrap:wrap;gap:var(--s4);font-size:var(--t-sm)}header.site nav a{color:var(--fg-2);text-decoration:none}header.site nav a:hover{color:var(--accent)}footer.site{border-top:1px solid var(--line);padding-block:var(--s6) var(--s7);font-size:var(--t-sm);color:var(--fg-3);margin-top:var(--s7)}footer.site nav{display:flex;flex-wrap:wrap;gap:var(--s4);margin-bottom:var(--s3)}footer.site nav a{color:var(--fg-2);text-decoration:none}main{padding-block:var(--s6) var(--s7)}h1{font-size:clamp(1.9rem,1.5rem + 1.8vw,2.4rem);line-height:1.2;letter-spacing:-.022em;margin:0 0 var(--s3);text-wrap:balance}h2{font-size:var(--t-xl);line-height:1.3;letter-spacing:-.012em;margin:var(--s7) 0 var(--s3);padding-top:var(--s5);border-top:1px solid var(--line);text-wrap:balance}h3{font-size:var(--t-lg);margin:var(--s5) 0 var(--s2)}p,ul,ol{margin:0 0 var(--s4)}ul,ol{padding-left:1.3rem}li{margin-bottom:var(--s1)}.lede{font-size:var(--t-lg);color:var(--fg-2);margin-bottom:var(--s6);text-wrap:pretty}.updated{font-size:var(--t-sm);color:var(--fg-3);margin-bottom:var(--s6)}.disclosure{background:var(--accent-bg);border-left:3px solid var(--accent);border-radius:0 var(--r) var(--r) 0;padding:var(--s3) var(--s4);font-size:var(--t-sm);color:var(--fg-2);margin:0 0 var(--s5)}.disclosure a{color:var(--accent-fg)}.correction{border:1px solid var(--line-2);border-left:3px solid var(--fg-2);border-radius:0 var(--r) var(--r) 0;background:var(--surface);padding:var(--s3) var(--s4);font-size:var(--t-sm);color:var(--fg-2);margin:0 0 var(--s5)}.correction strong{color:var(--fg)}ul.cols{columns:2;column-gap:var(--s4)}ul.cols li{break-inside:avoid}.access{border:1px solid var(--line);border-left:3px solid var(--lv-pricing);border-radius:0 var(--r) var(--r) 0;background:var(--surface);padding:var(--s3) var(--s4);font-size:var(--t-sm);color:var(--fg-2);margin:0 0 var(--s4)}.access .lvl{display:inline-block;font-weight:700;color:var(--paper);background:var(--lv-pricing);border-radius:999px;padding:.08em .6em;font-size:var(--t-xs);letter-spacing:.01em;white-space:nowrap;vertical-align:.05em}.access[data-level=paid]{border-left-color:var(--lv-paid)}.access[data-level=paid] .lvl{background:var(--lv-paid)}.access[data-level=trial]{border-left-color:var(--lv-trial)}.access[data-level=trial] .lvl{background:var(--lv-trial)}.access[data-level=free]{border-left-color:var(--lv-free)}.access[data-level=free] .lvl{background:var(--lv-free)}.calc{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:var(--s4);margin:0 0 var(--s4);display:flex;flex-direction:column;gap:var(--s4)}.calc .row{display:flex;flex-wrap:wrap;gap:var(--s4)}.calc label{display:flex;flex-direction:column;gap:var(--s1);font-size:var(--t-sm);color:var(--fg-2);flex:1 1 12rem}.calc input[type=number],.calc select{font:inherit;font-size:var(--t-base);padding:.55rem .65rem;border:1px solid var(--line-2);border-radius:var(--r);background:var(--paper);color:var(--fg);width:100%;font-variant-numeric:tabular-nums}.calc label.chk{flex-direction:row;align-items:center;gap:var(--s2);flex:1 1 20rem}.calc label.chk input{width:1.1rem;height:1.1rem;flex:none;accent-color:var(--accent)}.result{background:var(--accent-bg);border:1px solid var(--accent);border-radius:var(--r-lg);padding:var(--s4);margin:0 0 var(--s5)}.result .lbl{font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--accent-fg);margin:0 0 var(--s1);font-weight:600}.result .num{font-size:clamp(2rem,1.5rem + 2.4vw,2.75rem);line-height:1.05;letter-spacing:-.03em;font-weight:700;color:var(--accent-fg);font-variant-numeric:tabular-nums;margin:0}.result .num small{font-size:var(--t-base);font-weight:600;letter-spacing:0}.result .sub{margin:var(--s2) 0 0;font-size:var(--t-sm);color:var(--fg-2)}.result .sub strong{color:var(--fg)}.summary{background:var(--accent-bg);border-left:3px solid var(--accent);border-radius:0 var(--r) var(--r) 0;padding:var(--s3) var(--s4);font-size:var(--t-sm);margin:0 0 var(--s4)}.tblwrap{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:var(--r-lg);margin:0 0 var(--s5);background:var(--paper)}.tblwrap table{border-collapse:separate;border-spacing:0;width:100%;min-width:34rem;font-size:var(--t-sm);line-height:1.35}.tblwrap table.fit{min-width:0}.tblwrap table.fit.tight th,.tblwrap table.fit.tight td{padding:var(--s2) var(--s1)}.tblwrap table.fit.tight th:first-child,.tblwrap table.fit.tight td:first-child{padding-left:var(--s2)}.tblwrap table.fit.tight th{letter-spacing:0}.tblwrap table.fit.tight th em{text-transform:none}.tblwrap th,.tblwrap td{padding:.55rem .7rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:baseline}.tblwrap tbody tr:last-child td{border-bottom:0}.tblwrap th{background:var(--accent-bg);font-size:var(--t-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--accent-fg);font-weight:700;line-height:1.25}.tblwrap td.n,.tblwrap th.n{text-align:right;font-variant-numeric:tabular-nums}.tblwrap td.n{white-space:nowrap}.tblwrap td.keep{font-weight:700;color:var(--fg)}.tblwrap td.keep em{font-weight:400}.tblwrap tr.best td{background:var(--accent-bg)}.tblwrap tr.best td.keep{color:var(--accent-fg)}.tblwrap em{font-style:normal;color:var(--fg-3);font-size:var(--t-xs)}.tblwrap th:first-child,.tblwrap td:first-child,.tblwrap th.stick,.tblwrap td.stick{position:sticky;left:0;z-index:2;white-space:nowrap;background:var(--paper);box-shadow:1px 0 0 var(--line),5px 0 7px -5px var(--shadow-col)}.tblwrap th:first-child,.tblwrap th.stick{background:var(--accent-bg);z-index:3}.tblwrap tr.best td:first-child,.tblwrap tr.best td.stick{background:var(--accent-bg)}@media(min-width:58rem){.tblwrap{width:min(var(--wide),calc(100vw - 3rem));margin-inline:calc(50% - (min(var(--wide),calc(100vw - 3rem))/2))}}.feekinds{border-collapse:collapse;width:100%;margin:0 0 var(--s4)}.feekinds th{text-align:left;vertical-align:top;padding:var(--s3) var(--s3) var(--s3) 0;width:9.5rem;font-size:var(--t-sm);border-bottom:1px solid var(--line)}.feekinds td{padding:var(--s3) 0;font-size:var(--t-sm);border-bottom:1px solid var(--line)}.feekinds em{font-style:normal;font-weight:700}@media(max-width:30rem){.feekinds th,.feekinds td{display:block;width:auto;border-bottom:0}.feekinds th{padding-bottom:0}.feekinds td{padding-top:var(--s1);border-bottom:1px solid var(--line)}}
