- шапка: кросс-логотип MedPrice + разделитель скрыты на мобиле (nav Поиск/Админка
больше не обрезается)
- таблица сравнения: вторичные колонки (Нерезидент, Прайс от) скрыты на мобиле,
паддинги px-3 sm:px-5 — 3 колонки влезают без обрезки
- очередь верификации: карточка стекается flex-col на мобиле, кнопки flex-wrap —
не наезжают на текст
Все правки под sm:-брейкпоинт, десктоп без изменений.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- web: цвет lg→flint (text-lg применялся как цвет #f5f7f9 → заголовок сравнения был невидим)
- day3: убран исповедальный тон («честная/без накрутки» намекал на прошлую накрутку),
заменён на уверенный язык уточнения сопоставления
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- POST /scan: сервис забирает новые прайсы из папки (настройка watch_folder),
журнал ingested_file исключает повторную обработку; вызывается кроном.
- GET /price-changes: услуги, где цена изменилась не меньше порога между прайсами
(детектор аномалий из ТЗ §4.4, вынесенный в интерфейс).
- GET /export.xlsx: единый сравнительный каталог услуг и цен (openpyxl).
- GET/POST /settings: папка авто-загрузки.
- админка: карточки авто-загрузки и изменений цен + кнопка экспорта.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>