.status-badge{display:flex;align-items:center;gap:12px;padding:20px 26px;border-radius:14px;font-size:1.3rem;font-weight:800;margin-bottom:22px;transition:background .3s,color .3s}.status-badge .dot{width:16px;height:16px;border-radius:50%;flex:0 0 auto}.status-badge.checking{background:#eef0f2;color:#5a6570}.status-badge.checking .dot{background:#9aa5af}.status-badge.online{background:#e6f6f0;color:#0a6b4f}.status-badge.online .dot{background:#1fb579;box-shadow:0 0 0 0 rgba(31,181,121,.6);animation:status-pulse-online 1.8s infinite}.status-badge.offline{background:#fdeaea;color:#a11d1d}.status-badge.offline .dot{background:#e03b3b;animation:status-pulse-offline 1s infinite}@keyframes status-pulse-online{0%{box-shadow:0 0 0 0 rgba(31,181,121,.5)}70%{box-shadow:0 0 0 14px rgba(31,181,121,0)}100%{box-shadow:0 0 0 0 rgba(31,181,121,0)}}@keyframes status-pulse-offline{0%,100%{opacity:1}50%{opacity:.35}}.status-grid dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px}.status-grid dt{color:#5a6a64;font-weight:600;font-size:.85rem}.status-grid dd{margin:0;font-weight:700}.status-grid .card.error dd{color:#b02323}.sefaz-contingencia-lista{list-style:none;margin:12px 0 0;padding:10px 12px;background:#fff2cc;border-radius:8px;font-size:.85rem;color:#7a4b00}.sefaz-contingencia-lista li+li{margin-top:6px}.modal-overlay{position:fixed;inset:0;background:#0e2019cc;display:flex;align-items:center;justify-content:center;z-index:50}.modal-card{max-width:460px;width:92%}.protecao-texto{white-space:pre-wrap;word-break:break-word;background:#f4f6f5;border-radius:8px;padding:14px 16px;margin-top:8px;font:inherit;color:#15231f}