
/* BCL Affiliate Cards Pro — front-end */
.bcl-pc-wrap{
  width:100%;
  margin-left:auto;
  margin-right:auto;
  font-family: var(--bcl-font-family, inherit);
}

.bcl-pc-warning{
  margin: 0 0 10px 0;
  padding: 10px 12px;
  border-radius: 10px;
  background: rgba(245,158,11,0.10);
  border: 1px solid rgba(245,158,11,0.25);
  color: #7c2d12;
  font-size: 13px;
}

.bcl-pc-card{
  display:flex;
  gap: 18px;
  background: var(--bcl-card-bg, #fff);
  border: var(--bcl-card-border, 1px solid rgba(17,24,39,0.10));
  border-radius: var(--bcl-card-radius, 16px);
  padding: var(--bcl-card-padding, 20px);
  box-shadow: var(--bcl-card-shadow, 0 8px 24px rgba(2,6,23,0.10));
  min-height: var(--bcl-card-minh, auto);
  align-items: stretch;
  overflow:hidden;
}

.bcl-img-top .bcl-pc-card{
  flex-direction: column;
}

.bcl-pc-media{
  flex: 0 0 auto;
  width: min(var(--bcl-img-maxw, 220px), 100%);
}

.bcl-img-top .bcl-pc-media{
  width:100%;
}

.bcl-pc-imgbox{
  background: var(--bcl-img-bg, #fff);
  border-radius: var(--bcl-img-radius, 12px);
  padding: var(--bcl-img-padding, 12px);
  border: var(--bcl-img-border, 1px solid rgba(17,24,39,0.06));
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}

.bcl-pc-imgbox img{
  display:block;
  max-width: 100%;
  max-height: var(--bcl-img-maxh, 220px);
  object-fit: contain;
  border-radius: 10px;
}

.bcl-pc-imgph{
  width: 100%;
  height: var(--bcl-img-maxh, 220px);
  display:flex;
  align-items:center;
  justify-content:center;
  border: 1px dashed rgba(15,23,42,0.25);
  border-radius: 10px;
  color: rgba(15,23,42,0.65);
  font-size: 13px;
}

.bcl-pc-content{
  flex: 1 1 auto;
  display:flex;
  flex-direction: column;
  gap: 10px;
  min-width: 0;
}

.bcl-pc-topline{
  display:flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items:center;
}

.bcl-pc-badge{
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--bcl-badge-bg, rgba(17,24,39,0.08));
  border: 1px solid var(--bcl-badge-border, rgba(17,24,39,0.12));
  color: var(--bcl-badge-color, #111827);
  font-size: 12px;
  font-weight: 600;
}

.bcl-pc-promo{
  padding: 6px 10px;
  border-radius: 999px;
  background: var(--bcl-promo-bg, rgba(239,68,68,0.10));
  border: 1px solid var(--bcl-promo-border, rgba(239,68,68,0.22));
  color: var(--bcl-promo-color, #b91c1c);
  font-size: 12px;
  font-weight: 700;
}

.bcl-pc-title{
  color: var(--bcl-title-color, #0b1220);
  font-size: var(--bcl-title-size, 18px);
  font-weight: var(--bcl-title-weight, 700);
  line-height: 1.2;
  text-align: var(--bcl-align-title, left);
  text-decoration: none;
}

a.bcl-pc-title:hover{
  text-decoration: underline;
}

.bcl-pc-desc{
  color: var(--bcl-text-color, #334155);
  font-size: var(--bcl-text-size, 14px);
  font-weight: var(--bcl-text-weight, 400);
  line-height: 1.5;
  text-align: var(--bcl-align-desc, left);
}

.bcl-desc-clamp .bcl-pc-desc{
  display: -webkit-box;
  -webkit-line-clamp: var(--bcl-desc-lines, 2);
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bcl-pc-social{
  display:flex;
  align-items:center;
  gap: 8px;
  color: rgba(15,23,42,0.78);
  font-size: 13px;
  text-align: var(--bcl-align-meta, left);
}

.bcl-pc-stars{
  position: relative;
  display:inline-block;
  font-size: var(--bcl-stars-size, 14px);
  line-height: 1;
}
.bcl-pc-stars-bg{
  color: var(--bcl-stars-empty, rgba(15,23,42,0.22));
}
.bcl-pc-stars-fg{
  position:absolute;
  left:0;
  top:0;
  width: var(--bcl-stars-pct, 0%);
  overflow:hidden;
  white-space: nowrap;
  color: var(--bcl-stars-fill, #F59E0B);
}

.bcl-pc-dotsep{
  opacity: .5;
}

.bcl-pc-bottom{
  margin-top: auto;
  display:flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.bcl-pc-pricewrap{
  display:flex;
  flex-direction: column;
  gap: 6px;
  min-width: 160px;
}

.bcl-pc-price{
  text-align: var(--bcl-align-price, left);
  display:flex;
  align-items: baseline;
  gap: 10px;
  flex-wrap: wrap;
}

.bcl-pc-oldprice{
  text-decoration: line-through;
  opacity: 0.55;
  font-size: calc(var(--bcl-price-size, 22px) * 0.72);
  font-weight: 700;
}

.bcl-pc-newprice{
  color: var(--bcl-price-color, #0b1220);
  font-size: var(--bcl-price-size, 22px);
  font-weight: var(--bcl-price-weight, 800);
}

.bcl-pc-updated{
  font-size: 12px;
  opacity: .65;
}

.bcl-pc-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height: var(--bcl-btn-height, 46px);
  padding: 0 18px;
  border-radius: var(--bcl-btn-radius, 12px);
  background: var(--bcl-btn-bg, #FF9900);
  color: var(--bcl-btn-color, #111);
  font-weight: var(--bcl-btn-font-weight, 600);
  font-size: var(--bcl-btn-font-size, 16px);
  text-decoration:none;
  border: var(--bcl-btn-border-width, 0px) solid var(--bcl-btn-border-color, #D47A00);
  box-shadow: var(--bcl-btn-shadow, 0 8px 24px rgba(2,6,23,0.10));
  transition: transform .12s ease, background .12s ease, color .12s ease;
  text-align: center;
  white-space: nowrap;
}

.bcl-pc-btn:hover{
  background: var(--bcl-btn-bg-hover, #E88B00);
  color: var(--bcl-btn-color-hover, #111);
  transform: translateY(-1px);
}

.bcl-template-compact .bcl-pc-card{
  gap: 14px;
  padding: 16px;
}
.bcl-template-compact .bcl-pc-title{
  font-size: calc(var(--bcl-title-size, 18px) * 0.92);
}

@media (max-width: 720px){
  .bcl-pc-card{
    flex-direction: column;
  }
  .bcl-pc-media{
    width: 100%;
  }
}

/* Grid wrapper */
.bcl-pc-gridwrap{
  width: 100%;
  margin-left:auto;
  margin-right:auto;
}

.bcl-pc-grid{
  display: grid;
  grid-template-columns: repeat(var(--bcl-grid-cols-d, 3), minmax(0, 1fr));
  gap: var(--bcl-grid-gap, 16px);
}

@media (max-width: 1024px){
  .bcl-pc-grid{ grid-template-columns: repeat(var(--bcl-grid-cols-t, 2), minmax(0, 1fr)); }
}
@media (max-width: 640px){
  .bcl-pc-grid{ grid-template-columns: repeat(var(--bcl-grid-cols-m, 1), minmax(0, 1fr)); }
}

.bcl-layout-stack .bcl-pc-grid{
  grid-template-columns: 1fr !important;
}

/* Compare bar */
.bcl-pc-comparebar{
  margin: 0 0 10px 0;
  font-size: 13px;
  opacity: .8;
}

/* Carousel (front-end) */
.bcl-pc-carousel{
  display:flex;
  gap: 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  border-radius: 10px;
}
.bcl-pc-carousel::-webkit-scrollbar{ display:none; }

.bcl-pc-slide{
  flex: 0 0 100%;
  scroll-snap-align: start;
  display:flex;
  align-items:center;
  justify-content:center;
}
.bcl-pc-slide img{
  max-width: 100%;
  max-height: var(--bcl-img-maxh, 220px);
  object-fit: contain;
}

.bcl-pc-dots{
  margin-top: 10px;
  display:flex;
  gap: 6px;
  align-items:center;
  justify-content:center;
}
.bcl-pc-dot{
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(15,23,42,0.22);
  cursor:pointer;
}
.bcl-pc-dot.is-active{
  background: rgba(15,23,42,0.65);
}
