/* Installation de la PWA : panneau accessible, sans modification des autres thèmes. */
.prism-install-modal[hidden], .prism-install-help[hidden] { display: none !important; }
.prism-install-modal { position: fixed; inset: 0; z-index: 1090; display: flex; align-items: center; justify-content: center; padding: 20px; padding-bottom: max(20px, env(safe-area-inset-bottom)); }
.prism-install-backdrop { position: absolute; inset: 0; background: rgba(10, 18, 35, .68); }
.prism-install-dialog { position: relative; width: min(100%, 400px); max-height: calc(100vh - 40px); overflow-y: auto; padding: 28px 24px 20px; border-radius: 20px; background: var(--bs-body-bg, #fff); color: var(--bs-body-color, #263246); box-shadow: 0 24px 70px rgba(0,0,0,.25); text-align: center; }
.prism-install-dialog:focus { outline: none; }
.prism-install-dialog h2 { font-size: 1.25rem; font-weight: 650; margin: 10px 0 12px; }
.prism-install-dialog p { line-height: 1.5; }
.prism-install-logo { width: 62px; height: 62px; border-radius: 18px; margin: 0 auto; display: grid; place-items: center; background: var(--bs-primary-bg-subtle, #eaf0ff); color: var(--bs-primary, #3566ba); font-size: 2rem; }
.prism-install-close { position: absolute; top: 8px; right: 10px; width: 38px; height: 38px; background: transparent; border: none; color: inherit; font-size: 1.6rem; line-height: 1; }
.prism-install-help { margin: 12px 0 0; padding: 12px; background: var(--bs-tertiary-bg, #f6f8fa); border-radius: 12px; font-size: .9rem; }
body.prism-install-open { overflow: hidden; }
@media (max-width: 560px) { .prism-install-dialog { padding: 24px 18px 16px; } }
