:root{--bg:#f7f9f8;--fg:#1b1f24;--mut:#525c66;--acc:#0a6e5c;--card:#fff;--bd:#d4dbd9}
*{box-sizing:border-box}body{margin:0;font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg)}
.wrap{max-width:880px;margin:0 auto;padding:0 1rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}
header.site{background:#0f3b33;color:#fff}header.site .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;padding:.8rem 1rem}
header.site a{color:#fff;margin-left:.8rem}header.site .brand{margin:0;font-weight:700;text-decoration:none;font-size:1.15rem}
h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.2;margin:1.5rem 0 .5rem}.lead{color:var(--mut);font-size:1.07rem}
a{color:var(--acc)}code{background:#eef2f1;padding:.1rem .3rem;border-radius:4px}
.disclosure{font-size:.88rem;color:var(--mut);border-left:3px solid var(--bd);padding-left:.6rem}
fieldset{border:1px solid var(--bd);background:var(--card);border-radius:10px;margin:0 0 1rem;padding:1rem}
legend{font-weight:700;padding:0 .3rem}label{font-weight:600;display:block}.opt{font-weight:400;color:var(--mut);font-size:.88rem}
.grid{display:grid;grid-template-columns:1fr;gap:.8rem;margin:.6rem 0}@media(min-width:600px){.grid{grid-template-columns:repeat(2,1fr)}}
.row{display:flex;gap:.5rem;align-items:center}
input[type=number],input[type=text],select{font:inherit;padding:.5rem;border:1px solid #84918d;border-radius:6px;min-height:44px;width:100%;background:#fff}
.row input{flex:1;min-width:0}.row select{width:auto}
.opts{display:flex;flex-wrap:wrap;gap:.5rem;margin:.4rem 0}.opts label{display:flex;align-items:center;gap:.4rem;border:1px solid var(--bd);border-radius:8px;padding:.55rem .8rem;cursor:pointer;min-height:44px;font-weight:500}
.opts label:has(input:checked){border-color:var(--acc);background:#e6f4f0}
input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #f0a500;outline-offset:2px}
[hidden]{display:none!important}
.hint{color:var(--mut);font-size:.9rem;margin:.4rem 0 0}.err{color:#a40000;font-weight:600;min-height:1.6em}
details{margin:0 0 1rem}summary{cursor:pointer;font-weight:700;padding:.6rem 0;color:var(--acc)}
.cta{font:inherit;font-weight:700;background:var(--acc);color:#fff;border:0;border-radius:8px;padding:.85rem 1.4rem;cursor:pointer;width:100%;max-width:340px;min-height:48px}.cta:hover{background:#08594a}
#result{margin:1.5rem 0}#result:focus{outline:none}.big{font-size:1.1rem;margin:.3rem 0}
.card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:1rem 1.2rem;margin:0 0 1rem}.card h3{margin:.2rem 0 .4rem}
.warn{border-color:#e0b100;background:#fffbea}
.tw{overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid var(--bd);padding:.45rem;text-align:left;vertical-align:top}caption{text-align:left;font-weight:600;padding:.3rem 0;color:var(--mut)}
tbody th{font-weight:600}
.disclaimer{background:#fff4e5;border:1px solid #f0c98a;border-radius:10px;padding:.8rem 1rem;font-size:.93rem}
.products{list-style:none;padding:0;display:grid;gap:.8rem}@media(min-width:700px){.products{grid-template-columns:repeat(2,1fr)}}
.buy{display:inline-block;font-weight:700;background:var(--acc);color:#fff;text-decoration:none;border-radius:6px;padding:.5rem .9rem}
footer.site{border-top:1px solid var(--bd);margin-top:2rem;padding:1rem 0;color:var(--mut);font-size:.92rem}
@media print{header,footer,form,.cta,.products{display:none}}
