#universe-pwa {
  --pwa-bg: #ffffff; --pwa-text: #172033; --pwa-muted: #556176;
  position: fixed; left: 50%; bottom: calc(78px + env(safe-area-inset-bottom));
  transform: translateX(-50%); width: min(380px, calc(100vw - 32px));
  box-sizing: border-box; padding: 16px; border: 1px solid #dfe5ef;
  border-radius: 20px; background: var(--pwa-bg); color: var(--pwa-text);
  box-shadow: 0 12px 40px #11234726; z-index: 10;
  font: 14px/1.45 system-ui, -apple-system, sans-serif;
}
#universe-pwa[hidden], #universe-install-guide[hidden] { display: none; }
#universe-pwa h2 { font-size: 16px; margin: 0 32px 4px 0; }
#universe-pwa p { margin: 0; color: var(--pwa-muted); }
#universe-pwa .pwa-actions { display: flex; align-items: center; gap: 12px; margin-top: 12px; }
#universe-pwa button, #universe-install-guide button {
  border: 0; border-radius: 10px; padding: 10px 16px; font: 600 14px system-ui;
  background: #2563eb; color: #ffffff; cursor: pointer;
}
#universe-pwa .pwa-dismiss { background: transparent; color: var(--pwa-muted); padding: 10px 0; }
#universe-pwa button:focus-visible, #universe-install-guide button:focus-visible { outline: 3px solid #92b5ff; outline-offset: 3px; }
#universe-install-guide {
  position: fixed; inset: 0; display: grid; place-items: center;
  box-sizing: border-box; padding: 24px; background: #07132a88;
  color: #172033; z-index: 20; font: 16px/1.6 system-ui, -apple-system, sans-serif;
}
#universe-install-guide > div { width: min(400px, 100%); box-sizing: border-box; padding: 26px; border-radius: 24px; background: #ffffff; }
#universe-install-guide h2 { font-size: 22px; line-height: 1.2; margin: 0 0 12px; }
#universe-install-guide p { margin: 0 0 12px; }
#universe-install-guide ol { padding-left: 22px; }
#universe-install-guide button { width: 100%; margin-top: 10px; }
html[data-universe-theme="dark"] #universe-pwa { --pwa-bg: #172033; --pwa-text: #f2f5fb; --pwa-muted: #bac6d9; border-color: #334057; }
html[data-universe-theme="dark"] #universe-install-guide > div { background: #172033; color: #f2f5fb; }
