Usually the choice of use of the basically identical terms has to do with how much Latin influence there was in the teacher's language education. Latin influence = locative. English language simplified term = prepositional.
Deep into some languages there might be some circumstance that produces a difference in the way the terms are used but definitely not at the level Duo gets to.
Basically, на means on, в means in.
For more abstract places that are characterized more as processes rather than physical locations with enclosed boundaries, you'd say На. Examples - Work (работа), Meeting (собрание), Concert (концерт), Hearings (слушания), etc.
There are also just some places that historically were wide open space, so even though in modern understanding you'd be "in" them, you'd still say "на" (post office, stadium, bus stops, etc.).
рабо́та (rabóta) [rɐˈbotə] "work; labor; assignment; occupation": From Old East Slavic робота (robota) with an Old Church Slavonic spelling, from Proto-Slavic *orbòta. From Proto-Slavic *orbъ ("servant, slave") + *-ota. From Proto-Indo-European *h₃órbʰos (“orphan”). Apparently cognate with Ancient Greek ὀρφανός (orphanós, “orphaned”), Latin orbus (“orphaned”), Old Armenian որբ (orb, “orphan; orphaned”) and Sanskrit अर्भ (árbha, “small”). It also appears to be related to Proto-Germanic *arbaidiz (“labour; hardship”) [German Arbeid, "work"], but with a different suffix.
It does, but for some places it means at or in. For instance, Почта - post office. You say На почте to say "at the post office", even though in modern days it's a building that you go inside. Стадион and Остановка are also good examples - these are typically open places that you stand at/on.
Non-physical/abstract places that you can be at (Meetings, demonstrations, court hearings, work, etc.) also take На if you are saying that you were there or that something happened there, and they can take В if you want to say you participated in them directly (though then you have to use the verb участвовать specifically to denote that).
It is left over from Soviet times.
The government pretended to pay the workers and the workers pretended to work.
Sort of like in America except most people don't work for the government there. Another difference is those Americans who do work for the government do get really, really, really paid if you total up the pay and benefits. However, the government workers still have the pretending to work part down pat.