.ppw-subscribe{border:0;border-radius:10px;padding:12px 18px;font-size:16px;cursor:pointer;background:#111;color:#fff}.ppw-status{display:block;margin-top:8px;font-size:14px}.ppw-status.error{color:#b42318}.ppw-status.success{color:#067647}
/* Promo Push v2.6.10 — compact top notification permission popup */
.ppw-notification-popup{
    position:fixed !important;
    top:12px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    width:min(560px,calc(100% - 24px)) !important;
    z-index:2147483647 !important;
    pointer-events:none !important;
    font-family:inherit !important;
    animation:ppwNotificationPopupIn .22s ease-out both !important;
}
.ppw-notification-popup-card{
    box-sizing:border-box !important;
    width:100% !important;
    min-height:58px !important;
    display:flex !important;
    align-items:center !important;
    gap:11px !important;
    padding:10px 12px 10px 14px !important;
    border-radius:12px !important;
    background:#111 !important;
    color:#fff !important;
    box-shadow:0 10px 28px rgba(0,0,0,.22) !important;
    pointer-events:auto !important;
}
.ppw-notification-popup-icon{
    flex:0 0 auto !important;
    width:30px !important;
    height:30px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:8px !important;
    background:rgba(255,255,255,.10) !important;
    font-size:17px !important;
    line-height:1 !important;
}
.ppw-notification-popup-message{
    flex:1 1 auto !important;
    min-width:0 !important;
    font-size:13px !important;
    font-weight:500 !important;
    line-height:1.35 !important;
    text-align:left !important;
    color:#fff !important;
}
.ppw-notification-popup-enable{
    flex:0 0 auto !important;
    border:0 !important;
    border-radius:8px !important;
    padding:8px 12px !important;
    background:#fff !important;
    color:#111 !important;
    font-family:inherit !important;
    font-size:13px !important;
    font-weight:700 !important;
    line-height:1 !important;
    cursor:pointer !important;
    white-space:nowrap !important;
}
.ppw-notification-popup-enable:hover{opacity:.92 !important;}
.ppw-notification-popup-enable:disabled{opacity:.65 !important;cursor:wait !important;}
.ppw-notification-popup-hide{animation:ppwNotificationPopupOut .18s ease-in both !important;}
@keyframes ppwNotificationPopupIn{
    from{opacity:0;transform:translate(-50%,-12px)}
    to{opacity:1;transform:translate(-50%,0)}
}
@keyframes ppwNotificationPopupOut{
    from{opacity:1;transform:translate(-50%,0)}
    to{opacity:0;transform:translate(-50%,-10px)}
}
@media(max-width:480px){
    .ppw-notification-popup{top:8px !important;width:calc(100% - 16px) !important;}
    .ppw-notification-popup-card{min-height:54px !important;padding:9px 10px 9px 11px !important;gap:9px !important;border-radius:11px !important;}
    .ppw-notification-popup-icon{width:28px !important;height:28px !important;font-size:16px !important;}
    .ppw-notification-popup-message{font-size:12.5px !important;}
    .ppw-notification-popup-enable{padding:8px 10px !important;font-size:12.5px !important;}
}


/* Promo Push v2.3.0 — compact icon for navigation menus */
.promo-push-menu-icon{
    width:auto !important;
    height:42px !important;
    min-width:0 !important;
    min-height:42px !important;
    max-width:none !important;
    padding:0 8px !important;
    margin:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    white-space:nowrap !important;
    overflow:visible !important;
    cursor:pointer !important;
    line-height:1 !important;
    font-size:24px !important;
}
.promo-push-menu-icon:hover,
.promo-push-menu-icon:focus{
    transform:scale(1.08);
    outline:none;
}

/* Promo Push v2.5.3 diagnostic */
.ppw-diagnostic{max-width:680px;margin:18px 0;padding:16px;border:1px solid #ddd;border-radius:12px;background:#fff;font-family:system-ui,-apple-system,sans-serif}
.ppw-diag-lines{margin:12px 0;line-height:1.8}
.ppw-diagnostic button{margin:6px 8px 6px 0;padding:10px 14px;border:0;border-radius:8px;cursor:pointer;background:#111;color:#fff}
.ppw-diag-refresh{background:#666!important}
.ppw-diag-result{display:block;white-space:pre-wrap;word-break:break-word;background:#f6f7f7;padding:10px;border-radius:8px;min-height:42px;margin-top:10px}

.ppw-diag-enable{background:#111!important;color:#fff!important}.ppw-diagnostic button:disabled{opacity:.6;cursor:wait}

/* Notification button label */
.promo-push-menu-icon .ppw-notification-label{display:inline-block;margin-left:7px;vertical-align:middle;}
.promo-push-menu-icon .ppw-icon{display:inline-block;vertical-align:middle;line-height:1;}


/* v2.5.9: keep the notification text visible in Elementor/menu containers */
.ppw-box .promo-push-menu-icon .ppw-icon{
    flex:0 0 auto !important;
    display:inline-flex !important;
    align-items:center !important;
    visibility:visible !important;
}
.ppw-box .promo-push-menu-icon .ppw-notification-label{
    display:inline-block !important;
    flex:0 0 auto !important;
    width:auto !important;
    max-width:none !important;
    height:auto !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
    white-space:nowrap !important;
    margin-left:7px !important;
    font-size:14px !important;
    line-height:1.2 !important;
    color:#111 !important;
}
.ppw-box .promo-push-menu-icon{
    box-sizing:border-box !important;
    overflow:visible !important;
}

/* v2.6.0 — professional notification button */
.ppw-box .promo-push-menu-icon,
.ppw-box .promo-push-menu-icon:visited{
    width:auto !important;
    min-width:0 !important;
    max-width:100% !important;
    height:auto !important;
    min-height:44px !important;
    max-height:none !important;
    box-sizing:border-box !important;
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:10px 16px !important;
    margin:0 !important;
    border:1px solid #d0d5dd !important;
    border-radius:12px !important;
    background:#ffffff !important;
    color:#1d2939 !important;
    box-shadow:0 1px 2px rgba(16,24,40,.06) !important;
    font-family:inherit !important;
    font-size:15px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    overflow:visible !important;
    cursor:pointer !important;
    transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease !important;
}
.ppw-box .promo-push-menu-icon:hover{
    background:#f8fafc !important;
    border-color:#98a2b3 !important;
    box-shadow:0 3px 8px rgba(16,24,40,.10) !important;
    transform:translateY(-1px) !important;
}
.ppw-box .promo-push-menu-icon:focus-visible{
    outline:3px solid rgba(84,146,255,.25) !important;
    outline-offset:2px !important;
    border-color:#667085 !important;
}
.ppw-box .promo-push-menu-icon:active{
    transform:translateY(0) !important;
    box-shadow:0 1px 2px rgba(16,24,40,.06) !important;
}
.ppw-box .promo-push-menu-icon .ppw-icon{
    flex:0 0 auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:auto !important;
    margin:0 !important;
    font-size:20px !important;
    line-height:1 !important;
}
.ppw-box .promo-push-menu-icon .ppw-notification-label{
    flex:0 1 auto !important;
    display:inline-block !important;
    width:auto !important;
    max-width:none !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
    color:#1d2939 !important;
    font-size:15px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    white-space:nowrap !important;
}
.ppw-box.ppw-subscribed .promo-push-menu-icon{
    background:#f8fafc !important;
    border-color:#b8c0cc !important;
}
@media (max-width:767px){
    .ppw-box .promo-push-menu-icon{
        min-height:42px !important;
        padding:9px 14px !important;
        border-radius:11px !important;
        font-size:14px !important;
    }
    .ppw-box .promo-push-menu-icon .ppw-notification-label{
        font-size:14px !important;
    }
    .ppw-box .promo-push-menu-icon .ppw-icon{
        font-size:19px !important;
    }
}
