/* Анимация появления модального окна */
.modal.fade-in {
    animation: fadeIn 0.3s ease-out;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Анимация открытия модального окна (слайд сверху + появление) */
.modal.slide-in {
    animation: slideIn 0.3s ease-out;
}

@keyframes slideIn {
    from {
        transform: translateY(-50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Анимация закрытия модального окна */
.modal.closing {
    animation: fadeOut 0.3s ease-in;
}

@keyframes fadeOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

/* Альтернативная анимация закрытия (слайд вверх + исчезновение) */
.modal.slide-out {
    animation: slideOut 0.3s ease-in;
}

@keyframes slideOut {
    from {
        transform: translateY(0);
        opacity: 1;
    }
    to {
        transform: translateY(-50px);
        opacity: 0;
    }
}

/* Плавное исчезновение фона при закрытии */
.modal.bg-fade-out {
    animation: backgroundFadeOut 0.3s ease-in;
}

@keyframes backgroundFadeOut {
    from { background-color: rgba(0, 0, 0, 0.7); }
    to { background-color: rgba(0, 0, 0, 0); }
}
