/* ==============================================
   WOOCOMMERCE NOTICES - OPTIMIZED CSS
   Professional error and info messages
   ============================================== */

/* Base notice styles */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
    padding:16px 20px;
    margin:0 0 20px;
    border-radius:10px;
    font-size:0.95rem;
    font-weight:500;
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    animation:slideDown 0.3s ease;
    box-shadow:0 2px 8px rgba(0,0,0,0.08)
}

/* Success message (green) */
.woocommerce-message{
    background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);
    border-left:4px solid #4caf50;
    color:#2e7d32
}

.woocommerce-message::before{
    content:'\f00c';
    font-family:'Font Awesome 5 Free';
    font-weight:900;
    color:#4caf50;
    font-size:1.2rem
}

/* Info message (blue) */
.woocommerce-info{
    background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);
    border-left:4px solid #2196f3;
    color:#1565c0
}

.woocommerce-info::before{
    content:'\f05a';
    font-family:'Font Awesome 5 Free';
    font-weight:900;
    color:#2196f3;
    font-size:1.2rem
}

/* Error message (red) */
.woocommerce-error{
    background:linear-gradient(135deg,#ffebee 0%,#ffcdd2 100%);
    border-left:4px solid #f44336;
    color:#c62828;
    list-style:none;
    padding:0
}

.woocommerce-error li{
    padding:16px 20px 16px 44px;
    position:relative
}

.woocommerce-error li::before{
    content:'\f06a';
    font-family:'Font Awesome 5 Free';
    font-weight:900;
    color:#f44336;
    font-size:1.2rem;
    position:absolute;
    left:16px;
    top:16px
}

/* Links inside notices */
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a{
    color:inherit;
    font-weight:700;
    text-decoration:underline;
    transition:opacity 0.2s ease
}

.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-error a:hover{
    opacity:0.8
}

/* Close button */
.woocommerce-message .close-btn,
.woocommerce-info .close-btn,
.woocommerce-error .close-btn{
    position:absolute;
    top:12px;
    right:12px;
    width:24px;
    height:24px;
    border-radius:50%;
    background:rgba(0,0,0,0.1);
    color:inherit;
    font-size:18px;
    line-height:24px;
    text-align:center;
    cursor:pointer;
    transition:all 0.2s ease;
    border:none;
    padding:0
}

.woocommerce-message .close-btn:hover,
.woocommerce-info .close-btn:hover,
.woocommerce-error .close-btn:hover{
    background:rgba(0,0,0,0.2);
    transform:rotate(90deg)
}

/* Animation */
@keyframes slideDown{
    from{
        opacity:0;
        transform:translateY(-20px)
    }
    to{
        opacity:1;
        transform:translateY(0)
    }
}

.woocommerce-message.dismissing,
.woocommerce-info.dismissing,
.woocommerce-error.dismissing{
    opacity:0;
    transform:translateY(-20px);
    transition:all 0.3s ease
}

/* Cart page specific */
.custom-cart-page .woocommerce-message,
.custom-cart-page .woocommerce-info,
.custom-cart-page .woocommerce-error{
    max-width:1400px;
    margin:0 auto 20px
}

/* Responsive */
@media (max-width:640px){
    .woocommerce-message,
    .woocommerce-info,
    .woocommerce-error{
        padding:14px 16px;
        font-size:0.9rem
    }
    
    .woocommerce-error li{
        padding:14px 16px 14px 40px
    }
    
    .woocommerce-message::before,
    .woocommerce-info::before,
    .woocommerce-error li::before{
        font-size:1rem
    }
}

/* Fix for variable product messages */
.woocommerce-info a[href*="product"]{
    display:inline-block;
    margin-top:8px;
    padding:8px 16px;
    background:rgba(33,150,243,0.15);
    border-radius:6px;
    text-decoration:none;
    font-weight:600;
    transition:all 0.2s ease
}

.woocommerce-info a[href*="product"]:hover{
    background:rgba(33,150,243,0.25);
    transform:translateY(-1px)
}