#online-status-overlay {
  position: fixed; inset: 0; z-index: 20000; display: flex;
  align-items: center; justify-content: center;
  padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
  background: rgba(3, 7, 18, .88); box-sizing: border-box;
}
#online-status-overlay .online-status-card {
  width: min(100%, 440px); max-height: 100%; overflow-y: auto;
  padding: 20px; box-sizing: border-box; border-radius: 20px;
  border: 1px solid #27556b; background: #101729; color: #fff;
  font-family: inherit; line-height: 1.8; text-align: center;
}
#online-status-overlay h2 { margin: 0 0 12px; color: #00e5ff; font-size: 22px; }
#online-status-overlay p { overflow-wrap: anywhere; }
#online-status-overlay button { width: 100%; min-height: 48px; margin-top: 10px; font-family: inherit; }
#online-status-overlay button:focus-visible { outline: 3px solid #00e5ff; outline-offset: 2px; }
