Thank you very much! I'm going to read and reread your answer
Again, just to make sure:
Le robaron a mi abuela: everything's indirect.
Se lo robaron a mi abuela: the abuela is still indirect, but the direct object
lo is introduced, albeit in the form of a pronoun. That's why one has to change
le to
se, although it still points to the indirect grandma? I still can't swallow it. The grammar books I read led me to believe (they never told that in so many words, I grant it) that
se lo is just a euphonic substitution for
le lo, which indeed sounds ugly