/* Astra Child Theme - Product Card Styles */
.beast-product-wrap{position:relative;margin:0;padding:0}
.owl-product-inner{background:#fff;border-radius:8px;overflow:hidden;transition:.3s;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.owl-product-inner:hover{box-shadow:0 8px 20px rgba(0,0,0,.15);transform:translateY(-5px)}

/* Related Products Section */
.related.products{margin:40px 0;padding:30px 0;border-top:1px solid #e5e5e5}
.related.products h2{margin-bottom:30px;font-size:28px;font-weight:700;color:#111}
.related.products ul.products{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;list-style:none;padding:0;margin:0}
.related.products .beast-product-wrap{width:100%}

.owl-product-badge{position:absolute;top:15px;left:0;display:flex;z-index:10}
.owl-badge-inner-left,.owl-badge-inner-right{width:0;height:0;border-style:solid}
.owl-badge-inner-left{border-width:15px 0 15px 10px;border-color:transparent transparent transparent #ff0000}
.owl-badge-inner-right{border-width:15px 10px 15px 0;border-color:transparent #ff0000 transparent transparent}
.owl-badge-label{background:#ff0000;color:#fff;padding:5px 15px;font-size:12px;font-weight:700;text-transform:uppercase}
.owl-product-image-wrap{aspect-ratio:1;overflow:hidden;background:#f5f5f5}
.owl-product-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.owl-product-inner:hover .owl-product-image-wrap img{transform:scale(1.1)}
.owl-icon-box-style-5{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;gap:10px;opacity:0;visibility:hidden;transition:.3s;z-index:9}
.owl-product-inner:hover .owl-icon-box-style-5{opacity:1;visibility:visible}
.btn-icon-box{    width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #b90700;
    border-radius: 50%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .15);
    color: #ffffff;
    text-decoration: none;
    transition: .3s;}
.btn-icon-box:hover{background:#333;color:#fff;transform:scale(1.1)}
.yith-wishlist-wrapper{overflow: visible !important;
    width: 45px;
    height: 45px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: #b90700 !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 3px;}
.yith-wishlist-wrapper *{box-sizing:border-box !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist{display:flex !important;width:100%;height:100%;margin:0 !important;padding:0 !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist>div{display:flex !important;width:100%;height:100%}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a{display:flex !important;align-items:center;justify-content:center;width:45px !important;height:45px !important;min-width:45px !important;min-height:45px !important;background:#b90700 !important;border-radius:50% !important;box-shadow:0 2px 10px rgba(0,0,0,.15) !important;color:#fff !important;text-decoration:none !important;transition:.3s !important;border:none !important;font-size:16px !important;line-height:1 !important;padding:0 !important;margin:0 !important;position:relative !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a:hover{background:#333 !important;color:#fff !important;transform:scale(1.1)}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a i{font-size:16px !important;margin:0 !important;display:inline-block !important;visibility:visible !important;opacity:1 !important;line-height:1 !important;width:auto !important;height:auto !important;color:#fff !important;position:relative !important;z-index:1 !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a .yith-wcwl-icon{display:inline-block !important;width:auto !important;height:auto !important;font-size:16px !important;color:#fff !important;visibility:visible !important;opacity:1 !important}
.yith-wishlist-wrapper .yith-wcwl-wishlistaddedbrowse a,.yith-wishlist-wrapper .yith-wcwl-wishlistexistsbrowse a{display:flex !important;align-items:center;justify-content:center;width:45px !important;height:45px !important;background:#333 !important;border-radius:50% !important;box-shadow:0 2px 10px rgba(0,0,0,.15) !important;color:#fff !important;text-decoration:none !important}
.yith-wishlist-wrapper .yith-wcwl-wishlistaddedbrowse a i,.yith-wishlist-wrapper .yith-wcwl-wishlistexistsbrowse a i{color:#fff !important;font-size:16px !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a::before,.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a::after{display:none !important;content:none !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .feedback{display:none !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-add-button,.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse,.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse{display:flex !important;width:100%;height:100%;padding:0 !important;margin:0 !important}
.yith-wishlist-wrapper span{font-size:0 !important;line-height:0 !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist a span:not(.yith-wcwl-icon){display:none !important}
.fallback-wishlist-btn{display:flex !important;align-items:center;justify-content:center;width:45px;height:45px;background:#b90700 !important;border-radius:50%;box-shadow:0 2px 10px rgba(0,0,0,.15);color:#fff !important;text-decoration:none;transition:.3s;border:none;cursor:pointer}
.fallback-wishlist-btn:hover{background:#333 !important;transform:scale(1.1)}
.fallback-wishlist-btn i{color:#fff !important;font-size:16px !important}
.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-add-button,.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse,.yith-wishlist-wrapper .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse{display:flex !important;width:100%;height:100%;padding:0 !important;margin:0 !important}
.yith-wishlist-wrapper span{font-size:0 !important;line-height:0 !important}
.owl-product-details{padding:18px 15px;background:#fff}
.owl-product-details h3{margin:0 0 10px;font-size:16px;font-weight:600}
.owl-product-details h3 a{color:#111;text-decoration:none;transition:.2s}
.owl-product-details h3 a:hover{color:#b90700}
.owl-product-grid-wrap{list-style:none;padding:0;margin:0}
.owl-product-grid-wrap .owl-item{margin-bottom:8px}
.woocommerce-Price-amount{font-size:18px;font-weight:700;color:#333}
.woocommerce-Price-amount del{opacity:.7;font-size:14px;margin-right:5px;font-weight:400}
/* Quick View Modal */
.bcee-quick-view-modal{position:fixed;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;transition:.3s;z-index:9999}
.bcee-quick-view-modal.open{opacity:1;visibility:visible}
.bcee-quick-view-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.75);cursor:pointer}
.bcee-quick-view-wrapper{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background: #000000;color:#111;width:90%;max-width:900px;max-height:90vh;overflow-y:auto;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);background-color: #000000;}
.bcee-quick-view-content{position:relative;background: #000000;color:#111;border-radius:12px;overflow:hidden;border: 1px solid #888;}
.bcee-quick-view-close{position:absolute;top:15px;right:15px;width:40px;height:40px;border:none;border-radius: 50%;background: #fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.3s;padding: 10px;color: #000;}
.bcee-quick-view-close:hover{transform:rotate(90deg)}
.bcee-quick-view-inner{display:flex;background-color: #000000;border: 1px solid #888;}
.bcee-quick-view-image{flex:0 0 50%;padding:30px;background: #000000;display:flex;align-items:center;justify-content:center}
.bcee-quick-view-image img{max-height:480px;width:100%;object-fit:contain;border-radius:8px}
.bcee-quick-view-details{flex:1;padding:40px;background: #000000;}
.bcee-quick-view-details .product-title{font-size:28px;font-weight:700;margin:0 0 15px}
.bcee-price-wrapper{font-size:24px;margin:15px 0;color:#ff0000}
.bcee-quick-add-to-cart{background:#ff0000;color:#fff;border:none;padding:15px 30px;border-radius:6px;font-weight:700;cursor:pointer;width:100%;transition:.3s;text-transform:uppercase}
.bcee-quick-add-to-cart:hover{background:#cc0000}
.bcee-product-meta{margin-top:25px;padding-top:25px;border-top:1px solid #333;font-size:14px;color:#aaa}
.owl-product-inner:hover .owl-icon-box-style-5 .yith-add-to-wishlist-button-block.yith-add-to-wishlist-button-block--initialized{display:block;}
@media(max-width:768px){.bcee-quick-view-inner{flex-direction:column}.bcee-quick-view-image{flex:0 0 auto;padding:20px}.bcee-quick-view-details{padding:25px}.bcee-quick-view-details .product-title{font-size:22px}}
@media(max-width:480px){.bcee-quick-view-details{padding:20px}.bcee-quick-view-details .product-title{font-size:18px}.btn-icon-box{width:38px;height:38px}}

/* Related Products Responsive */
@media(max-width:768px){
  .related.products ul.products{grid-template-columns:repeat(2,1fr);gap:15px}
}
@media(max-width:480px){
  .related.products ul.products{grid-template-columns:1fr;gap:15px}
}

/* Quantity controls */
.bcee-cart-row{display:flex;gap:16px;align-items:center;margin:20px 0}
.bcee-cart-row .bcee-qty{width:220px;max-width:100%;height:48px;border:1px solid #ddd;border-radius:6px;padding:0 14px;background:#fff;color:#111;font-size:16px}
.bcee-cart-row .bcee-qty:focus{outline:none;border-color:#ff0000;box-shadow:0 0 0 3px rgba(255,0,0,.1)}
.bcee-cart-row .bcee-quick-add-to-cart{height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 28px}
/* Keep browser native spinners visible */
.bcee-cart-row .bcee-qty::-webkit-outer-spin-button,
.bcee-cart-row .bcee-qty::-webkit-inner-spin-button{opacity:1}
.bcee-cart-row .bcee-qty[type=number]{-moz-appearance:textfield;appearance:auto}
@media(max-width:600px){
    .bcee-cart-row{flex-direction:column;align-items:stretch}
    .bcee-cart-row .bcee-qty{width:100%}
    .bcee-cart-row .bcee-quick-add-to-cart{width:100%}
}

/* YITH Wishlist SVG Icon Styles */
.yith-wcwl-icon-svg__wrapper {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
}

.yith-wcwl-icon-svg {
    width: 20px !important;
    height: 20px !important;
    fill: currentColor;
    transition: all 0.3s ease;
}

.yith-wcwl-add-to-wishlist-button--custom-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 45px !important;
    height: 45px !important;
    background: #b90700 !important;
    border: none !important;
    border-radius: 50% !important;
    color: #ffffff !important;
    cursor: pointer;
    transition: all 0.3s ease;
    padding: 0 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, .15) !important;
}

.yith-wcwl-add-to-wishlist-button--custom-button:hover {
    background: #333 !important;
    transform: scale(1.1);
}

.yith-wcwl-add-to-wishlist-button--custom-button .yith-wcwl-add-to-wishlist-button__label {
    display: none !important;
    font-size: 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

/* When item is already in wishlist */
.yith-wcwl-add-to-wishlist-button--custom-button.yith-wcwl-add-to-wishlist-button--already-in {
    background: #333 !important;
}

.yith-wcwl-add-to-wishlist-button--custom-button.yith-wcwl-add-to-wishlist-button--already-in .yith-wcwl-icon-svg {
    fill: #ffffff;
}

/* Loading state */
.yith-wcwl-add-to-wishlist-button--custom-button.loading .yith-wcwl-icon-svg {
    animation: pulse 1s infinite;
}

@keyframes pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.2); opacity: 0.7; }
}

/* Ensure icon shows properly inside the button */
.yith-wcwl-add-to-wishlist-button--custom-button * {
    box-sizing: border-box;
}

/* Override any conflicting YITH styles */
.yith-wcwl-add-to-wishlist .yith-wcwl-add-to-wishlist-button--custom-button {
    position: relative !important;
    overflow: visible !important;
}
