/*
 * Financial document components for the refined themes.
 * The seller header, detail rows and final amount form one quiet hierarchy;
 * badges, warning states and interactive controls keep their own semantics.
 */
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card, .scf-funded-details) {
  border: 1px solid var(--biz-line);
  border-radius: var(--biz-radius-card);
  color: var(--biz-ink);
  background: var(--biz-surface);
  box-shadow: var(--biz-shadow-card);
}

/* Direct header children only: button contents and status marks are excluded. */
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card) > header {
  padding: var(--biz-space-4) var(--biz-card-padding);
  gap: var(--biz-space-2);
  border-bottom: 1px solid var(--biz-line);
  color: var(--biz-ink);
  background: var(--biz-surface-soft);
}
.phone.next-ui-theme.app-theme-refined .invoice-document > header > span {
  min-width: 0;
  gap: var(--biz-space-1);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-payment-receipt,
  .scf-quote-card) > header {
  align-items: flex-start;
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card) > header > :is(span, small),
.phone.next-ui-theme.app-theme-refined .invoice-document > header > span > small {
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
  letter-spacing: 0;
}
.phone.next-ui-theme.app-theme-refined .invoice-document > header strong {
  color: var(--biz-ink);
  font-family: var(--biz-font-medium);
  font-size: var(--biz-text-body) !important;
  line-height: var(--biz-line-body);
}
.phone.next-ui-theme.app-theme-refined .invoice-document > header > b {
  flex-shrink: 0;
  padding: var(--biz-space-1) var(--biz-space-3);
  border: 1px solid var(--biz-line);
  border-radius: 999px;
  color: var(--biz-muted);
  background: var(--biz-surface);
  font-family: var(--biz-font-medium);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}

/* The same label/value rhythm applies to invoices, receipts and quote details. */
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card) > dl {
  margin: 0;
  padding: 0 var(--biz-card-padding);
}
.phone.next-ui-theme.app-theme-refined :is(.scf-funded-details, .detail-list) {
  padding: 0 var(--biz-card-padding);
  border-color: var(--biz-line);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document > dl,
  .invoice-payment-receipt > dl, .scf-quote-card > dl,
  .scf-funded-details, .detail-list) > div {
  min-height: var(--biz-touch);
  padding-block: var(--biz-space-3);
  padding-inline: 0;
  align-items: baseline;
  column-gap: var(--biz-space-4);
  border-bottom: 1px solid var(--biz-line);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document > dl,
  .invoice-payment-receipt > dl, .scf-quote-card > dl,
  .scf-funded-details, .detail-list) > div:last-child {
  border-bottom: 0;
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card, .scf-funded-details, .detail-list) dt {
  flex: 0 1 38%;
  min-width: 0;
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document,
  .invoice-payment-receipt, .scf-quote-card, .scf-funded-details, .detail-list) dd {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  color: var(--biz-ink);
  font-family: var(--biz-font-medium);
  font-size: var(--biz-text-body) !important;
  line-height: var(--biz-line-body);
  text-align: left;
  overflow-wrap: anywhere;
  letter-spacing: 0;
  font-variant-numeric: proportional-nums;
  font-feature-settings: "tnum" 0, "pnum" 1;
}

/* Final amounts carry the emphasis; document labels remain secondary. */
.phone.next-ui-theme.app-theme-refined .invoice-document > footer {
  padding: var(--biz-space-4) var(--biz-card-padding);
  gap: var(--biz-space-3);
  flex-wrap: wrap;
  border-top: 1px solid var(--biz-line);
  color: var(--biz-ink);
  background: var(--biz-surface);
  font-family: var(--biz-font-medium);
}
.phone.next-ui-theme.app-theme-refined .invoice-document > footer > span {
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-document > footer > strong,
  .invoice-payment-receipt > header > strong, .scf-quote-card > header > strong,
  .invoice-total-card > strong) {
  min-width: 0;
  margin: 0;
  color: var(--biz-ink);
  font-family: var(--biz-font-semibold);
  font-size: var(--biz-document-amount-size) !important;
  line-height: var(--biz-document-amount-line);
  overflow-wrap: anywhere;
  letter-spacing: 0;
  font-variant-numeric: proportional-nums;
  font-feature-settings: "tnum" 0, "pnum" 1;
}
.phone.next-ui-theme.app-theme-refined .scf-quote-card > header > strong > i {
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}

/* Related document summaries use a quiet border instead of a dashed box. */
.phone.next-ui-theme.app-theme-refined :is(.invoice-party-card,
  .invoice-total-card, .invoice-collection-card, .invoice-link-card) {
  padding: var(--biz-card-padding);
  gap: var(--biz-space-1);
  border: 1px solid var(--biz-line);
  border-radius: var(--biz-radius-card);
  color: var(--biz-ink);
  background: var(--biz-surface);
  box-shadow: var(--biz-shadow-card);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-party-card,
  .invoice-total-card, .invoice-collection-card, .invoice-link-card) > :is(small, span) {
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}
.phone.next-ui-theme.app-theme-refined :is(.invoice-party-card,
  .invoice-collection-card, .invoice-link-card) > strong {
  color: var(--biz-ink);
  font-family: var(--biz-font-medium);
  font-size: var(--biz-text-body) !important;
  line-height: var(--biz-line-body);
  overflow-wrap: anywhere;
}

/* Quote arithmetic is a compact explanation, separate from the final total. */
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow {
  padding: var(--biz-space-3) var(--biz-card-padding);
  border-bottom: 1px solid var(--biz-line);
  background: var(--biz-surface);
}
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow .result {
  padding: var(--biz-space-2);
  border-radius: var(--biz-icon-radius-compact);
  color: var(--biz-ink);
  background: var(--biz-surface-soft);
}
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow b {
  color: var(--biz-ink);
  font-family: var(--biz-font-medium);
  font-size: var(--biz-text-caption) !important;
  line-height: var(--biz-line-caption);
}
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow small,
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow > i,
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow .result small {
  color: var(--biz-muted);
  font-family: var(--biz-font-regular);
}
.phone.next-ui-theme.app-theme-refined .scf-screen .scf-money-flow .result b {
  color: var(--biz-ink);
  font-family: var(--biz-font-semibold);
}
