/* Veyron — modern SweetAlert2 teması (meet-olustur ile uyumlu) */
:root {
    --veyron-swal-primary: #7367f0;
    --veyron-swal-primary-dark: #5e50ee;
    --veyron-swal-accent: #764ba2;
    --veyron-swal-success: #059669;
    --veyron-swal-error: #dc2626;
    --veyron-swal-warning: #7367f0;
    --veyron-swal-info: #7367f0;
    --veyron-swal-text: #0f172a;
    --veyron-swal-muted: #334155;
    --veyron-swal-radius: 16px;
    --veyron-toast-title: #0f172a;
    --veyron-toast-body: #475569;
    --veyron-toast-border: #e2e8f0;
}

/* Backdrop — modal üstünde (Bootstrap modal ~1055; onay kutuları JS ile daha yükseğe alınır) */
.swal2-container {
    z-index: 1105 !important;
}

body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer),
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) {
    z-index: 2147483000 !important;
    pointer-events: none !important;
}

/* Tek «Tamam» bilgi/uyarı — container tıklanabilir (onay mute katmanı değil) */
body.swal2-shown .swal2-container.veyron-swal-alert-layer,
body.swal2-shown .swal2-container.veyron-swal-alert-layer.swal2-backdrop-show,
body.veyron-swal-alert-active .swal2-container.veyron-swal-alert-layer,
body.modal-open.swal2-shown .swal2-container.veyron-swal-alert-layer {
    pointer-events: auto !important;
    z-index: 2147483000 !important;
}

/* GMDL / Bootstrap modal açıkken alert üstte kalsın; arka modal tıklamayı yutmasın */
body.veyron-swal-alert-active .modal.show,
body.veyron-swal-alert-active .modal-backdrop.show,
body.swal2-shown:has(.veyron-swal-alert-layer) .modal.show,
body.swal2-shown:has(.veyron-swal-alert-layer) .modal-backdrop.show {
    pointer-events: none !important;
}

body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer) .swal2-popup,
body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer) .swal2-actions,
body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer) button.swal2-styled,
body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer) button.swal2-confirm,
body.swal2-shown .swal2-container:not(.veyron-swal-toast-layer) button.veyron-swal-btn,
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) .swal2-popup,
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) .swal2-actions,
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) button.swal2-styled,
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) button.swal2-confirm,
body.veyron-swal-confirm-active .swal2-container:not(.veyron-swal-toast-layer) button.veyron-swal-btn {
    pointer-events: auto !important;
    cursor: pointer !important;
}

body.swal2-shown .swal2-container.veyron-swal-alert-layer .swal2-popup,
body.swal2-shown .swal2-container.veyron-swal-alert-layer .swal2-actions,
body.swal2-shown .swal2-container.veyron-swal-alert-layer button {
    pointer-events: auto !important;
    cursor: pointer !important;
}

body.modal-open .swal2-container {
    z-index: 2147483000 !important;
}

body.veyron-swal-confirm-active .modal.show,
body.veyron-swal-confirm-active .modal-backdrop.show,
body.veyron-swal-confirm-active .offcanvas.show,
body.veyron-swal-confirm-active .offcanvas-backdrop.show,
body.veyron-swal-confirm-active .loading-icon,
body.swal2-shown .loading-icon,
body.swal2-shown .sanalsinif-copy-confirm-layer,
body.veyron-swal-confirm-active .sanalsinif-copy-confirm-layer {
    pointer-events: none !important;
}

