/* Neumorphism Theme for SweetAlert2 (Swal.fire) */

.swal2-container {
    backdrop-filter: blur(4px);
    background: rgba(224, 229, 236, 0.4) !important;
}

.swal2-popup.swal2-modal {
    background: #e0e5ec !important;
    border-radius: 24px !important;
    padding: 28px 24px !important;
    box-shadow: 12px 12px 24px rgba(163, 177, 198, 0.7), 
                -12px -12px 24px rgba(255, 255, 255, 0.9) !important;
    border: 1px solid rgba(255, 255, 255, 0.8) !important;
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    color: #3a4756 !important;
}

/* Title Styling */
.swal2-title {
    color: #2d3748 !important;
    font-weight: 700 !important;
    font-size: 1.35rem !important;
    margin-bottom: 10px !important;
    letter-spacing: -0.3px !important;
}

/* Text Content */
.swal2-html-container {
    color: #64748b !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    margin-top: 8px !important;
}

/* Icon Customization for Neumorphism */
.swal2-icon {
    background: #e0e5ec !important;
    box-shadow: inset 4px 4px 8px rgba(163, 177, 198, 0.7), 
                inset -4px -4px 8px rgba(255, 255, 255, 0.9) !important;
}

/* Success Icon Accent */
.swal2-icon.swal2-success {
    border-color: rgba(100, 164, 61, 0.4) !important;
    color: #64A43D !important;
}
.swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: #64A43D !important;
}
.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(100, 164, 61, 0.4) !important;
}

/* Error Icon Accent */
.swal2-icon.swal2-error {
    border-color: rgba(220, 38, 38, 0.4) !important;
    color: #dc2626 !important;
}
.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #dc2626 !important;
}

/* Warning Icon Accent */
.swal2-icon.swal2-warning {
    border-color: rgba(245, 158, 11, 0.4) !important;
    color: #f59e0b !important;
}

/* Info Icon Accent */
.swal2-icon.swal2-info {
    border-color: rgba(59, 130, 246, 0.4) !important;
    color: #3b82f6 !important;
}



/* Buttons Action Row */
.swal2-actions {
    margin-top: 24px !important;
    gap: 12px !important;
}

/* Confirm Button (Neu Primary / Danger) */
.swal2-confirm {
    background: #64A43D !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 10px 24px !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.3px !important;
    box-shadow: 4px 4px 10px rgba(100, 164, 61, 0.35), 
                -2px -2px 6px rgba(255, 255, 255, 0.7) !important;
    transition: all 0.2s ease !important;
    outline: none !important;
}

.swal2-confirm:hover {
    background: #558d33 !important;
    transform: translateY(-1px) !important;
    box-shadow: 5px 5px 12px rgba(100, 164, 61, 0.45) !important;
}

.swal2-confirm:active {
    transform: translateY(1px) !important;
    box-shadow: inset 2px 2px 4px rgba(0,0,0,0.2) !important;
}

/* Specific Danger style override if confirm button is red */
.swal2-styled.swal2-confirm[style*="background-color: rgb(220, 38, 38)"],
.swal2-styled.swal2-confirm[style*="dc2626"] {
    background: #dc2626 !important;
    box-shadow: 4px 4px 10px rgba(220, 38, 38, 0.35) !important;
}
.swal2-styled.swal2-confirm[style*="background-color: rgb(220, 38, 38)"]:hover {
    background: #b91c1c !important;
}

/* Cancel Button (Neu Secondary) */
.swal2-cancel {
    background: #e0e5ec !important;
    color: #4a5568 !important;
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    border-radius: 12px !important;
    padding: 10px 22px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    box-shadow: 4px 4px 8px rgba(163, 177, 198, 0.6), 
                -4px -4px 8px rgba(255, 255, 255, 0.8) !important;
    transition: all 0.2s ease !important;
    outline: none !important;
}

.swal2-cancel:hover {
    color: #2d3748 !important;
    box-shadow: 6px 6px 10px rgba(163, 177, 198, 0.7), 
                -6px -6px 10px rgba(255, 255, 255, 0.9) !important;
}

.swal2-cancel:active {
    box-shadow: inset 3px 3px 6px rgba(163, 177, 198, 0.7), 
                inset -3px -3px 6px rgba(255, 255, 255, 0.7) !important;
}

/* Input Fields inside Swal if any */
.swal2-input, .swal2-textarea, .swal2-select {
    background: #e0e5ec !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.6) !important;
    box-shadow: inset 3px 3px 6px rgba(163, 177, 198, 0.6), 
                inset -3px -3px 6px rgba(255, 255, 255, 0.8) !important;
    color: #2d3748 !important;
    font-size: 0.95rem !important;
}

.swal2-input:focus, .swal2-textarea:focus, .swal2-select:focus {
    box-shadow: inset 4px 4px 8px rgba(163, 177, 198, 0.8), 
                inset -4px -4px 8px rgba(255, 255, 255, 0.9) !important;
    border-color: #64A43D !important;
}

/* Progress bar timer */
.swal2-timer-progress-bar {
    background: #64A43D !important;
    border-radius: 4px !important;
}
