<?php
/**
 * PARANDATUD Väljakutsete definitsioonid - REALISTLIKUMAD LÄVID
 * Estreka Ratsaklubi - athlete/includes/challenges_data.php
 */

// PARANDATUD: Kuised väljakutsed realistlike lävedega
$CHALLENGE_TEMPLATES = [
    // --- ORIGINAALVÄLJAKUTSED (16 tk) - SÄILITATUD MUUTMATA KUJUL ---
    'monthly_warrior' => [
        'name' => 'Kuu sõdalane',
        'description' => 'Osale vähemalt 3 võistlusel selle kuu jooksul',
        'icon' => '⚔️',
        'target' => 3,
        'difficulty' => 'medium',
        'category' => 'activity',
        'reward_type' => 'achievement_points',
        'reward_value' => 4,
        'reward_description' => '+4 saavutuste punkti',
        'check_function' => 'monthlyStarts',
        'color' => '#EF4444'
    ],
    'monthly_consistent' => [
        'name' => 'Järjekindel kuu',
        'description' => 'Lõpeta kõik selle kuu võistlused edukalt',
        'icon' => '✅',
        'target' => 100,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'title',
        'reward_value' => 'consistent_champion',
        'reward_description' => 'Tiitel: "Järjekindel šampion"',
        'check_function' => 'monthlyFinishRate',
        'color' => '#10B981'
    ],
    'training_master' => [
        'name' => 'Treeningu meister',
        'description' => 'Märgi üles 8 treeningu selle kuu jooksul',
        'icon' => '💪',
        'target' => 8,
        'difficulty' => 'medium',
        'category' => 'training',
        'reward_type' => 'badge',
        'reward_value' => 'training_dedication',
        'reward_description' => 'Märk: "Treeningu pühenduja"',
        'check_function' => 'monthlyTrainings',
        'color' => '#8B5CF6'
    ],
    'improvement_seeker' => [
        'name' => 'Arengu otsija',
        'description' => 'Paranda oma keskmist 10% võrreldes eelmise kuuga',
        'icon' => '📈',
        'target' => 10,
        'difficulty' => 'medium',
        'category' => 'improvement',
        'reward_type' => 'special_achievement',
        'reward_value' => 'monthly_improver',
        'reward_description' => 'Eriline saavutus',
        'check_function' => 'improvementPercentage',
        'color' => '#F59E0B'
    ],
    'happy_rider' => [
        'name' => 'Rõõmus ratsutaja',
        'description' => 'Hoia treeningu keskmine meeleolu 3.5+ kogu kuu',
        'icon' => '😊',
        'target' => 3.5,
        'difficulty' => 'easy',
        'category' => 'wellbeing',
        'reward_type' => 'mood_bonus',
        'reward_value' => 2,
        'reward_description' => '+2 punkti järgmisele tulemusele',
        'check_function' => 'monthlyAverageMood',
        'color' => '#06B6D4'
    ],
    'first_timer' => [
        'name' => 'Esikordne',
        'description' => 'Osale vähemalt 1 võistlusel selle kuu jooksul',
        'icon' => '🌟',
        'target' => 1,
        'difficulty' => 'easy',
        'category' => 'activity',
        'reward_type' => 'achievement_points',
        'reward_value' => 2,
        'reward_description' => '+2 saavutuste punkti',
        'check_function' => 'monthlyStarts',
        'color' => '#84CC16'
    ],
    'weekend_warrior' => [
        'name' => 'Nädalavahetuse sõdalane',
        'description' => 'Märgi üles 4 treeningu selle kuu jooksul',
        'icon' => '🏋️',
        'target' => 4,
        'difficulty' => 'easy',
        'category' => 'training',
        'reward_type' => 'badge',
        'reward_value' => 'weekend_warrior',
        'reward_description' => 'Märk: "Nädalavahetuse sõdalane"',
        'check_function' => 'monthlyTrainings',
        'color' => '#06B6D4'
    ],
    'points_hunter' => [
        'name' => 'Jahimees',
        'description' => 'Kogugu kokku üle 20 punkti selle kuu jooksul',
        'icon' => '🎯',
        'target' => 20,
        'difficulty' => 'medium',
        'category' => 'performance',
        'reward_type' => 'achievement_points',
        'reward_value' => 3,
        'reward_description' => '+3 saavutuste punkti',
        'check_function' => 'monthlyTotalPoints',
        'color' => '#3B82F6'
    ],
    'discipline_explorer' => [
        'name' => 'Avastaja',
        'description' => 'Proovi 2 erinevat distsipliini selle kuu jooksul',
        'icon' => '🗺️',
        'target' => 2,
        'difficulty' => 'easy',
        'category' => 'diversity',
        'reward_type' => 'badge',
        'reward_value' => 'discipline_explorer',
        'reward_description' => 'Märk: "Avastaja"',
        'check_function' => 'monthlyDisciplinesCount',
        'color' => '#84CC16'
    ],
    'steady_performer' => [
        'name' => 'Stabiilne esineja',
        'description' => 'Lõpeta 3+ võistlust edukalt selle kuu jooksul',
        'icon' => '🎭',
        'target' => 3,
        'difficulty' => 'medium',
        'category' => 'consistency',
        'reward_type' => 'badge',
        'reward_value' => 'steady_performer',
        'reward_description' => 'Märk: "Stabiilne esineja"',
        'check_function' => 'monthlyFinishedCount',
        'color' => '#10B981'
    ],
    'social_rider' => [
        'name' => 'Sotsiaalne ratsutaja',
        'description' => 'Osale võistlustel 3+ erinevas kohas selle kuu jooksul',
        'icon' => '🤝',
        'target' => 3,
        'difficulty' => 'hard',
        'category' => 'social',
        'reward_type' => 'special_achievement',
        'reward_value' => 'social_rider',
        'reward_description' => 'Eriline tunnustus',
        'check_function' => 'monthlyDifferentLocations',
        'color' => '#EC4899'
    ],
    'early_bird' => [
        'name' => 'Varajane lind',
        'description' => 'Osale kuu esimeses pooles vähemalt 1 võistlusel',
        'icon' => '🌅',
        'target' => 1,
        'difficulty' => 'easy',
        'category' => 'timing',
        'reward_type' => 'mood_bonus',
        'reward_value' => 1,
        'reward_description' => '+1 punkti järgmisele tulemusele',
        'check_function' => 'monthlyEarlyParticipation',
        'color' => '#F59E0B'
    ],
    'perfectionist_lite' => [
        'name' => 'Väike perfektsionist',
        'description' => 'Lõpeta kõik selle kuu võistlused (min 2) edukalt',
        'icon' => '💯',
        'target' => 100,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'achievement_points',
        'reward_value' => 5,
        'reward_description' => '+5 saavutuste punkti',
        'check_function' => 'monthlyPerfectFinishWithMinimum',
        'color' => '#8B5CF6'
    ],
    'mood_booster' => [
        'name' => 'Meeleolu tõstja',
        'description' => 'Märgi üles 6+ treeningu keskmine meeleolu 4.0+',
        'icon' => '😁',
        'target' => 6,
        'difficulty' => 'medium',
        'category' => 'wellbeing',
        'reward_type' => 'special_achievement',
        'reward_value' => 'mood_booster',
        'reward_description' => 'Meeleolu ekspert',
        'check_function' => 'monthlyHighMoodTrainings',
        'color' => '#06B6D4'
    ],
    'versatile_athlete' => [
        'name' => 'Mitmekülgne sportlane',
        'description' => 'Märgi üles 3+ erinevat treeningu tüüpi selle kuu jooksul',
        'icon' => '🌈',
        'target' => 3,
        'difficulty' => 'medium',
        'category' => 'diversity',
        'reward_type' => 'badge',
        'reward_value' => 'versatile_athlete',
        'reward_description' => 'Märk: "Mitmekülgne sportlane"',
        'check_function' => 'monthlyTrainingTypesCount',
        'color' => '#EC4899'
    ],
    'consistency_king' => [
        'name' => 'Järjekindluse kuningas',
        'description' => 'Märgi üles treeninguid 4 nädalat järjest',
        'icon' => '👑',
        'target' => 4,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'crown',
        'reward_value' => 'consistency_king',
        'reward_description' => '👑 Järjekindluse kroon',
        'check_function' => 'monthlyConsecutiveWeeksTraining',
        'color' => '#F59E0B'
    ],
    'season_nomad' => [
        'name' => 'Hooaja Nomád',
        'description' => 'Erakordne aktiivsus! Osale sel kuul viiel või enamal võistlusel.',
        'icon' => '🏕️',
        'target' => 5,
        'difficulty' => 'legendary',
        'category' => 'activity',
        'reward_type' => 'title',
        'reward_value' => 'season_nomad',
        'reward_description' => 'Tiitel: "Hooaja Nomád"',
        'check_function' => 'monthlyStarts',
        'color' => '#8B5CF6'
    ],
    'reliable_rider' => [
        'name' => 'Kindel Käsi',
        'description' => 'Näita stabiilsust ja lõpeta kaks võistlust edukalt sama kuu jooksul.',
        'icon' => '🤝',
        'target' => 2,
        'difficulty' => 'medium',
        'category' => 'consistency',
        'reward_type' => 'achievement_points',
        'reward_value' => 4,
        'reward_description' => '+4 saavutuste punkti',
        'check_function' => 'monthlyFinishedCount',
        'color' => '#F59E0B'
    ],
    'consistency_expert' => [
        'name' => 'Järjepidevuse Ekspert',
        'description' => 'Tõeline eeskuju! Lõpeta neli võistlust edukalt selle kuu jooksul.',
        'icon' => '🏆',
        'target' => 4,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'badge',
        'reward_value' => 'consistency_expert',
        'reward_description' => 'Märk: "Järjepidevuse Ekspert"',
        'check_function' => 'monthlyFinishedCount',
        'color' => '#EF4444'
    ],
    'hat_trick' => [
        'name' => 'Kübaratrikk',
        'description' => 'Saavuta täiuslik seeria: osale kolmel võistlusel ja lõpeta need kõik edukalt.',
        'icon' => '🎩',
        'target' => 3,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'special_achievement',
        'reward_value' => 'hat_trick',
        'reward_description' => 'Eriline saavutus!',
        'check_function' => 'monthlyFinishedCount',
        'color' => '#6B7280'
    ],
    'iron_endurance' => [
        'name' => 'Raudne Vastupidavus',
        'description' => 'Lõpeta vähemalt 3 võistlust edukalt ja kogu kokku üle 30 punkti.',
        'icon' => '🦾',
        'target' => 3,
        'difficulty' => 'hard',
        'category' => 'consistency',
        'reward_type' => 'badge',
        'reward_value' => 'iron_endurance',
        'reward_description' => 'Märk: "Raudne Vastupidavus"',
        'check_function' => 'monthlyFinishedCount',
        'color' => '#374151'
    ],
    'quarter_century' => [
        'name' => 'Veerandsada',
        'description' => 'Tubli töö! Kogu võistlustelt kokku üle 25 punkti.',
        'icon' => '🪙',
        'target' => 25,
        'difficulty' => 'medium',
        'category' => 'performance',
        'reward_type' => 'achievement_points',
        'reward_value' => 5,
        'reward_description' => '+5 saavutuste punkti',
        'check_function' => 'monthlyTotalPoints',
        'color' => '#F59E0B'
    ],
    'elite_candidate' => [
        'name' => 'Eliitklubi Kandidaat',
        'description' => 'Näitad tipptaset! Kogu võistlustelt kokku üle 40 punkti.',
        'icon' => '💎',
        'target' => 40,
        'difficulty' => 'hard',
        'category' => 'performance',
        'reward_type' => 'achievement_points',
        'reward_value' => 8,
        'reward_description' => '+8 saavutuste punkti',
        'check_function' => 'monthlyTotalPoints',
        'color' => '#8B5CF6'
    ],
    'point_and_train' => [
        'name' => 'Punktid ja Puhkus',
        'description' => 'Kogu vähemalt 20 punkti võistlustelt ja logi vähemalt 8 treeningut.',
        'icon' => '⚖️',
        'target' => 20,
        'difficulty' => 'medium',
        'category' => 'performance',
        'reward_type' => 'achievement_points',
        'reward_value' => 6,
        'reward_description' => '+6 saavutuste punkti',
        'check_function' => 'monthlyTotalPoints',
        'color' => '#EF4444'
    ],
    'training_warmup' => [
        'name' => 'Trennisoojendus',
        'description' => 'Tee ots lahti ja märgi sel kuul üles vähemalt üks treening.',
        'icon' => '🔥',
        'target' => 1,
        'difficulty' => 'easy',
        'category' => 'training',
        'reward_type' => 'achievement_points',
        'reward_value' => 1,
        'reward_description' => '+1 saavutuste punkti',
        'check_function' => 'monthlyTrainings',
        'color' => '#84CC16'
    ],
    'dedicated_athlete' => [
        'name' => 'Pühendunud Sportlane',
        'description' => 'Treenid süsteemselt! Märgi üles vähemalt 15 treeningut sel kuul.',
        'icon' => '🏋️‍♀️',
        'target' => 15,
        'difficulty' => 'hard',
        'category' => 'training',
        'reward_type' => 'achievement_points',
        'reward_value' => 8,
        'reward_description' => '+8 saavutuste punkti',
        'check_function' => 'monthlyTrainings',
        'color' => '#EF4444'
    ],
    'olympian_effort' => [
        'name' => 'Olümpiapingutus',
        'description' => 'Treeni nagu proff! Märgi üles 20 või rohkem treeningut sel kuul.',
        'icon' => '🥇',
        'target' => 20,
        'difficulty' => 'legendary',
        'category' => 'training',
        'reward_type' => 'special_achievement',
        'reward_value' => 'olympian_effort',
        'reward_description' => 'Eriline saavutus!',
        'check_function' => 'monthlyTrainings',
        'color' => '#F59E0B'
    ],
    'positive_mindset' => [
        'name' => 'Positiivne Mõtteviis',
        'description' => 'Hea tuju on pool võitu! Hoia treeningute keskmine meeleolu vähemalt 3.7.',
        'icon' => '😊',
        'target' => 3.7,
        'difficulty' => 'easy',
        'category' => 'wellbeing',
        'reward_type' => 'mood_bonus',
        'reward_value' => 1,
        'reward_description' => '+1 boonuspunkti',
        'check_function' => 'monthlyAverageMood',
        'color' => '#06B6D4'
    ],
    'zen_master' => [
        'name' => 'Zen Meister',
        'description' => 'Saavuta täielik harmoonia. Hoia treeningute keskmine meeleolu vähemalt 4.3.',
        'icon' => '🧘',
        'target' => 4.3,
        'difficulty' => 'medium',
        'category' => 'wellbeing',
        'reward_type' => 'title',
        'reward_value' => 'zen_master',
        'reward_description' => 'Tiitel: "Zen Meister"',
        'check_function' => 'monthlyAverageMood',
        'color' => '#10B981'
    ],
    'good_vibes' => [
        'name' => 'Head Vibed',
        'description' => 'Kogu kokku 4 treeningut, mille meeleolu on 4.0 või kõrgem.',
        'icon' => '✨',
        'target' => 4,
        'difficulty' => 'easy',
        'category' => 'wellbeing',
        'reward_type' => 'achievement_points',
        'reward_value' => 2,
        'reward_description' => '+2 saavutuste punkti',
        'check_function' => 'monthlyHighMoodTrainings',
        'color' => '#EC4899'
    ],
    'euphoria_chaser' => [
        'name' => 'Eufooria Püüdja',
        'description' => 'Puhas rõõm! Kogu kokku 8 treeningut meeleoluga 4.0 või kõrgem.',
        'icon' => '😁',
        'target' => 8,
        'difficulty' => 'medium',
        'category' => 'wellbeing',
        'reward_type' => 'badge',
        'reward_value' => 'euphoria_chaser',
        'reward_description' => 'Märk: "Eufooria Püüdja"',
        'check_function' => 'monthlyHighMoodTrainings',
        'color' => '#F59E0B'
    ],
    'focused_mind' => [
        'name' => 'Keskendunud Mõistus',
        'description' => 'Hoia oma treeningute keskmine meeleolu üle 4.0 ja logi vähemalt 5 treeningut.',
        'icon' => '🧠',
        'target' => 5,
        'difficulty' => 'medium',
        'category' => 'wellbeing',
        'reward_type' => 'badge',
        'reward_value' => 'focused_mind',
        'reward_description' => 'Märk: "Keskendunud Mõistus"',
        'check_function' => 'monthlyHighMoodTrainings',
        'color' => '#06B6D4'
    ],
    'triathlon_initiate' => [
        'name' => 'Mitmevõistleja',
        'description' => 'Näita oma mitmekülgsust ja proovi sel kuul kõiki kolme distsipliini.',
        'icon' => '🗺️',
        'target' => 3,
        'difficulty' => 'hard',
        'category' => 'diversity',
        'reward_type' => 'special_achievement',
        'reward_value' => 'triathlon_initiate',
        'reward_description' => 'Eriline saavutus!',
        'check_function' => 'monthlyDisciplinesCount',
        'color' => '#84CC16'
    ],
    'perfect_pair' => [
        'name' => 'Ideaalne Paar',
        'description' => 'Osale kahel võistlusel ja proovi kahte erinevat distsipliini.',
        'icon' => '🎭',
        'target' => 2,
        'difficulty' => 'medium',
        'category' => 'diversity',
        'reward_type' => 'achievement_points',
        'reward_value' => 5,
        'reward_description' => '+5 saavutuste punkti',
        'check_function' => 'monthlyDisciplinesCount',
        'color' => '#84CC16'
    ],
    'halfway_there' => [
        'name' => 'Poolel Teel',
        'description' => 'Hea algus! Lõpeta sel kuul vähemalt 50% oma võistlustest edukalt.',
        'icon' => '📊',
        'target' => 50,
        'difficulty' => 'easy',
        'category' => 'consistency',
        'reward_type' => 'achievement_points',
        'reward_value' => 2,
        'reward_description' => '+2 saavutuste punkti',
        'check_function' => 'monthlyFinishRate',
        'color' => '#3B82F6'
    ],
    'iron_clad' => [
        'name' => 'Raudne Järjepidevus',
        'description' => 'Lõpeta sel kuul vähemalt 80% oma võistlustest edukalt.',
        'icon' => '🛡️',
        'target' => 80,
        'difficulty' => 'medium',
        'category' => 'consistency',
        'reward_type' => 'achievement_points',
        'reward_value' => 5,
        'reward_description' => '+5 saavutuste punkti',
        'check_function' => 'monthlyFinishRate',
        'color' => '#6B7280'
    ],
    'on_the_right_track' => [
        'name' => 'Õigel Teel',
        'description' => 'Iga areng on oluline. Paranda oma keskmist tulemust 1% võrreldes eelmise kuuga.',
        'icon' => '🌱',
        'target' => 1,
        'difficulty' => 'easy',
        'category' => 'improvement',
        'reward_type' => 'achievement_points',
        'reward_value' => 2,
        'reward_description' => '+2 saavutuste punkti',
        'check_function' => 'improvementPercentage',
        'color' => '#F59E0B'
    ],
    'small_leap' => [
        'name' => 'Väike Hüpe',
        'description' => 'Märgatav edasiminek! Paranda oma keskmist tulemust 8% võrreldes eelmise kuuga.',
        'icon' => '🐇',
        'target' => 8,
        'difficulty' => 'medium',
        'category' => 'improvement',
        'reward_type' => 'achievement_points',
        'reward_value' => 5,
        'reward_description' => '+5 saavutuste punkti',
        'check_function' => 'improvementPercentage',
        'color' => '#10B981'
    ],
    'giant_leap' => [
        'name' => 'Hiiglaslik Hüpe',
        'description' => 'Uskumatu areng! Paranda oma keskmist tulemust 20% võrreldes eelmise kuuga.',
        'icon' => '🚀',
        'target' => 20,
        'difficulty' => 'hard',
        'category' => 'improvement',
        'reward_type' => 'badge',
        'reward_value' => 'giant_leap',
        'reward_description' => 'Märk: "Arenguhüpe"',
        'check_function' => 'improvementPercentage',
        'color' => '#EF4444'
    ],
    'comeback_kid' => [
        'name' => 'Tagasitulek',
        'description' => 'Tõuse tuhast! Paranda oma tulemust peale madala skooriga kuud.',
        'icon' => '👑',
        'target' => 1,
        'difficulty' => 'easy',
        'category' => 'improvement',
        'reward_type' => 'badge',
        'reward_value' => 'comeback_kid',
        'reward_description' => 'Märk: "Tagasitulek"',
        'check_function' => 'improvementPercentage',
        'color' => '#8B5CF6'
    ],
    'all_rounder' => [
        'name' => 'Universaal',
        'description' => 'Osale vähemalt 3 võistlusel ja logi vähemalt 10 treeningut.',
        'icon' => '🌐',
        'target' => 3,
        'difficulty' => 'hard',
        'category' => 'activity',
        'reward_type' => 'special_achievement',
        'reward_value' => 'all_rounder',
        'reward_description' => 'Eriline saavutus!',
        'check_function' => 'monthlyStarts',
        'color' => '#F59E0B'
    ],
    'cheerful_competitor' => [
        'name' => 'Rõõmus Võistleja',
        'description' => 'Osale vähemalt 2 võistlusel ja hoia keskmine treeningu meeleolu üle 4.0.',
        'icon' => '🥳',
        'target' => 2,
        'difficulty' => 'medium',
        'category' => 'wellbeing',
        'reward_type' => 'badge',
        'reward_value' => 'cheerful_competitor',
        'reward_description' => 'Märk: "Rõõmus Võistleja"',
        'check_function' => 'monthlyStarts',
        'color' => '#EC4899'
    ]
];

