I think the best sentence is the second one.
In fact, choosing location prepositions is sometimes a problem.
But I would recommend you the following rule:
The choice of the preposition depends on the kind of place.
If it is some volume, we use IN.
If it is some surface, we use ON.
AT is used when the former ones aren't appropriate (for example, at work, at the hotel, at the station, at the bus stop, etc.).
Sometimes the choice depends on what the speaker means.
For example, it's possible to say both 'in the office' or 'at the office'.
Here the choice depends on your view of this office.
If it's just a 'room for business', use IN .
If you mean 'at work' (not exactly in this room), use AT.