
:root{--bg:#f2f7f7;--card:#ffffff;--ink:#17272b;--mut:#5c7278;--acc:#0e7c6b;
--acc-d:#0a5a4e;--hi:#e6f4f1;--line:#dce8e8;--warn:#8a6d1a;--warnbg:#fdf6df}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
font:16px/1.6 "Segoe UI",system-ui,-apple-system,Roboto,sans-serif}
.wrap{max-width:920px;margin:0 auto;padding:0 18px}
header.site{background:var(--acc-d);color:#fff}
header.site .wrap{display:flex;align-items:center;justify-content:space-between;
gap:12px;padding:14px 18px;flex-wrap:wrap}
.brand{display:inline-flex;align-items:center;gap:9px;color:#fff;text-decoration:none;
font-weight:800;font-size:1.3rem;letter-spacing:.3px}
.brand svg{flex:none;display:block}
.brand span{color:#8fe3d2}
nav.main{display:flex;gap:2px;flex-wrap:wrap}
nav.main a{color:#d9efe9;text-decoration:none;padding:6px 10px;border-radius:8px;font-size:.9rem}
nav.main a:hover{background:rgba(255,255,255,.12);color:#fff}
h1{font-size:1.7rem;line-height:1.3;margin:1.3rem 0 .5rem;font-weight:800}
h2{font-size:1.2rem;margin:1.6rem 0 .5rem;color:var(--acc-d)}
main{padding-bottom:3rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;
padding:20px 22px;margin:14px 0;box-shadow:0 2px 6px rgba(14,60,55,.06)}
.calc label{display:block;font-size:.88rem;font-weight:600;color:var(--mut);margin:10px 0 3px}
.calc input,.calc select{width:100%;padding:10px 12px;border:1px solid var(--line);
border-radius:10px;font-size:1rem;background:#fff;color:var(--ink)}
.calc .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}
.calc button{margin-top:16px;width:100%;background:var(--acc);color:#fff;border:none;
border-radius:12px;padding:13px;font-size:1.05rem;font-weight:700;cursor:pointer}
.calc button:hover{background:var(--acc-d)}
.result{display:none;margin-top:16px;background:var(--hi);border:1px solid #bfe3da;
border-radius:12px;padding:16px 18px}
.result.show{display:block}
.result .big{font-size:1.9rem;font-weight:800;color:var(--acc-d)}
.result table{width:100%;border-collapse:collapse;margin-top:8px;font-size:.95rem}
.result td{padding:5px 6px;border-bottom:1px solid #cfe8e1}
.result td:last-child{text-align:right;font-weight:700}
.disclaimer{background:var(--warnbg);border:1px solid #ecd9a0;border-radius:12px;
padding:12px 16px;font-size:.85rem;color:var(--warn);margin:18px 0}
.hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.hub a{background:var(--card);border:1px solid var(--line);border-radius:16px;
padding:18px;text-decoration:none;color:var(--ink);display:block;
box-shadow:0 2px 6px rgba(14,60,55,.05)}
.hub a:hover{border-color:var(--acc);transform:translateY(-2px);transition:.12s}
.hub .ic{font-size:1.6rem}
.hub b{display:block;margin:6px 0 4px;color:var(--acc-d)}
.hub p{margin:0;font-size:.87rem;color:var(--mut)}
.ad-slot{background:repeating-linear-gradient(45deg,#e9f2f1,#e9f2f1 12px,#f3f9f8 12px,#f3f9f8 24px);
border:1px dashed #b9d6d0;border-radius:12px;color:#6f918b;text-align:center;
font-size:.78rem;letter-spacing:.6px;padding:26px 10px;margin:16px 0}
.crumbs{font-size:.85rem;color:var(--mut);margin-top:1rem}
.crumbs a{color:var(--mut)}
.placeholder{color:var(--mut);font-style:italic}
details.faq{background:var(--card);border:1px solid var(--line);border-radius:12px;
padding:12px 16px;margin:8px 0}
details.faq summary{font-weight:700;cursor:pointer;color:var(--acc-d)}
details.faq p{margin:.6rem 0 0;color:var(--mut)}
.seo{margin-top:2.4rem}
.seo h2{margin-top:1.8rem}
.seo h3{font-size:1.05rem;margin:1.3rem 0 .3rem;color:var(--acc-d)}
.prose p{margin:.6rem 0;color:var(--ink)}
.prose ul{margin:.6rem 0;padding-left:1.1rem}
.prose li{margin:.55rem 0}
.prose a{color:var(--acc);font-weight:600;text-decoration:none}
.prose a:hover{text-decoration:underline}
.startlead{background:var(--hi);border:1px solid var(--line);border-radius:12px;
padding:14px 16px;margin:14px 0;font-weight:500}
.startlead a{color:var(--acc);font-weight:700;text-decoration:none}
.startlead a:hover{text-decoration:underline}
footer.site{background:#122a2e;color:#9fbcb8;padding:26px 0;font-size:.88rem}
footer.site a{color:#cfe8e2}
footer.site .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
@media(max-width:640px){h1{font-size:1.4rem}}
