Hi @dedline, there are already some great suggestions in this thread, but basically, if you are not afraid of building your own kit using off-the-shelf components, then there are a lot of ways of detecting this type of activity, and a lot of automations you can do as a result.
If we work on the assumption that you’re capable of attaching sensors to something like a Wemos D1 Mini (or similar ESP-based board), you will find that flow rate sensors for the pipe sizes that you find in sinks and toilets are extremely affordable (literally just a few dollars). I use them to measure how much water I am pumping out of the ground, but you could just as easily use that data as triggers for other automations.
For example, if there is any sort of flow in the toilet water line, it means someone has flushed, which means we should turn on the extractor fan for a few minutes. Additionally, we could hack an air-freshener dispenser to spritz a few times when the extractor stops. This is all easily doable without writing any code using ESPHome.
Personally I have tried to minimise the presence of visible cables in my bathroom. I do, however, have a reed sensor on the toilet door, and a motion sensor peeping through the ceiling above it so that I may know when the room is occupied. I have toyed with the idea of poking an ultrasonic sensor through the roof to measure the distance between the toilet seat and the roof, on the logic that if anyone is sat there, the distance will be less than the default, and you can then tell the difference between someone stood taking a piss, and someone sat down for whatever reason.
Depending on how understanding your life partner is, I have used two ways to hide cables. One is to use a colour that most closely matches the paint, or white, and glue them along the corners of the room. A more extreme but very effective method is to use an angle grinder with a diamond blade to cut a channel in the wall (my house is brick and mortar), into which you can then install a piece of conduit, or just the raw wire if you’re as stupid as I am, and you then plaster over, make good, and touch up with paint or re-tile.
Whatever you end up doing, please post about it here on the forums, and also ask for help in the ESPhome forums. Seeing the work that others do is a big inspiration for all of us.