/* ── Brand ────────────────────────────────────────────────────── */
:root { --blue: #4f8ef7; }

/* DaisyUI 4 theme variables are OKLCH triplets (lightness% chroma hue).
   Pin the night theme to the brand palette: base-100 (body) darkest,
   base-200 (cards/nav) elevated above it, base-300 for borders. */
[data-theme="night"] {
  --b1: 16% 0.03 255;   /* ≈ #07101e — body */
  --b2: 22% 0.04 255;   /* ≈ #0d1b30 — cards, nav */
  --b3: 28% 0.045 255;  /* ≈ #182840 — borders */
  --bc: 85% 0.02 250;   /* ≈ #c3cfdf — body text */
  --p:  66% 0.15 260;   /* ≈ #4f8ef7 — primary */
  --pc: 100% 0 0;       /* primary content: white */
}

/* ── Status badges ───────────────────────────────────────────── */
.rc-status {
  display: inline-flex; align-items: center;
  font-size: 0.7rem; font-weight: 500;
  padding: 0.15rem 0.5rem; border-radius: 99px;
}
.status-healthy, .status-running  { background: rgba(5,150,105,0.15);  color: #34d399; }
.status-provisioning              { background: rgba(79,142,247,0.15); color: #93c5fd; }
.status-unhealthy, .status-failed { background: rgba(239,68,68,0.15);  color: #f87171; }
.status-unknown                   { background: rgba(107,114,128,0.15); color: #6b7280; }

/* ── Resource card accents ───────────────────────────────────── */
.rc-server   { border-top: 2px solid #4f8ef7; }
.rc-server   .rc-type { color: #4f8ef7; }
.rc-server   .rc-dot  { background: #4f8ef7; }
.rc-database { border-top: 2px solid #7c3aed; }
.rc-database .rc-type { color: #a78bfa; }
.rc-database .rc-dot  { background: #7c3aed; }
.rc-team     { border-top: 2px solid #059669; }
.rc-team     .rc-type { color: #34d399; }
.rc-team     .rc-dot  { background: #059669; }

/* ── Telemetry pulse ─────────────────────────────────────────── */
.telem-pulse {
  display: inline-block; width: 8px; height: 8px;
  border-radius: 50%; background: var(--blue);
  animation: cbpulse 1.4s ease-in-out infinite;
}
@keyframes cbpulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.3; transform: scale(0.7); }
}

/* ── Size card radio selection ───────────────────────────────── */
.size-card:has(input:checked) {
  border-color: var(--blue) !important;
  background: rgba(79,142,247,0.08) !important;
  box-shadow: 0 0 0 1px var(--blue);
}

/* ── Region/OS radio pills ───────────────────────────────────── */
.region-opt input[type="radio"] { display: none; }
.region-opt input[type="radio"]:checked + span {
  border-color: var(--blue);
  color: var(--blue);
  background: rgba(79,142,247,0.08);
}
