/* ==========================================================================
   Ceylon Woodcrafts - Unified SweetAlert2 Theme
   Matches brand identity: #5C3A21 (wood brown), #FAF7F2 (warm cream),
   #C8A96A (warm gold accent), soft rounded corners, premium typography.
   ========================================================================== */

/* Container z-index to overlay modals and navbars */
.swal2-container {
    z-index: 100000 !important;
}

/* Modal Popup - Large, readable, warm cream woodcraft aesthetic */
.swal2-popup,
.ceylon-swal-popup {
    width: 520px !important;
    max-width: 92vw !important;
    background: #FAF7F2 !important;
    border: 2px solid #D4C5B0 !important;
    border-radius: 16px !important;
    padding: 2.2rem 2rem 2rem !important;
    box-shadow: 0 20px 45px rgba(74, 63, 53, 0.3), inset 0 0 0 1px rgba(200, 169, 106, 0.4) !important;
    font-family: 'Open Sans', sans-serif !important;
    color: #4A3828 !important;
}

/* Modal Title */
.swal2-title,
.ceylon-swal-title {
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #5C3A21 !important;
    letter-spacing: 0.3px !important;
    margin-bottom: 0.85rem !important;
    padding: 0 0.5rem !important;
    text-align: center !important;
}

/* Modal Body / Message */
.swal2-html-container,
.ceylon-swal-text {
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #4A3828 !important;
    margin: 0.5rem 0 1.5rem !important;
    font-weight: 400 !important;
    text-align: center !important;
}

/* Actions Wrapper */
.swal2-actions {
    margin-top: 1.25rem !important;
    gap: 12px !important;
    justify-content: center !important;
}

/* Primary Confirm Button */
.swal2-styled.swal2-confirm,
.ceylon-swal-confirm {
    background-color: #5C3A21 !important;
    background-image: linear-gradient(135deg, #6B4226 0%, #4A2E19 100%) !important;
    color: #ffffff !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 28px !important;
    border-radius: 8px !important;
    border: 1px solid #3E2413 !important;
    box-shadow: 0 4px 14px rgba(74, 46, 25, 0.35) !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    min-width: 120px !important;
    text-decoration: none !important;
}

.swal2-styled.swal2-confirm:hover,
.ceylon-swal-confirm:hover {
    background-image: linear-gradient(135deg, #7D4F2E 0%, #5C3A21 100%) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 6px 18px rgba(74, 46, 25, 0.45) !important;
}

/* Secondary Cancel Button */
.swal2-styled.swal2-cancel,
.ceylon-swal-cancel {
    background-color: #FAF7F2 !important;
    color: #5C3A21 !important;
    font-family: 'Josefin Sans', sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 24px !important;
    border-radius: 8px !important;
    border: 1.5px solid #5C3A21 !important;
    box-shadow: none !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    min-width: 110px !important;
    text-decoration: none !important;
}

.swal2-styled.swal2-cancel:hover,
.ceylon-swal-cancel:hover {
    background-color: rgba(92, 58, 33, 0.08) !important;
    color: #3E2413 !important;
    transform: translateY(-1px) !important;
}

/* Icons */
.swal2-icon {
    margin: 1.25rem auto 1.5rem !important;
    transform: scale(1.1);
}

.swal2-icon.swal2-success {
    border-color: #2e7d32 !important;
    color: #2e7d32 !important;
}
.swal2-icon.swal2-success [class^='swal2-success-line'] {
    background-color: #2e7d32 !important;
}
.swal2-icon.swal2-success .swal2-success-ring {
    border-color: rgba(46, 125, 50, 0.3) !important;
}

.swal2-icon.swal2-error {
    border-color: #c62828 !important;
    color: #c62828 !important;
}
.swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
    background-color: #c62828 !important;
}

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

.swal2-icon.swal2-info {
    border-color: #8B6F47 !important;
    color: #8B6F47 !important;
}

.swal2-icon.swal2-question {
    border-color: #5C3A21 !important;
    color: #5C3A21 !important;
}

/* Mobile Responsiveness */
@media (max-width: 576px) {
    .swal2-popup,
    .ceylon-swal-popup {
        width: 92vw !important;
        padding: 1.8rem 1.4rem 1.6rem !important;
    }
    .swal2-title,
    .ceylon-swal-title {
        font-size: 22px !important;
    }
    .swal2-html-container,
    .ceylon-swal-text {
        font-size: 15px !important;
    }
    .swal2-styled.swal2-confirm,
    .ceylon-swal-confirm,
    .swal2-styled.swal2-cancel,
    .ceylon-swal-cancel {
        font-size: 14px !important;
        padding: 8px 20px !important;
        min-width: 100px !important;
    }
}

