/* ============================================================
   SERVERS PAGE — game server panels
   Loaded only by servers.html, on top of style.css.
============================================================ */

/* ── Intro ── */
.serversIntro {
  font-size: 13px;
  line-height: 1.7;
  color: #b8aad0;
  margin-bottom: 24px;
}

/* ── Section label (matches stream/space pages) ── */
.sectionLabel {
  font-size: 10px;
  color: #5544aa;
  letter-spacing: 3px;
  text-transform: uppercase;
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.sectionLabel::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(to right, #330044, transparent);
}

/* ── Live indicator (page title) ── */
.liveDot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #44ff88;
  margin-right: 6px;
  animation: srvPulse 1.5s infinite;
}
.liveLabel {
  font-size: 11px;
  color: #66dd99;
  letter-spacing: 1px;
}
@keyframes srvPulse {
  0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(68,255,136,0.6); }
  50%       { opacity: 0.4; box-shadow: 0 0 0 4px rgba(68,255,136,0); }
}

/* ── Server panel ── */
.serverPanel {
  background: rgba(0,0,0,0.7);
  border: 1px solid #5500aa;
  overflow: hidden;
  margin-bottom: 24px;
}

.serverPanelHeader {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 14px;
  background: rgba(60,0,80,0.5);
  border-bottom: 1px solid #440066;
  font-size: 10px;
  letter-spacing: 2px;
  color: #cbaaee;
}
.serverPanelHeaderLeft {
  display: flex;
  align-items: center;
  gap: 8px;
}
.serverPanelHeaderRight { color: #66dd99; }

.srvDot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.srvDot--online {
  background: #44ff88;
  animation: srvPulse 1.5s infinite;
}
.srvDot--offline { background: #663344; }

.serverPanelBody {
  display: flex;
  gap: 18px;
  padding: 18px 16px;
}
.serverInfo h3 {
  color: #d4c8ff;
  font-size: 15px;
  margin-bottom: 6px;
  letter-spacing: 1px;
}
.serverInfo p {
  font-size: 12px;
  color: #9988bb;
  line-height: 1.6;
  margin-bottom: 12px;
}

/* ── Spec table ── */
.serverSpecs {
  border-collapse: collapse;
  font-size: 11px;
  color: #b8aad0;
}
.serverSpecs td {
  padding: 3px 14px 3px 0;
}
.serverSpecs .specKey {
  color: #5544aa;
  letter-spacing: 2px;
  font-size: 10px;
}
.serverSpecs .specAddr {
  color: #d4c8ff;
  letter-spacing: 1px;
}

/* ── Connect strip ── */
.serverConnect {
  padding: 12px 16px;
  border-top: 1px dashed #440066;
  background: rgba(20,0,30,0.6);
}
.serverConnectLabel {
  font-size: 9px;
  letter-spacing: 2px;
  color: #5544aa;
  margin-bottom: 8px;
}
.serverConnectRow {
  display: flex;
  align-items: stretch;
  gap: 8px;
}
.connectCmd {
  flex: 1;
  display: block;
  padding: 8px 12px;
  background: #000;
  border: 1px solid #5500aa;
  color: #88ffaa;
  font-family: inherit;
  font-size: 13px;
  letter-spacing: 1px;
  overflow-x: auto;
  white-space: nowrap;
}
.copyBtn {
  padding: 8px 16px;
  background: #2a0040;
  border: 1px solid #7a00aa;
  color: #d4c8ff;
  font-family: inherit;
  font-size: 11px;
  letter-spacing: 2px;
  cursor: pointer;
}
.copyBtn:hover {
  background: #44006a;
  box-shadow: 0 0 10px #7a00aa88;
}

.serverPanelFooter {
  padding: 8px 14px;
  border-top: 1px solid #440066;
  font-size: 9px;
  letter-spacing: 1px;
  color: #5544aa;
}

/* ── Launchpad note ── */
.serversNote {
  font-size: 11px;
  color: #5544aa;
  letter-spacing: 1px;
}
.serversNote a { color: #aa66ff; }
