In a medium bowl, combine the chicken with the ingredients listed under ‘marinade’. Cover and set aside or refrigerate (ideally) up to overnight. When ready to use, allow the chicken to come to room temperature.
Thoroughly wash the rice and soak it in water. Set aside.
Heat a large, heavy bottomed pan over high heat. Add the oil, ghee, and onions and sauté until the onions are golden (~15-20 minutes). Deglaze the pan with ¼ cup water. Once the water dries up, add the whole spices, garlic, and ginger and sauté for another 2 minutes.
Add the chicken with its marinade and sauté until it changes color (~2-3 minutes). Add the tomatoes, green chili pepper, and dried plum (alu bukhara) and stir to coat. Add ½ cup water (the water should cover about 1/3 of the chicken) and bring to a gentle boil.
Turn the heat down to a gentle simmer (this is low heat on my stovetop), cover, and allow the chicken to cook for 30 minutes, stirring midway. While the chicken is cooking, proceed to the next step. Turn off the heat once the chicken has cooked.
Meanwhile, prepare the rice. Place a medium pot over high heat and bring 7 cups (1.75 quarts) of water to a boil (See Tip). Add salt, oil, and lemon juice/vinegar and stir. Once the water comes to a boil, drain and add the rice. Stir, and bring it back up to a boil. Once it comes to a boil again, boil for 5 minutes (no more than 5 minutes and 30 seconds), or until the rice is just cooked with a bite to it. It shouldn’t get mushy when pressed between your fingers. (See Note 1) Drain and set aside.
Uncover the chicken. Raise the heat to medium-high to sauté out any excess water for 2-3 minutes. Add salt, garam masala, and red chili flakes for more heat (if desired). The oil will have separated from the ‘masala’. Turn off the heat. Add kewra water and lemon juice and stir to combine.
If needed, lightly oil the bottom of a dutch oven or stock/soup pot. Layer half of the drained rice. Sprinkle 1/4 tsp of the chaat/garam masala on top of the rice. Add in all the chicken, and top with the remaining rice. Sprinkle the remaining 1/4 tsp of chaat/garam masala. Drizzle in the colored milk and oil. (Optional: Sprinkle a pinch of food coloring directly for more variation in color.) Sprinkle the cilantro leaves and mint leaves, and arrange the lemon slices on top.
If your pan isn’t heavy bottomed, place a heat diffuser, flat griddle, or tava underneath the pan to diffuse the heat. Layer the lid with a kitchen cloth (or aluminum foil) and seal tightly. (See Note 2) Turn on the heat to medium and allow the biryani to develop steam for 4-5 minutes. You’ll be able to feel the steam starting to escape the sides. Then turn down to the lowest heat and allow it to cook in its steam (‘dum’) for 20 minutes. Turn off the heat and allow the biryani to rest with the lid on for 10 minutes. Do not stir or mix. To serve, gently move on to platter with rice paddle or small plate. Serve hot with yogurt or raita.
Tip: When boiling anything, cover with a lid to make it boil faster.Note 1: How long you boil will depend on the age of your rice (5 minutes for aged rice, 4 for younger/newly harvested). The rice should be just edible, but not fully cooked, as it's more likely to break during the steaming/dum if allowed to cook fully. See post on how to fix rice if overcooked or undercooked. Note 2: The goal is to keep as much of the steam inside as possible.