:root{--bg:#f4f5f7;--card:#fff;--ink:#1d2330;--muted:#5d6675;--line:#dfe3ea;--acc:#1f5fbf;--acc2:#e8f0fd;--ok:#1d7a3e;--okbg:#e6f4ea;--bad:#b3261e;--badbg:#fbe9e7;--inp:#fffbe6}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--acc)}
header.top{background:#16202f;color:#fff}
header.top .in{max-width:1180px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px}
header.top a{color:#fff;text-decoration:none;font-weight:600}
header.top .sub{color:#aab4c3;font-size:13px}
main{max-width:1180px;margin:0 auto;padding:20px 16px 40px}
h1{font-size:24px;margin:4px 0 6px}
h2{font-size:17px;margin:0 0 10px}
.lead{color:var(--muted);margin:0 0 18px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}
a.card{display:block;text-decoration:none;color:inherit;transition:box-shadow .15s,border-color .15s}
a.card:hover{border-color:var(--acc);box-shadow:0 4px 14px rgba(31,95,191,.12)}
.card .tag{display:inline-block;font-size:12px;color:var(--acc);background:var(--acc2);border-radius:99px;padding:2px 8px;margin-bottom:8px}
.card.soon{opacity:.55}
.layout{display:grid;grid-template-columns:380px 1fr;gap:16px;align-items:start}
@media (max-width:900px){.layout{grid-template-columns:1fr}}
fieldset{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:12px 14px 6px;margin:0 0 12px}
legend{font-weight:600;padding:0 6px}
.row{display:grid;grid-template-columns:1fr 130px;gap:8px;align-items:center;margin-bottom:8px}
.row label{font-size:14px}
.row small,.hint{display:block;color:var(--muted);font-size:12px}
input,select{width:100%;font:inherit;padding:7px 8px;border:1px solid #c9cfd9;border-radius:8px;background:var(--inp)}
select{background:#fff}
.row.full{grid-template-columns:1fr}
.two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.forms{font-size:12.5px;color:var(--muted);margin:-2px 0 8px}
.btns{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}
button{font:inherit;border:0;border-radius:8px;padding:9px 14px;background:var(--acc);color:#fff;cursor:pointer}
button.sec{background:#e9edf3;color:var(--ink)}
.verdict{border-radius:12px;padding:14px 16px;margin-bottom:12px;font-size:16px}
.verdict.ok{background:var(--okbg);color:var(--ok)}
.verdict.bad{background:var(--badbg);color:var(--bad)}
.verdict b{font-size:20px}
.kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;margin-bottom:12px}
.kv div{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.kv span{display:block;color:var(--muted);font-size:12px}
.kv b{font-size:17px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:12px}
#scheme svg{width:100%;height:auto;display:block}
.warn{font-size:13px;color:#7a5600;background:#fff6dc;border-radius:8px;padding:8px 10px;margin:6px 0}
.err{font-size:14px;color:var(--bad);background:var(--badbg);border-radius:8px;padding:10px 12px}
table.t{border-collapse:collapse;width:100%;font-size:13px}
table.t th,table.t td{border:1px solid var(--line);padding:4px 6px;text-align:right}
table.t th{background:#f0f2f6;text-align:center}
table.t td:first-child{text-align:center}
footer{color:var(--muted);font-size:12px;text-align:center;padding:20px}
