Также стоит учитывать исключения (Пример: файл экспортирующий класс, нейминг js файлов (правило).
Пример: button_type_hidden.
Hidden - это булевый модификатор, свойство либо есть, либо нет. Ключ для него не нужен. Правильно - button_hidden
Ключ требуется когда есть вариативность: button_size_big, button_size_middle
Неправильно:
.calculator__button.calculator__plus
Правильно:
.calculator__button.calculator__button_action_plus.calculator__button_disabled
Не забывайте проверять как выглядит календарь на мобильных. Если ввод дат вручную в инпуты работает некорректно, то необходимо запретить его. То же самое и для dropdown.
Пример плохих отступов:
Пример невалидных значений: При min 0, а max 10, шаг не может быть 11.