{% set theme = request.cookies.get('theme') or 'light' %} {% block title %}rosbackup-ng{% endblock %} {% block head %}{% endblock %}
{%- if flash and flash.msg %} {%- set _ic = {'success': '✓', 'error': '✕', 'warning': '!', 'info': 'i'} %}
{{ _ic.get(flash.level, 'i') }}
{% if flash.title %}
{{ flash.title }}
{% endif %}
{{ flash.msg }}
{%- endif %}

{% block page_title %}{% endblock %}

{% block head_actions %}{% endblock %}
{%- if request.state.session %} {%- set _nic = {'success': '✓', 'error': '✕', 'warning': '!', 'info': 'i'} %}
{%- endif %}
{% if config_error %} {% endif %} {% block content %}{% endblock %}
{# In-browser file preview popup (filled by app.js with plain text via textContent). #} {# In-app confirmation modal — replaces the browser-native confirm() for every hx-confirm (a global htmx:confirm handler in app.js routes them here). #} {# One-time display of a freshly generated API token (opened by the token-created event). #}