smoother button transition