- Fix crash when tapping a completed special mission: onClickCollect
was ignoring the missionId passed by SpecialMissionsEntry and using
selectedSpecialMissionId (-1 by default), causing Room to query id=-1
on a non-nullable Flow which throws when no row exists.
- Fix NaN% in current phase win rate: the guard was checking
totalBattlesLost==0 but dividing by currentPhaseBattles, producing
0/0=NaN when total>0 but current phase has no battles yet.
- Guard against empty items list in clearSpecialMission to avoid
NoSuchElementException from random() on an empty collection.