@import "../../styles/common";

$modal-padding-y: $spacing-medium + $spacing-small;
$modal-padding-x: $spacing-large;

.modal {
  border: 1px solid $black-10;
  box-shadow: 0 3px 10px $black-05;
  background: $white;
  overflow: auto;
  border-radius: $border-radius-3;
  outline: none;
  max-width: $max-width-7;
  flex-grow: 1;
  margin: auto;
}

.overlay {
  display: flex;
  background: $black-05;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;

  @include not-small {
    padding: $spacing-medium;
  }
}

.header {
  display: flex;
  align-items: center;
  padding: $modal-padding-y $modal-padding-x;
  border-bottom: 1px solid $black-10;
}

.headerTitle {
  font-size: $font-size-3;
  line-height: $line-height-title;
  margin: 0;
}

.headerClose {
  background: none;
  border: 0;
  color: inherit;
  cursor: pointer;
  opacity: 0.66;
  font-size: $font-size-3;
  padding: 0 $spacing-medium;
  margin-top: -($modal-padding-y + $spacing-extra-small);
  margin-bottom: -$modal-padding-y;
  margin-left: auto;
  margin-right: -$spacing-medium;
}

.body {
  padding: $modal-padding-y $modal-padding-x;
}

.footer {
  display: flex;
  justify-content: space-between;
  @include small {
    flex-direction: column-reverse;
  }
  padding: 0 $modal-padding-x $modal-padding-y;
}

.footerStart,
.footerMiddle,
.footerEnd {
  display: flex;

  > :global(.PhasersButton) {
    width: 100%;
  }
}

.footerMiddleOnly {
  @include not-small {
    margin-left: auto;
    margin-right: auto;
  }
}

.footerEnd {
  flex-direction: row-reverse;
}

.footerEndOnly {
  @include not-small {
    margin-left: auto;
  }
}

.footerSpacing {
  margin-right: $spacing-medium;
}

.footerReverseSpacing {
  margin-left: $spacing-medium;
}

.footerVerticalSpacing {
  @include small {
    margin-top: $spacing-medium;
  }
}
