/* GoSmart Saber — app instalable (PWA) */
[data-pwa-instalar][hidden] { display: none !important; }

.boton-instalar { white-space: nowrap; }
@media (max-width: 480px) { .boton-instalar .pwa-txt { display: none; } }

.enlace-instalar {
    display: inline-flex; align-items: center; gap: .4rem; margin-top: 1rem;
    color: #1e3a8a; font-weight: 600; text-decoration: none;
    border: 1px solid #bfdbfe; background: #eff6ff; border-radius: 999px; padding: .45rem 1rem;
}
.enlace-instalar:hover { background: #dbeafe; }

.pwa-barra {
    position: fixed; left: .75rem; right: .75rem; bottom: .75rem; z-index: 1500;
    display: flex; align-items: center; gap: .6rem;
    background: #1e3a8a; color: #fff; border-radius: 14px; padding: .6rem .75rem;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .3); font-size: .95rem;
    padding-bottom: calc(.6rem + env(safe-area-inset-bottom, 0px));
}
.pwa-barra img { width: 36px; height: 36px; border-radius: 9px; flex: none; }
.pwa-barra span { flex: 1; line-height: 1.25; }
.pwa-barra-si {
    background: #f5d65e; color: #1e3a8a; font-weight: 700; text-decoration: none;
    border-radius: 8px; padding: .45rem .85rem; flex: none;
}
.pwa-barra-no { color: #fff; text-decoration: none; font-size: 1.5rem; line-height: 1; padding: 0 .3rem; flex: none; opacity: .85; }

.pwa-modal-fondo {
    position: fixed; inset: 0; z-index: 2000; background: rgba(15, 23, 42, .55);
    display: flex; align-items: flex-end; justify-content: center; padding: 1rem;
}
@media (min-width: 600px) { .pwa-modal-fondo { align-items: center; } }
.pwa-modal {
    position: relative; background: #fff; color: #334155; border-radius: 16px; width: 100%; max-width: 440px;
    padding: 1.25rem 1.25rem 1rem; box-shadow: 0 20px 40px rgba(15, 23, 42, .25);
}
.pwa-modal h3 { margin: 0 2rem .75rem 0; color: #1e3a8a; font-size: 1.15rem; }
.pwa-modal ol { margin: 0 0 .75rem 1.2rem; padding: 0; line-height: 1.5; }
.pwa-modal li { margin-bottom: .4rem; }
.pwa-nota { font-size: .85rem; color: #64748b; margin: 0; }
.pwa-cerrar { position: absolute; top: .5rem; right: .8rem; font-size: 1.6rem; line-height: 1; color: #334155; text-decoration: none; }

.pwa-toast {
    position: fixed; left: 50%; bottom: 1.25rem; transform: translateX(-50%); z-index: 2100;
    background: #166534; color: #fff; border-radius: 10px; padding: .7rem 1rem; font-size: .92rem;
    box-shadow: 0 8px 24px rgba(15, 23, 42, .25); max-width: calc(100% - 2rem);
}

/* En la app instalada no hace falta el botón de instalar */
@media (display-mode: standalone) { [data-pwa-instalar], .pwa-barra { display: none !important; } }
