@import "_variables";

.amelia-app-booking {
  * {
    box-sizing: border-box;
  }

  @media @less-then-small {
    .v-calendar-column {
      text-align: center;

      .popover-origin {
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
      }
    }
  }

  .am-spinner {
    text-align: center;
    padding-top: @padding-big*4;
    padding-bottom: @padding-big*4;
  }

  .am-no-services {
    box-shadow: #eaeaea 0px 6px 20px 0, #eaeaea 0px 5px 25px 0;
    text-align: center;
    padding: @padding-extra-big;
    p, h4, h3, h2, h1 {
      margin-bottom: @margin-small;
      padding:0px;
    }
    h1 {
      font-weight: bold;
    }
    a {
      font-size: @small-fs;
    }
  }

  #am-step-booking, .am-step-booking-catalog {
    position: relative;
    max-width: 802px;
    //display: flex;
    /*align-items: center;*/
    margin: @margin-big*2 auto;
    border: 1px solid @color-divider-gray;
    border-radius: 6px;
    opacity: 0;
    overflow: hidden;
    -moz-box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 0 20px 40px 0 rgba(0, 0, 0, 0.1);
    //background: #fff;
    background-color: transparent;
    @media @less-then-medium {
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      box-shadow: none;
    }
    @media @less-then-small {
      /*display: block;*/
      opacity: 0;
    }

    &.am-desktop {
      opacity: 1;

      .am-recurring-dates {
        .am-recurring-row-item-time {
          &.is-editing {
            padding-right: 80px;
          }
        }

        .am-recurring-row-item-date {
          &.is-editing {
            padding-right: 120px;
          }
        }
      }
    }

    p {
      margin-bottom: @margin-big;
      text-align: center;
      font-size: @regular-fs;

    }

    .am-select-service, .am-select-date {
      //width: 50%;
      background-color: #fff;
      padding: @padding-big*2;

      .am-select-service-title, .am-select-date-title {
        font-size: @regular-fs !important;
        margin-bottom: @margin-big !important;
      }
    }

    .am-select-service-date-transition {
      -webkit-transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1);
      transition: all 0.6s cubic-bezier(0.23, 1, 0.32, 1);
    }

    .am-form-full-wrapper {
      display: flex;
      justify-content: center;
      width: 95%;
    }

    .am-select-picker {
      .am-form-full-wrapper {
        width: 50%;
      }
    }

    //STEP 1
    .am-select-service {
      width: 50%;
      background-color: transparent;

      &.am-select-package {
        position: relative;
        padding-left: @padding-big;
        padding-right: @padding-big;
        padding-bottom: @padding-small*19;
      }

      .am-package {
        padding: @padding-big;
        margin-bottom: @margin-big;
        border: 1px solid @color-accent;
        border-radius: @border-radius;
        background-color: fade(@color-accent, 5%);
        cursor: pointer;

        &:hover {
          background-color: fade(@color-accent, 15%);
          transition: all 0.3s ease-in-out;
        }

        p {
          font-size: @small-fs;
        }

        .am-large-text {
          font-size: @regular-fs;
        }

        .am-package-name {
          p {
            text-align: left;
            margin: 0;
          }
        }

        .am-package-price {
          p {
            color: @color-accent;
            text-align: right;
            margin: 0;
          }
        }

        .am-package-services {
          padding-top: @padding-small;
          margin-top: @margin-small;
          border-top: 1px solid @color-divider-gray;
          display: flex;

          p {
            text-align: left;
            margin: 0;
          }

          .am-package-appointment-number {
            text-align: center;
            color: @color-accent;
          }

          .am-package-book {
            margin: auto;

            .el-icon-right {
              color: @color-accent;
              font-weight: @bold;
              cursor: pointer;

              &:hover {
                font-weight: @medium;
              }
            }
          }
        }
      }

      .am-button-wrapper {
        width: 100%;
        text-align: center;
        padding: @margin-big 0;
      }

      .am-grouped {
        color: @color-text-prime;
        margin: @margin-medium 0;
      }

      .am-add-element {
        padding: @padding-small;
        background-color: fade(@color-accent, 7%);
        display: block;
        border-radius: @border-radius;
        border: 1px solid transparent;
        margin-bottom: @margin-big;

        &:hover {
          border-color: @color-accent;
        }
      }
    }

    //STEP 2
    .am-select-date {
      width: 50%;
      height: 100%;
      position: absolute;
      top: 0;
      right: -45%;
      //transform: translateX(90%);
      background: linear-gradient(135deg, @color-gradient1 0%, @color-gradient2 100%);
      box-sizing: border-box;

      * {
        color: @color-white;
      }

      //&.am-form {
      //  &-stepByStepForm {
      //    &-calendarDateTimeForm {
      //      background: linear-gradient(@sbs-cf-gradient-angle, @sbs-cf-gradient1 0%, @sbs-cf-gradient2 100%);
      //    }
      //  }
      //}

      .am-back {
        display: none;
        position: absolute;
        top: 16px;
        left: 16px;
        cursor: pointer;
      }

      .am-calendar {
        &-picker {
          background-color: transparent !important;
          border: none !important;

          //div {
          //  color: @color-white;
          //  font-weight: @light;
          //}

          .c-weekdays {
            div {
              font-weight: @regular;
              opacity: 0.7;
            }
          }

          .c-day-content {
            &:hover {
              background-color: #fff !important;
              color: @color-accent !important;

              div {
                color: @color-accent !important;
              }
            }
          }

          //.c-day-background {
          //  /*background: @color-white !important;
          //  color: @color-accent !important;*/
          //  border: 1px solid fade(@color-white, 35%) !important;
          //}

          .popover-content {
            div, span {
              color: @color-text-prime;
              font-weight: @regular;
            }

            background: #fff !important;

            table {
              padding: 0;
              margin: 0;
            }

            tr:nth-child(odd) {
              background: #fff;
            }

            .c-table-cell {
              &.c-active, &:hover {
                background: fade(@color-accent, 15%);
                border-radius: 3px;
              }
            }
          }
        }

        &-stepByStepForm {
          &-calendarDateTimeForm {
            div {
              color: @sbs-cf-text-color;
              font-weight: @light;
            }
          }
        }
      }

      .am-appointment-times {
        margin: @margin-small 0;
        max-height: 136px;
        overflow-y: auto;

        .el-radio-button {
          margin: @margin-small/4;

          .el-radio-button__inner {
            border: 1px solid @color-divider-gray;
            border-radius: 3px;
            background: transparent;
            color: @color-white;
            font-size: @mini-fs;
            font-weight: @light;
            padding: @padding-small;
            opacity: 0.7;
            width: 126px;

            &:hover {
              opacity: 1;
              background: fade(#fff, 15%);
            }
          }

          .el-radio-button__orig-radio:checked + .el-radio-button__inner {
            color: @color-accent;
            background: #fff;
            box-shadow: none;
            -webkit-box-shadow: none;
            opacity: 1;

            &:hover {
              color: @color-accent;
            }
          }

          .el-radio-button__orig-radio:disabled + .el-radio-button__inner {
            &:hover {
              color: @color-light-gray;
            }
          }
        }

        .el-radio-group {
          text-align: center;
          width: 100%;
        }
      }

      .am-recurring-check {
        text-align: center;
        padding: @padding-medium 0;

        span {
          padding-right: 12px;
          color: @color-white;
        }
      }

      &.am-package-setup {
        padding-left: @padding-big * 2;
        padding-right: @padding-big * 2;

        .am-package-employee-location {
          @media @less-then-xsmall {
            flex-wrap: wrap;
          }
        }

        .el-form-item {
          margin-bottom: @margin-medium;
        }

        .el-input__inner {
          background-color: fade(@color-black, 10%);
          border-color: fade(@color-black, 10%);

          &::placeholder,
          &::-webkit-input-placeholder,
          &::-moz-placeholder,
          &:-ms-input-placeholder,
          &:-moz-placeholder {
            color: fade(@color-white, 70%);
          }
        }

        .am-package-appointments-rules {
          font-size: @small-fs;
          text-align: center;
          padding: 12px;
          margin: 0 0 @margin-medium;
          border-radius: @border-radius/2;
          background-color: fade(@color-black, 7%);
        }

        .el-collapse {
          border: none;

          &-item {
            margin-top: @margin-small;
            border: 1px solid rgba(0, 0, 0, 0.1);
            border-radius: @border-radius/2;
            background-color: fade(@color-black, 5%);

            &.is-active {
              background-color: fade(@color-black, 5%);
            }

            &__header {
              font-size: @regular-fs;
              padding-left: 15px;
              border: none;
              background-color: transparent;
            }

            &__wrap {
              border: none;
              background-color: transparent;
            }

            &__content {
              position: relative;
              padding: @padding-medium;

              @media @less-then-small {
                padding: @padding-small / 2;
              }

              .am-calendar-picker {
                border-radius: @border-radius/2;
                background-color: fade(@color-black, 10%) !important;
                border: 1px solid fade(@color-white, 10%) !important;
              }

              .am-booking-fetched {
                width: 100%;
                height: 100%;
                padding: 0;
                background-color: fade(@color-black, 20%);

                .am-svg-wrapper {
                  position: absolute;
                  width: 160px;
                  height: 160px;
                  top: 50%;
                  left: 50%;
                  transform: translate(-50%, -50%);
                  margin: 0;

                  .am-spin, .am-hourglass {
                    filter: brightness(10);
                  }
                }
              }
            }

            &.am-package-booking-cleared {
              .el-collapse-item__header {
                color: @color-red;
              }
            }
          }
        }

        .am-next-date-button {
          width: 100%;
          margin-top: 10px;
          background-color: fade(@color-white, 10%);
          border: 1px solid fade(@color-white, 20%);

          &:hover {
            background-color: @color-white;

            span {
              color: @color-accent;
            }
          }

          span {
            color: @color-white;
          }

          &.el-button {
            margin: 10px 0 0 0;
          }
        }

        .am-package-previous-button-mobile {
          display: none;
        }
      }

      .am-button-wrapper {
        text-align: center;
        margin: @margin-medium auto;

        .el-button {
          min-width: 98.2px;

          .el-icon-loading {
            color: @color-accent;
          }

          &:hover {
            background-color: fade(#fff, 85%);
          }

          span {
            color: @color-accent;
          }
        }
      }
    }

    .am-show-calendar-container {
      text-align: center;
      margin: auto;
    }

    &.am-active-picker {
      display: flex;

      .am-form-full-wrapper {
        width: 50%;
      }

      .am-select-service {
        width: 100%;
        //transform: translateX(0%);

        .am-button-wrapper {
          transition: all 0.3s ease;
          transition-delay: 0.5s;
          transform: translateY(40px);
          opacity: 0;
          display: none;
          pointer-events: none;
        }
      }

      .am-select-date {
        //transform: translateX(0%);
        position: relative;
        right: 0;
        height: auto;
      }

      .am-package-setup {
        padding-left: @padding-big !important;
        padding-right: @padding-big !important;

        @media @less-then-small {
          padding-left: @padding-small / 2 !important;
          padding-right: @padding-small / 2 !important;
        }
      }
    }

    //collapsed on mobile
    &.am-mobile-collapsed {
      opacity: 1;
      transition: all 0.3s;
      transition-delay: 0.8s;
      position: relative;
      display: block;

      .am-form-full-wrapper {
        width: 100%;
      }

      .am-confirmation-booking-details {
        display: block !important;

        > div {
          display: inline-block;
          margin-bottom: @margin-medium;
          min-width: 48%;
        }
      }

      .am-select-service-wrapper {
        width: 100%;
      }

      .am-select-service {
        transform: translateX(0%);
        width: 100%;
        padding: @padding-medium @padding-medium @padding-small*10;
        box-sizing: border-box;

        .am-button-wrapper {
          transition: all 0.3s ease;
          transition-delay: 0.15s;
          opacity: 1;
          display: inline-block;
          pointer-events: all;
        }
      }

      .am-select-date {
        //transform: translateX(101%);
        position: absolute;
        top: 0;
        bottom: 0;
        right: -100%;
        width: 100%;
        z-index: 1;

        &.am-show-calendar {
          padding: @padding-medium 0;
        }
      }

      .am-package-selected {
        .am-packages-buttons {
          left: @padding-medium;
          bottom: @padding-small*3;

          .am-package-slots-loaded {
            display: inline-block;
          }
        }
      }

      &.am-active-picker {
        .am-select-date {
          position: relative !important;
        }

        .am-select-service {
          display: none;
        }

        .am-package-previous-button-mobile {
          display: inline-block;
        }

        .am-select-service {
          .am-button-wrapper {
            opacity: 0;
            transition-delay: 0s;
          }
        }

        .am-package-selected {
          .am-button-wrapper {
            opacity: 0;
            transition-delay: 0s;
          }
        }

        .am-select-date {
          //transform: translateX(0%);
          position: absolute;
          right: 0;


          .am-back {
            display: block;
          }
        }

        &.am-show-times {
          transition: none;
        }

        &.am-active-confirm {
          .am-pagination {
            display: block;
            border-bottom: none;
            text-align: center;
          }
        }
      }

      &.am-active-confirm {
        .am-confirm-booking {
          position: relative;
        }

        .am-select-service {
          position: absolute;
        }

        .am-select-date {
          left: -97%;
        }
      }

      &.am-active-recurring-dates {
        .am-recurring-setup {
          right: 0;
          left: -97%;
        }
      }

      .am-recurring-dates {
        .am-pagination {
          div {
            display: block;
          }
        }

        .am-recurring-row-item {
          padding-right: 1px;
        }
      }
    }

    .am-recurring-setup {
      padding: @margin-big;

      @media @less-then-small {
        padding: @margin-small;
      }

      .am-recurring-setup-all-cycle {
        .el-select__caret {
          display: none;
        }
      }

      .el-input-number {
        width: 100%;
      }

      .el-input-number__decrease {
        background-color: transparent;
        width: 30%;
      }

      .el-input-number__increase {
        background-color: transparent;
        width: 30%;
      }

      .am-recurring-setup-title {
        text-align: center;
      }

      .el-checkbox-button {
        margin: 0 auto;

        vertical-align: middle;
      }

      .el-checkbox-group {
        width: 100%;
        text-align: center;

        .is-checked {
          .el-checkbox-button__inner {
            background-color: @color-white;
            color: @color-accent;
          }
        }

        .is-disabled {
          opacity: 0.3;
        }
      }

      .el-checkbox-button__inner {
        background-color: transparent;
        border: 1px solid fade(@color-divider-gray, 50%);
        border-radius: 4px;
        height: 40px;
        width: 40px;
        vertical-align: middle;
        display: table-cell;
        padding: 12px;

        @media @less-then-small {
          height: 34px;
          width: 34px;
          padding: 5px;
        }
      }

      .el-input__inner {
        background-color: transparent;
      }

      .v-calendar-column {
        .el-form-item__content > div > div {
          margin-left: 30px;

          @media @less-then-small {
            margin-left: 0;
          }
        }

        * {
          color: #606266;
        }

        .el-form-item__label {
          color: @color-white;
        }

        .el-form-item__content, .am-calendar-picker {
          .el-input__inner {
            color: @color-white;
          }

          &:after {
            background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMiIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDIyIDI0Ij4NCiAgICA8cGF0aCBmaWxsPSIjRTJFNkVDIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiDQogICAgICAgICAgZD0iTTE1LjcxNCAyLjY2N0g2LjI4NlYwSDIuNzV2Mi42NjdILjc4QS43ODMuNzgzIDAgMCAwIDAgMy40NXYxOS43NjRBLjc4Ljc4IDAgMCAwIC43ODMgMjRoMjAuNDM0YS43ODUuNzg1IDAgMCAwIC43ODMtLjc4NVYzLjQ1MWEuNzgyLjc4MiAwIDAgMC0uNzgtLjc4NGgtMS45N1YwaC0zLjUzNnYyLjY2N3pNMi43NSAyMS40MjlWOGgxNi41djEzLjQyOUgyLjc1ek0xMiAxNHY2aDZ2LTZoLTZ6Ii8+DQo8L3N2Zz4NCg==') no-repeat center / contain;
          }
        }

        .c-day-content {
          color: inherit;

          div {
            color: inherit;
          }
        }
      }

      .am-recurring-setup-description {
        padding-top: 30px;
        padding-bottom: 20px;
        text-align:center;
        border-top: 1px solid @color-divider-gray;
      }

      .el-loading-mask {
        background-color: transparent;
      }

      .am-button-wrapper {
        text-align: center;
        margin-top: @margin-extra-big !important;
        margin-bottom: @margin-extra-big !important;

        .el-button {
          min-width: 98.2px;

          .el-icon-loading {
            color: @color-accent;
          }

          &:hover {
            background-color: fade(#fff, 85%);
          }

          span {
            color: @color-accent;
          }
        }
      }
    }

    .am-recurring-dates, .am-package-list {
      transition: all 0.3s ease;
      z-index: -1;
      opacity: 0;
      position: absolute;
      bottom: 0;
      top: 0;
      left: 3%;
      right: 0;
      width: 97%;
      background: #fff;
      transform: translate(100%);
    }

    .am-recurring-dates {
      @media @less-then-small {
        .v-calendar-column > div > div {
          position: fixed;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
        }
      }

      .am-recurring-dates-header {
        margin-top: @margin-big;
        margin-bottom: @margin-big;

        .am-recurring-dates-header-first {
          margin: 0;
        }

        .am-recurring-dates-header-second {
          color: darken(@color-light-gray, 30%);
          font-size: @small-fs;
          word-wrap: break-word;
        }

        @media @less-then-small {
          border-bottom: 1px solid @color-divider-gray;
          margin-bottom: 5px;
        }
      }

      .am-recurring-dates-rows {
        opacity: 1;
        padding-left: 10px;
        padding-right: 10px;
        margin-bottom: 120px;

        @media @less-then-small {
          padding-left: 0;
          padding-right: 0;
          margin: 0;
        }
      }

      .am-recurring-row-delete-message {
        font-size: 12px;
      }

      .am-recurring-row-item-time {
        .el-input__inner {
          padding-left: 30px;
        }
      }

      .am-recurring-dates-row-header {
        padding-left: 10px;
        padding-right: 10px;

        * {
          color: darken(@color-light-gray, 30%);
        }

        .el-row {
          border-bottom: 1px solid @color-divider-gray;
        }

        .am-recurring-dates-row-header-date {
          padding-left: 30px;
        }

        .am-recurring-dates-row-header-time {
          padding-left: 30px;
        }
      }

      .am-recurring-flex-row-middle-align {
        border-bottom: 1px solid @color-divider-gray;

        display: flex;
        align-items: center;
        width: 100%;
        padding-top: 5px;
        padding-bottom: 5px;
        padding-left: 5px;

        &.am-recurring-dates-row-editing {
          background-color: @color-highlight;
        }

        &.am-recurring-dates-row-substitute {
          background-color: fade(@color-accent, 20%);
        }

        @media @less-then-large {
          align-items: inherit;
        }

        @media @less-then-small {
          display: inline-block;

          &:first-of-type {
            margin-bottom: 0;
          }
        }

        @media @more-then-small {
          .am-recurring-row-item-date {
            &.is-editing > div {
              &:after {
                content: "";
                display: block;
                position: absolute;
                top: 2px;
                bottom: 2px;
                right: 8px;
                width: 16px;
                background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMiIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDIyIDI0Ij4NCiAgICA8cGF0aCBmaWxsPSIjRTJFNkVDIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiDQogICAgICAgICAgZD0iTTE1LjcxNCAyLjY2N0g2LjI4NlYwSDIuNzV2Mi42NjdILjc4QS43ODMuNzgzIDAgMCAwIDAgMy40NXYxOS43NjRBLjc4Ljc4IDAgMCAwIC43ODMgMjRoMjAuNDM0YS43ODUuNzg1IDAgMCAwIC43ODMtLjc4NVYzLjQ1MWEuNzgyLjc4MiAwIDAgMC0uNzgtLjc4NGgtMS45N1YwaC0zLjUzNnYyLjY2N3pNMi43NSAyMS40MjlWOGgxNi41djEzLjQyOUgyLjc1ek0xMiAxNHY2aDZ2LTZoLTZ6Ii8+DQo8L3N2Zz4NCg==') no-repeat center / contain;
              }
            }
          }

          .am-recurring-row-item-time {
            &.is-editing > div > div {
              &:before {
                content: "";
                display: block;
                position: absolute;
                top: 2px;
                bottom: 2px;
                left: 8px;
                width: 16px;
                background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4Ij4KICA8cGF0aCBmaWxsPSIjRDNEQ0U2IiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMywyNyBDMTguMDI5MjM4NiwyNyAxNCwyMi45Njk3ODA1IDE0LDE3Ljk5OTcyMzkgQzE0LDEzLjAyOTY2NzMgMTguMDI5MjM4Niw5IDIzLDkgQzI3Ljk3MDIwOTEsOSAzMiwxMy4wMjk2NjczIDMyLDE3Ljk5OTcyMzkgQzMyLDIyLjk2OTc4MDUgMjcuOTcwMjA5MSwyNyAyMywyNyBMMjMsMjcgWiBNMjMsMTAuOTI4NTcxNCBDMTkuMDk0NTczNiwxMC45Mjg1NzE0IDE1LjkyODU3MTQsMTQuMDk0NDU0MSAxNS45Mjg1NzE0LDE3Ljk5OTczMyBDMTUuOTI4NTcxNCwyMS45MDUwMTE5IDE5LjA5NDU3MzYsMjUuMDcxNDI4NiAyMywyNS4wNzE0Mjg2IEMyNi45MDU0MjY0LDI1LjA3MTQyODYgMzAuMDcxNDI4NiwyMS45MDUwMTE5IDMwLjA3MTQyODYsMTcuOTk5NzMzIEMzMC4wNzE0Mjg2LDE0LjA5NDQ1NDEgMjYuOTA1NDQ2MSwxMC45Mjg1NzE0IDIzLDEwLjkyODU3MTQgTDIzLDEwLjkyODU3MTQgWiBNMjMuMDE0MzMzMiwxOS4xODc3NjQ2IEMyMi41NDg1MjE4LDE5LjE4Nzc2NDYgMjIuMTcwNTgzMiwxOC44MDk4Mzc2IDIyLjE3MDU4MzIsMTguMzQ0MDQwNSBMMjIuMTcwNTgzMiwxNC4zMzMzOTY5IEMyMi4xNzA1ODMyLDEzLjg2NzU5OTkgMjIuNTQ4NTIxOCwxMy40ODk2NzI4IDIzLjAxNDMzMzIsMTMuNDg5NjcyOCBDMjMuNDgwMTQ0NSwxMy40ODk2NzI4IDIzLjg1ODA4MzIsMTMuODY3NTk5OSAyMy44NTgwODMyLDE0LjMzMzM5NjkgTDIzLjg1ODA4MzIsMTcuNTAwMzE2NCBMMjYuNjcwNTgzMiwxNy41MDAzMTY0IEMyNy4xMzYzOTQ2LDE3LjUwMDMxNjQgMjcuNTE0MzMzMiwxNy44NzgyNDM0IDI3LjUxNDMzMzIsMTguMzQ0MDQwNSBDMjcuNTE0MzMzMiwxOC44MDk4Mzc2IDI3LjEzNjQxNSwxOS4xODc3NjQ2IDI2LjY3MDU4MzIsMTkuMTg3NzY0NiBMMjMuMDE0MzMzMiwxOS4xODc3NjQ2IFoiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xNCAtOSkiLz4KPC9zdmc+Cg==') no-repeat center / contain;
              }
            }
          }
        }

        .el-col {
          margin: auto;

          @media @less-then-small {
            span.am-col-title-date {
              display: inline-block;
              color: darken(@color-light-gray, 30%);
            }
          }

          .el-icon-warning-outline {
            margin-left: 5px;
          }

          .am-col-title {
            display: none;
            font-size: @small-fs;
            color: @color-text-second;
          }

          @media @less-then-small {
            .am-col-title {
              display: block;
            }
          }

          &.am-recurring-row-item {
            padding-left: 1px;
            pointer-events: none;

            @media @less-then-small {
              padding-left: 0;
              padding-right: 0;

              &.am-recurring-row-item-date {
                width: 56%;
                display: inline-block;
                text-align: center;
                margin-left: 5px;

                .el-input__inner {
                  padding-right: 0;
                  padding-left: 5px;
                }
              }

              &.am-recurring-row-item-time {
                width: 35%;
                display: inline-block;
                text-align: center;
                margin-left: 5px;

                .el-input__inner {
                  padding-right: 0;
                  padding-left: 5px;
                }
              }
            }
          }

          &.am-recurring-row-action {
            text-align: center;
          }

          .el-input__inner {
            background-color: transparent;
            border-color: transparent;
          }

          .el-select__caret {
            display: none;
          }

          &.is-substitute {
            .el-input__inner {
              color: @color-accent
            }
          }

          &.is-editing {
            .el-input__inner {
              border-color: darken(#E2E6EC, 20%);
            }

            .el-select__caret {
              display: inline-block;
            }

            &.am-recurring-row-item {
              pointer-events: all;
            }

            &.am-recurring-row-action {
              border-color: transparent;
            }

            .el-input__inner, .el-select {
              background-color: @color-white;
            }
          }

          &.is-deleting {
            text-align: center;
          }

          @media @less-then-small {
            p {
              text-align: left;
            }

            width: 100%;
          }

          .am-edit-element {
            padding: 0;

            &:first-child {
              margin-right: 20px;
            }
          }
        }
      }

      .v-calendar-column {
        @media @less-then-small {
          padding: 0 0 0;
        }
      }

      .am-pagination {
        &.am-pagination-hidden {
          visibility: hidden;
        }

        display: flex;
        justify-content: space-between;
        padding-bottom: @padding-small;

        @media @less-then-medium {
          display: block;
          border-bottom: none;
          text-align: center;
        }

        div {
          display: inline-block;

          @media @less-then-medium {
            display: block;
          }

          p {
            padding-top: @padding-small;
            padding-bottom: @padding-small;
            text-align: center;
            font-size: @small-fs;
            color: darken(@color-light-gray, 30%);
            margin-top: 8px;

            @media @less-then-small {
              text-align: center;
            }
          }
        }

        .el-pagination {
          margin-bottom: 90px;
          text-align: center;
          display: inline-block;
          padding-top: @padding-small;
          padding-bottom: @padding-small;

          @media @less-then-small {
            text-align: center;
          }

          .el-pager li {
            height: 32px;
            line-height: 32px;
            padding: 0 @padding-small;
            color: @color-text-prime;
            border-top: 1px solid @color-divider-gray;
            border-bottom: 1px solid @color-divider-gray;
            border-left: 1px solid @color-divider-gray;

            &:first-child {
              border-left: none;
            }

            @media @less-then-small {
              padding: 0 @padding-small/3;
              min-width: 24px;
            }

            &.active {
              background-color: @color-accent;
              border-color: @color-accent;
              color: @color-white;

              &:hover {
                color: @color-white;
              }
            }

            &:hover {
              color: @color-accent;
            }
          }

          button {
            border: 1px solid @color-divider-gray;
            height: 32px;
            padding: 0 @padding-small;
          }
        }
      }

      .dialog-footer {
        border-top: 1px solid @color-divider-gray;
        padding-top: @padding-big;
        text-align: center;
        position: absolute;
        bottom: 20px;
        width: 95%;

        @media @less-then-small {
          width: 100%;
        }
      }
    }

    //STEP 3
    .am-package-list {
      h2 {
        font-weight: @medium;
        padding: @padding-small;
        margin: 0;
      }

      p {
        text-align: left;
        margin: 0;
        padding: 0;
        font-size: @small-fs;
        color: @color-text-prime;
      }

      .am-confirmation-booking-package-wrapper {
        padding: 0 @padding-small;
        h2 {
          font-weight: @regular;
        }

        .am-package-rule {
          display: flex;
          flex-wrap: wrap;
        }

        .am-blue-badge {
          display: inline-flex;
          p {
            flex: 1 0 auto;
            background-color: fade(@color-accent, 10%);
            padding: 4px @padding-small;
            font-weight: @medium;
            line-height: @h1-lh;
            color: @color-accent;
            border-radius: @border-radius;
          }
        }
      }

      .am-package-description {
        margin-top: @margin-small;
        margin-bottom: @margin-big;
        font-size: @mini-fs;
        color: darken(@color-light-gray, 30%);
        white-space: pre-line;
      }

      .am-appointments-wrapper {
        margin-bottom: @margin-big;
      }

      .am-appointment-block {
        padding: 0 @padding-small;
        p{
          font-size: @small-fs;
        }
      }

      .el-collapse {
        border: none;
        &-item {
          &__header {
            height: auto;
            padding: 5px @padding-small;
            border-radius: @border-radius;
            background-color: @color-light-gray;
            border: none;
            * {
              font-size: @small-fs;
            }

            > div {
              margin: 0 @margin-small 0 0;
            }

            .am-blue-badge {
              display: flex;
              p {
                padding: 2px @padding-small;
                margin: 0 12px 0 0;
              }
            }

            .am-package-service-duration {
              flex: 0 0 auto;
              margin: 0 @margin-small 0 auto;
              line-height: 0;
            }
          }

          &__arrow {
            margin: 0 @margin-small 0 0;
            color: @color-accent;
            font-weight: 600;
            padding: @padding-small/2;
            border-radius: @border-radius;
            background-color: fade(@color-accent, 10%);
          }

          &__wrap {
            border: none;
          }

          &__content {
            padding: 0;
          }
        }
      }

      .am-appointment-body {
        padding: 6px @padding-small;
        * {
          font-size: @small-fs;
        }

        > div {
          margin-bottom: 0;
        }

        &.el-row {
          margin: 0;
        }
      }

      .am-appointment-body-cell {
        @media @less-then-small {
          display: flex;
        }
      }

      .am-appointment-body-heading {
        display: none;
        @media @less-then-small {
          display: block;
          max-width: 120px;
          width: 100%;
          flex: 0 0 auto;
        }
      }

      .am-appointment-service-name {
        font-size: @regular-fs;
        font-weight: @medium;
        line-height: @h1-lh;
        display: inline-block;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        vertical-align: middle;
        cursor: pointer;

        p {
          overflow: hidden;
          text-overflow: ellipsis;
        }
      }

      .am-appointment-header {
        @media @less-then-small {
          display: none;
        }
        &.el-row {
          margin: @margin-small @margin-small 0;
        }
      }

      .am-appointment-header-cell {
        line-height: 1.8;
      }

      .am-text-upper {
        text-transform: uppercase;
      }

      .am-text-center {
        text-align: center;
      }

      .am-text-gray {
        color: @color-dark-gray;
      }

      .am-package-rule {
        margin-top: @margin-medium;
        margin-bottom: @margin-big;

        div {
          padding: 4px;
        }

        span {
          position: relative;
          display: inline-block;
          border-radius: @border-radius;
          background-color: rgba(0, 0, 0, 0.05);
          margin-top: 0;
          padding: @padding-small/4*3 @padding-small @padding-small/4*3 @padding-small*4;
          font-size: @small-fs;

          i {
            position: absolute;
            top: 9px;
            left: 10px;
          }
        }
      }

      .el-row {
        margin-bottom: @margin-small;
      }
    }

    .am-confirm-booking {
      transition: all 0.3s ease;
      z-index: -1;
      opacity: 0;
      position: absolute;
      bottom: 0;
      top: 0;
      left: 3%;
      right: 0;
      width: 97%;
      background: #fff;
      transform: translate(100%);

      h2 {
        font-weight: @medium;
        padding: @padding-small;
        margin: 0;
      }

      .am-confirmation-booking-header {
        text-align: center;
        margin-bottom: @margin-big;

        img, svg {
          border-radius: 50%;
          max-width: 80px;
          width: 80px;
          height: 80px;
        }
      }

      .am-confirmation-booking-package-wrapper {
        padding: 0 @padding-small;
        h2 {
          font-weight: @regular;
        }

        .am-package-rule {
          display: flex;
          flex-wrap: wrap;
        }
      }

      .am-package-rule {
        margin-top: @margin-medium;
        margin-bottom: @margin-big;

        div {
          padding: @padding-small;
        }

        span {
          border-radius: @border-radius;
          background-color: @color-light-gray;
          margin-top: @margin-small;
          padding: @padding-small;
          font-size: @small-fs;
        }
      }

      .am-custom-fields {
        display: inline-block;
        width: 100%;

        .el-row {
          padding-left: 12px;
          padding-right: 12px;
          margin-bottom: 0;

          .el-col:nth-child(odd) {
            clear: both;
          }

          .text-content-custom-field {
            label {
              visibility: hidden;
            }
          }

          .el-upload--text {
            width: 100%;
          }

          .el-upload-dragger {
            border: 2px dashed @color-accent;
            height: 40px;
            text-align: center;
            cursor: pointer;
            position: relative;
            border-radius: 4px;
            justify-content: center;
            align-items: center;
            color: @color-accent;
            box-sizing: border-box;
            display: flex;
            width: 100%;

            .el-icon-upload {
              margin: 0 0 0 0;
            }

            i {
              display: inline;
              padding: @padding-small/4;
              color: @color-accent;
              font-size: @medium-fs+4px;
              line-height: 36px;
            }

            span {
              color: @color-accent;
            }
          }

          .popover-content {
            background-color: #ffffff;
          }

          .c-weekdays {
            border-bottom: 1px solid @color-divider-gray;
            margin-left: 3px;
            margin-right: 3px;
          }

          .c-day-content {
            font-size: 12px;
          }
        }
      }

      .el-form-item {
        margin-bottom: @margin-medium;
      }

      p {
        text-align: left;
        margin: 0;
        padding: 0;
        font-size: @small-fs;
        color: @color-text-prime;
      }

      p.am-align-right {
        text-align: right;
      }

      .am-employee-photo {
        border-radius: 50%;
        width: 24px;
        max-width: 24px;
        height: 24px;
        display: inline-block;
        vertical-align: middle;
        margin-right: @margin-small/2;
      }

      .el-row {
        margin-bottom: @margin-small;
      }

      .am-add-coupon {
        margin-bottom: @margin-medium;

        span {
          color: @color-accent;
          font-size: @mini-fs;
        }

        .el-input__inner {
          height: 32px;
        }

        svg, img {
          width: 20px;
          height: 20px;
          display: inline-block;
          margin-right: 2px;
          vertical-align: middle;

          path {
            fill: @color-accent;
          }
        }

        .el-form-item {
          margin-bottom: 0;
        }

        .el-form-item__content {
          position: static;
        }

        .el-form-item__error {
          padding-left: @padding-small;
          padding-top: 1px;
        }

        .el-input-group__append, .el-input-group__prepend {
          background-color: @color-accent;
          color: @color-white;
          border-color: @color-accent;

          &:hover {
            background-color: fade(@color-accent, 15%);
            border-color: fade(@color-accent, 15%);

            .el-button {
              color: @color-text-prime;
              background-color: transparent;
              border-color: transparent;
            }
          }

          .el-button {
            background-color: transparent;
            border-color: transparent;
            color: @color-white;
          }
        }
      }

      .am-add-coupon-field {
        span {
          visibility: hidden;
        }
      }

      .am-coupon-limit {
        background-color: #354052;
        padding: 10px;
        border-radius: @border-radius/2;

        .am-coupon-limit-text {
          font-size: 14px;

          div {
            display: inline-block;
            padding-top: 6px;
            padding-bottom: 6px;
          }

          p, strong {
            color: @color-white;
          }
        }

        svg, img {
          width: 30px;
          height: 30px;
          display: inline-block;
          margin-right: 2px;
          vertical-align: middle;
          margin-bottom: 6px;
          margin-top: 6px;

          circle {
            fill: @color-accent;
          }
        }
      }

      .am-confirmation-extras-cost {
        background-color: fade(@color-accent, 10%);
        padding-top: @padding-small/2;
        padding-bottom: @padding-small/2;
        margin-left: 0 !important;
        margin-right: 0 !important;

        div {
          line-height: 24px;
        }

        .el-collapse {
          border: none;

          .el-collapse-item__header {
            height: 24px;
            border: none;
            margin: 0;
            padding: 0;
            font-size: @small-fs;
            color: @color-text-prime;
            background: none;

            .am-extras-title {
              display: inline-block;
              font-weight: @regular;
              padding-left: 12px;
            }

            .am-extras-total-cost {
              float: right;
              margin-left: @margin-small;
            }

            i {
              line-height: 24px;
              margin-right: -3px;
              margin-left: 1px;
            }
          }

          .el-collapse-item__wrap {
            background: none;
            border: none;
            padding-left: @padding-big/2;

            .el-collapse-item__content {
              padding: 0;

              .am-extras-details {
                display: inline-block;
              }

              .am-extras-cost {
                display: inline-block;
                float: right;
                padding-right: @padding-big/2;
              }
            }
          }
        }
      }

      .am-confirm-booking-form {
        padding: 0 @padding-small;

        .am-confirm-booking-data {
          margin-bottom: 0;

          h2 {
            position: relative;
            font-weight: @regular;

            &.am-booking-data-heading {
              margin-bottom: @margin-medium;

              &:after {
                content: '';
                display: block;
                width: 100%;
                height: 1px;
                background-color: @color-divider-gray;
                position: absolute;
                bottom: 0;
                left: 0;
              }
            }
          }
        }

        .am-confirm-booking-recaptcha-block {
          @media @less-then-small {
            transform: scale(0.77);
            -webkit-transform: scale(0.77);
            transform-origin: 0 0;
            -webkit-transform-origin: 0 0;
          }

          .grecaptcha-badge {
            @media @less-then-small {
              position: unset !important;
            }
          }
        }

        .am-confirm-booking-payment {
          margin-top: -24px;
        }

        .am-confirmation-booking-details {
          border-bottom: 1px solid @color-divider-gray;
          margin-bottom: @margin-big;
          display: flex;
          align-items: center;
          justify-content: space-between;
          border-top: 1px solid @color-divider-gray;
          padding: @padding-medium 0;

          &.recurring-string {
            padding-top: 0;
            border-top: none;
          }

          > div {
            margin-right: @margin-small;

            p {
              margin: 0 0 @margin-small/2 !important;
            }
          }
        }
      }

      .am-confirmation-total {
        background-color: fade(@color-accent, 10%);
        padding: @padding-small;

        .el-row {
          margin-top: @margin-small;
          margin-bottom: @margin-small;
          margin-left: 0 !important;
          margin-right: 0 !important;
        }

        .am-confirmation-deposit {
          border-top: 1px solid @color-dark-gray;
          padding-top: 8px;

          .am-confirmation-deposit-info {
            font-style: italic;
            color: @color-dark-gray;
            display: inline-block;
          }
        }

        p {
          /*font-size: @big-fs - 2px;*/
          font-weight: @medium;
          margin: 0 !important;
          padding: 0;
          @media @less-then-small {
            /*font-size: @medium-fs;*/
          }

          &.am-align-right {
            color: @color-accent;
          }
        }
      }

      .am-confirmation-extras-cost {
        padding-top: 0;
        background-color: fade(@color-accent, 10%);
        padding-bottom: 0;

        p {
          margin: 0;
        }
      }

      .dialog-footer {
        margin-top: @margin-big;
        text-align: center;
      }

      .dialog-footer-no-margin {
        margin-top: 0;
      }
    }

    &.am-active-recurring-dates, &.am-active-package-list {
      .am-select-service {
        transform: translateX(-200%);
        position: absolute;
      }

      &.am-mobile-collapsed {
        .am-select-date {
          left: -97%;
          position: absolute;
          top: 0;
          bottom: 0;
        }
      }

      .am-select-date {
        //transform: translateX(-94%);
        left: -47%;
        position: absolute;
        top: 0;
        bottom: 0;

        .am-calendar-picker, p {
          transition: all 0.1s;
          opacity: 0;
          transition-delay: 0.5s;
        }
      }

      .am-recurring-dates, .am-package-list {
        //transition-delay: 0.5s;
        z-index: 1;
        display: block;
        width: 97%;
        position: relative;
        bottom: 0;
        top: 0;
        left: 3%;
        right: 0;
        opacity: 1;
        padding: @padding-big @padding-medium;
        box-sizing: border-box;
        transform: translate(0);

        @media @less-then-medium {
          left: 0;
          right: 0;
          width: 100%;
        }

        @media @less-then-small {
          padding-left: 0;
          padding-right: 0;
        }
      }
    }

    &.am-active-confirm {
      .am-select-service {
        transform: translateX(-200%);
        position: absolute;
      }

      .am-select-date {
        position: absolute;
        top: 0;
        left: -47%;
        right: auto;
        bottom: 0;
        //transform: translateX(-94%);

        .am-calendar-picker, p {
          transition: all 0.1s;
          opacity: 0;
          transition-delay: 0.5s;
        }
      }

      .am-confirm-booking {
        //transition-delay: 0.5s;
        display: block;
        width: 97%;
        min-height: 500px;
        position: relative;
        bottom: 0;
        top: 0;
        left: 3%;
        right: 0;
        opacity: 1;
        padding: @padding-big @padding-medium;
        z-index: 1;
        box-sizing: border-box;
        transform: translate(0);

        @media @less-then-medium {
          left: 0;
          right: 0;
          width: 100%;
        }

        @media @less-then-small {
          padding-left: 0;
          padding-right: 0;
        }
      }
    }

    &.am-active-submit {
      .am-select-service {
        display: none;
      }

      .am-select-date {
        display: none;
      }

      .am-confirm-booking {
        display: none;
      }
    }

    .am-waiting-confirmation, .am-success-payment, .am-booking-fetched {
      text-align: center;
      background: transparent;
      z-index: 2;
      margin: 0 auto;
      padding: @padding-big*3;
      @media @less-then-small {
        padding: @padding-medium;
      }

      h4 {
        text-transform: uppercase;
        margin-bottom: @margin-big;
        color: @color-text-second;
        letter-spacing: 2px;
      }

      .el-button a {
        color: @color-white;
      }

      .am-svg-wrapper {
        position: relative;
        margin: 0 0 @margin-big;

        .am-hourglass {
          position: absolute;
          top: 50%;
          left: 50%;
          width: 32px;
          height: 42px;
          padding: 0;
          margin-left: -16px;
          margin-top: -24px;

          path {
            fill: @color-accent;
          }
        }

        .am-congrats {
          width: 96px;
          padding: 0;
          margin: @margin-big;
          /*border-radius: 50%;
          border: 2px solid @color-divider-gray;*/

          path {
            fill: @color-accent;

            &#shape-star {
              fill: #ffffff;
            }
          }
        }

        .am-spin {
          width: 160px;
          padding: 0;
          margin: 0;

          path {
            stroke: @color-accent;
          }
        }
      }

      .el-col {
        width: 100%;
      }

    }

    .am-success-payment {
      .el-select {
        max-width: 250px;
      }
    }

    .am-booking-fetched {
      position: absolute;
      top: 50%;
      left: 50%;
      margin: 0;
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
    }
  }

  .am-package-selected {
    .am-package-selected-col {
      padding-right: @padding-medium;
    }

    .am-package-rule {
      margin-top: @margin-medium;

      div {
        padding: @padding-small;
      }

      span {
        border-radius: @border-radius;
        background-color: rgba(0, 0, 0, 0.05);
        margin-top: @margin-small;
        padding: @padding-small;
        font-size: @small-fs;
      }
    }

    .am-package-description {
      margin-top: @margin-small;
      margin-bottom: @margin-big;
      font-size: @mini-fs;
      color: darken(@color-light-gray, 30%);
    }

    .am-packages-buttons {
      display: flex;
      align-items: center;
      justify-content: space-between;
      position: absolute;
      left: 24px;
      bottom: @padding-small*7;
      text-align: center;

      .am-package-slots-loaded {
        display: none;
      }
    }

    .am-package-service {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: @regular-fs;
      font-weight: @medium;
      border-radius: @border-radius;
      border: 1px solid @color-divider-gray;
      border-top: none;
      padding: @padding-small;
      margin-bottom: @margin-medium;

      @media @less-then-xsmall {
        flex-direction: column;
        align-items: flex-start;
      }

      &__inner {
        display: flex;
        align-items: center;
        overflow: hidden;

        @media @less-then-xsmall {
          width: 100%;
        }
      }

      &__name {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
      }

      &__quantity {
        padding: 0 @padding-small/2;
        margin-left: @margin-small;
        border-radius: @border-radius;
        background-color: fade(@color-accent, 10%);
        color: @color-accent;
      }

      &__employee {
        display: flex;
        align-items: center;
        justify-content: space-between;

        img, span {
          margin-left: 4px;
        }
      }
    }
  }

  .am-package-header {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: @margin-medium;

    .am-package-header-image-data-wrapper {
      flex: 1 1 auto;
      display: flex;
      align-items: center;

      @media @less-then-xsmall {
        flex-direction: column;
        align-items: flex-start;
      }
    }

    .am-package-image {
      display: inline-block;
      width: 60px;
      max-width: 60px;
      height: 60px;
      max-height: 60px;
      position: relative;
      flex: none;
      vertical-align: middle;
      border-radius: 50%;

      & > span {
        display: flex;
        align-self: center;
        width: 26px;
        height: 26px;
        position: absolute;
        bottom: 0;
        right: -13px;
        padding: 3px;
        border: 3px solid #FFFFFF;
        border-radius: 50%;
        background-color: @color-accent;
        box-sizing: border-box;

        & > img {
          border-radius: 0;
        }
      }

      img, svg {
        width: 100%;
        height: 100%;
        border-radius: 50%;
      }
    }

    .am-package-data {
      display: inline-block;
      width: 100%;
      vertical-align: middle;
      padding: 0 @padding-medium;
      @media @less-then-xsmall {
        display: block;
        padding: 0;
        margin-top: @margin-medium;
      }

      .am-package-title {
        max-width: 100%;
        h2 {
          font-size: @medium-fs;
          font-weight: @medium;
        }
      }
    }

    .am-package-price {
      display: flex;
      flex: 0 0 auto;
      flex-direction: column;
      align-items: center;
      border-radius: @border-radius;
      background-color: fade(@color-accent, 7%);
      color: @color-accent;
      font-size: @regular-fs;
      line-height: 1.2;
      padding: @padding-small;

      @media @less-then-xsmall {
        position: absolute;
        top: 0;
        right: 0;
      }

      sup {
        font-size: @small-fs;
        font-weight: @light;
        margin-left: 2px;
      }

      &__wrapper {
        color: @color-accent;
        &-discount {
          margin-bottom: @margin-small/2;
        }
      }

      &__discount {
        max-width: 112px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 4px @padding-small;
        border-radius: 13px;
        background-color: @color-accent;
      }

      &__discount-image {
        height: 18px;
      }

      &__discount-text {
        font-size: @regular-fs;
        font-weight: @medium;
        line-height: 1;
        color: @color-white;
        margin-left: @margin-small;
      }
    }
  }

  .am-timezone {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;

    &__text {
      background-color: rgba(0, 0, 0, 0.1);
      font-size: @small-fs;
      font-weight: 400;
      line-height: 1.15;
      padding: @padding-small/2 @padding-small;
      border-radius: @border-radius;
      box-sizing: border-box;
    }
  }
}

.StripeElement {
  margin-top: 3%;
}

.bla {
  div {
    margin-bottom: 0;
  }
}
