better UI component design