# ui-branding Specification ## Purpose Единая визуальная айдентика приложения: гало-эмблема и фавикон, отдаваемые самим приложением, наследующие тему и читаемые в мелком размере. ## Requirements ### Requirement: Гало-эмблема Интерфейс SHALL отображать эмблему «гало» — диск солнца, окружённый отделённым от него кольцом — как встроенную векторную графику, наследующую цвет текущей темы. #### Scenario: Отображение в шапке - **WHEN** открыт основной интерфейс - **THEN** в шапке рядом с надписью «Galo» показана гало-эмблема #### Scenario: Смена темы - **WHEN** пользователь переключает тему (light/dark/neutral) - **THEN** цвет диска и кольца эмблемы меняется вместе с темой #### Scenario: Мелкий размер - **WHEN** эмблема отрисована в размере порядка 16-24 px - **THEN** диск и отделённое кольцо остаются различимыми ### Requirement: Фавикон от приложения Приложение SHALL отдавать фавикон бренда со своего origin, а разметка страницы SHALL ссылаться на существующий файл. #### Scenario: Запрос фавикона - **WHEN** браузер запрашивает фавикон - **THEN** приложение отвечает изображением SVG с собственным `Content-Type` #### Scenario: Запасной формат - **WHEN** клиент не поддерживает SVG-фавикон - **THEN** разметка предоставляет PNG-запасной вариант ### Requirement: Фавикон под тему Фавикон SHALL учитывать предпочтение схемы оформления и в тёмной схеме SHALL использовать светлый вариант эмблемы на тёмном фоне. #### Scenario: Тёмная схема - **WHEN** система сообщает о предпочтении тёмной схемы - **THEN** фавикон отображается в варианте для тёмной схемы #### Scenario: Светлая схема - **WHEN** система сообщает о предпочтении светлой схемы - **THEN** фавикон отображается в варианте для светлой схемы ### Requirement: Доступность эмблемы Эмблема SHALL быть декоративной рядом с текстовым вордмарком и SHALL иметь доступное имя, когда используется как самостоятельный смысловой элемент. #### Scenario: Эмблема рядом с вордмарком - **WHEN** эмблема сопровождает видимый текст «Galo» - **THEN** она скрыта от вспомогательных технологий #### Scenario: Самостоятельная эмблема - **WHEN** эмблема является единственным содержимым управляющего элемента - **THEN** элемент имеет доступное имя ### Requirement: Автономность ассетов бренда Эмблема и фавикон SHALL загружаться с самого приложения и SHALL NOT требовать запросов к внешним источникам. #### Scenario: Загрузка без внешней сети - **WHEN** страница загружается без доступа к внешней сети, кроме своего сервера - **THEN** эмблема и фавикон отображаются