"She was swinging a 30"/-11 all of last year, and towards the end of the season was swinging very fast. Figured we would end up with a 31"/-10."
No, there are not absolutes, but here is my 2 cents:
80% of 12u girls ...-10 suits best
The weakest 10% or so go lighter.
The heavy/strongest 10% or so go -9.
I would be looking to get your dd into the 80%. Based on her height, she is just now tall enough for 31" so 31/21 is where I would hope to end up. However, based on her height AND weight, she is physically VERY skinny...fit, long and lanky, I mean no offense. There is a very real possibility that she is currently in that weaker 10% physically. If that is the case, then I'd consider a 31/20. If not, then a balanced 31/21 is the ticket. Hopefully this helps. I deal with a lot of kids this size/age and if anything, I would just validate that it sounds like you had the right choice this year and you have a pretty good handle on where she should be based on your quote above. I would completely avoid a 32" bat at this point, but start saving for when she is 5'3". I swear by 'right-sizing' a kid's bat and would never buy one to 'grow into.' As she grows, sell one/buy another. Buy good bats even if you have to drink cheaper beer.
If it were me, I'd look at a transition bat 31/20 for fall ball and (maybe) move into 31/21 sometime in spring/early summer. (guessing).