/*
 * Оформление LibreChat v0.8.8 в стиле БФ «Банк еды "Русь"».
 * Подключается из index.html после основной таблицы стилей LibreChat
 * (вставляет apply-branding.sh). Значения переменных — тройки "R G B",
 * как в client/src/style.css.
 *
 * Режим high-contrast не трогаем: все правила под :not(.high-contrast),
 * а его токены LibreChat пишет inline-стилями на <html>, которые сильнее.
 *
 * Палитра (брендбук): синий #054678, оранжевый #E7650C, жёлтый #F8B508.
 * Кнопки с текстом — тёмный оранжевый #B84E09 (белый текст 5,08:1),
 * наведение #9A4207 (6,65:1). Иконочная кнопка «Отправить» — #E7650C
 * (белая иконка 3,35:1, порог для нетекстовых элементов 3:1).
 * 78e4891640 заменяется версией сборки (сброс кэша браузера и service worker).
 */

/* ---------- Светлая тема ---------- */
html:not(.high-contrast) {
  --brand-purple: 5 70 120;            /* #054678 */
  --ring-primary: 5 70 120;
  --accent-primary: 5 70 120;
  --accent-primary-hover: 3 49 84;     /* #033154 */
  --link: 5 70 120;
  --link-hover: 3 49 84;
  --status-info: 5 70 120;
  --surface-submit: 184 78 9;          /* #B84E09 */
  --surface-submit-hover: 154 66 7;    /* #9A4207 */
  --surface-primary-alt: 248 247 245;  /* #F8F7F5, тёплый фон портала */
  --surface-secondary: 248 247 245;
  --fb-orange: #e7650c;
  --fb-orange-hover: #c9560a;
  --fb-yellow: #f8b508;
  --fb-on-yellow: #333333;
  --fb-selection: rgb(5 70 120 / 0.18);
}

/* ---------- Тёмная тема ---------- */
html.dark:not(.high-contrast) {
  --brand-purple: 127 178 224;         /* #7FB2E0 — светлый синий фирменного тона */
  --ring-primary: 127 178 224;
  --accent-primary: 127 178 224;
  --accent-primary-hover: 166 203 236; /* #A6CBEC */
  --link: 127 178 224;
  --link-hover: 166 203 236;
  --status-info: 127 178 224;
  --surface-submit: 184 78 9;
  --surface-submit-hover: 154 66 7;
  --surface-primary-alt: 23 23 23;     /* серые LibreChat */
  --surface-secondary: 33 33 33;
  --fb-selection: rgb(127 178 224 / 0.35);
}

html:not(.high-contrast) ::selection {
  background-color: var(--fb-selection);
}

/* ---------- Логотип на экране входа ---------- */
html:not(.high-contrast) div:has(> img[src="assets/logo.svg"]) {
  height: 3.5rem;
}
/* Версионированные копии: assets/logo.svg зашит в клиент без версии и кэшируется браузером на 2 суток */
html:not(.dark) img[src="assets/logo.svg"] {
  content: url("logo-light.svg?v=78e4891640");
}
html.dark img[src="assets/logo.svg"] {
  content: url("logo-dark.svg?v=78e4891640");
}

/* ---------- Кнопка «Отправить» в поле ввода (иконочная) ---------- */
html:not(.high-contrast) [data-testid="send-button"]:not(:disabled) {
  background-color: var(--fb-orange);
  color: #ffffff;
}
html:not(.high-contrast) [data-testid="send-button"]:not(:disabled):hover {
  background-color: var(--fb-orange-hover);
}
html:not(.high-contrast) [data-testid="send-button"]:not(:disabled) svg,
html:not(.high-contrast) [data-testid="send-button"]:not(:disabled) svg path {
  color: #ffffff;
  fill: #ffffff;
}

/* ---------- Активный пункт (меню моделей, текущий чат): полоска слева — фирменный синий ---------- */
html:not(.high-contrast) [data-testid="convo-item"]:has([aria-current="page"])::before,
html:not(.high-contrast) [role="option"][data-active-item]::before,
html:not(.high-contrast) [role="menuitem"][data-active-item]::before {
  background-color: rgb(var(--ring-primary));
}
