/* СОВЕТ НА САЙТЕ — оформление токенами версии 7, единый стандарт значков и кеглей. */

.v7-cn { display: grid; grid-template-rows: auto 1fr auto; gap: var(--em-space-2, 0.5rem);
  padding: var(--em-space-2, 0.5rem) var(--em-space-3, 0.75rem); min-block-size: 70vh; }
.v7-cn-bar { display: flex; align-items: center; gap: var(--em-space-2, 0.5rem); min-block-size: 2.5rem; }
.v7-cn-bar b { font-size: 0.875rem; font-weight: 600; color: var(--v5-text, #244154); }
.v7-cn-roster { font-size: 0.78125rem; color: var(--v5-secondary, #6e6b64); }

.v7-cn-feed { display: flex; flex-direction: column; gap: var(--em-space-2, 0.5rem);
  overflow-y: auto; padding-inline-end: 0.25rem; }

.v7-cn-msg { max-inline-size: 72%; padding: 0.5rem 0.75rem;
  border: 1px solid var(--v5-border-light, #e4e0d4); border-radius: var(--em-radius-lg, 0.75rem);
  background: var(--v5-card, #fff); }
.v7-cn-msg.is-mine { align-self: flex-end;
  background: color-mix(in srgb, var(--em-cta, #c3d3e8) 42%, #fff); }
.v7-cn-msg header { display: flex; align-items: baseline; gap: 0.5rem; margin-block-end: 2px; }
.v7-cn-msg b { font-size: 0.75rem; font-weight: 600; }
.v7-cn-msg time { font-size: 0.6875rem; color: var(--v5-muted, #a3a099); }
.v7-cn-msg p { margin: 0; font-size: 0.78125rem; line-height: 1.45; color: var(--v5-text, #244154);
  white-space: pre-wrap; overflow-wrap: anywhere; }

.v7-cn-form { display: flex; gap: var(--em-space-2, 0.5rem); align-items: center; }
.v7-cn-form input { flex: 1; min-block-size: 2rem; padding: 0 0.625rem;
  border: 1px solid var(--v5-border, #d8d3c6); border-radius: var(--em-radius-sm, 0.5rem);
  background: var(--v5-card, #fff); font-size: 0.78125rem; color: var(--v5-text, #244154); outline: 0; }
.v7-cn-form input:focus { border-color: color-mix(in srgb, var(--v5-text, #244154) 35%, transparent); }
.v7-cn-form button { min-block-size: 2rem; padding: 0 0.875rem; border: 0;
  border-radius: var(--em-radius-sm, 0.5rem); cursor: pointer;
  background: var(--em-cta, #c3d3e8); color: var(--em-cta-text, #1f3a5a);
  font-size: 0.78125rem; font-weight: 600; }
.v7-cn-form button:hover { background: var(--em-cta-hover, #b0c5e0); }
.v7-cn-status { font-style: normal; font-size: 0.71875rem; color: var(--em-like, #d97757); }

/* ЦЕНТР СООБЩЕНИЙ в окне ассистента: столбец каналов слева, лента справа */
.v7-mc { display: grid; grid-template-columns: 12.5rem 1fr; gap: var(--em-space-2, 0.5rem);
  padding: var(--em-space-2, 0.5rem) var(--em-space-3, 0.75rem); min-block-size: 70vh; }
.v7-mc-list { display: flex; flex-direction: column; gap: 0.25rem;
  border-inline-end: 1px solid var(--v5-border-light, #e4e0d4); padding-inline-end: var(--em-space-2, 0.5rem); }
.v7-mc-list button { text-align: start; min-block-size: 2rem; padding: 0 0.625rem; border: 0;
  border-radius: var(--em-radius-sm, 0.5rem); background: none; cursor: pointer;
  font-size: 0.78125rem; font-weight: 400; color: var(--v5-text, #244154); }
.v7-mc-list button:hover { background: color-mix(in srgb, var(--v5-text, #244154) 5%, transparent); }
.v7-mc-list button.is-active { font-weight: 600;
  background: color-mix(in srgb, var(--section-accent, #d97757) 18%, transparent); }
.v7-mc-body { display: grid; min-inline-size: 0; }
.v7-mc-body .v7-cn { min-block-size: 100%; padding: 0; }

/* Совет внутри окна помощника: лента сжимается, поле ввода всегда видно */
.v5-ai-compact-body.v7-has-council { display: grid; min-block-size: 0; overflow: hidden; }
.v5-ai-compact-body .v7-cn, .v5-ws-main .v7-cn {
  min-block-size: 0; block-size: 100%; grid-template-rows: auto minmax(0, 1fr) auto; padding: var(--em-space-2, 0.5rem); }
.v5-ai-compact-body .v7-cn-feed, .v5-ws-main .v7-cn-feed { min-block-size: 0; }
.v5-ai-compact-body .v7-cn-msg { max-inline-size: 92%; }

/* дизайн совета = дизайн чата помощника: свои пузыри отменены, работают классы v5-chat-* */
.v7-cn-msg header { display: none; }
.v5-chat .v7-cn-bar { min-block-size: auto; }

/* ── ОКНО ПОМОЩНИКА ШИРЕ И ТЯНЕТСЯ (просьба автора 2026-08-25) ────────────────────────────────
   Плавающее окно: на половину шире прежнего (22 → 33 модуля) и растягивается за угол,
   как окно браузера; пределы держат его в рамках экрана. Боковые и нижний доки не трогаем. */
.v5-assistant.is-compact:not(.dock-right):not(.dock-left):not(.dock-bottom) {
  inline-size: calc(var(--em-space-6, 2rem) * 16.5);
  block-size: calc(var(--em-space-6, 2rem) * 16);
  min-inline-size: calc(var(--em-space-6, 2rem) * 11);
  min-block-size: calc(var(--em-space-6, 2rem) * 10);
  max-inline-size: calc(100vw - var(--v5-sidebar-collapsed, 4rem) - var(--v5-gap, 0.625rem) * 2);
  max-block-size: calc(100vh - var(--v5-header-height, 3.5rem) - var(--v5-gap, 0.625rem) * 3);
  resize: both;                 /* уголок растяжения, как у браузера */
  overflow: auto;
}

/* боковые доки помощника: тоже в полтора раза шире и тянутся по горизонтали (правка автора) */
.v5-assistant.is-compact.dock-right,
.v5-assistant.is-compact.dock-left {
  inline-size: calc(var(--em-space-6, 2rem) * 16.5);
  min-inline-size: calc(var(--em-space-6, 2rem) * 11);
  max-inline-size: calc(100vw - var(--v5-sidebar-collapsed, 4rem) - var(--v5-gap, 0.625rem) * 3);
  resize: horizontal;           /* высоту боковой док держит сам — тянется только ширина */
  overflow: auto;
}

/* текст чата свободно выделяется и копируется (жалоба автора: «не могу копировать») */
.v7-cn-msg, .v7-cn-msg p, .v7-cn-feed { user-select: text; -webkit-user-select: text; cursor: text; }

/* скрепка совета: строго по центру плашки (скрин автора 28.08 08:32 — сдвиг 5px из-за паддинга) */
.v7-cn-clip { padding: 0 !important; display: grid !important; place-items: center; }
.v7-cn-clip svg { margin: 0; }

/* замок окна чата (автор 29.08): в правом верхнем углу, поверх содержимого */
.v7-cn-lock { position: absolute; top: 0.375rem; right: 0.375rem; z-index: 5;
  inline-size: 1.75rem; block-size: 1.75rem; border: 1px solid var(--v5-border-light, #e4e0d4);
  border-radius: 0.5rem; background: var(--v5-card, #fff); cursor: pointer; font-size: 0.8125rem;
  display: grid; place-items: center; padding: 0; }
.v7-cn-lock:hover { border-color: var(--section-accent, #d97757); }
.v5-assistant.dock-float { position: fixed; }
.v7-cn-lock svg { inline-size: 0.875rem; block-size: 0.875rem; }

/* стрелки-крошки между группами иконок титлбара (правило автора 29.08) */
.v7-cn-tb-arrow { color: var(--v5-muted, #a3a099); font-size: 0.8125rem; user-select: none; margin-inline: 0.125rem; align-self: center; }
.v5-window-purpose > svg:first-child { margin-inline-end: 0.375rem; }

/* стилизованная подсказка (правило автора 31.08): карточка r8, обводка-волос, кегль 12.5 */
.em-tip { position: fixed; z-index: 120; max-inline-size: 20rem; padding: 0.375rem 0.625rem;
  background: var(--v5-card, #fff); color: var(--v5-text, #244154);
  border: 1px solid var(--v5-border-light, #e4e0d4); border-radius: 0.5rem;
  box-shadow: 0 0.375rem 1rem rgba(36, 65, 84, 0.10); font-size: 0.78125rem; line-height: 1.35;
  pointer-events: none; white-space: pre-line; }

/* уголок размера: без плашки, тонкий гриппер в самом углу (автор 31.08) */
.v7-cn-resize { background: none !important; border: 0 !important; inline-size: 1.125rem !important; block-size: 1.125rem !important; box-shadow: none; color: var(--v5-muted, #a3a099); }
.v7-cn-resize:hover { color: var(--section-accent, #d97757); }
.v7-cn-resize svg { inline-size: 1rem; block-size: 1rem; }

/* ревизия hover (автор 31.08): замок и крестик ведут себя как все иконки сборки —
   мягкая плашка при наведении, без обводки-волоса */
.v7-cn-lock, .v7-cn-move { border: 0 !important; background: transparent; box-shadow: none; }
.v7-cn-lock:hover, .v7-cn-move:hover { border: 0 !important; background: color-mix(in srgb, var(--v5-text, #244154) 6%, #fff); color: var(--v5-text, #244154); }
.v7-cn-resize, .v7-cn-resize:hover { box-shadow: none; }
