Создайте редактируемый прототип приложения с приоритетом мобильных устройств, используя существующий стек проекта для [PROJECT] и [AUDIENCE]. Задача: планировщик блюд из запасов.

## Обязательные контент и структура

Введите ингредиенты с указанием количества и срока годности, найдите блюда с этими ингредиентами и добавьте в общий список покупок только недостающие продукты.

## Экраны и навигация

Создайте три связанных представления: «Мои запасы», «Подбор рецептов» и «Список покупок». Оставляйте выбранную запись видимой в заголовке экрана или сводке. Предусмотрите явное действие для возврата и сохраняйте незавершённый ввод при переходах между представлениями. Размещайте основное действие рядом с соответствующим содержимым и учитывайте безопасные области мобильного экрана, видимую экранную клавиатуру и длинные переведённые подписи. На экранах настольных устройств адаптируйте композицию, не удаляя этапы и не изменяя задачу.

## Исходные данные проекта

Используйте [APPROVED_CONTENT] для названий, записей, подписей, количества и мест назначения. Запрашивайте недостающие данные вместо того, чтобы придумывать утверждения о работе системы. В демонстрационных записях можно использовать вымышленный бренд Pantry; помечайте их как образцы данных. Объясните, какие действия являются локальными взаимодействиями в прототипе, а для каких потребуются аутентификация, постоянное хранение данных, разрешения или серверная часть. Не подключайте внешние сервисы и не заявляйте о завершении транзакции, если соответствующая интеграция не была явно реализована и протестирована.

## Направление дизайна

Следуйте [BRAND_RULES]. Если бренд не предоставлен, используйте масляно-жёлтый, кремовый и томатно-красный цвета, а также фотографии ингредиентов. Сделайте рабочий процесс узнаваемым благодаря его собственному содержимому и элементам управления, а не повторению универсальных карточек панели управления. Используйте единую шкалу интервалов и чёткую иерархию текста. Добавьте видимый фокус клавиатуры, доступные названия, достаточную контрастность и текстовые обозначения состояний, не зависящие от цвета. Учитывайте настройку уменьшения движения и сделайте анимированные переходы необязательными.

## Проверка критериев приёмки для задачи

- Обрабатывайте неизвестные сроки годности, несовместимые единицы измерения и недоступный ингредиент, не изменяя количество без уведомления.

## Состояния взаимодействия

Реализуйте успешный сценарий из трёх экранов с локальными тестовыми данными. Добавьте полезное пустое состояние, валидацию перед завершением действия, состояние загрузки или ожидания и состояние ошибки с возможностью восстановления. Для необратимых изменений предусмотрите подтверждение или возможность отмены. Состояние записи должно быть согласованным на всех трёх экранах. Не удаляйте без предупреждения частично введённые данные и не меняйте выбор пользователя после повторной попытки.

## Передача результата и проверка

Предоставьте редактируемые экраны приложения и опишите модель данных, поведение локального хранилища и нереализованные интеграции. Протестируйте при ширине 320px и в более широком окне просмотра, используя навигацию с клавиатуры и длинный контент. Перед добавлением функций проверьте результат по приведённому выше критерию приёмки для этой задачи. Чётко отделяйте демонстрационное поведение от работающего промышленного сервиса.

## Референс и цель воссоздания

Прикрепите файл reference.webp из пакета загрузки этого дизайн-промпта к самому промпту в OpenDesign. Создайте редактируемый результат с похожими композицией и иерархией; не вставляйте всё референсное изображение в качестве готового интерфейса. Если утверждённый контент проекта и правила бренда противоречат вымышленным примерам подписей, сохраняйте утверждённые материалы. Если изображение отсутствует или нечитаемо, запросите его, а не заявляйте о визуальном соответствии.

## Композиция и контент референса

Используйте приложенный файл reference.webp как визуальный референс для планировщика блюд из запасов. Перед началом работы определите основные области сверху вниз, их относительную ширину и высоту, выравнивание, интервалы, типографическую иерархию, цвета поверхностей, границы, изображения и повторяющиеся компоненты. Сохраняйте эти соотношения, не заменяя их универсальным шаблоном. Обязательное содержание задачи: введите ингредиенты с указанием количества и срока годности, найдите блюда с этими ингредиентами и добавьте в общий список покупок только недостающие продукты. При преобразовании изображения в редактируемые элементы следуйте этим указаниям по компоновке: начните с экрана «Мои запасы», предусмотрите в разделе «Подбор рецептов» чёткое основное действие, а в разделе «Список покупок» объясните, что произошло и что можно сделать дальше. В качестве отправной точки используйте масляно-жёлтый, кремовый и томатно-красный цвета, а также фотографии ингредиентов, адаптировав их к предоставленному бренду. Сохраняйте идентификацию записей и контекст навигации видимыми на всех трёх экранах. Отдавайте приоритет доступным для большого пальца элементам управления и удобочитаемым подписям, а не декоративным панелям; на широких экранах сохраняйте целостность рабочего процесса, не растягивая мобильную композицию от края до края.

## Визуальное направление из примера проекта

масляно-жёлтый, кремовый и томатно-красный цвета, фотографии ингредиентов.

## Спецификация взаимодействия

Референс — это статичная концепция: описанное ниже поведение является требованием к реализации, а не доказательством того, что изображение уже функционирует. Скопируйте настроенный промпт в свой проект и создайте связанный сценарий: введите ингредиенты с указанием количества и срока годности, найдите блюда с этими ингредиентами и добавьте в общий список покупок только недостающие продукты. Обрабатывайте неизвестные сроки годности, несовместимые единицы измерения и недоступный ингредиент, не изменяя количество без уведомления. Для каждого видимого элемента управления укажите запускающее его действие, затрагиваемое состояние и обратную связь; реализуйте локальные изменения с согласованным состоянием во всех связанных представлениях. Поиск и фильтры должны выдавать реальные результаты, элементы выбора — иметь явное активное состояние, а действия сохранения — показывать видимую обратную связь об ожидании, успехе или ошибке там, где это уместно. Не добавляйте несвязанные рабочие процессы. Используйте корректные ссылки для навигации, кнопки для действий и доступные названия для элементов управления со значками. Не создавайте впечатление, что операция на сервере завершилась успешно, если изменилось только локальное демо.

## Визуальное сравнение и передача результата

1. Сравните результат с прикреплённым изображением при совпадающих пропорциях. Перед проработкой декоративных деталей проверьте расположение основных областей, относительные размеры изображений, переносы строк, интервалы, типографическую иерархию, контраст, активные состояния и плотность контента.
2. Затем протестируйте узкий макет, не сжимая текст для настольной версии до крошечных подписей.
3. Храните логотипы, фотографии и значки как отдельные ресурсы, а все значимые подписи оставьте редактируемыми. Перечислите недоступные шрифты и ресурсы, а также намеренные отступления. Верните рабочие файлы вместе с кратким описанием реализованного поведения и оставшихся интеграций; не обещайте попиксельное совпадение только на основании промпта.