IAV-985 : refactor free trial debit logic to cascade balance usage
- Change: free trial debit now uses available balance instead of throwing exception
- When free trial balance is insufficient, remaining amount cascades to other balance types
- Prerequisite: if free trial balance is already 0 or negative, throws INSUFFICIENT_FREE_TRIAL_BALANCE error
- Benefit: Enables flexible credit consumption (free trial → main → extra → referral)
- Updated error codes and constants for insufficient free trial balance
Closes IAV-985