How to add body class that carries the menu depth of the current page?
I did something similar in the past, but I can't remember on which project, so I don't have working code.

Inside a template_preprocess_html, you get the breadcrumb via menu_get_active_breadcrumb.  You then walk the breadcrump  keeping track of depth, comparing the paths against the current path.  When you find a match, you end the walk and then

$variables['classes_array'][] = "menu-depth-" . $depth;


I am pretty sure this is what I did.