UIAppearance refactor