/* Banner ad container. Reserves stable height so real ads never shift the
   layout when they load; stays fully collapsed when no provider/preview
   is active (see js/components/ad-slot.js). */
.ad-slot{
  display:none;
}
.ad-slot.ad-banner{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  width:100%;min-height:90px;
  background:var(--surface-2);border:1px dashed var(--border);
  border-radius:var(--radius-md);
  margin-block:var(--space-4);
  overflow:hidden;
}
.ad-slot-label{
  font-size:.66rem;letter-spacing:.04em;text-transform:uppercase;
  color:var(--text-faint);font-weight:700;
}
.ad-slot-body{width:100%;min-height:1px}
.ad-slot-dev-note{font-size:.72rem;color:var(--text-faint)}

/* Never let a banner sit under fixed bottom nav / sticky CTAs. */
.sticky-cta ~ .ad-slot,
.ad-slot + .sticky-cta{
  margin-bottom:var(--space-6);
}
