/* ==========================================================================
   FINKU GEN-Z — BNPL & PINJOL AGGREGATOR STYLES (bnpl.css)
   ========================================================================== */

.bnpl-ratio-banner {
  padding: 24px;
  border-radius: var(--border-radius-md);
  margin-bottom: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  transition: all var(--transition-normal);
}

.bnpl-ratio-banner.safe {
  background: rgba(0, 229, 160, 0.07);
  border: 1px solid rgba(0, 229, 160, 0.22);
}

.bnpl-ratio-banner.warning {
  background: rgba(255, 181, 71, 0.08);
  border: 1px solid rgba(255, 181, 71, 0.28);
}

.bnpl-ratio-banner.danger {
  background: rgba(244, 63, 94, 0.07);
  border: 1px solid rgba(244, 63, 94, 0.24);
  box-shadow: none;
}

body.light-mode .bnpl-ratio-banner.safe {
  background: rgba(5, 150, 105, 0.08);
  border-color: rgba(5, 150, 105, 0.28);
}
body.light-mode .bnpl-ratio-banner.warning {
  background: rgba(217, 119, 6, 0.08);
  border-color: rgba(217, 119, 6, 0.28);
}
body.light-mode .bnpl-ratio-banner.danger {
  background: rgba(190, 18, 60, 0.07);
  border-color: rgba(190, 18, 60, 0.24);
}

.bnpl-grid-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 20px;
  margin-bottom: 32px;
}

.bnpl-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  position: relative;
  overflow: hidden;
}

.bnpl-platform-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.bnpl-logo-badge {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 800;
  font-size: 16px;
}

.bnpl-countdown-strip {
  padding: 8px 12px;
  background-color: var(--bg-tertiary);
  border-radius: var(--border-radius-sm);
  font-size: 12px;
  color: var(--accent-yellow);
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Strategy Simulator Comparison Box */
.strategy-simulator-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 14px;
  margin-bottom: 16px;
}

@media (max-width: 768px) {
  .strategy-simulator-grid {
    grid-template-columns: 1fr;
  }
  .strategy-box {
    padding: 16px;
  }
  .bnpl-item-actions .btn,
  .bnpl-item-actions button {
    min-height: 44px;
  }
  .bnpl-ratio-banner {
    flex-direction: column;
    align-items: stretch;
    padding: 16px;
    gap: 14px;
  }
  .bnpl-grid-cards {
    grid-template-columns: 1fr;
  }
}

.strategy-box {
  padding: 20px;
  background-color: var(--bg-tertiary);
  border-radius: var(--border-radius-sm);
  border: 1px solid var(--border-color);
  transition: all var(--transition-fast);
}

.strategy-box:hover {
  border-color: var(--accent-purple);
  transform: translateY(-3px);
}

/* ==========================================================================
   STAGE 3A — UI/UX CLEANUP (extracted from inline style="" attributes)
   195 non-purple + 9 confirmed-static purple occurrences. See SESSION_MEMORY.md.
   STAGE 3B — 3 dynamic purple spots extracted below:
     .bnpl-type-label-inactive / -fixed-active / -variable-active (toggle)
     .bnpl-apply-ai-rate-btn ("Terapkan saran AI")
     .bnpl-strategy-stat-box-purple ("Total Hemat Bunga")
   ========================================================================== */

/* ── Ratio banner internals ─────────────────────────────────────────────── */
.bnpl-ratio-banner { margin-bottom: 24px; }
.bnpl-banner-content { flex: 1; min-width: 0; }
.bnpl-dti-badge { margin-bottom: 6px; }
.bnpl-gauge-wrap { margin-top: 14px; }
.bnpl-gauge-labels {
  display: flex;
  justify-content: space-between;
  font-size: 11px;
  color: var(--text-muted);
  margin-bottom: 5px;
}
.bnpl-gauge-label-30 { color: var(--accent-yellow); }
.bnpl-gauge-label-50 { color: var(--accent-red); }
.bnpl-gauge-track {
  height: 8px;
  background: var(--bg-tertiary);
  border-radius: 99px;
  overflow: hidden;
  position: relative;
}
.bnpl-gauge-marker-30,
.bnpl-gauge-marker-50 {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 1px;
  opacity: 0.5;
}
.bnpl-gauge-marker-30 { left: 30%; background: var(--accent-yellow); }
.bnpl-gauge-marker-50 { left: 50%; background: var(--accent-red); }
.bnpl-gauge-fill {
  height: 100%;
  border-radius: 99px;
  transition: width 1s ease;
  /* width/background tetap inline — dinamis berdasarkan nilai DTI live */
}

