.calculator{gap:24px;display:grid}.calculator__grid{align-items:start;gap:20px;display:grid}.calculator__inputs,.calculator__results{gap:20px;min-width:0;display:grid}@media (min-width:1000px){.calculator__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.calculator__results{position:sticky;top:24px}}.panel{background:var(--cream-soft);border:1px solid var(--line);border-radius:var(--radius-surface);gap:18px;min-width:0;padding:22px 20px;display:grid}@media (min-width:700px){.panel{padding:28px}}.panel--result{background:#fff;border-color:#123d322e}.panel--explainer{max-width:var(--reading-width)}.panel__title{letter-spacing:var(--tracking-title);font-size:22px;font-weight:600;line-height:1.2}.panel__title--small{font-size:19px}.panel__title:focus{outline:none}.panel__title:focus-visible{outline:3px solid var(--orange);outline-offset:4px;border-radius:6px}.panel__subtitle{border-top:1px solid var(--line);padding-top:18px;font-size:17px;font-weight:600}.panel__text{color:var(--ink-muted);font-size:15px;line-height:1.5}.panel__reveal{gap:18px;display:grid}.choice{border:0;min-width:0;margin:0;padding:0}.choice__legend{margin-bottom:10px;padding:0;font-size:15px;font-weight:600}.choice__options{background:var(--track);border-radius:var(--radius-pill);grid-template-columns:repeat(2,minmax(0,1fr));padding:4px;display:grid}.choice__option{display:flex;position:relative}.choice__option input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.choice__option span{min-height:44px;color:var(--ink-soft);border-radius:var(--radius-pill);text-align:center;flex:1;justify-content:center;align-items:center;padding:0 10px;font-size:14px;font-weight:600;line-height:1.2;transition:color .2s,background .2s;display:flex}.choice__option input:checked+span{color:#fff;background:var(--green);box-shadow:var(--shadow-thumb)}.choice__option input:focus-visible+span{outline:3px solid var(--orange);outline-offset:2px}.field{gap:6px;min-width:0;display:grid}.field__label{font-size:15px;font-weight:600;line-height:1.3}.field__optional{color:var(--ink-muted);font-weight:500}.field__hint{color:var(--ink-muted);font-size:14px;line-height:1.4}.field__control{position:relative}.field__control input{width:100%;min-height:48px;color:var(--ink);border:1px solid var(--input-border);border-radius:var(--radius-input);font-variant-numeric:tabular-nums;appearance:textfield;background:#fff;padding:0 72px 0 14px;font-size:17px;transition:border-color .15s,box-shadow .15s}.field__control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field__control input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field__control input::placeholder{color:#8a918d}@media (hover:hover){.field__control input:hover{border-color:var(--ink-muted)}}.field__control input:focus-visible{outline:3px solid var(--orange);outline-offset:1px;border-color:var(--green)}.field__suffix{color:var(--ink-muted);pointer-events:none;font-size:14px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.field--error input{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.field__error{color:var(--danger);font-size:14px;font-weight:600}.form-error{color:var(--danger);background:var(--danger-bg);border-radius:var(--radius-input);padding:12px 14px;font-weight:600}.field-group{border:1px solid var(--line);border-radius:var(--radius-card);background:#fff;gap:16px;min-width:0;margin:0;padding:18px;display:grid}.field-group__legend{padding:0 6px;font-size:15px;font-weight:600}.field-group__total:empty{display:none}.field-group__total{background:var(--cream);border-radius:var(--radius-input);color:var(--ink-muted);gap:2px;padding:12px 14px;font-size:14px;display:grid}.field-group__total strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px}.switch-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.switch{appearance:none;border-radius:var(--radius-pill);cursor:pointer;background:#b9bfb9;flex:none;width:52px;height:30px;margin:2px 0 0;transition:background .2s;position:relative}.switch:after{content:"";width:24px;height:24px;transition:transform .2s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #041c1640}.switch:checked{background:var(--green)}.switch:checked:after{transform:translate(22px)}.callout{color:var(--ink-soft);background:var(--tint-orange);border-radius:var(--radius-input);padding:12px 14px;font-size:14px;line-height:1.5}.callout strong{color:var(--ink)}.calculator__submit{width:100%;min-height:56px;font-size:17px}.result{gap:18px;display:grid}.status{border-radius:var(--radius-sm);gap:6px;padding:16px 18px;font-size:14px;line-height:1.5;display:grid}.status__title{font-size:16px;font-weight:700;line-height:1.35}.status--success{color:var(--success);background:var(--success-bg)}.status--warning{color:var(--warning);background:var(--warning-bg)}.status--danger{color:var(--danger);background:var(--danger-bg)}.status--neutral{color:var(--green);background:var(--tag-neutral)}.progress{gap:8px;display:grid}.progress__label{color:var(--ink-muted);justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;font-weight:600;display:flex}.progress__label strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:18px}.progress__note{color:var(--ink-muted);font-size:14px}.progress progress{appearance:none;background:var(--track);border-radius:var(--radius-pill);border:0;width:100%;height:12px;overflow:hidden}.progress progress::-webkit-progress-bar{background:var(--track);border-radius:var(--radius-pill)}.progress progress::-webkit-progress-value{background:var(--green);border-radius:var(--radius-pill)}.progress progress::-moz-progress-bar{background:var(--green);border-radius:var(--radius-pill)}.figures{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.figure{background:var(--cream-soft);border-radius:var(--radius-sm);min-width:0;padding:14px}.figure--wide{grid-column:1/-1}.figure dt{color:var(--ink-muted);font-size:13px;font-weight:600}.figure dd{letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;gap:6px;margin:4px 0 0;font-size:22px;font-weight:700;display:grid}.figure--success{background:var(--success-bg)}.figure--success dt,.figure--success dd>span:first-child{color:var(--success)}.figure--warning{background:var(--warning-bg)}.figure--warning dt,.figure--warning dd>span:first-child{color:var(--warning)}.figure--danger{background:var(--danger-bg)}.figure--danger dt,.figure--danger dd>span:first-child{color:var(--danger)}.figure__note{color:var(--ink-muted);letter-spacing:0;font-size:14px;font-weight:400;line-height:1.45}.estimate{border-top:1px solid var(--line);gap:12px;padding-top:16px;display:grid}.estimate__title{font-size:16px;font-weight:600}.next-steps{gap:8px;margin:0;padding:0;list-style:none;display:grid}.next-steps a{min-height:48px;color:var(--green);background:var(--cream-soft);border:1px solid var(--line);border-radius:var(--radius-sm);text-underline-offset:3px;align-items:center;padding:0 16px;font-weight:600;text-decoration:underline;display:flex}
