.modal-xl {
  max-width: 98%;
}

.modal-header {
  background-color: $modal-body-bg;

  .page-title,
  .modal-title {
    .modal-title-with-label span {
      vertical-align: middle;
      display: inline-block;
    }

    .color-label {
      font-size: $gl-font-size;
      padding: $gl-vert-padding $label-padding-modal;
      vertical-align: middle;
    }
  }

  .page-title {
    margin-top: 0;
  }
}

.modal-body {
  background-color: $modal-body-bg;
  line-height: $line-height-base;
  min-height: $modal-body-height;
  position: relative;
  padding: #{3 * $grid-size} #{2 * $grid-size};
  text-align: left;

  .form-actions {
    margin: #{2 * $grid-size} #{-2 * $grid-size} #{-2 * $grid-size};
  }

  .text-danger {
    font-weight: $gl-font-weight-bold;
  }
}

.modal-footer {
  display: flex;
  flex-direction: row;

  .btn + .btn {
    margin-left: $grid-size;
  }

  @include media-breakpoint-down(xs) {
    flex-direction: column;

    .btn + .btn {
      margin-left: 0;
      margin-top: $grid-size;
    }
  }

  @include media-breakpoint-up(sm) {
    .btn:first-of-type {
      margin-left: auto;
    }
  }
}

body.modal-open {
  overflow: hidden;
}

.modal-no-backdrop {
  @extend .modal-dialog;

  .modal-content {
    box-shadow: none;
  }
}

.modal {
  background-color: $black-transparent;
  z-index: 2100;

  @include media-breakpoint-up(md) {
    .modal-dialog {
      margin: 30px auto;
    }
  }
}

.recaptcha-modal .recaptcha-form {
  display: inline-block;

  .recaptcha {
    margin: 0;
  }
}
