fix layouts; refactor the style