How can I plot top N of something across various groups in plotly

Let this be a sample data frame. I want to plot a grouped bar plot wrt each region highlighting the top 3 flavours in each region (based on sales.)

Region Flavour Sales
North - Chocolate - 100
North - Mousse - 80
North - Cake - 50
South- Honey- 150
South- Flax- 120
South - Sunflower - 60
East - Red Velvet- 200
East- Banana- 150
East- apple- 100

Could anyone please help me out. It doesnt seem to work when there are different sets of values in the flavour column as there is no uniformity in trace.

I have been trying for days.

This scenario was extremely easy in seaborn as there is a hue option that takes care of this. But how to go about it in plotly or plotly express?