.woocommerce-product-gallery.optimized{opacity:1 !important;transition:none !important;}
body.scrolling .woocommerce-product-gallery__wrapper{transition:none !important;will-change:auto !important;}
body.scrolling .flex-control-thumbs img{transition:none !important;}
.woocommerce-product-gallery__wrapper::before{content:'';display:block;width:100%;padding-top:100%;background-color:#f9f9f9;}
.woocommerce-product-gallery__wrapper.loaded::before{display:none;}
.woocommerce-product-gallery__image{position:relative;transition:opacity 0.3s ease;}
.woocommerce-product-gallery__image img{opacity:1 !important;transition:opacity 0.2s ease-in-out;}
.woocommerce-product-gallery.loading .woocommerce-product-gallery__image img{opacity:0.7 !important;}
@media(max-width:768px){
.woocommerce-product-gallery .flex-control-thumbs{display:flex;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:10px;margin-bottom:10px;scroll-snap-type:x mandatory;}
.woocommerce-product-gallery .flex-control-thumbs li{flex:0 0 auto;scroll-snap-align:start;}
} @media(min-width:768px){
.woocommerce-product-gallery .flex-control-thumbs{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px !important;}
.woocommerce-product-gallery .flex-control-thumbs li{width:70px !important;height:70px !important;overflow:hidden;}
.woocommerce-product-gallery .flex-control-thumbs li img{height:100%;width:100%;object-fit:cover;}
} img.attachment-woocommerce_thumbnail,
img.attachment-woocommerce_single, img.attachment-shop_catalog{background-color:#f9f9f9;transition:opacity 0.3s ease;}
.woocommerce ul.products li.product a img{margin:0;}
body.images-preloaded .woocommerce-product-gallery::before{display:none !important;opacity:0 !important;}
.woocommerce-product-gallery{min-height:400px;background-color:#fff;}
.woocommerce ul.products li.product.out-of-stock{position:relative;opacity:0.7;}
.woocommerce ul.products li.product.out-of-stock::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255, 255, 255, 0.1);z-index:1;pointer-events:none;}
.woocommerce ul.products li.product.out-of-stock .woocommerce-loop-product__link::after{content:"FORA DE ESTOQUE";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);background:rgba(220, 53, 69, 0.9);color:white;padding:8px 16px;border-radius:4px;font-size:12px;font-weight:bold;letter-spacing:0.5px;text-align:center;z-index:2;box-shadow:0 2px 4px rgba(0, 0, 0, 0.2);}
.woocommerce a.button.out-of-stock-button, .woocommerce button.button.out-of-stock-button{background-color:#ccc !important;color:white !important;border-color:#ccc !important;cursor:not-allowed !important;opacity:1;position:relative;transition:all 0.3s ease;}
.woocommerce a.button.out-of-stock-button:hover, .woocommerce button.button.out-of-stock-button:hover{background-color:#aaa !important;border-color:#aaa !important;transform:none;box-shadow:none;}
.woocommerce a.button.out-of-stock-button:focus, .woocommerce button.button.out-of-stock-button:focus{box-shadow:0 0 0 0.2rem rgba(204, 204, 204, 0.25);}
.out-of-stock-notice{display:inline-block;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;padding:4px 8px;border-radius:3px;font-size:11px;font-weight:500;margin-top:5px;text-transform:uppercase;letter-spacing:0.3px;}
.woocommerce ul.products li.product.out-of-stock .price{opacity:0.6;text-decoration:line-through;}
.woocommerce ul.products li.product.out-of-stock h2.woocommerce-loop-product__title{opacity:0.8;}
.woocommerce ul.products li.product.out-of-stock .out-of-stock-badge{position:absolute;top:10px;right:10px;background:#dc3545;color:white;padding:4px 8px;border-radius:12px;font-size:10px;font-weight:bold;text-transform:uppercase;z-index:3;box-shadow:0 1px 3px rgba(0, 0, 0, 0.3);}
@media(max-width:768px){
.woocommerce ul.products li.product.out-of-stock .woocommerce-loop-product__link::after{font-size:10px;padding:6px 12px;}
.out-of-stock-badge{font-size:9px;padding:3px 6px;}
} @keyframes outOfStockPulse {
0%, 100%{opacity:0.9;}
50%{opacity:0.7;}
}
.woocommerce ul.products li.product.out-of-stock .woocommerce-loop-product__link::after {
animation: outOfStockPulse 2s infinite;
}