.pwa-instalar[hidden],
.pwa-dialogo[hidden] {
    display: none !important;
}

.pwa-instalar {
    position: fixed;
    z-index: 75;
    inset: auto 18px max(18px, env(safe-area-inset-bottom));
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 999px;
    color: #fff;
    background: #182033;
    box-shadow: 0 12px 32px rgba(18, 25, 42, .28);
    cursor: pointer;
    font: 750 .78rem/1.1 system-ui, -apple-system, "Segoe UI", sans-serif;
    letter-spacing: 0;
    transition: transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.pwa-instalar[data-pwa-context="loja"] {
    right: auto;
    left: 18px;
    background: linear-gradient(135deg, #a94870, #48243a);
    box-shadow: 0 12px 32px rgba(72, 36, 58, .3);
}

.pwa-instalar:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 36px rgba(18, 25, 42, .34);
}

.pwa-instalar:focus-visible,
.pwa-dialogo button:focus-visible {
    outline: 3px solid rgba(196, 92, 131, .34);
    outline-offset: 3px;
}

.pwa-instalar svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.pwa-somente-leitor {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.pwa-dialogo {
    width: min(430px, calc(100% - 28px));
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 20px;
    color: #33252e;
    background: #fff;
    box-shadow: 0 26px 80px rgba(30, 19, 27, .32);
    font: 400 .92rem/1.55 system-ui, -apple-system, "Segoe UI", sans-serif;
}

.pwa-dialogo::backdrop {
    background: rgba(28, 20, 25, .62);
    backdrop-filter: blur(3px);
}

.pwa-dialogo-conteudo {
    padding: 27px;
}

.pwa-dialogo-marca {
    width: 50px;
    height: 50px;
    display: grid;
    place-items: center;
    margin-bottom: 17px;
    border-radius: 15px;
    color: #fff;
    background: linear-gradient(145deg, #c45c83, #48243a);
    font-weight: 850;
}

.pwa-dialogo h2 {
    margin: 0 0 7px;
    color: #2f1728;
    font-size: 1.25rem;
    line-height: 1.25;
}

.pwa-dialogo p {
    margin: 0;
    color: #6d6068;
}

.pwa-dialogo-acoes {
    display: flex;
    justify-content: flex-end;
    margin-top: 22px;
}

.pwa-dialogo button {
    min-height: 42px;
    padding: 9px 17px;
    border: 0;
    border-radius: 11px;
    color: #fff;
    background: #48243a;
    cursor: pointer;
    font: inherit;
    font-weight: 750;
}

.modo-loja.loja-carrinho-aberto .pwa-instalar,
.modo-loja.loja-modal-variacao-aberto .pwa-instalar {
    display: none !important;
}

@media (display-mode: standalone) {
    .pwa-instalar { display: none !important; }
}

@media (max-width: 620px) {
    .pwa-instalar {
        right: 12px;
        bottom: max(12px, env(safe-area-inset-bottom));
        padding-inline: 14px;
    }

    .pwa-instalar[data-pwa-context="loja"] {
        right: auto;
        left: 12px;
    }
}

@media print {
    .pwa-instalar,
    .pwa-dialogo { display: none !important; }
}
