.afns-public, .afns-agent{ max-width: 1200px; margin: 0 auto; }
.afns-banner{
  padding: 14px 16px;
  border-radius: 8px;
  margin: 10px 0 16px;
  border: 1px solid rgba(0,0,0,0.08);
}
.afns-banner span{ margin-left: 6px; font-weight: 700; }

.afns-region-card{
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 10px;
  padding: 12px;
  margin: 12px 0 18px;
  background: #fff;
}
.afns-region-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom: 10px;
}

.afns-table{
  width: 100%;
  border-collapse: collapse;
}
.afns-table th, .afns-table td{
  border: 1px solid rgba(0,0,0,0.08);
  padding: 10px;
  vertical-align: top;
}

.afns-badge{
  display:inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.4;
  border: 1px solid rgba(0,0,0,0.12);
  margin-left: 8px;
}
.afns-status-operational{ background: rgba(16,185,129,0.14); }
.afns-status-degraded{ background: rgba(245,158,11,0.18); }
.afns-status-outage{ background: rgba(239,68,68,0.18); }
.afns-status-maintenance{ background: rgba(59,130,246,0.18); }

.afns-incidents{ margin-top: 22px; }
.afns-incident-list{ list-style: none; padding-left: 0; }
.afns-incident{ padding: 10px 0; border-bottom: 1px solid rgba(0,0,0,0.08); }
.afns-incident-meta{ margin-top: 6px; display:flex; gap:8px; flex-wrap:wrap; }

.afns-login{ max-width: 420px; margin: 0 auto; padding: 14px; border: 1px solid rgba(0,0,0,0.08); border-radius: 10px; }
.afns-login form p{ margin: 10px 0; }

.afns-modal{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.45);
  z-index: 9999;
  padding: 20px;
}
.afns-modal-inner{
  max-width: 640px;
  margin: 40px auto;
  background: #fff;
  border-radius: 12px;
  padding: 14px;
  border: 1px solid rgba(0,0,0,0.08);
}
.afns-modal label{ display:block; margin: 10px 0; }
.afns-modal select, .afns-modal textarea{ margin-top: 6px; }
