# Спринты: мобильный UI кабинета тестов --- ## Спринт 1 — быстрые исправления **Цель:** выровнять кнопки, мета-строку списка, историю версий, назначение и safe-area; без смены контентной модели страниц. - [x] **1.1** Панель «Сохранить черновик / К списку»: убрать конфликт `inline-actions .btn { width: auto }` с `btn-primary` — колонка на всю ширину (`.actions-bar`) - [x] **1.2** Touch: `min-height` у `.btn--sm` (убрать, удалить вопрос, сделать активной…) - [x] **1.3** Список тестов: не разбивать «· v1» — хвост в `list-row__meta-tail` + `white-space: nowrap` - [x] **1.4** «История версий»: вместо `` — карточки (`surface-card` + flex) - [x] **1.5** «Назначение»: не рендерить пустой `.assign-list` (убрать «коробку» без людей) - [x] **1.6** Сильнее рамка `.btn-ghost` (согласование с полями) - [x] **1.7** `padding-bottom` у `.cabinet-main` + `env(safe-area-inset-bottom)` - [x] **1.8** «Публикация»: на узком экране — кнопка на всю ширину (`.inline-actions--block-mobile`) **Файлы:** `frontend/src/styles/cabinet-theme.css`, `frontend/src/pages/TestDetail.jsx`, `frontend/src/pages/TestsList.jsx`. --- ## Спринт 2 — карточки, импорт, вопрос, радио/чек, фикс-футер - [x] **2.1** «Прогоны и разбор»: таблица заменена на список карточек (`.attempts-card-list`) - [x] **2.2** «Импорт из файла»: скрытый `input` + `label` с `.btn` (`.import-file-input` / `.import-file-label`) - [x] **2.3** «Вопрос N» + «Сгенерировать вопрос (ИИ)»: колонка на мобилке, ряд от `min-width: 520px` (`.question-editor-block__header`) - [x] **2.4** Варианты: `type="radio"` при одном верном, `checkbox` при нескольких - [x] **2.5** Моб. фикс-футер `≤640px` с «Сохранить» / «К списку» + статус черновика; панель в потоке скрыта **Файлы:** `frontend/src/styles/cabinet-theme.css`, `frontend/src/pages/TestDetail.jsx`. --- ## Спринт 3 — дизайн-токены (по желанию) - [ ] Единая шкала: `--control-height`, `--control-padding-x`, `--button-gap` — рефакторинг всех `inline-actions` и форм