// Erste Unterweisung — 1 korrekte Antwort im Vier-Stufen-Modul (Kernmodul HF 3) if ((state.moduleCorrect && state.moduleCorrect['vier-stufen'] >= 1)) unlockBadge('erste_unterweisung'); // Paragraphen-Profi — BBiG/JArbSchG zusammen >= 10 korrekt (eignung-betrieb + vertrag + jugendarbeitsschutz) const paraSum = ((state.moduleCorrect && state.moduleCorrect['eignung-betrieb']) || 0) + ((state.moduleCorrect && state.moduleCorrect['vertrag']) || 0) + ((state.moduleCorrect && state.moduleCorrect['jugendarbeitsschutz']) || 0); if (paraSum >= 10) unlockBadge('paragraphen_profi'); // 4-Stufen-Meister:in — Vier-Stufen-Methode-Quiz mind. 5 korrekt if ((state.moduleCorrect && state.moduleCorrect['vier-stufen'] >= 5)) unlockBadge('4_stufen_meister'); // Lehrgespräch-Profi — Flashcards Lehrgespräch durch if ((state.modulePassedFlash && state.modulePassedFlash['lehrgespraech'])) unlockBadge('lehrgespraech_pro'); // Didaktik-Nerd — Lerntheorien-Modul (>= 5 korrekt) if ((state.moduleCorrect && state.moduleCorrect['lerntheorien'] >= 5)) unlockBadge('didaktik_nerd'); // AdA-Meister:in — 16 von 20 Modulen mit ≥80% Quiz-Score abgeschlossen (~80% Master-Coverage) if ((state.completedCurricula || []).length >= 16) unlockBadge('ada_meister'); // Streak 7 if (state.maxStreak >= 7) unlockBadge('streak_7'); // Night Owl const h = new Date().getHours(); if (h >= 22) unlockBadge('night_owl');