/* Shared responsive safety rules for ScreenPlayDaily ad inventory. */
.ad-wrap,
.ad-zone,
.article-ad-slot,
.spd-ad-wrap,
.spd-ad-placement,
.sidebar-ad-card {
  box-sizing: border-box;
  max-width: 100%;
}

[id^="div-gpt-ad-"] {
  box-sizing: border-box;
  max-width: 100%;
  margin-inline: auto;
  text-align: center;
}

[id^="div-gpt-ad-"] iframe,
[id^="div-gpt-ad-"] ins {
  max-width: 100% !important;
}

@media (max-width: 1024px) {
  .sidebar-ad-card,
  .article-sidebar-ad,
  .spd-ad-wrap--sidebar {
    position: static !important;
    top: auto !important;
  }

  .ad-wrap,
  .ad-zone,
  .article-ad-slot,
  .spd-ad-wrap,
  .spd-ad-placement {
    width: 100%;
    padding-inline: 16px;
    overflow: visible;
  }

  [id^="div-gpt-ad-"] {
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .ad-wrap,
  .ad-zone,
  .article-ad-slot,
  .spd-ad-wrap,
  .spd-ad-placement {
    padding-inline: 12px;
    margin-block: 18px;
  }

  .desktop-only,
  .article-sidebar-ad,
  .sidebar-ad-card {
    display: none !important;
  }

  .mobile-only {
    display: flex !important;
  }

  [id^="div-gpt-ad-"] iframe,
  [id^="div-gpt-ad-"] ins {
    margin-inline: auto !important;
  }
}

@media (max-width: 359px) {
  .ad-wrap,
  .ad-zone,
  .article-ad-slot,
  .spd-ad-wrap,
  .spd-ad-placement {
    /* Preserve the full viewport width required by 320px mobile creatives. */
    padding-inline: 0;
  }
}

/* The homepage leader is banner-only on phones; do not reserve MPU height. */
@media (max-width: 767px) {
  #div-gpt-ad-leaderboard {
    min-height: 100px !important;
  }
}

@media print {
  .ad-wrap,
  .ad-zone,
  .article-ad-slot,
  .spd-ad-wrap,
  .spd-ad-placement,
  .sidebar-ad-card {
    display: none !important;
  }
}
