If you are using GWT widgets to build the entire app, then yes, CSS is the way to go. Each of the core widgets has a CSS class associated with it, and GWT allows you to add additional CSS classes to panels/widgets as needed.
The other way is to mix GWT code with HTML content. A GWT app doesn't need to take over the whole page, it might only be contained in a single DIV in the page. They designer would design everything in the page, except the area where the GWT app will appear, then uses CSS to style the app.