In newer versions on Mendix, you can set dynamic classes based on expressions. I don't think you can change theme of the app based on user roles, but you might be able to change classes based on dynamic classes expressions.
Another way would be to change visibility of elements based on user-roles.
Theme is a really big topic so to say. In my experience, apps have a single theme to maintain consistency when same person has different user role for instance. This increases the usability and familiarity of the application for users.
I would suggest you to really think if the use case justifies the effort and if its really needed.
css selector widget is deprecated because of introduction of dynamic classes from Mx 9 onwards. Also the widget would be helpful to design specific elements on your page, but theming with it I’m not so sure.