Always tricky ... rarely a perfect solution (for all apps/devices).
Instead of using +text-indents and negative padding, experiment with +(margin|padding)-left and negative text-indents. The negative text indent is what will give you what you're looking for when lines break.
Start with an equal (but opposite) number (margin-right: 3em; text-indent: -3em) to get a feel for how the "hanging" indent works when the text is "flush left". Then start increasing the margin/padding right to see how things behave (adjust the text-indent accordingly).
Also make sure you have plenty of hair to yank out along the way.