/* The cash offer is a choice, with its conditional totals visible before payment. */
:root { --cash-ink: #164a36; --cash-surface: #f0f5ed; --cash-border: #769d7d; --cash-sticker: #f2cc70; }
.payment-choice label.cash-payment-choice,
.admin-payment-choice label.cash-payment-choice {
  position: relative;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  overflow: visible;
  margin-top: 16px;
  border: 2px solid var(--cash-border);
  border-radius: 18px;
  background: var(--cash-surface);
  color: var(--cash-ink);
  padding: 22px 18px 18px;
  box-shadow: 0 4px 16px #164a360c;
}
.payment-choice label.cash-payment-choice:has(input:checked),
.admin-payment-choice label.cash-payment-choice:has(input:checked) {
  border-color: var(--cash-ink);
  background: var(--cash-surface);
  box-shadow: 0 0 0 2px #164a3618;
}
.cash-payment-choice > input { accent-color: var(--cash-ink); }
.cash-payment-choice > span:last-child { min-width: 0; flex: 1; display: grid; gap: 8px; }
.cash-payment-choice > span:last-child > strong { display: block; max-width: calc(100% - 54px); font-size: 16px; line-height: 1.25; color: var(--cash-ink); }
.cash-payment-choice :is(#payment-cash-summary,#admin-cash-summary) { color: var(--cash-ink); font-size: 13px; font-weight: 400; line-height: 1.5; }
/* Keep the two amounts scannable instead of combining payment terms in a paragraph. */
.cash-payment-choice :is(#payment-cash-summary,#admin-cash-summary) { display: grid; gap: 8px; }
.cash-payment-choice .cash-summary-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.cash-payment-choice .cash-summary-row strong { color: inherit; font-size: 17px; line-height: 1.3; font-variant-numeric: tabular-nums; white-space: nowrap; }
.cash-payment-choice .cash-summary-total { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 3px 12px; border-top: 1px solid var(--cash-border); padding-top: 10px; font-size: 12px; font-weight: 700; }
.cash-payment-choice .cash-summary-card { display: block; font-size: 11px; line-height: 1.4; }
.cash-payment-choice .cash-saving-sticker {
  position: absolute;
  top: -16px;
  right: 12px;
  width: 62px;
  min-height: 56px;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 0;
  border: 1px solid #dfb54d;
  border-radius: 9px 12px 9px 12px;
  padding: 5px;
  background: var(--cash-sticker);
  color: #173f30;
  box-shadow: 0 3px 0 #d0a84f, 0 6px 10px #172c2020;
  transform: rotate(7deg);
  pointer-events: none;
}
.cash-payment-choice .cash-saving-sticker small { color: inherit; font-size: 10px; font-weight: 800; line-height: 1; letter-spacing: .08em; text-transform: uppercase; }
.cash-payment-choice .cash-saving-sticker b { color: inherit; font-size: 24px; font-weight: 850; line-height: 1.2; letter-spacing: -.04em; }
@media (prefers-color-scheme: dark) {
  :root { --cash-ink: #d9efdb; --cash-surface: #1d3429; --cash-border: #7ca98a; }
}
