/*
================================================================================
  ◎ DEMO KXCLOUD — TÉLÉMÉTRIE DE ROUTE (ADR-007, dossier 05 §5.2)
  Fichier  : /opt/cortex/demo/src/css/components/telemetry.css
  Rôle     : Bastion de closing — exposer les coulisses (RouteMetadata du
             Volet A : fournisseur servant, latence réelle, fallback,
             circuit, payload JSON brut). Transparence Loi 1 = argument.
================================================================================
*/

.telemetry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-z1) var(--space-g1);
}

.telemetry-cell {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.telemetry-value {
  font-family: "Roboto Mono", monospace;
  font-size: 0.86rem;
  color: var(--ink);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* États sémantiques — famille Mousse unique + terre cuite (ADR-007) */
.telemetry-value--ok      { color: var(--signal-deep); }
.telemetry-value--warn    { color: var(--accent-ink); }
.telemetry-value--muted   { color: var(--ink-muted); }

/* Pastille d'état de circuit (● fermé / ◐ demi-ouvert / ○ ouvert) */
.circuit-dot {
  display: inline-block;
  width: 9px;
  height: 9px;
  border-radius: var(--radius-pill);
  margin-right: 6px;
  vertical-align: baseline;
}

.circuit-dot--closed    { background-color: var(--signal-status); }
.circuit-dot--half-open { background-color: var(--accent); }
.circuit-dot--open      {
  background-color: transparent;
  border: 1.5px solid var(--accent-ink);
}

/* ── PAYLOAD BRUT (repliable — le JSON est une preuve, pas un décor) ───────── */
.telemetry-raw {
  margin-top: var(--space-z1);
}

.telemetry-raw summary {
  cursor: pointer;
  list-style: none;
  font-family: "Roboto Mono", monospace;
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--ink-muted);
  transition: color var(--duration-z5) ease;
}

.telemetry-raw summary::-webkit-details-marker {
  display: none;
}

.telemetry-raw summary::before {
  content: "▸ ";
  color: var(--signal-deep);
}

.telemetry-raw[open] summary::before {
  content: "▾ ";
}

.telemetry-raw summary:hover {
  color: var(--ink-2);
}

.telemetry-raw .terminal-body {
  margin-top: var(--space-z1);
}

/* ── ÉTAT D'ATTENTE ────────────────────────────────────────────────────────── */
.telemetry-standby {
  color: var(--ink-muted);
  font-size: var(--text-sm);
  text-align: center;
  padding: var(--space-z1) 0;
}
