The first possibility is easier to handle. Create a barrier so the puppy cannot get into the spare bathroom where the litterbox is kept. Not too many of us would blame them for that. Try this first. The second possibility is a little more complex.
Cats establish territories, even when they are kept totally indoors.
Whenever another animal is introduced, their territory is invaded and it can create anxiety and the need to re-establish the range. The result is urination in places other than the litterbox. This can even happen when new humans enter their territory as with the arrival of a new baby, for instance. You have already done the first steps. Try the puppy barricade.