To throw my hat in the ring:
- You need to calculate two positions: Rest position and Docked Position. In my case all of them are in the rage zero to 0ne.
- For position you pick the higher of the two.
- For the rotation you just add some offset to the docked position. Map the position float - if it is docked the angle is 0 if it is docked + offset and above - the angle is whatever you’ve set.
- Move the leader up and down and based on it get the docked position.