Вопрос чисто к опытным верстальщикам?
Дк вроде уже ни в одной статье писалось, что цепочки селекторов это зло. Не столько с эстетической сколько с практической точки зрения. 
1. Если тебе где-то нужно переопределить стили в каком-то отдельном контексте придеться такую же длинную цепочку фигачить. 
2. Ну и размер файла стилей это не уменьшает. 
3. Плюс дополнительные элементы цепочки это лишние циклы поиска браузером соответствии элементов в ДОМ структуре, что ест ресурс. Одна цепочка может не заметна, но полчища таких цепочек уверен могут показать существенную разницу. 
4. Потом браузер ведь читает справа налево. В .navbar .navbar-right-menu li.notify-dropdown .notify-list li a .notify-body он сначало найдет все .notify-body, потом начнет проверять какие из них вложены в тег a и искать будет до самого верхнего эелемента пока не найдет или не упреться в бади. Потом начент проверять а какие из них лежат внутри списка li и тд. Куча ненужных обработок.
5. В этом же ключе стоит упомянуть, что селекторы в идеале все должны быть классами. А селекторы теги типа a, li, p, span и тд нужно избегать потому что они неспецифичны, не несут большой ценности, создают лишние цыклы обхода дерева элементов. По той же причине нельзя использовать селектор *. 
В идеале вообще не должно быть вложенных селекторов. Почитай про БЕМ методологию. https://ru.bem.info/methodology/ Максимум 2 в крайних случаях три уровня вложенности.
Лучший вариант - БЭМ, но если уж так нравятся вложенности - можно через препроцессоры. К при меру sass(scss), тогда код может принять такой вид:.navbar {
  // стили .navbar 
  .navbar-right-menu {
    // стили .navbar-right-menu 
    li.notify-dropdown {
      // и т.д.
    } 
  } 
}