@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/IBMPlexMono-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/IBMPlexMono-500.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Baskerville';font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/LibreBaskerville-400.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Libre Baskerville';font-style:normal;font-weight:700;font-display:swap;src:url(/assets/fonts/LibreBaskerville-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/SourceSerif4-400-700.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--paper:#FDFDFB;--grid:#E4E4E0;--ink:#23262B;--ink2:#5a5f68;--hl:#D9F04A;--hl2:#eef8b0;--red:#E5484D;--blue:#3B6FB6;--line:#cfd0cb;
--serif:'Source Serif 4',Georgia,'Times New Roman',serif;--head:'Libre Baskerville',Georgia,serif;--mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background-color:var(--paper);background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:24px 24px;color:var(--ink);font:17px/1.6 var(--serif);-webkit-text-size-adjust:100%}
a{color:var(--ink);text-decoration-color:var(--blue);text-decoration-thickness:1.5px;text-underline-offset:3px}a:hover{background:var(--hl2)}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--hl);padding:6px 10px;z-index:9}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.sheet{background:var(--paper);border-left:2px solid var(--red);margin-left:max(0px,calc((100vw - 1160px)/2));max-width:1160px;padding:8px 0 40px;box-shadow:0 0 0 1px var(--line)}
@media(max-width:1180px){.sheet{margin-left:0;border-left-width:3px}}
header.top{border-bottom:2px solid var(--ink);background:var(--paper)}
header.top .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;padding-top:12px;padding-bottom:12px}
.brand{font:700 22px var(--head);text-decoration:none;letter-spacing:-.01em}.brand span{background:linear-gradient(transparent 58%,var(--hl) 58%)}
nav ul{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:0;padding:0;font:500 14px var(--mono)}
nav a{text-decoration:none;padding:2px 0;border-bottom:2px solid transparent}nav a:hover,nav a[aria-current]{background:none;border-bottom-color:var(--ink)}
.indep{margin-left:auto;font:12px var(--mono);color:var(--ink2)}
h1,h2,h3{font-family:var(--head);line-height:1.25;letter-spacing:-.01em}
h1{font-size:clamp(26px,4.2vw,40px);margin:.5em 0 .3em}h2{font-size:24px;margin:1.6em 0 .5em}h3{font-size:18px;margin:1.3em 0 .4em}
.lede{font-size:19px;max-width:70ch}.mono,.num{font-family:var(--mono)}.num{font-variant-numeric:tabular-nums}
.small{font-size:14px;color:var(--ink2)}
.crumbs{font:13px var(--mono);color:var(--ink2);padding-top:14px}.crumbs a{color:var(--ink2)}
.fig{border:1.5px solid var(--ink);background:rgba(253,253,251,.96);padding:16px 18px;margin:20px 0;position:relative}
.fig>.cap{position:absolute;top:-12px;left:12px;background:var(--hl);font:500 12px var(--mono);padding:1px 8px;border:1.5px solid var(--ink)}
.fig.sticky{position:sticky;top:0;z-index:5}
@media(max-width:700px){.fig.sticky{position:relative}}
form.norm{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px 18px;align-items:end}
label,.lbl{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.04em;display:block;margin-bottom:3px}
input[type=number],select,input[type=text],input[type=email],input[type=url],textarea{width:100%;font:16px var(--mono);padding:8px 10px;border:1.5px solid var(--ink);background:#fff;border-radius:0;color:var(--ink)}
textarea{font-family:var(--serif);min-height:110px}
fieldset{border:0;margin:0;padding:0}fieldset.eng{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 16px}
fieldset.eng label{font:14px var(--mono);text-transform:none;display:inline-flex;align-items:center;gap:6px;margin:0;letter-spacing:0}
input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink)}
.btn,button{font:500 15px var(--mono);background:var(--hl);color:var(--ink);border:1.5px solid var(--ink);padding:9px 16px;cursor:pointer;text-decoration:none;display:inline-block;border-radius:0;box-shadow:3px 3px 0 var(--ink)}
.btn:hover,button:hover{background:#cfe83a}.btn:active,button:active{box-shadow:none;transform:translate(3px,3px)}
.btn.ghost{background:var(--paper)}
table{border-collapse:collapse;width:100%;font-size:15px;background:rgba(253,253,251,.97)}
th,td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
th{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid var(--ink);background:var(--paper);white-space:nowrap}
td.r,th.r{text-align:right}td.big{font:500 18px var(--mono)}
tbody tr:hover{background:var(--hl2)}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tag{font:11px var(--mono);border:1px solid var(--ink);padding:0 6px;display:inline-block;white-space:nowrap;background:#fff}
.tag.fits{background:var(--hl)}.tag.unclear{background:#fff4c2}.tag.upgrade{background:#fde1e1;border-color:var(--red)}.tag.quote{background:#e8eef7;border-color:var(--blue)}
.tag.stale{background:#e7e7e3;color:#666}
.dots{display:inline-flex;gap:3px;vertical-align:middle}.dots i{width:9px;height:9px;border-radius:50%;border:1.5px solid var(--ink);display:block}.dots i.on{background:var(--ink)}.dots i.add{background:var(--hl)}
.note{border-left:4px solid var(--hl);background:#fbfcee;padding:10px 14px;margin:16px 0;font-size:16px}
.note.warn{border-left-color:var(--red);background:#fff6f6}
.marg{font:italic 14px var(--serif);color:var(--blue);transform:rotate(-1deg)}
.cols{display:grid;grid-template-columns:1fr 1.4fr;gap:24px}@media(max-width:860px){.cols{grid-template-columns:1fr}}
.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}
.card{border:1.5px solid var(--ink);padding:14px 16px;background:#fff}.card h3{margin-top:0}
.price{font:500 28px var(--mono)}
dl.facts{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0}dl.facts dt{font:500 12px var(--mono);text-transform:uppercase;padding-top:4px}dl.facts dd{margin:0}
.sponsored{border:1.5px dashed var(--ink);background:repeating-linear-gradient(135deg,var(--hl2) 0 10px,#fff 10px 20px);padding:10px 14px;margin:16px 0}
.sponsored b{font:700 12px var(--mono);background:var(--hl);padding:1px 8px;border:1.5px solid var(--ink)}
.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
footer.foot{border-top:2px solid var(--ink);margin-top:40px;padding:22px 0 40px;font-size:15px;background:var(--paper)}
footer.foot .wrap{display:flex;flex-wrap:wrap;gap:18px 40px;justify-content:space-between}
footer.foot ul{list-style:none;margin:0;padding:0;font:14px var(--mono)}footer.foot li{margin:3px 0}
.clioos{font:500 14px var(--mono)}
details{border:1px solid var(--line);padding:8px 12px;margin:8px 0;background:#fff}summary{cursor:pointer;font-weight:600}
.faq h3{font-size:17px}
.hide{display:none!important}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
@media(max-width:700px){
 body{font-size:16px}.sheet{padding-bottom:20px}
 nav ul{gap:4px 12px}.indep{margin-left:0}
 table.cards,table.cards thead,table.cards tbody,table.cards tr,table.cards td{display:block;width:100%}
 table.cards thead{position:absolute;left:-9999px}
 table.cards tr{border:1.5px solid var(--ink);margin:0 0 12px;background:#fff;padding:4px 0}
 table.cards td{border:0;padding:3px 12px;display:flex;justify-content:space-between;gap:12px;text-align:right}
 table.cards td::before{content:attr(data-l);font:500 11px var(--mono);text-transform:uppercase;color:var(--ink2);text-align:left;flex:0 0 38%}
 table.cards td.name{font:700 17px var(--head);text-align:left;display:block}table.cards td.name::before{display:none}
 table.cards td.big{font-size:18px}
}
@media print{.fig.sticky{position:relative}header.top nav{display:none}}
.brand{display:inline-flex;align-items:center;gap:9px}.brand .logo{display:block;flex:none}
