To me, bottleneck seems to be a limitation of a system or environment that disallows a normal process from happening.
To me, overhead is a cost associated with the function or method of the program that has a lot of time complexity not sure if it uses space complexity too.
Not sure if my statements are correct. Examples from you all would clear a lot of things up.
But I managed to read the definitions from Wikipedia to get some ideas. But it still feels vague or uncertain to me because I am not sure how credible the below sources are.