/* Дополнительные стили для выпадающего списка языков */

/* Анимация для флагов */
.flag-icon {
    transition: transform 0.2s ease-in-out;
}

.flag-icon:hover {
    transform: scale(1.1);
}

/* Эффект свечения для активного языка */
.language-active {
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* Градиентная анимация для hover эффекта */
.language-hover-gradient {
    background: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 100%);
    transition: all 0.3s ease;
}

.language-hover-gradient:hover {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
}

/* Анимация для стрелки */
.dropdown-arrow {
    transition: transform 0.2s ease-in-out;
}

.dropdown-arrow.rotate {
    transform: rotate(180deg);
}

/* Эффект пульсации для уведомлений */
@keyframes pulse-glow {
    0%, 100% {
        box-shadow: 0 0 5px rgba(239, 68, 68, 0.5);
    }
    50% {
        box-shadow: 0 0 20px rgba(239, 68, 68, 0.8);
    }
}

.notification-pulse {
    animation: pulse-glow 2s infinite;
}

/* Стили для мобильной версии */
@media (max-width: 640px) {
    .language-mobile-card {
        backdrop-filter: blur(10px);
        background: rgba(255, 255, 255, 0.95);
        border: 1px solid rgba(255, 255, 255, 0.2);
    }
}

/* Эффект стекла для выпадающего списка */
.language-dropdown-glass {
    backdrop-filter: blur(16px);
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(255, 255, 255, 0.2);
}

/* Анимация появления элементов */
@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.language-item {
    animation: slideInUp 0.3s ease-out;
    animation-fill-mode: both;
}

.language-item:nth-child(1) { animation-delay: 0.1s; }
.language-item:nth-child(2) { animation-delay: 0.2s; }
.language-item:nth-child(3) { animation-delay: 0.3s; }

/* Эффект волны при клике */
.language-ripple {
    position: relative;
    overflow: hidden;
}

.language-ripple::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(59, 130, 246, 0.3);
    transform: translate(-50%, -50%);
    transition: width 0.6s, height 0.6s;
}

.language-ripple:active::after {
    width: 300px;
    height: 300px;
}
