@layer sections {
/* ── Engagement table ─────────────────────────────────────── */
.admin-table-wrap { overflow-x: auto; }
.admin-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 12.5px;
}
.admin-table th {
  text-align: left;
  padding: 0 16px 10px;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--faint);
  border-bottom: 1px solid var(--border);
  white-space: nowrap;
}
.admin-table th.sorted { color: var(--text); }
.admin-table th.th-num { text-align: right; }

.sort-link { color: inherit; display: inline-flex; align-items: center; gap: 3px; }
.sort-link:hover { color: var(--muted); }
.sort-link--active { color: var(--text); }

.admin-table td {
  padding: 10px 16px;
  border-bottom: 1px solid var(--border);
  color: var(--text);
  white-space: nowrap;
}
.admin-table tbody tr:last-child td { border-bottom: none; }
.admin-table tbody tr:hover td     { background: var(--bg); }

.td-email  { color: var(--muted) !important; max-width: 220px; overflow: hidden; text-overflow: ellipsis; }
.td-muted  { color: var(--faint) !important; }
.td-num    { text-align: right; font-variant-numeric: tabular-nums; }
.td-yes    { color: var(--sage-fg) !important; font-weight: 500; }
.td-no     { color: var(--faint) !important; }

.admin-btn-reset {
  font-size: 11px;
  padding: 2px 8px;
  border-radius: 4px;
  border: 1px solid var(--border);
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  white-space: nowrap;
}
.admin-btn-reset:hover { background: var(--bg); color: var(--text); }

/* Remove photo button */
.photo-remove-btn {
  display: block;
  margin-top: 7px;
  font-size: 12px;
  color: var(--muted);
  cursor: pointer;
  padding: 0;
}
.photo-remove-btn:hover { color: var(--rose-fg); }
}
