In the following example, the two "lorem" spans should both have a hanging indent:
<p style="border:1px solid red; text-indent:-2em; padding-left:4em; ">
<span style="float:left; margin-left:-2em;">1</span>
<span style="display:block;">Lorem ipsum...</span>
<span class="line" style="display:block;">Lorem ipsum...</span>
</p>
E.g. Sigil:

However, only the second one is working in Koreader/Crengine:

Presumably something is "unsetting" the indent because of the float?
Here's the epub:
untitled.epub.zip