
  /** Common styles across all window sizes. */
  .swg-dialog,
  .swg-toast,
  .publisher-toast {
    box-sizing: border-box;
  }

  .swg-toast {
    background-color: rgba(255, 255, 255, 1) !important;
    max-height: 46px !important;
  }

  .publisher-toast {
    background-color: transparent !important;
    max-width: 360px !important;
  }

  .swg-toast,
  .publisher-toast {
    position: fixed !important;
    bottom: 0 !important;
    z-index: 2147483647 !important;
    border: none !important;
  }

  /**
  * Wide desktop screen support, when width is >= 871px and height is >= 641px.
  */
  @media (min-width: 871px) and (min-height: 641px) {
    .swg-dialog.swg-wide-dialog {
      left: -435px !important;
    }

    .swg-dialog.swg-wide-dialog,
    .swg-toast,
    .publisher-toast {
      width: 870px !important;
    }
  }

  /** Tablet/Medium screen support, when width OR height is <= 640px. */
  @media (max-width: 640px), (max-height: 640px) {
    .swg-dialog,
    .swg-toast {
      width: 480px !important;
      left: -240px !important;
      margin-inline-start: calc(100vw - 100vw / 2) !important;
      border-top-left-radius: 8px !important;
      border-top-right-radius: 8px !important;
      box-shadow:
        rgba(60, 64, 67, 0.3) 0 1px 1px,
        rgba(60, 64, 67, 0.15) 0 1px 4px 1px !important;
    }

    .publisher-toast {
      width: 480px !important;
      left: -240px !important;
      margin-inline-start: calc(100vw - 100vw / 2) !important;
    }

    [dir='rtl'] .swg-dialog,
    [dir='rtl'] .swg-toast,
    [dir='rtl'] .publisher-toast {
      margin-inline-start: calc(100vw - 100vw / 2 - 240px) !important;
    }
  }

  /** Desktop/Large screen support, when width AND height are >= 641px. */
  @media (min-width: 641px) and (min-height: 641px) {
    .swg-dialog,
    .swg-toast,
    .publisher-toast {
      width: 630px !important;
    }

    .swg-dialog {
      left: -315px !important;
      margin-inline-start: calc(100vw - 100vw / 2) !important;
      background-color: transparent !important;
      border: none !important;
    }

    [dir='rtl'] .swg-dialog {
      margin-inline-start: calc(100vw - 100vw / 2 - 315px) !important;
    }

    .swg-toast {
      border-radius: 4px !important;
      bottom: 8px !important;
      box-shadow:
        0 3px 1px -2px rgb(0 0 0 / 20%),
        0 2px 2px 0 rgb(0 0 0 / 14%),
        0 1px 5px 0 rgb(0 0 0 / 12%) !important;
      left: 8px !important;
    }

    .publisher-toast {
      bottom: 8px !important;
      right: 30px !important;
    }
  }

  /** Phone/Small screen support, when width is <= 480px. */
  @media (max-width: 480px) {
    .swg-dialog,
    .swg-toast,
    .publisher-toast {
      width: 100% !important;
      max-width: 100% !important;
      left: 0 !important;
      right: 0 !important;
      margin-inline-start: 0 !important;
    }
  }

  /**
  * Class applied to content page to disable scrolling.
  */
  html.swg-disable-scroll,
  html.swg-disable-scroll * {
    overflow: hidden !important;
  }
