@import '../../style/variables.less';

.pro-step-wrapper {
  padding-right: 48px;
}

.pro-step {
  position: fixed;
  right: 0;
  z-index: 99;
  min-width: 48px;
  min-height: 48px;
  overflow-x: hidden;
  overflow-y: auto;
  text-align: center;
  background-color: var(--zaui-global-bg, #fff);
  border-radius: 0 0 var(--zaui-border-radius) var(--zaui-border-radius);
  box-shadow: -1px 0px 5px 0px var(--zaui-shadow, rgba(56, 56, 56, 0.15));
  cursor: pointer;
  transition: width 0.2s;

  > .pro-step-menu {
    display: flex;
    align-items: center;
    width: 100%;
    height: 48px;
    font-size: var(--zaui-font-size-lg, 16px);
    border-bottom: 1px solid var(--zaui-line, #dddddd);
    > .anticon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 48px;
      height: 24px;
      .pro-step-menu-icon {
        width: auto !important;
        height: auto !important;
        font-size: var(--zaui-font-size-lg-title, 24px);
        fill: var(--zaui-brand, #006aff);
        > div {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 48px;
          height: 24px;
        }
      }
      > button {
        width: auto !important;
        height: auto !important;
        > .pro-step-menu-icon {
          width: auto !important;
          height: auto !important;
          font-size: var(--zaui-font-size-lg-title, 24px);
          fill: var(--zaui-brand, #006aff);
          > div {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 48px;
            height: 24px;
          }
        }
      }
    }

    > .menu-icon {
      font-size: var(--zaui-font-size-lg-title, 24px);
      fill: var(--zaui-brand, #006aff);

      > div {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        height: 24px;
      }
    }
  }

  .pro-step-menu-content {
    overflow: hidden;

    &:hover {
      overflow-y: auto;
    }
  }

  .pro-step-com-menu-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 48px;
    padding-right: var(--zaui-space-size-md, 24px);

    &:hover {
      background-color: rgba(185, 185, 189, 0.1);
    }

    &.current {
      background-color: var(--ant-primary-1, #e6f4ff);

      &:hover {
        background-color: var(--ant-primary-1, #e6f4ff);
      }
    }

    > .pro-step-menu-item {
      display: flex;
      align-items: center;

      > .pro-step-menu-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48px;
        min-width: 48px;
        height: 100%;

        > svg {
          fill: var(--zaui-brand, #006aff);
        }

        > .pro-step-dot {
          width: 6px;
          height: 6px;
          background: var(--zaui-brand, #006aff);
          border-radius: 3px;

          &.errored {
            width: 12px;
            height: 12px;
            background: #ff5050;
            border-radius: 50%;
            fill: #ff5050;
          }

          &.disabled {
            background: #939599;
            fill: #939599;
          }
        }

        .pro-step-dot-icon {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 18px;
          height: 18px;
          color: #ffffff;
          font-size: var(--zaui-font-size-sm, 12px);
          background: var(--zaui-brand, #006aff);
          border-radius: 9px;

          &.errored {
            background: #ff5050;
            fill: #ff5050;
          }

          &.disabled {
            background: #939599;
            fill: #939599;
          }
        }
      }

      > .pro-step-menu-name {
        color: #0a0a0a;
        text-align: left;

        &.disabled {
          color: #626366;
        }
      }
    }

    > .pro-step-checked-status {
      height: 18px;

      > svg {
        fill: var(--zaui-brand, #006aff);
      }

      .pro-step-error-dot {
        display: flex;
        align-items: center;
        justify-content: center;

        .@{ant-prefix}-badge {
          .@{ant-prefix}-badge-count {
            background: rgba(255, 80, 80, 0.15);
            color: #ff5050;
            .@{ant-prefix}-scroll-number-only-unit,
            .@{ant-prefix}-scroll-number {
              font-weight: 600;
            }
          }
        }

        > span {
          color: #ff5050;
          font-weight: 600;
          font-size: var(--aui-font-size-sm, 12px);
          border-radius: 8px;
        }
      }
    }
  }

  &.pro-step-open {
    width: 200px;
  }

  &.pro-step-closed {
    width: 48px;
  }
}