// Hooajalised väljakutsed jäävad samaks (need on pikaajalised)
$SEASONAL_CHALLENGES = [
    'season_explorer' => [
        'name' => 'Hooaja avastaja',
        'description' => 'Proovi kõiki 3 distsipliini hooaja jooksul',
        'icon' => '🗺️',
        'target' => 3,
        'duration_months' => 12,
        'difficulty' => 'easy',
        'category' => 'diversity',
        'reward_type' => 'title',
        'reward_value' => 'season_explorer',
        'reward_description' => 'Tiitel: "Hooaja avastaja"',
        'check_function' => 'seasonDisciplines',
        'color' => '#84CC16'
    ],
    'season_champion' => [
        'name' => 'Hooaja šampion',
        'description' => 'Saavuta TOP 3 koht vähemalt ühes distsipliinis',
        'icon' => '🏆',
        'target' => 3,
        'duration_months' => 12,
        'difficulty' => 'legendary',
        'category' => 'achievement',
        'reward_type' => 'crown',
        'reward_value' => 'season_champion',
        'reward_description' => '👑 Hooaja šampioni kroon',
        'check_function' => 'seasonBestPlacement',
        'color' => '#F59E0B'
    ],
    'endurance_king' => [
        'name' => 'Vastupidavuse kuningas',
        'description' => '"Ratsuta" kokku üle 100km hooaja jooksul',
        'icon' => '🏃‍♂️',
        'target' => 100,
        'duration_months' => 12,
        'difficulty' => 'medium',
        'category' => 'endurance',
        'reward_type' => 'special_title',
        'reward_value' => 'endurance_king',
        'reward_description' => 'Eritiitel: "Vastupidavuse kuningas"',
        'check_function' => 'seasonTotalDistance',
        'color' => '#EC4899'
    ]
];

