/* #region SwalKit - Central SweetAlert2 Theme */

.swal2-container {
    direction: rtl;
    z-index: 11000 !important;
    font-family: "Vazirmatn", Vazir, Tahoma, Arial, sans-serif;
}

.swal2-container.swal2-backdrop-show,
.swal2-container.swal2-noanimation {
    background: radial-gradient(circle at 78% 12%, rgba(124, 92, 255, .18), transparent 32rem), radial-gradient(circle at 18% 82%, rgba(22, 168, 200, .14), transparent 28rem), var(--swal-backdrop, rgba(2, 4, 11, .72)) !important;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.swal2-container.swal2-no-backdrop,
.swal2-container:has(.swal2-toast),
.swal2-container.swal2-backdrop-show:has(.swal2-toast),
.swal2-container.swal2-noanimation:has(.swal2-toast) {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.swal2-popup-themed {
    --swal2-background: var(--surface-1, #11182A);
    --swal-bg: var(--card-glass-strong, #11182A);
    --swal-bg-soft: var(--card-glass-bg, #0A1020);
    --swal-text: var(--text-primary, #F7F9FC);
    --swal-muted: var(--text-secondary, #C6CEDD);
    --swal-accent-1: var(--primary, #7C5CFF);
    --swal-accent-2: var(--accent, #3DD9F5);
    --swal-success: var(--success, #22C55E);
    --swal-error: var(--danger, #F43F5E);
    --swal-warning: var(--warning, #F59E0B);
    --swal-info: var(--info, #38BDF8);
    position: relative;
    width: min(100%, 34rem) !important;
    padding: clamp(18px, 2.4vw, 26px) !important;
    border: 1px solid var(--border-default, rgba(148, 163, 184, .25)) !important;
    border-radius: var(--radius-md, 18px) !important;
    background: linear-gradient(180deg, var(--swal-bg), var(--swal-bg-soft)), var(--surface-1, #11182A) !important;
    color: var(--swal-text) !important;
    box-shadow: var(--shadow-card, 0 18px 55px rgba(30, 41, 59, .12)) !important;
    outline: none !important;
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}

:root[data-theme="dark"] .swal2-popup-themed {
    --swal2-background: var(--surface-1, #0F172A);
}

:root[data-theme="light"] .swal2-popup-themed {
    --swal2-background: var(--surface-1, #F5F8FF);
}

.swal2-title-themed {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--swal-text, var(--text-primary, #F7F9FC)) !important;
    font-size: clamp(1.28rem, 1vw + 1rem, 1.7rem) !important;
    font-weight: 900 !important;
    line-height: 1.55 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-shadow: none !important;
}

.swal2-text-themed {
    margin: 10px 0 0 !important;
    padding: 0 !important;
    color: var(--swal-muted, var(--text-secondary, #C6CEDD)) !important;
    font-size: .98rem !important;
    line-height: 1.9 !important;
    text-align: center !important;
    text-shadow: none !important;
    overflow-wrap: anywhere;
}

.swal2-actions-themed {
    display: flex !important;
    flex-direction: row-reverse !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 10px !important;
    margin: 22px 0 0 !important;
    width: 100%;
}

.swal2-confirm-themed,
.swal2-cancel-themed {
    min-width: 112px;
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 11px 22px !important;
    border-radius: 14px !important;
    border: 1px solid transparent !important;
    box-shadow: none !important;
    filter: none !important;
    font-family: inherit !important;
    font-size: .95rem !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
    text-shadow: none !important;
    transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s var(--ease-out, ease), box-shadow .2s ease;
}

.swal2-confirm-themed {
    background: var(--btn-primary-bg, linear-gradient(135deg, #7C5CFF, #087EA4)) !important;
    color: #fff !important;
    box-shadow: 0 12px 34px rgba(124, 92, 255, .2) !important;
}

.swal2-confirm-themed:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-brand, 0 18px 50px rgba(111, 77, 255, .2)) !important;
}

.swal2-confirm-themed:active,
.swal2-cancel-themed:active,
.swal2-danger-themed:active {
    transform: translateY(0) scale(.98);
}

.swal2-cancel-themed {
    border-color: var(--border-strong, rgba(148, 163, 184, .35)) !important;
    background: var(--btn-secondary-bg, rgba(127, 127, 127, .1)) !important;
    color: var(--text-primary, #F7F9FC) !important;
}

.swal2-cancel-themed:hover {
    border-color: var(--btn-secondary-hover-border, var(--accent, #3DD9F5)) !important;
    color: var(--accent, #3DD9F5) !important;
    transform: translateY(-2px);
}

.swal2-danger-themed {
    background: linear-gradient(135deg, var(--swal-error, #F43F5E), #BE123C) !important;
    color: #fff !important;
}

.swal2-confirm-themed:focus-visible,
.swal2-cancel-themed:focus-visible,
.swal2-close:focus-visible {
    outline: 3px solid var(--accent, #3DD9F5) !important;
    outline-offset: 3px !important;
    box-shadow: none !important;
}

.swal2-icon.swal2-success {
    border-color: var(--swal-success, var(--success, #22C55E)) !important;
    color: var(--swal-success, var(--success, #22C55E)) !important;
}

.swal2-success [class^='swal2-success-line'] {
    background-color: var(--swal-success, var(--success, #22C55E)) !important;
}

.swal2-success .swal2-success-ring {
    border-color: color-mix(in srgb, var(--swal-success, #22C55E) 35%, transparent) !important;
}

.swal2-success [class^='swal2-success-circular-line'],
.swal2-success .swal2-success-fix {
    background-color: var(--swal2-background, var(--surface-1, #11182A)) !important;
}

.swal2-icon.swal2-error {
    border-color: var(--swal-error, var(--danger, #F43F5E)) !important;
    color: var(--swal-error, var(--danger, #F43F5E)) !important;
}

.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: var(--swal-error, var(--danger, #F43F5E)) !important;
}

.swal2-icon.swal2-warning {
    border-color: var(--swal-warning, var(--warning, #F59E0B)) !important;
    color: var(--swal-warning, var(--warning, #F59E0B)) !important;
}

.swal2-icon.swal2-info {
    border-color: var(--swal-info, var(--info, #38BDF8)) !important;
    color: var(--swal-info, var(--info, #38BDF8)) !important;
}

.swal2-icon.swal2-question {
    border-color: color-mix(in srgb, var(--swal-accent-2, var(--accent, #3DD9F5)) 72%, transparent) !important;
    color: var(--swal-accent-2, var(--accent, #3DD9F5)) !important;
}

.swal2-timer-progress-bar {
    background: var(--gradient-brand, var(--primary, #7C5CFF)) !important;
    box-shadow: none !important;
}

.swal2-toast .swal2-popup-themed,
.swal2-toast.swal2-popup-themed {
    width: auto !important;
    min-width: min(320px, calc(100vw - 28px)) !important;
    max-width: min(440px, calc(100vw - 28px)) !important;
    min-height: 64px !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
}

.swal2-toast {
    grid-template-columns: min-content minmax(0, 1fr) min-content;
    align-items: center;
    align-content: center;
    column-gap: 12px;
    direction: rtl;
}

.swal2-toast-success-standard {
    width: auto !important;
}

.swal2-toast .swal2-actions,
.swal2-toast .swal2-confirm,
.swal2-toast .swal2-cancel,
.swal2-toast .swal2-deny {
    display: none !important;
}

.swal2-toast .swal2-title {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--swal-text, var(--text-primary, #F7F9FC)) !important;
    font-size: .92rem !important;
    font-weight: 600;
    line-height: 1.6 !important;
    min-width: 0;
    align-self: center;
    justify-self: stretch;
    direction: rtl;
    text-align: right !important;
    overflow-wrap: anywhere;
}

.swal2-toast:not(:has(.swal2-html-container:not(:empty))) .swal2-title {
    grid-row: 1 / 99;
}

.swal2-toast .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--swal-muted, var(--text-secondary, #C6CEDD)) !important;
    font-size: .92rem !important;
    font-weight: 500;
    line-height: 1.6 !important;
    min-width: 0;
    align-self: center;
    justify-self: stretch;
    direction: rtl;
    text-align: right !important;
    overflow-wrap: anywhere;
}

.swal2-toast .swal2-html-container:not(:empty) {
    margin-top: 4px !important;
}

.swal2-toast .swal2-content {
    margin: 0 !important;
    padding: 0 !important;
}

.swal2-loading .swal2-actions {
    min-height: 0;
    margin-top: 12px !important;
}

.swal2-popup,
.swal2-title,
.swal2-html-container,
.swal2-actions,
.swal2-confirm,
.swal2-cancel {
    text-shadow: none !important;
    outline: none;
    mix-blend-mode: normal !important;
}

body.page-admin .swal2-rtl,
body.page-admin .swal2-title,
body.page-admin .swal2-html-container {
    direction: rtl;
    font-family: "Vazirmatn", Vazir, Tahoma, Arial, sans-serif;
    text-align: right;
}

@media (max-width: 480px) {
    .swal2-popup-themed {
        width: calc(100vw - 28px) !important;
        padding: 18px 14px !important;
        border-radius: 18px !important;
    }

    .swal2-confirm-themed,
    .swal2-cancel-themed {
        min-width: 0;
        flex: 1 1 0;
        padding-inline: 12px !important;
    }

    .swal2-toast .swal2-popup-themed,
    .swal2-toast.swal2-popup-themed {
        min-height: 68px !important;
    }
}

/* #endregion SwalKit - Central SweetAlert2 Theme */
