/**
 * MSB PWA Manager - Install Prompt Styles
 * استایل‌های پرمپت نصب اپلیکیشن
 * نسخه نهایی - با استایل گرافیکی نوتیفیکیشن
 */

/* ========================================
   دکمه شناور نصب
   ======================================== */
.msb-pwa-install-btn-floating {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background: linear-gradient(135deg, #1ed760, #0e8e3e);
    color: #000 !important;
    padding: 14px 24px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    z-index: 99999;
    box-shadow: 0 4px 20px rgba(30, 215, 96, 0.4);
    display: none;
    align-items: center;
    gap: 10px;
    transition: all 0.3s cubic-bezier(0.2, 0.9, 0.4, 1.1);
    font-family: 'Vazirmatn', 'IRANSans', Tahoma, sans-serif;
    border: none;
    text-decoration: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
}

.msb-pwa-install-btn-floating:hover {
    transform: scale(1.05);
    box-shadow: 0 6px 30px rgba(30, 215, 96, 0.5);
    background: linear-gradient(135deg, #1fdf64, #0e8e3e);
}

.msb-pwa-install-btn-floating:active {
    transform: scale(0.95);
}

.msb-pwa-install-btn-floating i {
    font-size: 18px;
    color: #000;
}

.msb-pwa-install-btn-floating .msb-pwa-install-text {
    font-size: 14px;
}

/* ========================================
   انیمیشن‌ها
   ======================================== */
@keyframes msbPwaSlideUp {
    from {
        opacity: 0;
        transform: translateY(30px) scale(0.9);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@keyframes msbPwaPulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

.msb-pwa-install-btn-floating.pulse {
    animation: msbPwaPulse 2s ease-in-out infinite;
}

/* ========================================
   حالت‌های مختلف دکمه
   ======================================== */
.msb-pwa-install-btn-floating.installed {
    background: #4a4a4a !important;
    cursor: default;
    box-shadow: none !important;
}

.msb-pwa-install-btn-floating.installed:hover {
    transform: none !important;
}

.msb-pwa-install-btn-floating.hidden {
    display: none !important;
}

/* ========================================
   نوتیفیکیشن گرافیکی
   ======================================== */
.msb-pwa-graphic-notification {
    position: fixed;
    bottom: 100px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999999;
    background: linear-gradient(135deg, #1ed760, #0e8e3e);
    color: #fff;
    padding: 16px 24px;
    border-radius: 16px;
    font-family: 'Vazirmatn', 'IRANSans', Tahoma, sans-serif;
    font-size: 14px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
    animation: msbPwaSlideUp 0.5s ease;
    max-width: 90%;
    text-align: center;
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 500;
}

.msb-pwa-graphic-notification.success {
    background: linear-gradient(135deg, #1ed760, #0e8e3e);
}

.msb-pwa-graphic-notification.error {
    background: linear-gradient(135deg, #e74c3c, #c0392b);
}

.msb-pwa-graphic-notification.warning {
    background: linear-gradient(135deg, #f39c12, #e67e22);
}

.msb-pwa-graphic-notification.info {
    background: linear-gradient(135deg, #3498db, #2980b9);
}

/* ========================================
   نوتیفیکیشن بروزرسانی
   ======================================== */
.msb-pwa-update-notification {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 999999;
    background: linear-gradient(145deg, #1a1a1a, #0a0a0a);
    border: 1px solid rgba(30, 215, 96, 0.3);
    border-radius: 20px;
    padding: 20px 24px;
    max-width: 480px;
    width: 90%;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8);
    animation: msbPwaSlideUp 0.5s ease;
    font-family: 'Vazirmatn', 'IRANSans', Tahoma, sans-serif;
}

.msb-pwa-update-content {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.msb-pwa-update-icon {
    font-size: 40px;
    flex-shrink: 0;
}

.msb-pwa-update-text {
    flex: 1;
    min-width: 150px;
}

.msb-pwa-update-text strong {
    font-size: 16px;
    color: #fff;
    display: block;
    margin-bottom: 4px;
}

.msb-pwa-update-text p {
    font-size: 13px;
    color: #b3b3b3;
    margin: 0;
    line-height: 1.5;
}

.msb-pwa-update-buttons {
    display: flex;
    gap: 10px;
    width: 100%;
    margin-top: 12px;
}

.msb-pwa-update-buttons button {
    padding: 10px 20px;
    border: none;
    border-radius: 30px;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    transition: all 0.2s;
    flex: 1;
}

.msb-pwa-update-close {
    background: rgba(255, 255, 255, 0.08);
    color: #b3b3b3;
}

.msb-pwa-update-close:hover {
    background: rgba(255, 255, 255, 0.15);
}

.msb-pwa-update-confirm {
    background: linear-gradient(135deg, #1ed760, #0e8e3e);
    color: #000;
}

.msb-pwa-update-confirm:hover {
    transform: scale(1.02);
}

/* ========================================
   ریسپانسیو موبایل
   ======================================== */
@media (max-width: 768px) {
    .msb-pwa-install-btn-floating {
        bottom: 20px;
        right: 20px;
        padding: 12px 18px;
        font-size: 12px;
        gap: 8px;
    }
    
    .msb-pwa-install-btn-floating i {
        font-size: 16px;
    }
    
    .msb-pwa-graphic-notification {
        bottom: 80px;
        padding: 14px 18px;
        font-size: 13px;
    }
    
    .msb-pwa-update-notification {
        bottom: 20px;
        padding: 16px;
    }
    
    .msb-pwa-update-icon {
        font-size: 32px;
    }
    
    .msb-pwa-update-text strong {
        font-size: 14px;
    }
    
    .msb-pwa-update-text p {
        font-size: 12px;
    }
    
    .msb-pwa-update-buttons button {
        padding: 8px 14px;
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .msb-pwa-install-btn-floating {
        bottom: 15px;
        right: 15px;
        padding: 10px 14px;
        font-size: 11px;
        gap: 6px;
        border-radius: 40px;
    }
    
    .msb-pwa-install-btn-floating i {
        font-size: 14px;
    }
    
    .msb-pwa-graphic-notification {
        bottom: 70px;
        padding: 12px 16px;
        font-size: 12px;
        gap: 8px;
    }
    
    .msb-pwa-update-notification {
        padding: 14px;
        bottom: 15px;
    }
}

/* اصلاح نمایش اعلان‌ها در موبایل و جلوگیری از دوخطی شدن دکمه‌ها */
.msb-pwa-graphic-notification,.msb-pwa-update-notification{box-sizing:border-box}
.msb-pwa-update-buttons button,.msb-pwa-install-btn-floating,.msb-pwa-install-btn-floating .msb-pwa-install-text{white-space:nowrap;line-height:1.25}
.msb-pwa-update-content,.msb-pwa-update-text{min-width:0}.msb-pwa-update-text{overflow-wrap:anywhere}
@media (max-width:600px){
.msb-pwa-graphic-notification{width:calc(100vw - 24px);max-width:none;padding:11px 13px;gap:8px;border-radius:13px;text-align:right;justify-content:center}
.msb-pwa-update-notification{width:calc(100vw - 24px);max-width:none;padding:14px;border-radius:16px;bottom:calc(12px + env(safe-area-inset-bottom))}
.msb-pwa-update-content{gap:10px;flex-wrap:nowrap;align-items:flex-start}.msb-pwa-update-icon{font-size:28px}
.msb-pwa-update-text strong{font-size:13px}.msb-pwa-update-text p{font-size:11px;line-height:1.65}
.msb-pwa-update-buttons{width:auto;margin-top:0;flex:0 0 auto;flex-direction:column;gap:7px}.msb-pwa-update-buttons button{flex:0 0 auto;min-width:76px;padding:8px 11px;font-size:11px}}


/* اعلان موفقیت نصب: اندازه مناسب موبایل و متن خوانا */
.msb-pwa-success-notification{box-sizing:border-box;line-height:1.55;overflow-wrap:anywhere}
@media (max-width:600px){
.msb-pwa-success-notification{width:calc(100vw - 24px)!important;max-width:none!important;bottom:calc(82px + env(safe-area-inset-bottom))!important;padding:11px 14px!important;border-radius:14px!important;font-size:12px!important;gap:8px!important;text-align:right!important;justify-content:center!important}
.msb-pwa-success-notification span{font-size:22px!important;flex:0 0 auto}}
