I configured a sitenotice message [¹] but it now shows up on every
page. I'd like to limit only for article pages but no category pages,
system messages, etc.
Is something like that possible? Maybe with a css hack?
Yes, you can use CSS for that (hint: article page have ns-0 class).
Another option is to use a parserfunction for comparing the current
namespace with the one you want it to appear.