Вы должны задать! Важный флаг при наведении, потому что ваш стиль в элементе реагирования является встроенным, а встроенный стиль не позволяет переопределить любым внешним css
Чтобы сделать это правильным
.button:hover {
background-color: grey!important;
}
Для большей точности ! Важный не рекомендуется. Вы должны использовать классы для этого.