I'm just 2k so take this with a grain of salt:
21: White's wall is very strong. This move doesn't really do anything. I think maybe you wanted to threaten the cut?
33: I think maybe keeping the white stones split is more important around O7.
47: Ok, you tennuki here, so let's look at the board results so far: black took two large corners and a wall facing the q16 stone, but white has a strong wall on the left and thickness facing three weak black stones (k3). I think black can be happy with this, but keeping those 3 white stones healthy is going to be difficult, I'd keep an eye on their escape routes.
57: This feels bad to me, you're trying to disrupt white's shape, but black gets closed into the corner and white can make a base on the side.
I don't think white played well in the followup though, black gets a nice splitting attack. As white I think I'd just connect for 60.
91: playing the atari at N17 would have saved you from the problem here later. Sometimes removing aji is bigger than getting a few more points.
103: I don't like moving these stones out. They are right next to some extremely strong white stones, and you don't have much to gain saving them in my opinion. If you want to save a weak group, how about the three stones on the bottom

103-133: OK, you've staked the whole game on killing these white stones now. Did you need to do that? Who had more territory? Could you have won without this fight?
145: maybe better at H9? You're threatening a cut, but it's a hard cut to activate. (Notice how you couldn't take the cut and white ignored you)
147: Now you are linking up... with those weak stones without a base

It took a long time, but the weakness of those three became relevant in a bad way for you.
189: I'm guessing you didn't see white's tricky tesuji at K12, it's a hard one to find. But if black had played H12 here the eye would be gone and black may possibly have enough liberties to win the capturing race (I didn't read it, sorry).