pub fn token_estimate(map_chars: usize, rows: usize) -> (usize, usize)
Honesty line: text tokens (chars divided by 4) versus PNG image tokens (Anthropic pixel formula at the snapped canvas size).