pub fn smart_truncate(s: &str, max_width: usize) -> String
Smart truncate with single-char ellipsis “…” for cleaner look