Associate table items by numeric range

I have the current situation: I need to associate items from two categories (let's call them "Recipes" and "Steel Grades") based on a range of numeric values from another category (let's call it P).

For a given Steel Grade "Foo": if 0% <= P < 1%, we should have Recipe "XYZ"; if 1% < P <= 5%, we should have Recipe "ABC", if 5% < P <= 100%, we should have Recipe "JKL", and so it goes on.

The problem is: the user must be able to change this configuration. So in the example above, there are three ranges, but the user must be able to add or remove new recipes (for example, add a new recipe "MNO" for range 5% < P <= 10%, and then recipe "JKL" would be valid for 10% < P <= 100%).

Can someone help me present this is in a nice, simple way?

The first thing that comes to my mind would be an editable table with four columns, "Steel Grande", "Min. P", "Max. P" and "Recipe". The user would add rows to the table and fill them manually. However, I think the usability would be terrible; imagine if a new recipe would be added for range 7%-8%: besides adding the new range, the user would have to edit the existing min/max values from the other ranges (since there should be no overlap between ranges).

(This system is used exclusively in desktop version, so there's no need for mobile functionalities.)

EDIT: I'm adding some images as an example to my original idea.

Initial state

Imagine we have the configuration above. "Bar" has recipe "ABC" if 0% <= P < 20%, and recipe XYZ if P >= 20%. Now imagine we want to change this config so we have a new recipe "DEF" if 10% <= P < 20%. The goal is to have a new row in this table, such as in the example below:

Final state

(note that a new row was added, and the existing ones were updated so we have those ranges covering from 0% to 100%)