
/* Schermata di avvio della PWA installata su mobile. */
html.mmc-pwa-launch-active,
html.mmc-pwa-launch-active body{
    overflow:hidden !important;
    background:#fff !important;
}

.mmc-pwa-launch-screen{
    display:none;
    position:fixed;
    inset:0;
    z-index:2147483646;
    place-items:center;
    padding:clamp(28px,8vw,64px);
    background:#fff;
    opacity:1;
    visibility:visible;
    transition:opacity .28s ease,visibility .28s ease;
}

html.mmc-pwa-launch-active .mmc-pwa-launch-screen{
    display:grid;
}

.mmc-pwa-launch-screen.is-leaving{
    opacity:0;
    visibility:hidden;
}

.mmc-pwa-launch-screen__brand{
    width:min(88vw,480px);
    max-width:100%;
    transform:translateY(-2vh);
}

.mmc-pwa-launch-screen__brand img{
    display:block;
    width:100%;
    height:auto;
    max-height:48vh;
    object-fit:contain;
}

@media(prefers-reduced-motion:no-preference){
    html.mmc-pwa-launch-active .mmc-pwa-launch-screen__brand{
        animation:mmc-pwa-brand-in .46s cubic-bezier(.2,.75,.25,1) both;
    }

    @keyframes mmc-pwa-brand-in{
        from{opacity:0;transform:translateY(calc(-2vh + 10px)) scale(.975)}
        to{opacity:1;transform:translateY(-2vh) scale(1)}
    }
}

.mmc-pwa-menu-action[hidden],
.mmc-pwa-prompt[hidden]{
    display:none !important;
}

.mmc-pwa-menu-action{
    display:flex;
    width:100%;
    min-height:44px;
    align-items:center;
    gap:10px;
    padding:11px 12px;
    border:0;
    border-radius:10px;
    background:transparent;
    color:#071d3a;
    font:inherit;
    font-size:14px;
    font-weight:850;
    text-align:left;
    cursor:pointer;
}

.mmc-pwa-menu-action:hover,
.mmc-pwa-menu-action:focus-visible{
    background:#f1f4f7;
}

.mmc-pwa-menu-action:focus-visible{
    outline:2px solid #0756d8;
    outline-offset:2px;
}

.mmc-pwa-menu-action__icon{
    display:inline-flex;
    width:28px;
    height:28px;
    flex:0 0 28px;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#edf3ff;
    color:#0756d8;
}

.mmc-pwa-menu-action__icon svg{
    width:17px;
    height:17px;
    fill:currentColor;
}

.mmc-pwa-prompt{
    position:fixed;
    right:24px;
    bottom:24px;
    z-index:10020;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    gap:13px;
    width:min(560px,calc(100vw - 48px));
    align-items:center;
    padding:14px;
    border:1px solid rgba(7,29,58,.12);
    border-radius:20px;
    background:rgba(255,255,255,.98);
    box-shadow:0 20px 60px rgba(7,29,58,.2);
    color:#071d3a;
    backdrop-filter:blur(16px);
    box-sizing:border-box;
}

.mmc-pwa-prompt__icon{
    display:block;
    width:52px;
    height:52px;
    border-radius:14px;
    box-shadow:0 8px 20px rgba(7,29,58,.16);
}

.mmc-pwa-prompt__copy{
    display:grid;
    gap:4px;
    min-width:0;
}

.mmc-pwa-prompt__copy strong{
    font-size:16px;
    line-height:1.2;
    font-weight:900;
}

.mmc-pwa-prompt__copy span{
    color:#5b6675;
    font-size:13px;
    line-height:1.4;
    font-weight:650;
}

.mmc-pwa-prompt__install{
    min-height:42px;
    padding:10px 17px;
    border:0;
    border-radius:999px;
    background:#0756d8;
    color:#fff;
    font:inherit;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
}

.mmc-pwa-prompt__install:hover,
.mmc-pwa-prompt__install:focus-visible{
    background:#0649b8;
}

.mmc-pwa-prompt__install:focus-visible,
.mmc-pwa-prompt__dismiss:focus-visible{
    outline:3px solid rgba(7,86,216,.25);
    outline-offset:2px;
}

.mmc-pwa-prompt__dismiss{
    display:inline-flex;
    width:38px;
    height:38px;
    align-items:center;
    justify-content:center;
    padding:0;
    border:0;
    border-radius:999px;
    background:#f1f3f5;
    color:#4f5966;
    font:inherit;
    font-size:25px;
    line-height:1;
    cursor:pointer;
}

.mmc-pwa-prompt__dismiss:hover{
    background:#e5e9ed;
    color:#071d3a;
}

@media(max-width:768px){
    .mmc-pwa-prompt{
        right:12px;
        bottom:calc(94px + env(safe-area-inset-bottom));
        left:12px;
        grid-template-columns:auto minmax(0,1fr) auto;
        width:auto;
        padding:12px;
        border-radius:18px;
    }

    .mmc-pwa-prompt__icon{
        width:46px;
        height:46px;
        border-radius:12px;
    }

    .mmc-pwa-prompt__copy strong{
        font-size:15px;
    }

    .mmc-pwa-prompt__copy span{
        font-size:12px;
    }

    .mmc-pwa-prompt__install{
        grid-column:2;
        justify-self:start;
        min-height:38px;
        padding:8px 15px;
    }

    .mmc-pwa-prompt__dismiss{
        grid-column:3;
        grid-row:1;
        align-self:start;
        width:34px;
        height:34px;
    }
}

@media(prefers-reduced-motion:no-preference){
    .mmc-pwa-prompt{
        animation:mmc-pwa-prompt-in .24s ease-out both;
    }

    @keyframes mmc-pwa-prompt-in{
        from{opacity:0;transform:translateY(12px)}
        to{opacity:1;transform:translateY(0)}
    }
}
