.native-ad-slot {
  width: 100%;
  max-width: 960px;
  margin: 48px auto;
  padding: 12px 0 20px;
  border-block: 1px solid #ccd0d8;
  overflow: clip;
}

.native-ad-slot[hidden],
.advertising-consent[hidden] {
  display: none;
}

.native-ad-label {
  margin: 0 0 12px;
  color: #565d68;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.native-ad-slot > div {
  width: 100%;
  min-width: 0;
}

.native-ad-slot[data-ad-preview="true"] > div {
  display: grid;
  min-height: 132px;
  place-items: center;
  padding: 20px;
  background: #f3f4f6;
  color: #565d68;
  border: 1px dashed #b4b9c7;
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
}

.advertising-consent {
  position: fixed;
  inset: auto 16px 16px;
  z-index: 40;
  max-width: 760px;
  margin-inline: auto;
  padding: 20px;
  background: #fff;
  color: #15171c;
  border: 1px solid #b4b9c7;
  box-shadow: 0 8px 32px #14204c29;
}

.advertising-consent h2 { margin: 0 0 8px; font-size: 20px; line-height: 1.3; }
.advertising-consent p { margin: 0; font-size: 14px; line-height: 1.6; }
.advertising-consent a { color: #244cf4; text-decoration: underline; text-underline-offset: 3px; }
.advertising-consent .analytics-actions { display: flex; gap: 12px; margin-top: 16px; }
.advertising-consent .analytics-actions button { flex: 1; min-height: 44px; padding: 10px 20px; border: 1px solid #244cf4; background: #fff; color: #244cf4; font: inherit; font-weight: 700; cursor: pointer; }
.advertising-consent .analytics-actions button:hover { background: #edf0ff; }
.advertising-consent .analytics-actions button:disabled { cursor: not-allowed; opacity: .65; background: #f3f4f6; }
.advertising-consent .analytics-actions button:focus-visible { outline: 2px solid #244cf4; outline-offset: 3px; }

@media (max-width: 600px) {
  .native-ad-slot { margin-block: 32px; }
  .native-ad-slot[data-ad-preview="true"] > div { min-height: 112px; }
  .advertising-consent .analytics-actions { flex-direction: column; }
}
