.planner{max-width:980px;margin:25px auto 60px}.planner-intro{max-width:800px;margin-bottom:30px}.planner-intro h2{font-size:2rem}.planner-intro p{font-size:.96rem}.planner form{padding:32px}.planner-form-legend{font-size:1.45rem}.planner-group{padding:24px 0;border-bottom:1px solid var(--line);margin-bottom:22px}.planner-group legend{font-size:1.07rem;line-height:1.4;padding:0;max-width:100%}.planner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:25px;row-gap:17px}.planner-field{min-width:0}.planner-field label{margin-bottom:6px}.planner-unit{color:var(--muted);font-weight:400}.planner-help{font-size:.8rem;color:var(--muted);line-height:1.55;margin:0 0 17px}.planner-grid>.planner-field>.planner-help{margin-bottom:0}.planner-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.planner-checks label{display:flex;gap:11px;align-items:flex-start;line-height:1.5;margin:0;font-size:.86rem;font-weight:500;padding:7px 0}.planner-checks input{width:19px;height:19px;min-height:19px;margin:1px 0 0;flex-shrink:0}.planner-actions{margin:20px 0 10px}.planner-errors{padding:18px;background:#fff1ed;border-left:3px solid #b3431e;margin-bottom:20px;color:#6f2511}.planner-result{border-top:3px solid var(--blue);padding-top:30px;margin-top:35px}.planner-result h3{font-size:1.7rem}.planner-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:25px 0}.planner-totals>div{background:#eaf2f7;padding:17px 14px}.planner-totals dt{font-size:.8rem;line-height:1.45}.planner-totals dd{font-weight:700;font-size:1.55rem;margin:10px 0 0;overflow-wrap:anywhere}.planner-result pre{font:inherit;font-size:.83rem;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;padding:18px;background:#f0f4f7;border:1px solid var(--line)}.planner-result details{margin-top:20px}.planner-result .text-link{display:inline-block;margin-top:8px}
@media(max-width:700px){.planner form{padding:20px}.planner-grid,.planner-checks,.planner-totals{grid-template-columns:1fr}.planner-group{padding:18px 0}.planner-grid{row-gap:17px}.planner-grid>label{margin-bottom:0}.planner-totals>div{display:flex;justify-content:space-between;align-items:center;gap:15px}.planner-totals dt{max-width:60%}.planner-totals dd{font-size:1.35rem;white-space:nowrap;margin:0}.planner-actions{display:grid;grid-template-columns:1fr}.planner-actions button{width:100%}.planner-intro h2{font-size:1.7rem}.planner-result pre{padding:12px}.planner-result .text-link{font-size:.83rem}.planner-checks label{min-height:44px;align-items:center}.planner-checks input{margin:0}.planner-result h3{font-size:1.55rem}}