/* Buzlu cam yok — arka plan net kalsın */
.swal2-container,
.swal2-container.veyron-swal-container,
.swal2-container.swal2-backdrop-show {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Tıklamaların Tamam / İptal butonlarına ulaşması */
.swal2-container.swal2-backdrop-show {
    pointer-events: auto;
}

body.swal2-no-backdrop .swal2-container .swal2-popup,
body.swal2-no-backdrop .swal2-container .swal2-actions,
body.swal2-no-backdrop .swal2-container .swal2-styled {
    pointer-events: auto !important;
    cursor: pointer;
}

.swal2-container:not(.veyron-onay-swal) .swal2-popup,
.swal2-container:not(.veyron-onay-swal) .swal2-actions,
.swal2-container:not(.veyron-onay-swal) .swal2-styled {
    pointer-events: auto !important;
    cursor: pointer;
}

/* onayKutusuRunAction — ham Swal yolu (veyron.js veyronOnaySwalFire) */
body.swal2-shown .swal2-container.veyron-onay-swal,
body.veyron-swal-confirm-active .swal2-container.veyron-onay-swal {
    pointer-events: none !important;
    z-index: 2147483000 !important;
}

body.swal2-shown .swal2-container.veyron-onay-swal .swal2-popup,
body.swal2-shown .swal2-container.veyron-onay-swal .swal2-actions,
body.swal2-shown .swal2-container.veyron-onay-swal button,
body.veyron-swal-confirm-active .swal2-container.veyron-onay-swal .swal2-popup,
body.veyron-swal-confirm-active .swal2-container.veyron-onay-swal .swal2-actions,
body.veyron-swal-confirm-active .swal2-container.veyron-onay-swal button {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Eski patch yolu (veyron-swal--confirm) — geriye dönük */
body.swal2-shown .swal2-container:has(.veyron-swal--confirm),
body.swal2-shown .swal2-container.swal-container-high-z,
body.veyron-swal-confirm-active .swal2-container:has(.veyron-swal--confirm) {
    pointer-events: none !important;
    z-index: 2147483000 !important;
}

body.swal2-shown .swal2-container:has(.veyron-swal--confirm) .swal2-popup,
body.swal2-shown .swal2-container.swal-container-high-z .swal2-popup {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2 !important;
}

body.swal2-shown .swal2-container:has(.veyron-swal--confirm) .swal2-actions,
body.swal2-shown .swal2-container:has(.veyron-swal--confirm) button,
body.swal2-shown .swal2-container.swal-container-high-z .swal2-actions,
body.swal2-shown .swal2-container.swal-container-high-z button {
    pointer-events: auto !important;
    cursor: pointer !important;
}

body.swal2-shown .modal-backdrop,
body.swal2-shown .loading-icon {
    pointer-events: none !important;
}

/* Sağ üst X — varsayılan kapalı */
.swal2-popup.veyron-swal-popup .swal2-close,
.swal2-popup.veyron-swal-popup button.swal2-close {
    display: none !important;
}

/* Popup — toast hariç (toast kendi kart stilini kullanır; modal ::before toast’a sızmasın) */
.swal2-popup.veyron-swal-popup:not(.veyron-swal--toast):not(.swal2-toast) {
    position: relative;
    width: min(420px, calc(100vw - 2rem)) !important;
    max-width: min(520px, calc(100vw - 2rem)) !important;
    padding: 1.35rem 1.25rem 1.1rem !important;
    border: none !important;
    border-radius: var(--veyron-swal-radius) !important;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2), 0 0 0 1px rgba(99, 102, 241, 0.08) !important;
    font-family: inherit;
    overflow: hidden;
    animation: veyronSwalIn 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}

.swal2-popup.veyron-swal-popup:not(.veyron-swal--toast):not(.swal2-toast)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--veyron-swal-primary), var(--veyron-swal-accent));
}

