/* The admin section (app/views/admin) — deliberately plain. */

.admin-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  background: var(--surface);
}

.admin-table th, .admin-table td {
  text-align: left;
  padding: 7px 8px;
  border-bottom: 1px solid var(--line-soft);
  vertical-align: middle;
}

.admin-table th {
  color: var(--muted);
  font-weight: 600;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.admin-table-wrapper {
  overflow-x: auto;
}

.admin-actions {
  display: flex;
  gap: 12px;
  align-items: center;
  white-space: nowrap;
}

.admin-form select {
  width: 100%;
  padding: 8px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius);
  font-size: 1rem;
  background: var(--surface);
}

.admin-form .field-checkbox label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 600;
}

.admin-form .hint {
  color: var(--muted);
  font-size: 0.85rem;
  margin: 4px 0 0;
}

.admin-badge {
  display: inline-block;
  margin-left: 6px;
  padding: 1px 6px;
  border-radius: var(--radius);
  background: var(--warn-soft);
  color: var(--warn);
  font-size: 0.72rem;
  font-weight: 600;
}

/* Label/value pairs on an admin show page. */
.admin-details {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 6px 16px;
  margin: 0 0 14px;
}

.admin-details dt {
  color: var(--muted);
  font-weight: 600;
}

.admin-details dd {
  margin: 0;
  overflow-wrap: anywhere;
}

.admin-copy-row {
  display: flex;
  gap: 8px;
}

.admin-copy-row input {
  flex: 1;
  min-width: 0;
}

section.admin-form {
  max-width: 480px;
}

.admin-form h2 {
  font-size: 1.05rem;
  margin: 18px 0 8px;
}

.admin-form h2:first-child {
  margin-top: 0;
}

.admin-form h2 + .hint {
  margin: -4px 0 12px;
}

.admin-form > .hint:first-child {
  margin: 0 0 12px;
}