// PARANDATUD Raskustasemete jaotus (rohkem kergeid)
$CHALLENGE_DIFFICULTIES = [
    'easy' => [
        'name' => 'Kerge',
        'color' => '#10B981',
        'icon' => '🟢',
        'points_multiplier' => 1.0
    ],
    'medium' => [
        'name' => 'Keskmine',
        'color' => '#F59E0B',
        'icon' => '🟡',
        'points_multiplier' => 1.5
    ],
    'hard' => [
        'name' => 'Raske',
        'color' => '#EF4444',
        'icon' => '🔴',
        'points_multiplier' => 2.0
    ],
    'legendary' => [
        'name' => 'Legendaarne',
        'color' => '#8B5CF6',
        'icon' => '🟣',
        'points_multiplier' => 3.0
    ]
];

// PARANDATUD Väljakutsete kategooriad - LISATUD UUED
$CHALLENGE_CATEGORIES = [
    'activity' => [
        'name' => 'Aktiivsus',
        'description' => 'Võistlustel osalemine',
        'icon' => '🏃‍♂️',
        'color' => '#EF4444'
    ],
    'consistency' => [
        'name' => 'Järjekindlus',
        'description' => 'Stabiilsed tulemused',
        'icon' => '🎯',
        'color' => '#10B981'
    ],
    'training' => [
        'name' => 'Treening',
        'description' => 'Treeningu regulaarsus',
        'icon' => '💪',
        'color' => '#8B5CF6'
    ],
    'improvement' => [
        'name' => 'Arenemine',
        'description' => 'Tulemuste parandamine',
        'icon' => '📈',
        'color' => '#F59E0B'
    ],
    'wellbeing' => [
        'name' => 'Heaolu',
        'description' => 'Meeleolu ja rõõm',
        'icon' => '😊',
        'color' => '#06B6D4'
    ],
    'diversity' => [
        'name' => 'Mitmekülgsus',
        'description' => 'Erinevate distsipliinide proovimine',
        'icon' => '🌟',
        'color' => '#84CC16'
    ],
    'achievement' => [
        'name' => 'Saavutused',
        'description' => 'Erilised tulemused',
        'icon' => '🏆',
        'color' => '#F59E0B'
    ],
    'endurance' => [
        'name' => 'Vastupidavus',
        'description' => 'Pikaajaline järjepidevus',
        'icon' => '🏃‍♂️',
        'color' => '#EC4899'
    ],
    'performance' => [
        'name' => 'Tulemused',
        'description' => 'Punktide kogumine',
        'icon' => '🎯',
        'color' => '#3B82F6'
    ],
    'social' => [
        'name' => 'Sotsiaalne',
        'description' => 'Erinevates kohtades võistlemine',
        'icon' => '🤝',
        'color' => '#EC4899'
    ],
    'timing' => [
        'name' => 'Ajastus',
        'description' => 'Õigeaegsus ja planeerimine',
        'icon' => '⏰',
        'color' => '#F59E0B'
    ]
];

