diff --git a/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md b/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md index 13827e9..43e3cd8 100644 --- a/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md +++ b/docs/СПРИНТЫ_МОБИЛЬНЫЙ_ДИЗАЙН.md @@ -8,16 +8,14 @@ **Цель:** выровнять кнопки, мета-строку списка, историю версий, назначение и safe-area; без смены контентной модели страниц. -| # | Задача | Статус | -|---|--------|--------| -| 1.1 | Панель «Сохранить черновик / К списку»: убрать конфликт `inline-actions .btn { width: auto }` с `btn-primary` — колонка на всю ширину (`.actions-bar`) | done | -| 1.2 | Touch: `min-height` у `.btn--sm` (убрать, удалить вопрос, сделать активной…) | done | -| 1.3 | Список тестов: не разбивать «· v1» — хвост в `list-row__meta-tail` + `white-space: nowrap` | done | -| 1.4 | «История версий»: вместо `` — карточки (`surface-card` + flex) | done | -| 1.5 | «Назначение»: не рендерить пустой `.assign-list` (убрать «коробку» без людей) | done | -| 1.6 | Сильнее рамка `.btn-ghost` (согласование с полями) | done | -| 1.7 | `padding-bottom` у `.cabinet-main` + `env(safe-area-inset-bottom)` | done | -| 1.8 | «Публикация»: на узком экране — кнопка на всю ширину (`.inline-actions--block-mobile`) | done | +- [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`. @@ -25,16 +23,14 @@ ## Спринт 2 — бэклог (следующий) -| # | Задача | -|---|--------| -| 2.1 | «Прогоны и разбор»: на мобилке заменить таблицу на карточки или гориз. скролл с фиксированными колонками | -| 2.2 | «Импорт из файла»: кастомная кнопка (скрытый `input` + стилизованный `label` под `.btn`) | -| 2.3 | «Вопрос 1» + «Сгенерировать вопрос (ИИ)» — не в одной строке на узком экране; явная иерархия primary/secondary | -| 2.4 | Радио vs чекбокс у вариантов ответа при «несколько верных» — визуальная метафора (квадраты vs круги) | -| 2.5 | Закреплённый футер с действиями «Сохранить» (опционально) | +- [ ] **2.1** «Прогоны и разбор»: на мобилке заменить таблицу на карточки или гориз. скролл с фиксированными колонками +- [ ] **2.2** «Импорт из файла»: кастомная кнопка (скрытый `input` + стилизованный `label` под `.btn`) +- [ ] **2.3** «Вопрос 1» + «Сгенерировать вопрос (ИИ)» — не в одной строке на узком экране; явная иерархия primary/secondary +- [ ] **2.4** Радио vs чекбокс у вариантов ответа при «несколько верных» — визуальная метафора (квадраты vs круги) +- [ ] **2.5** Закреплённый футер с действиями «Сохранить» (опционально) --- ## Спринт 3 — дизайн-токены (по желанию) -Единая шкала: `--control-height`, `--control-padding-x`, `--button-gap` — рефакторинг всех `inline-actions` и форм. +- [ ] Единая шкала: `--control-height`, `--control-padding-x`, `--button-gap` — рефакторинг всех `inline-actions` и форм