Use different template for same route based on user group
Just do it with Twig by having a main template pull from two other templates based on the user group. So in your index template (or whatever template gets called), just add this at the top:

{% if currentUser.isInGroup('customer') %}
    {% include '_dashboard/customer/settings' %}
{% else %}
    {% include '_dashboard/admin/settings' %}
{% endif %}


And then fill out each template however you want.

Conversely, you can check if the user is a CMS admin with {% if currentUser.admin %} and then the {% else %} would be for customers.