/* ── Export/data dropdown ────────────────────────────────────────────────── */
.bnpl-export-wrap { position: relative; display: inline-block; }
.bnpl-export-menu-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(128, 128, 128, 0.12);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
}
.bnpl-export-dropdown {
  display: none;
  position: absolute;
  right: 0;
  top: 100%;
  margin-top: 6px;
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  box-shadow: var(--shadow-md);
  z-index: 999;
  min-width: 220px;
  padding: 6px 0;
  text-align: left;
}
.bnpl-export-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  background: none;
  border: none;
  color: var(--text-primary);
  padding: 10px 14px;
  font-size: 13px;
  cursor: pointer;
}
.bnpl-export-menu-item.text-green { color: var(--accent-green); }
.bnpl-export-menu-item.text-purple { color: var(--accent-purple); }
.bnpl-export-menu-divider {
  height: 1px;
  background: var(--border-color);
  margin: 4px 0;
}
.bnpl-file-input-hidden { display: none; }

/* ── KPI summary grid ────────────────────────────────────────────────────── */
.bnpl-kpi-grid { margin-bottom: 28px; }
.kpi-card-bnpl-monthly { --stat-glow: rgba(255, 181, 71, 0.12); }
.kpi-card-bnpl-safe { --stat-glow: rgba(0, 229, 160, 0.12); }
.bnpl-kpi-hint { font-size: 12px; color: var(--text-muted); }

/* ── Section header + empty state ────────────────────────────────────────── */
.bnpl-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
}
.bnpl-section-title { font-size: 16px; font-weight: 700; }
.bnpl-empty-state { grid-column: 1 / -1; text-align: center; padding: 48px; }
.bnpl-empty-icon { font-size: 42px; margin-bottom: 12px; }
.bnpl-empty-title { font-weight: 700; font-size: 16px; }
.bnpl-empty-desc { font-size: 13px; color: var(--text-secondary); margin-top: 4px; }
.bnpl-empty-confirm {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
  cursor: pointer;
}

/* ── Debt card body ──────────────────────────────────────────────────────── */
.bnpl-card-debt-block { margin: 14px 0 10px; }
.bnpl-card-debt-label {
  font-size: 11px;
  color: var(--text-muted);
  text-transform: uppercase;
}
.bnpl-card-debt-amount { font-size: 24px; }
.bnpl-card-due-box {
  background: var(--bg-tertiary);
  padding: 12px;
  border-radius: 8px;
  margin-bottom: 12px;
}
.bnpl-card-due-row {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: var(--text-muted);
  margin-bottom: 4px;
}
.bnpl-card-due-amount { font-size: 18px; }
.bnpl-card-paid-note { font-size: 11px; color: var(--accent-green); margin-top: 4px; }
.bnpl-card-progress-block { margin-bottom: 12px; }
.bnpl-card-progress-row {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  margin-bottom: 5px;
}
.bnpl-card-progress-label { color: var(--text-muted); }
.bnpl-card-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.bnpl-card-pay-btn { flex: 1; white-space: nowrap; }
.bnpl-card-icon-btn-blue { color: var(--accent-blue); }
.bnpl-card-icon-btn-red { color: var(--accent-red); }

/* ── AI Debt Strategy Advisor ────────────────────────────────────────────── */
/* Purple statis #1 (border) — warna identitas AI, alpha 0.3 tidak match token
   glow (0.1) sehingga dipertahankan literal supaya TIDAK ada pergeseran warna. */
