/* Install / notifications prompt — coloured from the theme's tokens. */
.ajf-pwa {
    position: fixed; left: 50%; bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    transform: translate(-50%, 24px); opacity: 0;
    width: min(440px, calc(100vw - 32px)); box-sizing: border-box;
    display: grid; grid-template-columns: 48px 1fr; gap: 12px 14px; align-items: center;
    padding: 16px 16px 14px; z-index: 2147483000;
    background: var(--white, #fff); color: var(--dark, #222);
    border: 1px solid var(--border, rgba(0,0,0,.1)); border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0,0,0,.16);
    font-family: var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
    transition: transform .25s ease, opacity .25s ease;
}
.ajf-pwa.ajf-pwa-in { transform: translate(-50%, 0); opacity: 1; }
.ajf-pwa-icon { width: 48px; height: 48px; border-radius: 12px; background: #fdf3f5; }
.ajf-pwa-text strong { display: block; font-size: 15px; font-weight: 600; margin-bottom: 3px; color: var(--green, #222); }
.ajf-pwa-text span { display: block; font-size: 13px; line-height: 1.5; color: var(--gray, #666); }
.ajf-pwa-text span b { color: var(--dark, #222); font-weight: 600; }
.ajf-pwa-text .ajf-share { display: inline-block; vertical-align: -3px; width: 16px; height: 16px; }
.ajf-pwa-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 8px; }
.ajf-pwa-actions button {
    font: inherit; font-size: 14px; font-weight: 600; border-radius: 999px; padding: 9px 18px; cursor: pointer;
    border: 1px solid transparent; line-height: 1.2;
}
.ajf-pwa-no  { background: transparent; color: var(--gray, #666); border-color: var(--border, rgba(0,0,0,.12)) !important; }
.ajf-pwa-yes { background: var(--green, #222); color: var(--white, #fff); }
.ajf-pwa-yes:hover { filter: brightness(1.08); }
@media (prefers-reduced-motion: reduce) { .ajf-pwa { transition: none; } }
