/*!
 * DashTemplate.com — Paid Media Command Center · Template Styles
 * © 2025 DashTemplate.com. All Rights Reserved.
 * License: https://dashtemplate.com/license
 */

:root {
  --dt-template-primary: #3B82F6;
  --dt-template-accent:  #22C55E;
}

/* ─── Platform badge ─────────────────────── */
.platform-badge {
  display: inline-flex; align-items: center; justify-content: center;
  width: 24px; height: 24px; border-radius: 6px;
  font-size: 10px; font-weight: 800; color: #fff; flex-shrink: 0;
}

/* ─── Campaign table row ─────────────────── */
.camp-row {
  display: grid;
  grid-template-columns: 1fr 80px 90px 90px 60px 60px 60px 64px;
  gap: 10px;
  align-items: center;
  padding: 9px 16px;
  border-bottom: 1px solid var(--dt-border);
  font-size: 11.5px;
  transition: background var(--t-fast);
}
.camp-row:hover { background: var(--dt-surface-2); }
.camp-row:last-child { border-bottom: none; }
.camp-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);
}
.camp-mono { font-family: 'JetBrains Mono', monospace; font-size: 11.5px; font-variant-numeric: tabular-nums; text-align: right; }

/* ─── Ad set table row ───────────────────── */
.adset-row {
  display: grid;
  grid-template-columns: 1fr 80px 90px 80px 60px 60px 60px 60px;
  gap: 10px;
  align-items: center;
  padding: 9px 16px;
  border-bottom: 1px solid var(--dt-border);
  font-size: 11.5px;
  transition: background var(--t-fast);
}
.adset-row:hover { background: var(--dt-surface-2); }
.adset-row:last-child { border-bottom: none; }
.adset-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);
}

/* ─── Budget pacing bar ──────────────────── */
.pace-row {
  display: grid;
  grid-template-columns: 120px 64px 1fr 80px 64px;
  gap: 12px;
  align-items: center;
  padding: 10px 16px;
  border-bottom: 1px solid var(--dt-border);
  font-size: 12px;
}
.pace-row:last-child { border-bottom: none; }
.pace-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);
}
.pace-track { height: 8px; background: var(--dt-surface-3); border-radius: 4px; overflow: hidden; }
.pace-fill  { height: 100%; border-radius: 4px; transition: width 1.2s ease; }

/* ─── Frequency alert pill ───────────────── */
.freq-pill {
  display: inline-block; padding: 2px 7px; border-radius: 5px;
  font-size: 10.5px; font-weight: 700;
}
.freq-pill.ok   { background: rgba(34,197,94,.15);  color: #22C55E; }
.freq-pill.warn { background: rgba(245,158,11,.15); color: #F59E0B; }
.freq-pill.high { background: rgba(239,68,68,.15);  color: #EF4444; }
