added styling and model validation