/* =====================================================================
   SweetAlert2 — shared modern theme (mirrors the dashboard look from
   style_dash.css so auth pages get the same polished popups).
   Buttons/accents follow --ds-accent (falls back to brand gold #D4A840).
   ===================================================================== */

.swal2-popup {
    border-radius: 18px !important;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.18) !important;
    padding: 0 !important;
    overflow: hidden;
    font-family: inherit !important;
}

.swal2-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    padding: 24px 24px 0 !important;
}

.swal2-html-container {
    font-size: 14px !important;
    color: #555 !important;
    line-height: 1.6 !important;
    padding: 8px 24px !important;
    margin: 0 !important;
}

.swal2-icon {
    margin: 24px auto 0 !important;
    border-width: 3px !important;
}

.swal2-icon.swal2-success {
    border-color: #2ecc71 !important;
    color: #2ecc71 !important;
}
.swal2-icon.swal2-success .swal2-success-line-tip,
.swal2-icon.swal2-success .swal2-success-line-long {
    background-color: #2ecc71 !important;
}
.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(46, 204, 113, 0.3) !important;
}

.swal2-icon.swal2-error {
    border-color: #e74c3c !important;
}
.swal2-icon.swal2-error .swal2-x-mark-line-left,
.swal2-icon.swal2-error .swal2-x-mark-line-right {
    background-color: #e74c3c !important;
}

.swal2-icon.swal2-warning {
    border-color: #f39c12 !important;
    color: #f39c12 !important;
}

.swal2-icon.swal2-info {
    border-color: #3498db !important;
    color: #3498db !important;
}

.swal2-icon.swal2-question {
    border-color: var(--ds-accent, #D4A840) !important;
    color: var(--ds-accent, #D4A840) !important;
}

.swal2-actions {
    padding: 12px 24px 24px !important;
    gap: 10px;
}

.swal2-confirm {
    background: var(--ds-accent, #D4A840) !important;
    color: #fff !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 10px 28px !important;
    box-shadow: 0 4px 15px var(--ds-accent-bg, rgba(212,168,64,0.3)) !important;
    transition: all 0.25s ease !important;
    border: none !important;
}
.swal2-confirm:hover {
    background: linear-gradient(135deg, var(--ds-accent, #D4A840) 0%, #b8912e 100%) !important;
    box-shadow: 0 6px 20px var(--ds-accent-bg, rgba(212,168,64,0.45)) !important;
    transform: translateY(-1px);
}
.swal2-confirm:focus {
    box-shadow: 0 4px 15px var(--ds-accent-bg, rgba(212,168,64,0.3)) !important;
}

.swal2-cancel {
    background: #f0f0f0 !important;
    color: #555 !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    padding: 10px 28px !important;
    transition: all 0.25s ease !important;
    border: none !important;
}
.swal2-cancel:hover {
    background: #e0e0e0 !important;
    color: #333 !important;
    transform: translateY(-1px);
}

.swal2-deny {
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%) !important;
    color: #fff !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    border: none !important;
}

.swal2-close {
    font-size: 22px !important;
    color: #aaa !important;
    transition: all 0.2s ease !important;
    width: 36px !important;
    height: 36px !important;
    top: 10px !important;
    right: 10px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.swal2-close:hover {
    color: var(--ds-accent, #D4A840) !important;
    background: var(--ds-accent-bg, rgba(212,168,64,0.08)) !important;
}

.swal2-footer {
    border-top: 1px solid #f0f0f0 !important;
    padding: 16px 24px !important;
    font-size: 13px !important;
    color: #999;
    background: #fafbfc;
}

/* Backdrop — blurred navy */
.swal2-container.swal2-backdrop-show {
    background: rgba(26, 26, 46, 0.45) !important;
    backdrop-filter: blur(4px) !important;
    -webkit-backdrop-filter: blur(4px) !important;
}

/* Pop-in / pop-out animations */
.swal2-show {
    animation: swalPopIn 0.35s ease !important;
}
@keyframes swalPopIn {
    from { opacity: 0; transform: scale(0.85) translateY(20px); }
    50%  { transform: scale(1.02) translateY(-2px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.swal2-hide {
    animation: swalPopOut 0.2s ease !important;
}
@keyframes swalPopOut {
    to { opacity: 0; transform: scale(0.9) translateY(10px); }
}
