Joins path parts with the platform separator, normalizing the result.
parts
String joinPaths(List<String> parts) { if (parts.isEmpty) return '.'; return normalizePath(parts.where((p) => p.isNotEmpty).join('/')); }