/* 全局助理：内容区最右一栏（主视图与任务详情让出宽度）；窄窗口时从右侧盖在内容上，行动端整屏。
 * 都在标题栏下方、Rail 右侧，不遮挡窗口外壳。规则见 docs/助理入口与上下文规范.md。 */
.eva-tb-assistant { flex-shrink: 0; }

/* 内容区：任务详情宿主（路由出口）与助理栏并排；窄窗口的助理抽屉以它为定位参照。 */
.eva-workspace { position: relative; display: flex; flex: 1; min-width: 0; min-height: 0; }
.eva-workspace > .eva-task-outlet { flex: 1; min-width: 0; }
.eva-assistant-dock { flex: none; display: flex; min-height: 0; }
.eva-assistant-dock:empty { display: none; }

.eva-spaces-assistant {
  display: flex; flex-direction: column; min-height: 0; box-sizing: border-box;
  background: var(--eva-surface-primary, #fff); color: var(--gds-color-text-primary);
}
.eva-spaces-assistant.is-dock {
  position: relative; height: 100%;
  border-left: 1px solid var(--eva-divider-subtle, var(--gds-color-border-subtle));
}
/* 窄窗口（<1100）：贴右缘、整高的抽屉，高于任务详情（z-index 80），低于公共弹窗。 */
.eva-spaces-assistant.is-drawer {
  position: absolute; z-index: 85; top: 0; right: 0; bottom: 0; overflow: hidden;
  border-left: 1px solid var(--gds-color-border-subtle);
  box-shadow: -12px 0 32px -16px rgba(15, 18, 24, 0.2);
}
.eva-spaces-assistant.is-dragging { user-select: none; }
.eva-spaces-assistant__resize-dock {
  position: absolute; top: 0; bottom: 0; left: -3px; width: 6px; z-index: 1; cursor: col-resize;
}
.eva-spaces-assistant__resize-dock:hover, .eva-spaces-assistant.is-dragging .eva-spaces-assistant__resize-dock {
  background: linear-gradient(to right, transparent 2px, var(--eva-action-primary) 2px, var(--eva-action-primary) 4px, transparent 4px);
}

.eva-spaces-assistant__head { display: flex; align-items: center; gap: var(--gds-space-1); flex: none; height: 52px; padding: 0 var(--gds-space-2) 0 var(--gds-space-3); border-bottom: 1px solid var(--gds-color-border-subtle); }
.eva-spaces-assistant__picker { display: inline-flex; align-items: center; gap: var(--gds-space-2); min-width: 0; margin-right: auto; padding: 4px 6px; border: 0; border-radius: 8px; background: transparent; color: var(--gds-color-text-primary); font: inherit; cursor: pointer; }
.eva-spaces-assistant__picker:hover { background: var(--eva-conversation-row-hover); }
.eva-spaces-assistant__picker strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14px; font-weight: var(--gds-font-weight-medium); }
.eva-spaces-assistant__choice { display: inline-flex; align-items: center; gap: var(--gds-space-2); }
.eva-spaces-assistant__muted { color: var(--gds-color-text-muted); font-size: 12px; }
.eva-spaces-assistant__stream { flex: 1; min-height: 0; overflow-y: auto; padding: var(--gds-space-3); display: flex; flex-direction: column; gap: var(--gds-space-3); }
.eva-spaces-assistant__msg { display: flex; align-items: flex-start; gap: var(--gds-space-2); }
.eva-spaces-assistant__msg.is-mine { justify-content: flex-end; }
.eva-spaces-assistant__bubble { max-width: 300px; padding: var(--gds-space-2) var(--gds-space-3); border-radius: 12px; background: var(--eva-conversation-row-hover); color: var(--gds-color-text-primary); font-size: 14px; line-height: 22px; }
.eva-spaces-assistant__answer { display: flex; flex-direction: column; gap: 4px; min-width: 0; max-width: 100%; }
.eva-spaces-assistant__msg.is-mine .eva-spaces-assistant__answer { align-items: flex-end; }
/* 「已查看」：回答上方一行，次要文字色；展开列出这一轮读取的对象，点击回到原处。 */
.eva-spaces-assistant__viewed { display: flex; flex-direction: column; gap: 2px; }
.eva-spaces-assistant__viewed-toggle { display: inline-flex; align-items: center; gap: 6px; align-self: flex-start; max-width: 100%; padding: 2px 4px; border: 0; border-radius: 6px; background: transparent; color: var(--gds-color-text-secondary-accessible, #6b7280); font: inherit; font-size: 12px; line-height: 18px; cursor: pointer; text-align: left; }
.eva-spaces-assistant__viewed-toggle span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eva-spaces-assistant__viewed-toggle:hover { background: var(--gds-color-overlay-hover, rgba(0,0,0,.06)); color: var(--gds-color-text-primary); }
.eva-spaces-assistant__viewed-toggle .is-open { transform: rotate(180deg); }
.eva-spaces-assistant__viewed-list { margin: 0; padding: 0; list-style: none; }
.eva-spaces-assistant__viewed-list button { display: flex; align-items: center; gap: 8px; width: 100%; min-width: 0; height: 28px; padding: 0 6px; border: 0; border-radius: 6px; background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 12px; text-align: left; cursor: pointer; }
.eva-spaces-assistant__viewed-list button:hover { background: var(--eva-conversation-row-hover); }
.eva-spaces-assistant__msg.is-mine .eva-spaces-assistant__bubble { background: var(--eva-conversation-row-selected); }
.eva-spaces-assistant__send { display: flex; justify-content: flex-start; padding-left: 32px; }
/* 输入区：「我的消息」的共用输入框（.eva-im-composer），这里只定位添加面板。 */
.eva-spaces-assistant__composer { position: relative; flex: none; }
.eva-spaces-assistant__composer .eva-im-composer .wk-messageinput-box { padding: 0 12px 12px; }
/* 带入内容：输入卡片顶部一行，和回复草稿同位同字级（Notion / Langdock 的 context pill）。 */
.eva-spaces-assistant__context { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-width: 0; margin: 0 0 8px; }
.eva-spaces-assistant__context .eva-spaces-assistant__ctx { flex: 1 1 100%; }
.eva-spaces-assistant__offline { margin: -4px 12px 10px; color: var(--gds-color-text-muted); font-size: 12px; line-height: 18px; }
/* 上下文标签：小号 chip，浅灰底；名称截断，来源用次要文字色。 */
.eva-spaces-assistant__chip { display: inline-flex; align-items: center; gap: 4px; max-width: 100%; min-width: 0; height: 24px; box-sizing: border-box; padding: 0 2px 0 6px; border: 1px solid var(--eva-border-subtle, var(--gds-color-border-subtle)); border-radius: var(--eva-radius-small, 6px); background: var(--eva-surface-subtle, #f7f7f8); color: var(--gds-color-text-primary); font-size: 12px; line-height: 18px; }
.eva-assistant-command__context .eva-spaces-assistant__chip { height: 28px; padding: 0 4px 0 8px; font-size: 13px; }
.eva-spaces-assistant__chip-icon { display: inline-flex; flex: none; color: var(--gds-color-text-secondary-accessible, #6b7280); }
.eva-spaces-assistant__chip-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eva-spaces-assistant__chip-from { flex: none; max-width: 40%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--gds-color-text-muted); }
.eva-spaces-assistant__chip button { display: inline-flex; flex: none; padding: 2px; border: 0; border-radius: 4px; background: transparent; color: var(--gds-color-text-secondary); cursor: pointer; }
.eva-spaces-assistant__chip button:hover { background: var(--gds-color-overlay-hover, rgba(0,0,0,.06)); }
.eva-spaces-assistant__input { width: 100%; box-sizing: border-box; resize: none; padding: var(--gds-space-2) var(--gds-space-3); border: 1px solid var(--gds-color-border-subtle); border-radius: 10px; background: var(--eva-surface-primary, #fff); color: var(--gds-color-text-primary); font: inherit; font-size: 14px; line-height: 22px; }
.eva-spaces-assistant__input:focus { outline: none; border-color: var(--eva-action-primary); }

/* 多项收纳：一行「N 项」，展开逐项删除。 */
.eva-spaces-assistant__ctx { border: 1px solid var(--eva-border-subtle, var(--gds-color-border-faint)); border-radius: var(--eva-radius-small, 6px); overflow: hidden; }
.eva-spaces-assistant__ctx-head { display: flex; align-items: center; gap: var(--gds-space-2); height: 28px; padding: 0 4px 0 2px; background: var(--eva-surface-subtle, #f7f7f8); }
.eva-spaces-assistant__ctx-toggle { display: inline-flex; align-items: center; gap: 6px; flex: 1; min-width: 0; height: 24px; padding: 0 6px; border: 0; border-radius: 4px; background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 12px; font-weight: var(--gds-font-weight-medium); cursor: pointer; }
.eva-spaces-assistant__ctx-toggle:hover { background: var(--gds-color-overlay-hover, rgba(0,0,0,.06)); }
.eva-spaces-assistant__ctx-toggle .is-open { transform: rotate(180deg); }
.eva-spaces-assistant__ctx-clear { flex: none; padding: 2px 6px; border: 0; border-radius: 6px; background: transparent; color: var(--gds-color-text-muted); font: inherit; font-size: 12px; cursor: pointer; }
.eva-spaces-assistant__ctx-clear:hover { color: var(--gds-color-text-primary); background: var(--gds-color-overlay-hover, rgba(0,0,0,.06)); }
.eva-spaces-assistant__ctx-list { margin: 0; padding: 0; list-style: none; max-height: 180px; overflow-y: auto; }
.eva-spaces-assistant__ctx-list li { display: flex; align-items: center; gap: 6px; min-width: 0; height: 28px; padding: 0 4px 0 8px; border-top: 1px solid var(--eva-border-subtle, var(--gds-color-border-faint)); font-size: 12px; }
.eva-spaces-assistant__ctx-list li button { display: inline-flex; flex: none; margin-left: auto; padding: 3px; border: 0; border-radius: 4px; background: transparent; color: var(--gds-color-text-secondary); cursor: pointer; }

/* @ 添加面板：贴在输入卡片上方，不离开助理。 */
.eva-spaces-assistant__picker-pop { position: absolute; left: 12px; right: 12px; bottom: calc(100% - 4px); z-index: 2; display: flex; flex-direction: column; max-height: 320px; border: 1px solid var(--gds-color-border-subtle); border-radius: var(--gds-radius-chip, 12px); background: var(--eva-surface-primary, #fff); box-shadow: 0 12px 32px rgba(15, 18, 24, 0.14); overflow: hidden; }
.eva-spaces-assistant__picker-search { flex: none; height: 38px; padding: 0 var(--gds-space-3); border: 0; border-bottom: 1px solid var(--gds-color-border-faint, #ebebeb); background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 14px; outline: none; }
.eva-spaces-assistant__picker-list { overflow-y: auto; padding: 4px; }
.eva-spaces-assistant__picker-group { padding: 6px 8px 2px; color: var(--gds-color-text-muted); font-size: 12px; }
.eva-spaces-assistant__picker-row { display: flex; align-items: center; gap: 8px; width: 100%; min-width: 0; height: 32px; padding: 0 8px; border: 0; border-radius: 8px; background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 13px; text-align: left; cursor: pointer; }
.eva-spaces-assistant__picker-row.is-active { background: var(--eva-conversation-row-hover); }
.eva-spaces-assistant__picker-row .eva-spaces-assistant__chip-from { margin-left: auto; }
.eva-spaces-assistant__picker-empty { margin: 0; padding: var(--gds-space-3); color: var(--gds-color-text-muted); font-size: 13px; }
.eva-spaces-assistant__note { margin: 0 0 var(--gds-space-2); color: var(--gds-color-text-secondary); font-size: 13px; }
.eva-spaces-assistant__preview { min-height: 200px; }


/* ⌘K 指令列：屏幕上方居中，遮罩只覆盖标题栏下方的内容区以外不需要；使用公共弹窗以下的层级。 */
.eva-assistant-command-layer { position: fixed; inset: 0; z-index: 95; display: flex; justify-content: center; align-items: flex-start; padding-top: 14vh; background: var(--gds-color-overlay-dismiss, rgba(0,0,0,.2)); }
.eva-assistant-command { display: flex; flex-direction: column; width: min(640px, calc(100vw - 32px)); max-height: 70vh; overflow: hidden; border: 1px solid var(--gds-color-border-subtle); border-radius: var(--gds-radius-panel, 16px); background: var(--eva-surface-primary, #fff); color: var(--gds-color-text-primary); box-shadow: 0 24px 64px rgba(15, 18, 24, 0.22); }
.eva-assistant-command__bar { display: flex; align-items: center; gap: var(--gds-space-3); flex: none; height: 52px; padding: 0 var(--gds-space-4); border-bottom: 1px solid var(--gds-color-border-faint, #ebebeb); color: var(--gds-color-text-muted); }
.eva-assistant-command__bar input { flex: 1; min-width: 0; height: 100%; border: 0; background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 15px; outline: none; }
.eva-assistant-command__bar kbd { flex: none; padding: 1px 6px; border: 1px solid var(--gds-color-border-subtle); border-radius: 4px; font: inherit; font-size: 11px; color: var(--gds-color-text-muted); }
.eva-assistant-command__context { display: flex; flex: none; padding: var(--gds-space-2) var(--gds-space-4) 0; }
.eva-assistant-command__list { overflow-y: auto; padding: 6px; }
.eva-assistant-command__row { display: flex; align-items: center; gap: 10px; width: 100%; min-width: 0; height: 38px; padding: 0 10px; border: 0; border-radius: 8px; background: transparent; color: var(--gds-color-text-primary); font: inherit; font-size: 14px; text-align: left; cursor: pointer; }
.eva-assistant-command__row.is-active { background: var(--eva-conversation-row-hover); }
.eva-assistant-command__row .eva-spaces-assistant__chip-from { margin-left: auto; }
.eva-assistant-command__hint { margin: 0; padding: var(--gds-space-3) var(--gds-space-4); color: var(--gds-color-text-muted); font-size: 13px; }

.eva-spaces-assistant__body { position: relative; display: flex; flex: 1; flex-direction: column; min-height: 0; }

/* 行动端：一次一屏，助理是左滑进入的整屏。 */
@media (max-width: 767px) {
  .eva-spaces-assistant.is-drawer { left: 0; width: 100% !important; border: 0; box-shadow: none; }
  .eva-spaces-assistant.is-drawer .eva-spaces-assistant__resize-dock { display: none; }
}
