.calc-page{padding-top:40px;padding-bottom:70px;max-width:1020px}
.calc-page h1{font-size:clamp(2rem,5vw,2.8rem);font-weight:600;margin:6px 0 10px}
.cgrid{display:grid;grid-template-columns:1fr 340px;gap:22px;align-items:start;margin-top:26px}
.cform fieldset{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:18px 20px 8px;margin:0 0 14px;min-width:0}
.cform legend{font-weight:700;color:var(--ink);padding:0 8px;font-size:.95rem}
.cform label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:12px;font-weight:500}
.cform input[type=number],.cform select{display:block;width:100%;margin-top:5px;font:inherit;font-size:.95rem;color:var(--ink);background:var(--offwhite);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.cform input:focus,.cform select:focus{outline:2px solid var(--green-500);outline-offset:1px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cform .ck{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--body);font-size:.9rem}
.cform .ck input[type=checkbox]{width:18px;height:18px;accent-color:var(--green-900);margin:0}
.cform .ck .mini{display:inline-block;width:70px;margin:0;padding:5px 8px}
.cform .buf{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:14px 18px}
.hint{font-size:.82rem;color:var(--muted);margin:0 0 12px}
.result{position:sticky;top:84px;background:var(--green-900);color:#fff;border-radius:24px;padding:26px 24px}
.result .rlabel{margin:0;font-size:.85rem;color:var(--sage-200)}
.result .rbig{margin:2px 0 6px;font-size:2.3rem;font-weight:700;letter-spacing:-.03em;line-height:1.1}
.result .rsub{margin:0 0 18px;font-size:.88rem;color:var(--sage-200)}
.result .rsub strong{color:#fff}
.result h2{font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sage-200);margin:0 0 8px}
.result ul{list-style:none;padding:0;margin:0 0 14px}
.result li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.14);font-size:.88rem}
.result li span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.result .hint{color:var(--sage-200)}
.result .btn.ghost{color:#fff;border-color:rgba(255,255,255,.6)}
.result .btn.ghost::after{background:#111}
.result .btn.ghost:hover{background:rgba(255,255,255,.12)}
@media (max-width:860px){
  .cgrid{grid-template-columns:1fr}
  .result{position:static}
}

.rbtns{display:flex;gap:8px;flex-wrap:wrap}
.rbtns .btn::after{display:none}
@media print{
  .nav,.cform,.rbtns,.foot{display:none}
  .cgrid{display:block}
  .result{position:static;background:#fff;color:#000;border:1px solid #999}
  .result .rlabel,.result .rsub,.result h2,.result .hint{color:#333}
  .result li{border-color:#ccc}
}
