/**
 * Wishlist Functionality Styles
 * Flying heart animation and toast notifications
 */

/* Flying heart animation */
.flying-heart {
    will-change: transform, opacity;
    transition: transform 0.3s ease;
}

.flying-heart img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 4px 12px rgba(255, 20, 147, 0.4));
}

/* Wishlist counter animation */
.wishlist-count {
    display: inline-block;
    transition: all 0.3s ease;
}

/* Toast notification container */
.toast-notification {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    font-weight: 400;
    line-height: 1.5;
}

/* Toast icon styles */
.toast-icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: bold;
    font-size: 16px;
    flex-shrink: 0;
}

.toast-success .toast-icon {
    background: #dcfce7;
    color: #10b981;
}

.toast-info .toast-icon {
    background: #dbeafe;
    color: #3b82f6;
}

.toast-error .toast-icon {
    background: #fee2e2;
    color: #ef4444;
}

/* Toast message text */
.toast-message {
    font-weight: 500;
    flex: 1;
}

/* Slide animations for notifications */
@keyframes slideInRight {
    from { 
        transform: translateX(400px);
        opacity: 0;
    }
    to { 
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slideOutRight {
    from { 
        transform: translateX(0);
        opacity: 1;
    }
    to { 
        transform: translateX(400px);
        opacity: 0;
    }
}

/* Prevent double clicks during processing */
.processing {
    pointer-events: none;
    opacity: 0.7;
}

/* Wishlist button styles */
.luxury_wishlist,
.wishlist-toggle {
    transition: all 0.2s ease;
    cursor: pointer;
    border: none;
    background: transparent;
    padding: 8px;
}

.luxury_wishlist:hover,
.wishlist-toggle:hover {
    transform: scale(1.1);
}

.luxury_wishlist:active,
.wishlist-toggle:active {
    transform: scale(0.95);
}

.luxury_wishlist img,
.wishlist-toggle img {
    display: block;
    transition: transform 0.2s ease;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .toast-notification {
        right: 10px;
        top: 10px;
        min-width: 240px;
        font-size: 13px;
        padding: 12px 16px;
        gap: 10px;
    }
    
    .toast-icon {
        width: 20px;
        height: 20px;
        font-size: 14px;
    }
    
    .flying-heart {
        width: 30px !important;
        height: 30px !important;
    }
}

@media (max-width: 480px) {
    .toast-notification {
        min-width: calc(100vw - 40px);
        left: 10px;
        right: 10px;
    }
}

/* Dark mode support (optional) */
@media (prefers-color-scheme: dark) {
    .toast-notification {
        background: #1f2937;
        color: #f3f4f6;
    }
    
    .toast-success .toast-icon {
        background: rgba(16, 185, 129, 0.2);
    }
    
    .toast-info .toast-icon {
        background: rgba(59, 130, 246, 0.2);
    }
    
    .toast-error .toast-icon {
        background: rgba(239, 68, 68, 0.2);
    }
}

/* Print styles - hide notifications */
@media print {
    .toast-notification,
    .flying-heart {
        display: none !important;
    }
}

.detailsfaq-fav.in-wishlist,
.luxury_wishlist.in-wishlist {
    background: #10b981 !important;
    color: white !important;
    border-color: #10b981 !important;
}

.detailsfaq-fav.processing,
.luxury_wishlist.processing {
    pointer-events: none;
    opacity: 0.7;
}

/* Optional: Pulse animation when in wishlist */
.detailsfaq-fav.in-wishlist {
    animation: wishlistPulse 0.5s ease;
}

@keyframes wishlistPulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}