.v-input-number {
  position: relative;
  width: 200px;
  .v-input-number-input {
    width: 100%;
    height: 40px;
    padding: 0 45px;
    text-align: center;
    box-sizing: border-box;
    border: none;
    outline: none;
    cursor: pointer;
    color: #606266;
    border-radius: 4px;
    border: 1px solid #ddd;
    transition: 0.3s;
    &:hover {
      border-color: #c0c4cc;
    }
    &:focus {
      border-color: #409eff;
    }
  }
  .v-input-number-span {
    position: absolute;
    top: 1px;
    width: 42px;
    height: 38px;
    display: flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    background-color: #f5f7fa;
    cursor: pointer;
    user-select: none;
    &:hover {
      .button {
        color: #409eff;
      }
      & ~ .v-input-number-input {
        border-color: #409eff;
      }
    }
    &:first-child {
      left: 1px;
      border-radius: 4px 0 0 4px;
      border-right: 1px solid #dcdfe6;
    }
    &:nth-child(2) {
      right: 1px;
      border-radius: 0 4px 4px 0;
      border-left: 1px solid #dcdfe6;
    }
    .button {
      font-size: 22px;
      transition: 0.3s;
      color: #9b9fa0;
      user-select: none;
    }
    .iconfont {
      font-size: 16px;
    }
  }
  .controlsPosition {
    height: 19px;
    left: auto !important;
    right: 1px;
    &:first-child {
      height: 18px;
      top: 20px;
      border-right: none;
      border-bottom: none;
      border-top: 1px solid #dcdfe6;
      border-left: 1px solid #dcdfe6;
      border-radius: 0 0 4px 0;
    }
  }
  .disabled {
    cursor: not-allowed;
    .button {
      color: #c0c4cc;
    }
    &:hover {
      .button {
        color: #c0c4cc;
      }
      & ~ .v-input-number-input {
        border-color: #ddd;
      }
    }
  }
  .v-input-number-input-disabled {
    background-color: #f5f7fa;
    color: #c0c4cc;
    &:hover {
      cursor: not-allowed;
      border-color: #ddd;
    }
    &:focus {
      border-color: #ddd;
    }
  }
  .v-input-number-input-inputDisabled {
      cursor: not-allowed;
      background-color: #f5f7fa;
      color: #c0c4cc;
  }
}
.medium {
  width: 180px;
  .v-input-number-input {
    height: 36px;
  }
  .v-input-number-span {
    height: 34px;
    width: 37px;
  }
}
.small {
  width: 160px;
  .v-input-number-input {
    height: 32px;
  }
  .v-input-number-span {
    height: 30px;
    width: 33px;
  }
}
.mini {
  width: 140px;
  .v-input-number-input {
    height: 28px;
  }
  .v-input-number-span {
    height: 26px;
    width: 29px;
  }
}