.bnpl-debt-simulator-card {
  margin-bottom: 24px;
  border: 1px solid rgba(168, 85, 247, 0.3);
}
.bnpl-simulator-desc { font-size: 13px; color: var(--text-secondary); margin-top: 4px; }
.bnpl-simulator-input-row {
  display: flex;
  gap: 14px;
  align-items: flex-end;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.bnpl-simulator-input-group { margin-bottom: 0; flex: 1; min-width: 200px; }
.bnpl-simulator-run-btn { padding: 12px 24px; }
.bnpl-strategy-box-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.bnpl-strategy-box-title-green { color: var(--accent-green); font-size: 16px; }
.bnpl-strategy-box-title-purple { color: var(--accent-purple); font-size: 16px; }
.bnpl-strategy-box-desc {
  font-size: 13px;
  color: var(--text-secondary);
  line-height: 1.5;
  margin-bottom: 10px;
}
.bnpl-strategy-snowball-result {
  background: rgba(0, 229, 160, 0.1);
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 12px;
  color: var(--accent-green);
  font-weight: 600;
}
/* Purple statis #2 (background, alpha 0.1 = --accent-ai-purple-glow persis) */
.bnpl-strategy-avalanche-result {
  background: var(--accent-ai-purple-glow);
  padding: 10px 14px;
  border-radius: 6px;
  font-size: 12px;
  color: var(--accent-purple);
  font-weight: 600;
}
.bnpl-strategy-avalanche-hint {
  margin-top: 8px;
  font-size: 11px;
  color: var(--text-muted);
  font-style: italic;
}
/* Purple statis #3 (border ONLY — toggle display:none/block tetap lewat JS inline,
   inline style JS selalu menang atas class ini). Alpha 0.3 dipertahankan literal. */
.bnpl-ai-strategy-result {
  display: none;
  background: var(--bg-tertiary);
  padding: 18px;
  border-radius: 10px;
  border: 1px solid rgba(168, 85, 247, 0.3);
}
.bnpl-ai-strategy-content { font-size: 13px; color: var(--text-secondary); line-height: 1.6; }

body.light-mode .bnpl-strategy-stat-box-purple,
body.light-mode .bnpl-strategy-avalanche-result {
  background: rgba(109, 40, 217, 0.12);
}
.bnpl-payoff-section-wrap {
  margin-top: 16px;
  border-top: 1px solid var(--border-color);
  padding-top: 14px;
}
.bnpl-payoff-section-label {
  font-size: 12px;
  color: var(--text-muted);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-bottom: 4px;
}
.bnpl-payoff-section-hint {
  font-size: 11px;
  color: var(--text-muted);
  font-style: italic;
  margin-bottom: 8px;
}
.bnpl-payoff-estimator { font-size: 13px; color: var(--text-secondary); }
.bnpl-payoff-placeholder { color: var(--text-muted); font-size: 12px; }

/* ── Modal Tambah/Edit BNPL ──────────────────────────────────────────────── */
.bnpl-modal-field-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}
.bnpl-modal-label-inline { margin-bottom: 0; }
.bnpl-manage-platform-btn {
  background: none;
  border: none;
  color: var(--accent-purple);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  padding: 0;
}
.bnpl-custom-platform-input { display: none; margin-top: 8px; }
.bnpl-type-group { margin-bottom: 16px; }
.bnpl-type-row { display: flex; gap: 10px; }
.bnpl-type-label {
  flex: 1;
  padding: 10px;
  border-radius: 6px;
  cursor: pointer;
  text-align: center;
  font-size: 13px;
  font-weight: 600;
}
.bnpl-type-label-inactive {
  background: var(--bg-tertiary);
  border: 1px solid var(--border-color);
  color: var(--text-secondary);
}
.bnpl-type-label-fixed-active {
  background: rgba(0, 229, 160, 0.1);
  border: 1px solid var(--accent-green);
  color: var(--accent-green);
}
.bnpl-type-label-variable-active {
  background: var(--accent-ai-purple-glow);
  border: 1px solid var(--accent-ai-purple);
  color: var(--accent-ai-purple);
}
.bnpl-type-radio-hidden { display: none; }
.bnpl-field-hint { color: var(--text-muted); font-size: 11px; }

