A style stores the visual configuration for a widget. Depending on the widget, that can include color choices, transparency, frosting, layout settings, and other appearance-related options.
Styles are meant to separate visual identity from the widget’s core function, so the same widget can support multiple looks without becoming a completely different tool.