/* Scoped supplier-payment scenario; the existing budget calculators stay separate. */
.editorial-site .supplier-cash-planner { margin-block: 32px; padding: 28px; border: 1px solid var(--editorial-line); background: var(--editorial-card); }
.editorial-site .supplier-cash-planner h3 { margin-top: 0; }
.editorial-site .cash-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.editorial-site .cash-fields > div { min-width: 0; }
.editorial-site .cash-fields label { display: block; margin-bottom: 8px; font-weight: 600; }
.editorial-site .cash-fields :is(input, select) { display: block; width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid #8f847b; background: var(--editorial-card); color: var(--editorial-ink); font: inherit; }
.editorial-site .cash-fields small { display: block; margin-top: 8px; line-height: 1.7; color: #514c47; }
.editorial-site .cash-fields [aria-invalid="true"] { border: 2px solid var(--editorial-plum); }
.editorial-site .cash-fields :is(input, select):focus-visible { outline: 3px solid var(--editorial-plum); outline-offset: 3px; }
.editorial-site .cash-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.editorial-site .cash-summary > div { min-width: 0; padding: 18px; border: 1px solid var(--editorial-line); background: var(--editorial-soft); }
.editorial-site .cash-summary dt { font-size: 13px; color: #514c47; }
.editorial-site .cash-summary dd { margin: 10px 0 0; font-size: 22px; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.editorial-site .cash-timeline { margin-block: 22px; border: 1px solid var(--editorial-line); padding: 0 18px 12px; }
.editorial-site .cash-timeline summary { min-height: 44px; padding-block: 16px; font-weight: 600; cursor: pointer; }
.editorial-site .cash-timeline .guide-table { margin-top: 12px; }
.editorial-site .cash-timeline :is(th, td) { white-space: nowrap; font-variant-numeric: tabular-nums; }
.editorial-site .cash-timeline :is(summary, .guide-table):focus-visible { outline: 3px solid var(--editorial-plum); outline-offset: 3px; }
.editorial-site #supplier-cash-status { min-height: 1.75em; font-size: 13px; }
.editorial-site .cash-form-actions { margin-block: 24px 0; }
@media (max-width: 699px) {
  .editorial-site .supplier-cash-planner { padding: 22px 18px; }
  .editorial-site .cash-fields, .editorial-site .cash-summary { grid-template-columns: 1fr; }
}
@media (forced-colors: active) {
  .editorial-site .supplier-cash-planner :focus-visible { outline-color: Highlight; }
}
