/* Santé — état des services, chiffres, incidents, journal. Couleurs par rôle (voir styles.css). */

.sante-section { margin: 4px 0 12px; font-size: 13px; font-weight: 600; color: var(--encre-3); text-transform: uppercase; letter-spacing: 0.04em; }
.sante-section:not(:first-of-type) { margin-top: 24px; }

.sante-services { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 14px; margin-bottom: 14px; }
.sante-service { padding: 16px 18px; display: grid; gap: 8px; align-content: start; border-left: 3px solid var(--bordure); }
.sante-service.bon { border-left-color: var(--bon); }
.sante-service.alerte { border-left-color: var(--alerte); }
.sante-service.critique { border-left-color: var(--critique); }
.sante-service .nom { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-weight: 600; flex-wrap: wrap; }
.sante-service .note { color: var(--encre-3); font-size: 12.5px; line-height: 1.45; overflow-wrap: anywhere; }

.sante-resultat { display: grid; gap: 8px; margin-bottom: 4px; }
.sante-resultat:empty { display: none; }
.sante-resultat .rangee { flex-wrap: wrap; font-size: 13px; }

.tuile.sante-tuile-critique .valeur { color: var(--critique); }
.tuile.sante-tuile-alerte .valeur { color: var(--alerte); }

/* Les cartes ne doivent pas s'élargir à la largeur du tableau : il défile à l'intérieur. */
.sante-carte { min-width: 0; }
.sante-carte .carte-titre { flex-wrap: wrap; }

.sante-incident.erreur td:first-child { box-shadow: inset 3px 0 0 var(--critique); }
.sante-incident.avertissement td:first-child { box-shadow: inset 3px 0 0 var(--alerte); }
.sante-repetition { display: block; margin-top: 2px; font-size: 11.5px; color: var(--encre-3); }
.sante-detail { margin-top: 4px; }
.sante-detail summary { cursor: pointer; color: var(--encre-3); font-size: 12.5px; }
.sante-detail summary:hover { color: var(--encre); }
.sante-detail pre {
  margin: 6px 0 0; padding: 8px 10px; border-radius: 6px; background: var(--surface-2); color: var(--encre-2);
  font: 12px/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: pre-wrap; overflow-wrap: anywhere;
  max-height: 240px; overflow: auto;
}

.sante-journal {
  margin: 0; padding: 14px 18px; max-height: 520px; overflow: auto;
  font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; color: var(--encre-2); background: var(--surface-2);
  white-space: pre-wrap; overflow-wrap: anywhere; border-radius: 0 0 var(--rayon) var(--rayon);
}

@media (max-width: 820px) {
  .sante-services { grid-template-columns: 1fr; }
}
