.ad-layout {
  display: grid;
  grid-template-areas: "content content" "left right";
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  width: min(100%, 1840px);
  margin-inline: auto;
  align-items: start;
}
.ad-main { grid-area: content; min-width: 0; }
.ad-rail { min-width: 0; padding: 12px; }
.ad-rail--left { grid-area: left; }
.ad-rail--right { grid-area: right; }
native-ad {
  display: block;
  box-sizing: border-box;
  width: min(100%, 1280px);
  min-width: 0;
  margin: 20px auto;
  padding: 12px;
  border-block: 1px solid #586174;
  background: #101b2b;
}
.native-ad-label {
  display: block;
  margin: 0 0 10px;
  font: 11px/1.5 Arial, sans-serif;
  color: #bac6d8;
  text-align: center;
}
.native-ad-content { min-height: 250px; }
native-ad iframe { display: block; width: 100%; border: 0; }
native-ad[data-status="unavailable"] { display: none; }
.ad-rail native-ad { max-width: 400px; margin-block: 0; }
.game-shell > native-ad,
.compact-game-shell > native-ad { grid-column: 1 / -1; max-width: 1040px; }
@media (min-width: 1760px) {
  .ad-layout {
    grid-template-areas: "left content right";
    grid-template-columns: 250px minmax(0, 1280px) 250px;
    gap: 16px;
    padding-inline: 14px;
    box-sizing: border-box;
  }
  .ad-rail { position: sticky; top: 16px; padding: 0; }
}
@media (max-width: 640px) {
  .ad-layout { grid-template-areas: "content" "left" "right"; grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .ad-rail { padding: 0 12px; }
  native-ad { padding: 10px; }
}
