/**
 * Глобальные тёмные стили для всех модальных окон jquery-confirm.
 * Переопределяет стандартную светлую тему, чтобы диалоги соответствовали тёмному дашборду.
 * Анимации появления и закрытия.
 */

/* --- Появление --- */
@keyframes jconfirmBgIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes jconfirmBoxIn {
    from {
        opacity: 0;
        transform: scale(0.88);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* --- Закрытие (библиотека добавляет .jconfirm-bg-h и класс анимации боксу) --- */
@keyframes jconfirmBgOut {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes jconfirmBoxOut {
    from {
        opacity: 1;
        transform: scale(1);
    }
    to {
        opacity: 0;
        transform: scale(0.96);
    }
}

/* При закрытии: плавное исчезновение фона и окна (длительность ≤ таймаута удаления в библиотеке) */
.jconfirm .jconfirm-bg.jconfirm-bg-h {
    animation: jconfirmBgOut 0.15s ease-out forwards !important;
}

.jconfirm .jconfirm-box.jconfirm-animation-opacity,
.jconfirm .jconfirm-box.jconfirm-animation-scale {
    animation: jconfirmBoxOut 0.15s ease-out forwards !important;
}

.jconfirm.jconfirm-modern .jconfirm-bg,
.jconfirm .jconfirm-bg {
    background: rgba(0, 0, 0, 0.75) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    animation: jconfirmBgIn 0.25s ease-out;
    transition: opacity 0.22s ease-out;
}

.jconfirm.jconfirm-modern .jconfirm-box,
.jconfirm .jconfirm-box {
    background: linear-gradient(135deg, rgba(15, 23, 42, 0.98), rgba(30, 41, 59, 0.98)) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    color: #e2e8f0 !important;
    border: 1px solid rgba(34, 197, 94, 0.25) !important;
    border-radius: 16px !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(34, 197, 94, 0.08) !important;
    padding: 0 !important;
    overflow: hidden !important;
    animation: jconfirmBoxIn 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
    transition: opacity 0.22s ease-out, transform 0.22s ease-out;
}

.jconfirm.jconfirm-modern .jconfirm-box div.jconfirm-title-c,
.jconfirm .jconfirm-box div.jconfirm-title-c {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.12), rgba(34, 197, 94, 0.04)) !important;
    color: #f1f5f9 !important;
    padding: 18px 24px !important;
    border-bottom: 1px solid rgba(34, 197, 94, 0.2) !important;
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
}

.jconfirm.jconfirm-modern .jconfirm-box div.jconfirm-content,
.jconfirm .jconfirm-box div.jconfirm-content,
.jconfirm.jconfirm-modern .jconfirm-box div.jconfirm-content p,
.jconfirm .jconfirm-box div.jconfirm-content p,
.jconfirm .jconfirm-box div.jconfirm-content div {
    color: #cbd5e1 !important;
    padding: 20px 24px !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
}

.jconfirm .jconfirm-content-pane {
    margin: 0 !important;
}

.jconfirm .jconfirm-buttons {
    padding: 16px 24px !important;
    border-top: 1px solid rgba(148, 163, 184, 0.15) !important;
    background: rgba(15, 23, 42, 0.5) !important;
    display: flex !important;
    gap: 12px !important;
    justify-content: flex-end !important;
}

.jconfirm .jconfirm-buttons button {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.25), rgba(34, 197, 94, 0.15)) !important;
    color: #fff !important;
    border: 1px solid rgba(34, 197, 94, 0.35) !important;
    border-radius: 10px !important;
    padding: 10px 22px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    transition: all 0.25s ease !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}

.jconfirm .jconfirm-buttons button:hover {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.4), rgba(34, 197, 94, 0.25)) !important;
    border-color: rgba(34, 197, 94, 0.5) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 14px rgba(34, 197, 94, 0.25) !important;
}

.jconfirm .jconfirm-buttons button:active {
    transform: translateY(0) !important;
}

/* Кнопка по умолчанию / отмена */
.jconfirm .jconfirm-buttons button.btn-default,
.jconfirm .jconfirm-buttons button.btn-secondary {
    background: rgba(100, 116, 139, 0.2) !important;
    border-color: rgba(148, 163, 184, 0.3) !important;
    color: #cbd5e1 !important;
}

.jconfirm .jconfirm-buttons button.btn-default:hover,
.jconfirm .jconfirm-buttons button.btn-secondary:hover {
    background: rgba(100, 116, 139, 0.35) !important;
    border-color: rgba(148, 163, 184, 0.5) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

/* Кнопка опасного действия */
.jconfirm .jconfirm-buttons button.btn-danger {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.3), rgba(220, 38, 38, 0.2)) !important;
    border-color: rgba(239, 68, 68, 0.4) !important;
}

.jconfirm .jconfirm-buttons button.btn-danger:hover {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.45), rgba(220, 38, 38, 0.3)) !important;
    border-color: rgba(239, 68, 68, 0.6) !important;
    box-shadow: 0 4px 14px rgba(239, 68, 68, 0.25) !important;
}

.jconfirm .jconfirm-closeIcon {
    color: #94a3b8 !important;
    font-size: 1.25rem !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
}

.jconfirm .jconfirm-closeIcon:hover {
    color: #f1f5f9 !important;
    transform: rotate(90deg) scale(1.05) !important;
}
