/* ЕВРАЗПРО (автор 12.09): «вместо фотографий — диалоговые окна», «точно как в нашем этом окне» (чат совета
   в помощнике), «не меняя размеры области фото и форму окна». Диалог живёт ТОЛЬКО в рамке фото:
   плитка — область фото (.v5-product-media скрыта, диалог на её месте той же клеткой сетки),
   широкое/полное — внутри главного слайда галереи (.v5-wide-slide.is-main, картинки скрыты).
   Титлбар, рейка, пульт, галерея, панель «Обзор», сетка окна — штатные, не трогаются. */
.em-euraspro .v5-product-window .v5-product-body > .v5-product-media { display: none !important; }
.em-euraspro .v5-product-window .v5-wide-slide.is-main > img { display: none !important; }
.em-euraspro .v5-product-window .v5-wide-slide.is-main { display: flex !important; align-items: stretch; }
/* сам диалог: классы штатного чата (.v5-chat/.v7-cn) задают плавающее окно — их размеры и позицию гасим;
   в плитке он занимает клетку фото сетки (grid-row 1), в слайде — всю рамку (flex 1) */
.em-euraspro .v5-product-window .v7-ep-dialog {
  display: flex !important; flex-direction: column; flex: 1 1 auto; grid-row: 1; grid-column: 1; align-self: stretch;
  min-height: 0 !important; max-height: none !important; height: 100% !important; width: auto !important; max-width: none !important; min-width: 0 !important;
  margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important;
  position: relative !important; inset: auto !important; transform: none !important; resize: none !important; overflow: hidden !important; z-index: auto !important;
}
/* лента и сообщения — как в окне совета помощника (v7-council.css: .v7-cn-feed / .v7-cn-msg в .v5-ai-compact-body) */
.em-euraspro .v7-ep-dialog > .v7-ep-feed {
  flex: 1 1 auto; min-height: 0; overflow-y: auto; scrollbar-width: thin;
  display: flex; flex-direction: column; gap: var(--em-space-2, 0.5rem); padding: var(--em-space-2, 0.5rem);
}
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg {
  max-inline-size: none; inline-size: auto; align-self: stretch; padding: 0.5rem 0.75rem; text-align: start;   /* автор 13.09: отступы от краёв области одинаковые слева и справа */
  border-radius: var(--em-radius-lg, 0.75rem); background: var(--v5-card, #fff) !important;
  /* автор 13.09: ВЕСЬ контур цветом роли: сверху/снизу толщина волоса (1px), слева скобка 3px, справа скобка тоньше
     левой, но толще волоса — 2px (половина 1,5px на обычном экране сливается с волосом в 1px); скругление плавно
     перетекает от волоса к скобкам */
  /* автор 13.09: волос вдвое тоньше правой скобки, правая тоньше левой. Тоньше 1 пикселя экрана линию не нарисовать
     (браузер округляет), поэтому волос сверху/снизу = 1px полупрозрачный (читается вдвое тоньше), справа 2px, слева 3px */
  border-style: solid !important; border-width: var(--v5-hairline, 1px) var(--v5-hairline, 1px) var(--v5-hairline, 1px) calc(3 * var(--v5-hairline, 1px)) !important; border-color: var(--v5-border, #d8d3c6) !important;   /* автор 13.09: справа скобки нет — волос как сверху и снизу (1px полупрозрачный); слева скобка 3px */
}
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg.role-author { border-color: #1f3a5a !important; border-top-color: color-mix(in srgb, #1f3a5a 55%, #fff) !important; border-bottom-color: color-mix(in srgb, #1f3a5a 55%, #fff) !important;  border-right-color: color-mix(in srgb, #1f3a5a 55%, #fff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg.role-claude { border-color: #d97757 !important; border-top-color: color-mix(in srgb, #d97757 55%, #fff) !important; border-bottom-color: color-mix(in srgb, #d97757 55%, #fff) !important;  border-right-color: color-mix(in srgb, #d97757 55%, #fff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg.role-codex { border-color: #10a37f !important; border-top-color: color-mix(in srgb, #10a37f 55%, #fff) !important; border-bottom-color: color-mix(in srgb, #10a37f 55%, #fff) !important;  border-right-color: color-mix(in srgb, #10a37f 55%, #fff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg.role-system { border-color: #a3a099 !important; border-top-color: color-mix(in srgb, #a3a099 55%, #fff) !important; border-bottom-color: color-mix(in srgb, #a3a099 55%, #fff) !important;  border-right-color: color-mix(in srgb, #a3a099 55%, #fff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg > .v5-chat-meta {
  display: block; margin-bottom: var(--em-space-1, 4px); color: var(--v5-muted, #a3a099);
  font-size: var(--em-font-micro, 11px); font-weight: var(--em-weight-semibold, 600); text-align: start;
}
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg > p {
  margin: 0; font-size: 0.78125rem; line-height: 1.45; color: var(--v5-text, #244154);
  white-space: pre-wrap; overflow-wrap: anywhere; text-align: start;
}
/* форма — как в окне совета помощника: скрепка · поле · «Отправить» */
.em-euraspro .v7-ep-dialog > .v7-ep-form {
  flex: none; display: flex; align-items: center; gap: var(--em-space-2, 0.5rem); padding: var(--em-space-2, 0.5rem);
}
/* автор 12.09: поле и кнопка — КАК ПОИСК в шапке (поле: 32 / паддинг 10 / рамка #E4E0D4 / радиус 8 / 12.5·400;
   кнопка «Поиск»: 32 / паддинг 12 / радиус 8 / #c3d3e8 / #1f3a5a / 12·600 / значок 16 + текст, зазор 6);
   скрепка — как остальные иконки на плашке: 32×32, без фона, значок 16, обводка 1.5, цвет #32495F */
/* (правила окна-атома перекрашивают .v5-cart-button под корзину и прячут текст, а иконки рейки ужимают до 14 —
   поэтому значения закреплены !important) */
.em-euraspro .v7-ep-dialog > .v7-ep-form > input:not([type="file"]) {
  flex: 1 1 auto; min-width: 0; height: 2rem !important; min-height: 2rem !important; max-height: 2rem !important; padding: 0 0.625rem !important;
  border: var(--v5-hairline, 1px) solid var(--v5-border-light, #e4e0d4) !important; border-radius: var(--em-radius-sm, 0.5rem) !important; background: var(--v5-card, #fff) !important; outline: 0; box-shadow: none !important;
  font-family: inherit !important; font-size: 0.78125rem !important; font-weight: 400 !important; color: rgb(31, 30, 29) !important;
}
.em-euraspro .v7-ep-dialog > .v7-ep-form > input:not([type="file"]):focus { border-color: color-mix(in srgb, #1f3a5a 35%, #fff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v7-cn-clip {
  flex: none; width: 2rem !important; height: 2rem !important; min-height: 0 !important; padding: 0 !important; margin: 0 !important;
  border: 0 !important; border-radius: 0.5rem !important; background: transparent !important; color: #32495F !important;
  display: inline-flex !important; align-items: center; justify-content: center;
}
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v7-cn-clip svg { width: 1rem !important; height: 1rem !important; stroke-width: 1.75 !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button {
  flex: none; height: 2rem !important; min-height: 2rem !important; max-height: 2rem !important; padding: 0 0.75rem !important; margin: 0 !important;
  display: inline-flex !important; align-items: center; gap: 0.375rem !important; border: 0 !important;
  border-radius: 0.5rem !important; background: #c3d3e8 !important; color: #1f3a5a !important;
  font-family: inherit !important; font-size: 0.75rem !important; font-weight: 600 !important; line-height: 1 !important; white-space: nowrap;
}
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button > span { display: inline !important; font: inherit !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button svg { width: 1rem !important; height: 1rem !important; stroke-width: 1.75 !important; color: #32495F !important; flex: none; }
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v7-cn-status { flex: none; }

/* ШАПКА ДИАЛОГА (автор 13.09): как у панели «Обзор» справа (.v5-full-viewbar — те же высота, отступы, волос,
   значок 16, имя 12.5/600), но полупрозрачная — лежит поверх ленты, лента проходит под ней */
.em-euraspro .v7-ep-dialog > .v7-ep-head {
  /* автор 13.09: без полупрозрачности — обычная матовая полоса, как «Обзор» (фон берётся из правила .v5-full-viewbar) */
  position: static; flex: none; border-bottom: 1px solid color-mix(in srgb, #1f3a5a 18%, #fff);
}
.em-euraspro .v7-ep-dialog > .v7-ep-head .v5-viewbar-title svg { color: #32495F; }
.em-euraspro .v7-ep-dialog > .v7-ep-head .v5-viewbar-title strong { font-size: .78125rem; font-weight: 600; color: #32495F; }
.em-euraspro .v7-ep-dialog > .v7-ep-feed { padding-top: 0 !important; /* шапка в потоке; зазор 8 даёт gap диалога */ }

/* ДИНАМИЧНЫЙ ЦВЕТ ШАПКИ (автор 13.09): гамма шапки = цвет скобки последнего сообщения, полупрозрачно */
.em-euraspro .v7-ep-dialog[data-роль="author"] > .v7-ep-head { background: color-mix(in srgb, #1f3a5a 10%, #ffffff) !important; border-bottom-color: color-mix(in srgb, #1f3a5a 35%, #ffffff) !important; }
.em-euraspro .v7-ep-dialog[data-роль="claude"] > .v7-ep-head { background: color-mix(in srgb, #d97757 10%, #ffffff) !important; border-bottom-color: color-mix(in srgb, #d97757 35%, #ffffff) !important; }
.em-euraspro .v7-ep-dialog[data-роль="codex"] > .v7-ep-head { background: color-mix(in srgb, #10a37f 10%, #ffffff) !important; border-bottom-color: color-mix(in srgb, #10a37f 35%, #ffffff) !important; }
.em-euraspro .v7-ep-dialog[data-роль="system"] > .v7-ep-head { background: color-mix(in srgb, #a3a099 10%, #ffffff) !important; border-bottom-color: color-mix(in srgb, #a3a099 35%, #ffffff) !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-head > .v7-ep-headtools { inline-size: 0; overflow: hidden; }
/* КРОШКА В ШАПКЕ (автор 13.09): «Фронт › кто написал последнее» — шрифт тот же, цвет = цвет скобки роли */
.em-euraspro .v7-ep-dialog > .v7-ep-head .v7-ep-sep { color: color-mix(in srgb, #1f3a5a 45%, #fff); font-size: .78125rem; margin-inline: .125rem; }
.em-euraspro .v7-ep-dialog > .v7-ep-head .v7-ep-who { font-size: .78125rem; font-weight: 600; }
.em-euraspro .v7-ep-dialog[data-роль="author"] > .v7-ep-head .v7-ep-who { color: #1f3a5a !important; }
.em-euraspro .v7-ep-dialog[data-роль="claude"] > .v7-ep-head .v7-ep-who { color: #d97757 !important; }
.em-euraspro .v7-ep-dialog[data-роль="codex"]  > .v7-ep-head .v7-ep-who { color: #10a37f !important; }
.em-euraspro .v7-ep-dialog[data-роль="system"] > .v7-ep-head .v7-ep-who { color: #a3a099 !important; }

/* ПЛЫВУЩИЕ ОБЛАСТИ (автор 13.09): кадр галереи с диалогом — как главный кадр: картинка скрыта, диалог на всю площадь */
.em-euraspro .v5-wide-track > .v5-wide-slide.v7-ep-slot { display: flex; }
.em-euraspro .v5-wide-track > .v5-wide-slide.v7-ep-slot > img { display: none; }

/* ВНУТРЕННЯЯ ОБЛАСТЬ КАК ОКНО (автор 13.09): в плитке и колонне диалог оформлен как главный кадр ряда/квадрата —
   рамка-волос 1 px 30 %, скругление 8, белый фон, отступ 4 от краёв тела; шапка диалога внутри рамки */
.em-euraspro .v5-product-window.mode-tile .v5-product-body > .v7-ep-dialog,
.em-euraspro .v5-product-window.mode-column .v5-product-body > .v7-ep-dialog {
  margin: var(--v5-win-pad, .25rem) !important; border: var(--v5-hairline, 1px) solid color-mix(in srgb, #1f3a5a 30%, #fff) !important; border-radius: var(--em-radius-sm, 0.5rem) !important;
  background: #fff !important; overflow: hidden !important; height: auto !important; flex: 1 1 auto; min-height: 0 !important; align-self: stretch;
}

/* ПОЛЕ И КНОПКА «ОТПРАВИТЬ» МЕНЬШЕ (автор 13.09: −10 %, затем ещё −10 % = 0.81): высота 2rem → 1.62rem, поля пропорционально; шрифты по стандарту */
.em-euraspro .v7-ep-dialog > .v7-ep-form > input:not([type="file"]) { height: 1.62rem !important; min-height: 1.62rem !important; max-height: 1.62rem !important; padding: 0 0.5rem !important; }
.em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button { height: 1.62rem !important; min-height: 1.62rem !important; max-height: 1.62rem !important; padding: 0 0.6rem !important; }

/* КНОПКА «ОТПРАВИТЬ» — ТОЛЬКО ЗНАЧОК при узком диалоге (автор 14.09: при масштабировании кнопки становятся квадратными, остаётся
   только иконка): диалог — контейнер; уже 17rem (плитка, плывущие кадры) → квадрат высоты формы, текст скрыт; шире — значок + текст */
.em-euraspro .v7-ep-dialog { container-type: inline-size; }
@container (max-width: 17rem) {
  .em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button { width: 1.62rem !important; min-width: 1.62rem !important; padding: 0 !important; justify-content: center !important; }
  .em-euraspro .v7-ep-dialog > .v7-ep-form > .v5-cart-button > span { display: none !important; }
}

/* ИНДИКАТОРЫ УЧАСТНИКОВ (автор 14.09): полоса кружков между лентой и полем ввода; кружок 0.5rem, зазор 0.375rem, цвет участника;
   горит — полный цвет с мягким ореолом того же цвета (матово), не работает — приглушённый (35 % цвета на белом) */
.em-euraspro .v7-ep-dialog > .v7-ep-presence { display: flex; align-items: center; gap: 0.375rem; flex: 0 0 auto; height: 1rem; padding: 0 0.5rem; }
.em-euraspro .v7-ep-dialog > .v7-ep-presence > .v7-ep-dot { display: inline-block; flex: 0 0 auto; aspect-ratio: 1; width: 0.5rem; height: 0.5rem; border-radius: 50%; background: color-mix(in srgb, var(--dot, #a3a099) 35%, #fff); transition: background-color 400ms ease, box-shadow 400ms ease; }
.em-euraspro .v7-ep-dialog > .v7-ep-presence > .v7-ep-dot.is-on { background: var(--dot, #a3a099); box-shadow: 0 0 0 2px color-mix(in srgb, var(--dot, #a3a099) 25%, #fff); }

/* ПОЛОСА ТОЧЕК АКТИВНОСТИ НИЖЕ (автор 16.09: «участки с точками активности сделать по высоте меньше на 25–35 %, увеличить окно контекста»):
   полоса 0.875rem вместо 1rem, зазоры вокруг неё по 0.25rem вместо 0.5rem (зона лента→форма 32 → 22 px, −31 %); зазор шапка→лента прежний. */
.em-euraspro .v5-product-window .v7-ep-dialog { gap: var(--em-space-1, 0.25rem) !important; } /* три класса: перекрывает зазор .v5-chat из atom-windows.css (тот же вес, но позже) */
.em-euraspro .v5-product-window .v7-ep-dialog > .v7-cn-feed { margin-block-start: var(--em-space-1, 0.25rem); }
.em-euraspro .v7-ep-dialog > .v7-ep-presence { height: 0.875rem; }
/* НИЖНИЕ ПЛАШКИ ДИАЛОГА (автор 15.09): строка ввода 48 → 40 px (отступы 0.25rem), полоса точек 0.75rem; точки посередине по высоте,
   первая точка — по оси значка-скрепки (отступ = отступ строки ввода 0.5rem + (плашка 2rem − точка 0.5rem)/2 = 1.25rem). */
.em-euraspro .v5-product-window .v7-ep-dialog > .v7-cn-form { padding-block: var(--em-space-1, 0.25rem); }
.em-euraspro .v5-product-window .v7-ep-dialog > .v7-ep-presence { height: 0.75rem; padding-inline-start: calc(var(--em-space-2, 0.5rem) + (var(--em-space-6, 2rem) - 0.5rem) / 2); }

/* АВАТАРКИ ДОЛЖНОСТЕЙ (автор 15.09): значок в цвете должности, подсказка нашего стиля; в свёрнутых окнах (плитка, колонна) —
   только аватарка, в окнах крупнее — аватарка и наименование */
.em-euraspro .v7-ava { display: inline-grid; place-items: center; inline-size: var(--em-space-5, 1.25rem); block-size: var(--em-space-5, 1.25rem); border-radius: 50%; color: var(--ava, #6e6b64); background: color-mix(in srgb, var(--ava, #6e6b64) 18%, #fff); vertical-align: middle; margin-inline-end: var(--em-space-1, 0.25rem); flex: 0 0 auto; }
.em-euraspro .v7-ava > svg { inline-size: 0.75rem; block-size: 0.75rem; stroke-width: 1.75; }
.em-euraspro .v7-ep-who { display: inline-flex; align-items: center; gap: var(--em-space-1, 0.25rem); }
.em-euraspro .v5-product-window.mode-tile .v7-cn-who, .em-euraspro .v5-product-window.mode-column .v7-cn-who,
.em-euraspro .v5-product-window.mode-tile .v7-ep-who .v7-ava-name, .em-euraspro .v5-product-window.mode-column .v7-ep-who .v7-ava-name { display: none; }

/* ТОЧКИ ВСЕХ УЧАСТНИКОВ НА НИЖНЕЙ ПЛАШКЕ РАЗДЕЛА (автор 15.09): та же конструкция, что полоса точек диалога */
.em-euraspro .v5-full-viewfoot > .v7-foot-presence { display: flex; flex: 1 1 auto; flex-wrap: nowrap; align-items: center; gap: 0.25rem; min-inline-size: 0; overflow: hidden; } /* полоса занимает ширину плашки и режется по её краю — не растягивает раздел (автор 15.09) */ /* одна строка — высота плашки как у строки ввода */
.em-euraspro .v7-foot-presence > .v7-ep-dot { display: inline-block; flex: 0 0 auto; aspect-ratio: 1; inline-size: 0.5rem; block-size: 0.5rem; border-radius: 50%; background: color-mix(in srgb, var(--dot, #a3a099) 35%, #fff); transition: background-color 400ms ease, box-shadow 400ms ease; }
.em-euraspro .v7-foot-presence > .v7-ep-dot.is-on { background: var(--dot, #a3a099); box-shadow: 0 0 0 2px color-mix(in srgb, var(--dot, #a3a099) 25%, #fff); }

/* ГРУППЫ СТАТУСОВ на нижней плашке (автор 15.09): разделитель «›» как в шапках книг, значок группы и её имя */
.em-euraspro .v7-foot-presence > .v7-foot-sep { margin-inline: var(--em-space-1, 0.25rem); color: var(--v5-muted, #a3a099); }
.em-euraspro .v7-foot-presence > .v7-foot-group-icon { display: inline-grid; place-items: center; inline-size: var(--em-space-5, 1.25rem); block-size: var(--em-space-5, 1.25rem); color: var(--v5-secondary, #6e6b64); }
.em-euraspro .v7-foot-presence > .v7-foot-group-icon > svg { inline-size: 0.875rem; block-size: 0.875rem; }
.em-euraspro .v7-foot-presence > .v7-foot-group-name { font-size: var(--em-font-xs, 0.75rem); color: var(--v5-secondary, #6e6b64); margin-inline-end: var(--em-space-1, 0.25rem); white-space: nowrap; }

.em-euraspro .v7-ep-name { display: inline-flex; align-items: center; gap: var(--em-space-1, 0.25rem); }
.em-euraspro .v5-product-window.mode-tile .v7-ep-name .v7-ava-name, .em-euraspro .v5-product-window.mode-column .v7-ep-name .v7-ava-name { display: none; } /* в маленьком окне и столбике — только аватарка (автор 15.09) */

/* ИМЯ ПИШУЩЕГО — ТОЛЬКО АВАТАРКА В УЗКИХ БЛОКАХ (автор 15.09: «в шапках не убрались наименования того, кто работает, в маленьких окнах
   и в столбике»): блок диалога уже 40rem (главный кадр ленты и столбики очереди) — имя в шапке и в подписях сообщений скрыто,
   остаётся аватарка с подсказкой; в блоках шире — аватарка и имя. Контейнер — .v7-ep-dialog (container-type: inline-size). */
@container (max-width: 40rem) {
  .em-euraspro .v7-ep-who .v7-ava-name, .em-euraspro .v7-cn-who { display: none; }
}

/* ГОСТЬ ПО ПРИГЛАШЕНИЮ (З-001): карточки эксперта — фиолетовая скобка, поле ввода чужого блока — отключено */
.em-euraspro .v7-ep-dialog > .v7-ep-feed > .v5-chat-msg.role-expert { border-color: #7c5cbf !important; border-top-color: color-mix(in srgb, #7c5cbf 55%, #fff) !important; }
.em-euraspro .v7-cn-form input:disabled { color: var(--v5-muted, #a3a099) !important; background: var(--v5-border-light, #e4e0d4) !important; } /* матово, без альфы (правило 13.09) */
