I played around with your site and was surprised how well it already worked, certainly better than I would have expected.
The car routing worked very well. I guess on tracks with grade1 you are looking for explicit access: vehicle, motor_vehicle, motorcar, which is a good thing because many tracks are in reality only accessible for forestry or agriculture, they are just not marked accordingly yet.
The bike routing worked well within your specs too, I liked the fact that it can deal with start or end points on paths, which would be unsuitable (sac_scale) and avoided otherwise. However I found that if you chose your start or end point on such a path, the routing doesn't seem to take the shortest path to more acceptable highways, but seems to continue longer than necessary on unacceptable paths, if that makes for a shorter route.
In general, I agree with you that the "Bike" and the "Foot" Profiles could use more differentiation. On a racing bike with thin tires, even a bumpy grade1 track can be rather irritating, on a city or a trecking bike, tracks up to grade2 two shouldn't be a problem, same for paths with asphalt and gravel if they are not explicitly prohibited. And for mountain bikes, well, track grade3 or surface=ground is where the fun just starts.
So for racing bikes, you probably want to avoid surface!=asphalt, sac_scale=*, mtb:scale=* or trail_visibility=* in general. For city and trecking bikes surface gravel/paved/concrete/cobblestone should be fine, but everything with an sac_scale>hiking, an mtb:scale>0 or trail_visibility<excellent should be off limits. And most mountain bikers wouldn't have a problem with any grade of track, mtb:scale<=1 and trail_visibility>=good, many of them would accept or even search for more challenging conditions.
On foot, I would distinguish between hiking and walking around in a city. For the latter, I'd prefer surface asphalt/gravel/paved/concrete/cobblestone and avoid grass or ground (and probably sac_scale=hiking too).
Thanks a lot for your website and best regards,