.opg-ad-slot {
    box-sizing: border-box;
    margin: 24px auto;
    max-width: 100%;
    min-width: 0;
    text-align: center;
}
.opg-ad-slot[hidden] { display: none !important; }
.opg-ad-label {
    display: block;
    margin: 0 0 6px;
    color: #9ca3af;
    font: 11px/16px -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    letter-spacing: .04em;
}
.opg-ad-frame {
    display: block;
    margin: 0 auto;
    border: 0;
    background: transparent;
    max-width: 100%;
}
.opg-ad-slot[data-opg-ad-slot="leaderboard"] { min-height: 72px; }
.opg-ad-slot[data-opg-ad-slot="native"] { min-height: 260px; }
.opg-ad-slot[data-opg-ad-slot="rectangle"] { min-height: 272px; }
.opg-ad-slot[data-opg-ad-slot="small-tower"],
.opg-ad-slot[data-opg-ad-slot="tower"] { display: none; }
.opg-ad-row { display: flex; justify-content: center; gap: 32px; flex-wrap: wrap; }
.opg-ad-row > .opg-ad-slot { margin-left: 0; margin-right: 0; }
@media (min-width: 504px) {
    .opg-ad-slot[data-opg-ad-slot="leaderboard"] { min-height: 82px; }
}
@media (min-width: 764px) {
    .opg-ad-slot[data-opg-ad-slot="leaderboard"] { min-height: 112px; }
}
@media (min-width: 900px) {
    .opg-ad-slot[data-opg-ad-slot="small-tower"] { display: block; width: 160px; min-height: 322px; }
}
@media (min-width: 1100px) {
    .opg-ad-slot[data-opg-ad-slot="tower"] { display: block; width: 160px; min-height: 622px; }
}
/* Player banners are part of the layout, never overlaid on game controls. */
.opg-ad-slot[data-opg-ad-slot="player"] { margin: 0 auto; min-height: 80px; padding: 4px 0; width: 100%; }
.opg-ad-slot[data-opg-ad-slot="player"] .opg-ad-frame[width="320"] { width: 320px; height: 50px; }
.opg-ad-slot[data-opg-ad-slot="player"] .opg-ad-frame[width="468"] { width: 468px; height: 60px; }
@media (min-width: 468px) {
    .opg-ad-slot[data-opg-ad-slot="player"] { min-height: 90px; }
}
.opg-ad-slot[data-opg-ad-slot="player"][data-opg-mounted="320x50"] { min-height: 80px; }
.opg-ad-slot[data-opg-ad-slot="player"][data-opg-mounted="468x60"] { min-height: 90px; }
