{# Operator-uploaded banner above the wordmark. Falls back to the
vendora.svg logo when no banner is set. The portal serves the
banner from /branding/banner — a 404 there means banner_url is
None and this whole block renders the logo. #}
{% if banner_url %}
{% else %}
{# Inline so fill="currentColor" lets CSS recolor via the
--accent theme variable — keeps logo and h1 tracking
each other when the operator changes the theme color. #}
{% endif %}
{{ title }}
{{ welcome_message or 'Insert coin or enter voucher code' }}
{% if not portal_status.enabled %}
⚠ Vendo unavailable
{{ portal_status.message }}
{% else %}
🪙 Insert Coin
Tap below to start inserting coins
0
Coins Inserted
Time left
—
Countdown resets on each coin
{# combo-preview is hidden until /api/status returns a real combo
(i.e. coins inserted + combo solvable). Customer never sees an
empty/placeholder state. Cancel was removed too — countdown
expiry + the server-side watchdog handle abandonment. #}
✓ Payment Received
Your voucher code
--------
Time purchased—
Valid for—
Combo—
💡 Save this code — you can reconnect with it later if your time isn't used up.