.bscy-placement,
.bscy-banner-slot{
  margin:12px 0;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
}
.bscy-placement a,
.bscy-banner-slot a{
  display:block;
  text-decoration:none;
}
.bscy-placement img,
.bscy-banner-slot img{
  width:100%;
  height:auto;
  display:block;
}

.bscy-placement-media{
  width:100%;
  background:#fff;
}
.bscy-placement-media--ratio{
  position:relative;
  overflow:hidden;
}
.bscy-placement-media--ratio img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.bscy-placement--mode-contain .bscy-placement-media--ratio img{
  object-fit:contain;
}
.bscy-placement-label,
.bscy-banner-label{
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#64748b;
  padding:6px 12px;
  border-bottom:1px solid #e2e8f0;
  background:#f8fafc;
}

.bscy-adsense-slot{
  margin:12px 0;
  text-align:center;
}
.bscy-adsense-slot ins.adsbygoogle{
  display:block;
  margin:0 auto;
}

/* Discreet marketplace hint (adblock-resistant classes) */
.bscy-adsense-slot .bscy-promo-hint{
  display:none;
}
.bscy-promo-hint{
  display:flex;
  justify-content:flex-end;
  margin-top:6px;
}
.bscy-promo-hint__link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.78rem;
  color:#94a3b8;
  text-decoration:none;
  padding:2px 6px;
  border-radius:999px;
}
.bscy-promo-hint__link:hover{
  color:#64748b;
  background:#f1f5f9;
  text-decoration:none;
}
.bscy-promo-hint__link i{
  font-size:.9rem;
}

/* Hide placements on mobile when admin disabled them per slot */
@media (max-width: 991.98px){
  .bscy-hide-mobile{
    display:none !important;
  }
}

/* Card wrapper for sidebar ads (keeps UI consistent with Bootstrap cards) */
.bscy-ad-card .bscy-adsense-slot{
  margin:0;
}
.bscy-ad-card .bscy-placement,
.bscy-ad-card .bscy-banner-slot{
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
.bscy-ad-card .bscy-placement-label{
  border-radius:0;
}

/* Manual (admin) snippet container */
.bscy-manual-ad{
  width:100%;
  overflow:hidden;
}

/* Admin screenshot "map mode" placeholder (looks like a real banner container) */
.bscy-placement--map .bscy-placement-media{
  position:relative;
}
.bscy-placement--map .bscy-map-placeholder{
  position:absolute;
  inset:10px;
  border:2px dashed rgba(245,158,11,.90);
  border-radius:12px;
  background:transparent;
  pointer-events:none;
}
.bscy-placement--map .bscy-map-placeholder__content{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:14px;
  text-align:center;
  color:#0f172a;
}
.bscy-placement--map .bscy-map-placeholder__headline{
  font-weight:800;
  font-size:.95rem;
}
.bscy-placement--map .bscy-map-placeholder__sub{
  font-weight:600;
  font-size:.78rem;
  color:#475569;
  max-width: 620px;
}

