/* Bouton « Installer l'application » (PWA) - volontairement très visible : dégradé violet
   de la charte, icône, halo pulsé discret (désactivé si l'utilisateur réduit les animations). */
.pwa-install-btn[hidden] { display: none !important; }
.pwa-install-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  border: 0; cursor: pointer; font-family: 'Manrope', system-ui, sans-serif; font-weight: 800;
  color: #fff; background: linear-gradient(135deg, #6C5CE7 0%, #4B3AC4 100%);
  border-radius: 12px; padding: 10px 16px; font-size: 0.9rem; line-height: 1.2;
  box-shadow: 0 6px 18px rgba(108, 92, 231, 0.45);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  animation: pwa-pulse 2.4s ease-in-out infinite;
}
.pwa-install-btn:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(108, 92, 231, 0.55); }
.pwa-install-btn:focus-visible { outline: 3px solid #B4A9FA; outline-offset: 3px; }
.pwa-install-btn img { width: 26px; height: 26px; border-radius: 7px; background: #fff; flex-shrink: 0; }
.pwa-install-btn .pwa-install-sub { display: block; font-weight: 600; font-size: 0.78rem; opacity: 0.85; }

/* Page de connexion : grand bandeau pleine largeur au-dessus du formulaire. */
.pwa-install-btn--hero { width: 100%; padding: 14px 18px; font-size: 1.05rem; border-radius: 14px; margin-bottom: 18px; text-align: left; justify-content: flex-start; }
.pwa-install-btn--hero img { width: 44px; height: 44px; border-radius: 10px; }

/* Barre du haut : sur petit écran, l'icône seule. */
@media (max-width: 720px) {
  .pwa-install-btn--topbar .pwa-install-label { display: none; }
  .pwa-install-btn--topbar { padding: 6px; }
}

@keyframes pwa-pulse {
  0%, 100% { box-shadow: 0 6px 18px rgba(108, 92, 231, 0.45), 0 0 0 0 rgba(108, 92, 231, 0.45); }
  50% { box-shadow: 0 6px 18px rgba(108, 92, 231, 0.45), 0 0 0 8px rgba(108, 92, 231, 0); }
}
@media (prefers-reduced-motion: reduce) { .pwa-install-btn { animation: none; } }

/* Fenêtre d'aide (iOS, Safari, Firefox...) : en bas sur mobile, centrée sur PC. */
.pwa-install-overlay { position: fixed; inset: 0; z-index: 99999; display: flex; align-items: flex-end; justify-content: center; background: rgba(23, 21, 42, 0.55); padding: 16px; }
.pwa-install-box { width: 100%; max-width: 420px; background: #fff; color: #17152A; border-radius: 16px; padding: 22px; font: 16px/1.45 'Manrope', system-ui, -apple-system, sans-serif; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3); }
.pwa-install-box h2 { margin: 0 0 12px; font-size: 18px; color: #4B3AC4; }
.pwa-install-box ol { margin: 0 0 16px; padding-left: 22px; }
.pwa-install-box li { margin-bottom: 8px; }
.pwa-install-close { display: block; width: 100%; padding: 12px; border: 0; border-radius: 10px; background: #6C5CE7; color: #fff; font-size: 16px; font-weight: 700; cursor: pointer; }
@media (min-width: 600px) { .pwa-install-overlay { align-items: center; } }
