.bz-wizard {
  position: fixed;
  background-color: $bz-neutral-100;
  top: 50%;
  left: 50%;
  width: 90%;
  height: 620px;
  max-width: 740px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 8px;
  box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.14), 0 4px 4px 0 rgba(0, 0, 0, 0.12), 0 8px 8px 0 rgba(0, 0, 0, 0.06);

  &__overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1000;
    background-color: rgba(255, 255, 255, 0.8);
  }

  &__header {
    align-items: center;
    border-bottom: 1px solid $bz-neutral-300;
    display: flex;
    font-size: $bz-font-size-subheading;
    font-weight: $bz-font-weight-semibold;
    min-height: 64px;
    padding: 1.6rem 1.6rem 1.6rem 2.4rem;
  }

  &__title {
    flex-grow: 1;
    font-size: $bz-font-size-subheading;
    line-height: 16px;
  }

  &__body {
    display: block;
    flex-grow: 1;
    overflow-y: auto;
    padding: 0 $bz-space-inset-xl $bz-space-inset-xl;
    height: 458px;
    position: relative;
  }

  &__footer {
    align-items: center;
    border-top: 1px solid $bz-neutral-300;
    display: flex;
    justify-content: space-between;
    padding: $bz-space-inset-squish-m;
  }

  &__steps {
    text-align: left;
    color: $bz-neutral-500;
    margin: 0;
  }

  &__pills {
    display: flex;
    justify-content: center;
    margin: $bz-space-inset-xl $bz-space-inset-xl $bz-space-inset-m $bz-space-inset-xl;
  }

  &__pill {
    font-size: $bz-font-size-body-small;
    font-weight: $bz-font-weight-semibold;
    padding: $bz-space-inset-squish-xs;

    &__number {
      background-color: $bz-neutral-300;
      font-size: $bz-font-size-caption;
      font-weight: $bz-font-weight-semibold;
      color: $bz-neutral-600;
      margin-right: .8rem;
      width: 1.5rem;
      height: 1.5rem;
      border-radius: 50%;
    }

    &[disabled] {
      background-color: $bz-neutral-200;
      border-color: transparent;
      color: $bz-neutral-500;
      cursor: auto;
      pointer-events: none;
    }
  }

  &__conector {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
  }

  &__conector:before {
    content: '';
    border-bottom: 1px solid;
    width: 16px;
    height: 1px;
    position: relative;
  }

  &__conector:first-child:before {
    display: none;
  }

  &__item {
    cursor: pointer;

    &--active {
      &:before {
        border-bottom-color: $bz-theme-400;
      }

      button {
        color: $bz-neutral-600;
        background: $bz-neutral-100;
        border: 1px solid $bz-theme-300;
        font-size: $bz-font-size-body-small;
        font-weight: $bz-font-weight-semibold;
      }

      svg {
        fill: $bz-theme-400;
      }

      .bz-wizard__pill__number {
        background-color: $bz-theme-400;
        color: $bz-neutral-100;
      }
    }

    &--complete {
      &:before {
        border-bottom-color: $bz-theme-400;
      }

      svg {
        fill: $bz-theme-400;
      }

      button {
        color: $bz-theme-500;
        background: rgba($bz-theme-200, .25);
        border: 1px solid $bz-theme-300;
        font-size: $bz-font-size-body-small;
        font-weight: $bz-font-weight-regular;
      }
    }

    &--pending {
      &:before {
        border-bottom-color: $bz-neutral-300;
      }

      button {
        background-color: $bz-neutral-200;
        border: 1px solid $bz-theme-300;
        color: $bz-neutral-500;
        font-size: $bz-font-size-body-small;
        font-weight: $bz-font-weight-regular;
      }
    }
  }
}

.bz-wizard__footer bzg-button-secondary:last-child,
.bz-wizard__footer bzg-button-primary:last-child {
  text-align: right;
}

.bz-wizard__footer bzg-button-secondary,
.bz-wizard__footer bzg-button-primary {
  flex: 1;
  margin-right: $bz-space-inline-m;
}