/* Shared ad layout for entity pages and both screeners. Width belongs to the
   existing footer rules; responsive creatives may grow only vertically. */
.footer-ad-placeholder { min-width: 0; }
.footer-ad-placeholder > * { min-width: 0; max-width: 100%; }
.footer-ad-placeholder img,
.footer-ad-placeholder video { height: auto; }
.mobile-bottom-ad { display: none; }
@media (max-width: 559px) {
  :root { --mobile-ad-space: calc(var(--mobile-bottom-ad-height, 50px) + env(safe-area-inset-bottom)); }
  html[data-ad-display-mode="off"] { --mobile-ad-space: 0px; }
  html:has(.mobile-bottom-ad), body:has(.mobile-bottom-ad) { overflow-y: hidden; }
  body:has(.mobile-bottom-ad) > .app-shell {
    min-height: 0;
    height: calc((100dvh - var(--mobile-ad-space)) * var(--ad-page-scale, 1));
    overflow-y: auto;
    overflow-x: hidden;
  }
  .mobile-bottom-ad {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 19;
    zoom: var(--ad-page-scale, 1);
    width: 100%;
    max-width: 100%;
    height: var(--mobile-ad-space);
    padding: 0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
    display: grid;
    place-items: center;
    box-sizing: border-box;
    overflow: hidden;
    border-top: 1px solid #bfbfbf;
    color: #777;
    background: #fafafa;
    font: 700 7px system-ui;
    letter-spacing: .1em;
    text-transform: uppercase;
  }
  html[data-ad-display-mode="off"] .mobile-bottom-ad { display: none; }
}
