/* MATUS PWA install surface — scoped and independent from page layouts. */
.matus-pwa-install {
    position: fixed;
    inset-inline: max(14px, env(safe-area-inset-left)) max(14px, env(safe-area-inset-right));
    bottom: calc(14px + env(safe-area-inset-bottom));
    z-index: 10050;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    width: min(620px, calc(100vw - 28px));
    margin-inline: auto;
    padding: 12px;
    border: 1px solid rgba(237, 207, 156, .18);
    border-radius: 24px;
    background:
        radial-gradient(circle at 88% 0%, rgba(196, 153, 91, .13), transparent 38%),
        rgba(13, 10, 8, .88);
    -webkit-backdrop-filter: blur(22px) saturate(128%);
    backdrop-filter: blur(22px) saturate(128%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .52), inset 0 1px 0 rgba(255, 255, 255, .06);
    color: #fff8eb;
    opacity: 0;
    transform: translateY(24px) scale(.98);
    pointer-events: none;
    transition: opacity .28s ease, transform .28s ease;
}
.matus-pwa-install.is-visible { opacity: 1; transform: translateY(0) scale(1); pointer-events: auto; }
.matus-pwa-install__icon {
    width: 54px; height: 54px; border-radius: 17px; object-fit: cover;
    background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1);
    box-shadow: 0 12px 30px rgba(0,0,0,.34);
}
.matus-pwa-install__copy { min-width: 0; }
.matus-pwa-install__copy strong { display: block; margin-bottom: 3px; font-size: 14px; color: #fff8eb; }
.matus-pwa-install__copy span { display: block; color: rgba(255,248,235,.65); font-size: 12px; line-height: 1.8; }
.matus-pwa-install__actions { display: flex; align-items: center; gap: 7px; }
.matus-pwa-install__button,
.matus-pwa-install__dismiss {
    min-height: 40px; border-radius: 14px; padding: 0 14px; font: inherit; font-size: 12px; cursor: pointer;
}
.matus-pwa-install__button {
    border: 1px solid rgba(237,207,156,.28);
    background: linear-gradient(135deg, #e8c98f, #b8894c);
    color: #181008; font-weight: 800; box-shadow: 0 10px 24px rgba(184,137,76,.2);
}
.matus-pwa-install__dismiss {
    border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.045); color: rgba(255,255,255,.7);
}
.matus-pwa-install__button:focus-visible,
.matus-pwa-install__dismiss:focus-visible { outline: 2px solid rgba(237,207,156,.72); outline-offset: 2px; }
@media (max-width: 560px) {
    .matus-pwa-install { grid-template-columns: 48px minmax(0, 1fr); border-radius: 22px; }
    .matus-pwa-install__icon { width: 48px; height: 48px; border-radius: 15px; }
    .matus-pwa-install__actions { grid-column: 1 / -1; }
    .matus-pwa-install__button { flex: 1; }
}
@media (prefers-reduced-motion: reduce) {
    .matus-pwa-install { transition: none; }
}


/* Safe PWA update notice: never forces a form or account page to reload. */
.matus-pwa-update{position:fixed;inset-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right));bottom:calc(14px + env(safe-area-inset-bottom));z-index:10060;display:flex;align-items:center;justify-content:space-between;gap:14px;width:min(560px,calc(100vw - 28px));margin-inline:auto;padding:13px 14px;border:1px solid rgba(237,207,156,.2);border-radius:20px;background:rgba(13,10,8,.92);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 24px 70px rgba(0,0,0,.52);color:#fff8eb;opacity:0;transform:translateY(20px);pointer-events:none;transition:.26s ease}.matus-pwa-update.is-visible{opacity:1;transform:none;pointer-events:auto}.matus-pwa-update>div:first-child{min-width:0}.matus-pwa-update strong,.matus-pwa-update span{display:block}.matus-pwa-update strong{font-size:13px;margin-bottom:3px}.matus-pwa-update span{font-size:11px;line-height:1.75;color:rgba(255,248,235,.66)}.matus-pwa-update>div:last-child{display:flex;gap:7px;flex-shrink:0}.matus-pwa-update button{min-height:38px;padding:0 12px;border-radius:12px;font:inherit;font-size:11px;cursor:pointer}.matus-pwa-update__refresh{border:1px solid rgba(237,207,156,.28);background:linear-gradient(135deg,#e8c98f,#b8894c);color:#181008;font-weight:800}.matus-pwa-update__later{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045);color:rgba(255,255,255,.74)}@media(max-width:520px){.matus-pwa-update{align-items:stretch;flex-direction:column}.matus-pwa-update>div:last-child{width:100%}.matus-pwa-update button{flex:1}}@media(prefers-reduced-motion:reduce){.matus-pwa-update{transition:none}}
