6af43341c8
Lowercasing non-ASCII text can change byte length, so offsets found in the lowercased copy panicked when reused on the original (seen on 103 in parse_ddg_results / strip_html). Use ASCII-only lowercasing, clamp slice ends to char boundaries, and stop parsing on truncated result tags. Co-authored-by: Cursor <cursoragent@cursor.com>