{# Live-refreshes on sse:pipeline-changed / sse:jobs-changed so cards that #}
{# move via the background pipeline-detection job (or get archived nightly) #}
{# re-flow without a reload. The [!window.__kanbanDragging] trigger filter #}
{# skips a refresh while a drag is in progress; SortableJS is re-initialised #}
{# on htmx:afterSettle since the innerHTML swap tears its bindings down. #}