In the early days of my QS, I used to use toggle a lot more than I used the delayed_latch. And one of the things I have found is that with toggle, sometimes you enter the sheet with key already in the pressed state. So what I did is I made right_puff force_off, and I did that for most of my control sheets for continuity. When I load a sheet, I'm in the habit of right_puff. You always want your toggle and delayed_latch to have force_off so you can get back to zero, so to speak.
Since then, I have been using a lot more delayed_latch which doesn't start off with the key being pressed, and that works better. So you can try changing the toggle to be delayed_latch 200 or something like that. If you make it just long enough, you can cancel the latch with the same input. If you make it too short, it acts just like a toggle but defaulting to off.
I don't think I messed around with the sprint, but you can use delayed_latch for that also. caps_lock works sometimes as a state machine, but it doesn't synchronize with the QS so sometimes that's no good. Useful for situations where you need the state to survive QS profile changes or large groups of force_off.