Создайте интерактивный прототип на HTML/CSS/JavaScript с явно обозначенными начальным, активным и завершённым состояниями, а также удобным для восприятия резервным вариантом для prefers-reduced-motion для [PROJECT] и [AUDIENCE]. Задача: система всплывающих уведомлений.
## Обязательные контент и структура
Анимируйте расположенные стопкой сообщения обратной связи с приоритетами, действиями и возможностью закрытия.
Используйте [APPROVED_CONTENT] как источник названий, дат, числовых данных, утверждений и целевых страниц. Перечислите недостающие исходные данные, прежде чем что-либо заменять. Если нужна демонстрация, обозначьте её контент как вымышленный. Не придумывайте отзывы клиентов, рейтинги, логотипы партнёров или возможности продукта.
## Направление дизайна
Используйте [BRAND_RULES] и уже выбранную в проекте дизайн-систему. Если система не задана, начните со следующего направления: белый и угольно-серый цвета с ярко-зелеными акцентами; четко обозначенные начальное, переходное и конечное состояния. Соблюдайте единообразие типографики, интервалов и цветовых ролей. Отдавайте приоритет задаче, а не декоративным элементам, и избегайте шаблонного набора несвязанных карточек.
## Подготовка контента
Определите типы сообщений, приоритеты, действия, правила длительности показа и сообщения, требующие постоянного внимания. Добавьте несколько уведомлений, появляющихся почти одновременно.
## Макет и поведение
Расположите сообщения стопкой, не перекрывая основные элементы управления, и задайте каждому из них чёткое назначение. Отображайте информацию, требующую действий или имеющую критическое значение, достаточно долго, чтобы её можно было прочитать и принять меры.
## Проверка критериев приёмки для задачи
- Отображайте критически важную информацию достаточно долго, чтобы её можно было прочитать, и сообщайте о значимых обновлениях.
- Вызовите повторяющиеся сообщения, закройте одно из них и воспользуйтесь встроенным действием.
- Избегайте повторных объявлений программой чтения с экрана и не позволяйте таймеру автоматического закрытия удалять информацию, необходимую для восстановления после сбоя.
## Реализация и проверка
Оставьте текст редактируемым. Используйте семантическую структуру, понятные элементы управления, видимый фокус клавиатуры и подходящие состояния отсутствия данных и ошибок. Проверьте узкие и широкие макеты. Учитывайте настройку уменьшения движения. Сохраните существующие фреймворк и зависимости проекта; не заменяйте стек без предупреждения. Верните редактируемые файлы и опишите любое неполное поведение или неподдерживаемые исходные данные. Проверьте именно эту задачу, прежде чем предлагать дополнительные функции.
Сделайте всю информацию и действия доступными без анимации. Где уместно, предусмотрите приостановку или закрытие. Задокументируйте триггеры и переходы; не заменяйте фактический прогресс декоративным таймером.
## Референс и цель воссоздания
Прикрепите файл reference.webp из пакета загрузки этого дизайн-промпта к самому промпту в OpenDesign. Создайте редактируемый результат с похожими композицией и иерархией; не вставляйте всё референсное изображение в качестве готового интерфейса. Если утверждённый контент проекта и правила бренда противоречат вымышленным примерам подписей, сохраняйте утверждённые материалы. Если изображение отсутствует или нечитаемо, запросите его, а не заявляйте о визуальном соответствии.
## Композиция и контент референса
Используйте приложенный файл reference.webp как визуальный образец для системы всплывающих уведомлений. Перед созданием определите основные области сверху вниз, их относительные ширину и высоту, выравнивание, интервалы, типографическую иерархию, цвета поверхностей, границы, изображения и повторяющиеся компоненты. Сохраните эти соотношения, а не заменяйте их универсальным шаблоном. Обязательное содержание задачи: анимируйте расположенные стопкой сообщения обратной связи с приоритетами, действиями и возможностью закрытия. При переносе изображения в редактируемые элементы следуйте этим указаниям по макету: расположите сообщения стопкой, не перекрывая основные элементы управления, и задайте каждому из них чёткое назначение. Отображайте информацию, требующую действий или имеющую критическое значение, достаточно долго, чтобы её можно было прочитать и принять меры.
## Визуальное направление из примера проекта
Белый и угольно-серый цвета с ярко-зелеными акцентами; четко обозначенные начальное, переходное и конечное состояния.
## Спецификация взаимодействия
Образец представляет собой статическую концепцию: описанное ниже поведение необходимо реализовать, однако изображение не подтверждает, что оно уже работает. Скопируйте адаптированный промпт в рабочий проект. Начните с основной задачи: анимируйте расположенные стопкой сообщения обратной связи с приоритетами, действиями и возможностью закрытия. Отображайте критически важную информацию достаточно долго, чтобы её можно было прочитать, и сообщайте о значимых обновлениях. Для каждого видимого элемента управления укажите инициирующее событие, затрагиваемое состояние и обратную связь; реализуйте локальные изменения с согласованным состоянием во связанных представлениях. Обеспечьте реальные результаты поиска и фильтрации, явно обозначенное активное состояние элементов выбора и видимую обратную связь об ожидании, успехе или сбое при сохранении, где это уместно. Не добавляйте несвязанные рабочие процессы. Используйте корректные ссылки для навигации, кнопки для действий и доступные названия для элементов управления со значками. Не создавайте впечатление, что серверная операция выполнена успешно, если изменилось только локальное демо.
## Визуальное сравнение и передача результата
1. Сравните результат с прикреплённым изображением при совпадающих пропорциях. Перед проработкой декоративных деталей проверьте расположение основных областей, относительные размеры изображений, переносы строк, интервалы, типографическую иерархию, контраст, активные состояния и плотность контента.
2. Затем протестируйте узкий макет, не сжимая текст для настольной версии до крошечных подписей.
3. Храните логотипы, фотографии и значки как отдельные ресурсы, а все значимые подписи оставьте редактируемыми. Перечислите недоступные шрифты и ресурсы, а также намеренные отступления. Верните рабочие файлы вместе с кратким описанием реализованного поведения и оставшихся интеграций; не обещайте попиксельное совпадение только на основании промпта.