// Motiveerivad fraasid jäävad samaks
$MOTIVATIONAL_PHRASES = [
    'activity' => [
        'Iga start on uus võimalus!',
        'Rohkem osalust = rohkem kogemust!',
        'Sa oled teel suurepäraste tulemuste poole!',
        'Iga võistlus teeb sind tugevamaks!'
    ],
    'consistency' => [
        'Järjekindlus on võitja võti!',
        'Stabiilsus toob edu!',
        'Sa oled tõeline püsija!',
        'Iga lõpetatud võistlus on võit!'
    ],
    'training' => [
        'Treening teeb meistriks!',
        'Sa investeerid oma tuleviku edukusse!',
        'Iga tund on samm edasi!',
        'Sinu pühendumus on inspireeriv!'
    ],
    'improvement' => [
        'Progress on kõige olulisem!',
        'Sa muutud iga päevaga paremaks!',
        'Areng ei peatu kunagi!',
        'Sinu kasv on märgatav!'
    ],
    'wellbeing' => [
        'Rõõm on parim motivaator!',
        'Positiivne suhtumine toob edu!',
        'Sa naeratatad treeningu ajal!',
        'Õnnelik rattur on edukas rattur!'
    ]
];

/**
 * PARANDATUD Statistika funktsioon
 */
