Preheat the oven to 350°F (180°C). Grease two 8-inch round pans, line the bottoms with parchment, and lightly grease the parchment.
In a large bowl, sift together the flour, baking powder, baking soda, salt, and sugar.
In a separate bowl, whisk the warm milk, saffron milk, oil, yogurt, cardamom, and rose water until smooth.
Add the wet ingredients to the dry in two additions, folding gently until no streaks of flour remain. Do not overmix.
Divide the batter evenly between the two prepared pans (about 410 g per 8-inch pan).
Bake 30 to 38 minutes, until a skewer inserted in the center comes out clean and the tops spring back lightly.
Cool in the pans 10 minutes, then turn out onto a wire rack. Peel off parchment and cool completely. Wrap layers in plastic and chill at least 1 hour before trimming and assembling.