Add vertical centering, rename flex component and layout