function getChallengeStatistics() {
    global $CHALLENGE_TEMPLATES, $SEASONAL_CHALLENGES;
    
    $kuised = count($CHALLENGE_TEMPLATES);
    $hooajalised = count($SEASONAL_CHALLENGES);
    
    // Raskustasemete jaotus
    $difficulty_count = ['easy' => 0, 'medium' => 0, 'hard' => 0, 'legendary' => 0];
    
    foreach ($CHALLENGE_TEMPLATES as $challenge) {
        $difficulty_count[$challenge['difficulty']]++;
    }
    
    foreach ($SEASONAL_CHALLENGES as $challenge) {
        $difficulty_count[$challenge['difficulty']]++;
    }
    
    // Kategooriate jaotus
    $category_count = [];
    foreach ($CHALLENGE_TEMPLATES as $challenge) {
        $cat = $challenge['category'];
        $category_count[$cat] = ($category_count[$cat] ?? 0) + 1;
    }
    
    return [
        'kuised_kokku' => $kuised,
        'hooajalised_kokku' => $hooajalised,
        'kokku' => $kuised + $hooajalised,
        'raskustasemed' => $difficulty_count,
        'kategooriad' => $category_count,
        'korduvad' => $kuised, // Kuised on korduvad iga kuu
        'uhekordsed_per_hooaeg' => $hooajalised, // Hooajalised on ühekordne per hooaeg
        'motivatsiooni_sagedus' => 'Iga kuu ' . $kuised . ' uut väljakutset!'
    ];
}

