*{box-sizing:border-box}body{font-family:system-ui,-apple-system,sans-serif;margin:0 auto;color:#1d2a24;line-height:1.65;display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-template-areas:"h h" "m a" "f f";max-width:1150px}
header{grid-area:h;padding:12px 16px;background:#0a7a4a;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.logo{color:#fff;font-weight:700;font-size:1.3em;text-decoration:none}.hlink{color:#fff}
main{grid-area:m;padding:16px;min-width:0}aside{grid-area:a;padding:16px}aside h3{margin:12px 0 4px}aside nav a{display:block;padding:3px 0}footer{grid-area:f;padding:16px;font-size:.85em;color:#555}
a{color:#0a6a40}.lead{font-size:1.1em}.crumbs{font-size:.85em;color:#666;margin:0}.small{font-size:.85em;color:#666}
.card{border:1px solid #d7e0db;border-radius:10px;padding:16px;margin:12px 0;background:#f8fbf9}
.calcgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
form label{display:block;margin:6px 0;font-size:.95em}input,select{width:100%;padding:10px;font-size:1em;border:1px solid #bbb;border-radius:6px;background:#fff}
#out p{margin:6px 0}.big{font-size:1.2em}.err{color:#b00020;font-weight:600}.note{color:#8a5a00}
.ad{border:2px dashed #bbb;color:#999;text-align:center;padding:30px;margin:16px 0;min-height:90px;font-size:.8em}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.tile{text-decoration:none;color:#1d2a24;display:flex;flex-direction:column;gap:4px}.tile span{font-size:.88em;color:#555}
.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.92em}td,th{padding:4px 6px;border-bottom:1px solid #e3e3e3;text-align:right;white-space:nowrap}th{background:#eef4f0}
.formula{font-family:Georgia,serif;font-size:1.15em;background:#f3f3f3;padding:8px 12px;border-radius:6px;overflow-x:auto}
.disclaimer{border-left:4px solid #c9a227;background:#fffbea;padding:10px 14px;margin:20px 0;font-size:.9em}
#printbtn{padding:10px 16px;font-size:1em;border-radius:6px;border:0;background:#0a7a4a;color:#fff;cursor:pointer;margin-bottom:8px}
details summary{cursor:pointer;font-weight:600;padding:8px 0}
@media(max-width:760px){body{grid-template-columns:1fr;grid-template-areas:"h" "m" "a" "f"}.calcgrid{grid-template-columns:1fr}}
@media print{header,aside,footer,.ad,.noprint,article,.crumbs,.lead{display:none!important}body{display:block}main{padding:0}#out{border:0;background:none}table{font-size:9pt}td,th{padding:2px 4px}tr{break-inside:avoid}}
