/* ── DMARC RUA dashboard (P2.6-DMARC-RUA) ───────────────────────────── */

.dmarc-card { margin-top: 16px; padding: 22px; }
.dmarc-card__head { margin-bottom: 16px; }
.dmarc-card__title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 17px;
  font-weight: 700;
  color: var(--text);
  margin: 0 0 6px;
}
.dmarc-card__icon { font-size: 20px; }
.dmarc-card__tier-pill {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 3px 8px;
  border-radius: var(--radius-pill, 100px);
  background: linear-gradient(135deg, var(--accent, #5b8af8), var(--accent2, #7c60f5));
  color: white;
}
.dmarc-card__hint {
  font-size: var(--fs-sm, 13px);
  color: var(--muted2, #94a3b8);
  margin: 0;
}

.dmarc-loading,
.dmarc-empty,
.dmarc-detail-empty {
  padding: 18px 0;
  text-align: center;
  color: var(--muted2);
  font-style: italic;
  font-size: var(--fs-sm);
}

/* Uploader */
.dmarc-uploader {
  background: var(--surface2, #1a1e2e);
  border: 1px dashed var(--border2, rgba(255,255,255,.16));
  border-radius: var(--radius-md, 10px);
  padding: 16px;
  margin-bottom: 14px;
}
.dmarc-uploader__hint {
  margin: 0 0 10px;
  font-size: var(--fs-sm);
  color: var(--muted2);
}
.dmarc-form {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}
.dmarc-form input[type="file"] {
  flex: 1 1 240px;
  font-size: var(--fs-sm);
  color: var(--text);
}
.dmarc-feedback {
  margin-top: 10px;
  padding: 8px 12px;
  border-radius: var(--radius-sm, 7px);
  font-size: var(--fs-sm);
}
.dmarc-feedback--ok   { background: var(--status-pass-bg, rgba(52,211,153,.1)); color: var(--green); }
.dmarc-feedback--err  { background: var(--status-fail-bg, rgba(248,113,113,.1)); color: var(--red);   }
.dmarc-feedback--info { background: var(--accent-glow-12, rgba(91,138,248,.12)); color: var(--accent); }
.dmarc-feedback.hidden { display: none; }

/* Quota line */
.dmarc-quota {
  text-align: right;
  font-size: var(--fs-xs, 12px);
  color: var(--muted, #64748b);
  margin: -8px 4px 12px;
  font-family: var(--mono);
}

/* Upgrade CTA */
.dmarc-upgrade {
  padding: 18px;
  background: var(--accent-glow-12, rgba(91,138,248,.12));
  border: 1px solid rgba(91,138,248,.3);
  border-radius: var(--radius-md);
  text-align: center;
}
.dmarc-upgrade p { margin: 0 0 12px; color: var(--text); }

/* Domain list */
.dmarc-domains { display: flex; flex-direction: column; gap: 12px; }

.dmarc-domain {
  background: var(--surface2, #1a1e2e);
  border: 1px solid var(--border, rgba(255,255,255,.07));
  border-left: 3px solid var(--border2, rgba(255,255,255,.12));
  border-radius: var(--radius-md, 10px);
  padding: 14px 16px;
}
.dmarc-domain--good { border-left-color: var(--green,  #34d399); }
.dmarc-domain--avg  { border-left-color: var(--yellow, #fbbf24); }
.dmarc-domain--poor { border-left-color: var(--red,    #f87171); }
.dmarc-domain__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
.dmarc-domain__name {
  margin: 0;
  font-size: 15px;
  font-weight: 700;
  color: var(--text);
}
.dmarc-domain__detail {
  background: transparent;
  border: 0;
  color: var(--accent);
  font-size: var(--fs-xs, 12px);
  cursor: pointer;
  padding: 4px 6px;
}
.dmarc-domain__detail:hover { text-decoration: underline; }
.dmarc-domain__detail-pane.hidden { display: none; }
.dmarc-domain__detail-pane { margin-top: 12px; }

.dmarc-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 10px;
}
.dmarc-stat {
  text-align: center;
  padding: 10px;
  background: var(--surface, #131620);
  border: 1px solid var(--border, rgba(255,255,255,.07));
  border-radius: var(--radius-sm, 7px);
}
.dmarc-stat__value {
  font-size: 20px;
  font-weight: 700;
  font-family: var(--mono);
  font-variant-numeric: tabular-nums;
  color: var(--text);
}
.dmarc-stat__label {
  font-size: var(--fs-2xs, 11px);
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: var(--muted2);
  margin-top: 4px;
}
.dmarc-stat--good .dmarc-stat__value { color: var(--green, #34d399); }
.dmarc-stat--bad  .dmarc-stat__value { color: var(--red,   #f87171); }

/* Detail table */
.dmarc-detail-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--fs-xs, 12px);
}
.dmarc-detail-table th,
.dmarc-detail-table td {
  padding: 8px 10px;
  text-align: left;
  border-bottom: 1px solid var(--border, rgba(255,255,255,.07));
}
.dmarc-detail-table th {
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-size: var(--fs-2xs, 11px);
  color: var(--muted2);
  background: var(--surface, #131620);
  position: sticky;
  top: 0;
}
.dmarc-detail-table tr:last-child td { border-bottom: 0; }
.dmarc-cell-ip   { font-family: var(--mono); color: var(--text); }
.dmarc-cell-num  { font-family: var(--mono); text-align: right; font-variant-numeric: tabular-nums; }
.dmarc-cell-from { color: var(--muted2); }
.dmarc-cell--good { color: var(--green); }
.dmarc-cell--avg  { color: var(--yellow); }
.dmarc-cell--poor { color: var(--red); }

@media (max-width: 720px) {
  .dmarc-stats { grid-template-columns: 1fr 1fr; }
  .dmarc-cell-from { display: none; }
}

/* ── Inbound MX opt-in block (B.1 — DMARC inbound) ──────────────────── */

.dmarc-inbound {
  margin: 0 0 18px;
  padding: 16px 18px;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 10px;
}
.dmarc-inbound--on {
  border-color: rgba(52, 211, 153, 0.35); /* green tint when enabled */
  background: linear-gradient(180deg, rgba(52, 211, 153, 0.04), var(--surface));
}
.dmarc-inbound__title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 8px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--text);
}
.dmarc-inbound__pill {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  padding: 2px 8px;
  border-radius: var(--radius-pill, 100px);
  background: var(--green, #34d399);
  color: #042f1f;
}
.dmarc-inbound__pill--off {
  background: var(--surface2);
  color: var(--muted2);
  border: 1px solid var(--border);
}
.dmarc-inbound__hint {
  margin: 0 0 12px;
  font-size: var(--fs-sm, 13px);
  color: var(--muted2);
  line-height: 1.5;
}
.dmarc-inbound__rua {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 8px;
  flex-wrap: wrap;
}
.dmarc-inbound__code {
  flex: 1 1 auto;
  min-width: 0;
  padding: 8px 12px;
  font-family: var(--mono, 'JetBrains Mono', monospace);
  font-size: 12.5px;
  background: var(--surface2);
  border: 1px solid var(--border);
  border-radius: 6px;
  word-break: break-all;
  user-select: all;
}
.dmarc-inbound__mailbox {
  margin: 0 0 12px;
  font-size: 12.5px;
  color: var(--muted2);
}
.dmarc-inbound__mailbox code {
  font-family: var(--mono);
  color: var(--text);
}
.dmarc-inbound__actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.dmarc-inbound .btn-link {
  background: transparent;
  border: 0;
  padding: 4px 6px;
  color: var(--muted2);
  font-size: 12.5px;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: rgba(148, 163, 184, 0.4);
}
.dmarc-inbound .btn-link:hover {
  color: var(--text);
  text-decoration-color: var(--accent);
}
.dmarc-inbound .btn-sm {
  font-size: 12px;
  padding: 6px 10px;
}
