In a large mixing bowl, beat the softened butter and granulated sugar until light, pale, and creamy. This should take about 2–3 minutes and helps create a soft cookie texture.
Add the egg and vanilla extract, then mix until fully combined. Scrape down the sides of the bowl to ensure everything mixes evenly.
In a separate bowl, whisk together the flour, baking powder, and salt. Slowly add the dry ingredients to the butter mixture, mixing just until a smooth dough forms. Do not overmix.
Divide the dough into two portions, flatten each into a disk, and wrap tightly. Chill in the refrigerator for at least 1 hour. Chilling is important to keep the cookies from spreading.
Preheat the oven to 350°F (175°C) and line baking sheets with parchment paper.
Roll the chilled dough on a lightly floured surface to about 1/4-inch thickness. Cut out heart shapes and carefully transfer them to the prepared baking sheets, leaving a little space between each cookie.
Bake for 9–11 minutes, just until the edges look set but not browned. The cookies should stay light in color.
Let the cookies cool on the baking sheet for 5 minutes, then move them to a wire rack and allow them to cool completely before decorating.
To make the royal icing, mix the powdered sugar and meringue powder in a bowl. Add vanilla extract and start with 5 tablespoons of warm water, mixing slowly.
Continue adding water, one tablespoon at a time, until the icing reaches a thick but smooth consistency. The icing should hold its shape when piped.
Divide the icing into bowls and tint with pink and red gel coloring, leaving some icing white. Cover bowls with a damp cloth when not in use to prevent drying.
Transfer icing to piping bags with small round tips. Pipe an outline around each cookie, then flood the center with slightly thinner icing of the same color.
Use a toothpick to gently spread the icing and remove air bubbles. While the icing is still wet, add sprinkles as desired.
For decorative details like dots and swirls, allow the base icing to set for 20–30 minutes, then pipe designs on top using thicker icing.
Let the cookies dry at room temperature for at least 6–8 hours, or overnight, until the icing is completely firm and smooth to the touch.