Place the butter and sugar in a mixing bowl and beat with an electric beater until creamed and fluffy.
Add the eggs and beat on low until smooth.
Add the oil, rosewater, lemon juice, lemon zest, and vanilla extract and beat on low until just mixed. Set aside.
In a second mixing bowl add the all-purpose flour, almond flour, baking powder, cardamom, and salt, and stir to combine.
Add the flour mixture to the bowl of wet ingredients a little at a time while stirring until just combined. Do not overmix.
Pour the batter into the muffin tin, evenly dividing it between the 12 cups.
Bake for 20-25 minutes until a toothpick inserted into the center of a cupcake comes out clean. Remove from the oven and let cool for 5 minutes before removing the cupcakes from the pan and placing them on a wire rack to cool completely.
When the cupcakes are almost cool, start making the glaze. Roll the saffron between your fingers to crush it before placing it in a small bowl with the warm water. Stir, cover, and let steep for 10 minutes.
Place the powdered sugar, saffron water, and lemon juice in a bowl and stir to mix until smooth. The glaze should be thick but just liquid enough to slowly drip off a spoon. Add a teaspoon of water if it is too thick.
Drizzle the glaze over the cupcakes and top with chopped pistachios and rose petals.