Heat the oil over medium heat in a large pan that has a lid.
Add the onion, garlic, and ginger, sprinkle with the salt, and cook until the onion is softening and beginning to turn translucent, about 5 minutes.
Add the mustard and cumin seeds and cardamom pods and cook for one minute.
Add the turmeric, coriander, paprika, cayenne, and black pepper and cook, stirring, constantly, for 30 seconds.
Add the water, tomato paste, and coconut milk and stir to combine.
Pour in the lentils.
Bring to a boil, then reduce the heat to maintain a simmer and cover the pan.
Cook until lentils are tender, about 20 minutes.
Off the heat, stir in the cilantro and lime juice.
Let rest for at least 10 minutes before serving.