Adapted from Vegetarian Times
Makes one 8x8 pan
For the Crust:
1/2 cup unsalted butter, softened
1/4 cup sugar
1 cup all-purpose flour
1/4 teaspoon salt
For the Filling:
1 lb. fresh or frozen cranberries
1/2 cup water
3/4 cup fat-free or low-fat sweetened condensed milk
3 large egg yolks
Preheat oven to 350°F. Line an 8x8 pan with aluminum foil or parchment paper (this will help with removing the bars later).
In a medium bowl, mix together the softened butter, flour, sugar, and salt until combined (mixture will be crumbly). Press into the bottom of the prepared pan.
Bake for 15 minutes at 350°F, until crust is firm and starting to turn golden brown around the edges. Let cool on a wire rack.
Reduce oven temperature to 300°F.
Meanwhile, bring cranberries and water to a simmer in a medium saucepan. Reduce heat to medium and cook 10 minutes, or until berries have burst and are tender. Let cool, then blend in a blender until smooth.Strain mixture through a sieve. You should end up with about 1 cup of smooth cranberry purée.
Transfer purée to bowl, and whisk in condensed milk and egg yolks until smooth.
Pour mixture over cooked crust, and bake in 300°F oven for 25-28 minutes, until filling is set. Cool at room temperature, then chill in refrigerator for at least one hour before cutting into bars or hearts, if desired.