/*!
 * DashTemplate.com — CFO Executive Dashboard · Template Styles
 * © 2025 DashTemplate.com. All Rights Reserved.
 * License: https://dashtemplate.com/license
 */

/* ─── Template accent ────────────────────── */
:root {
  --dt-template-primary: #22C55E;
  --dt-template-accent:  #3B82F6;
}

/* ─── P&L row table ──────────────────────── */
.pnl-row {
  display: grid;
  grid-template-columns: 1fr 110px 110px 110px 80px;
  gap: 10px;
  align-items: center;
  padding: 8px 16px;
  border-bottom: 1px solid var(--dt-border);
  font-size: 12px;
  transition: background var(--t-fast);
}
.pnl-row:hover { background: var(--dt-surface-2); }
.pnl-row:last-child { border-bottom: none; }
.pnl-row.hdr {
  font-size: 9.5px; font-weight: 700;
  color: var(--dt-text-3); letter-spacing: .07em; text-transform: uppercase;
  background: var(--dt-surface-2);
}
.pnl-row.subtotal {
  background: rgba(59,130,246,.06);
  font-weight: 700;
  border-top: 1px solid rgba(59,130,246,.2);
}
.pnl-row.total {
  background: rgba(34,197,94,.07);
  font-weight: 800;
  font-size: 13px;
  border-top: 2px solid rgba(34,197,94,.3);
}
.pnl-amount {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11.5px;
  font-variant-numeric: tabular-nums;
  text-align: right;
}
.pnl-label { font-size: 12px; color: var(--dt-text-2); }
.pnl-indent { padding-left: 28px; }
.pnl-margin { font-size: 11px; color: var(--dt-text-3); text-align: right; }

/* ─── Variance badge ─────────────────────── */
.var-badge {
  font-size: 10.5px; font-weight: 700;
  padding: 2px 8px; border-radius: 5px;
  text-align: right; font-variant-numeric: tabular-nums;
}
.var-badge.fav  { background: rgba(34,197,94,.15);  color: #22C55E; }
.var-badge.unfav{ background: rgba(239,68,68,.15);  color: #EF4444; }

/* ─── SaaS efficiency card grid ─────────── */
.saas-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.saas-card {
  background: var(--dt-surface-2);
  border: 1px solid var(--dt-border);
  border-radius: 10px;
  padding: 14px 16px;
  display: flex; flex-direction: column; gap: 4px;
}
.saas-card__label {
  font-size: 9.5px; font-weight: 700;
  color: var(--dt-text-3); text-transform: uppercase; letter-spacing: .07em;
}
.saas-card__value {
  font-size: 22px; font-weight: 800;
  letter-spacing: -.03em; font-variant-numeric: tabular-nums;
}
.saas-card__sub { font-size: 10.5px; color: var(--dt-text-3); }

/* ─── Cash runway banner ─────────────────── */
.runway-banner {
  background: linear-gradient(135deg, rgba(34,197,94,.1) 0%, rgba(59,130,246,.08) 100%);
  border: 1px solid rgba(34,197,94,.25);
  border-radius: 12px;
  padding: 16px 20px;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.runway-banner__months {
  font-size: 48px; font-weight: 800;
  letter-spacing: -.05em; color: #22C55E;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.runway-banner__label { font-size: 11px; color: var(--dt-text-3); font-weight: 600; text-transform: uppercase; letter-spacing: .07em; }
.runway-banner__meta  { font-size: 12px; color: var(--dt-text-2); margin-top: 2px; }

/* ─── Working capital metrics ────────────── */
.wc-row {
  display: grid;
  grid-template-columns: 1fr 60px 60px 80px;
  gap: 12px;
  align-items: center;
  padding: 10px 16px;
  border-bottom: 1px solid var(--dt-border);
  font-size: 12px;
}
.wc-row:last-child { border-bottom: none; }
.wc-row.hdr { font-size: 9.5px; font-weight: 700; color: var(--dt-text-3); letter-spacing: .07em; text-transform: uppercase; background: var(--dt-surface-2); }
