better separation of logic and css changes