Проверьте это:
const Input = styled.input`
&:checked + ${Label} {
background: blue;
}
`;
Это правило &:checked + ${Label}
означает, что «когда я отмечен, у компонента метки родного брата прямо подо мной будут эти стили»; * 1005 то есть *
<>
<Input id={id}... />
<Label htmlFor={id}... />
</>
Однако ваша структура компонентов выглядит следующим образом:
<Label>
<Input ... />
</Label>
Вы должны изменить его на структуру, указанную выше.
Также обратите внимание, что вы не должны объявлять ваши стилизованные компоненты внутри другого компонента, это сильно ухудшит производительность. Вместо этого вы должны сделать:
const Input = styled.input` ... `
const Label = styled.label` ... `
const CheckBoxDoors = props => ...