As a tech user, I still don't find the element UI great. It's clunky, quite slow and generally not intuitive, and wastes a lot of screen real-estate.
I'm using slack and discord and I find both to be _significantly_ better for group work.
But actively trying matrix on mobile, I still found the simplified FluffyChat UI much more usable on mobile anyway. Element is this sort of annoying middle ground which is not great for either.
The third point is also important, because matrix is one of the few systems where you can have a private network for your work. You know, just like slack (again, the "group" they're apparently targeting?). Great feature. But if you, like me, would like to use matrix for both work and other communications, you're stuck.
So in the end you run two clients. Element for work, fluffychat for everything else? And maybe shildychat for your other private group (I wish this was a joke).
I wouldn't be against it (the _clear_ distinction between accounts is important!), but element is already a memory hog. You really don't want multiple instances running.
Other apps built on Matrix do not look like Slack, e.g. Fluffychat, which looks very similar to Signal.
Your third point is a client side feature. If you meant that you want Element to have that feature, then yes I agree. But in saying that, it wouldn't surprise me that it's not high on the priority list when most clients (of any chat app) have this feature.