added validations and styling