


/* ===================== SWEETALERT2 THEME (match your current style) ===================== */
:root {
    --sw-bg: rgba(255,255,255,.92);
    --sw-border: rgba(148,163,184,.22);
    --sw-text: #0f172a;
    --sw-muted: #64748b;
    --sw-primary: #2563eb;
    --sw-primary2: #7c3aed;
    --sw-danger: #ef4444;
    --sw-success: #10b981;
    --sw-warning: #f59e0b;
    --sw-radius: 22px;
    --sw-shadow: 0 22px 60px rgba(15, 23, 42, .14);
}

/* Popup container */
.swal2-popup {
    font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif !important;
    border-radius: var(--sw-radius) !important;
    background: var(--sw-bg) !important;
    border: 1px solid var(--sw-border) !important;
    box-shadow: var(--sw-shadow) !important;
    color: var(--sw-text) !important;
    padding: 22px 22px 18px !important;
}

/* Blur/backdrop (nice with your theme) */
.swal2-backdrop-show {
    background: rgba(2, 6, 23, .48) !important;
    backdrop-filter: blur(8px);
}

/* Title + content */
.swal2-title {
    font-weight: 900 !important;
    letter-spacing: -.02em !important;
    color: var(--sw-text) !important;
    font-size: 22px !important;
    margin: 0 0 6px !important;
}

.swal2-html-container,
.swal2-content {
    color: var(--sw-muted) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
}

.swal2-close {
    color: #475569 !important;
    border-radius: 12px !important;
}

    .swal2-close:hover {
        background: rgba(15,23,42,.06) !important;
        color: #0f172a !important;
    }

/* Buttons layout */
.swal2-actions {
    margin-top: 16px !important;
    gap: 10px !important;
}

/* Primary confirm button */
.swal2-confirm {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    font-weight: 900 !important;
    letter-spacing: -.01em !important;
    background: linear-gradient(135deg, var(--sw-primary), var(--sw-primary2)) !important;
    box-shadow: 0 14px 30px rgba(37,99,235,.22) !important;
}

    .swal2-confirm:hover {
        filter: brightness(.98);
    }

    .swal2-confirm:focus {
        box-shadow: 0 0 0 .25rem rgba(37,99,235,.18) !important;
    }

/* Cancel / deny (outline modern) */
.swal2-cancel,
.swal2-deny {
    background: #fff !important;
    color: var(--sw-text) !important;
    border: 1px solid rgba(148,163,184,.45) !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    font-weight: 900 !important;
}

    .swal2-cancel:hover,
    .swal2-deny:hover {
        background: rgba(15,23,42,.04) !important;
    }

    .swal2-cancel:focus,
    .swal2-deny:focus {
        box-shadow: 0 0 0 .25rem rgba(148,163,184,.18) !important;
    }

/* Icons (soft modern) */
.swal2-icon {
    border-width: 2px !important;
    transform: translateY(2px);
}

    .swal2-icon.swal2-success {
        border-color: rgba(16,185,129,.35) !important;
        color: var(--sw-success) !important;
    }

        .swal2-icon.swal2-success [class^="swal2-success-line"] {
            background-color: var(--sw-success) !important;
        }

        .swal2-icon.swal2-success .swal2-success-ring {
            border-color: rgba(16,185,129,.25) !important;
        }

    .swal2-icon.swal2-error {
        border-color: rgba(239,68,68,.35) !important;
        color: var(--sw-danger) !important;
    }

        .swal2-icon.swal2-error [class^="swal2-x-mark-line"] {
            background-color: var(--sw-danger) !important;
        }

    .swal2-icon.swal2-warning {
        border-color: rgba(245,158,11,.35) !important;
        color: var(--sw-warning) !important;
    }

    .swal2-icon.swal2-info {
        border-color: rgba(37,99,235,.35) !important;
        color: var(--sw-primary) !important;
    }

    .swal2-icon.swal2-question {
        border-color: rgba(124,58,237,.35) !important;
        color: var(--sw-primary2) !important;
    }

/* Inputs (match your form style) */
.swal2-input,
.swal2-textarea,
.swal2-select {
    border-radius: 16px !important;
    border: 1px solid rgba(148,163,184,.35) !important;
    box-shadow: none !important;
    padding: 10px 12px !important;
    font-size: 14px !important;
    color: var(--sw-text) !important;
    background: #fff !important;
}

    .swal2-input:focus,
    .swal2-textarea:focus,
    .swal2-select:focus {
        border-color: rgba(37,99,235,.55) !important;
        box-shadow: 0 0 0 .25rem rgba(37,99,235,.12) !important;
    }

/* Validation message */
.swal2-validation-message {
    border-radius: 14px !important;
    background: rgba(239,68,68,.08) !important;
    color: #b91c1c !important;
    border: 1px solid rgba(239,68,68,.20) !important;
    font-weight: 700 !important;
}

/* Loading spinner */
.swal2-loader {
    border-color: rgba(37,99,235,.18) rgba(37,99,235,.18) rgba(37,99,235,.18) transparent !important;
}

/* Toast mode (if you use Swal.mixin({toast:true})) */
.swal2-toast {
    border-radius: 16px !important;
    background: rgba(255,255,255,.92) !important;
    border: 1px solid rgba(148,163,184,.22) !important;
    box-shadow: var(--sw-shadow) !important;
}

    .swal2-toast .swal2-title {
        font-size: 14px !important;
        font-weight: 900 !important;
    }

    .swal2-toast .swal2-html-container {
        font-size: 13px !important;
        color: var(--sw-muted) !important;
    }

/* Progress bar in toast */
.swal2-timer-progress-bar {
    background: linear-gradient(135deg, var(--sw-primary), var(--sw-primary2)) !important;
}

/* Make popup a bit tighter on mobile */
@media (max-width: 575.98px) {
    .swal2-popup {
        padding: 18px 16px 14px !important;
    }

    .swal2-title {
        font-size: 20px !important;
    }
}