// Kõik funktsioonid jäävad samaks nagu enne...
function getChallengeData($challenge_key, $type = 'monthly') {
    global $CHALLENGE_TEMPLATES, $SEASONAL_CHALLENGES;
    
    if ($type === 'seasonal') {
        return $SEASONAL_CHALLENGES[$challenge_key] ?? null;
    }
    
    return $CHALLENGE_TEMPLATES[$challenge_key] ?? null;
}

function getChallengeCategoryData($category_key) {
    global $CHALLENGE_CATEGORIES;
    return $CHALLENGE_CATEGORIES[$category_key] ?? null;
}

function getChallengeDifficultyData($difficulty_key) {
    global $CHALLENGE_DIFFICULTIES;
    return $CHALLENGE_DIFFICULTIES[$difficulty_key] ?? null;
}

function getMotivationalPhrase($category) {
    global $MOTIVATIONAL_PHRASES;
    
    if (!isset($MOTIVATIONAL_PHRASES[$category])) {
        return 'Sa oled teel suurepäraste saavutuste poole!';
    }
    
    $phrases = $MOTIVATIONAL_PHRASES[$category];
    return $phrases[array_rand($phrases)];
}

function calculateChallengeReward($base_reward, $difficulty) {
    $difficulty_data = getChallengeDifficultyData($difficulty);
    $multiplier = $difficulty_data['points_multiplier'] ?? 1.0;
    
    return round($base_reward * $multiplier);
}

