abstracting styles to component