Fry Onions: Heat oil in a heavy pot. Add sliced onions and fry for 12-15 minutes until deep golden brown. Remove half and set aside for garnishing.
Cook Chicken: Add chicken pieces to the same oil. Sauté on high heat for 5-7 minutes until sealed and water evaporates.
Add Whole Spices: Add cardamom, cloves, black cardamom, cinnamon, and bay leaf. Cook for 2-3 minutes until fragrant.
Add Tomatoes: Add chopped tomatoes and green chilies. Cook for 7-8 minutes until tomatoes are fully mashed and oil separates.
Add Ground Spices: Add red chili, turmeric, cumin, coriander powder. Cook for 2 minutes, stirring continuously.
Add Tamarind and Yogurt: After 10-12 minutes, add tamarind pulp and cook for 3-4 minutes. Then add whisked yogurt gradually while stirring. Add salt. Cover and cook for 15-20 minutes.
Prepare Rice: Boil 6-7 cups water with 2 tbsp oil, salt, and whole spices. Add washed rice and cook until 70% done (5-6 minutes). Drain immediately.
Layer the Biryani: Spread half the rice over the chicken. Sprinkle fried onions, herbs, and food color mixed in milk. Add remaining rice and garnish again. Add kewra water if using.
Dum Cooking: Cover pot with foil and tight lid. Cook on high for 2-3 minutes, then reduce to lowest heat. Place a tawa underneath. Cook for 25-30 minutes.
Rest and Serve: Turn off heat and let rest for 10 minutes. Open lid, gently mix with a fork, and serve hot with raita and salad.
Notes
Don't skip browning onions properly - they add essential flavor