feature & test: #773 move input styling to css, better modularization to aid testing