{# app/templates/admin/store-theme.html #} {% extends "admin/base.html" %} {% from 'shared/macros/alerts.html' import loading_state, error_state %} {% from 'shared/macros/headers.html' import page_header_flex %} {% from 'shared/macros/modals.html' import confirm_modal %} {% block title %}Theme Editor - {{ store_code }}{% endblock %} {# ✅ CRITICAL: Binds to adminStoreTheme() function in store-theme.js #} {% block alpine_data %}adminStoreTheme(){% endblock %} {% block content %} {% call page_header_flex(title='Theme Editor', subtitle_var="'Customize appearance for ' + (store?.name || '...')") %} Back to Store {% endcall %} {{ loading_state('Loading theme...') }} {{ error_state('Error', show_condition='error && !loading') }}

Choose a Preset

Start with a pre-designed theme, then customize it to match your brand.

Colors

Typography

Layout

Advanced: Custom CSS

Preview

ACTIVE THEME

COLORS

Primary

Secondary

Accent

TYPOGRAPHY

Heading Font

This is body text font example. It will be used for paragraphs and descriptions.

BUTTONS

LAYOUT

Product Layout:

Header:

Product Card:

{{ confirm_modal( 'resetThemeModal', 'Reset Theme', 'Are you sure you want to reset the theme to default? All customizations will be lost.', 'resetTheme()', 'showResetThemeModal', 'Reset', 'Cancel', 'warning' ) }} {% endblock %} {% block extra_scripts %} {% endblock %}