/* ==========================================================================
   Web house-ads (offlineads.tallact.tech) — banner slot + full-screen overlay
   for interstitial / rewarded. See app/js/ads.js.
   ========================================================================== */

/* banner — centered under the nav screens; never shrunk by the screen's flex
   column (that collapsed it, like the season-pass bar). */
.ad-slot { flex:0 0 auto; display:flex; justify-content:center; align-items:center; padding:8px 0 4px; }
.ad-banner { position:relative; display:inline-block; max-width:100%; line-height:0;
  border-radius:10px; overflow:hidden; border:1px solid var(--line-gold);
  box-shadow:0 4px 14px rgba(0,0,0,.28); background:rgba(0,0,0,.2); }
.ad-banner img { width:100%; height:auto; display:block; }

/* the small "Ad" disclosure label (banner + overlay bar) */
.ad-tag { font-size:8px; font-weight:800; letter-spacing:.5px; color:#0c1f16;
  background:rgba(224,164,44,.92); padding:1px 6px; border-radius:4px; line-height:1.5; }
.ad-banner .ad-tag { position:absolute; top:5px; right:5px; z-index:2; }

/* full-screen interstitial / rewarded overlay */
.ad-overlay { position:fixed; inset:0; z-index:1000; display:grid; place-items:center;
  padding:16px; background:rgba(4,12,9,.84); backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px); animation:adFade .2s ease-out; }
@keyframes adFade { from { opacity:0; } to { opacity:1; } }
.ad-fs { display:flex; flex-direction:column; align-items:center; gap:12px;
  width:min(420px,94vw); max-height:94vh; }
.ad-fs__bar { display:flex; align-items:center; justify-content:space-between; width:100%; }
.ad-fs__close { font-size:12px; font-weight:800; color:var(--bone); cursor:pointer;
  background:rgba(0,0,0,.42); border:1px solid var(--line-soft); border-radius:999px; padding:6px 13px; }
.ad-fs__close:disabled { opacity:.55; cursor:default; }
.ad-fs__creative { display:block; flex:1; min-height:0; line-height:0; border-radius:14px;
  overflow:hidden; box-shadow:0 18px 48px rgba(0,0,0,.5); }
.ad-fs__creative img { max-height:68vh; max-width:100%; display:block; object-fit:contain; }
.ad-fs__cta { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; }
.ad-fs__icon { width:22px; height:22px; border-radius:6px; }
