REFACTOR code to maintain layer architecture
ADD css