ENH: Styler css Str optional input arguments as well as List[Tuple]
- [x] closes #39563 
- [x] tests added / passed
- [x] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
- [x] whatsnew entry

this is ready for review.. @jreback changes made, with some better typing throughout the module.

one failed test is unrelated. thanks @attack68 keep em coming!