Codes de récupération

{% if codes %}

Codes générés (à conserver hors ligne, montrés une seule fois) :

{% endif %} {% if consumed is defined and consumed %}

✓ Code de récupération consommé (usage unique).

{% elif consumed is defined and not consumed %}

✗ Code inconnu ou déjà utilisé.

{% endif %}

Les codes sont stockés hachés (jamais en clair). En production, on les persiste dans auth_mfa_recovery_codes.