First of all: you need to remove padding from button since overflow works for edge of the item not for edge of the padding (if that make sense :D).
For the dots: i wouldn’t make them absolute since you want them to be visible in default state. Let them to be in flow of the text. And since they are 9px wide, just set width of the buttons to be 9px. And on hover do what you did before.
Hint: if you want to animate that reveal, use max-width instead width and put transition on it and whola :)
Keep on hacking.