/* Layout only; cards, buttons, tables, typography and colors use ALP components. */
.estimates-content { min-width: 0; }
.estimate-disclosure { margin: 0 0 12px; }
.estimate-search { display: block; width: min(100%, 420px); }
.estimate-search input { width: 100%; min-height: 44px; }
.estimate-sr { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.estimate-table { width: 100%; }
.estimate-table td { overflow-wrap: anywhere; }
.estimate-table .money { white-space: nowrap; }
.estimate-name { min-height: 44px; text-align: left; }
.estimate-title { display: flex; align-items: center; gap: 12px; margin: 16px 0; }
.estimate-title h2 { margin: 0; overflow-wrap: anywhere; }
.estimate-tabs { display: flex; max-width: 100%; overflow-x: auto; margin-bottom: var(--page-filter-gap, 16px); }
#content .estimates-content .estimate-tabs { flex-wrap: nowrap; }
#content .estimates-content .estimate-tabs > button { flex-shrink: 0; min-height: 44px; }
.estimate-tabs button:disabled { cursor: default; }
.estimate-property { display: grid; grid-template-columns: minmax(140px, 1fr) 3fr; gap: 20px; padding: 20px; }
.estimate-photo { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px; min-height: 140px; text-align: center; color: var(--muted); border-radius: inherit; }
.estimate-photo .icon { width: 40px; height: 40px; }
.estimate-property-info { min-width: 0; }
.estimate-property-info h2 { margin: 0 0 16px; overflow-wrap: anywhere; }
.estimate-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; }
.estimate-facts dt { color: var(--muted); }
.estimate-facts dd { margin: 4px 0 0; overflow-wrap: anywhere; }
.estimate-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 16px 0; }
.estimate-metrics .info-card-value { overflow-wrap: anywhere; }
.estimate-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.estimate-section { padding: 20px; margin-bottom: 16px; }
.estimate-section h2 { margin: 0 0 16px; }
.estimate-unavailable { max-width: 900px; }
@media (max-width: 1100px) {
  .estimate-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .estimate-columns { grid-template-columns: minmax(0, 1fr); gap: 0; }
}
@media (max-width: 600px) {
  .estimate-property { grid-template-columns: minmax(0, 1fr); }
  .estimate-facts { grid-template-columns: minmax(0, 1fr); }
}
