I am in total agreement tris. I worked all levels of customer service for a huge company, from front line employee to corporate level.
A tiny bit of goodwill and understanding goes a long way, even in situations where there is no quick or easy remedy.
I used to tell my trainees, listen, listen, listen...a lot of times a customer just wants to be heard.
But this is freakin' popcorn and a soda, this manager (and I agree it was probably a "shift" manager) was out of line. I understand policy, but that policy needs to either be publicized or explained to the customer ahead of time.
Idiots like this kid you were dealing (and I pray he was a kid) banks on you not escalating this problem, and a lot of people don't.
I would email the provided address and cc the Mayor Hagnauer.