/* Custom SweetAlert2 Button Styles to Match Project Theme */

/* Override SweetAlert2 button styles */
.swal2-popup .swal2-styled.swal2-confirm {
    background: linear-gradient(90deg, #D0003A, #B51151, #AB2379) !important;
    border: none !important;
    border-radius: 16px !important;
    padding: 15px 30px !important;
    font-size: 18px !important;
    font-family: "Open Sans", sans-serif !important;
    font-weight: 600 !important;
    color: #fff !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.swal2-popup .swal2-styled.swal2-confirm:hover {
    opacity: 0.9 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(208, 0, 58, 0.3) !important;
}

.swal2-popup .swal2-styled.swal2-confirm:focus {
    box-shadow: 0 0 0 3px rgba(208, 0, 58, 0.2) !important;
}

/* Cancel button styling */
.swal2-popup .swal2-styled.swal2-cancel {
    background: #fff !important;
    border: 1px solid #D0003A !important;
    border-radius: 16px !important;
    padding: 15px 30px !important;
    font-size: 18px !important;
    font-family: "Open Sans", sans-serif !important;
    font-weight: 600 !important;
    color: #D0003A !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.swal2-popup .swal2-styled.swal2-cancel:hover {
    background: linear-gradient(90deg, #D0003A, #B51151, #AB2379) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(208, 0, 58, 0.3) !important;
}

.swal2-popup .swal2-styled.swal2-cancel:focus {
    box-shadow: 0 0 0 3px rgba(208, 0, 58, 0.2) !important;
}

/* Deny button styling (if used) */
.swal2-popup .swal2-styled.swal2-deny {
    background: #f8f9fa !important;
    border: 1px solid #dee2e6 !important;
    border-radius: 16px !important;
    padding: 15px 30px !important;
    font-size: 18px !important;
    font-family: "Open Sans", sans-serif !important;
    font-weight: 600 !important;
    color: #6c757d !important;
    transition: all 0.2s ease !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.swal2-popup .swal2-styled.swal2-deny:hover {
    background: #e9ecef !important;
    color: #495057 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(108, 117, 125, 0.2) !important;
}

/* Small buttons for specific cases */
.swal2-popup .swal2-styled.swal2-confirm.btn-sm {
    padding: 12px 20px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
}

.swal2-popup .swal2-styled.swal2-cancel.btn-sm {
    padding: 12px 20px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
}

/* Action buttons container */
.swal2-popup .swal2-actions {
    gap: 15px !important;
    margin-top: 25px !important;
}

/* Popup styling to match theme */
.swal2-popup {
    border-radius: 20px !important;
    font-family: "Open Sans", sans-serif !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15) !important;
}

.swal2-title {
    font-family: "Montserrat", sans-serif !important;
    font-weight: 600 !important;
    color: #1f2938 !important;
}

.swal2-html-container {
    font-family: "Open Sans", sans-serif !important;
    color: #37404e !important;
}

/* Icon styling */
.swal2-icon.swal2-success {
    border-color: #D0003A !important;
    color: #D0003A !important;
}

.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(208, 0, 58, 0.3) !important;
}

.swal2-icon.swal2-error {
    border-color: #dc3545 !important;
    color: #dc3545 !important;
}

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

.swal2-icon.swal2-info {
    border-color: #17a2b8 !important;
    color: #17a2b8 !important;
}

/* Loading animation */
.swal2-popup .swal2-loader {
    border-color: #D0003A transparent #D0003A transparent !important;
}

/* Close button */
.swal2-close {
    color: #6c757d !important;
    font-size: 28px !important;
    font-weight: 300 !important;
}

.swal2-close:hover {
    color: #D0003A !important;
}

/* Toast styling */
.swal2-toast .swal2-styled.swal2-confirm {
    background: linear-gradient(90deg, #D0003A, #B51151, #AB2379) !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
}

.swal2-toast .swal2-styled.swal2-cancel {
    background: #fff !important;
    border: 1px solid #D0003A !important;
    border-radius: 6px !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
    color: #D0003A !important;
}

/* Input styling for SweetAlert2 inputs */
.swal2-popup .swal2-input {
    border: 1px solid #dee2e6 !important;
    border-radius: 8px !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    padding: 12px 16px !important;
    transition: border-color 0.2s ease !important;
}

.swal2-popup .swal2-input:focus {
    border-color: #D0003A !important;
    box-shadow: 0 0 0 3px rgba(208, 0, 58, 0.1) !important;
    outline: none !important;
}

/* Select styling */
.swal2-popup .swal2-select {
    border: 1px solid #dee2e6 !important;
    border-radius: 8px !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    padding: 12px 16px !important;
}

/* Textarea styling */
.swal2-popup .swal2-textarea {
    border: 1px solid #dee2e6 !important;
    border-radius: 8px !important;
    font-family: "Open Sans", sans-serif !important;
    font-size: 16px !important;
    padding: 12px 16px !important;
    resize: vertical !important;
}

/* Progress bar styling */
.swal2-popup .swal2-progress-bar {
    background: linear-gradient(90deg, #D0003A, #B51151, #AB2379) !important;
}

/* Footer styling */
.swal2-popup .swal2-footer {
    border-top: 1px solid #dee2e6 !important;
    color: #6c757d !important;
    font-family: "Open Sans", sans-serif !important;
}

/* Custom button classes for specific use cases */
.swal2-popup .swal2-styled.swal2-confirm.btn-danger {
    background: linear-gradient(90deg, #dc3545, #c82333, #bd2130) !important;
}

.swal2-popup .swal2-styled.swal2-confirm.btn-success {
    background: linear-gradient(90deg, #28a745, #218838, #1e7e34) !important;
}

.swal2-popup .swal2-styled.swal2-confirm.btn-warning {
    background: linear-gradient(90deg, #ffc107, #e0a800, #d39e00) !important;
    color: #212529 !important;
}

.swal2-popup .swal2-styled.swal2-confirm.btn-info {
    background: linear-gradient(90deg, #17a2b8, #138496, #117a8b) !important;
}
