Refactored views with custom elements