/* ============================================================
   NetMile OTR — Ad Slot Styles
   Navy/amber theme, mobile-first, never breaks layout.
   ============================================================ */

.nm-ad {
  width: 100%;
  box-sizing: border-box;
  margin: 16px 0;
  border: 1px solid rgba(245, 158, 11, 0.15); /* amber border, subtle */
  border-radius: 8px;
  background: rgba(10, 15, 30, 0.6);         /* navy-deep tinted */
  overflow: hidden;
  position: relative;
}

/* Sponsored label */
.nm-ad__label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(148, 163, 184, 0.6);           /* slate-400 muted */
  padding: 4px 10px 2px;
  line-height: 1;
  border-bottom: 1px solid rgba(245, 158, 11, 0.08);
}

/* Inner content */
.nm-ad__inner {
  padding: 0;
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Placeholder (shown when AdSense publisher ID is not set) */
.nm-ad__placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 90px;
  background: repeating-linear-gradient(
    45deg,
    rgba(245, 158, 11, 0.04),
    rgba(245, 158, 11, 0.04) 10px,
    transparent 10px,
    transparent 20px
  );
  border-radius: 4px;
}

.nm-ad__placeholder span {
  font-size: 11px;
  color: rgba(148, 163, 184, 0.4);
  font-style: italic;
  text-align: center;
  padding: 8px;
}

/* AdSense ins element */
.nm-ad .adsbygoogle {
  display: block;
  width: 100% !important;
}

/* Direct-mode ad */
.nm-ad-direct__link {
  display: block;
  width: 100%;
  text-decoration: none;
}

.nm-ad-direct__img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 200px;
  object-fit: cover;
  border-radius: 0 0 6px 6px;
  transition: opacity 0.15s ease;
}

.nm-ad-direct__link:hover .nm-ad-direct__img {
  opacity: 0.9;
}

/* ============================================================
   Placement-specific sizing
   ============================================================ */

/* Below calculator results — full-width leaderboard */
.nm-ad--below-calculator,
.nm-ad--results-bottom {
  margin: 24px 0;
}

/* Between tabs / sections */
.nm-ad--between-tabs {
  margin: 20px 0;
  max-width: 728px;
  margin-left: auto;
  margin-right: auto;
}

/* Blog sidebar */
.nm-ad--blog-sidebar {
  margin: 0 0 20px 0;
  max-width: 300px;
}

/* Blog footer / between sections */
.nm-ad--blog-footer,
.nm-ad--blog-between-sections {
  margin: 32px auto;
  max-width: 728px;
}

/* Homepage bottom */
.nm-ad--homepage-bottom {
  margin: 32px auto;
  max-width: 970px;
}

/* ============================================================
   Mobile
   ============================================================ */
@media (max-width: 768px) {
  .nm-ad--between-tabs,
  .nm-ad--blog-footer,
  .nm-ad--blog-between-sections,
  .nm-ad--homepage-bottom {
    max-width: 100%;
    margin: 16px 0;
  }

  .nm-ad-direct__img {
    max-height: 120px;
  }

  .nm-ad__inner {
    min-height: 60px;
  }
}
