{# Header spacer row (matches the 1.75rem header in grid-template-rows) #}
{# One row per slot in the visible window #}
{% for label in timegrid_slot_labels %}
{% if label %}
{{ label }}
{% endif %}
{% endfor %}
{# --- Events overlay (foreground layer) --- #}
{# Local-overlap rendering: split only inside overlap windows (clusters) #}
{% for cluster in days.0.timegrid_clusters %}
{% endfor %}
{# Fallback: if clusters are missing, render segments directly #}
{% if not days.0.timegrid_clusters %}
{% for seg in days.0.timegrid_events %}