body {
  font-family: -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: #0f172a;
  color: #e2e8f0;
  margin: 0;
  padding: 24px;
}

h1 { font-weight: 600; }

.card {
  background: #1e293b;
  border-radius: 8px;
  padding: 16px 20px;
  margin-bottom: 20px;
}

.metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.metric {
  display: flex;
  flex-direction: column;
  background: #0f172a;
  border-radius: 6px;
  padding: 10px 14px;
}

.label { font-size: 12px; color: #94a3b8; text-transform: uppercase; }
.value { font-size: 20px; font-weight: 600; }

table {
  width: 100%;
  border-collapse: collapse;
}

th, td {
  text-align: left;
  padding: 6px 10px;
  border-bottom: 1px solid #334155;
  font-size: 14px;
}

.status-up { color: #4ade80; font-weight: 600; }
.status-down { color: #f87171; font-weight: 600; }
.status-degraded { color: #facc15; font-weight: 600; }

.cmd-cell {
  max-width: 480px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #94a3b8;
  font-family: monospace;
}


.footer { color: #64748b; font-size: 12px; }

.chart-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.range-picker { display: flex; gap: 6px; }

.range-btn {
  background: #0f172a;
  color: #e2e8f0;
  border: 1px solid #334155;
  border-radius: 6px;
  padding: 4px 12px;
  cursor: pointer;
  font-size: 13px;
}

.range-btn.active { background: #2563eb; border-color: #2563eb; }

.chart-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 16px;
  margin-top: 12px;
}

.chart-box {
  background: #0f172a;
  border-radius: 6px;
  padding: 10px;
  height: 220px;
}

.chart-box-wide { grid-column: 1 / -1; }
.chart-box.has-title h3 { margin: 0 0 6px 4px; font-size: 14px; font-weight: 500; color: #94a3b8; }
.chart-box.has-title { height: auto; }
.chart-canvas-wrap { height: 220px; position: relative; }

.chart-pair {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 16px;
}

