:root{--ink:#1d1f24;--mut:#5d6470;--line:#d9dde3;--acc:#0b6b4f;--bad:#b3261e;--bg:#f6f7f9}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}
.top{max-width:880px;margin:0 auto;padding:28px 18px 6px}
h1{font-size:1.6rem;line-height:1.25;margin:0 0 10px}
.lead{color:var(--mut);margin:0}
main{max-width:880px;margin:0 auto;padding:10px 18px 40px}
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:14px 0}
h2{font-size:1.15rem;margin:0 0 8px}
h3{font-size:1rem;margin:14px 0 6px}
.drop{border:2px dashed var(--line);border-radius:8px;padding:14px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:8px 0}
label{display:block;font-size:.92rem;margin:6px 0}
label.inline{display:inline-block}
input[type=number],input[type=text],select,textarea{display:block;width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:6px;font:inherit;margin-top:3px}
textarea{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.85rem}
button,.buy{display:inline-block;background:var(--acc);color:#fff;border:0;border-radius:6px;padding:8px 14px;font:inherit;cursor:pointer;text-decoration:none;margin:3px 2px}
button.ghost,.buy.alt{background:#fff;color:var(--acc);border:1px solid var(--acc)}
.muted{color:var(--mut);font-size:.9rem}
.big{font-size:1.15rem}
.bad{color:var(--bad)}
table.checks{width:100%;border-collapse:collapse;margin:8px 0}
table.checks td,table.checks th{border-bottom:1px solid var(--line);padding:5px 6px;text-align:left}
table.checks td:last-child{text-align:right;width:90px}
tr.fail td:last-child{color:var(--bad);font-weight:700}
tr.ok td:last-child{color:var(--acc)}
details.found{margin:8px 0;border-left:3px solid var(--bad);padding-left:10px}
details.found summary{font-weight:600;cursor:pointer}
details.found li{margin:4px 0;font-size:.93rem}
code{background:#eef0f3;padding:0 4px;border-radius:4px;font-size:.85em}
.upsell{background:#eef7f3;border-radius:8px;padding:10px 12px;margin-top:14px}
.pro ol.six li{margin:3px 0}
.previewbox{border:1px dashed var(--acc);border-radius:8px;padding:6px 12px;margin:8px 0;background:#fbfdfc}
.keyrow{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin-top:10px}
.keyrow label{flex:1;min-width:220px}
.foot{text-align:center}
@media print{.top .lead,.card:not(#out),.foot,.upsell{display:none}body{background:#fff}.card{border:0}details.found{break-inside:avoid}}
table.aff{width:100%;border-collapse:collapse;margin:12px 0}
table.aff td,table.aff th{border-bottom:1px solid #ddd;padding:6px 8px;text-align:left}
ul.decide li{margin:8px 0}
ul.decide input{width:50%}
pre{background:#f5f5f2;padding:8px;overflow:auto;font-size:12px}
textarea{width:100%;font:13px ui-monospace,monospace}