.bnpl-block-a {
  background: rgba(0, 229, 160, 0.06);
  border: 1px solid rgba(0, 229, 160, 0.2);
  border-radius: 10px;
  padding: 14px;
  margin-bottom: 14px;
}
.bnpl-block-label-green {
  font-size: 11px;
  font-weight: 700;
  color: var(--accent-green);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 12px;
}
.bnpl-block-a-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 12px;
}
.bnpl-field-group-tight { margin-bottom: 0; }
.bnpl-field-group-sm { margin-bottom: 12px; }

/* Purple statis #4 (background 0.08) + #5 (border 0.2) — Rate Estimator box */
.bnpl-rate-estimator-box {
  background: rgba(168, 85, 247, 0.08);
  padding: 14px;
  border-radius: 10px;
  border: 1px solid rgba(168, 85, 247, 0.2);
  margin-bottom: 0;
}
.bnpl-rate-estimator-label { color: var(--accent-purple); }
.bnpl-rate-estimator-row { display: flex; gap: 10px; align-items: center; }
.bnpl-rate-estimate-btn {
  white-space: nowrap;
  border-color: var(--accent-purple);
  color: var(--accent-purple);
}
.bnpl-rate-estimate-result {
  margin-top: 8px;
  font-size: 12px;
  color: var(--text-secondary);
  display: none;
}
.bnpl-rate-result-ai-opinion { color: var(--text-secondary); }
.bnpl-rate-result-footer-note {
  font-size: 11px;
  color: var(--text-muted);
  display: block;
  margin-top: 6px;
  line-height: 1.3;
}
.bnpl-apply-ai-rate-btn {
  margin-top: 6px;
  padding: 4px 10px;
  font-size: 11px;
  border-radius: 6px;
  border: 1px solid var(--accent-ai-purple);
  color: var(--accent-ai-purple);
  background: var(--accent-ai-purple-glow);
  cursor: pointer;
}

/* Purple statis #6 (background 0.04) + #7 (border 0.15) — Blok B box */
.bnpl-block-b {
  background: rgba(168, 85, 247, 0.04);
  border: 1px solid rgba(168, 85, 247, 0.15);
  border-radius: 10px;
  padding: 14px;
}
.bnpl-block-label-purple {
  font-size: 11px;
  font-weight: 700;
  color: var(--accent-purple);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 12px;
}

.bnpl-variable-fields-wrap { display: none; }
.bnpl-variable-group {
  background: var(--bg-tertiary);
  padding: 14px;
  border-radius: 10px;
  border: 1px solid var(--border-color);
}
.bnpl-variable-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.bnpl-add-month-btn {
  background: none;
  border: none;
  color: var(--accent-blue);
  font-size: 12px;
  cursor: pointer;
  font-weight: bold;
}
.bnpl-var-months-container { display: flex; flex-direction: column; gap: 10px; }
.bnpl-var-month-row { display: flex; gap: 10px; align-items: center; }
.bnpl-var-month-field { flex: 1; }
.bnpl-var-month-label {
  font-size: 11px;
  color: var(--text-muted);
  display: block;
  margin-bottom: 2px;
}
.bnpl-var-month-remove-btn {
  background: none;
  border: none;
  color: var(--accent-red);
  cursor: pointer;
  padding-top: 14px;
  font-size: 16px;
}

