.resilience-banner {
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 14px 18px;
  margin: -10px 0 22px;
  border-radius: 11px;
  border: 1px solid;
}
.resilience-banner strong { font: 700 13px ui-monospace, monospace; letter-spacing: .08em; }
.resilience-banner span { font-size: 12px; }
.resilience-banner.halted {
  background: #2a1313;
  border-color: #844947;
  color: #ffaaa6;
  animation: pulse-halt 1.4s infinite;
}
.resilience-banner.recovered { background: #0c251c; border-color: #326b54; color: var(--mint); }
.network-halted .lab-controls button { opacity: .5; pointer-events: none; }
@keyframes pulse-halt { 50% { border-color: #ff7d78; } }
