Beat the butter and sugar together in a mixing bowl until pale and creamy, then stir in the flours until well combined. Press the shortbread into a 28 x 18 cm (11 x 7 inch) baking tin, then place in a preheated oven, 200°C (400°F), Gas Mark 6, for 10–12 minutes until golden.
Meanwhile, place the caramel ingredients in a heavy-based saucepan and heat over a low heat until the sugar has dissolved, then cook for 5 minutes, stirring continuously until just beginning to darken. Remove from the heat and leave to cool a little, then pour the caramel over the shortbread base and leave to cool completely.
Melt the white and dark chocolate in separate heatproof bowls set over saucepans of simmering water. When the caramel is firm, spoon alternate spoonfuls of the white and dark chocolate over the caramel, tap the tin on the work surface so that the different chocolates merge, then use a knife to make swirls in the chocolate. Refrigerate until set, then cut into 15 pieces.