/* SweetAlert2 Modern Dark Glassmorphism Theme */
.swal2-popup.swal2-modal {
    background: rgba(30, 41, 59, 0.85);
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-radius: 1.25rem; /* 20px */
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
    color: #f8fafc; /* slate-50 */
}

.swal2-popup.swal2-modal .swal2-title {
    color: #f8fafc; /* slate-50 */
    font-weight: 600;
    font-size: 1.75rem; /* 28px */
}

.swal2-popup.swal2-modal .swal2-html-container {
    color: #cbd5e1; /* slate-300 */
    font-size: 1.125rem; /* 18px */
}

/* Spinner styling */
.swal2-popup.swal2-modal .swal2-loader {
    border-color: #38bdf8 transparent #38bdf8 transparent; /* sky-400 */
    width: 3em;
    height: 3em;
    border-width: 0.3em;
}

/* Buttons */
.swal2-popup.swal2-modal .swal2-confirm,
.swal2-popup.swal2-modal .swal2-cancel,
.swal2-popup.swal2-modal .swal2-deny {
    border-radius: 0.75rem; /* 12px */
    padding: 0.75em 2em;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.2s ease-in-out;
}

.swal2-popup.swal2-modal .swal2-confirm {
    background-color: #0ea5e9; /* sky-500 */
    color: #fff;
    border: 1px solid #0ea5e9;
}

.swal2-popup.swal2-modal .swal2-confirm:hover {
    background-color: #0284c7; /* sky-600 */
    border-color: #0284c7;
}

.swal2-popup.swal2-modal .swal2-cancel {
    background-color: transparent;
    color: #cbd5e1; /* slate-300 */
    border: 1px solid #475569; /* slate-600 */
}

.swal2-popup.swal2-modal .swal2-cancel:hover {
    background-color: #334155; /* slate-700 */
    border-color: #475569; /* slate-600 */
    color: #f1f5f9; /* slate-100 */
}

/* Icons */
.swal2-popup.swal2-modal .swal2-success-circular-line-left,
.swal2-popup.swal2-modal .swal2-success-circular-line-right,
.swal2-popup.swal2-modal .swal2-success-fix {
    background-color: transparent !important;
}

.swal2-popup.swal2-modal .swal2-success-line-tip,
.swal2-popup.swal2-modal .swal2-success-line-long {
    background-color: #34d399 !important; /* emerald-400 */
}

.swal2-popup.swal2-modal .swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(52, 211, 153, 0.5) !important; /* emerald-400 with opacity */
}

.swal2-popup.swal2-modal .swal2-icon.swal2-error .swal2-x-mark-line-left,
.swal2-popup.swal2-modal .swal2-icon.swal2-error .swal2-x-mark-line-right {
    background-color: #f43f5e !important; /* rose-500 */
}

.swal2-popup.swal2-modal .swal2-icon.swal2-error {
    border-color: rgba(244, 63, 94, 0.5) !important; /* rose-500 with opacity */
}

/* Fade-in animation */
.swal2-popup.swal2-show {
    animation: swal2-fade-in 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

@keyframes swal2-fade-in {
    0% {
        opacity: 0;
        transform: scale(0.95);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}
