Preheat oven to 350°F (175°C). Grease pans and line bottoms with parchment paper.
Whisk flour, baking powder, and salt in a bowl. Set aside.
Beat butter and sugar until light and fluffy (3–4 minutes).
Add eggs one at a time, mixing well. Stir in cotton candy flavoring.
Alternate adding dry ingredients and milk, starting and ending with flour. Mix just until combined.
Divide batter into four bowls. Tint with pink, blue, purple, and yellow.
Spoon colors into pans, swirl lightly, and bake for 35 minutes or until a toothpick comes out clean.
Cool in pans for 10 minutes, then transfer to a wire rack to cool fully.
Beat butter, then gradually add powdered sugar. Stir in flavoring and milk until spreadable. Tint if desired.
Stack and frost layers. Chill briefly, then finish frosting and decorate with sprinkles, cotton candy, or glitter.