#network-notice {
  position: fixed;
  z-index: 200; /* Above the device, desktop dock, and app windows. */
  top: max(16px, env(safe-area-inset-top));
  left: 50%;
  transform: translateX(-50%);
  width: min(520px, calc(100% - 32px));
  max-height: calc(100dvh - max(16px, env(safe-area-inset-top)) - 16px);
  overflow: auto;
  overflow-wrap: anywhere;
  padding: 16px 20px;
  background: #e4e4df;
  color: #272a28;
  border: 1px solid #989c97;
  border-radius: 8px;
  box-shadow: 0 8px 32px #0008;
  font: 14px/1.5 monospace;
  -webkit-font-smoothing: antialiased;
}
#network-notice[hidden], #network-notice button[hidden] { display: none; }
#network-notice p { margin: 0; }
#network-notice button {
  position: static;
  display: block;
  margin-top: 12px;
  padding: 10px 16px;
  border: 1px solid #989c97;
  border-radius: 4px;
  background: transparent;
  color: #171819;
  font: 600 14px/1.4 system-ui, sans-serif;
  cursor: pointer;
}
#network-notice button:focus-visible { outline: 2px solid #272a28; outline-offset: 3px; }
#network-notice button:disabled { opacity: .6; cursor: wait; }
