/*
 * The downloader advertisement, directly below the URL form.
 *
 * Restrained on purpose: it sits between the form and the result area, so it
 * must read as an advertisement and never as part of the tool. No card, no
 * border treatment competing with the result panel, no sticky or floating
 * behaviour, and nothing that could be mistaken for a download button.
 *
 * The creative itself is never cropped or height-capped - only the CONTAINER
 * reserves space, so the result area below does not jump when the ad fills.
 */

.downloader-ad {
    width: 100%;
    max-width: 980px;      /* the width the downloader shell already uses */
    margin: 28px auto;     /* clear air above and below; also keeps the ad
                              away from the Fetch button, so a miss on the
                              button cannot land on the advertisement */
    text-align: center;
}

.downloader-ad-label {
    margin-bottom: 6px;
    font-size: 11px;
    line-height: 1.4;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #a3aac2;        /* muted, matching .vds-ad-label */
}

/* The unit fills the container's width and nothing more. min-height comes
   from the placement (280px) and is emitted by _AdUnit only for a visitor who
   actually gets an advertisement. */
.downloader-ad .a2z-ad,
.downloader-ad .adsbygoogle {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
}

/* An Ad-Free subscriber gets no .a2z-ad at all; without this the label and
   its spacing would remain as an empty gap. :has() is supported by every
   browser this site targets; the fallback is a small label with nothing under
   it, which is harmless. */
.downloader-ad:not(:has(.a2z-ad)) {
    display: none;
}

@media (max-width: 576px) {
    .downloader-ad {
        margin: 20px auto;
        /* No horizontal overflow at 320px: the container is fluid and the
           creative is responsive (data-full-width-responsive). */
        max-width: 100%;
    }
}
