It seems that your colleague's ability to think on their feet and communicate is superior to your own - and these traits are worthy of a manager, don't you think?
Your technical ability is superior to his - so you claim, but he is probably no slouch in that department because he sure is good enough to make your idea his and I take it, he does that to the rest of the team, too. Good managers realize and understand that not all good ideas come from them alone and they are pretty good at picking other people's brains. In this case, he seems to have done a pretty good job with yours. He doesn't have to be technically superior to you, all he has to be is good enough (*). Which is what a management position would require.
What have you done to show that you are management material? (**) He is verbal, and you are not. If I have to pick one to represent the team to the rest of the world, tell me why should I pick you and not him? Are you verbal enough to represent the team, or will you be rolled over if you run at meetings into someone like your colleague?
Management is not rocket science, it's a discipline. He is no genius but so far, he seems to have shown more management potential than you have. Which is why he is being promoted. What have you shown? Because the world can only see what you show. Repeat after me: invisible talent is unrecognized talent. And NOBODY gets promoted on the basis of unrecognized talent.
You need to be more like him than you realize or perhaps than you'd like. Nobody can hear your voice let alone know what you think if you don't speak. Leaders who don't speak are not leading. Ditto with managers.
(*) Your technical ability means little to management if it turns out that your colleague is a far more effective communicator of your own ideas than you are and if your colleague had a history of taking other people's ideas and working with others to improve on them and make them work. It pretty much seals the deal if your colleague shows a grasp of the bigger picture e.g. the impact on the team, the management unit, the company and you never tried to understand your activities in the context of the bigger picture. Frankly, in outfits where the only path upwards is through promotion into management, the only thing that having great technical ability can do for you is that you get to keep your day job.
(**) At one time in the mid1990s, I worked as a consultant for AT&T. What gave AT&T its distinctive culture is that it combined some of the best technical talent on the face of the Earth with some of the worst management on the face of the Earth. That's because AT&T was in the habit of promoting its strongest technical people to management. Without prep, without training and without support, many of these promoted floundered on the job and their incompetence made life miserable for everyone including themselves. And AT&T was making a fool's bargain because it was exchanging a great tech person for a lousy manager. So your assertion that you are more technically competent than your colleague makes no impression on me. I am technical as hell but you'd better believe that being technical is not my only attribute. I have worked in a slew of corporate and startup environments over the decades, and I have never been in a professional situation where all I needed was superior technical ability.