.wizard {
  @include wizard-clearfix();
  border: 1px solid $navbar-border;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  position: relative;
  min-height: 48px;

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    overflow: hidden;
  }

  > ul.steps, > .steps-container > ul.steps {
    list-style: none outside none;
    padding: 0;
    margin: 0;
    width: 999999px; //using a ridiculously giant width here to allow practically infinite space for the li's to flow horizontally

    &.previous-disabled {
      li {
        &.complete {
          cursor: default;

          &:hover {
            background: $gray96;
            color: $success-text;
            cursor: default;

            .chevron:before {
              border-left-color: $gray96;
            }
          }
        }
      }
    }

    li {
      float: left;
      margin: 0;
      padding: 0 20px 0 30px;
      height: 46px;
      line-height: 46px;
      position: relative;
      background: $gray93;
      color: $gray60;
      font-size: 16px;
      cursor: not-allowed;

      > .has-secondary-text {
        display: inline;

        > h4 {
          display: inline;
          font-size: 16px;
          font-weight: normal;
        }

        > small {
          display: none;
        }
      }

      .chevron {
        border: 24px solid transparent;
        border-left: 14px solid $navbar-border;
        border-right: 0;
        display: block;
        position: absolute;
        right: -14px;
        top: 0;
        z-index: 1;
      }

      .chevron:before {
        border: 24px solid transparent;
        border-left: 14px solid $gray93;
        border-right: 0;
        content: "";
        display: block;
        position: absolute;
        right: 1px;
        top: -24px;
      }

      &.complete {
        background: $gray96;
        color: $success-text;

        &:hover {
          background: desaturate($info-background, 40%);
          cursor: pointer;

          .chevron:before {
            border-left: 14px solid desaturate($info-background, 40%);
          }
        }

        .chevron:before {
          border-left: 14px solid $gray96;
        }
      }

      &.active {
        background: lighten($info-background, 5%);
        color: $info-text;
        cursor: default;

        .chevron:before {
          border-left: 14px solid lighten($info-background, 5%);
        }

        .badge {
          background-color: $info-text;
        }
      }

      .badge {
        margin-right: 8px;
      }

      .badge-success {
        background-color: $success-text;
      }

      li:first-child {
        border-radius: 4px 0 0 0;
        padding-left: 20px;
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      &.previous-disabled {
        li {
          &.complete {
            &:hover {
              .chevron:before {
                border-right-color: $gray96;
              }
            }
          }
        }
      }

      li {
        float: right;

        .chevron {
          right: auto;
          left: -14px;
          border-right: 14px solid $gray80;
          border-left: 0;


          &:before {
            right: auto;
            left: 1px;
            border-right: 14px solid $gray93;
            border-left: 0;
          }
        }

        &.active {
          .chevron {
            &:before {
              border-right: 14px solid lighten($info-background, 5%);
            }
          }
        }

        &.complete {
          .chevron {
            &:before {
              border-right: 14px solid $gray96;
            }
          }

          &:hover {
            .chevron {
              &:before {
                border-right: 14px solid desaturate($info-background, 40%);
                border-left: none;
              }
            }
          }
        }

        .badge {
          margin-left: 8px;
        }
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    position: absolute;
    right: 0;
    top: 0;
    line-height: 46px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: $gray90;
    border-left: 1px solid $navbar-border;
    border-radius: 0 $base-border-radius 0 0;

    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  .step-content {
    border-top: 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
  }

  // when complete
  &.complete {
    >.actions {
      .btn-next {
        .glyphicon {
          display: none;
        }
      }
    }
  }
}

.wizard-circles {
  @include wizard-clearfix();
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  border-radius: .25rem!important;

  border: none;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  min-height: 48px;

  .step-toolbar {
    background: #fff;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 0 !important;
  }

  .step-toolbar-top {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  .step-toolbar-bottom {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    overflow: hidden;
    > ul.steps {
      position: relative;
      background: transparent; // update #fff
      border: none;
      margin: 0 0 15px 0;
      list-style: none outside none;
      padding: 0;
      width: 999999px;

      &:before {
        content: " ";
        position: absolute;
        top: 36px;//75%;
        bottom: 0;
        width: 100%;
        height: 5px;
        background-color: #eee;
        border-radius: 3px;
        z-index: 0;
      }

      &.previous-disabled {
        li {
          &.complete {
            cursor: default;

            &:hover {
              background: $gray96;
              color: $success-text;
              cursor: default;
            }
          }
        }
      }

      li {
        float: left;
        border: none;
        margin: 0 0 0 40px;
        padding: 0; // update
        height: 120px;
        line-height: 120px;
        position: relative;
        background: $gray93;
        color: $gray60;
        font-size: 14px;
        cursor: not-allowed;
        z-index: 98;

        > span {
          border: 2px solid #eee;
          background: #eee;
          width: 75px;
          height: 75px;
          text-align: center;
          padding: 25px 0;
          border-radius: 50%;
          -webkit-box-shadow: inset 0px 0px 0px 3px #fff !important;
          box-shadow: inset 0px 0px 0px 3px #fff !important;
          text-decoration: none;
          outline-style: none;
          z-index: 99;
          color: #bbb;
          background: #f5f5f5;
          line-height: 1;

          &:hover {
            color: #bbb;
            background: #f5f5f5;
            border-width: 2px;
          }

          > small {
            position: relative;
            bottom: -40px;
            color: #ccc;
          }
        }

        li:first-child {
          border-radius: 4px 0 0 0;
          padding-left: 20px;
        }

        &.nav-item {
          background: transparent;
        }

        &.nav-item:hover {
          background: transparent;
        }

        &.complete {
          background: transparent; //$gray96;
          color: $success-text;

          &:hover {
            background: transparent; //desaturate($info-background, 40%);
            cursor: pointer;
          }

          > span {
            border-color: #5cb85c;
            color: #fff;
            background: #5cb85c;
          }

          > span > small {
            color: #5cb85c;
          }
          > span:hover {
            border-width: 2px;
          }
        }

        &.active {
          background: transparent; // lighten($info-background, 5%);
          color: $info-text;
          cursor: default;
          > span {
            border-color: #5bc0de;
            color: #fff;
            background: #5bc0de;
          }
          > span > small {
            color: #5bc0de;
          }
        }

        &.danger {
          > span {
            border-color: #d9534f;
            color: #d9534f;
            background: #fff;
          }
          > span > small {
            color: #d9534f;
          }
        }

        &.disabled {
          > span, > span:hover {
            color: #eee !important;
          }
        }
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      li {
        float: right;
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 74px;
    line-height: 46px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: $gray90;
    border-left: 1px solid $navbar-border;
    border-radius: 0 $base-border-radius 0 0;

    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      &[disabled] {
        cursor: not-allowed;
      }
      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  .step-content {
    display: block;
    position: relative;
    border-top: none; // update 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;
    background-color: #fff;
    text-align: left;
    margin: 0;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
  }
}

.wizard-circles-blue {
  @include wizard-clearfix();
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  border-radius: .25rem!important;

  border: none;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  min-height: 48px;

  .step-toolbar {
    background: #fff;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 0 !important;
  }

  .step-toolbar-top {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  .step-toolbar-bottom {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    background: $wizard-circles-blue-backgroud;
    overflow: hidden;
    > ul.steps {
      position: relative;
      background: $wizard-circles-blue-backgroud; // update #fff
      border: none;
      margin: 0;
      list-style: none outside none;
      padding: 0;
      width: 99999px;

      &:before {
        content: " ";
        position: absolute;
        top: 36px;//75%;
        bottom: 0;
        width: 100%;
        height: 5px;
        background-color: $wizard-circles-blue-line-color;
        border-radius: 3px;
        z-index: 0;
      }

      &.previous-disabled {
        li {
          &.complete {
            cursor: default;

            &:hover {
              background: $gray96;
              color: $success-text;
              cursor: default;
            }
          }
        }
      }

      li {
        float: left;
        border: none;
        margin: 0 0 0 40px;
        padding: 0; // update
        height: 110px;
        line-height: 110px;
        position: relative;
        background: $gray93;
        color: $gray60;
        font-size: 16px;
        cursor: not-allowed;
        z-index: 98;

        > span {
          border: 2px solid #eee;
          background: #eee;
          width: 75px;
          height: 75px;
          text-align: center;
          padding: 25px 0;
          border-radius: 50%;
          -webkit-box-shadow: inset 0px 0px 0px 3px #fff !important;
          box-shadow: inset 0px 0px 0px 3px #fff !important;
          text-decoration: none;
          outline-style: none;
          z-index: 99;
          color: #bbb;
          background: #f5f5f5;
          line-height: 1;

          &:hover {
            color: #bbb;
            background: #f5f5f5;
            border-width: 2px;
          }

          > small {
            position: relative;
            bottom: -40px;
            color: #ccc;
          }
        }

        li:first-child {
          border-radius: 4px 0 0 0;
          padding-left: 20px;
        }

        &.nav-item {
          background: transparent;
        }

        &.nav-item:hover {
          background: transparent;
        }

        &.complete {
          background: transparent; //$gray96;
          color: #777;

          &:hover {
            background: transparent; //desaturate($info-background, 40%);
            cursor: pointer;
          }

          > span {
            border-color: $wizard-circles-blue-complete-backgroud;
            color: #fff;
            background: $wizard-circles-blue-complete-backgroud;
          }

          > span > small {
            color: #777;
          }
          > span:hover {
            border-width: 2px;
          }
        }

        &.active {
          background: transparent; // lighten($info-background, 5%);
          color: $info-text;
          cursor: default;
          > span {
            border-color: $wizard-circles-blue-active-backgroud;
            color: #fff;
            background: $wizard-circles-blue-active-backgroud;
          }
          > span > small {
            font-size: 14px;
            font-weight: bold;
            color: $wizard-circles-blue-active-backgroud;
          }
        }

        &.danger {
          > span {
            border-color: #d9534f;
            color: #d9534f;
            background: #fff;
          }
          > span > small {
            color: #d9534f;
          }
        }

        &.disabled {
          > span, > span:hover {
            color: #eee !important;
          }
        }
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      li {
        float: right;
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 0;
    line-height: 40px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: transparent;
    border: none;
    border-radius: 0 $base-border-radius 0 0;

    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      &[disabled] {
        cursor: not-allowed;
      }
      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  > .steps-toolbar {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 50px;
    line-height: 42px;
    float: right;
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: middle;
    background-color: transparent;
    border-left: none;
    border-radius: 0 $base-border-radius 0 0;
  }

  .step-content {
    display: block;
    position: relative;
    border-top: none; // update 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;
    background-color: #fff;
    text-align: left;
    margin: 0;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
  }
}

.wizard-brick {
  @include wizard-clearfix();

  -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);

  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  border-radius: .25rem!important;

  border: none;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  min-height: 48px;

  .step-toolbar {
    background: #f9f9f9;
    border-radius: 0 !important;
    padding: 10px;
    margin-bottom: 0 !important;
  }

  .step-toolbar-top {
    border-bottom-color: #ddd !important;
  }

  .step-toolbar-bottom {
    border-top-color: #ddd !important;
  }

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    overflow: hidden;
    > ul.steps {
      position: relative;
      background: $wizard-brick-backgroud;
      border: none;
      margin: 0;
      list-style: none outside none;
      padding: 0;
      width: 999999px;

      &.previous-disabled {
        li {
          &.complete {
            cursor: default;
            color: #bbb;
            &:hover {
              background: $gray96;
              color: #bbb;
              cursor: default;
            }
          }
        }
      }

      li {
        float: left;
        border: none !important;
        margin-right: 2px;
        padding: 0; // update
        position: relative;
        background: $gray93;
        color: #888;
        font-size: 16px;
        outline-style: none;
        background: $wizard-brick-backgroud;
        cursor: not-allowed;

        > span {
          border: none !important;
          color: #888;
          text-decoration: none;
          outline-style: none;
          background: transparent !important;
          border: none !important;
          cursor: not-allowed;

          &:hover {
            color: #bbb !important;
            background: transparent !important;
            cursor: pointer;
          }

          &::after {
            content: "";
            background: #4285F4;
            height: 3px;
            position: absolute;
            width: 100%;
            left: 0px;
            bottom: 0px;
            -webkit-transition: all 250ms ease 0s;
            transition: all 250ms ease 0s;
            -webkit-transform: scale(0);
            -ms-transform: scale(0);
            transform: scale(0);
          }
        }

        li:first-child {
          border-radius: 4px 0 0 0;
          padding-left: 20px;
        }

        &.nav-item {
          background: transparent;
        }

        &.nav-item:hover {
          background: transparent;
        }

        &.clickable  {
          > span:hover {
            color: #4285F4 !important;
            background: transparent !important;
            cursor: pointer;
          }
        }

        &.complete {
          border: none !important;
          color: #000 !important;
          background: $wizard-brick-backgroud;
          cursor: pointer;

          &:hover {
            background: $wizard-brick-backgroud; //desaturate($info-background, 40%);
            cursor: pointer;
          }

          > span {
            color: #000;
            border-color: #5cb85c;
            background: #5cb85c;
          }

          > span:hover {
            border-width: 2px;
          }

          > span::after {
            background: #5cb85c;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
          }
        }

        &.active {
          border: none !important;
          color: #4285f4 !important;
          background: $wizard-brick-backgroud;
          cursor: pointer;
          > span {
            color: #4285f4 !important;
            border-color: #5bc0de;
            background: #5bc0de;
          }
          > span > small {
            color: #4285f4;
          }
          > span::after {
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
          }
        }

        &.danger {
          > span {
            border: none !important;
            color: #d9534f !important;
            cursor: pointer;
          }
          > span::after {
            background: #d9534f;
            border-left-color: #f8d7da;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
          }
        }

        &.disabled {
          > span, > span:hover {
            color: #eee !important;
            cursor: not-allowed;
          }
        }
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      li {
        float: right;
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 74px;
    line-height: 46px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: $gray90;
    border-left: 1px solid $navbar-border;
    border-radius: 0 $base-border-radius 0 0;

    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      &[disabled] {
        cursor: not-allowed;
      }
      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  .step-content {
    display: block;
    position: relative;
    border-top: none; // update 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;
    background-color: #fff;
    text-align: left;
    margin: 0;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
  }
}

.wizard-dots {
  @include wizard-clearfix();
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  border-radius: .25rem!important;

  border: none;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  min-height: 48px;

  .step-toolbar {
    background: #fff;
    padding-left: 10px;
    padding-right: 10px;
    margin-bottom: 0 !important;
  }

  .step-toolbar-top {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  .step-toolbar-bottom {
    border-top-color: #ddd !important;
    border-bottom-color: #ddd !important;
  }

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    overflow: hidden;
    > ul.steps {
      position: relative;
      background: $wizard-dots-backgroud; // update #fff
      border: none;
      margin: 0 0 5px 0;
      list-style: none;
      padding: 0;
      width: 999999px;

      &:before {
        content: " ";
        position: absolute;
        top: 64px;
        bottom: 0;
        width: 100%;
        height: 5px;
        background-color: $wizard-dots-color;
        border-radius: 3px;
        z-index: 0;
      }

      &.previous-disabled {
        li {
          &.complete {
            cursor: default;

            &:hover {
              background: $gray96;
              color: $success-text;
              cursor: default;
            }
          }
        }
      }

      li {
        float: left;
        border: none;
        margin: 0;
        padding: 0; // update

        position: relative;
        background: transparent;
        color: $gray60;
        font-size: 14px;
        cursor: not-allowed;
        z-index: 98;

        > span {
          position: relative;
          text-align: center;
          font-weight: bold;
          background: transparent;
          border: none;
          color: #ccc;
          text-decoration: none;
          outline-style: none;
          z-index: 96;
          display: block;

          &:before {
            content: ' ';
            position: absolute;
            bottom: 2px;
            left: 40%;
            margin-top: 10px;
            display: block;
            border-radius: 50%;
            color: #428bca;
            background: $wizard-dots-color;
            border: none;
            width: 30px;
            height: 30px;
            text-decoration: none;
            z-index: 98;
          }

          &:after {
            content: ' ';
            position: relative;
            left: 43%;
            bottom: 2px;
            margin-top: 10px;
            display: block;
            width: 15px;
            height: 15px;
            background: $wizard-dots-color;
            border-radius: 50%;
            z-index: 99;
          }

          &:hover {
            color: #bbb;
            background: $wizard-dots-backgroud;
            border-width: 2px;
          }

          &:focus {
            color: #bbb;
            border: none;
          }

          > small {
            position: relative;
            bottom: 0;
            color: #ccc;
          }
        }

        li:first-child {
          border-radius: 4px 0 0 0;
          padding-left: 20px;
        }

        &.nav-item {
          background: transparent;
        }

        &.nav-item:hover {
          background: transparent;
        }

        &.complete {
          background: transparent; //$gray96;
          color: $success-text;

          &:hover {
            background: transparent; //desaturate($info-background, 40%);
            cursor: pointer;
          }

          > span {
            border-color: #5cb85c;
            color: $success-text;
            background: transparent;
          }

          > span > small {
            color: #5cb85c;
          }
          > span:hover {
            border-width: 2px;
          }

          > span:after {
            background: $success-text;
          }
        }

        &.active {
          background: transparent; // lighten($info-background, 5%);
          color: #5bc0de;
          cursor: default;
          > span {
            border-color: #5bc0de;
            color: #5bc0de;
            background: transparent;
          }
          > span > small {
            color: #5bc0de;
          }
          > span:after {
            background: #5bc0de;
          }
        }

        &.danger {
          > span {
            border-color: #d9534f;
            color: #d9534f;
            background: transparent;
          }
          > span > small {
            color: #d9534f;
          }
        }

        &.disabled {
          > span, > span:hover {
            color: #eee !important;
          }
        }
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      li {
        float: right;
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 92px;
    line-height: 46px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: $gray90;
    border-left: 1px solid $navbar-border;
    border-radius: 0 $base-border-radius 0 0;

    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      &[disabled] {
        cursor: not-allowed;
      }
      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  .step-content {
    display: block;
    position: relative;
    border-top: none; // update 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;
    background-color: #fff;
    text-align: left;
    margin: 0;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
  }
}

.wizard-bulk {
  @include wizard-clearfix();
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
  border-radius: .25rem!important;

  border: none;
  border-radius: $base-border-radius;
  background-color: $table-background-accent;
  min-height: 48px;

  .step-toolbar {
    background: #f9f9f9;
    border-radius: 0 !important;
    padding: 10px;
    margin-bottom: 0 !important;
  }

  .step-toolbar-top {
    border-bottom-color: #ddd !important;
  }

  .step-toolbar-bottom {
    border-top-color: #ddd !important;
  }

  &.no-steps-container {  // maintains backwards compatibility with < 3.8, will be removed in the future
    overflow: hidden;
  }

  .steps-container {
    border-radius: $base-border-radius $base-border-radius 0 0;
    overflow: hidden;
    > ul.steps {
      position: relative;
      background: $wizard-bulk-backgroud;
      border: none;
      margin: 0;
      list-style: none outside none;
      padding: 0;
      width: 999999px;

      &.previous-disabled {
        li {
          &.complete {
            cursor: default;
            color: #bbb;
            &:hover {
              background: $gray96;
              color: #bbb;
              cursor: default;
            }
          }
        }
      }

      li {
        float: left;
        border: none !important;
        margin-right: 2px;
        padding: 0; // update
        position: relative;
        background: $gray93;
        color: #888;
        font-size: 16px;
        outline-style: none;
        background: $wizard-brick-backgroud;
        min-width: 120px;
        text-decoration: none;

        transition: all .2s linear;
        -webkit-transition: all .2s linear;
        cursor: not-allowed;

        > strong {
          transform-origin: left bottom;
          -webkit-transform-origin: left bottom;
          font-weight: 400;
          font-size: 38px;
          display: inline-block;
          position: relative;
          top: 13px
        }

        > i {
          display: inline-block;
          width: 100%;
          height: 3px;
          background: #ccc;
          transform: skewX(45deg);
          -webkit-transform: scaleY(45deg)
        }

        > p {
          font-size: 13px;
          margin-top: 3px
        }

        &:hover {
          color: #bbb !important;
          background: transparent !important;
          cursor: pointer;
        }

        &::after {
          content: "";
          background: #4285F4;
          height: 3px;
          position: absolute;
          width: 100%;
          left: 0px;
          bottom: 0px;
          -webkit-transition: all 250ms ease 0s;
          transition: all 250ms ease 0s;
          -webkit-transform: scale(0);
          -ms-transform: scale(0);
          transform: scale(0);
        }

        li:first-child {
          border-radius: 4px 0 0 0;
          padding-left: 20px;
        }

        &.nav-item {
          background: transparent;
        }

        &.nav-item:hover {
          background: transparent;
        }

        &.clickable  {
          > span:hover {
            color: #4285F4 !important;
            background: transparent !important;
            cursor: pointer;
          }
        }

        &.complete {
          border: none !important;
          color: #000 !important;
          background: $wizard-brick-backgroud;
          cursor: pointer;

          &:hover {
            background: $wizard-brick-backgroud; //desaturate($info-background, 40%);
            cursor: pointer;
          }

          > span {
            color: #000;
            border-color: #5cb85c;
            background: #5cb85c;
          }

          > span:hover {
            border-width: 2px;
          }

          > span::after {
            background: #5cb85c;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
          }
        }

        &.active {
          border: none !important;
          color: #dc1e32 !important;
          background: $wizard-brick-backgroud;
          cursor: pointer;
          > i {
            background: #dc1e32
          }
          > strong {
            transform: scale(1.3, 1.6);
            -webkit-transform: scale(1.3, 1.6)
          }
        }

        &.danger {
          > span {
            border: none !important;
            color: #d9534f !important;
            cursor: pointer;
          }
          > span::after {
            background: #d9534f;
            border-left-color: #f8d7da;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
          }
        }

        &.disabled {
          > span, > span:hover {
            color: #eee !important;
            cursor: not-allowed;
          }
        }
      }
    }
  }

  &.rtl {
    direction: rtl;

    > ul.steps, > .steps-container > ul.steps {
      right: 0;
      left: auto;
      float: right;

      li {
        float: right;
      }
    }

    >.actions {
      right: auto;
      left: 0;
      float: left;
      border-left: none;
      border-right: 1px solid $navbar-border;
      border-radius: $base-border-radius 0 0 0;

      .btn-prev {
        span {
          margin-left: 5px;
          margin-right: 0;
        }
      }

      .btn-next {
        span {
          margin-left: 0;
          margin-right: 5px;
        }
      }
    }
  }

  > .actions {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 20px;
    line-height: 40px;
    float: right;
    padding-left: 15px;
    padding-right: 15px;
    vertical-align: middle;
    background-color: transparent;
    border: none;
    border-radius: 0 $base-border-radius 0 0;
    box-shadow: none;
    a {
      line-height: 45px;
      font-size: 12px;
      margin-right: 8px;
    }

    .btn-prev {
      box-shadow: none;
      &[disabled] {
        cursor: not-allowed;
      }
      span {
        margin-right: 5px;
      }
    }

    .btn-next {
      box-shadow: none;
      &[disabled] {
        cursor: not-allowed;
      }

      span {
        margin-left: 5px;
      }
    }
  }

  > .steps-toolbar {
    z-index: 1000;
    position: absolute;
    right: 0;
    top: 70px;
    line-height: 42px;
    float: right;
    padding-left: 10px;
    padding-right: 10px;
    vertical-align: middle;
    background-color: transparent;
    border-left: none;
    box-shadow: none;
    border-radius: 0 $base-border-radius 0 0;
    > button {
      box-shadow: none;
    }
  }

  .step-content {
    display: block;
    position: relative;
    border-top: none; // update 1px solid $gray80;
    padding: 10px;
    float: left;
    width: 100%;
    background-color: #fff;
    text-align: left;
    margin: 0;

    .step-pane {
      display: none;
    }

    > .active {
      display: block;

      .btn-group {
        .active {
          display: inline-block;
        }
      }
    }
    .form-group {
      margin-top: 20px;
    }

    .form-control {
      box-shadow: none;
      border: 1px solid transparent!important;
      border-bottom: 1px solid #ccc!important;
      padding: 6px 0!important;
      &:hover {
        border: 1px solid transparent!important;
        border-radius: 0;
        border-bottom: 1px solid #dc1e32!important;
        padding: 6px 0!important;
      }
      &:focus {
        border: 1px solid transparent!important;
        border-radius: 0;
        border-bottom: 2px solid #dc1e32!important;
        padding: 6px 0!important;
      }
    }
  }
}


/* Common Loader */
.wizard-loading {
  &::after {
    position: absolute;
    display: block;
    opacity: 1;
    content: '';
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: rgba(255,255,255,.7);
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    z-index: 2;
  }

  &::before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 10;
    border: 10px solid #f3f3f3;
    border-radius: 50%;
    border-top: 10px solid #3498db;
    width: 80px;
    height: 80px;
    margin-top: -40px;
    margin-left: -40px;
    -webkit-animation: spin 1s linear infinite;
    /* Safari */
    animation: spin 1s linear infinite;
  }
}

/* Safari */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@media screen and (max-width: 768px) {
  .wizard-brick > ul.steps > li {
    float: none !important;
  }

  .wizard-dots > ul.steps {
    &:before {
      top: 0;
      bottom: 0;
      left: 10px;
      width: 5px;
      height: 100%;
      background-color: #f5f5f5;
      display: block;
      margin-right: 10px;
    }
    > li {
      margin-left: 20px;
      display: block;
      clear: both;
      > span {
        text-align: left;
        margin-left: 0;
        display: block;
        &:before {
          top: 5px;
          left: -23px;
          margin-right: 10px;
          display: block;
        }
        &:after {
          top: -38px;
          left: -31px;
          margin-right: 10px;
          display: block;
        }
      }
    }
  }
}