.nebulo-ad-slot {
  display: none !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 0;
  margin: 0 auto;
  padding: 0;
  border: 0;
  overflow-x: clip;
  background: transparent;
  flex: 0 0 auto;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
):empty {
  display: none;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
):not(:empty) {
  display: block;
  width: min(100%, 728px);
  height: 90px;
  max-height: 90px;
  margin-block: 20px;
  overflow: hidden;
}

/* The providers return a multi-card native unit. Present its first creative as
   one conventional horizontal banner and keep the remaining cards out of flow. */
:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) > [class$="__stand-name"] {
  display: none !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) > [class$="__stand"] {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) > [class$="__stand"] > [class$="__bn-container"] {
  display: none !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) > [class$="__stand"] > [class$="__bn-container"]:first-child {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) [class$="__bn"] {
  display: grid !important;
  grid-template-columns: 144px minmax(0, 1fr) !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) [class$="__img-container"],
:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) [class$="__img"] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 144px !important;
  height: 90px !important;
  min-height: 0 !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) [class$="__title"] {
  grid-column: 2 !important;
  grid-row: 1 !important;
  display: flex !important;
  align-items: center !important;
  width: auto !important;
  height: 90px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  overflow: hidden !important;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) :is(img, video, object, embed, iframe) {
  max-width: 100% !important;
  border: 0;
}

:where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) :is(img, video) {
  height: auto;
}

@media (max-width: 820px) {
  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ):not(:empty) {
    margin-block: 16px;
  }
}

@media (max-width: 520px) {
  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ):not(:empty) {
    width: min(100%, 320px);
    height: 60px;
    max-height: 60px;
    margin-block: 12px;
  }

  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ) [class$="__bn"] {
    grid-template-columns: 88px minmax(0, 1fr) !important;
  }

  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ) [class$="__img-container"],
  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ) [class$="__img"] {
    width: 88px !important;
    height: 60px !important;
  }

  :where(
    #container-3d031e2f9182af165859630af77aff88,
    #container-75aa7928ad9b146d0b2ae226da2283c3
  ) [class$="__title"] {
    height: 60px !important;
    padding: 6px 10px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
}

/* Chat owns the full viewport, so its page-level ads use the empty space beside
   the sign-in card. They disappear after sign-in instead of covering the app. */
body[data-ad-layout="chat"] > :where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) {
  position: fixed;
  z-index: 60;
  bottom: 20px;
  width: min(280px, calc((100vw - 408px) / 2 - 24px));
  height: 90px;
  max-height: 90px;
  margin: 0;
  overflow: clip;
}

body[data-ad-layout="chat"] > #container-3d031e2f9182af165859630af77aff88 {
  left: 16px;
}

body[data-ad-layout="chat"] > #container-75aa7928ad9b146d0b2ae226da2283c3 {
  right: 16px;
}

body[data-ad-layout="chat"].chat-authenticated > :where(
  #container-3d031e2f9182af165859630af77aff88,
  #container-75aa7928ad9b146d0b2ae226da2283c3
) {
  display: none !important;
}

@media (max-width: 760px) {
  body[data-ad-layout="chat"]:not(.chat-authenticated) #login-screen {
    box-sizing: border-box;
    padding-bottom: 122px !important;
  }

  body[data-ad-layout="chat"] > #container-3d031e2f9182af165859630af77aff88 {
    right: auto;
    bottom: 10px;
    left: 50%;
    width: min(320px, calc(100vw - 24px));
    height: 60px;
    max-height: 60px;
    transform: translateX(-50%);
  }

body[data-ad-layout="chat"] > #container-75aa7928ad9b146d0b2ae226da2283c3 {
  display: none !important;
}

}

/* Skyscraper rails (160x300 provider units). Fixed side rails rendered only
   on wide viewports, and only once the provider injects its iframe, so empty
   or blocked rails never reserve space or cover content. */
.nebulo-skyscraper {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  width: 160px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: hidden;
  z-index: 60;
  display: none;
}
.nebulo-skyscraper.left {
  left: 12px;
}
.nebulo-skyscraper.right {
  right: 12px;
}
@media (min-width: 1150px) {
  .nebulo-skyscraper:has(> iframe) {
    display: block;
  }
}
@media (max-width: 1149.98px) {
  .nebulo-skyscraper {
    display: none !important;
  }
}
