/* Shared reading scale for every estimator, including dynamically added fields. */
:root{--form-text:18px;--form-label:16px;--form-help:15px;--form-control-height:56px}
:is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid){font-size:var(--form-label);line-height:1.6}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) :is(label,legend),
body .public-field,
body .comparison-grid .compare-card label{font-size:var(--form-label);font-weight:650;line-height:1.5;letter-spacing:normal}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) :is(input,select,textarea){font-size:var(--form-text);line-height:1.5;min-height:var(--form-control-height);padding:13px 16px;min-width:0;max-width:100%;font-weight:500}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) :is(input[type=checkbox],input[type=radio]){min-height:22px;width:22px;height:22px;padding:0;flex-shrink:0;accent-color:var(--green)}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) textarea{min-height:140px}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) input::placeholder{color:#677e75;opacity:1;font-weight:400;letter-spacing:normal}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) :is(button,.button),
body .address-map-actions :is(a,button),
body .links :is(button,.button),
body #export-result{font-size:16px;line-height:1.45;min-height:52px;padding:13px 18px;white-space:normal;text-align:center}
body :is(form,.public-form-card,.fields,.calculator,.login-panel,dialog,.comparison-grid) :is(small,.hint,.field-help,.field-error,.form-guidance,.public-error,.muted,.notice),
body .fields .hint,
body .card form>.hint,
body .form-field small,
body .address-map-note,
body .public-field small{font-size:var(--form-help);font-weight:400;line-height:1.6;letter-spacing:normal}
body .public-form-card>p:not(.eyebrow),
body .public-form-card details p,
body .stock-step>p{font-size:16px;line-height:1.65}
body .public-form-card :is(summary,legend),
body #comparables-panel summary{font-size:16px;line-height:1.5;cursor:pointer}
body .public-field{margin:26px 0}
body .public-field :is(input,select){margin-top:9px}
body .public-field small,body .field-help{margin-top:8px}
body .fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
body .fields>*,body .form-grid>*{min-width:0}
body .fields label{margin-bottom:9px}
body .fields .full{grid-column:1/-1}
body .reference .fields{gap:22px 16px}
body .form-guidance{padding:16px 18px;margin-bottom:26px;border-left:3px solid #007557;background:#edf5ee}
body .field-error,body .public-error{font-weight:600}
body .address-map-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:6px}
body .address-map-actions a{display:flex;align-items:center;justify-content:center}
body .address-map-note{margin-top:0}
body #national-form{container-type:inline-size}
body .form-section-heading{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin:10px 0 0;padding-top:26px;border-top:1px solid var(--line)}
body .form-section-heading:first-child{padding-top:0;margin-top:0;border-top:0}
body .form-section-heading span{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;background:#e8f2ed;color:#007557;font-size:15px;font-weight:750}
body .form-section-heading h3{margin:0;font-size:23px;line-height:1.25;font-weight:500;letter-spacing:-.4px}
body #national-form>button[type=submit]{margin-top:12px;min-height:58px;font-size:18px}
body .public-form-card form>button[type=submit]{min-height:58px;font-size:18px}
body #national-form .field-help:empty{display:none}
body .hero-search .search-modes legend{font-size:16px;line-height:1.5}
body .hero-search .search-modes button{font-size:16px;min-height:48px;padding:10px 18px}
body .hero-search #hero-message{font-size:15px;line-height:1.6;min-height:0;margin-bottom:14px}
body .hero-search #hero-location{font-size:18px}
body .hero-search #hero-submit{font-size:24px;min-width:52px;padding:12px}
body .hero-search #hero-suggestions li{font-size:16px;min-height:52px;line-height:1.5}
body .hero-search .suggestion-state{font-size:13px}
body .stock-reference :is(p,small,.muted),body .stock-selected small{font-size:15px;line-height:1.6}
body .public-result :is(p,li,small){font-size:15px;line-height:1.6}
body .public-result .secondary{font-size:16px;min-height:52px;line-height:1.5;white-space:normal}
@container(max-width:460px){#national-form .fields{grid-template-columns:minmax(0,1fr)}#national-form .address-map-actions{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){
 body .fields,body .reference .fields,body .form-grid{grid-template-columns:minmax(0,1fr);gap:23px}
 body .fields .full,body .form-field.full{grid-column:1/-1}
 body .address-map-actions{grid-template-columns:minmax(0,1fr)}
 body .public-form-card{padding:24px 20px}
 body .public-field{margin:24px 0}
 body .hero-search .hero-input-row{gap:8px}
 body .hero-search #hero-location{min-width:0;padding-inline:4px}
 body .form-guidance{padding:14px;font-size:15px}
 body .form-section-heading h3{font-size:22px}
 body .reference{padding:18px 14px}
}
