.pricing-disclaimer-card { margin-top: 14px; padding: 18px 22px; border-radius: 22px; background: rgba(255,255,255,.78); border: 1px solid rgba(24,91,157,.13); box-shadow: 0 12px 28px rgba(13,59,102,.08); color: var(--muted); font-size: 14px; line-height: 1.62; 
}

.pricing-disclaimer-card strong { display: block; margin-bottom: 7px; color: var(--ink); font-size: 15px; line-height: 1.25; 
}

.pricing-disclaimer-card p { margin: 0; 
}

@media (max-width: 820px) {.pricing-disclaimer-card { padding: 16px 18px; font-size: 13.5px; 
}
}

.pricing-disclaimer-card { margin-top: 10px !important; padding: 13px 18px !important; border-radius: 18px !important; background: rgba(255,255,255,.56) !important; border-color: rgba(24,91,157,.10) !important; box-shadow: none !important; font-size: 13px !important; line-height: 1.50 !important; 
}

.pricing-disclaimer-card strong { margin-bottom: 5px !important; font-size: 14px !important; 
}

.pricing-disclaimer-card { padding: 12px 15px !important; font-size: 12.8px !important; 
}

.pricing-estimator-launch{margin-top:14px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:18px;background:linear-gradient(135deg,rgba(13,59,102,.075),rgba(52,122,168,.055));border:1px solid rgba(24,91,157,.13)}
.pricing-estimator-launch-copy{display:grid;gap:4px}.pricing-estimator-launch-copy strong{color:var(--ink);font-size:15px}.pricing-estimator-launch-copy span{color:var(--muted);font-size:13px;line-height:1.45}.pricing-estimator-launch .btn{flex:0 0 auto}
.pricing-estimator{display:grid;gap:1rem}.estimator-intro,.estimator-hint,.estimator-note,.estimator-deposit,.estimator-review{margin:0}.estimator-note{padding:.75rem .9rem;border-radius:.8rem;background:rgba(13,59,102,.07);font-size:.94rem}.estimator-progress{font-weight:700;font-size:.92rem;opacity:.78}.estimator-question{border:0;padding:0;margin:0;display:grid;gap:.85rem}.estimator-question legend{font-weight:700;font-size:1.08rem;line-height:1.45;padding:0}.estimator-hint{color:var(--muted);font-size:.92rem}.estimator-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.estimator-option,.estimator-extra{display:flex;align-items:center;min-height:46px;padding:.65rem .72rem;border:1px solid rgba(13,59,102,.2);border-radius:.8rem;cursor:pointer;background:#fff;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.estimator-option input,.estimator-extra input{position:absolute;opacity:0;pointer-events:none}.estimator-option:hover,.estimator-option:focus-within,.estimator-extra:hover,.estimator-extra:focus-within{border-color:rgba(13,59,102,.55)}.estimator-option.is-selected,.estimator-extra.is-selected{border-color:#0d3b66;background:rgba(13,59,102,.08);box-shadow:0 0 0 2px rgba(13,59,102,.08)}.estimator-extra-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.estimator-actions{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.estimator-actions .btn{min-width:9rem}.estimator-actions .btn:disabled{opacity:.45;cursor:not-allowed}.estimator-result>h3{margin:0}.estimator-result-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border-radius:.9rem;background:rgba(13,59,102,.075)}.estimator-result-card span{font-size:.94rem}.estimator-result-card strong{font-size:1.55rem;color:var(--ink);white-space:nowrap}.estimator-result-group{display:grid;gap:.55rem}.estimator-result-group h3{margin:0;font-size:1.02rem}.estimator-result-group ul{margin:.1rem 0 0;padding-left:1.2rem;display:grid;gap:.42rem}.estimator-result-group p{margin:0;color:var(--muted);font-size:.92rem}.estimator-deposit{padding:.7rem .85rem;border-radius:.75rem;background:rgba(187,122,25,.08)}.estimator-result-actions{margin-top:.15rem}
@media(max-width:640px){.pricing-estimator-launch{align-items:stretch;flex-direction:column}.pricing-estimator-launch .btn{width:100%}.estimator-option-grid,.estimator-extra-grid{grid-template-columns:1fr}.estimator-actions{display:grid;grid-template-columns:1fr 1fr}.estimator-actions .btn{min-width:0;width:100%}.estimator-result-card{align-items:flex-start;flex-direction:column;gap:.35rem}.estimator-result-card strong{font-size:1.4rem}}
.estimator-quantity-grid{display:grid;gap:.65rem}.estimator-quantity-row{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:.9rem;padding:.7rem .8rem;border:1px solid rgba(13,59,102,.16);border-radius:.8rem;background:#fff}.estimator-quantity-row span{font-weight:600;line-height:1.35}.estimator-quantity-row input{width:100%;min-height:44px;padding:.55rem .6rem;border:1px solid rgba(13,59,102,.28);border-radius:.65rem;background:#fff;color:var(--ink);font:inherit;text-align:center}.estimator-quantity-row input:focus{outline:2px solid rgba(13,59,102,.25);outline-offset:2px;border-color:#0d3b66}.estimator-total{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:2px solid rgba(13,59,102,.2);border-radius:.9rem;background:rgba(13,59,102,.05)}.estimator-total span{font-weight:700}.estimator-total strong{font-size:1.7rem;color:var(--ink);white-space:nowrap}.estimator-deposit small{color:var(--muted)}
@media(max-width:640px){.estimator-quantity-row{grid-template-columns:minmax(0,1fr) 82px}.estimator-total{align-items:flex-start;flex-direction:column;gap:.35rem}.estimator-total strong{font-size:1.5rem}}
.planner-action-bar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-top:1rem}.planner-action-bar .btn{margin:0}

/* v919: calculator follows the pricing factors and stays visually secondary to the base price cards. */
.pricing-estimator-launch { margin-top: 10px; padding: 13px 16px; gap: 14px; }
.pricing-estimator-launch-copy { gap: 3px; }
.pricing-estimator-launch-copy strong { font-size: 14.5px; }
.pricing-estimator-launch-copy span { font-size: 12.6px; line-height: 1.38; }
.pricing-estimator-launch .btn { min-height: 40px; padding-top: 9px; padding-bottom: 9px; }


/* v934: mobile planner viewport geometry moved to home-modals.css so estimator and checklist share one shell. */

/* v932: composable income selection and cross-tool contradiction confirmation. */
.estimator-income-grid{display:grid;gap:.65rem}.estimator-income-row{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:.9rem;padding:.72rem .82rem;border:1px solid rgba(13,59,102,.16);border-radius:.8rem;background:#fff}.estimator-income-row span{font-weight:650;line-height:1.35}.estimator-income-row input{width:100%;min-height:44px;padding:.55rem .6rem;border:1px solid rgba(13,59,102,.28);border-radius:.65rem;background:#fff;color:var(--ink);font:inherit;text-align:center}.estimator-income-row input:focus{outline:2px solid rgba(13,59,102,.25);outline-offset:2px;border-color:#0d3b66}.estimator-income-other{display:flex;align-items:center;gap:.7rem;min-height:46px;padding:.7rem .82rem;border:1px solid rgba(13,59,102,.16);border-radius:.8rem;background:#fff;cursor:pointer}.estimator-income-other input{width:18px;height:18px;accent-color:#0d3b66}.estimator-income-other.is-selected{border-color:#0d3b66;background:rgba(13,59,102,.08);box-shadow:0 0 0 2px rgba(13,59,102,.08)}.estimator-conflict{display:grid;gap:.55rem;padding:.8rem .9rem;border:1px solid rgba(216,161,58,.48);border-radius:.85rem;background:rgba(255,232,174,.62);color:var(--ink)}.estimator-conflict strong{font-size:.96rem}.estimator-conflict p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.42}.estimator-conflict-actions{display:flex;gap:.6rem;flex-wrap:wrap}.estimator-conflict-actions .btn{min-width:0}
@media(max-width:640px){.estimator-income-row{grid-template-columns:minmax(0,1fr) 78px;gap:.65rem}.estimator-income-row input{min-height:42px}.estimator-conflict-actions{display:grid;grid-template-columns:1fr 1fr}.estimator-conflict-actions .btn{width:100%}}

/* v935: conflict/result controls are secondary actions, not full-size CTAs. */
.estimator-result-card-unresolved strong{font-size:1rem;color:var(--muted);white-space:normal;text-align:right}
.estimator-conflict .planner-conflict-fact,.estimator-conflict .planner-conflict-reason{font-size:.86rem;line-height:1.34}
.estimator-conflict .planner-conflict-fact b,.estimator-conflict .planner-conflict-reason b{color:var(--ink)}
.estimator-conflict-actions{gap:.42rem}
.estimator-conflict-actions .btn{min-width:0;min-height:36px;padding:7px 12px;font-size:12.8px;line-height:1.15;border-radius:10px}
@media(max-width:640px){.estimator-conflict-actions{grid-template-columns:1fr 1fr;gap:.4rem}.estimator-conflict-actions .btn{min-height:36px;padding:7px 8px;font-size:12.2px}.estimator-result-card-unresolved strong{text-align:left}}
/* v935 responsive override: general mobile .btn uses !important; compact conflict controls stay intentional. Result actions use the shared planner contract in home-modals.css. */
.estimator-conflict-actions .btn{min-height:36px!important;padding:7px 12px!important;font-size:12.8px!important;line-height:1.15!important;border-radius:10px!important}
@media(max-width:640px){.estimator-conflict-actions .btn{min-height:36px!important;padding:7px 9px!important;font-size:12.2px!important}}


/* v937: desktop planner density. Keep the mobile shared shell from v934;
   compact only desktop geometry so the first estimator step and its actions
   fit at ordinary laptop heights without shrinking readable text. */
@media (min-width:821px) {
  .details-modal.planner-modal-open .details-modal-card{
    width:min(900px,calc(100vw - 56px));
    max-height:min(92vh,860px);
    padding:24px 30px 22px;
  }
  .details-modal.planner-modal-open .details-modal-card h2{
    margin:0 52px 12px 0;
    font-size:clamp(30px,3vw,42px);
    line-height:1.04;
  }
  .details-modal.planner-modal-open .details-modal-body{
    font-size:16px;
    line-height:1.55;
  }
  .details-modal.planner-modal-open .pricing-estimator,
  .details-modal.planner-modal-open .intake-checklist{
    gap:.66rem;
  }
  .details-modal.planner-modal-open .estimator-intro{line-height:1.5}
  .details-modal.planner-modal-open .estimator-question{gap:.52rem}
  .details-modal.planner-modal-open .estimator-income-grid{gap:.46rem}
  .details-modal.planner-modal-open .estimator-income-row{
    min-height:58px;
    padding:.5rem .72rem;
    gap:.7rem;
  }
  .details-modal.planner-modal-open .estimator-income-row input{
    min-height:42px;
    padding:.42rem .55rem;
  }
  .details-modal.planner-modal-open .estimator-income-other{
    min-height:50px;
    padding:.5rem .72rem;
  }
  .details-modal.planner-modal-open .estimator-actions{
    margin-top:.12rem;
  }
}

/* v941: defaults inherited from the shared planner are visibly distinguished
   without introducing a second control style. */
.estimator-income-row.is-prefilled,.estimator-option.is-prefilled,.estimator-extra.is-prefilled{border-color:rgba(216,161,58,.62);box-shadow:0 0 0 2px rgba(216,161,58,.10)}
.estimator-extra.is-prefilled{cursor:default}
.estimator-prefilled-note{display:block;margin-top:.18rem;color:#8a641d;font-size:.72rem;font-weight:700;line-height:1.2}
.estimator-extra.is-prefilled input:disabled+span{opacity:1}
