{# Entities × domains grid of per-cell point totals. Each row is one ranked entity; each column is one scoring domain. Empty cells render as muted dashes; non-zero cells render as a tinted pill (escalate-tinted at high points, monitor-tinted at lower). The grid lets the analyst see at a glance whether the report concentrates on security_evidence or whether movement carried significant weight too. #} {% macro domain_score_matrix(matrix, entity_label="Entity") %} {% if matrix and matrix.rows %}
Domain score matrix

How risk points distribute across domains

{% for d in matrix.domains %} {% endfor %} {% for row in matrix.rows %} {% for cell in row.cells %} {% if cell.value > 0 %} {% else %} {% endif %} {% endfor %} {% endfor %}
{{ entity_label }} Score{{ d.domain_label }}
{{ row.entity_display }} {{ row.score }} {{ cell.value }}
{% endif %} {% endmacro %}