/* Calculators layout. Tokens only; debt rows and plan cards come from debt-audit.css / components.css. */

.adg-calc__form { display: grid; gap: var(--adg-space-5); }
.adg-calc__form .adg-audit__lead { margin: 0; }
.adg-calc__form .adg-audit__add { margin-top: calc(-1 * var(--adg-space-2)); justify-self: start; }
@media (min-width: 600px) {
  .adg-calc__form > .adg-field,
  .adg-calc__form > [data-mode] > .adg-field { max-width: 20rem; }
}
.adg-calc__mode,
.adg-calc__group { display: grid; gap: var(--adg-space-3); margin: 0; padding: 0; border: 0; min-width: 0; }
.adg-calc__mode legend,
.adg-calc__group legend { padding: 0; margin-bottom: var(--adg-space-1); }
.adg-calc__group legend { font-size: var(--adg-text-md); font-family: var(--adg-font-heading); color: var(--adg-color-heading); }
@media (min-width: 600px) { .adg-calc__group { grid-template-columns: repeat(3, 1fr); align-items: start; } .adg-calc__group legend { grid-column: 1 / -1; } }

.adg-calc__results {
  margin-top: var(--adg-space-8);
  padding-top: var(--adg-space-6);
  border-top: 1px solid var(--adg-color-border);
}
.adg-calc__results > * + * { margin-top: var(--adg-space-4); }
.adg-calc__results.is-stale { opacity: 0.45; }
.adg-calc__results p { margin-bottom: 0; }
.adg-stat-grid--3 { grid-template-columns: 1fr; }
@media (min-width: 600px) { .adg-stat-grid--3 { grid-template-columns: repeat(3, 1fr); } }
.adg-calc__summary { font-size: var(--adg-text-md); font-weight: var(--adg-weight-semibold); color: var(--adg-color-text); }
.adg-calc__next { font-size: var(--adg-text-sm); }

/* Four-field groups (balance transfer offer): two across, then four on wide screens. */
@media (min-width: 600px) { .adg-calc__group--4 { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .adg-calc__group--4 { grid-template-columns: repeat(4, 1fr); } }

/* "What if you paid more?" table: the visitor's own payment row stands out. */
.adg-table__row--current td { background: var(--adg-color-bg-subtle); font-weight: var(--adg-weight-semibold); }
.adg-table__note { color: var(--adg-color-text-muted); font-weight: var(--adg-weight-regular); }
.adg-calc__minimum > * + * { margin-top: var(--adg-space-1); }
