Added CSS styling and abstract states.