/* Namespaced install UI; never changes body scrolling or shared functional states. */
.site-brand .pwa-brand-mark { border-radius: 12px; }
.pwa-install-entry { margin-top: 14px; padding: 8px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff8; color: var(--purple-dark); cursor: pointer; }
.pwa-install-card {
  position: fixed; z-index: 890; right: max(82px, calc(72px + env(safe-area-inset-right)));
  bottom: calc(var(--bottom-nav) + 16px + env(safe-area-inset-bottom)); left: 12px;
  max-width: 350px; max-height: min(430px, calc(100dvh - 210px)); overflow-y: auto;
  padding: 16px; border: 1px solid #fff; border-radius: 22px;
  color: var(--ink); background: linear-gradient(135deg,#fffafff5,#efe3faf2 65%,#fbe7f3f2);
  box-shadow: 0 12px 44px #65477c26, 0 0 24px #d6b8ee33;
  backdrop-filter: blur(14px); animation: pwa-card-in .28s ease-out;
}
.pwa-install-card[hidden], .pwa-install-entry[hidden], .pwa-ios-help[hidden] { display: none; }
.pwa-install-heading { display: flex; align-items: center; gap: 10px; }
.pwa-install-heading img { flex: 0 0 52px; border-radius: 13px; object-fit: contain; }
.pwa-install-heading h2 { margin: 0; font-size: 19px; line-height: 1.4; }
.pwa-install-heading p, .pwa-install-copy { margin: 4px 0 0; font-size: 13px; line-height: 1.65; }
.pwa-install-copy { margin-top: 10px; color: var(--muted); }
.pwa-install-actions { display: flex; gap: 8px; margin-top: 12px; }
.pwa-install-actions button { min-height: 42px; padding: 8px 12px; border: 1px solid #cdb6e9; border-radius: 12px; cursor: pointer; font-size: 14px; }
#pwaInstallAccept { flex: 1; background: linear-gradient(120deg,#9478cf,#ad88ce); color: #fff; font-weight: 700; }
#pwaInstallLater { background: #fffc; color: var(--purple-dark); }
.pwa-install-actions button:disabled { opacity: .65; cursor: wait; }
.pwa-install-status:empty { display: none; }
.pwa-install-status, .pwa-ios-help { font-size: 13px; line-height: 1.75; }
.pwa-ios-help ol { padding-left: 22px; margin: 12px 0; }
.pwa-ios-help p { color: var(--muted); }
@media (min-width: 900px) { .pwa-install-card { left: auto; right: 90px; bottom: 24px; width: 350px; max-height: calc(100dvh - 48px); } }
@media (max-height: 540px) { .pwa-install-card { max-height: calc(100dvh - 130px); } }
@keyframes pwa-card-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .pwa-install-card { animation: none; } }