/* Purple statis #8 (background 0.08) + #9 (border 0.2) — AI Analyst box (Variable mode) */
.bnpl-ai-analyst-box {
  background: rgba(168, 85, 247, 0.08);
  padding: 14px;
  border-radius: 10px;
  border: 1px solid rgba(168, 85, 247, 0.2);
  margin-top: 16px;
}
.bnpl-ai-analyst-header { display: flex; justify-content: space-between; align-items: center; }
.bnpl-ai-analyst-label { color: var(--accent-purple); margin-bottom: 0; }
.bnpl-ai-analyst-btn { border-color: var(--accent-purple); color: var(--accent-purple); padding: 4px 10px; }
.bnpl-ai-analyst-result {
  margin-top: 10px;
  font-size: 12px;
  color: var(--text-secondary);
  display: none;
  line-height: 1.5;
}

.bnpl-modal-footer { display: flex; justify-content: flex-end; gap: 12px; margin-top: 24px; }

/* ── Platform Manager Modal ──────────────────────────────────────────────── */
.bnpl-manager-modal-content { max-width: 350px; }
.bnpl-manager-add-row { display: flex; gap: 10px; margin-bottom: 16px; }
.bnpl-manager-input { flex: 1; }
.bnpl-manager-add-btn { padding: 0 16px; white-space: nowrap; }
.bnpl-manager-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 300px;
  overflow-y: auto;
}
.bnpl-manager-list-item {
  display: flex;
  justify-content: space-between;
  padding: 8px;
  background: var(--bg-card);
  border-radius: 6px;
}
.bnpl-manager-delete-btn { background: none; border: none; color: var(--accent-red); cursor: pointer; }

/* ── Payment Modal ───────────────────────────────────────────────────────── */
.bnpl-pay-modal-content { max-width: 440px; }
.bnpl-pay-platform-input { background: var(--bg-tertiary); border: none; color: var(--text-secondary); }
.bnpl-pay-summary {
  background: var(--bg-tertiary);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 14px;
  font-size: 12px;
  color: var(--text-secondary);
  line-height: 1.55;
}
.bnpl-pay-summary-row { display: flex; justify-content: space-between; gap: 8px; }
.bnpl-pay-presets { display: flex; flex-wrap: wrap; gap: 8px; }
.bnpl-pay-presets-hint { font-size: 11px; color: var(--text-muted); margin-top: 6px; }
.bnpl-pay-amount-input {
  background: var(--bg-tertiary);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
  font-weight: bold;
  font-size: 18px;
}
.bnpl-pay-amount-hint { font-size: 11px; color: var(--text-muted); margin-top: 4px; }
.bnpl-pay-wallet-hint {
  font-size: 11px;
  color: var(--text-muted);
  margin-top: 4px;
  display: none;
}
.bnpl-pay-date-input {
  background: var(--bg-tertiary);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
}

