Sim, essa é uma situação complicada. Não é possível resolver apenas com CSS; precisamos de uma alteração na marcação.
Especificamente, definir direction: auto quando um campo está vazio resulta em LTR.
Assim, se a entrada estiver em branco, o resultado será LTR.
A correção que fiz aqui é definir o padrão como “rtl” neste caso e alternar para “auto” assim que uma letra for inserida.
@Osama, você se importa de revisar e fazer o merge?
@david, precisei expor um helper de teste na nossa base de código para testar isso de forma limpa, mas presumo que esse seja o tipo de coisa que acabaremos removendo (tree-shaking) eventualmente.
