{% load cal_tags %}
{# Stacked time-grid: background lines/labels + foreground events #}
{# --- Horizontal lines + hour labels (background layer) --- #}
{# Header spacer row (matches the 1.75rem header in grid-template-rows) #}
{# One row per slot (e.g. 96 for 15-min resolution) #} {% for label in timegrid_slot_labels %}
{% if label %} {% endif %}
{% endfor %}
{# --- Events overlay (foreground layer) --- #}
    {# Weekly local-overlap rendering: split only inside overlap windows (clusters) #} {% for d in days %} {% if d.timegrid_clusters %} {% for cluster in d.timegrid_clusters %}
  1. {% for ev in cluster.events %}

    {{ ev.occ.title }}

    {% endfor %}
  2. {% endfor %} {% else %} {# Fallback: if clusters are missing, render segments directly #} {% for seg in d.timegrid_events %}
  3. {{ seg.occ.title }}

  4. {% endfor %} {% endif %} {% endfor %}