Hello, Hela. Your analysis of the first sentence (I gave my sister a cat for her birthday) is correct. I'd be happy with calling the prepositional phrase "for her birthday" an adjunct (adverbial) of time, though some more accurate label may exist.
New words, one handy idiom, and a 2-minute quiz — delivered to your inbox to keep your streak alive.