/* --- Custom WooCommerce Notices/Messages --- */

.woocommerce-message, 
.woocommerce-error, 
.woocommerce-info {
    font-family: "Instrument Sans", sans-serif !important;
    border-radius: 12px !important;
    padding: 24px 30px 24px 75px !important; /* Increased left padding for more breathability */
    margin-bottom: 35px !important;
    border: none !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important;
    line-height: 1.6 !important;
    font-size: 1.05rem !important;
    font-weight: 500 !important;
    position: relative !important;
    display: block !important;
}

/* Base Icon Styling - Centered Vertically */
.woocommerce-message::before, 
.woocommerce-error::before, 
.woocommerce-info::before {
    position: absolute !important;
    left: 28px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 22px !important;
    line-height: 1 !important;
}

/* Link Styling inside notices */
.woocommerce-info a,
.woocommerce-message a,
.woocommerce-error a {
    color: #186532 !important; /* Theme Green */
    font-weight: 700 !important;
    text-decoration: underline !important;
}

/* Success Message (Green) */
.woocommerce-message {
    background-color: #f6fbf7 !important;
    color: #186532 !important;
    border-left: 6px solid #186532 !important;
}
.woocommerce-message::before {
    color: #186532 !important;
}

/* Info Message (Blue) */
.woocommerce-info {
    background-color: #f5f9ff !important;
    color: #0056b3 !important;
    border-left: 6px solid #0056b3 !important;
}
.woocommerce-info::before {
    color: #0056b3 !important;
}

/* Error Message (Red) */
.woocommerce-error {
    background-color: #fffbfa !important;
    color: #d32f2f !important;
    border-left: 6px solid #d32f2f !important;
    list-style: none !important;
}
.woocommerce-error::before {
    color: #d32f2f !important;
}
.woocommerce-error li {
    padding: 0 !important;
    margin: 0 !important;
}

/* Action Buttons inside notices (e.g., "View Cart") */
.woocommerce-message .button, 
.woocommerce-info .button, 
.woocommerce-error .button {
    float: right !important;
    background: #186532 !important;
    color: #ffffff !important;
    padding: 10px 22px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    transition: all 0.3s ease !important;
    margin: -6px 0 -6px 20px !important; /* Negative margin to center vertically with text */
    border: none !important;
    box-shadow: 0 4px 10px rgba(24, 101, 50, 0.15) !important;
}

.woocommerce-message .button:hover, 
.woocommerce-info .button:hover, 
.woocommerce-error .button:hover {
    background: #145229 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 15px rgba(24, 101, 50, 0.25) !important;
}

/* Clearfix for the floated button */
.woocommerce-message::after, 
.woocommerce-info::after, 
.woocommerce-error::after {
    content: "" !important;
    display: table !important;
    clear: both !important;
}

@media (max-width: 768px) {
    .woocommerce-message, 
    .woocommerce-error, 
    .woocommerce-info {
        padding: 30px 20px 30px 20px !important;
        text-align: center !important;
    }
    .woocommerce-message::before, 
    .woocommerce-error::before, 
    .woocommerce-info::before {
        position: static !important;
        display: block !important;
        margin: 0 auto 15px !important;
    }
    .woocommerce-message .button, 
    .woocommerce-info .button, 
    .woocommerce-error .button {
        float: none !important;
        display: block !important;
        margin: 20px 0 0 !important;
        width: 100% !important;
    }
}

