Определяем класс, задающий другой цвет:
.active
background-color: #77b97e
color: #fff
&:hover
background-color: #99db8f
Переключаем этот класс:
document.addEventListener('click', ({ target: { classList: cl } }) =>
cl.contains('calendar__mounth-day') && cl.toggle('active')
);
ИЛИ
Без js. Исправляем разметку - делаем значения атрибутов
id
у чекбоксов и
for
у label'ов такими, чтобы клик по label'у переключал состояние чекбокса. Т.е., одинаковыми для пары из чекбокса и соответствующего ему label'а, уникальными для каждой из пар.
Затем раскрашиваем label'ы, являющиеся соседями отмеченных чекбоксов:
.calendar__mounth-list input:checked + label
background-color: #77b97e
color: #fff
&:hover
background-color: #99db8f