.infra-dashboard{gap:24px;display:grid}.infra-health-grid{grid-template-columns:repeat(4,minmax(210px,1fr));gap:16px;display:grid}.infra-health-card{background:#fff;border:1px solid #d7e2e6;border-radius:16px;align-items:flex-start;gap:14px;min-height:112px;padding:20px;display:flex}.infra-health-card h2{color:#173044;margin:0 0 8px;font-size:20px}.infra-health-card p{color:#526875;margin:0;font-size:15px;line-height:1.45}.infra-state-dot{background:#c33;border-radius:50%;flex:0 0 13px;width:13px;height:13px;margin-top:6px}.state-ok .infra-state-dot{background:#178d5d}.state-degraded .infra-state-dot{background:#d7921c}.state-down .infra-state-dot{background:#c33b46}.infra-columns{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:20px;display:grid}.infra-actions{gap:14px;display:grid}.infra-actions label{gap:8px;font-weight:700;display:grid}.infra-actions select,.infra-actions input{min-height:48px;font-size:16px}.infra-logs .v1-quick-filters{padding:0}.pwa-update{color:#fff;z-index:2000;background:#11324a;border-radius:14px;align-items:center;gap:16px;max-width:calc(100vw - 32px);padding:14px 18px;display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 14px 40px #102c3e47}.pwa-update button{color:#11324a;cursor:pointer;background:#fff;border:0;border-radius:10px;min-height:42px;padding:8px 16px;font-weight:800}@media (max-width:1180px){.infra-health-grid{grid-template-columns:repeat(2,minmax(210px,1fr))}}@media (max-width:820px){.infra-columns{grid-template-columns:1fr}}@media (max-width:560px){.infra-health-grid{grid-template-columns:1fr}.pwa-update{flex-direction:column;align-items:stretch;width:calc(100vw - 32px)}}
