/**
 * PHLX Theme V2 advertising presentation layer.
 *
 * These styles distinguish advertisements from rewards/tasks and coordinate
 * plugin-owned sticky formats. They do not select, render or track ads.
 */

.phlx-v2-ad-placement {
  position: relative;
  width: min(100%, var(--phlx-v2-container-app));
  margin: var(--phlx-v2-space-6) auto;
  padding: clamp(0.45rem, 1.2vw, 0.75rem);
  overflow: clip;
  border: 1px solid color-mix(in srgb, var(--phlx-v2-border) 82%, transparent);
  border-radius: var(--phlx-v2-radius-md);
  background: color-mix(in srgb, var(--phlx-v2-surface-2) 74%, transparent);
  isolation: isolate;
}

.phlx-v2-ad-placement[hidden],
.phlx-v2-ad-placement > [hidden] {
  display: none !important;
}

.phlx-v2-ad-placement__label {
  display: block;
  margin: 0 0 0.42rem;
  color: var(--phlx-v2-text-soft);
  font-size: 0.75rem;
  font-weight: 750;
  letter-spacing: 0.075em;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
}

.phlx-v2-ad-placement > .phlx-adpro,
.phlx-v2-ad-placement > .phlx-adpro-placeholder,
.phlx-v2-ad-placement > .phlx-smart-ad-slot,
.phlx-v2-ad-placement > .phlx-adpro-slot {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}

.phlx-v2-ad-placement .phlx-adpro-slot,
.phlx-v2-ad-placement .phlx-smart-ad-slot {
  margin: 0 auto;
  border-color: color-mix(in srgb, var(--phlx-v2-border) 70%, transparent);
  background: var(--phlx-v2-surface);
  box-shadow: none;
}

.phlx-v2-ad-placement .phlx-adpro-slot__label {
  color: var(--phlx-v2-text-soft);
  opacity: 1;
}

/* Direct sponsor links remain visibly separate from emerald reward actions. */
.phlx-v2-ad-placement .phlx-adpro-sponsored-link {
  min-height: 44px;
  border: 1px solid var(--phlx-v2-border-strong);
  background: var(--phlx-v2-surface-2);
  color: var(--phlx-v2-text);
  box-shadow: none;
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, currentColor 35%, transparent);
  text-underline-offset: 0.18em;
}

.phlx-v2-ad-placement .phlx-adpro-sponsored-link:hover {
  background: var(--phlx-v2-surface-3);
  color: var(--phlx-v2-text);
}

.phlx-v2-ad-placement--zone-articles_archive_inline,
.phlx-v2-ad-placement--zone-news_archive_inline,
.phlx-v2-content-grid > .phlx-v2-ad-placement {
  grid-column: 1 / -1;
}

.phlx-v2-ad-placement--zone-article_after_intro,
.phlx-v2-ad-placement--zone-article_content,
.phlx-v2-ad-placement--zone-article_content_end,
.phlx-v2-ad-placement--zone-news_end {
  width: min(100% - 1.5rem, var(--phlx-v2-container-reading));
}

.phlx-v2-ad-placement--zone-video_above,
.phlx-v2-ad-placement--zone-video_below,
.phlx-v2-ad-placement--zone-offerwall_disclosure_area,
.phlx-v2-ad-placement--zone-earn_sections,
.phlx-v2-ad-placement--zone-earn_groups {
  margin-block: var(--phlx-v2-space-5);
}

/* Plugin-owned sticky units are allowed to display only after V2 detects that
 * Smart Ads actually emitted one. The plugin still decides whether to render. */
body:not(.phlx-smart-ads-allow-sticky) .phlx-adpro-slot--sticky,
body:not(.phlx-smart-ads-allow-sticky) .phlx-adpro-slot--mobile_anchor,
body:not(.phlx-smart-ads-allow-sticky) .phlx-adpro-slot--sticky_footer {
  display: none !important;
}

body.phlx-smart-ads-allow-sticky .phlx-adpro-slot--mobile_anchor,
body.phlx-smart-ads-allow-sticky .phlx-adpro-slot--sticky_footer {
  max-height: min(34vh, 180px);
  overflow: auto;
  overscroll-behavior: contain;
}

body.phlx-v2-has-sticky-ad .phlx-v2-public-shell {
  padding-bottom: calc(var(--phlx-v2-mobile-ad-height) + env(safe-area-inset-bottom));
}

@media (max-width: 920px) {
  body.phlx-v2-has-mobile-anchor .phlx-v2-mobile-nav {
    position: static;
  }

  body.phlx-v2-has-mobile-anchor .phlx-v2-app-content {
    padding-bottom: calc(var(--phlx-v2-mobile-ad-height) + env(safe-area-inset-bottom) + 1rem);
  }
}

@media (max-width: 640px) {
  .phlx-v2-ad-placement {
    width: 100%;
    margin-block: var(--phlx-v2-space-5);
    padding: 0.5rem;
    border-radius: var(--phlx-v2-radius-sm);
  }

  .phlx-v2-ad-placement--zone-article_after_intro,
  .phlx-v2-ad-placement--zone-article_content,
  .phlx-v2-ad-placement--zone-article_content_end,
  .phlx-v2-ad-placement--zone-news_end {
    width: min(100% - 1rem, var(--phlx-v2-container-reading));
  }
}

@media (prefers-reduced-motion: reduce) {
  .phlx-adpro-placeholder {
    animation: none !important;
    background-position: 0 0 !important;
  }
}

@media (min-width: 921px) {
  body.phlx-v2-has-sticky-ad .phlx-v2-app-shell {
    padding-bottom: calc(var(--phlx-v2-mobile-ad-height) + env(safe-area-inset-bottom));
  }
}

.phlx-v2-ad-placement { contain: layout paint; }
@media (prefers-reduced-data: reduce) { .phlx-v2-ad-placement { min-height: 0; } }
