/* public/assets/css/statut.css
   ==========================================================================
   Corvus — page de statut publique (statut.php)
   --------------------------------------------------------------------------
   DÉPEND DE, ET DOIT ÊTRE CHARGÉ APRÈS : tokens.css, components.css, trust.css
   (les tuiles de chiffres `.trust-stat*` et `.trust-note` sont réutilisées).
   Préfixe `st-` pour tout ce qui est propre à cette page.

   Aucune couleur nouvelle : uniquement des tokens.
   ========================================================================== */

/* ==========================================================================
   PAGE DE STATUT (statut.php)
   ========================================================================== */

.st-head { display: flex; align-items: center; justify-content: center; gap: var(--space-3); flex-wrap: wrap }
.st-dot {
    width: 14px; height: 14px; border-radius: 50%; flex: none;
    background: var(--muted); box-shadow: 0 0 0 6px rgb(255 255 255 / .04);
}
.st-dot--ok   { background: var(--ok);   box-shadow: 0 0 0 6px rgb(79 191 133 / .16); animation: st-pulse 2.6s ease-in-out infinite }
.st-dot--warn { background: var(--accent-2); box-shadow: 0 0 0 6px rgb(224 164 79 / .16) }
.st-dot--no   { background: var(--no);   box-shadow: 0 0 0 6px rgb(224 86 90 / .18) }
@keyframes st-pulse { 0%, 100% { opacity: 1 } 50% { opacity: .55 } }
@media (prefers-reduced-motion: reduce) { .st-dot--ok { animation: none } }

.st-unit { font-size: .45em; margin-left: 2px; color: var(--muted); font-family: var(--f-body) }
.st-h2 { margin-bottom: var(--space-4) }

/* Frise de disponibilité : une barre par jour */
.st-bars { display: flex; gap: 3px; align-items: stretch; height: 46px }
.st-bar {
    flex: 1 1 0; min-width: 3px; border-radius: var(--r-sm);
    background: var(--surface-2); transition: transform var(--t) var(--ease);
}
.st-bar:hover { transform: scaleY(1.08) }
.st-bar--ok   { background: var(--ok) }
.st-bar--warn { background: var(--accent-2) }
.st-bar--no   { background: var(--no) }
.st-bar--none { background: var(--surface-3, var(--surface-2)); opacity: .5 }

.st-legend {
    display: flex; gap: var(--space-4); flex-wrap: wrap;
    margin-top: var(--space-3); font-size: var(--fs-2xs); color: var(--muted);
}
.st-legend span { display: inline-flex; align-items: center; gap: var(--space-1) }
.st-key { width: 10px; height: 10px; border-radius: 3px; display: inline-block }
.st-key--ok { background: var(--ok) } .st-key--warn { background: var(--accent-2) }
.st-key--no { background: var(--no) } .st-key--none { background: var(--surface-2) }

/* Courbe de latence */
.st-chart { border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); padding: var(--space-4) }
.st-chart-foot {
    display: flex; justify-content: space-between;
    margin-top: var(--space-2); font-size: var(--fs-2xs); color: var(--muted);
}

/* Incidents */
.st-none {
    display: flex; align-items: center; gap: var(--space-3);
    border: 1px solid var(--line); border-radius: var(--r);
    background: var(--surface); padding: var(--space-5); color: var(--text-2);
}
.st-incidents { list-style: none; display: grid; gap: var(--space-3) }
.st-inc {
    border: 1px solid var(--line); border-left: 3px solid var(--muted);
    border-radius: var(--r); background: var(--surface); padding: var(--space-4);
}
.st-inc--open { border-left-color: var(--no) }
.st-inc-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3) }
.st-inc-title { font-weight: 600; color: var(--text) }
.st-inc-badge {
    font-size: var(--fs-2xs); font-weight: 600; padding: 2px var(--space-2);
    border-radius: var(--r-pill); white-space: nowrap;
}
.st-inc-badge--open   { color: var(--no); background: var(--no-ghost) }
.st-inc-badge--closed { color: var(--ok); background: var(--ok-ghost) }
.st-inc-body { color: var(--text-2); margin-top: var(--space-2); font-size: var(--fs-sm); line-height: 1.6 }
.st-inc-meta { color: var(--muted); margin-top: var(--space-2); font-size: var(--fs-2xs) }
