This is the best tutorial I have found on this subject. I am trying to avoid using styled, and I think the best way to work with MUI is to use all of its default power. Very few show how to modify the theme itself so that your default button is just what you want it to be!
Great and informative video. Here is a time saving tip. You don't need to import theme if you use sx prop and pass function to it. Theme is passed to function automatically. sx={{ color: theme => theme.palette.primary.main }}. If you use typescript you might need to import Theme style from @mui/material or @mui/material/styles and use it like this sx={{ color: (theme: Theme) => theme.palette.primary.main }}