{# Stacked bar — segments of brass at varying tints (opacity by rank). #}
{% set spend_cats = breakdown | rejectattr('is_excluded') | list %}
{% if total_outflow > 0 and spend_cats %}
{% for r in spend_cats %}
{% if r.total > 0 %}
{% set pct = (r.total / total_outflow * 100) %}
{% set tint = [0.95, 0.78, 0.62, 0.50, 0.40, 0.32, 0.26, 0.22, 0.18, 0.15][loop.index0] if loop.index0 < 10 else 0.12 %}
{% if pct > 8 %}{{ r.category }}{% endif %}
{% endif %}
{% endfor %}
{% for r in spend_cats %}
{% if r.total > 0 %}
{% set tint = [0.95, 0.78, 0.62, 0.50, 0.40, 0.32, 0.26, 0.22, 0.18, 0.15][loop.index0] if loop.index0 < 10 else 0.12 %}
{{ r.category }} ${{ '{:,.0f}'.format(r.total) }}
{% endif %}
{% endfor %}
{% endif %}
Category
Total
% outflow
#
Avg
{% for r in breakdown %}
{{ r.category }}
{% if r.is_excluded %} (excluded from leak){% endif %}
${{ '{:,.2f}'.format(r.total) }}
{% if r.is_excluded %}—{% else %}{{ '{:.1f}'.format(r.percent_of_outflow) }}%{% endif %}
{{ r.count }}
${{ '{:,.2f}'.format(r.avg) }}
{% endfor %}
{# ===== Recurring callout ===== #}
{% if recurring %}
// Recurring charges detected
Highest-leverage section — each one canceled is monthly savings forever.
+ Add to bills drops a charge into Recurring expenses
so the cash-runway card stops missing it. × Cancel marks for cancellation
and adds to the freed-money tally below.
{# Cancel tally strip — updates as user clicks × Cancel. Hidden until first click. #}
Flagged to cancel$0.00/mo·
$0.00/yr saved
·
0 item(s)
Apply this to your debt attack by bumping the primary target's
attack_allocation by the monthly amount.
Merchant
Avg / charge
Total in period
Count
{% for r in recurring %}
{{ r.description }}
→ {{ r.cleaned_name }}
${{ '{:,.2f}'.format(r.avg_amount) }}
${{ '{:,.2f}'.format(r.total) }}
{{ r.count }}
{% if r.in_bills %}
✓ In Bills
{% elif r.in_bills_inactive %}
{% else %}
{% endif %}
{% endfor %}
{% set recurring_total = recurring | sum(attribute='avg_amount') %}
{% if recurring_total > 50 %}
Recurring charges total ~${{ '{:,.0f}'.format(recurring_total) }}/mo (avg). Each one canceled is ${{ '{:,.0f}'.format(recurring_total) }} freed monthly toward debt.