:root{--ink:#1d2433;--mut:#5b6577;--line:#d9dee7;--bg:#f7f8fb;--card:#fff;--acc:#1f6f5c;--acc2:#e8f3ef;--warn:#8a4b00}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--acc)}a:hover{text-decoration:none}
header.site{background:var(--card);border-bottom:1px solid var(--line)}
.wrap{max-width:860px;margin:0 auto;padding:0 18px}
header.site .wrap{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}
header.site a.brand{font-weight:700;font-size:1.15rem;color:var(--ink);text-decoration:none}
header.site nav{display:flex;gap:16px;flex-wrap:wrap;font-size:.95rem}
main{padding:22px 0 40px}h1{font-size:1.9rem;line-height:1.2;margin:.2em 0 .4em}h2{font-size:1.3rem;margin:1.6em 0 .4em}h3{font-size:1.05rem;margin:1.2em 0 .3em}
p.lead{font-size:1.1rem;color:var(--mut);margin-top:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:14px 0}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.grid .card{margin:0}.grid h3{margin-top:0}
label{display:block;font-size:.9rem;color:var(--mut);margin:8px 0 2px}
input,select{font:inherit;padding:8px 10px;border:1px solid var(--line);border-radius:7px;width:100%;background:#fff;color:var(--ink)}
input:focus,select:focus,button:focus{outline:3px solid #9ccfbf;outline-offset:1px}
button,.btn{font:inherit;font-weight:600;background:var(--acc);color:#fff;border:0;border-radius:8px;padding:10px 16px;cursor:pointer;text-decoration:none;display:inline-block}
button.sec{background:#fff;color:var(--acc);border:1px solid var(--acc)}
.row{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.debts{width:100%;border-collapse:collapse}.debts td{padding:3px 4px}.debts th{font-size:.85rem;color:var(--mut);text-align:left;font-weight:600;padding:3px 4px}
.res{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:10px 0}
.res div{background:var(--acc2);border-radius:9px;padding:10px 12px}.res b{display:block;font-size:1.35rem}.res span{font-size:.85rem;color:var(--mut)}
.note{font-size:.9rem;color:var(--mut)}.err{color:#a02020;font-weight:600}.warn{color:var(--warn)}
.cta{border:2px solid var(--acc);background:var(--acc2)}
table.plain{border-collapse:collapse;width:100%;font-size:.95rem}table.plain td,table.plain th{border-bottom:1px solid var(--line);padding:5px 6px;text-align:left}
footer{border-top:1px solid var(--line);padding:18px 0 30px;color:var(--mut);font-size:.9rem}
svg.chart{width:100%;height:auto;background:#fff;border:1px solid var(--line);border-radius:8px}
.price{color:var(--mut);font-weight:600}
@media(max-width:560px){h1{font-size:1.6rem}body{font-size:16px}.debts thead{display:none}.debts,.debts tbody{display:block}.debts tr{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}.debts td{display:block;padding:0}.debts td:first-child{grid-column:1/-1}.debts input{padding:8px 6px}}