We have been using Staff Notices feature to add notes for Staff, but I’ve just found out that these are completely visible to non-Staff and that this is an intentional aspect of the feature.
Is there a way to customize our install via CSS, a plugin, or another way to hide all of these from non-Staff?
I am sorry for the confusion with that feature, but you are correct, that is the intended behaviour - to notify all users of a staff message above a post.
It sounds like you have been using Staff Notices instead of Whispers. perhaps try using that feature because I think it does what you were trying to achieve. you need can make staff the whisper allowed group in your admin - all site settings.
If you really want to hide staff notices, you can use some CSS, but be aware that it can be overridden in the browser dev console.
For what do you use the staff notes? Maybe there is another feature you can use instead. Hiding with CSS isn’t that safe. It’s quite easy for a user to undo these changes.
The choice to label these “Staff notice” does make it pretty ambiguous: it means “Notice from Staff” but could easily be misunderstood as “Notice to Staff”. An extra word in there could head off such confusion.