function formatChallengeReward($challenge) {
    switch ($challenge['reward_type']) {
        case 'achievement_points':
            $points = calculateChallengeReward($challenge['reward_value'], $challenge['difficulty']);
            return "+{$points} saavutuste punkti";
            
        case 'title':
            return "Tiitel: \"" . ucfirst(str_replace('_', ' ', $challenge['reward_value'])) . "\"";
            
        case 'badge':
            return "Märk: \"" . ucfirst(str_replace('_', ' ', $challenge['reward_value'])) . "\"";
            
        case 'special_achievement':
            return "Eriline saavutus avatud!";
            
        case 'mood_bonus':
            return "+{$challenge['reward_value']} boonust järgmisele tulemusele";
            
        case 'crown':
            return "👑 " . ucfirst(str_replace('_', ' ', $challenge['reward_value']));
            
        default:
            return $challenge['reward_description'] ?? 'Eriline auhind';
    }
}

function getAllMonthlyChallenges() {
    global $CHALLENGE_TEMPLATES;
    return $CHALLENGE_TEMPLATES;
}

function getAllSeasonalChallenges() {
    global $SEASONAL_CHALLENGES;
    return $SEASONAL_CHALLENGES;
}

function isChallengeActive($challenge_key, $start_date, $end_date) {
    $now = date('Y-m-d');
    return $now >= $start_date && $now <= $end_date;
}

function generateProgressText($current, $target, $challenge) {
    $percentage = min(100, ($current / $target) * 100);
    
    if ($percentage >= 100) {
        return "🎉 VÄLJAKUTSE TÄIDETUD! " . getMotivationalPhrase($challenge['category']);
    }
    
    $remaining = $target - $current;
    
    if ($percentage >= 80) {
        return "🔥 Peaaegu valmis! Veel {$remaining} ja oled kohal!";
    } elseif ($percentage >= 50) {
        return "💪 Poolel teel! Jätka samas vaimus!";
    } elseif ($percentage >= 25) {
        return "⭐ Hea algus! Võid selle kindlasti!";
    } else {
        return "🚀 Alustasid! " . getMotivationalPhrase($challenge['category']);
    }
}

function getChallengeStatusColor($percentage) {
    if ($percentage >= 100) return '#10B981'; // Roheline - valmis
    if ($percentage >= 80) return '#F59E0B';  // Oranž - peaaegu valmis
    if ($percentage >= 50) return '#3B82F6';  // Sinine - poolel teel
    if ($percentage >= 25) return '#8B5CF6';  // Lilla - alustatud
    return '#6B7280'; // Hall - pole alustatud
}

// LISATUD: Debug informatsioon
echo "\n";
?>