Another big factor for the lack of teenage job opportunities is an increase in child minimum wage and stricter child labor laws. Businesses would rather hire a collega student than some twelve year old for a customer facing role, if pay is equal anyway.
I personally think child minimum wage should be lower to give them more opportunities. But it's a tricky balance there, since it's age discrimination - I think most kids and their parents are fine with that, as long as the kid is just learning and not having to feed their parents.
