/* =========================================================
   BARECO — SINGLE PRODUCT (Flex version - no grid)
   Scope: only .bc-sp wrappers
========================================================= */

.single-product .single-product-wrap{ padding: 44px 0 80px; }

/* ---------------------------
   Top layout (FLEX)
--------------------------- */
.bc-sp__grid{
  display:flex;
  gap: 56px;
  align-items:flex-start;
}

/* LEFT media / RIGHT summary widths */
.bc-sp__media{
  flex: 0 0 58%;
  max-width: 760px;         /* stops image too huge */
  min-width: 0;
}
.bc-sp__summary{
  flex: 1 1 42%;
  min-width: 0;
  position: sticky;
  top: 110px;
}

/* ---------------------------
   Woo gallery polish + image size control
--------------------------- */
.bc-sp__media .woocommerce-product-gallery{
  width:100% !important;
}

.bc-sp__media .woocommerce-product-gallery__wrapper{
  border:1px solid var(--border);
  border-radius:18px;
  overflow:hidden;
  background:#f6f6f6;
}

/* MAIN image height control */
.bc-sp__media .woocommerce-product-gallery__image a,
.bc-sp__media .woocommerce-product-gallery__image img{
  display:block;
  width:100%;
  height:auto;
  max-height: 720px;   /* IMPORTANT: stop tall images */
  object-fit: cover;
}

/* thumbs */
/* .bc-sp__media .flex-control-thumbs{
  margin-top: 14px !important;
  display:grid !important;
  grid-template-columns: repeat(6, minmax(0,1fr));
  gap:10px;
}
.bc-sp__media .flex-control-thumbs li{ width:auto !important; margin:0 !important; }
.bc-sp__media .flex-control-thumbs img{
  border:1px solid var(--border);
  border-radius:14px;
  opacity:.9;
  background:#fff;
}
.bc-sp__media .flex-control-thumbs img.flex-active,
.bc-sp__media .flex-control-thumbs img:hover{
  opacity:1;
  border-color: var(--c-black);
} */


/* thumbs => horizontal slider */
.bc-sp__media .flex-control-thumbs{
  margin-top:14px !important;
  padding:0 46px; /* arrows space */
  list-style:none;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:10px;
  overflow:auto;
  scroll-behavior:smooth;
  -ms-overflow-style:none;
  scrollbar-width:none;
}
.bc-sp__media .flex-control-thumbs::-webkit-scrollbar{ display:none; }

.bc-sp__media .flex-control-thumbs li{
  flex:0 0 auto;
  width:72px !important;
  margin:0 !important;
}

/* ---------------------------------
   Product gallery slider + arrows
---------------------------------- */
.bc-sp__media .woocommerce-product-gallery{
  position: relative;
}

/* main arrows */
.bc-sp__media .bc-gallery__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.9);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index: 5;
}
.bc-sp__media .bc-gallery__nav:hover{
  background:#fff;
  border-color:var(--c-black);
}
.bc-sp__media .bc-gallery__prev{ left:12px; }
.bc-sp__media .bc-gallery__next{ right:12px; }

/* thumbs slider wrapper */
.bc-sp__media .bc-thumbs-wrap{
  position: relative;
  margin-top: 14px !important;
}

/* thumbs list => horizontal slider */
.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs{
  margin:0 !important;
  padding:0 46px;              /* space for arrows */
  list-style:none;
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:10px;
  overflow:auto;
  scroll-behavior:smooth;
  -ms-overflow-style:none;
  scrollbar-width:none;
}
.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs::-webkit-scrollbar{ display:none; }

.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs li{
  flex:0 0 auto;
  width:72px !important;
  margin:0 !important;
}
.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs img{
  width:100%;
  height:auto;
  display:block;
  border:1px solid var(--border);
  border-radius:14px;
  opacity:.9;
  background:#fff;
}
.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs img.flex-active,
.bc-sp__media .bc-thumbs-wrap .flex-control-thumbs img:hover{
  opacity:1;
  border-color: var(--c-black);
}

/* thumbs arrows */
.bc-sp__media .bc-thumbs__btn{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
  height: 36px;
  border-radius: 999px;
  border: 0 solid var(--border);
  background: rgba(255, 255, 255, .9);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 5;
  line-height: 0;
  font-size: 17px;
}
.bc-sp__media .bc-thumbs__btn:hover{
  background:#fff;
  border-color:var(--c-black);
}
.bc-sp__media .bc-thumbs__prev{ left:0; }
.bc-sp__media .bc-thumbs__next{ right:0; }

@media (max-width: 768px){
  .bc-sp__media .bc-thumbs-wrap .flex-control-thumbs li{ width:60px !important; }
  .bc-sp__media .bc-gallery__nav{ width:38px; height:38px; }
}

