
/* WooCommerce Base Styles - SlimGlass Compatible */

.woocommerce {
    font-family: var(--so-font-family, 'Poppins', sans-serif);
}

.woocommerce form .form-row .required { 
    visibility: visible; 
    color: #e74c3c;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    padding: 1rem;
    margin-bottom: 1rem;
    border-radius: 4px;
    border-left: 4px solid;
}

.woocommerce-error {
    background-color: #fdf2f2;
    border-left-color: #e74c3c;
    color: #e74c3c;
}

.woocommerce-info {
    background-color: #f0f8ff;
    border-left-color: #3498db;
    color: #3498db;
}

.woocommerce-message {
    background-color: #f0fff4;
    border-left-color: #27ae60;
    color: #27ae60;
}

/* Cart specific styles */
.woocommerce-cart table.cart {
    border-collapse: collapse;
    width: 100%;
}

.woocommerce-cart table.cart th,
.woocommerce-cart table.cart td {
    padding: 1rem;
    border-bottom: 1px solid #eee;
}

.woocommerce-cart table.cart .product-thumbnail img {
    max-width: 100px;
    height: auto;
    border-radius: 8px;
}

.woocommerce-cart table.cart .product-name a {
    text-decoration: none;
    color: var(--so-color-primary, #1f4d88);
    font-weight: 600;
}

.woocommerce-cart table.cart .product-name a:hover {
    color: var(--so-color-blue, #58b6ff);
}

.woocommerce .quantity input[type="number"] {
    width: 60px;
    text-align: center;
    padding: 0.5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
}

/* Button styles */
.woocommerce .button,
.woocommerce button.button,
.woocommerce input.button {
    background: var(--so-color-blue, #58b6ff);
    color: white;
    border: none;
    padding: 0.75rem 1.5rem;
    border-radius: var(--so-border-radius, 12px);
    cursor: pointer;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
    transition: background 0.3s ease;
}

.woocommerce .button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    background: #4a9fe0;
}

.woocommerce .button.alt {
    background: var(--so-color-primary, #1f4d88);
}

.woocommerce .button.alt:hover {
    background: #2b4c7d;
}

/* Select2 compatibility */
.select2-container .select2-selection--single {
    height: 45px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 43px;
    padding-left: 12px;
}

.select2-container .select2-selection--single .select2-selection__arrow {
    height: 43px;
}

/* Responsive improvements */
@media (max-width: 768px) {
    .woocommerce table.cart th {
        display: none;
    }
    
    .woocommerce table.cart td {
        display: block;
        text-align: right;
        border: none;
        padding: 0.5rem;
    }
    
    .woocommerce table.cart td:before {
        content: attr(data-title) ": ";
        float: left;
        font-weight: bold;
    }
    
    .woocommerce table.cart .product-thumbnail {
        text-align: center;
    }
    
    .woocommerce table.cart .product-thumbnail:before {
        content: "";
    }
}