/* ABV Filter and Image Centering Fix - Staging */

/* ABV Slider Styles - High Priority */
#abv-slider {
    height: 3px !important;
    background-color: #ddd !important;
    margin: 15px 0 !important;
    border: none !important;
}

#abv-slider .ui-slider-handle {
    width: 12px !important;
    height: 12px !important;
    border-radius: 50% !important;
    background-color: #333 !important;
    border: none !important;
    top: -4px !important;
    cursor: pointer !important;
    margin-left: -6px !important;
}

#abv-slider .ui-slider-range {
    background-color: #333 !important;
    height: 3px !important;
}

.filter-abv-text {
    font-size: 13px !important;
    margin-bottom: 10px !important;
    color: #666 !important;
}

/* Center product images in product cards - High Priority */
.product-default figure {
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.product-default figure>a {
    display: inline-block !important;
    width: auto !important;
    max-width: 100% !important;
}

.product-default figure img {
    width: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 auto !important;
    display: block !important;
}

/* Ensure proper centering in both view modes - High Priority */
.products-container[data-view="tiles"] .product-default figure img,
.products-container[data-view="list"] .product-default figure img {
    object-fit: contain !important;
    margin: 0 auto !important;
}

/* Additional ABV widget styling */
#widget-abv {
    padding: 15px 0 !important;
}

#widget-abv .widget-title {
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    margin-bottom: 15px !important;
    color: #333 !important;
}

#widget-abv .btn {
    margin-top: 10px !important;
    font-size: 12px !important;
    padding: 6px 12px !important;
}

/* Force override any conflicting styles */
.woocommerce .product-default figure,
.woocommerce-page .product-default figure {
    text-align: center !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.woocommerce .product-default figure img,
.woocommerce-page .product-default figure img {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    object-fit: contain !important;
}

/* Product Card Typography and Spacing Improvements */

/* Product title - increase font size and remove bottom spacing */
.product-default .product-title,
.product-default .product-title a {
    font-size: 1.1rem !important;
    line-height: 1.3 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
    font-weight: 600 !important;
}

/* Product details list - increase font size and reduce spacing */
.product-details-list {
    font-size: 0.9rem !important;
    line-height: 1.2 !important;
    margin-bottom: 10px !important;
}

.product-details-list span {
    margin-bottom: 3px !important;
    display: block !important;
}

.product-details-list span strong {
    font-size: 0.85rem !important;
    font-weight: 600 !important;
}

/* Price styling - increase font size */
.product-default .price-box {
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    margin: 10px 0 !important;
}

.product-default .product-price {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
}

.product-default .old-price {
    font-size: 1.05rem !important;
}

/* Multiple prices styling */
.multiple-prices .price-option {
    font-size: 0.9rem !important;
    margin-bottom: 4px !important;
}

.multiple-prices .price-label {
    font-size: 0.8rem !important;
    font-weight: 600 !important;
}

.multiple-prices .price-value {
    font-size: 0.9rem !important;
    font-weight: 600 !important;
}

/* Product details container - reduce padding and improve spacing */
.product-default .product-details {
    padding: 0 8px 12px !important;
}

/* Product title section - remove margins */
.product-title-section {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

/* Remove extra spacing from various elements */
.product-default {
    margin-bottom: 20px !important;
}

/* Tiles view specific improvements */
.products-container[data-view="tiles"] .product-title {
    font-size: 1rem !important;
    line-height: 1.25 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.products-container[data-view="tiles"] .product-details-list {
    font-size: 0.85rem !important;
    margin-bottom: 8px !important;
}

.products-container[data-view="tiles"] .price-box {
    font-size: 1rem !important;
    margin: 8px 0 !important;
}

/* List view specific improvements */
.products-container[data-view="list"] .product-title {
    font-size: 1.05rem !important;
    line-height: 1.3 !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.products-container[data-view="list"] .product-details-list {
    font-size: 0.88rem !important;
    margin-bottom: 8px !important;
}

.products-container[data-view="list"] .price-box {
    font-size: 1.02rem !important;
    margin: 8px 0 !important;
}

/* Add to Cart Button Improvements */
.product-default .add_to_cart_button,
.product-default .btn-add-cart,
.product-default .product-action .add_to_cart_button,
.product-default .product-action .btn-add-cart {
    width: 100% !important;
    min-width: 140px !important;
    max-width: 180px !important;
    padding: 6px 20px !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    border-radius: 4px !important;
    margin: 8px 0 !important;
    height: auto !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    overflow: hidden !important;
}

/* Quantity and Add to Cart container */
.product-default .quantity-add-to-cart {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.product-default .quantity-selector {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-bottom: 6px !important;
}

/* Product action container */
.product-default .product-action {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
}

/* View-specific button improvements */
.products-container[data-view="tiles"] .add_to_cart_button,
.products-container[data-view="tiles"] .btn-add-cart {
    min-width: 130px !important;
    max-width: 160px !important;
    padding: 6px 16px !important;
    font-size: 0.8rem !important;
    height: auto !important;
    line-height: 1.2 !important;
}

.products-container[data-view="list"] .add_to_cart_button,
.products-container[data-view="list"] .btn-add-cart {
    min-width: 150px !important;
    max-width: 200px !important;
    padding: 6px 24px !important;
    font-size: 0.85rem !important;
    height: auto !important;
    line-height: 1.2 !important;
}