.pwa-install-banner[hidden], #pwa-install-menu[hidden] { display: none !important; }
.pwa-install-banner { position: fixed; z-index: 900; bottom: calc(82px + env(safe-area-inset-bottom, 0px)); left: 50%; transform: translateX(-50%); width: min(400px, calc(100% - 24px)); box-sizing: border-box; display: flex; align-items: center; gap: 10px; padding: 12px; background: #fff; border: 1px solid var(--card-border, #d8e7d4); border-radius: var(--radius, 8px); box-shadow: 0 6px 24px #183b1826; font-family: inherit; }
.pwa-install-banner img { flex: 0 0 48px; border-radius: 8px; }
.pwa-install-copy { display: flex; flex: 1; flex-direction: column; gap: 4px; min-width: 0; }
.pwa-install-copy strong { font-size: 14px; color: var(--text-primary); }
.pwa-install-copy span { font-size: 11px; color: var(--text-secondary); line-height: 1.4; }
.pwa-install-banner .pwa-install-action { width: auto; min-width: 52px; flex: 0 0 auto; padding: 10px 12px; font-size: 13px; margin: 0; height: auto; }
.pwa-install-close { flex: 0 0 28px; min-height: 44px; border: 0; background: transparent; font: inherit; font-size: 22px; color: #555; cursor: pointer; }
#pwa-install-menu { width: 100%; text-align: left; font-family: inherit; cursor: pointer; }
.phone-frame > .pwa-install-banner { position: absolute; }
.pwa-install-signup[hidden] { display: none !important; }
.pwa-install-signup { display: flex; align-items: center; gap: 8px; margin: 0 0 16px; padding: 10px; border: 1px solid var(--card-border); border-radius: var(--radius); background: #fff; flex-shrink: 0; }
.pwa-install-signup img { flex: 0 0 40px; }
.pwa-install-signup .pwa-install-action { width: auto; min-width: 52px; height: 40px; margin: 0; padding: 8px; font-size: 13px; }
