/* =============================================================
   АйЮрист — SVG-иконки (img)
   Референс: referens/09-icons/ICONS.md

   Разметка:
     <img src="{{ asset('assets/…') }}" alt="…"
          class="ui-icon ui-icon--accent">
     <img … class="ui-icon ui-icon--white ui-icon--sm">

   Цвет:  --white | --accent | --hint
   Размер: --xs | --sm | --md (по умолчанию) | --lg | --xl | --empty | --empty-lg

   Legacy-классы (.icon, .action-icon, …) — алиасы для постепенной миграции.
   ============================================================= */

/* --- Базовый блок ------------------------------------------------ */

.ui-icon {
    display: block;
    width: var(--icon-size-md);
    height: var(--icon-size-md);
    object-fit: contain;
    flex-shrink: 0;
}

.ui-icon--xs   { width: var(--icon-size-xs);   height: var(--icon-size-xs); }
.ui-icon--sm   { width: var(--icon-size-sm);   height: var(--icon-size-sm); }
.ui-icon--md   { width: var(--icon-size-md);   height: var(--icon-size-md); }
.ui-icon--lg   { width: var(--icon-size-lg);   height: var(--icon-size-lg); }
.ui-icon--xl   { width: var(--icon-size-xl);   height: var(--icon-size-xl); }
.ui-icon--empty    { width: var(--icon-size-empty);    height: var(--icon-size-empty);    margin-left: auto; margin-right: auto; }
.ui-icon--empty-lg { width: var(--icon-size-empty-lg); height: var(--icon-size-empty-lg); margin-left: auto; margin-right: auto; }
.ui-icon--empty-xl { width: var(--icon-size-empty-xl); height: var(--icon-size-empty-xl); margin-left: auto; margin-right: auto; }

/* --- База знаний: нативный цвет Figma (#C86848) ------------------ */

.knowledge-library-icon {
    filter: none;
}

/* --- Цвет: белый (хром, оверлеи, контекстные меню) -------------- */

.ui-icon--white,
.icon,
.close-icon,
.settings-icon,
.context-menu-icon,
.module-action-icon,
.chat-action-icon,
.knowledge-search-icon,
.tree-expand-icon,
.tree-item.document .tree-icon,
.search-input-icon,
.search-placeholder-icon,
.dropdown-icon,
.dropdown-arrow,
.mode-toggle .icon,
.attached-doc-icon,
.upload-icon,
.project-title-icon,
.section-btn-settings,
.search-btn .icon,
.chat-document-delete,
.desktop-add-instruction-button img,
.project-document-remove img,
.mobile-sidebar-toggle img:not(.knowledge-library-icon) {
    filter: var(--icon-white);
}

/* --- Цвет: акцент (навигация, действия, проекты) ---------------- */

.ui-icon--accent,
.actions-section .action-icon,
.special-module-icon,
.special-module-item.active .special-module-icon,
.special-module-item.selected .special-module-icon,
.module-icon,
.chat-icon,
.user-avatar,
.theme-toggle-btn img,
.collapse-btn img,
.admin-icon,
.logout-icon,
.project-icon,
.project-option-icon,
.project-indicator-icon,
.add-btn img:not(.composer-icon-add),
.knowledge-title .knowledge-icon,
.knowledge-icon-btn img:not(.knowledge-library-icon),
.knowledge-action-icon,
.upload-btn img,
.create-folder-btn img,
.action-btn img,
.tree-item.folder .tree-icon,
.chat-folder-icon,
.doc-action-btn img {
    filter: var(--icon-accent);
}

.project-document-remove:hover img {
    filter: invert(35%) sepia(41%) saturate(700%) hue-rotate(320deg) brightness(90%) contrast(100%);
}

/* --- Цвет: hint (disabled, empty states) ------------------------- */

.ui-icon--hint,
.knowledge-empty-icon,
.upload-empty-icon {
    filter: var(--icon-hint);
}

/* --- Состояния кнопки «Отправить» -------------------------------- */

.send-btn .icon,
.send-btn .ui-icon {
    filter: var(--icon-hint);
    transition: filter var(--transition-normal, 0.2s ease);
}

.send-btn:not(:disabled) .icon,
.send-btn:not(:disabled) .ui-icon {
    filter: var(--icon-accent);
}

.send-btn:hover:not(:disabled) .icon,
.send-btn:hover:not(:disabled) .ui-icon {
    opacity: 0.85;
}

/* --- Прочие контекстные переопределения -------------------------- */

.dropdown-arrow {
    filter: var(--icon-white);
}

.project-dropdown.open .dropdown-arrow {
    transform: rotate(180deg);
}

.knowledge-empty-icon {
    opacity: 0.8;
}

.ui-icon--empty-xl.ui-icon--white {
    opacity: 0.8;
}

.admin-btn .ui-icon {
    opacity: 0.7;
}

.admin-btn:hover .ui-icon {
    opacity: 1;
}

.desktop-info-icon,
.desktop-warning-icon,
.drag-drop-icon,
.chat-drag-drop-icon,
.counterparty-icon,
.search-no-results-icon {
    flex-shrink: 0;
}

.context-menu-item .ui-icon,
.module-dropdown-item .ui-icon {
    opacity: 0.7;
}

.context-menu-item:hover .ui-icon,
.module-dropdown-item:hover .ui-icon {
    opacity: 1;
}

/* --- Иконка внутри поля ввода (контейнер: position: relative) ----- */

.knowledge-search > .ui-icon,
.search-input-container > .ui-icon {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.knowledge-search > .ui-icon {
    right: 12px;
}

.search-input-container > .ui-icon {
    right: 16px;
}