/* ---------------------------
   Title/price/desc
--------------------------- */
.bc-sp__summary .product_title{
  margin:0 0 10px;
  font-size: 46px;
  line-height:1.05;
  letter-spacing:.01em;
}
.bc-sp__summary .price{
  margin:0 0 14px !important;
  font-size: 18px !important;
  font-weight: var(--fw-medium);
}
.bc-sp__summary .woocommerce-product-details__short-description{
  margin:0 0 18px;
  font-size:14px;
  line-height:1.75;
  color: rgba(0,0,0,.75);
}

/* ---------------------------
   Add to cart card
--------------------------- */
.bc-sp__summary form.cart{
  margin: 18px 0 12px !important;
  padding: 0;
  border: 0;
  border-radius: 18px;
  background: #fff;
  display: flex;
  gap: 0;
  align-items: center;
  justify-content: space-between;
}
.bc-sp__summary form.cart .quantity{ margin:0 !important; }
.bc-sp__summary .quantity input.qty{
  width:96px !important;
  height:48px !important;
  border:1px solid var(--border) !important;
  border-radius:999px !important;
  padding:0 14px !important;
  font-family: var(--font);
  font-weight: var(--fw-medium);
  margin-right: 10px;
}
.bc-sp__summary button.single_add_to_cart_button{
  height:48px;
  border-radius:999px !important;
  border:1px solid var(--c-black) !important;
  background: var(--c-black) !important;
  color:#fff !important;
  padding:0 22px !important;
  font-weight: var(--fw-medium) !important;
  letter-spacing:.02em;
  flex:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition: transform .12s ease, opacity .12s ease;
}
.bc-sp__summary button.single_add_to_cart_button:hover{
  opacity:.92;
  transform: translateY(-1px);
}

/* ---------------------------
   Wishlist plugin button fix
--------------------------- */
.single-product .woosw-btn{
  font-size:13px !important;
  line-height:1 !important;
  height:42px;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 16px !important;
  border-radius:999px !important;
  border:1px solid var(--border) !important;
  background:#fff !important;
  color: var(--text) !important;
  font-weight: var(--fw-medium) !important;
  margin-top: 12px !important;
}

/* ---------------------------
   Size chart + share pills
--------------------------- */
.bc-sp-tools{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 12px;
  margin-bottom: 12px;
}
.bc-sp-tool{
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 16px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  color: var(--text);
  font-size:13px;
  font-weight: var(--fw-medium);
  text-decoration:none;
  cursor:pointer;
  transition: transform .12s ease, border-color .12s ease;
}
.bc-sp-tool:hover{
  transform: translateY(-1px);
  border-color: var(--c-black);
}

/* ---------------------------
   Modal (size chart)
--------------------------- */
.bc-modal{ position:fixed; inset:0; display:none; z-index:9999; }
.bc-modal.is-open{ display:block; }
.bc-modal__backdrop{ position:absolute; inset:0; background: rgba(0,0,0,.5); }
.bc-modal__panel{
  position:relative;
  width:min(720px, calc(100% - 30px));
  margin: 8vh auto;
  background:#fff;
  border:1px solid var(--border);
  border-radius:18px;
  padding:18px;
}
.bc-modal__head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.bc-modal__title{ margin:0; font-size:18px; }
.bc-modal__close{
  width:40px; height:40px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  cursor:pointer;
}

/* ---------------------------
   Below section spacing
--------------------------- */
.bc-sp__below{ margin-top: 34px; }
.single-product .woocommerce-tabs{
  padding-top: 24px;
  border-top:1px solid var(--border);
}

/* Related title */
.bc-related{ margin-top: 48px; }
.bc-related > h2{ margin:0 0 18px; font-size:28px; }

/* ---------------------------
   Responsive
--------------------------- */
@media (max-width: 980px){
  .bc-sp__grid{
    flex-direction: column;
    gap: 24px;
  }
  .bc-sp__media{
    flex: 0 0 auto;
    max-width: 100%;
  }
  .bc-sp__summary{
    position: static;
    top:auto;
    flex: 0 0 auto;
  }
  /* .bc-sp__media .flex-control-thumbs{
    grid-template-columns: repeat(5, minmax(0,1fr));
  } */
  .bc-sp__media .woocommerce-product-gallery__image img{
    max-height: 520px;
  }
  .bc-sp__summary form.cart{
    flex-direction: column;
    align-items: stretch;
  }
}


/* Disable WPClever wishlist popup */
/* .woosw-popup,
.woosw-popup-overlay{
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
body.woosw-popup-open{
  overflow: auto !important;
} */


/* Wishlist loading state */
.woosw-btn.is-loading{
  opacity: .6;
  pointer-events: none;
}










/* ------------------------------
   Woo Gallery arrows (flexslider)
------------------------------- */
.bc-sp__media .woocommerce-product-gallery .flex-direction-nav{
  margin:0;
  padding:0;
  list-style:none;
}