/* ── Import Preview Modal ────────────────────────────────────────────────── */
.bnpl-import-modal-content { max-width: 600px; }
.bnpl-import-summary { font-size: 14px; color: var(--text-secondary); margin-bottom: 14px; }
.bnpl-import-warning { color: var(--accent-yellow, #F7B731); font-size: 12px; }
.bnpl-import-summary-count { color: var(--accent-green); }
.bnpl-import-summary-debt { color: #FF4757; }
.bnpl-import-table-wrap {
  max-height: 260px;
  overflow-y: auto;
  border: 1px solid var(--border-color, rgba(255, 255, 255, 0.1));
  border-radius: 8px;
  margin-bottom: 16px;
}
.bnpl-import-table { width: 100%; font-size: 12px; margin: 0; }
.bnpl-import-table-head { background: var(--bg-tertiary, #0f172a); position: sticky; top: 0; }
.bnpl-import-th { padding: 8px 10px; }
.bnpl-import-th-right { padding: 8px 10px; text-align: right; }
.bnpl-import-th-center { padding: 8px 10px; text-align: center; }
.bnpl-import-row { border-bottom: 1px solid rgba(255, 255, 255, 0.05); }
.bnpl-import-td { padding: 8px 10px; }
.bnpl-import-td-platform { padding: 8px 10px; font-weight: 600; color: var(--text-primary); }
.bnpl-import-td-debt { padding: 8px 10px; text-align: right; font-family: monospace; color: #FF4757; }
.bnpl-import-td-monthly { padding: 8px 10px; text-align: right; font-family: monospace; color: #F7B731; }
.bnpl-import-td-tenor { padding: 8px 10px; text-align: center; }

/* ── Riwayat Pembayaran (history) modal ──────────────────────────────────── */
.bnpl-history-summary {
  background: var(--bg-tertiary);
  border-radius: 10px;
  padding: 12px 14px;
  margin-bottom: 14px;
  font-size: 13px;
}
.bnpl-history-summary-row { display: flex; justify-content: space-between; margin-bottom: 6px; }
.bnpl-history-summary-row-last { display: flex; justify-content: space-between; }
.bnpl-history-summary-label { color: var(--text-muted); }
.bnpl-history-empty { color: var(--text-muted); font-size: 14px; text-align: center; padding: 20px 0; }
.bnpl-list-row-divider { padding: 12px 0; border-bottom: 1px solid var(--border-color); }
.bnpl-history-row-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.bnpl-history-row-info { min-width: 0; }
.bnpl-history-row-type { font-size: 14px; font-weight: 600; color: var(--text-primary); }
.bnpl-history-row-date { font-size: 12px; color: var(--text-muted); margin-top: 2px; }
.bnpl-history-row-meta { font-size: 11px; color: var(--text-muted); margin-top: 4px; }
.bnpl-history-row-amount { font-size: 15px; white-space: nowrap; }
.bnpl-history-modal-dialog { max-width: 480px; }
.bnpl-history-modal-body { max-height: 60vh; overflow-y: auto; }

/* ── Strategy analyzer result (AI narrate) ───────────────────────────────── */
.bnpl-strategy-loading { color: var(--text-muted); }
.bnpl-strategy-result-header { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; }
.bnpl-strategy-result-emoji { font-size: 28px; }
.bnpl-strategy-result-badge { margin-bottom: 4px; }
.bnpl-strategy-result-source { font-size: 11px; color: var(--text-muted); margin-bottom: 4px; }
.bnpl-strategy-result-reason { font-size: 15px; font-weight: 700; color: var(--text-primary); }
.bnpl-strategy-order-wrap { margin-bottom: 12px; }
.bnpl-strategy-order-label { font-size: 12px; color: var(--text-muted); margin-bottom: 6px; }
.bnpl-strategy-order-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  background: var(--bg-secondary);
  border-radius: 8px;
  margin-bottom: 6px;
}
.bnpl-strategy-order-num { font-size: 18px; font-weight: 800; color: var(--accent-green); }
.bnpl-strategy-order-text { font-weight: 600; }
.bnpl-strategy-stats-row { display: flex; gap: 16px; }
.bnpl-strategy-stat-box-green {
  background: rgba(0, 229, 160, 0.1);
  padding: 10px 14px;
  border-radius: 8px;
  flex: 1;
  text-align: center;
}
.bnpl-strategy-stat-label { font-size: 11px; color: var(--text-muted); }
.bnpl-strategy-stat-value { font-size: 18px; }
.bnpl-strategy-stat-box-purple {
  background: var(--accent-ai-purple-glow);
  padding: 10px 14px;
  border-radius: 8px;
  flex: 1;
  text-align: center;
}
.bnpl-strategy-empty { color: var(--text-muted); }

/* ── Per-platform payoff estimator rows ──────────────────────────────────── */
.bnpl-payoff-row-header { display: flex; justify-content: space-between; align-items: center; }
.bnpl-payoff-platform-name { font-weight: 700; color: var(--text-primary); }
.bnpl-payoff-row-meta { font-size: 12px; color: var(--text-muted); margin-top: 4px; }
.bnpl-payoff-est-date { color: var(--accent-green); }
.bnpl-payoff-saved-highlight { color: var(--accent-ai-purple); }
.bnpl-payoff-empty { color: var(--text-muted); font-size: 13px; }
