/* Expand the quotation naturally when additional item or service rows are present. */
.client-proposal > section { height: auto; overflow: visible; }
.proposal-columns { min-height: 370px; height: auto; align-items: stretch; }
.proposal-columns > div { min-width: 0; }
.proposal-item { min-height: 55px; height: auto; padding: 8px 0; }
.proposal-item span { min-width: 0; padding: 0 10px; overflow-wrap: anywhere; line-height: 1.35; }
.proposal-services { display: flex; flex-direction: column; }
.proposal-service-list { flex: 1; }
.proposal-service-list p { margin: 0; padding: 8px 12px; line-height: 1.35; overflow-wrap: anywhere; }

/* Use matching columns so bank details align directly below the referral details. */
.proposal-header { display: grid; grid-template-columns: 1.18fr .82fr; gap: 44px; }
.proposal-header img { width: 100%; max-width: 480px; }
.proposal-info { grid-template-columns: 1.18fr .82fr; align-items: start; gap: 44px; }
.proposal-info > div {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}
.proposal-info > div h2,.proposal-info > div h3 { min-height: 28px; margin: 4px 0 8px; }
.proposal-info > div p { margin: 0; overflow-wrap: anywhere; }

/* Keep every payment-method label orange and every price box black. */
.payment-box label:first-child > span { background: #ff9700; }
.payment-box [data-full-payment-price] {
  display: inline;
  padding: 0;
  background: transparent;
  color: inherit;
  font: inherit;
}
.payment-box label > strong { background: #3c3c42; color: #fff; }

.quotation-document-settings { margin-top: 16px; padding: 20px; }
.quotation-settings-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.quotation-settings-head h2,.quotation-settings-head p { margin: 4px 0; }
.quotation-settings-head p,.quotation-settings-section > p { color: var(--muted); }
.quotation-settings-section { padding: 18px 0; border-top: 1px solid var(--line); }
.quotation-settings-section h3 { margin: 0 0 12px; }
.quotation-settings-section textarea { width: 100%; min-height: 130px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; resize: vertical; background: #fff; line-height: 1.45; }
.quotation-settings-section:nth-of-type(4) textarea { min-height: 330px; }
.quotation-settings-save { display: flex; justify-content: flex-end; padding-top: 16px; border-top: 1px solid var(--line); }

@media (max-width: 700px) {
  .quotation-settings-head { align-items: stretch; flex-direction: column; }
  .proposal-header { grid-template-columns: 1fr; }
  .proposal-info > div { min-height: 0; }
}
