I spent all my votes and didn't get the correct badge. Why didn't it get awarded?
Do you mean the Suffrage badge/Vox Populi, the ones for using thirty/forty votes in a day? It will likely come, if you did indeed do that within the time period of a UTC day (which might not match your timezone).
I suspect either this is a caching issue, or that it is an issue with SE using UTC time instead of whatever timezone you find yourself in, so the Stack Exchange "day" might have rolled over at a different time, and your vote count might have been reset.
It does take time to appear (the badge awarding scripts don't run all the time), so you might just need to wait. If not, more than likely you used 30 votes in your day, not a Stack Exchange day, because of the different time zones, and thus you will not be awarded the badge.
As far as I am aware, the badge scripts run when the day "ends" in UTC, so you will most likely have to wait until tomorrow at some point (whenever the rollover would be in your timezone.)
A few meta posts that might help: