# Checkbox: Доступность

## Подписи

Видимая подпись должна ясно описывать независимый выбор. Обычно вся строка должна быть одной кликабельной поверхностью-подписью.

## Поведение клавиатуры

| Клавиша | Действие |
| --- | --- |
| <kbd>Space</kbd> | Отмечает или снимает отметку с чекбокса в фокусе. Чекбокс в промежуточном состоянии становится отмеченным. |

- Если неопределённое состояние важно, его смысл всё равно должна объяснять окружающая логика продукта.

## Поведение фокуса

- Фокус должен попадать на нативный input.
- Видимое оформление фокуса должно оставаться заметным на поверхности индикатора.

## Семантика для скринридеров

- Скрытый input помогает сохранить нативную семантику чекбокса.
- Неопределённое состояние не должно превращаться в загадочное третье значение без пояснения вокруг.
- Видимый текст должен оставаться привязанным к той же строке взаимодействия.

## Семантика форм

- Используйте `CheckboxInput`, когда элемент принадлежит нативной форме.
- Обязательные чекбоксы согласия должны ясно показывать состояние ошибки.

## Риски доступности

- Отсутствие `CheckboxInput`.
- Оторванный текст подписи, который не входит в ту же кликабельную единицу.
- Использование семантики чекбокса для взаимоисключающих вариантов.
