Is there a separate construct for "at the gym", rather than "in the gym"? And/or is such a usage unknown in British English?
No, no separate pattern. In this particular context yn works for 'at' as well.
As a Brit I'd usually say "at the gym" too, for what it's worth.
I happened to wonder what the word for 'gym' was before I got to it on this course, and found 'ymarferle' in the dictionary, so I thought I would try it, but it was not accepted. Is it less commonly used than 'campfa'?
Yes. Use campfa for a gym.