Preheat and prep your pan: Preheat oven to 350ºF (175ºC) and line an 8x8 inch square pan with parchment paper, covering the sides for easy removal.
Make the shortbread base: In a medium bowl, cream together the softened butter, sugar, vanilla, and salt using a hand mixer on medium speed until pale and fluffy, about 2 minutes.
Add the flour and mix on low until just combined. Don’t over-mix.
Press the dough evenly into the prepared pan. Bake for 22–25 minutes, or until lightly golden and fragrant. Let cool completely.
Start the caramel: Place the sugar in a clean, heavy-bottomed saucepan over medium-low heat. Stir or whisk constantly until the sugar melts and turns amber, about 10 minutes.
Add the butter all at once (be careful—it will bubble), stirring until smooth and melted. Slowly pour in the cream (more bubbling), continuing to whisk until fully combined and smooth.
Remove from heat and stir in the salt and vanilla.
Layer and chill: Pour the hot caramel evenly over the cooled shortbread crust. Tilt and spread as needed. Chill in the fridge for at least 2 hours, or until firm.
Once the caramel is set, slice into 16 bars (rectangles or squares). Freeze bars for 15 minutes to firm up for easier chocolate coating.
Melt the chocolate: Combine chopped chocolate and coconut oil in a microwave-safe bowl or over a double boiler. Heat and stir until smooth, then let cool slightly.
Dip each bar into the melted chocolate, using a fork to help coat all sides. Place on a parchment-lined baking sheet.
Chill bars for 15–20 minutes until the chocolate is set. Sprinkle with flaky sea salt if desired. Serve chilled or at cool room temperature.