.bc-sp__media .woocommerce-product-gallery .flex-direction-nav a{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.9);
  display:flex !important;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#111;
  z-index:9;
  opacity:1 !important;
}

.bc-sp__media .woocommerce-product-gallery .flex-direction-nav a:hover{
  background:#fff;
  border-color:var(--c-black);
}

.bc-sp__media .woocommerce-product-gallery .flex-direction-nav a.flex-prev{ left:12px; }
.bc-sp__media .woocommerce-product-gallery .flex-direction-nav a.flex-next{ right:12px; }

/* Woo puts text via :before sometimes; keep simple */
.bc-sp__media .woocommerce-product-gallery .flex-direction-nav a:before{
  font-size:24px;
  line-height:1;
}







/* =========================================================
   Premium "Added to cart" toast (single product)
========================================================= */
body.single-product .woocommerce-notices-wrapper{
  position: fixed;
  top: 86px;                 /* header ke neeche */
  right: 18px;
  width: min(380px, calc(100vw - 36px));
  z-index: 99999;
  pointer-events: none;
}

body.single-product .woocommerce-notices-wrapper > *{
  pointer-events: auto;
}

/* card */
body.single-product .woocommerce-message.bc-notice,
body.single-product .woocommerce-info.bc-notice,
body.single-product .woocommerce-error.bc-notice{
  border: 0 !important;
  background: rgba(255,255,255,.86);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 18px;
  padding: 14px 14px;
  margin: 0 0 12px 0 !important;
  box-shadow: 0 18px 55px rgba(0,0,0,.14);
  position: relative;
  overflow: hidden;

  display: grid;
  grid-template-columns: 34px 1fr auto;
  align-items: center;
  column-gap: 12px;

  transform: translateY(-10px);
  opacity: 0;
  transition: transform .22s ease, opacity .22s ease;
}

body.single-product .woocommerce-message.bc-notice.is-in,
body.single-product .woocommerce-info.bc-notice.is-in,
body.single-product .woocommerce-error.bc-notice.is-in{
  transform: translateY(0);
  opacity: 1;
}

body.single-product .woocommerce-message.bc-notice.is-out,
body.single-product .woocommerce-info.bc-notice.is-out,
body.single-product .woocommerce-error.bc-notice.is-out{
  transform: translateY(-10px);
  opacity: 0;
}

/* left icon */
body.single-product .bc-notice__icon{
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(17,17,17,.08);
  color: #111;
  font-weight: 700;
  flex: 0 0 auto;
}

/* content */
body.single-product .bc-notice__content{
  min-width: 0;
  color: #111;
  font-size: 13.5px;
  line-height: 1.35;
}

/* remove Woo default check pseudo */
body.single-product .woocommerce-message.bc-notice::before,
body.single-product .woocommerce-info.bc-notice::before,
body.single-product .woocommerce-error.bc-notice::before{
  display: none !important;
  content: none !important;
}

/* actions */
body.single-product .bc-notice__actions{
  display: flex;
  align-items: center;
  gap: 10px;
}

/* CTA button */
body.single-product .bc-notice__actions .button.wc-forward{
  border: 0 !important;
  background: #111 !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 10px 14px !important;
  font-size: 12.5px !important;
  line-height: 1 !important;
  height: auto !important;
  box-shadow: none !important;
  white-space: nowrap;
}

body.single-product .bc-notice__actions .button.wc-forward:hover{
  opacity: .92;
}

/* close button (minimal) */
body.single-product .bc-notice-close{
  width: 30px;
  height: 30px;
  border-radius: 999px;
  border: 0;
  background: rgba(17,17,17,.06);
  cursor: pointer;
  display: grid;
  place-items: center;
  color: #111;
  font-size: 18px;
  line-height: 1;
}

body.single-product .bc-notice-close:hover{
  background: rgba(17,17,17,.10);
}

/* subtle top accent + progress bar */
body.single-product .woocommerce-message.bc-notice::after,
body.single-product .woocommerce-info.bc-notice::after,
body.single-product .woocommerce-error.bc-notice::after{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2px;
  background: rgba(17,17,17,.10);
}

/* progress (auto-hide) */
body.single-product .woocommerce-message.bc-notice.has-progress .bc-notice__progress{
  position: absolute;
  left: 0;
  bottom: 0;
  height: 3px;
  width: 100%;
  background: rgba(17,17,17,.14);
  transform-origin: left;
  animation: bcNoticeProgress 4.5s linear forwards;
}

@keyframes bcNoticeProgress{
  from{ transform: scaleX(1); }
  to{ transform: scaleX(0); }
}

@media (max-width: 768px){
  body.single-product .woocommerce-notices-wrapper{
    top: 78px;
    right: 12px;
    width: calc(100vw - 24px);
  }
}