String normalizeAtSign(String value) { final trimmed = value.trim(); if (trimmed.isEmpty) { throw Exception('atSign is required'); } return trimmed.startsWith('@') ? trimmed : '@$trimmed'; }