{{ value }}{% if delta %}{{ delta }}{% endif %}
{{ label }}{% if tip %}i{% endif %}
{% if spark and spark|length > 2 %}
{% endif %}
{% endmacro %}
{% macro stat(label, value, color, tip=None) %}
{% for card in overview.hero_cards %}
{{ hero(card.label, card.value, card.color, card.spark, card.delta, card.delta_dir, card.tip) }}
{% endfor %}
{% for card in overview.stat_cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
Day-of-Week Patterns
{% if overview.personal_records %}
Personal Records
{% for pr in overview.personal_records %}
{{ pr.icon }}
{{ pr.value }}
{{ pr.label }}
{{ pr.date }}
{% endfor %}
{% endif %}
{% if overview.monthly_table %}
Month by Month
{{ overview.monthly_table | safe }}
{% endif %}
{% if vitals.stat_cards %}
{% for card in vitals.stat_cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
{% endif %}
{% if sleep.hero_cards %}
{% for card in sleep.hero_cards %}
{{ hero(card.label, card.value, card.color, card.spark, card.delta, card.delta_dir, card.tip) }}
{% endfor %}
{% endif %}
{% if sleep.stat_cards %}
{% for card in sleep.stat_cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
{% endif %}
{% if training.hero_cards %}
{% for card in training.hero_cards %}
{{ hero(card.label, card.value, card.color, card.spark, card.delta, card.delta_dir, card.tip) }}
{% endfor %}
{% endif %}
{% for group in training.card_groups %}
{{ group.label }}
{% for card in group.cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
{% endfor %}
{% if training.records %}
Training Records
{% for pr in training.records %}
{{ pr.value }}
{{ pr.label }}
{{ pr.date }}
{% endfor %}
{% endif %}
{% if activity.stat_cards %}
{% for card in activity.stat_cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
{% endif %}
{% if routes_tab.stat_cards %}
{% for card in routes_tab.stat_cards %}
{{ stat(card.label, card.value, card.color, card.tip) }}
{% endfor %}
{% endif %}
{{ routes_html | safe }}