Plotly Dash - How to use f strings for multiple conditions within a filter query in Dash datatable conditional formatting

I want to apply conditional formatting based on multiple logic on my Dash Datatable. My logic is for a particular value in Column Fruits I want to colour code the values of Price2 if Price1 is selected and vice versa based on a dropdown selection. This dropdown selection let’s the user choose a column either Price1 or Price2.
Example -

Fruits Price1 Price2
Apples 10 9
Apples 12 10
Apples 13 12
Bananas 5 4
Bananas 6 5
Bananas 4 3

For every row if Fruit = Apples and for a dropdown selection of Price1 , if Price 2 is less than Price1 then all the records of Price 2 corresponding to Apples will be red and for the same logic for Fruit = Bananas but it will be yellow.

If the dropdown selection was Price2 then Price1 should have been colour coded for Price1 < Price2 based on value of Fruits as colour (either red or yellow) depends on that. For this example if Price2 is selected from the dropdown then as all prices in Price1 is greater than the corresponding Price2 hence it will not be colour coded but one gets the idea.

So far, I have gone through this post - Conditional Formatting in Dash Table 3.7.0? - #2 by Damian and came up with this code -

 style_data_conditional =
      # Colour red when values are less than benchmark
          'if': {
                 'column_id': str(column), 
             #'filter_query': f'{{{column}}} < {{{benchmark}}}'},
            'filter_query': f'{{{Fruits}}} eq "Apples" && {{{column}}} < 
          'backgroundColor': 'red',
                    'color': 'white'
        } for column in data.iloc[:,0:].columns

Clearly benchmark stores the selection (selected column) from the dropdown.

I have kept the commented out code to show that it works fine if we just base the logic on Price2 < Price1 with Price1 as the dropdown selection.

I think I am not being able to work with f strings and would need help with it. Thanks in advance.