/* Admin panel */

.admin-section {
  margin-bottom: 2.5rem;
}

.admin-section h2 {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--text-soft);
  margin: 0 0 .75rem;
}

/* Fleet nodes */
.admin-fleet {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}

.admin-node {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: .9rem 1.1rem;
}

.admin-node.dead {
  opacity: .55;
}

.admin-node-head {
  display: flex;
  align-items: center;
  gap: .5rem;
  margin-bottom: .4rem;
  flex-wrap: wrap;
}

.admin-node-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--text-muted);
  flex-shrink: 0;
}

.admin-node.alive .admin-node-dot {
  background: #22c55e;
  box-shadow: 0 0 6px #22c55e88;
}

.admin-node-badge {
  font-size: .7rem;
  font-weight: 600;
  padding: .15em .45em;
  border-radius: 4px;
  background: var(--accent-dim, color-mix(in srgb, var(--accent) 15%, transparent));
  color: var(--accent);
}

.admin-node-badge.dim {
  background: var(--surface-raised, var(--surface));
  color: var(--text-soft);
}

.admin-node-status {
  margin-left: auto;
  font-size: .7rem;
  color: var(--text-muted);
}

.admin-node.alive .admin-node-status {
  color: #22c55e;
}

.admin-node-models {
  display: flex;
  flex-wrap: wrap;
  gap: .3rem;
  margin-bottom: .3rem;
}

.admin-node-host {
  font-size: .7rem;
  color: var(--text-muted);
}

.admin-node-url {
  font-size: .7rem;
  font-family: var(--font-mono, monospace);
  color: var(--text-muted);
}

.admin-empty {
  color: var(--text-muted);
  font-size: .875rem;
  padding: .5rem 0;
}

/* window label next to h2 */
.admin-window-label {
  font-weight: 400;
  color: var(--text-muted);
  text-transform: none;
  letter-spacing: 0;
}
