/* TemplateSpark — AdSense placement containers (CLS-safe, admin-tunable via CSS vars) */

:root {
  --ts-ad-wrap-my: 20px;
  --ts-ad-wrap-mx: 0px;
  --ts-ad-wrap-max-w: none;
  --ts-ad-wrap-radius: 16px;
  --ts-ad-wrap-border-style: dashed;
  --ts-ad-wrap-border-width: 1px;
  --ts-ad-wrap-border-color: #94a3b873;
  --ts-ad-wrap-bg: #f8fafc;
  --ts-ad-wrap-padding: 0px;
  --ts-ad-wrap-shadow: none;
  --ts-ad-label-color: #94a3b8;
  --ts-ad-label-bg: #f1f5f9;
  --ts-ad-label-border: #e2e8f0cc;
  --ts-ad-label-size: 10px;
  --ts-ad-label-py: 6px;
  --ts-ad-label-px: 12px;
}

.ts-ad-wrap {
  position: relative;
  margin: var(--ts-ad-wrap-my) var(--ts-ad-wrap-mx);
  max-width: var(--ts-ad-wrap-max-w, 100%);
  border-radius: var(--ts-ad-wrap-radius);
  border: var(--ts-ad-wrap-border-width) var(--ts-ad-wrap-border-style) var(--ts-ad-wrap-border-color);
  background: var(--ts-ad-wrap-bg);
  padding: var(--ts-ad-wrap-padding);
  box-shadow: var(--ts-ad-wrap-shadow);
  overflow: hidden;
  text-align: center;
}
.ts-ad-wrap:empty { display: none; }

.ts-ad-label {
  display: block;
  padding: var(--ts-ad-label-py) var(--ts-ad-label-px);
  font-size: var(--ts-ad-label-size);
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ts-ad-label-color);
  background: var(--ts-ad-label-bg);
  border-bottom: 1px solid var(--ts-ad-label-border);
}

.ts-ad-no-label .ts-ad-label { display: none; }

.ts-ad-wrap ins.adsbygoogle {
  display: block;
  margin: 0 auto;
}

.ts-ad-infeed-card {
  grid-column: 1 / -1;
  max-width: 100%;
}
@media (min-width: 640px) {
  .ts-ad-infeed-card { grid-column: span 1; }
}

.ts-ad-cat-sidebar {
  margin: 0 0 1.5rem;
}

body.ts-has-anchor-ad {
  padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px));
}
.ts-ad-anchor {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 40;
  margin: 0;
  border: none;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  pointer-events: none;
}
.ts-ad-anchor .ts-ad-label { display: none; }
.ts-ad-anchor ins.adsbygoogle { pointer-events: auto; }

.ts-ad-cat-leaderboard,
.ts-ad-cat-display { max-width: var(--ts-ad-wrap-max-w, 100%); }

@media (min-width: 1024px) {
  .ts-ad-cat-leaderboard:not([style*="--ts-ad-wrap-max-w"]) {
    max-width: 728px;
    margin-left: auto;
    margin-right: auto;
  }
}

body.ts-ads-off .ts-ad-wrap { display: none !important; }

/* Device targeting — plain CSS (Tailwind CDN does not scan PHP-generated classes). */
.ts-ad-dev-mobile-only { display: block; }
@media (min-width: 768px) {
  .ts-ad-dev-mobile-only { display: none !important; }
}

.ts-ad-dev-tablet-only { display: none; }
@media (min-width: 768px) {
  .ts-ad-dev-tablet-only { display: block; }
}
@media (min-width: 1024px) {
  .ts-ad-dev-tablet-only { display: none !important; }
}

.ts-ad-dev-desktop-only { display: none; }
@media (min-width: 1024px) {
  .ts-ad-dev-desktop-only { display: block; }
}

.ts-ad-dev-mobile { display: block; }
@media (min-width: 1024px) {
  .ts-ad-dev-mobile { display: none !important; }
}

.ts-ad-dev-desktop { display: none; }
@media (min-width: 768px) {
  .ts-ad-dev-desktop { display: block; }
}