.swal2-popup.veyron-swal-popup.veyron-swal--success:not(.veyron-swal--toast)::before {
    background: linear-gradient(90deg, #10b981, #059669);
}

.swal2-popup.veyron-swal-popup.veyron-swal--error:not(.veyron-swal--toast)::before {
    background: linear-gradient(90deg, #f87171, #dc2626);
}

.swal2-popup.veyron-swal-popup.veyron-swal--warning:not(.veyron-swal--toast)::before {
    background: linear-gradient(90deg, var(--veyron-swal-primary), var(--veyron-swal-accent));
}

.swal2-popup.veyron-swal-popup.veyron-swal--info:not(.veyron-swal--toast)::before {
    background: linear-gradient(90deg, #60a5fa, #2563eb);
}

.swal2-popup.veyron-swal-popup.veyron-swal--question:not(.veyron-swal--toast)::before {
    background: linear-gradient(90deg, #818cf8, #6366f1);
}

@keyframes veyronSwalIn {
    from {
        opacity: 0;
        transform: scale(0.94) translateY(8px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* Geniş içerik (istatistik vb. eski kullanımlar) */
.swal2-popup.veyron-swal-popup.veyron-swal-popup--wide {
    width: min(920px, calc(100vw - 2rem)) !important;
    max-width: min(1100px, calc(100vw - 2rem)) !important;
    padding: 1.5rem 1.75rem 1.25rem !important;
}

/* Başlık ve metin */
.swal2-title.veyron-swal-title {
    padding: 0.35rem 0 0 !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: var(--veyron-swal-text) !important;
    line-height: 1.35 !important;
}

.swal2-html-container.veyron-swal-html {
    margin: 0.5rem 0 0 !important;
    padding: 0 !important;
    font-size: 0.9rem !important;
    line-height: 1.55 !important;
    color: var(--veyron-swal-muted) !important;
    text-align: center;
}

.swal2-html-container.veyron-swal-html.text-start {
    text-align: left !important;
}

/* İkon — modern dolgulu rozet */
.swal2-popup.veyron-swal-popup .swal2-icon {
    margin: 0.5rem auto 0.25rem !important;
    border: none !important;
    width: 3.25rem !important;
    height: 3.25rem !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon .swal2-icon-content {
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success {
    background: linear-gradient(145deg, #d1fae5, #a7f3d0) !important;
    color: var(--veyron-swal-success) !important;
    box-shadow: 0 4px 14px rgba(5, 150, 105, 0.2);
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-error {
    background: linear-gradient(145deg, #fee2e2, #fecaca) !important;
    color: var(--veyron-swal-error) !important;
    box-shadow: 0 4px 14px rgba(220, 38, 38, 0.15);
}

/* Başarı / hata — SW2 çizgi animasyonu küçük rozet + border:none ile kayar; sade ikon */
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success .swal2-success-ring,
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success .swal2-success-fix,
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success [class^="swal2-success-circular-line"],
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success [class^="swal2-success-line"],
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-error .swal2-x-mark,
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-error [class^="swal2-x-mark-line"] {
    display: none !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success::after,
.swal2-popup.veyron-swal-popup .swal2-icon.swal2-error::after {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-success::after {
    content: "✓";
    color: var(--veyron-swal-success) !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-error::after {
    content: "✕";
    color: var(--veyron-swal-error) !important;
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-warning {
    background: linear-gradient(145deg, #eeebff, #d8d4f8) !important;
    color: #7367f0 !important;
    box-shadow: 0 4px 14px rgba(115, 103, 240, 0.22);
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-info {
    background: linear-gradient(145deg, #eeebff, #d8d4f8) !important;
    color: var(--veyron-swal-info) !important;
    box-shadow: 0 4px 14px rgba(115, 103, 240, 0.15);
}

.swal2-popup.veyron-swal-popup .swal2-icon.swal2-question {
    background: linear-gradient(145deg, #e0e7ff, #c7d2fe) !important;
    color: var(--veyron-swal-primary) !important;
    box-shadow: 0 4px 14px rgba(99, 102, 241, 0.2);
}

/* Onay diyalogları */
.swal2-popup.veyron-swal-popup.veyron-swal--confirm {
    padding: 1.25rem 1.35rem 1.15rem !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm .swal2-title {
    font-size: 1.05rem !important;
    padding-top: 0.15rem !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm .swal2-html-container {
    font-size: 0.88rem !important;
    max-width: 28em;
    margin-left: auto !important;
    margin-right: auto !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm .swal2-actions {
    width: 100%;
    padding-top: 0.15rem;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm .veyron-swal-btn {
    min-width: 6.5rem;
    padding: 0.5rem 1.15rem !important;
    pointer-events: auto !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm .swal2-actions {
    pointer-events: auto !important;
}

/* Tehlikeli onay (Oturumu Bitir, Sil…) — marka moru */
.veyron-swal-btn-danger {
    background: linear-gradient(135deg, #7367f0 0%, #764ba2 100%) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(115, 103, 240, 0.35) !important;
}

.veyron-swal-btn-danger:hover {
    background: linear-gradient(135deg, #5e50ee 0%, #6a3f96 100%) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(115, 103, 240, 0.42) !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--confirm-warning::before {
    background: linear-gradient(90deg, var(--veyron-swal-primary), var(--veyron-swal-accent));
}

/* Kapat (X) */
.swal2-close.veyron-swal-close {
    width: 2rem !important;
    height: 2rem !important;
    margin: 0.5rem 0.5rem 0 0 !important;
    border-radius: 50% !important;
    color: #94a3b8 !important;
    transition: background 0.2s ease, color 0.2s ease;
}

.swal2-close.veyron-swal-close:hover {
    background: #f1f5f9 !important;
    color: #475569 !important;
}

/* Butonlar */
.swal2-actions.veyron-swal-actions {
    margin: 1rem 0 0 !important;
    gap: 0.5rem !important;
    flex-wrap: wrap;
    justify-content: center;
}

.veyron-swal-btn {
    min-width: 5.5rem;
    padding: 0.45rem 1.1rem !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    border-radius: 9px !important;
    box-shadow: none !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.veyron-swal-btn:focus {
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.25) !important;
}

.veyron-swal-btn:active {
    transform: scale(0.98);
}

.veyron-swal-btn-confirm {
    background: linear-gradient(135deg, #2563eb 0%, #667eea 100%) !important;
    border: none !important;
    color: #fff !important;
}

.veyron-swal-btn-confirm:hover {
    background: linear-gradient(135deg, #1d4ed8 0%, #4f46e5 100%) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.35) !important;
}

.veyron-swal-btn-cancel {
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    color: #475569 !important;
}

.veyron-swal-btn-cancel:hover {
    background: #f8fafc !important;
    border-color: #94a3b8 !important;
    color: #334155 !important;
}

.veyron-swal-btn-deny {
    background: #fff !important;
    border: 1px solid #fecaca !important;
    color: #b91c1c !important;
}

.veyron-swal-btn-deny:hover {
    background: #fef2f2 !important;
}

/* Yükleme */
.swal2-popup.veyron-swal-popup .swal2-loader {
    border-color: var(--veyron-swal-primary) transparent var(--veyron-swal-primary) transparent !important;
}

/* Timer progress */
.swal2-timer-progress-bar {
    background: linear-gradient(90deg, var(--veyron-swal-primary), var(--veyron-swal-accent)) !important;
}

/* Input (prompt) */
.swal2-popup.veyron-swal-popup .swal2-input,
.swal2-popup.veyron-swal-popup .swal2-textarea,
.swal2-popup.veyron-swal-popup .swal2-select {
    border-radius: 8px !important;
    border: 1px solid #cbd5e1 !important;
    font-size: 0.9rem !important;
    box-shadow: none !important;
}

.swal2-popup.veyron-swal-popup .swal2-input:focus,
.swal2-popup.veyron-swal-popup .swal2-textarea:focus {
    border-color: var(--veyron-swal-primary) !important;
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15) !important;
}

/* Validation message */
.swal2-validation-message {
    background: #fef2f2 !important;
    color: #991b1b !important;
    border-radius: 8px !important;
    font-size: 0.82rem !important;
}

@media (max-width: 480px) {
    .swal2-popup.veyron-swal-popup {
        padding: 1.15rem 1rem 1rem !important;
    }

    .veyron-swal-btn {
        min-width: 0;
        flex: 1 1 auto;
    }

    .swal2-actions.veyron-swal-actions {
        width: 100%;
    }
}

/* Toast — tamamen opak beyaz kart (cam / transparan yok) */
.swal2-popup.veyron-swal-popup.veyron-swal--toast,
.swal2-popup.swal2-toast.veyron-swal-popup,
.swal2-popup.swal2-toast.veyron-swal--toast,
body .swal2-popup.swal2-toast.veyron-swal-popup,
body .swal2-popup.veyron-swal--toast,
body .swal2-container.veyron-swal-toast-layer .swal2-popup {
    width: auto !important;
    min-width: 17.5rem;
    max-width: min(380px, calc(100vw - 1.5rem)) !important;
    padding: 0.8rem 1rem 0.85rem 0.9rem !important;
    display: block !important;
    border-radius: 12px !important;
    border: 1px solid #e2e8f0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    box-shadow:
        0 10px 28px rgba(15, 23, 42, 0.16),
        0 0 0 1px rgba(15, 23, 42, 0.06) !important;
    color: var(--veyron-toast-title) !important;
    overflow: hidden !important;
    isolation: isolate !important;
    animation: veyronToastIn 0.22s cubic-bezier(0.22, 1, 0.36, 1) !important;
    transform: none !important;
    opacity: 1 !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--toast::before,
.swal2-popup.swal2-toast.veyron-swal-popup::before,
.swal2-popup.swal2-toast.veyron-swal--toast::before {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    right: auto !important;
    bottom: 0 !important;
    width: 4px !important;
    height: auto !important;
    border-radius: 12px 0 0 12px !important;
    background: #2563eb !important;
    z-index: 1 !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--toast-success::before {
    background: #059669 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-error::before {
    background: #dc2626 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-warning::before {
    background: #d97706 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-info::before {
    background: #2563eb !important;
}

/* SW2 ikon alanı toast’ta kullanılmaz — sızarsa tamamen gizle */
.swal2-popup.veyron-swal--toast > .swal2-icon,
.swal2-popup.swal2-toast > .swal2-icon,
body .swal2-popup.veyron-swal--toast .swal2-icon {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
}

.veyron-toast-row {
    display: flex !important;
    align-items: flex-start !important;
    gap: 0.7rem !important;
    position: relative;
    z-index: 2;
    background: #ffffff !important;
}

.veyron-toast-ico-badge {
    flex: 0 0 2.15rem;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 999px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: #eff6ff;
    color: #1d4ed8;
}

.veyron-toast-ico-badge--success {
    background: #ecfdf5;
    color: #047857;
}
.veyron-toast-ico-badge--error {
    background: #fef2f2;
    color: #b91c1c;
}
.veyron-toast-ico-badge--warning {
    background: #fffbeb;
    color: #b45309;
}
.veyron-toast-ico-badge--info {
    background: #eff6ff;
    color: #1d4ed8;
}

.veyron-toast-copy {
    min-width: 0;
    flex: 1 1 auto;
    padding-top: 0.1rem;
}

.veyron-toast-title {
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    letter-spacing: -0.01em;
    color: var(--veyron-toast-title) !important;
    line-height: 1.35 !important;
}

.veyron-toast-text {
    margin-top: 0.15rem;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    color: var(--veyron-toast-body) !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere;
}

.swal2-popup.veyron-swal--toast .veyron-toast-html,
.swal2-popup.veyron-swal--toast .swal2-html-container,
.swal2-popup.veyron-swal--toast .swal2-html-container.veyron-toast-html,
body .swal2-popup.veyron-swal--toast .swal2-html-container {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    overflow: visible !important;
    color: inherit !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
}

/* Girişte opacity kullanma — transparan görünmesin */
@keyframes veyronToastIn {
    from {
        opacity: 1;
        transform: translate3d(14px, 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

/* SW2 varsayılan toast animasyonları opacity ile saydam gösteriyor — ez */
body .swal2-popup.swal2-toast.swal2-show,
body .swal2-popup.veyron-swal--toast.swal2-show,
body .swal2-container.veyron-swal-toast-layer .swal2-popup.swal2-show,
body .swal2-container.veyron-swal-toast-layer .swal2-popup.swal2-hide {
    animation: veyronToastIn 0.22s cubic-bezier(0.22, 1, 0.36, 1) !important;
    opacity: 1 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

body > .swal2-container.veyron-swal-toast-layer {
    position: fixed !important;
    inset: 5.25rem 1rem auto auto !important;
    width: auto !important;
    max-width: min(420px, calc(100vw - 2rem)) !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    transform: none !important;
    z-index: 200150 !important;
    pointer-events: none !important;
    background: transparent !important;
}

body > .swal2-container.veyron-swal-toast-layer.veyron-swal-toast-layer--modal {
    inset: 5.25rem 1rem auto auto !important;
}

body.swal2-shown:has(.veyron-swal-toast-layer),
html.swal2-shown:has(.veyron-swal-toast-layer) {
    overflow: auto !important;
    padding-right: 0 !important;
}

body > .swal2-container.veyron-swal-toast-layer .swal2-popup {
    pointer-events: auto !important;
    cursor: pointer;
    margin: 0 0 0.55rem 0 !important;
}

body > .swal2-container.veyron-swal-toast-layer .swal2-popup.swal2-show,
body > .swal2-container.veyron-swal-toast-layer .swal2-popup.swal2-hide {
    animation: veyronToastIn 0.22s cubic-bezier(0.22, 1, 0.36, 1) !important;
    opacity: 1 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

.veyron-toast-ico {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1;
    color: inherit;
}

.swal2-popup.veyron-swal-popup.veyron-swal--toast .swal2-title,
.swal2-popup.swal2-toast.veyron-swal-popup .swal2-title,
.swal2-popup.veyron-swal-popup.veyron-swal--toast .veyron-swal-title,
.swal2-popup.veyron-swal--toast .swal2-title:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--toast .swal2-timer-progress-bar-container {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 2px !important;
    overflow: hidden !important;
    border-radius: 0 0 12px 12px !important;
    background: #e2e8f0 !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--toast .swal2-timer-progress-bar {
    height: 2px !important;
    background: #2563eb !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-success .swal2-timer-progress-bar {
    background: #059669 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-error .swal2-timer-progress-bar {
    background: #dc2626 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-warning .swal2-timer-progress-bar {
    background: #d97706 !important;
}
.swal2-popup.veyron-swal-popup.veyron-swal--toast-info .swal2-timer-progress-bar {
    background: #2563eb !important;
}

.swal2-container.swal2-top-end.veyron-swal-container,
.swal2-container.swal2-top-end,
.swal2-container.swal2-bottom-end.veyron-swal-container,
.swal2-container.swal2-bottom-end,
body:has(#eticaretAdminModal.show) .swal2-container.veyron-swal-toast-layer,
body:has(#eticaretAdminModal.show) .swal2-container:has(.veyron-swal--toast),
body.swal2-shown:has(#eticaretAdminModal.show) .swal2-container.swal2-top-end,
body.swal2-shown:has(#eticaretAdminModal.show) .swal2-container.swal2-bottom-end {
    z-index: 200150 !important;
    pointer-events: none !important;
}

/* Hızlı Eşleştirme modalı (z-index 1000020) açıkken toast/onay üstte kalsın */
body:has(#PnlHizliEslesme.show) > .swal2-container,
body:has(#PnlHizliEslesme.show) > .swal2-container.veyron-swal-toast-layer,
body:has(#PnlHizliEslesme.show) .swal2-container.swal2-top-end,
body:has(#PnlHizliEslesme.show) .swal2-container.swal2-bottom-end,
body:has(#PnlHizliEslesme.show) .swal2-container:has(.veyron-swal--toast),
body:has(#PnlHizliEslesme.show) #toast-container {
    z-index: 1000100 !important;
    pointer-events: none !important;
}

body:has(#PnlHizliEslesme.show) > .swal2-container .swal2-popup,
body:has(#PnlHizliEslesme.show) > .swal2-container.veyron-swal-toast-layer .swal2-popup,
body:has(#PnlHizliEslesme.show) .swal2-container:has(.veyron-swal--toast) .swal2-popup {
    pointer-events: auto !important;
}

body:has(#eticaretAdminModal.show) .swal2-container:has(.veyron-swal--toast) .swal2-popup,
body:has(#eticaretAdminModal.show) .swal2-container.veyron-swal-toast-layer .swal2-popup,
body.swal2-shown:has(#eticaretAdminModal.show) .swal2-container.swal2-top-end .swal2-popup {
    pointer-events: auto !important;
}

/* Tek butonlu bilgi/uyarı kutuları */
.swal2-popup.veyron-swal-popup.veyron-swal--alert {
    width: min(400px, calc(100vw - 2rem)) !important;
    padding: 1.2rem 1.2rem 1rem !important;
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2 !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--alert .swal2-title {
    font-size: 1.05rem !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--alert .swal2-actions {
    margin-top: 0.85rem !important;
    pointer-events: auto !important;
}

.swal2-popup.veyron-swal-popup.veyron-swal--alert .veyron-swal-btn-confirm,
.swal2-popup.veyron-swal-popup.veyron-swal--alert .swal2-confirm {
    min-width: 7.5rem;
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* ------------------------------------------------------------------
   Yedek: patch uygulanmasa bile tüm SweetAlert2 kutuları modern görünsün
   ------------------------------------------------------------------ */
body .swal2-container.swal2-backdrop-show {
    background: transparent !important;
    backdrop-filter: none !important;
}

/* Toast hariç — modal yedek stilleri toast metnini/arka planını ezmesin */
body .swal2-popup:not(.sifirhata-hata-modal):not(.sifirhata-template-html-content):not(.swal2-toast):not(.veyron-swal--toast) {
    position: relative;
    width: min(420px, calc(100vw - 2rem)) !important;
    max-width: min(520px, calc(100vw - 2rem)) !important;
    padding: 1.35rem 1.25rem 1.1rem !important;
    border: none !important;
    border-radius: var(--veyron-swal-radius) !important;
    box-shadow: 0 24px 48px rgba(15, 23, 42, 0.2), 0 0 0 1px rgba(37, 99, 235, 0.1) !important;
    font-family: inherit;
    animation: veyronSwalIn 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}

body .swal2-popup:not(.sifirhata-hata-modal):not(.swal2-toast):not(.veyron-swal--toast)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--veyron-swal-primary), var(--veyron-swal-accent));
    border-radius: var(--veyron-swal-radius) var(--veyron-swal-radius) 0 0;
}

body .swal2-popup:not(.swal2-toast):not(.veyron-swal--toast) .swal2-title {
    padding: 0.35rem 0 0 !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: var(--veyron-swal-text) !important;
}

body .swal2-popup:not(.swal2-toast):not(.veyron-swal--toast) .swal2-html-container {
    margin: 0.5rem 0 0 !important;
    font-size: 0.9rem !important;
    line-height: 1.55 !important;
    color: var(--veyron-swal-muted) !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon {
    margin: 0.5rem auto 0.25rem !important;
    border: none !important;
    width: 3.25rem !important;
    height: 3.25rem !important;
    border-radius: 50% !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-info {
    background: linear-gradient(145deg, #dbeafe, #bfdbfe) !important;
    color: var(--veyron-swal-info) !important;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.15);
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success {
    background: linear-gradient(145deg, #d1fae5, #a7f3d0) !important;
    color: var(--veyron-swal-success) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-error {
    background: linear-gradient(145deg, #fee2e2, #fecaca) !important;
    color: var(--veyron-swal-error) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success .swal2-success-ring,
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success .swal2-success-fix,
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success [class^="swal2-success-circular-line"],
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success [class^="swal2-success-line"],
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-error .swal2-x-mark,
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-error [class^="swal2-x-mark-line"] {
    display: none !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success::after,
body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-error::after {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.65rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-success::after {
    content: "✓";
    color: var(--veyron-swal-success) !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-error::after {
    content: "✕";
    color: var(--veyron-swal-error) !important;
}

body .swal2-popup:not(.veyron-swal--toast):not(.swal2-toast) .swal2-icon.swal2-warning {
    background: linear-gradient(145deg, #eeebff, #d8d4f8) !important;
    color: #7367f0 !important;
    border-color: #7367f0 !important;
}

body .swal2-popup .swal2-styled.swal2-confirm {
    border: none !important;
    border-radius: 10px !important;
    padding: 0.55rem 1.35rem !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    background: linear-gradient(135deg, #7367f0 0%, #764ba2 100%) !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(115, 103, 240, 0.28) !important;
}

body .swal2-popup .swal2-styled.swal2-confirm:hover {
    background: linear-gradient(135deg, #5e50ee 0%, #6a3f96 100%) !important;
    box-shadow: 0 4px 14px rgba(115, 103, 240, 0.35) !important;
}

body .swal2-popup .swal2-styled.swal2-cancel {
    border-radius: 10px !important;
    padding: 0.55rem 1.2rem !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    background: #fff !important;
    border: 1px solid #cbd5e1 !important;
    color: #475569 !important;
}

body .swal2-popup .swal2-actions {
    gap: 0.5rem !important;
    margin-top: 1rem !important;
    pointer-events: auto !important;
}

body .swal2-popup .swal2-styled.swal2-confirm,
body .swal2-popup .swal2-styled.swal2-cancel,
body .swal2-popup .swal2-styled.swal2-deny {
    pointer-events: auto !important;
    cursor: pointer !important;
}

/* Mor varsayılan SweetAlert2 (#7066e0) — patch/CSS kaçsa bile tüm panel */
body .swal2-container .swal2-popup {
    border-radius: var(--veyron-swal-radius, 16px) !important;
    font-family: inherit;
}

body .swal2-container .swal2-popup .swal2-confirm,
body .swal2-container .swal2-popup button.swal2-confirm {
    background: linear-gradient(135deg, #7367f0 0%, #764ba2 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(115, 103, 240, 0.28) !important;
}

body .swal2-container .swal2-popup .swal2-cancel,
body .swal2-container .swal2-popup button.swal2-cancel {
    background: #fff !important;
    color: #475569 !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
}

body .swal2-container .swal2-title {
    color: var(--veyron-swal-text, #0f172a) !important;
    font-weight: 700 !important;
}
