- Extract all hardcoded constants (hosts, survey ID, HTTPS flag) into config.dev.ini and config.prod.ini; remove generic config.ini
- Add --env dev|prod CLI argument (default: prod) via argparse
- Move GROUP_CODES dict out of source into group_codes.csv; parse at runtime via _load_group_codes()
- Support groeps_tokens_students TSV format (Groep/Token columns) in _load_group_codes(), with legacy CSV as fallback
- Replace two hardcoded 'Origin: http://qans.local:9080' CORS headers with the LIMESURVEY_HOST config value
- Rewrite print_summary() with aligned columns, avg/min/max per event type, 1 decimal place, and correct singular/plural event label
- Update README: remove manual-edit TODOs, document config files, group codes TSV workflow, and --env usage with example output