@charset "UTF-8";
/**
 * CB Chat UI - 根变量定义
 *
 * 全局通用变量，不区分主题
 * 挂载到 :root，全局可用
 */
:root {
  /* ========== 字体系统 ========== */
  --cb-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
  --cb-font-family-mono: 'Menlo', 'Monaco', 'Courier New', monospace;
  /* ========== 尺寸系统 ========== */
  --cb-spacing-xs: 4px;
  --cb-spacing-sm: 8px;
  --cb-spacing-md: 12px;
  --cb-spacing-lg: 16px;
  --cb-spacing-xl: 20px;
  --cb-spacing-xxl: 24px;
  /* ========== 圆角档位 ==========
     与 wb 设计稿 200/250/300 等档位对齐：sm=4 / md=6 / lg=8 / xl=16 / 2xl=24 */
  --cb-border-radius-sm: 4px;
  --cb-border-radius-md: 6px;
  --cb-border-radius-lg: 8px;
  --cb-border-radius-xl: 16px;
  --cb-border-radius-2xl: 24px;
  /* ========== 动画系统 ========== */
  --cb-transition-fast: 0.15s ease;
  --cb-transition-base: 0.2s ease;
  --cb-transition-slow: 0.3s ease;
  /* ========== Z-index 层级 ========== */
  --cb-z-index-dropdown: 100;
  --cb-z-index-modal: 1000;
  /* 确认对话框需要高于所有其他业务 modal（如 McpModal=10000、PreviewModal=10005/10006、
     conflict-modal=10020、cloud-file-panel=10010、top-progress-banner=100000）。
     业务侧不应再用更高的 z-index 盖住确认弹窗。 */
  --cb-z-index-modal-confirm: 100001;
  --cb-z-index-tooltip: 1100;
  /* ========== VSCode 主题变量映射 - 默认使用 Light 主题 ========== */
  /* 这样在没有 .light/.dark 类名时,默认显示为 Light 主题 */
  --cb-vscode-editor-background: var(--vscode-editor-background, #ffffff);
  --cb-vscode-sideBar-background: var(--vscode-sideBar-background, #f3f3f3);
  --cb-vscode-input-background: var(--vscode-input-background, #ffffff);
  --cb-vscode-dropdown-background: var(--vscode-dropdown-background, #ffffff);
  --cb-vscode-foreground: var(--vscode-foreground, #333333);
  --cb-vscode-editor-foreground: var(--vscode-editor-foreground, #4c4f69);
  --cb-vscode-titleBar-activeBackground: var(--vscode-titleBar-activeBackground, #dddddd);
  --cb-vscode-titleBar-activeForeground: var(--vscode-titleBar-activeForeground, #333333);
  --cb-vscode-titleBar-inactiveBackground: var(--vscode-titleBar-inactiveBackground, #dddddd);
  --cb-vscode-titleBar-inactiveForeground: var(--vscode-titleBar-inactiveForeground, #666666);
  --cb-titlebar-control-hover-background: rgba(0, 0, 0, 0.06);
  --cb-vscode-descriptionForeground: var(--vscode-descriptionForeground, #717171);
  --cb-vscode-widget-border: var(--vscode-widget-border, #e1e1e1);
  --cb-vscode-panel-border: var(--vscode-panel-border, #e1e1e1);
  --cb-vscode-list-hoverBackground: var(--vscode-list-hoverBackground, #f0f0f0);
  --cb-vscode-toolbar-hoverBackground: var(--vscode-toolbar-hoverBackground, #f0f0f0);
  --cb-vscode-button-background: var(--vscode-button-background, #007acc);
  --cb-vscode-button-foreground: var(--vscode-button-foreground, #ffffff);
  --cb-vscode-button-hoverBackground: var(--vscode-button-hoverBackground, #0062a3);
  --cb-vscode-scrollbarSlider-background: var(--vscode-scrollbarSlider-background, #c1c1c1);
  --cb-vscode-scrollbarSlider-hoverBackground: var(--vscode-scrollbarSlider-hoverBackground, #a8a8a8);
  --cb-vscode-textLink-foreground: var(--vscode-textLink-foreground, #006ab1);
  /* ========== 基础颜色系统 - Light 主题默认值 ========== */
  --cb-panel-bg-primary: var(--vscode-editor-background, #ffffff);
  --cb-text-primary: #333333;
  --cb-text-secondary: #666666;
  /* 灰阶禁用文本（credit-estimate / installed-plugins 等组件使用），
     light 与 wb 设计稿 --wb-color-text-disabled 对齐 */
  --cb-text-disabled: rgba(0, 0, 0, 0.30);
  --cb-text-link: #006ab1;
  --cb-stroke-secondary: #d8dee4;
  /* Markdown <hr> 边框色，与 wb 设计稿 --wb-color-border-secondary 对齐 */
  --cb-markdown-hr-border-color: #EBEBEB;
  --cb-bg-primary: rgba(0, 0, 0, 0.05);
  --cb-bg-secondary: #f5f5f5;
  --cb-team-member-card-background: #f5f5f5;
  --cb-team-member-icon-background: #F5F5F5;
  --cb-button-dark-background: #1a1a1a;
  --cb-button-dark-foreground: #ffffff;
  --cb-button-dark-hover-background: #333333;
  /* ========== 设计稿语义补齐（与 wb 设计稿一致；WorkBuddy 通过 cb-bridge.scss 桥接到 --wb-*） ==========
     这些 token 的设计意义来自 wb 设计稿，但 cb-chat-ui 必须自带 light/dark 默认值，
     避免 IDE 纯 cb 场景未注入 wb token 时回退到使用点的硬编码 fallback（可能在 dark 主题下导致黑底黑字）。 */
  --cb-text-error-active: #B42C3F;
  --cb-text-link-hover: #0E58A0;
  --cb-text-solid: #000000;
  --cb-bg-primary-hover: #EBEBEB;
  --cb-bg-primary-active: #F2F2F2;
  --cb-border-secondary: #EBEBEB;
  --cb-shadow-popover: 0 4px 12px -4px rgba(0, 0, 0, 0.04), 0 3px 6px -8px rgba(0, 0, 0, 0.04);
  --cb-border-drag-indicator: #1470B4;
  --cb-tooltip-bg: rgba(0, 0, 0, 0.70);
}
/**
 * CB Chat UI - Dark 主题变量
 *
 * 适用于：
 * 1. :root (默认主题)
 * 2. .dark / .cb-dark (全局类名)
 * 3. .cbChat.dark / .cbChat (组件类名)
 * 4. .cb-tooltip (独立组件)
 */
/* Dark 主题选择器 */
:root.dark,
:root.cb-dark,
:root .dark,
:root .cb-dark {
  /* ========== VSCode 主题变量映射 ========== */
  --cb-vscode-editor-background: var(--vscode-editor-background, #1e1e1e);
  --cb-vscode-sideBar-background: var(--vscode-sideBar-background, #252526);
  --cb-vscode-input-background: var(--vscode-input-background, #3c3c3c);
  --cb-vscode-dropdown-background: var(--vscode-dropdown-background, #3c3c3c);
  --cb-vscode-foreground: var(--vscode-foreground, #cccccc);
  --cb-vscode-editor-foreground: var(--vscode-editor-foreground, #cccccc);
  --cb-vscode-titleBar-activeBackground: var(--vscode-titleBar-activeBackground, #3c3c3c);
  --cb-vscode-titleBar-activeForeground: var(--vscode-titleBar-activeForeground, #cccccc);
  --cb-vscode-titleBar-inactiveBackground: var(--vscode-titleBar-inactiveBackground, #3c3c3c);
  --cb-vscode-titleBar-inactiveForeground: var(--vscode-titleBar-inactiveForeground, #999999);
  --cb-titlebar-control-hover-background: rgba(255, 255, 255, 0.08);
  --cb-vscode-descriptionForeground: var(--vscode-descriptionForeground, #9d9d9d);
  --cb-vscode-widget-border: var(--vscode-widget-border, #414141);
  --cb-vscode-panel-border: var(--vscode-panel-border, #3c3c3c);
  --cb-vscode-list-hoverBackground: var(--vscode-list-hoverBackground, #2a2d2e);
  --cb-vscode-toolbar-hoverBackground: var(--vscode-toolbar-hoverBackground, #353535);
  --cb-vscode-button-background: var(--vscode-button-background, #0e639c);
  --cb-vscode-button-foreground: var(--vscode-button-foreground, #ffffff);
  --cb-vscode-button-hoverBackground: var(--vscode-button-hoverBackground, #1177bb);
  --cb-vscode-button-secondaryBackground: var(--vscode-button-secondaryBackground, #3a3d41);
  --cb-vscode-button-secondaryForeground: var(--vscode-button-secondaryForeground, #ffffff);
  --cb-vscode-button-secondaryHoverBackground: var(--vscode-button-secondaryHoverBackground, #45494e);
  --cb-vscode-scrollbarSlider-background: var(--vscode-scrollbarSlider-background, #797979);
  --cb-vscode-scrollbarSlider-hoverBackground: var(--vscode-scrollbarSlider-hoverBackground, #646464);
  --cb-vscode-textLink-foreground: var(--vscode-textLink-foreground, #3794ff);
  --cb-vscode-list-activeSelectionForeground: var(--vscode-list-activeSelectionForeground, #ffffff);
  --cb-vscode-list-inactiveForeground: var(--vscode-foreground, #c5c5c5);
  --cb-vscode-focusBorder: var(--vscode-focusBorder, #007fd4);
  --cb-vscode-list-inactiveSelectionBackground: var(--vscode-list-inactiveSelectionBackground);
  --cb-vscode-widget-shadow: var(--vscode-widget-shadow, rgba(0, 0, 0, 0.36));
  --cb-vscode-menu-foreground: var(--vscode-menu-foreground, #cccccc);
  --cb-vscode-menu-separatorBackground: var(--vscode-menu-separatorBackground, #454545);
  --cb-vscode-menu-border: var(--vscode-menu-border, #454545);
  --cb-vscode-quickInputList-focusBackground: var(--vscode-quickInputList-focusBackground, #04395e);
  /* ========== 文件树和列表辅助变量 ========== */
  --cb-icon-foreground: var(--cb-vscode-foreground, #cccccc);
  --cb-list-activeSelectionBackground: var(--cb-vscode-list-activeSelectionBackground, #094771);
  --cb-list-focusBackground: var(--cb-vscode-list-focusBackground, #062f4a);
  --cb-tree-indent-guides-stroke: var(--cb-vscode-tree-indentGuidesStroke, rgba(255, 255, 255, 0.1));
  --cb-focus-outline-color: var(--cb-vscode-focusBorder, #007fd4);
  /* sidebar/tree 中"填充式"叶子项（默认就有底色，不靠 hover）三档语义 */
  --cb-list-item-bg: #1E2127;
  --cb-list-item-hover-bg: #272C34;
  --cb-list-item-selected-bg: #343841;
  /* ========== 滚动条相关 ========== */
  --cb-scrollbar-thumb: var(--cb-vscode-scrollbarSlider-background, rgba(121, 121, 121, 0.4));
  --cb-scrollbar-thumb-hover: var(--cb-vscode-scrollbarSlider-hoverBackground, rgba(100, 100, 100, 0.7));
  /* ========== 列表项颜色（用于 model selector 等） ========== */
  --cb-list-item-foreground: #c5c5c5;
  --cb-list-item-selected-foreground: #ffffff;
  /* ========== 基础颜色系统 ========== */
  --cb-success-color: #28b894;
  --cb-project-invitation-button-background: rgb(22, 163, 74);
  --cb-project-invitation-button-hover-background: rgb(22, 163, 74);
  --cb-project-invitation-card-background: rgb(255, 255, 255);
  --cb-project-invitation-hero-gradient: linear-gradient(rgb(240, 253, 244) 0%, rgb(255, 255, 255) 100%);
  --cb-button-primary: #6c4dff;
  --cb-mermaid-toggle-active: var(--cb-vscode-button-background, #0e639c);
  --cb-text-primary: #d2d3e0;
  --cb-text-secondary: #858699;
  --cb-text-tertiary: #a0a0a0;
  --cb-text-muted: rgba(232, 236, 241, 0.7);
  --cb-text-highlight: #40a6ff;
  /* 灰阶禁用文本（credit-estimate / installed-plugins 等组件使用），
     dark 与 wb 设计稿 --wb-color-text-disabled 对齐 */
  --cb-text-disabled: rgba(255, 255, 255, 0.25);
  /* ========== 设计稿语义补齐（dark 主题覆盖；WorkBuddy 仍通过 cb-bridge.scss 桥接到 --wb-*） ========== */
  --cb-text-error-active: #f14c4c;
  --cb-text-link-hover: #7AB8E8;
  --cb-text-solid: #ffffff;
  --cb-bg-primary-hover: rgba(255, 255, 255, 0.08);
  --cb-bg-primary-active: rgba(255, 255, 255, 0.12);
  --cb-border-secondary: rgba(255, 255, 255, 0.10);
  --cb-shadow-popover: 0 4px 12px -4px rgba(0, 0, 0, 0.4), 0 3px 6px -8px rgba(0, 0, 0, 0.4);
  --cb-border-drag-indicator: #4DA3E0;
  /* ========== 输入框相关 ========== */
  --cb-input-foreground: var(--cb-text-primary);
  --cb-input-background: var(--cb-vscode-input-background);
  --cb-input-border-color: color-mix(in srgb, #cccccc 12%, transparent);
  --cb-input-focus-border-color: color-mix(in srgb, #cccccc 30%, transparent);
  --cb-input-placeholder: var(--cb-text-secondary);
  --cb-input-button-foreground: #D2D3E0;
  --cb-input-button-background: #4C4F6B;
  --cb-panel-border-color: color-mix(in srgb, #cccccc 12%, transparent);
  /* 聊天输入区域外层容器 (content) */
  --cb-content-background: color-mix(in srgb, var(--vscode-foreground) 4%, transparent);
  --cb-content-border-color: rgba(255, 255, 255, 0.08);
  /* 主输入区域 (mainArea) - 用户真正打字的地方 */
  --cb-main-area-background: var(--cb-vscode-input-background);
  --cb-main-area-border-color: var(--cb-content-border-color);
  --cb-main-area-box-shadow: none;
  /* ========== 标记和标签 ========== */
  --cb-marker-foreground: var(--cb-text-highlight);
  --cb-marker-background: #34414b;
  --cb-tag-background: rgba(128, 128, 128, 0.2);
  --cb-tag-selected-background: rgba(100, 150, 255, 0.3);
  --cb-tag-selected-text: #ffffff;
  /* skill/file tag / pending-auth chip 芯片底色（与 fileTag/skillTag 暗色模式对齐） */
  --cb-tag-skill-background: rgba(255, 255, 255, 0.08);
  --cb-tag-skill-background-hover: rgba(255, 255, 255, 0.14);
  /* ========== 弹出层相关 ========== */
  --cb-popover-background: #212234;
  --cb-popover-active-background: #313248;
  --cb-popover-secondary: var(--cb-text-secondary);
  --cb-popover-border: rgba(255, 255, 255, 0.12);
  --cb-popover-divider: rgba(255, 255, 255, 0.08);
  --cb-green-color: #00b96b;
  --cb-input-active-border: var(--cb-green-color);
  --cb-search-input-bg: rgba(255, 255, 255, 0.04);
  --cb-list-item-selected-bg: rgba(255, 255, 255, 0.06);
  --cb-toggle-track-off-bg: rgba(255, 255, 255, 0.08);
  --cb-switch-thumb-bg: #ffffff;
  --cb-avatar-fallback-bg: #3a3a3a;
  --cb-avatar-fallback-fg: rgba(255, 255, 255, 0.65);
  --cb-voice-pill-bg: rgba(255, 255, 255, 0.06);
  --cb-voice-text: rgba(255, 255, 255, 0.65);
  --cb-voice-confirm-color: #00c29a;
  --cb-voice-mic-hover-bg: rgba(255, 255, 255, 0.08);
  /* ========== 按钮相关变量 ========== */
  --cb-gray-color: color-mix(in srgb, var(--cb-vscode-foreground) 10%, transparent);
  --cb-mode-switch-background: var(--cb-gray-color);
  --cb-mode-switch-hover-background: rgba(255, 255, 255, 0.1);
  --cb-icon-button-hover-background: rgba(255, 255, 255, 0.1);
  --cb-icon-button-color: rgba(255, 255, 255, 0.2);
  --cb-send-button-loading-bg: rgba(255, 255, 255, 0.9);
  --cb-send-button-loading-color: rgba(0, 0, 0, 0.9);
  --cb-button-primary-foreground: #fff;
  --cb-danger-color: #d32f2f;
  --cb-button-ghost-hover-background: var(--cb-vscode-list-hoverBackground);
  /* 深色模式下反转为亮色按钮，确保与深色背景（#1e1e1e）有足够对比度 */
  --cb-button-dark-background: #ffffff;
  --cb-button-dark-foreground: #1a1a1a;
  --cb-button-dark-hover-background: #e0e0e0;
  /* ========== Input 相关变量 ========== */
  --chat-input-area-header-font-color: #CCC;
  --chat-input-add-btn-hover-bg-color: rgba(255, 255, 255, 0.1);
  --cb-chat-menu-main-text: #fff;
  /* ========== Switch 相关变量 ========== */
  --cb-switch-bg: #3a3a3a;
  --cb-switch-active-bg: #00b96b;
  --cb-switch-thumb-light-active: #f59e0b;
  --cb-switch-thumb-dark-active: #6366f1;
  --cb-switch-icon-light-active-color: #d2d3e0;
  --cb-switch-icon-dark-active-color: #d2d3e0;
  /* ========== 错误消息相关变量 ========== */
  --cb-error-foreground: #f14c4c;
  --cb-input-border-primary: #454545;
  /* ========== Tooltip 相关变量 ========== */
  --cb-dropdown-bg-color: var(--cb-vscode-dropdown-background);
  --cb-dropdown-item-hover-bg-color: var(--cb-vscode-list-hoverBackground);
  --cb-dropdown-border-color: rgba(255, 255, 255, 0.10);
  --cb-dropdown-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.32), 0 3px 6px -8px rgba(0, 0, 0, 0.32);
  --cb-tooltip-text-color: #FFFFFF;
  --cb-tooltip-shadow-color: rgba(0, 0, 0, 0.4);
  --cb-tooltip-bg: #333333;
  /* ========== 用户消息气泡 ========== */
  --cb-user-bubble-bg: #242424;
  /* ========== 基础交互变量 ========== */
  --cb-bg-primary: #101114;
  --cb-bg-secondary: #17191D;
  --cb-team-member-card-background: #23262D;
  --cb-team-member-icon-background: #23262D;
  --cb-search-bg: rgba(255, 255, 255, 0.04);
  --cb-bg-tertiary: #1E2127;
  --cb-bg-elevated: #181B20;
  --cb-bg-surface: #181B20;
  --cb-bg-surface-hover: #20242B;
  --cb-bg-surface-active: #272C34;
  --cb-bg-overlay: rgba(16, 17, 20, 0.9);
  --cb-hover-bg: #23262D;
  --cb-secondary-bg: #2d2d2d;
  --cb-sidebar-bg: #252526;
  --cb-sidebar-surface: rgba(255, 255, 255, 0.04);
  --cb-sidebar-surface-hover: rgba(255, 255, 255, 0.06);
  --cb-sidebar-active: rgba(255, 255, 255, 0.10);
  --cb-sidebar-search-bg: #181B20;
  --cb-border: rgba(255, 255, 255, 0.10);
  --cb-border-subtle: rgba(255, 255, 255, 0.06);
  --cb-border-strong: rgba(255, 255, 255, 0.16);
  --cb-border-bright: rgba(255, 255, 255, 0.16);
  --cb-text-primary-strong: rgba(255, 255, 255, 0.92);
  --cb-text-secondary-strong: rgba(255, 255, 255, 0.72);
  --cb-text-tertiary-strong: rgba(255, 255, 255, 0.48);
  --cb-text-quaternary: rgba(255, 255, 255, 0.32);
  --cb-sidebar-text: rgba(255, 255, 255, 0.90);
  --cb-sidebar-text-secondary: rgba(255, 255, 255, 0.66);
  --cb-sidebar-text-muted: rgba(255, 255, 255, 0.42);
  --cb-accent: #343841;
  --cb-accent-hover: #3E434E;
  --cb-bg-card: #181B20;
  /* ========== Markdown 相关变量 ========== */
  --cb-markdown-border-color: #3c3c3c;
  --cb-markdown-code-bg-color: rgba(255, 255, 255, 0.1);
  /* Markdown <hr> 边框色，与 wb 设计稿 --wb-color-border-secondary 对齐 */
  --cb-markdown-hr-border-color: #2A2C31;
  --cb-markdown-hljs-color: var(--cb-vscode-editor-foreground);
  --cb-markdown-symbol-color: #75beff;
  --cb-markdown-symbol-background: rgba(81, 154, 186, 0.15);
  --cb-markdown-symbol-hover-background: rgba(112, 174, 255, 0.25);
  /* Markdown 表格专用 token（与 light 主题对齐，独立于 markdown-border-color 避免影响 katex）。
     dark 下表头底色用 vscode editorWidget background；cell 背景用 transparent 继承容器，避免暗色出现刺眼白块。 */
  --cb-markdown-table-border-color: var(--cb-markdown-border-color, #3c3c3c);
  --cb-markdown-table-header-bg: var(--cb-vscode-editorWidget-background, #252526);
  --cb-markdown-table-cell-bg: transparent;
  /* Markdown 代码块专用 token（与 light 主题对齐）。
     dark 下不强制白底：边框沿用 markdown-border-color，header 用 editorWidget background，
     代码区背景 transparent 继承容器（避免暗色刺眼白块），文字色走 vscode foreground。 */
  --cb-markdown-code-block-border: var(--cb-markdown-border-color, #3c3c3c);
  --cb-markdown-code-block-header-bg: var(--cb-vscode-editorWidget-background, #252526);
  --cb-markdown-code-block-bg: transparent;
  --cb-markdown-code-block-title-fg: var(--cb-vscode-editor-foreground, #cccccc);
  --cb-markdown-code-block-action-fg: var(--cb-vscode-editor-foreground, #cccccc);
  --cb-markdown-code-block-action-hover-bg: rgba(255, 255, 255, 0.08);
  /* ========== Reasoning 内容变量 ========== */
  --cb-reasoning-bg: rgba(255, 255, 255, 0.05);
  --cb-reasoning-border-color: #3c3c3c;
  --cb-reasoning-font-color: #bbb;
  /* ========== 状态指示器颜色 ========== */
  --cb-integration-status-disconnected: #888;
  --cb-integration-status-connected: #4caf50;
  --cb-toggle-inactive-bg: #555;
  --cb-toggle-active-bg: #007acc;
  --cb-toggle-slider-color: white;
  /* ========== 文件操作颜色 ========== */
  --cb-file-status-color: #a0a0a0;
  --cb-diff-removed-color: #f14c4c;
  --cb-diff-added-color: #16825d;
  --cb-status-success-color: #16825d;
  --cb-status-pending-color: #e08855;
  /* ========== 图标颜色 ========== */
  --cb-icon-failed-color: #ff324c;
  --cb-icon-refused-color: #FF0000;
  --cb-icon-accepted-color: #16825D;
  --cb-checkpoint-arrow-color: #bbb;
  /* ========== Toast 和反馈 ========== */
  --cb-toast-success-color: #40C8AE;
  --cb-toast-error-color: #FF5263;
  --cb-status-accept-color: #40C8AE;
  --cb-status-reject-color: #C74E39;
  --cb-feedback-item-active-bg: rgba(255, 255, 255, 0.1);
  /* ========== 文件操作类型颜色 ========== */
  --cb-file-op-modify-color: #EE9D28;
  --cb-file-op-read-color: #808080;
  --cb-file-op-write-color: #40C8AE;
  /* WriteFile 简洁模式 diff 加/减行：仅用于 write-file 工具渲染器，
     不要复用为全局成功/错误色 */
  --cb-file-op-added-color: #3FB950;
  --cb-file-op-removed-color: #F85149;
  /* ========== 代码高亮颜色 - Dark 主题 (VSCode Dark+) ========== */
  --cb-hljs-comment: #6A9955;
  --cb-hljs-keyword: #569cd6;
  --cb-hljs-string: #ce9178;
  --cb-hljs-number: #b5cea8;
  --cb-hljs-function: #dcdcaa;
  --cb-hljs-variable: #9cdcfe;
  /* ========== 高亮动画 ========== */
  --cb-highlight-blink-gradient: linear-gradient(315deg, #3870CD -15.38%, #A57AF9 109.96%);
  /* ========== 命令执行输出颜色 ========== */
  --cb-command-stdout-color: #DFE1E5;
  /* ========== UI 增强变量 ========== */
  --cb-accent: #343841;
  --cb-accent-hover: #3E434E;
  --cb-success: #4ade80;
  --cb-success-subtle: rgba(74, 222, 128, 0.15);
  --cb-success-glow: #22c55e;
  --cb-error: #ff8a95;
  --cb-error-soft: #ffcdd2;
  --cb-error-bg: rgba(255, 138, 149, 0.08);
  --cb-error-border: rgba(255, 138, 149, 0.15);
  --cb-warning: #fbbf24;
  --cb-info: #60a5fa;
  --cb-text-category-badge: #2563eb;
  --cb-bg-category-badge: rgba(37, 99, 235, 0.08);
  --cb-border-category-badge: rgba(37, 99, 235, 0.16);
  --cb-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --cb-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --cb-glow-success: 0 0 20px rgba(74, 222, 128, 0.3);
  --cb-glow-error: 0 0 15px rgba(255, 138, 149, 0.2);
  /* ========== Edition Badge Colors ========== */
  --cb-editionBadge-free-foreground: #a3a3a3;
  --cb-editionBadge-free-background: #262626;
  --cb-editionBadge-free-border: #404040;
  --cb-editionBadge-pro-foreground: #a78bfa;
  --cb-editionBadge-pro-background: #2e1065;
  --cb-editionBadge-pro-border: #4c1d95;
  --cb-editionBadge-ultimate-foreground: #fb7185;
  --cb-editionBadge-ultimate-background: #4c0519;
  --cb-editionBadge-ultimate-border: #881337;
  --cb-editionBadge-exclusive-foreground: #fb923c;
  --cb-editionBadge-exclusive-background: #431407;
  --cb-editionBadge-exclusive-border: #7c2d12;
  /* ========== Account Panel Variables ========== */
  --cb-account-button-background: #1a1a1a;
  --cb-account-button-hover-background: #2a2a2a;
  --cb-account-button-foreground: #ffffff;
  /* ========== Agent UI 兼容变量 ========== */
  --cb-bg-color-container: var(--cb-vscode-editor-background, #1e1e1e);
  --cb-text-color-secondary: var(--cb-text-secondary, #858699);
  --cb-text-color-error: var(--cb-error-foreground, #f14c4c);
  --cb-modal-background: rgb(24, 24, 24);
  /* ========== Settings Panel 相关变量 ========== */
  --cb-section-title-color: #989898;
  --cb-card-label-color: var(--cb-text-primary, #d2d3e0);
  --cb-settings-panel-background: color-mix(in srgb,
      var(--cb-vscode-sideBar-background, #252526) 95%,
      white 5%);
  --cb-card-background: color-mix(in srgb, var(--vscode-foreground) 4%, transparent);
  /* ========== 骨架屏相关变量 ========== */
  --cb-skeleton-base: rgba(128, 128, 128, 0.1);
  --cb-skeleton-highlight: rgba(128, 128, 128, 0.2);
  /* ========== 遮罩层相关变量 ========== */
  --cb-overlay-background: rgba(0, 0, 0, 0.5);
  --cb-overlay-loading-spinner: #ffffff;
  --cb-overlay-loading-text: #ffffff;
  /* ========== Update Toast 相关变量 ========== */
  --cb-update-toast-bg: #2a2a2a;
  --cb-update-toast-bg-success: #1a2e26;
  --cb-update-toast-bg-error: #2e1a1a;
  --cb-update-toast-text: #d2d3e0;
  --cb-update-toast-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
  --cb-update-toast-close-bg: #3c3c3c;
  --cb-update-toast-close-icon: #999;
  --cb-update-toast-close-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  --cb-update-toast-progress-bg: #3c3c3c;
  --cb-update-toast-brand: #4ECBA0;
  --cb-update-toast-brand-hover: #3bb88a;
  --cb-update-toast-error: #e06060;
  --cb-update-toast-btn-solid-text: #fff;
  --cb-update-toast-btn-outline-hover-bg: rgba(78, 203, 160, 0.12);
  /* ========== Question Floating 浮层问答相关变量 ========== */
  --cb-question-floating-card-bg: #181b20;
  --cb-question-floating-card-border: rgba(255, 255, 255, 0.08);
  --cb-question-floating-text-primary: rgba(255, 255, 255, 0.9);
  --cb-question-floating-text-secondary: rgba(255, 255, 255, 0.65);
  --cb-question-floating-text-muted: rgba(255, 255, 255, 0.4);
  --cb-question-floating-text-faint: rgba(255, 255, 255, 0.25);
  --cb-question-floating-text-strong: rgba(255, 255, 255, 0.9);
  --cb-question-floating-divider: rgba(255, 255, 255, 0.08);
  --cb-question-floating-scrollbar-thumb: rgba(255, 255, 255, 0.15);
  --cb-question-floating-hover-bg: #2a2d35;
  --cb-question-floating-number-bg: #2a2d35;
  --cb-question-floating-number-active-bg: #3a3d45;
  --cb-question-floating-skip-bg: var(--cb-question-floating-hover-bg);
  --cb-question-floating-skip-fg: var(--cb-question-floating-text-primary);
  --cb-question-floating-icon-active-bg: rgba(255, 255, 255, 0.92);
  --cb-question-floating-icon-active-fg: #181b20;
  --cb-question-floating-icon-active-bg-hover: #ffffff;
  --cb-question-floating-icon-active-bg-active: #ffffff;
  /* checkbox（dark 反相：浅描边 + 浅底深对勾，与 icon-active 同策略） */
  --cb-question-floating-checkbox-border: rgba(255, 255, 255, 0.35);
  --cb-question-floating-checkbox-bg: transparent;
  --cb-question-floating-checkbox-checked-bg: rgba(255, 255, 255, 0.92);
  --cb-question-floating-checkbox-check-mark: #181b20;
}

body {
  /* ========== VSCode 主题变量映射 ========== */
  --cb-vscode-editor-background: var(--vscode-editor-background, #1e1e1e);
  --cb-vscode-sideBar-background: var(--vscode-sideBar-background, #252526);
  --cb-vscode-input-background: var(--vscode-input-background, #3c3c3c);
  --cb-vscode-dropdown-background: var(--vscode-dropdown-background, #3c3c3c);
  --cb-vscode-foreground: var(--vscode-foreground, #cccccc);
  --cb-vscode-editor-foreground: var(--vscode-editor-foreground, #cccccc);
  --cb-vscode-titleBar-activeBackground: var(--vscode-titleBar-activeBackground, #3c3c3c);
  --cb-vscode-titleBar-activeForeground: var(--vscode-titleBar-activeForeground, #cccccc);
  --cb-vscode-titleBar-inactiveBackground: var(--vscode-titleBar-inactiveBackground, #3c3c3c);
  --cb-vscode-titleBar-inactiveForeground: var(--vscode-titleBar-inactiveForeground, #999999);
  --cb-titlebar-control-hover-background: rgba(255, 255, 255, 0.08);
  --cb-vscode-descriptionForeground: var(--vscode-descriptionForeground, #9d9d9d);
  --cb-vscode-widget-border: var(--vscode-widget-border, #414141);
  --cb-vscode-panel-border: var(--vscode-panel-border, #3c3c3c);
  --cb-vscode-list-hoverBackground: var(--vscode-list-hoverBackground, #2a2d2e);
  --cb-vscode-toolbar-hoverBackground: var(--vscode-toolbar-hoverBackground, #353535);
  --cb-vscode-button-background: var(--vscode-button-background, #0e639c);
  --cb-vscode-button-foreground: var(--vscode-button-foreground, #ffffff);
  --cb-vscode-button-hoverBackground: var(--vscode-button-hoverBackground, #1177bb);
  --cb-vscode-button-secondaryBackground: var(--vscode-button-secondaryBackground, #3a3d41);
  --cb-vscode-button-secondaryForeground: var(--vscode-button-secondaryForeground, #ffffff);
  --cb-vscode-button-secondaryHoverBackground: var(--vscode-button-secondaryHoverBackground, #45494e);
  --cb-vscode-scrollbarSlider-background: var(--vscode-scrollbarSlider-background, #797979);
  --cb-vscode-scrollbarSlider-hoverBackground: var(--vscode-scrollbarSlider-hoverBackground, #646464);
  --cb-vscode-textLink-foreground: var(--vscode-textLink-foreground, #3794ff);
  --cb-vscode-list-activeSelectionForeground: var(--vscode-list-activeSelectionForeground, #ffffff);
  --cb-vscode-list-inactiveForeground: var(--vscode-foreground, #c5c5c5);
  --cb-vscode-list-inactiveSelectionBackground: var(--vscode-list-inactiveSelectionBackground);
  --cb-vscode-widget-shadow: var(--vscode-widget-shadow, rgba(0, 0, 0, 0.36));
  --cb-vscode-menu-foreground: var(--vscode-menu-foreground, #cccccc);
  --cb-vscode-menu-separatorBackground: var(--vscode-menu-separatorBackground, #454545);
  --cb-vscode-menu-border: var(--vscode-menu-border, #454545);
  --cb-vscode-quickInputList-focusBackground: var(--vscode-quickInputList-focusBackground, #04395e);
  --cb-panel-bg-primary: var(--vscode-panel-background, #1e1e1e);
  /* 同会话背景色，token 仅在 IDE Dark 块内定义，此处加 panel 回退避免深色主题下失效 */
  --cb-colleagues-dashboard-bg: var(--cb-input-area-container-secondary, var(--cb-panel-bg-primary));
  /* 同事-云端助理卡片描边：深色沿用通用边框色 */
  --cb-colleagues-card-border: var(--cb-border);
  /* 同事-云端助理输入框背景：深色沿用次级背景 */
  --cb-colleagues-prompt-bg: var(--cb-bg-secondary);
  /* 同事-云端助理 Mode 切换器（旧版/云端 segmented） */
  --cb-colleagues-mode-switch-bg: var(--cb-bg-secondary);
  --cb-colleagues-mode-switch-active-bg: #00C29A;
  --cb-colleagues-mode-switch-inactive-fg: var(--cb-text-secondary);
  --cb-colleagues-mode-switch-active-fg: #FFFFFF;
  /* 同事-云端助理 "手机远程" chip：深色沿用 panel + border + 主文本 */
  --cb-colleagues-remote-chip-bg: var(--cb-panel-bg-primary);
  --cb-colleagues-remote-chip-border: var(--cb-border);
  --cb-colleagues-remote-chip-fg: var(--cb-text-primary);
  /* 同事卡片相关：深色沿用既有 border/bg，避免回归 */
  --cb-colleague-card-border: var(--cb-border);
  --cb-colleague-card-shadow: 0 4px 10px rgba(0, 0, 0, 0.32);
  --cb-colleague-card-status-pill-bg: var(--cb-bg-secondary);
  --cb-colleague-card-status-pill-fg: var(--cb-text-primary);
  --cb-colleague-card-chat-bg: var(--cb-bg-secondary);
  /* ========== 文件树和列表辅助变量 ========== */
  --cb-icon-foreground: var(--cb-vscode-foreground, #cccccc);
  --cb-list-activeSelectionBackground: var(--cb-vscode-list-activeSelectionBackground, #094771);
  --cb-list-focusBackground: var(--cb-vscode-list-focusBackground, #062f4a);
  --cb-tree-indent-guides-stroke: var(--cb-vscode-tree-indentGuidesStroke, rgba(255, 255, 255, 0.1));
  --cb-focus-outline-color: var(--cb-vscode-focusBorder, #007fd4);
  /* sidebar/tree 中"填充式"叶子项（默认就有底色，不靠 hover）三档语义 */
  --cb-list-item-bg: #1E2127;
  --cb-list-item-hover-bg: #272C34;
  --cb-list-item-selected-bg: #343841;
  /* ========== 滚动条相关 ========== */
  --cb-scrollbar-thumb: var(--cb-vscode-scrollbarSlider-background, rgba(121, 121, 121, 0.4));
  --cb-scrollbar-thumb-hover: var(--cb-vscode-scrollbarSlider-hoverBackground, rgba(100, 100, 100, 0.7));
  /* ========== 列表项颜色（用于 model selector 等） ========== */
  --cb-list-item-foreground: #c5c5c5;
  --cb-list-item-selected-foreground: #ffffff;
  --cb-text-link: #3794ff;
  /* ========== 基础颜色系统 ========== */
  --cb-success-color: #28b894;
  --cb-project-invitation-button-background: rgb(22, 163, 74);
  --cb-project-invitation-button-hover-background: rgb(22, 163, 74);
  --cb-project-invitation-card-background: rgb(255, 255, 255);
  --cb-project-invitation-header-background: rgba(255, 255, 255, 0.8);
  --cb-project-invitation-header-border: rgb(243, 244, 246);
  --cb-project-invitation-hero-icon-border: rgb(209, 250, 229);
  --cb-project-invitation-brand-badge-background: rgb(26, 26, 26);
  --cb-project-invitation-brand-badge-foreground: rgb(255, 255, 255);
  --cb-project-invitation-brand-text: rgb(26, 26, 26);
  --cb-project-invitation-footer-text: rgb(192, 197, 204);
  --cb-project-invitation-callout-border: rgb(254, 215, 170);
  --cb-project-invitation-callout-background: rgb(255, 247, 237);
  --cb-project-invitation-callout-foreground: rgb(154, 52, 18);
  --cb-project-invitation-callout-icon: rgb(234, 88, 12);
  --cb-project-invitation-feedback-success-background: rgb(240, 253, 244);
  --cb-project-invitation-feedback-success-border: rgb(209, 250, 229);
  --cb-project-invitation-feedback-success-foreground: rgb(22, 163, 74);
  --cb-project-invitation-feedback-meta-foreground: rgb(156, 163, 175);
  --cb-project-invitation-hero-gradient: linear-gradient(rgb(240, 253, 244) 0%, rgb(255, 255, 255) 100%);
  --cb-button-primary: #6c4dff;
  --cb-mermaid-toggle-active: var(--cb-vscode-button-background, #0e639c);
  --cb-text-primary: var(--vscode-foreground, #d2d3e0);
  --cb-text-secondary: #858699;
  --cb-text-tertiary: #a0a0a0;
  --cb-text-muted: rgba(232, 236, 241, 0.7);
  --cb-text-highlight: #40a6ff;
  --cb-text-desc: color-mix(in srgb, var(--cb-text-primary) 68%, transparent);
  /* ========== 输入框相关 ========== */
  --cb-input-foreground: var(--cb-text-primary);
  --cb-input-background: var(--cb-vscode-input-background);
  --cb-input-border-color: color-mix(in srgb, #cccccc 12%, transparent);
  --cb-input-placeholder: var(--cb-text-secondary);
  --cb-input-button-foreground: #D2D3E0;
  --cb-input-button-background: #4C4F6B;
  /* 聊天输入区域外层容器 (content) */
  --cb-content-background: color-mix(in srgb, var(--cb-vscode-sideBar-background, #252526) 85%, white 15%);
  --cb-content-border-color: rgba(255, 255, 255, 0.08);
  /* 主输入区域 (mainArea) - 用户真正打字的地方 */
  --cb-main-area-background: var(--cb-vscode-input-background);
  --cb-main-area-border-color: var(--cb-content-border-color);
  --cb-main-area-box-shadow: none;
  /* ========== 标记和标签 ========== */
  --cb-marker-foreground: var(--cb-text-highlight);
  --cb-marker-background: #34414b;
  --cb-tag-background: rgba(128, 128, 128, 0.2);
  --cb-tag-selected-background: rgba(100, 150, 255, 0.3);
  --cb-tag-selected-text: #ffffff;
  /* skill/file tag / pending-auth chip 芯片底色（与 fileTag/skillTag 暗色模式对齐） */
  --cb-tag-skill-background: rgba(255, 255, 255, 0.08);
  --cb-tag-skill-background-hover: rgba(255, 255, 255, 0.14);
  /* ========== 弹出层相关 ========== */
  --cb-popover-background: #212234;
  --cb-popover-active-background: #313248;
  --cb-popover-secondary: var(--cb-text-secondary);
  --cb-popover-border: rgba(255, 255, 255, 0.12);
  --cb-popover-divider: rgba(255, 255, 255, 0.08);
  --cb-green-color: #00b96b;
  --cb-input-active-border: var(--cb-green-color);
  --cb-search-input-bg: rgba(255, 255, 255, 0.04);
  --cb-list-item-selected-bg: rgba(255, 255, 255, 0.06);
  --cb-toggle-track-off-bg: rgba(255, 255, 255, 0.08);
  --cb-switch-thumb-bg: #ffffff;
  --cb-avatar-fallback-bg: #3a3a3a;
  --cb-avatar-fallback-fg: rgba(255, 255, 255, 0.65);
  --cb-voice-pill-bg: rgba(255, 255, 255, 0.06);
  --cb-voice-text: rgba(255, 255, 255, 0.65);
  --cb-voice-confirm-color: #00c29a;
  --cb-voice-mic-hover-bg: rgba(255, 255, 255, 0.08);
  /* ========== 按钮相关变量 ========== */
  --cb-gray-color: color-mix(in srgb, var(--cb-vscode-foreground) 10%, transparent);
  --cb-mode-switch-background: var(--cb-gray-color);
  --cb-mode-switch-hover-background: rgba(255, 255, 255, 0.1);
  --cb-icon-button-hover-background: rgba(255, 255, 255, 0.1);
  --cb-icon-button-color: rgba(255, 255, 255, 0.2);
  --cb-send-button-loading-bg: rgba(255, 255, 255, 0.9);
  --cb-send-button-loading-color: rgba(0, 0, 0, 0.9);
  --cb-button-primary-foreground: #fff;
  --cb-danger-color: #d32f2f;
  --cb-button-ghost-hover-background: var(--cb-vscode-list-hoverBackground);
  --cb-button-secondary-background: var(--cb-vscode-button-secondaryBackground, #3a3d41);
  --cb-button-secondary-foreground: var(--cb-vscode-button-secondaryForeground, #ffffff);
  --cb-button-secondary-hover-background: var(--cb-vscode-button-secondaryHoverBackground, #45494e);
  /* 深色模式下反转为亮色按钮，确保与深色背景（#1e1e1e）有足够对比度 */
  --cb-button-dark-background: #ffffff;
  --cb-button-dark-foreground: #1a1a1a;
  --cb-button-dark-hover-background: #e0e0e0;
  /* ========== Input 相关变量 ========== */
  --chat-input-area-header-font-color: #CCC;
  --chat-input-add-btn-hover-bg-color: rgba(255, 255, 255, 0.1);
  --cb-border-color: var(--vscode-editorWidget-border, rgba(255, 255, 255, 0.1));
  --cb-border-color-emphasis: rgba(255, 255, 255, 0.05);
  --cb-chat-menu-main-text: #fff;
  /* ========== Switch 相关变量 ========== */
  --cb-switch-bg: #3a3a3a;
  --cb-switch-active-bg: #00b96b;
  --cb-switch-thumb-light-active: #f59e0b;
  --cb-switch-thumb-dark-active: #6366f1;
  --cb-switch-icon-light-active-color: #d2d3e0;
  --cb-switch-icon-dark-active-color: #d2d3e0;
  /* ========== 错误消息相关变量 ========== */
  --cb-error-foreground: #f14c4c;
  --cb-input-border-primary: #454545;
  --cb-stroke-secondary: #30363d;
  --cb-error-banner-text-color: #ffffff;
  --cb-error-banner-retry-text-color: #171717;
  /* ========== Tooltip 相关变量 ========== */
  --cb-dropdown-bg-color: var(--cb-vscode-dropdown-background, #3c3c3c);
  --cb-dropdown-item-hover-bg-color: var(--cb-vscode-list-hoverBackground);
  --cb-dropdown-border-color: rgba(255, 255, 255, 0.10);
  --cb-dropdown-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.32), 0 3px 6px -8px rgba(0, 0, 0, 0.32);
  --cb-tooltip-text-color: #FFFFFF;
  --cb-tooltip-shadow-color: rgba(0, 0, 0, 0.4);
  --cb-tooltip-bg: #333333;
  /* ========== 用户消息气泡 ========== */
  --cb-user-bubble-bg: #242424;
  /* ========== 基础交互变量 ========== */
  --cb-bg-primary: #101114;
  --cb-bg-secondary: #17191D;
  --cb-team-member-card-background: #23262D;
  --cb-team-member-icon-background: #23262D;
  --cb-search-bg: rgba(255, 255, 255, 0.04);
  --cb-bg-tertiary: #1E2127;
  --cb-bg-elevated: #181B20;
  --cb-bg-surface: #181B20;
  --cb-bg-surface-hover: #20242B;
  --cb-bg-surface-active: #272C34;
  --cb-bg-overlay: rgba(16, 17, 20, 0.9);
  --cb-hover-bg: #23262D;
  --cb-secondary-bg: #2d2d2d;
  --cb-sidebar-bg: #252526;
  --cb-sidebar-surface: rgba(255, 255, 255, 0.04);
  --cb-sidebar-surface-hover: rgba(255, 255, 255, 0.06);
  --cb-sidebar-active: rgba(255, 255, 255, 0.10);
  --cb-sidebar-search-bg: #181B20;
  --cb-border: rgba(255, 255, 255, 0.10);
  --cb-border-subtle: rgba(255, 255, 255, 0.06);
  --cb-border-strong: rgba(255, 255, 255, 0.16);
  --cb-border-bright: rgba(255, 255, 255, 0.16);
  --cb-text-primary-strong: rgba(255, 255, 255, 0.92);
  --cb-text-secondary-strong: rgba(255, 255, 255, 0.72);
  --cb-text-tertiary-strong: rgba(255, 255, 255, 0.48);
  --cb-text-quaternary: rgba(255, 255, 255, 0.32);
  --cb-sidebar-text: rgba(255, 255, 255, 0.90);
  --cb-sidebar-text-secondary: rgba(255, 255, 255, 0.66);
  --cb-sidebar-text-muted: rgba(255, 255, 255, 0.42);
  --cb-accent: #343841;
  --cb-accent-hover: #3E434E;
  --cb-bg-card: #181B20;
  /* ========== Markdown 相关变量 ========== */
  --cb-markdown-border-color: #3c3c3c;
  --cb-markdown-code-bg-color: rgba(255, 255, 255, 0.1);
  --cb-markdown-hljs-color: var(--cb-vscode-editor-foreground);
  --cb-markdown-symbol-color: #75beff;
  --cb-markdown-symbol-background: rgba(81, 154, 186, 0.15);
  --cb-markdown-symbol-hover-background: rgba(112, 174, 255, 0.25);
  /* Markdown 表格专用 token（与 light 主题对齐，独立于 markdown-border-color 避免影响 katex）。
     dark 下表头底色用 vscode editorWidget background；cell 背景用 transparent 继承容器，避免暗色出现刺眼白块。 */
  --cb-markdown-table-border-color: var(--cb-markdown-border-color, #3c3c3c);
  --cb-markdown-table-header-bg: var(--cb-vscode-editorWidget-background, #252526);
  --cb-markdown-table-cell-bg: transparent;
  /* Markdown 代码块专用 token（与 light 主题对齐）。
     dark 下不强制白底：边框沿用 markdown-border-color，header 用 editorWidget background，
     代码区背景 transparent 继承容器（避免暗色刺眼白块），文字色走 vscode foreground。 */
  --cb-markdown-code-block-border: var(--cb-markdown-border-color, #3c3c3c);
  --cb-markdown-code-block-header-bg: var(--cb-vscode-editorWidget-background, #252526);
  --cb-markdown-code-block-bg: transparent;
  --cb-markdown-code-block-title-fg: var(--cb-vscode-editor-foreground, #cccccc);
  --cb-markdown-code-block-action-fg: var(--cb-vscode-editor-foreground, #cccccc);
  --cb-markdown-code-block-action-hover-bg: rgba(255, 255, 255, 0.08);
  /* ========== Reasoning 内容变量 ========== */
  --cb-reasoning-bg: rgba(255, 255, 255, 0.05);
  --cb-reasoning-border-color: #3c3c3c;
  --cb-reasoning-font-color: #bbb;
  /* ========== 状态指示器颜色 ========== */
  --cb-integration-status-disconnected: #888;
  --cb-integration-status-connected: #4caf50;
  --cb-toggle-inactive-bg: #555;
  --cb-toggle-active-bg: #007acc;
  --cb-toggle-slider-color: white;
  /* ========== 文件操作颜色 ========== */
  --cb-file-status-color: #a0a0a0;
  --cb-diff-removed-color: #f14c4c;
  --cb-diff-added-color: #16825d;
  --cb-status-success-color: #16825d;
  --cb-status-pending-color: #e08855;
  /* ========== 图标颜色 ========== */
  --cb-icon-failed-color: #ff324c;
  --cb-icon-refused-color: #FF0000;
  --cb-icon-accepted-color: #16825D;
  --cb-checkpoint-arrow-color: #bbb;
  /* ========== Toast 和反馈 ========== */
  --cb-toast-success-color: #40C8AE;
  --cb-toast-error-color: #FF5263;
  --cb-status-accept-color: #40C8AE;
  --cb-status-reject-color: #C74E39;
  --cb-feedback-item-active-bg: rgba(255, 255, 255, 0.1);
  /* ========== 文件操作类型颜色 ========== */
  --cb-file-op-modify-color: #EE9D28;
  --cb-file-op-read-color: #808080;
  --cb-file-op-write-color: #40C8AE;
  /* WriteFile 简洁模式 diff 加/减行：仅用于 write-file 工具渲染器，
     不要复用为全局成功/错误色 */
  --cb-file-op-added-color: #3FB950;
  --cb-file-op-removed-color: #F85149;
  /* ========== 代码高亮颜色 - Dark 主题 (VSCode Dark+) ========== */
  --cb-hljs-comment: #6A9955;
  --cb-hljs-keyword: #569cd6;
  --cb-hljs-string: #ce9178;
  --cb-hljs-number: #b5cea8;
  --cb-hljs-function: #dcdcaa;
  --cb-hljs-variable: #9cdcfe;
  /* ========== 高亮动画 ========== */
  --cb-highlight-blink-gradient: linear-gradient(315deg, #3870CD -15.38%, #A57AF9 109.96%);
  /* ========== 命令执行输出颜色 ========== */
  --cb-command-stdout-color: #DFE1E5;
  /* ========== UI 增强变量 ========== */
  --cb-accent: #343841;
  --cb-accent-hover: #3E434E;
  --cb-success: #4ade80;
  --cb-success-subtle: rgba(74, 222, 128, 0.15);
  --cb-success-glow: #22c55e;
  --cb-error: #ff8a95;
  --cb-error-soft: #ffcdd2;
  --cb-error-bg: rgba(255, 138, 149, 0.08);
  --cb-error-border: rgba(255, 138, 149, 0.15);
  --cb-warning: #fbbf24;
  --cb-info: #60a5fa;
  --cb-text-category-badge: #2563eb;
  --cb-bg-category-badge: rgba(37, 99, 235, 0.08);
  --cb-border-category-badge: rgba(37, 99, 235, 0.16);
  --cb-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --cb-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --cb-glow-success: 0 0 20px rgba(74, 222, 128, 0.3);
  --cb-glow-error: 0 0 15px rgba(255, 138, 149, 0.2);
  --cb-sidebar-background: var(--vscode-sideBar-background);
  /* ========== Tab 标签页相关变量 ========== */
  --cb-tab-background: var(--vscode-tab-inactiveBackground, #2d2d2d);
  --cb-tab-foreground: var(--vscode-tab-inactiveForeground, #969696);
  --cb-tab-active-background: var(--vscode-tab-activeBackground, #1e1e1e);
  --cb-tab-active-foreground: var(--vscode-tab-activeForeground, #ffffff);
  --cb-tab-active-border: var(--vscode-tab-activeBorderTop, #007acc);
  --cb-tab-hover-background: var(--vscode-tab-hoverBackground, #2a2d2e);
  --cb-tab-border: var(--vscode-tab-border, #1e1e1e);
  --cb-tab-header-background: var(--vscode-editorGroupHeader-tabsBackground, #252526);
  --cb-tab-header-border: var(--vscode-editorGroupHeader-tabsBorder, #1e1e1e);
  /* ========== Edition Badge Colors ========== */
  --cb-editionBadge-free-foreground: #ffffff;
  --cb-editionBadge-free-background: #525252;
  --cb-editionBadge-free-border: #525252;
  --cb-editionBadge-pro-foreground: #ffffff;
  --cb-editionBadge-pro-background: #8b5cf6;
  --cb-editionBadge-pro-border: #8b5cf6;
  --cb-editionBadge-ultimate-foreground: #ffffff;
  --cb-editionBadge-ultimate-background: #f43f5e;
  --cb-editionBadge-ultimate-border: #f43f5e;
  --cb-editionBadge-exclusive-foreground: #ffffff;
  --cb-editionBadge-exclusive-background: #f97316;
  --cb-editionBadge-exclusive-border: #f97316;
  /* ========== Plan Action Button ========== */
  --cb-plan-action-btn-background: #ffffffe6;
  --cb-plan-action-btn-foreground: #000000;
  --cb-plan-action-btn-hover-background: #ffffffcc;
  /* ========== 骨架屏相关变量 ========== */
  --cb-skeleton-base: rgba(128, 128, 128, 0.1);
  --cb-skeleton-highlight: rgba(128, 128, 128, 0.2);
  /* ========== 遮罩层相关变量 ========== */
  --cb-overlay-background: rgba(0, 0, 0, 0.5);
  --cb-overlay-loading-spinner: #ffffff;
  --cb-overlay-loading-text: #ffffff;
  /* ========== Update Toast 相关变量 ========== */
  --cb-update-toast-bg: #2a2a2a;
  --cb-update-toast-bg-success: #1a2e26;
  --cb-update-toast-bg-error: #2e1a1a;
  --cb-update-toast-text: #d2d3e0;
  --cb-update-toast-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);
  --cb-update-toast-close-bg: #3c3c3c;
  --cb-update-toast-close-icon: #999;
  --cb-update-toast-close-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  --cb-update-toast-progress-bg: #3c3c3c;
  --cb-update-toast-brand: #4ECBA0;
  --cb-update-toast-brand-hover: #3bb88a;
  --cb-update-toast-error: #e06060;
  --cb-update-toast-btn-solid-text: #fff;
  --cb-update-toast-btn-outline-hover-bg: rgba(78, 203, 160, 0.12);
  /* ========== Settings Panel 相关变量 ========== */
  --cb-section-title-color: #989898;
  --cb-card-label-color: var(--cb-text-primary, #d2d3e0);
  --cb-settings-panel-background: color-mix(in srgb,
      var(--cb-vscode-sideBar-background, #252526) 95%,
      white 5%);
  --cb-card-background: color-mix(in srgb, var(--vscode-foreground) 4%, transparent);
  /* ========== Context Usage By Category 类目色（issue #43577） ========== */
  /* 设计稿颜色：绿 / 橙金 / 紫 / 青 / 蓝，5 色相完全错开。 */
  --cb-cat-system-prompt: #00C29A; /* 绿 */
  --cb-cat-tools: #E7B86D; /* 橙金 */
  --cb-cat-conversation: #835CFF; /* 紫 */
  --cb-cat-mcp: #2FCFE6; /* 青 */
  --cb-cat-skills: #3FB8FF; /* 蓝（深色主题稍亮） */
  /* popover 进度条轨道色：剩余未用部分的灰色背景。
     深色主题用「透明黑」让 track 比 popover 背景更暗（凹陷感），
     与 System Prompt 灰形成强亮度差，明确划出 fill / 剩余的边界。
     旧实现 rgba(255,255,255,0.08) 反而让 track 比 popover 背景更亮，
     在 IDE Night（#313248）上 track 与灰色 System Prompt 视觉融合。 */
  --cb-context-bar-track: rgba(0, 0, 0, 0.3);
  /* popover 卡片专属背景 / 边框：
     不直接覆盖 `--cb-hover-card-bg-color`（避免污染 dropdown / tooltip 等场景），
     单独给 5 类拆分弹层一组 token。值偏「中性近黑」，与 IDE Night 默认的
     `#313248`（带紫调灰）相比更接近 manus 风格的近黑卡片，且不带紫调。 */
  --cb-context-popover-bg: #1f2128;
  --cb-context-popover-border: rgba(255, 255, 255, 0.06);
}

body[data-vscode-theme-name="IDE Night"] {
  --cb-panel-bg-secondary: #313248;
  --cb-button-foreground: #fff;
  --cb-input-border-original: transparent;
  --cb-input-border-primary: #4C4F6B;
  --cb-text-primary: #D2D3E0;
  --chat-input-add-btn-hover-bg-color: rgba(255, 255, 255, 0.1);
  --cb-dropdown-bg-color: var(--cb-vscode-dropdown-background);
  --cb-dropdown-item-hover-bg-color: #313248;
  --cb-hover-card-bg-color: #313248;
  --cb-focus-outline-color: var(--cb-green-color);
  --cb-stroke-secondary: color-mix(in srgb, var(--vscode-foreground) 12%, transparent);
  --cb-mermaid-toggle-active: var(--cb-vscode-button-background, #6c4dff);
}

body[data-vscode-theme-name="IDE Dark"] {
  --cb-panel-bg-primary: #212234;
  --cb-panel-bg-secondary: #313248;
  --cb-button-foreground: #fff;
  --cb-input-border-original: transparent;
  --cb-input-border-primary: #4C4F6B;
  --cb-text-primary: #D2D3E0;
  --cb-input-area-container-secondary: #141414;
  --chat-input-add-btn-hover-bg-color: rgba(255, 255, 255, 0.1);
  --cb-dropdown-bg-color: #313131;
  --cb-dropdown-item-hover-bg-color: #313248;
  --cb-hover-card-bg-color: #313248;
  --cb-focus-outline-color: var(--cb-green-color);
  --cb-vscode-button-hoverBackground: var(--vscode-toolbar-hoverBackground);
  /* Cloud Welcome 登录按钮 */
  --cb-login-btn-bg: #ffffff;
  --cb-login-btn-color: #1a1a1a;
  --cb-login-btn-hover-bg: #e6e6e6;
  --cb-login-btn-active-bg: #cccccc;
}
/**
 * CB Chat UI - Light 主题变量
 *
 * 覆盖 Dark 主题的颜色值
 * 适用于：
 * 1. .light / .cb-light (全局类名)
 * 2. .cbChat.light (组件类名)
 * 3. .cb-tooltip (独立组件)
 */
/* 全局选择器（直接作用于 DOM） */
.light,
.cb-light,
.light .cbChat,
.cb-light .cbChat,
.cbChat.light,
.light .cb-tooltip,
.cb-light .cb-tooltip,
.cb-tooltip.light,
:root.light {
  /* ========== VSCode 主题变量映射 ========== */
  --cb-vscode-editor-background: var(--vscode-editor-background, #ffffff);
  --cb-vscode-sideBar-background: var(--vscode-sideBar-background, #f3f3f3);
  --cb-vscode-input-background: var(--vscode-input-background, #ffffff);
  --cb-vscode-dropdown-background: var(--vscode-dropdown-background, #ffffff);
  --cb-vscode-foreground: var(--vscode-foreground, #333333);
  --cb-vscode-editor-foreground: var(--vscode-editor-foreground, #4c4f69);
  --cb-vscode-titleBar-activeBackground: var(--vscode-titleBar-activeBackground, #dddddd);
  --cb-vscode-titleBar-activeForeground: var(--vscode-titleBar-activeForeground, #333333);
  --cb-vscode-titleBar-inactiveBackground: var(--vscode-titleBar-inactiveBackground, #dddddd);
  --cb-vscode-titleBar-inactiveForeground: var(--vscode-titleBar-inactiveForeground, #666666);
  --cb-titlebar-control-hover-background: rgba(0, 0, 0, 0.06);
  --cb-vscode-descriptionForeground: var(--vscode-descriptionForeground, #717171);
  --cb-vscode-widget-border: var(--vscode-widget-border, #e1e1e1);
  --cb-vscode-panel-border: var(--vscode-panel-border, #e1e1e1);
  --cb-vscode-list-hoverBackground: var(--vscode-list-hoverBackground, #f0f0f0);
  --cb-vscode-toolbar-hoverBackground: var(--vscode-toolbar-hoverBackground, #f0f0f0);
  --cb-vscode-button-background: var(--vscode-button-background, #007acc);
  --cb-vscode-button-foreground: var(--vscode-button-foreground, #ffffff);
  --cb-vscode-button-hoverBackground: var(--vscode-button-hoverBackground, #0062a3);
  --cb-vscode-button-secondaryBackground: var(--vscode-button-secondaryBackground, #5f6a79);
  --cb-vscode-button-secondaryForeground: var(--vscode-button-secondaryForeground, #ffffff);
  --cb-vscode-button-secondaryHoverBackground: var(--vscode-button-secondaryHoverBackground, #4c5561);
  --cb-vscode-scrollbarSlider-background: var(--vscode-scrollbarSlider-background, #c1c1c1);
  --cb-vscode-scrollbarSlider-hoverBackground: var(--vscode-scrollbarSlider-hoverBackground, #a8a8a8);
  --cb-vscode-textLink-foreground: var(--vscode-textLink-foreground, #006ab1);
  --cb-vscode-list-activeSelectionForeground: var(--vscode-list-activeSelectionForeground, #333333);
  --cb-vscode-list-inactiveForeground: var(--vscode-foreground, #616161);
  --cb-vscode-list-inactiveSelectionBackground: var(--vscode-list-inactiveSelectionBackground);
  --cb-vscode-widget-shadow: var(--vscode-widget-shadow, rgba(0, 0, 0, 0.16));
  --cb-vscode-menu-foreground: var(--vscode-menu-foreground, #333333);
  --cb-vscode-menu-separatorBackground: var(--vscode-menu-separatorBackground, #d4d4d4);
  --cb-vscode-menu-border: var(--vscode-menu-border, #d4d4d4);
  --cb-vscode-quickInputList-focusBackground: var(--vscode-quickInputList-focusBackground, #e8e8e8);
  /* ========== 文件树和列表辅助变量 ========== */
  --cb-icon-foreground: var(--cb-vscode-foreground, #333333);
  --cb-list-activeSelectionBackground: var(--cb-vscode-list-activeSelectionBackground, #e1e1e1);
  --cb-list-focusBackground: var(--cb-vscode-list-focusBackground, #e8e8e8);
  --cb-tree-indent-guides-stroke: var(--cb-vscode-tree-indentGuidesStroke, rgba(0, 0, 0, 0.1));
  --cb-focus-outline-color: var(--cb-vscode-focusBorder, #006ab1);
  /* sidebar/tree 中"填充式"叶子项（默认就有底色，不靠 hover）三档语义 */
  --cb-list-item-bg: #F7F7F7;
  --cb-list-item-hover-bg: #EFEFEF;
  --cb-list-item-selected-bg: #E5E5E5;
  /* ========== 滚动条相关 ========== */
  --cb-scrollbar-thumb: var(--cb-vscode-scrollbarSlider-background, rgba(193, 193, 193, 0.4));
  --cb-scrollbar-thumb-hover: var(--cb-vscode-scrollbarSlider-hoverBackground, rgba(168, 168, 168, 0.7));
  /* ========== 列表项颜色（用于 model selector 等） ========== */
  --cb-list-item-foreground: #616161;
  --cb-list-item-selected-foreground: #333333;
  --cb-panel-bg-primary: var(--vscode-editor-background, #ffffff);
  /* 同事 dashboard 页背景（设计稿 ardot 91:1049） */
  --cb-colleagues-dashboard-bg: #FAFAFA;
  /* 同事-云端助理卡片描边（设计稿 #F2F2F2） */
  --cb-colleagues-card-border: #F2F2F2;
  /* 同事-云端助理输入框背景（设计稿 #FAFAFA） */
  --cb-colleagues-prompt-bg: #FAFAFA;
  /* 同事-云端助理 Mode 切换器（旧版/云端 segmented） */
  --cb-colleagues-mode-switch-bg: #F7F7F7;
  --cb-colleagues-mode-switch-active-bg: #00C29A;
  --cb-colleagues-mode-switch-inactive-fg: rgba(0, 0, 0, 0.7);
  --cb-colleagues-mode-switch-active-fg: #FFFFFF;
  /* 同事-云端助理 "手机远程" chip（设计稿 91:1030） */
  --cb-colleagues-remote-chip-bg: #FFFFFF;
  --cb-colleagues-remote-chip-border: #EBEBEB;
  --cb-colleagues-remote-chip-fg: #000000;
  /* 同事卡片相关（设计稿 91:1098） */
  --cb-colleague-card-border: #EBEBEB;
  --cb-colleague-card-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  --cb-colleague-card-status-pill-bg: #F8F8F8;
  --cb-colleague-card-status-pill-fg: rgba(0, 0, 0, 0.9);
  --cb-colleague-card-chat-bg: #F7F7F7;
  --cb-text-link: #006ab1;
  /* ========== 基础颜色系统 ========== */
  --cb-success-color: #28b894;
  --cb-button-primary: #6c4dff;
  --cb-mermaid-toggle-active: var(--cb-vscode-button-background, #007acc);
  --cb-text-primary: #333333;
  --cb-text-secondary: #666666;
  --cb-text-tertiary: #808080;
  --cb-text-muted: rgba(26, 26, 26, 0.6);
  --cb-text-highlight: #266fe8;
  /* 灰阶禁用文本（credit-estimate / installed-plugins 等组件使用），
     light 与 wb 设计稿 --wb-color-text-disabled 对齐 */
  --cb-text-disabled: rgba(0, 0, 0, 0.30);
  /* Fix #33162: 补齐 light 主题下缺失的 --cb-text-quaternary，
     避免回退到 dark 块里 rgba(255,255,255,0.32) 导致白底白字 */
  --cb-text-quaternary: rgba(0, 0, 0, 0.45);
  /* 错误强调（红色）。WorkBuddy 桥接到 --wb-color-text-error-active；
     IDE 纯 cb 场景使用此默认值，避免 black-on-black 风险。 */
  --cb-text-error-active: #B42C3F;
  /* 链接 hover。--cb-text-link 用于 default 状态；hover 单列一档以匹配设计稿 */
  --cb-text-link-hover: #0E58A0;
  /* 实色（最深主文字）。少数高对比场景使用，如品牌强调 */
  --cb-text-solid: #000000;
  /* ========== 背景层级（与 wb 设计稿 primary-hover/active 一致） ========== */
  --cb-bg-primary-hover: #EBEBEB;
  --cb-bg-primary-active: #F2F2F2;
  /* ========== 二级边框（卡片/分隔线，与 wb 设计稿 border-secondary 一致） ========== */
  --cb-border-secondary: #EBEBEB;
  /* ========== 阴影 ========== */
  --cb-shadow-popover: 0 4px 12px -4px rgba(0, 0, 0, 0.04), 0 3px 6px -8px rgba(0, 0, 0, 0.04);
  /* ========== 拖拽指示器（DnD 命中边框） ========== */
  --cb-border-drag-indicator: #1470B4;
  /* ========== 圆角档位（补足 wb 设计稿 250/300 档） ========== */
  --cb-border-radius-xl: 16px;
  --cb-border-radius-2xl: 24px;
  /* ========== 输入框相关 ========== */
  --cb-input-foreground: var(--cb-text-primary);
  --cb-input-background: var(--cb-vscode-input-background);
  --cb-input-border-color: rgba(0, 0, 0, 0.15);
  --cb-input-focus-border-color: rgba(0, 0, 0, 0.5);
  --cb-input-placeholder: var(--cb-text-secondary);
  --cb-input-button-foreground: #333333;
  --cb-input-button-background: #d4d4d4;
  --cb-panel-border-color: color-mix(in srgb, #cccccc 40%, transparent);
  /* 聊天输入区域外层容器 (content) */
  --cb-content-background: color-mix(in srgb, var(--vscode-foreground) 4%, transparent);
  --cb-content-border-color: rgba(0, 0, 0, 0.1);
  /* 主输入区域 (mainArea) - 用户真正打字的地方 */
  --cb-main-area-background: var(--cb-vscode-input-background);
  --cb-main-area-border-color: #E6E6E6;
  --cb-main-area-box-shadow: 0 6px 12px -8px rgba(0, 0, 0, 0.02), 0 2px 4px -4px rgba(0, 0, 0, 0.03);
  /* ========== 标记和标签 ========== */
  --cb-marker-foreground: var(--cb-text-highlight);
  --cb-marker-background: #eaf2ff;
  --cb-tag-background: rgba(0, 0, 0, 0.08);
  --cb-tag-selected-background: rgba(0, 122, 204, 0.2);
  --cb-tag-selected-text: #005a9e;
  /* ========== 弹出层相关 ========== */
  --cb-popover-background: #ffffff;
  --cb-popover-active-background: #f0f0f0;
  --cb-popover-secondary: var(--cb-text-secondary);
  --cb-popover-border: #e5e5e5;
  --cb-popover-divider: #f2f2f2;
  --cb-green-color: #00b96b;
  --cb-input-active-border: var(--cb-green-color);
  --cb-search-input-bg: #f7f7f7;
  --cb-list-item-selected-bg: #f7f7f7;
  --cb-toggle-track-off-bg: rgba(0, 0, 0, 0.06);
  --cb-switch-thumb-bg: #ffffff;
  --cb-avatar-fallback-bg: #d8d8d8;
  --cb-avatar-fallback-fg: #666666;
  --cb-voice-pill-bg: #f7f7f7;
  --cb-voice-text: rgba(0, 0, 0, 0.7);
  --cb-voice-confirm-color: #00c29a;
  --cb-voice-mic-hover-bg: #f2f2f2;
  /* ========== 按钮相关变量 ========== */
  --cb-gray-color: #e8e8e8;
  --cb-mode-switch-background: var(--cb-gray-color);
  --cb-mode-switch-hover-background: rgba(0, 0, 0, 0.05);
  --cb-icon-button-hover-background: rgba(0, 0, 0, 0.05);
  --cb-icon-button-color: #333333;
  --cb-send-button-loading-bg: rgba(0, 0, 0, 0.9);
  --cb-send-button-loading-color: rgba(255, 255, 255, 0.9);
  --cb-button-primary-foreground: #fff;
  --cb-danger-color: #cf222e;
  --cb-button-secondary-background: var(--cb-vscode-button-secondaryBackground, #5f6a79);
  --cb-button-secondary-foreground: var(--cb-vscode-button-secondaryForeground, #ffffff);
  --cb-button-secondary-hover-background: var(--cb-vscode-button-secondaryHoverBackground, #4c5561);
  --cb-button-dark-background: #1a1a1a;
  --cb-button-dark-foreground: #ffffff;
  --cb-button-dark-hover-background: #333333;
  /* ========== Input 相关变量 ========== */
  --chat-input-area-header-font-color: #333;
  --chat-input-add-btn-hover-bg-color: #F0F0F0;
  --cb-border-color: rgba(0, 0, 0, 0.1);
  --cb-border-color-emphasis: rgba(0, 0, 0, 0.05);
  --cb-chat-menu-main-text: #333;
  /* ========== Switch 相关变量 ========== */
  --cb-switch-bg: #ebebeb;
  --cb-switch-active-bg: #00b96b;
  --cb-switch-thumb-light-active: #f59e0b;
  --cb-switch-thumb-dark-active: #6366f1;
  --cb-switch-icon-light-active-color: #333333;
  --cb-switch-icon-dark-active-color: rgba(0, 0, 0, 0.35);
  /* ========== 错误消息相关变量 ========== */
  --cb-error-foreground: #cf222e;
  --cb-input-border-primary: #d0d7de;
  --cb-stroke-secondary: #d8dee4;
  --cb-error-banner-text-color: color-mix(in srgb, var(--cb-text-primary, #333333) 90%, transparent);
  --cb-error-banner-retry-text-color: #ffffff;
  /* ========== Tooltip 相关变量 ========== */
  --cb-dropdown-bg-color: var(--cb-vscode-dropdown-background);
  --cb-dropdown-item-hover-bg-color: var(--cb-vscode-list-hoverBackground);
  --cb-dropdown-border-color: #EBEBEB;
  --cb-dropdown-shadow: 0 4px 12px -4px rgba(0, 0, 0, 0.04), 0 3px 6px -8px rgba(0, 0, 0, 0.04);
  --cb-tooltip-text-color: #000000;
  --cb-tooltip-shadow-color: rgba(0, 0, 0, 0.1);
  --cb-tooltip-bg: rgba(0, 0, 0, 0.70);
  /* ========== 用户消息气泡 ========== */
  --cb-user-bubble-bg: #F2F2F2;
  /* ========== 基础交互变量 ========== */
  --cb-bg-primary: rgba(0, 0, 0, 0.05);
  --cb-bg-secondary: #f5f5f5;
  --cb-team-member-card-background: #f5f5f5;
  --cb-team-member-icon-background: #F5F5F5;
  --cb-search-bg: #f5f5f5;
  --cb-bg-tertiary: #e8e8e8;
  --cb-bg-card: #fafafa;
  --cb-bg-overlay: rgba(255, 255, 255, 0.9);
  --cb-hover-bg: rgba(0, 0, 0, 0.03);
  --cb-secondary-bg: #f6f8fa;
  --cb-sidebar-bg: #f3f3f3;
  --cb-border: #d1d5db;
  --cb-border-bright: #9ca3af;
  /* ========== Markdown 相关变量 ========== */
  --cb-markdown-border-color: #d0d7de;
  --cb-markdown-code-bg-color: rgba(0, 0, 0, 0.05);
  /* Markdown <hr> 边框色，与 wb 设计稿 --wb-color-border-secondary 对齐 */
  --cb-markdown-hr-border-color: #EBEBEB;
  /* Markdown 表格专用 token（按 ardot 设计稿）。
     独立于 --cb-markdown-border-color 避免误伤 katex 等其它引用方。 */
  --cb-markdown-table-border-color: #ebebeb;
  --cb-markdown-table-header-bg: #f7f7f7;
  --cb-markdown-table-cell-bg: #ffffff;
  /* Markdown 代码块专用 token（按 ardot 设计稿 1125:4659）。
     header 浅灰、代码区白底、按钮 hover 浅灰。dark 主题保持 hljs 原色，不在此处强制。 */
  --cb-markdown-code-block-border: #ebebeb;
  --cb-markdown-code-block-header-bg: #f7f7f7;
  --cb-markdown-code-block-bg: #ffffff;
  --cb-markdown-code-block-title-fg: rgba(0, 0, 0, 0.9);
  --cb-markdown-code-block-action-fg: rgba(0, 0, 0, 0.7);
  --cb-markdown-code-block-action-hover-bg: rgba(0, 0, 0, 0.04);
  --cb-markdown-hljs-color: var(--cb-vscode-editor-foreground);
  --cb-markdown-symbol-color: #1470B4;
  --cb-markdown-symbol-background: #E9EEF2;
  --cb-markdown-symbol-hover-background: rgba(0, 122, 204, 0.20);
  /* ========== Reasoning 内容变量 ========== */
  --cb-reasoning-bg: rgba(0, 0, 0, 0.03);
  --cb-reasoning-border-color: #EBEBEB;
  --cb-reasoning-font-color: #666;
  /* ========== 状态指示器颜色 ========== */
  --cb-integration-status-disconnected: #999;
  --cb-integration-status-connected: #2ea043;
  --cb-toggle-inactive-bg: #d9d9d9;
  --cb-toggle-active-bg: #0078d4;
  --cb-toggle-slider-color: white;
  /* ========== 文件操作颜色 ========== */
  --cb-file-status-color: #666666;
  --cb-diff-removed-color: #cf222e;
  --cb-diff-added-color: #2ea043;
  --cb-status-success-color: #2ea043;
  --cb-status-pending-color: #d97706;
  /* ========== 图标颜色 ========== */
  --cb-icon-failed-color: #cf222e;
  --cb-icon-refused-color: #dc2626;
  --cb-icon-accepted-color: #059669;
  --cb-checkpoint-arrow-color: #666;
  /* ========== Toast 和反馈 ========== */
  --cb-toast-success-color: #10b981;
  --cb-toast-error-color: #ef4444;
  --cb-status-accept-color: #10b981;
  --cb-status-reject-color: #dc2626;
  --cb-feedback-item-active-bg: rgba(0, 0, 0, 0.05);
  /* ========== 文件操作类型颜色 ========== */
  --cb-file-op-modify-color: #d97706;
  --cb-file-op-read-color: #6b7280;
  --cb-file-op-write-color: #10b981;
  /* WriteFile 简洁模式 diff 加/减行：仅用于 write-file 工具渲染器，
     不要复用为全局成功/错误色 */
  --cb-file-op-added-color: #088F50;
  --cb-file-op-removed-color: #B42C3F;
  /* ========== 代码高亮颜色 - Light 主题 (VSCode Light+) ========== */
  --cb-hljs-comment: #008000;
  --cb-hljs-keyword: #0000ff;
  --cb-hljs-string: #a31515;
  --cb-hljs-number: #098658;
  --cb-hljs-function: #795e26;
  --cb-hljs-variable: #001080;
  /* ========== 高亮动画 ========== */
  --cb-highlight-blink-gradient: linear-gradient(315deg, #60a5fa -15.38%, #c084fc 109.96%);
  /* ========== Edition Badge Colors ========== */
  --cb-editionBadge-free-foreground: #ffffff;
  --cb-editionBadge-free-background: #737373;
  --cb-editionBadge-free-border: #737373;
  --cb-editionBadge-pro-foreground: #ffffff;
  --cb-editionBadge-pro-background: #7c3aed;
  --cb-editionBadge-pro-border: #7c3aed;
  --cb-editionBadge-ultimate-foreground: #ffffff;
  --cb-editionBadge-ultimate-background: #e11d48;
  --cb-editionBadge-ultimate-border: #e11d48;
  --cb-editionBadge-exclusive-foreground: #ffffff;
  --cb-editionBadge-exclusive-background: #ea580c;
  --cb-editionBadge-exclusive-border: #ea580c;
  /* ========== Plan Action Button ========== */
  --cb-plan-action-btn-background: #000000;
  --cb-plan-action-btn-foreground: #ffffff;
  --cb-plan-action-btn-hover-background: #5b3de8;
  /* ========== Account Panel Variables ========== */
  --cb-account-button-background: #f0f0f0;
  --cb-account-button-hover-background: #e0e0e0;
  --cb-account-button-foreground: #333333;
  /* ========== 命令执行输出颜色 ========== */
  --cb-command-stdout-color: #494B57;
  /* ========== UI 增强变量 ========== */
  --cb-accent: #3b82f6;
  --cb-accent-hover: #2563eb;
  --cb-success: #10b981;
  --cb-success-subtle: rgba(16, 185, 129, 0.12);
  --cb-success-glow: #059669;
  --cb-error: #ef4444;
  --cb-error-soft: #fee2e2;
  --cb-error-bg: rgba(239, 68, 68, 0.08);
  --cb-error-border: rgba(239, 68, 68, 0.15);
  --cb-warning: #f59e0b;
  --cb-info: #3b82f6;
  --cb-text-category-badge: #2563eb;
  --cb-bg-category-badge: rgba(37, 99, 235, 0.08);
  --cb-border-category-badge: rgba(37, 99, 235, 0.16);
  --cb-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
  --cb-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --cb-glow-success: 0 0 20px rgba(16, 185, 129, 0.2);
  --cb-glow-error: 0 0 15px rgba(239, 68, 68, 0.2);
  /* ========== Agent UI 兼容变量 ========== */
  --cb-bg-color-container: var(--cb-vscode-editor-background, #ffffff);
  --cb-text-color-secondary: var(--cb-text-secondary, #666666);
  --cb-text-color-error: var(--cb-error-foreground, #cf222e);
  --cb-modal-background: rgb(232, 232, 232);
  /* ========== Settings Panel 相关变量 ========== */
  --cb-section-title-color: #666666;
  --cb-card-label-color: #000000;
  --cb-settings-panel-background: color-mix(in srgb,
      var(--cb-vscode-sideBar-background, #f3f3f3) 95%,
      black 5%);
  --cb-card-background: color-mix(in srgb,
      var(--cb-vscode-sideBar-background, #f3f3f3) 80%,
      white 20%);
  /* ========== 骨架屏相关变量 ========== */
  --cb-skeleton-base: #e8e8e8;
  --cb-skeleton-highlight: #f5f5f5;
  /* ========== 遮罩层相关变量 ========== */
  --cb-overlay-background: rgba(255, 255, 255, 0.7);
  --cb-overlay-loading-spinner: #333333;
  --cb-overlay-loading-text: #333333;
  /* ========== Update Toast 相关变量 ========== */
  --cb-update-toast-bg: #ffffff;
  --cb-update-toast-bg-success: #f4fbf8;
  --cb-update-toast-bg-error: #fdf6f6;
  --cb-update-toast-text: #1d1d1f;
  --cb-update-toast-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
  --cb-update-toast-close-bg: #fff;
  --cb-update-toast-close-icon: #666;
  --cb-update-toast-close-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
  --cb-update-toast-progress-bg: #e5e5e5;
  --cb-update-toast-brand: #4ECBA0;
  --cb-update-toast-brand-hover: #3bb88a;
  --cb-update-toast-error: #e06060;
  --cb-update-toast-btn-solid-text: #fff;
  --cb-update-toast-btn-outline-hover-bg: rgba(78, 203, 160, 0.08);
  /* Cloud Welcome 登录按钮 */
  --cb-login-btn-bg: #1a1a1a;
  --cb-login-btn-color: #ffffff;
  --cb-login-btn-hover-bg: #333333;
  --cb-login-btn-active-bg: #000000;
  --cb-sidebar-background: var(--vscode-sideBar-background);
  /* ========== Question Floating 浮层问答相关变量 ========== */
  --cb-question-floating-card-bg: #ffffff;
  --cb-question-floating-card-border: #e6e6e6;
  --cb-question-floating-text-primary: rgba(0, 0, 0, 0.9);
  --cb-question-floating-text-secondary: rgba(0, 0, 0, 0.7);
  --cb-question-floating-text-muted: rgba(0, 0, 0, 0.5);
  --cb-question-floating-text-faint: rgba(0, 0, 0, 0.3);
  --cb-question-floating-text-strong: rgba(0, 0, 0, 0.9);
  --cb-question-floating-divider: rgba(0, 0, 0, 0.08);
  --cb-question-floating-scrollbar-thumb: rgba(0, 0, 0, 0.15);
  --cb-question-floating-hover-bg: #f2f2f2;
  --cb-question-floating-number-bg: #f2f2f2;
  --cb-question-floating-number-active-bg: #ffffff;
  --cb-question-floating-skip-bg: #f2f2f2;
  --cb-question-floating-skip-fg: var(--cb-question-floating-text-primary);
  --cb-question-floating-icon-active-bg: rgba(0, 0, 0, 0.85);
  --cb-question-floating-icon-active-fg: #ffffff;
  --cb-question-floating-icon-active-bg-hover: rgba(0, 0, 0, 0.95);
  --cb-question-floating-icon-active-bg-active: #000000;
  /* checkbox（light：维持设计稿 ardot 黑底白勾规格，零视觉变化） */
  --cb-question-floating-checkbox-border: rgba(0, 0, 0, 0.25);
  --cb-question-floating-checkbox-bg: transparent;
  --cb-question-floating-checkbox-checked-bg: rgba(0, 0, 0, 0.85);
  --cb-question-floating-checkbox-check-mark: #ffffff;
  /* ========== Context Usage By Category 类目色（浅色主题） ========== */
  /* 设计稿颜色：绿 / 橙金 / 紫 / 青 / 蓝，5 色相完全错开。 */
  --cb-cat-system-prompt: #00C29A; /* 绿 */
  --cb-cat-tools: #E7B86D; /* 橙金 */
  --cb-cat-conversation: #835CFF; /* 紫 */
  --cb-cat-mcp: #2FCFE6; /* 青 */
  --cb-cat-skills: #5184FF; /* 蓝 */
  /* popover 进度条轨道色（剩余未用部分） */
  --cb-context-bar-track: rgba(0, 0, 0, 0.08);
  /* popover 卡片专属背景 / 边框（与 dark 主题成对，避免污染通用 hover-card 场景） */
  --cb-context-popover-bg: #ffffff;
  --cb-context-popover-border: rgba(0, 0, 0, 0.08);
  /* popover 卡片底色：浅色主题默认作用域下，旧实现没定义会落到 dark 兜底色。
     这里显式给白底，并适当加深阴影。 */
  --cb-hover-card-bg-color: #ffffff;
}

:root body[data-vscode-theme-name="IDE Light"] {
  --cb-button-foreground: #fff;
  --cb-input-border-original: transparent;
  --cb-dropdown-bg-color: #fff;
  --cb-dropdown-item-hover-bg-color: #f2f2f2;
  --cb-hover-card-bg-color: #dddddd;
  --cb-focus-outline-color: var(--cb-green-color);
  --cb-vscode-button-hoverBackground: var(--vscode-toolbar-hoverBackground);
  /* Cloud Welcome 登录按钮 */
  --cb-login-btn-bg: #1a1a1a;
  --cb-login-btn-color: #ffffff;
  --cb-login-btn-hover-bg: #333333;
  --cb-login-btn-active-bg: #000000;
}
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes _cb-shining-text-sweep_14nyt_1 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
._cb-shining-text_14nyt_60 {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_14nyt_1 2.2s linear infinite;
}
._chatMessageContainer_14nyt_72 {
  position: relative;
  justify-content: space-between;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  min-height: 0;
  color: var(--cb-text-primary, var(--cb-vscode-foreground, #cccccc));
  --cb-separator-indent-left: 4px;
  --cb-separator-indent-right: 16px;
  --cb-assistant-inline-padding: 12px;
}
._chatMessageContainer_14nyt_72 ._avatarWrapper_14nyt_86 {
  width: 100%;
  box-sizing: border-box;
  padding: 0 var(--cb-assistant-inline-padding, 12px);
  display: flex;
  align-items: center;
  position: relative;
}
._chatMessageContainer_14nyt_72 ._assistantCreateTime_14nyt_94 {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-tertiary, #999);
  white-space: nowrap;
  align-self: center;
  margin-bottom: 12px;
  margin-left: 4px;
}
._chatMessage_14nyt_72 {
  flex-grow: 1;
  height: 100%;
  position: relative;
  scrollbar-color: transparent transparent;
  scrollbar-width: var(--cb-scrollbar-width, thin);
}
._chatMessage_14nyt_72:hover {
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
}
._chatMessage_14nyt_72 ._chatMessageBox_14nyt_114 {
  padding-left: 8px;
  padding-right: calc(8px - (100vw - 100%));
  max-width: var(--cb-chat-max-content-width, none);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
._messageTimelineEmpty_14nyt_123 {
  text-align: center;
  color: var(--cb-vscode-descriptionForeground);
  margin-top: 50px;
  font-size: 13px;
}
._messagePrefix_14nyt_130 {
  position: absolute;
  left: 8px;
  top: 32px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
}
._systemMessageWithPrefix_14nyt_142 {
  position: relative;
}
._systemMessageWithPrefix_14nyt_142 ._messagePrefix_14nyt_130 {
  top: 12px;
}
._userMessage_14nyt_149 {
  padding: var(--cb-user-message-padding, 32px var(--cb-separator-indent-right, 16px));
  position: relative;
}
._userMessage_14nyt_149 ._userMessageText_14nyt_153 {
  white-space: pre-wrap;
  word-wrap: break-word;
}
._userMessage_14nyt_149 ._userMessageText_14nyt_153 [class*="editable"] {
  font-size: 14px;
}
._userMessage_14nyt_149 ._marker_14nyt_160 {
  background: var(--cb-marker-bg, var(--cb-vscode-chat-slashCommandBackground));
  color: var(--cb-marker-color, var(--cb-vscode-chat-slashCommandForeground));
  border-radius: 2px;
  padding: 0 2px;
}
._userMessage_14nyt_149 ._userMessageInput_14nyt_166 {
  position: relative;
  z-index: 1200;
}
._userMessage_14nyt_149._summaryUserMessage_14nyt_170 {
  padding: 0;
  margin-bottom: 12px;
}
._cbFlex_14nyt_175 {
  display: flex;
  width: 100%;
}
._cbFlexRowReverse_14nyt_180 {
  flex-direction: row-reverse;
}
._assistantRow_14nyt_184 {
  display: flex;
  align-items: flex-start;
  width: 100%;
  box-sizing: border-box;
}
._assistantRow_14nyt_184 > ._assistantMessage_14nyt_190 {
  flex: 1 1 auto;
  min-width: 0;
}
._assistantMessage_14nyt_190 {
  padding: 0 var(--cb-assistant-inline-padding, 12px);
  position: relative;
}
._assistantMessage_14nyt_190:hover .cb-message-time-tip {
  opacity: 1;
}
._assistantMessage_14nyt_190 ._assistantMessageContent_14nyt_202 {
  font-size: 13px;
  line-height: 19px;
  overflow: hidden;
}
._assistantMessage_14nyt_190 ._assistantTextContent_14nyt_207 {
  width: var(--cb-assistant-bubble-width, auto);
  max-width: var(--cb-assistant-bubble-max-width, none);
  padding: var(--cb-assistant-bubble-padding, 0);
  border-radius: var(--cb-assistant-bubble-radius, 0);
  background: var(--cb-assistant-bubble-bg, transparent);
  color: var(--cb-assistant-bubble-color, var(--cb-vscode-foreground, #cccccc));
  margin: 0;
}
._assistantMessage_14nyt_190 ._assistantTextContent_14nyt_207:not(:last-child) {
  padding: 12px 0;
}
._assistantMessage_14nyt_190 ._assistantTextContent_14nyt_207:last-child {
  padding-bottom: var(--cb-assistant-bubble-last-padding-bottom, 0);
}
._assistantMessage_14nyt_190 ._assistantTextContent_14nyt_207:empty {
  padding-bottom: 0;
}
.group-messages:has(.avatar-container.avatar-expanded) ._assistantTextContent_14nyt_207:last-child {
  padding-top: 12px;
}
._toolCallContent_14nyt_230 {
  margin: 12px 0;
  border-radius: 4px;
  border: 1px solid var(--cb-input-border-primary, #454545);
  overflow: hidden;
  font-size: 12px;
}
._toolCallContent_14nyt_230 ._toolCallHeader_14nyt_237 {
  padding: 8px 12px;
  line-height: 16px;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
  font-size: 12px;
  font-weight: 600;
  color: var(--cb-text-primary, #cccccc);
  display: flex;
  align-items: center;
  gap: 4px;
}
._toolCallContent_14nyt_230 ._toolCallBody_14nyt_248 {
  padding: 8px 12px;
  background-color: var(--cb-vscode-sideBar-background);
}
._toolCallContent_14nyt_230 ._toolCallBody_14nyt_248 ._toolCallSection_14nyt_252 {
  margin-bottom: 8px;
}
._toolCallContent_14nyt_230 ._toolCallBody_14nyt_248 ._toolCallSection_14nyt_252:last-child {
  margin-bottom: 0;
}
._toolCallContent_14nyt_230 ._toolCallBody_14nyt_248 ._toolCallSection_14nyt_252 ._toolCallSectionTitle_14nyt_258 {
  font-size: 11px;
  font-weight: 600;
  color: var(--cb-text-secondary, #999);
  margin-bottom: 4px;
}
._toolCallContent_14nyt_230 ._toolCallArgs_14nyt_264 {
  font-size: 12px;
  color: var(--cb-vscode-foreground, #cccccc);
  margin: 0;
  padding: 8px;
  background: var(--cb-vscode-editor-background, #1e1e1e);
  border-radius: 4px;
  white-space: pre-wrap;
  word-wrap: break-word;
  font-family: var(--cb-vscode-editor-font-family);
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
}
._loadingText_14nyt_279 {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_14nyt_1 2.2s linear infinite;
}
._chatMessageBottomToolbarWrapper_14nyt_291 {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 0;
  max-width: var(--cb-chat-max-content-width, none);
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  pointer-events: none;
}
._chatMessageBottomToolbar_14nyt_291 {
  display: none;
  position: absolute;
  z-index: 20;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  pointer-events: all;
}
._chatMessageBottomToolbar_14nyt_291 ._chatMessageBottomToolbarItem_14nyt_313 {
  display: flex;
  width: 32px;
  height: 32px;
  background: var(--cb-panel-bg-primary, #fff);
  border-radius: var(--cb-border-radius-2xl, 24px);
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.04), 0px 3px 6px 0px rgba(0, 0, 0, 0.04);
  cursor: pointer;
  justify-content: center;
  align-items: center;
  transition: background-color 0.2s ease;
}
._chatMessageBottomToolbar_14nyt_291 ._chatMessageBottomToolbarItem_14nyt_313:hover {
  box-shadow: 0px 6px 12px -4px rgba(0, 0, 0, 0.0784313725), 0px 3px 6px -8px rgba(0, 0, 0, 0.0392156863);
}
._chatMessageBottomToolbar_14nyt_291 ._chatMessageBottomToolbarItem_14nyt_313 ._chatMessageBottomToolbarIcon_14nyt_328 {
  width: 16px;
  height: 16px;
  color: var(--cb-text-primary, #333);
}
._show_14nyt_334 {
  display: flex !important;
}
._grayMessage_14nyt_338 {
  opacity: 0.8;
  filter: grayscale(70%);
  pointer-events: none;
}
._grayMessage_14nyt_338 * {
  opacity: 0.8;
  filter: grayscale(70%);
  pointer-events: none;
}
._grayMessage_14nyt_338 .cb-checkpoint-actions,
._grayMessage_14nyt_338 .cb-checkpoint-actions *,
._grayMessage_14nyt_338 .cb-restore-button-container,
._grayMessage_14nyt_338 .cb-restore-button-container * {
  opacity: 1;
  filter: none;
  pointer-events: auto;
}
._cancelledIndicator_14nyt_357 {
  color: var(--cb-text-tertiary, #a0a0a0);
}
._cancelledIndicator_14nyt_357 * {
  color: var(--cb-text-tertiary, #a0a0a0);
}
._cancelledIndicator_14nyt_357 .markdown {
  color: var(--cb-text-tertiary, #a0a0a0);
}
._loadMoreIndicator_14nyt_367 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 16px;
  color: var(--cb-text-secondary, #999);
  font-size: 12px;
}
._loadMoreSpinner_14nyt_377 {
  width: 14px;
  height: 14px;
  border: 2px solid var(--cb-border-color, #454545);
  border-top-color: var(--cb-text-secondary, #999);
  border-radius: 50%;
  animation: _spin_14nyt_1 0.8s linear infinite;
}
@keyframes _spin_14nyt_1 {
  to {
    transform: rotate(360deg);
  }
}
._yuanbaoIcon_14nyt_391 {
  flex-shrink: 0;
  border-radius: 2px;
}
._yuanbaoSearchHint_14nyt_396 {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 8px;
  padding: 4px 8px;
  border-radius: 6px;
  font-size: 12px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground, #999));
  background-color: var(--cb-vscode-sideBar-background, var(--vscode-sideBar-background));
  border: 1px solid var(--cb-input-border-primary, var(--vscode-panel-border, rgba(128, 128, 128, 0.2)));
  width: fit-content;
}
._yuanbaoSearchHintBrand_14nyt_410 {
  font-weight: 500;
  color: var(--cb-text-primary, var(--vscode-foreground, #ccc));
}
._yuanbaoSearchHintDesc_14nyt_415 {
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground, #999));
}
._yuanbaoViewMoreBrand_14nyt_419 {
  font-weight: 500;
  color: var(--cb-text-primary, var(--vscode-foreground, #ccc));
}
._yuanbaoSearchTechSupport_14nyt_424 {
  font-weight: 500;
  color: var(--cb-text-primary, var(--vscode-foreground, #ccc));
}
._yuanbaoViewMoreLink_14nyt_429 {
  margin-left: 2px;
  cursor: pointer;
}
._yuanbaoViewMoreLink_14nyt_429:hover {
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground, #999));
}
._yuanbaoViewMoreArrow_14nyt_437 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transform: rotate(-90deg);
  transition: color 0.16s ease;
}
._yuanbaoViewMoreButton_14nyt_445 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-tertiary, var(--vscode-descriptionForeground, #888));
  cursor: pointer;
  user-select: none;
  outline: none;
  transition: color 0.16s ease;
}
._yuanbaoViewMoreButton_14nyt_445:hover, ._yuanbaoViewMoreButton_14nyt_445:focus-visible {
  color: var(--cb-text-primary, var(--vscode-foreground, #d2d3e0));
}
._compactLimitReachedHint_14nyt_461 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--cb-text-tertiary, var(--vscode-descriptionForeground, #888));
  user-select: none;
}
._loadingWithCredit_14nyt_470 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: min(100%, 760px);
  overflow: hidden;
}
._loadingWithCredit_14nyt_470 > :first-child {
  flex: 0 0 auto;
  width: auto;
  min-width: max-content;
}
._loadingWithCredit_14nyt_470 .cb-credit-usage-text {
  flex: 0 0 auto;
  min-width: 96px;
  justify-content: flex-end;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
._loadingWithCredit_14nyt_470 .cb-loading-tip--trailing {
  flex: 1 1 auto;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.group-messages:has(.cb-assistant-message:hover) .cb-credit-usage-text--feedback {
  opacity: 1;
}
.group-messages:has(.cb-assistant-message:hover) .cb-message-time-tip {
  opacity: 1;
}
/**
 * 用户消息工具栏样式
 */
._userMessageToolbar_n89jm_5 {
  position: absolute;
  right: 0;
  top: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  margin: 0;
  padding-top: 4px;
}
._userMessageToolbar--hasAlwaysVisible_n89jm_18 {
  opacity: 1;
}
._userMessageToolbar--hasAlwaysVisible_n89jm_18 ._userMessageToolbar__action_n89jm_21:not(._userMessageToolbar__action--alwaysVisible_n89jm_21) {
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}
._userMessageToolbar__action_n89jm_21 {
  width: 14px;
  height: 14px;
  color: var(--cb-text-secondary, #666);
  cursor: pointer;
}
._userMessageToolbar__action_n89jm_21 svg {
  width: 14px;
  height: 14px;
}
._userMessageToolbar__action_n89jm_21:hover {
  color: var(--cb-text-primary, #333);
  background-color: var(--cb-bg-hover, rgba(0, 0, 0, 0.05));
}
._userMessageToolbar__action_n89jm_21:active {
  background-color: var(--cb-bg-active, rgba(0, 0, 0, 0.1));
}
._userMessageToolbar__action--primary_n89jm_42 {
  color: var(--cb-primary, #007bff);
}
._userMessageToolbar__action--primary_n89jm_42:hover {
  color: var(--cb-primary-hover, #0056b3);
}
._userMessageToolbar__action--secondary_n89jm_48 {
  color: var(--cb-text-secondary, #666) !important;
}
._userMessageToolbar__action--danger_n89jm_51 {
  color: var(--cb-danger, #dc3545);
}
._userMessageToolbar__action--danger_n89jm_51:hover {
  color: var(--cb-danger-hover, #c82333);
}
._userMessageToolbar__action--alwaysVisible_n89jm_21 {
  opacity: 1 !important;
}

/**
 * 用户消息包装器
 * 用于组合消息气泡和工具栏
 * 
 * 布局逻辑：
 * - width: fit-content 让容器根据内容自适应宽度
 * - max-width: 100% 确保不会超出父容器
 */
._userMessageWrapper_n89jm_69 {
  position: relative;
  display: flex;
  flex-direction: column;
  width: fit-content;
  max-width: calc(100% - 32px);
  min-width: 40px;
  padding-bottom: 4px;
}
._userMessageWrapper_n89jm_69:hover ._userMessageToolbar_n89jm_5 {
  opacity: 1;
}
._userMessageWrapper_n89jm_69:hover ._userMessageToolbar_n89jm_5 ._userMessageToolbar__action_n89jm_21 {
  opacity: 1;
}
._userMessageWrapper_n89jm_69:hover ._userMessageToolbar_n89jm_5 .cb-message-time-tip {
  opacity: 1;
  display: inline-flex;
}
._userMessageWrapper--editing_n89jm_88 {
  width: 100%;
  max-width: 100%;
  margin-left: 0;
}
._userMessageWrapper--summary_n89jm_93 {
  margin-left: 0;
  margin-right: auto;
}@font-face {
  font-family: "seti";
  src: url("./seti-54p1M4PM.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
.icon-base-pseudo, .icon-blade:before, .icon-django-html:before, .icon-postcss:before, .icon-jsonl:before, .icon-terraform:before, .icon-stylus:before, .icon-rescript:before, .icon-ocaml:before, .icon-kotlin:before, .icon-haxe:before, .icon-haskell:before, .icon-elixir:before, .icon-dockercompose:before,
.icon-docker-compose:before, .icon-yaml:before, .icon-xml:before, .icon-typescriptreact:before, .icon-typescript:before, .icon-swift:before, .icon-sql:before, .icon-shellscript:before, .icon-search-result:before, .icon-scss:before, .icon-rust:before, .icon-ruby:before, .icon-razor:before, .icon-python:before, .icon-powershell:before, .icon-php:before, .icon-perl:before, .icon-objective-cpp:before, .icon-objective-c:before, .icon-markdown:before, .icon-makefile:before, .icon-lua:before, .icon-less:before, .icon-latex:before, .icon-tex:before, .icon-julia:before, .icon-javascript:before, .icon-javascriptreact:before, .icon-java:before, .icon-properties:before, .icon-html:before, .icon-handlebars:before, .icon-groovy:before, .icon-go:before, .icon-git-commit:before, .icon-fsharp:before, .icon-ignore:before,
.icon-gitignore:before, .icon-dockerfile:before, .icon-dart:before, .icon-css:before, .icon-csharp:before, .icon-cuda-cpp:before, .icon-cpp:before, .icon-c:before, .icon-json:before, .icon-jsonc:before, .icon-coffeescript:before, .icon-clojure:before, .icon-bat:before, .icon-todo.md:before, .icon-todo.txt:before, .icon-todo:before, .icon-procfile:before, .icon-cmakelists.txt:before, .icon-omakefile:before, .icon-qmakefile:before, .icon-contributing.md:before, .icon-contributing.txt:before, .icon-contributing:before, .icon-compiling.md:before, .icon-compiling.txt:before, .icon-compiling:before, .icon-copying.md:before, .icon-copying.txt:before, .icon-copying:before, .icon-licence.md:before, .icon-license.md:before, .icon-licence.txt:before, .icon-license.txt:before, .icon-licence:before, .icon-license:before, .icon-webpack.prod.ts:before, .icon-webpack.prod.mjs:before, .icon-webpack.prod.cjs:before, .icon-webpack.prod.js:before, .icon-webpack.dev.ts:before, .icon-webpack.dev.mjs:before, .icon-webpack.dev.cjs:before, .icon-webpack.dev.js:before, .icon-webpack.common.ts:before, .icon-webpack.common.mjs:before, .icon-webpack.common.cjs:before, .icon-webpack.common.js:before, .icon-webpack.config.build.ts:before, .icon-webpack.config.build.mjs:before, .icon-webpack.config.build.cjs:before, .icon-webpack.config.build.js:before, .icon-webpack.config.ts:before, .icon-webpack.config.mjs:before, .icon-webpack.config.cjs:before, .icon-webpack.config.js:before, .icon-yarn.lock:before, .icon-yarn.clean:before, .icon-stylelint.config.mjs:before, .icon-stylelint.config.cjs:before, .icon-stylelint.config.js:before, .icon-sass-lint.yml:before, .icon-rollup.config.js:before, .icon-platformio.ini:before, .icon-ionic.project:before, .icon-ionic.config.json:before, .icon-gulpfile.js:before, .icon-gulpfile:before, .icon-gruntfile.coffee:before, .icon-gruntfile.babel.js:before, .icon-gruntfile.js:before, .icon-geckodriver:before, .icon-firebase.json:before, .icon-eslint.config.js:before, .icon-docker-healthcheck:before, .icon-bower.json:before, .icon-workspace.bazel:before, .icon-build.bazel:before, .icon-babel.config.cjs:before, .icon-babel.config.json:before, .icon-babel.config.js:before, .icon-jenkinsfile:before, .icon-mime.types:before, .icon-swagger.yaml:before, .icon-swagger.yml:before, .icon-swagger.json:before, .icon-vite.config.cts:before, .icon-vite.config.cjs:before, .icon-vite.config.mts:before, .icon-vite.config.mjs:before, .icon-vite.config.ts:before, .icon-vite.config.js:before, .icon-tsconfig.json:before, .icon-pom.xml:before, .icon-mvnw:before, .icon-version:before, .icon-version.txt:before, .icon-version.md:before, .icon-changes:before, .icon-changes.txt:before, .icon-changes.md:before, .icon-changelog:before, .icon-changelog.txt:before, .icon-changelog.md:before, .icon-readme:before, .icon-readme.txt:before, .icon-readme.md:before, .icon-karma.conf.coffee:before, .icon-karma.conf.mjs:before, .icon-karma.conf.cjs:before, .icon-karma.conf.js:before, .icon-mix:before, .icon-ds_store:before, .icon-pem:before, .icon-crt:before, .icon-cer:before, .icon-cert:before, .icon-key:before, .icon-htaccess:before, .icon-tmp:before, .icon-slugignore:before, .icon-static:before, .icon-env:before, .icon-direnv:before, .icon-stylelintignore:before, .icon-stylelintrc.js:before, .icon-stylelintrc.yml:before, .icon-stylelintrc.yaml:before, .icon-stylelintrc.json:before, .icon-stylelintrc:before, .icon-jscsrc:before, .icon-jshintrc:before, .icon-gitlab-ci.yml:before, .icon-firebaserc:before, .icon-eslintignore:before, .icon-eslintrc.json:before, .icon-eslintrc.yml:before, .icon-eslintrc.yaml:before, .icon-eslintrc.cjs:before, .icon-eslintrc.js:before, .icon-eslintrc:before, .icon-codeclimate.yml:before, .icon-dockerignore:before, .icon-bowerrc:before, .icon-bazelrc:before, .icon-babelrc.cjs:before, .icon-babelrc.js:before, .icon-babelrc:before, .icon-dae:before, .icon-obj:before, .icon-stl:before, .icon-3dm:before, .icon-3ds:before, .icon-flac:before, .icon-wav:before, .icon-aac:before, .icon-ogg:before, .icon-mp3:before, .icon-mp4:before, .icon-mpg:before, .icon-avi:before, .icon-webm:before, .icon-ogv:before, .icon-mov:before, .icon-sublime-workspace:before, .icon-sublime-project:before, .icon-excalidraw:before, .icon-dio:before, .icon-drawio:before, .icon-bmp:before, .icon-webp:before, .icon-tiff:before, .icon-svgx:before, .icon-svg:before, .icon-pxm:before, .icon-png:before, .icon-jpeg:before, .icon-jpg:before, .icon-gif:before, .icon-avif:before, .icon-otf:before, .icon-woff2:before, .icon-woff:before, .icon-ttf:before, .icon-eot:before, .icon-pdf:before, .icon-psd:before, .icon-ai:before, .icon-wgt:before, .icon-zip:before, .icon-jar:before, .icon-zig:before, .icon-pro:before, .icon-wat:before, .icon-wasm:before, .icon-vue:before, .icon-component:before, .icon-vapi:before, .icon-vala:before, .icon-test.ts:before, .icon-spec.ts:before, .icon-twig:before, .icon-toml:before, .icon-ins:before, .icon-dtx:before, .icon-tfvars.json:before, .icon-tfvars:before, .icon-tf.json:before, .icon-tf:before, .icon-soql:before, .icon-svelte:before, .icon-styl:before, .icon-sol:before, .icon-scala:before, .icon-sbt:before, .icon-tpl:before, .icon-smarty.tpl:before, .icon-slim:before, .icon-springbeans:before, .icon-sass:before, .icon-html.erb:before, .icon-erb.html:before, .icon-erb:before, .icon-rmd:before, .icon-r:before, .icon-resi:before, .icon-res:before, .icon-re:before, .icon-test.tsx:before, .icon-spec.tsx:before, .icon-cjsx:before, .icon-test.jsx:before, .icon-spec.jsx:before, .icon-purs:before, .icon-epp:before, .icon-pp:before, .icon-prisma:before, .icon-happenings:before, .icon-plan:before, .icon-pddl:before, .icon-pipeline:before, .icon-php.inc:before, .icon-odata:before, .icon-cmxa:before, .icon-cmx:before, .icon-mli:before, .icon-ml:before, .icon-npmrc:before, .icon-npmignore:before, .icon-npm-debug.log:before, .icon-nj:before, .icon-njs:before, .icon-nunj:before, .icon-nunjs:before, .icon-nunjucks:before, .icon-njk:before, .icon-ipynb:before, .icon-github-issues:before, .icon-nims:before, .icon-nim:before, .icon-stache:before, .icon-mustache:before, .icon-ad:before, .icon-argdown:before, .icon-ls:before, .icon-liquid:before, .icon-kts:before, .icon-kt:before, .icon-jinja2:before, .icon-jinja:before, .icon-es7:before, .icon-es5:before, .icon-es:before, .icon-test.mjs:before, .icon-test.cjs:before, .icon-test.js:before, .icon-spec.mjs:before, .icon-spec.cjs:before, .icon-spec.js:before, .icon-mjs.map:before, .icon-cjs.map:before, .icon-js.map:before, .icon-classpath:before, .icon-class:before, .icon-jade:before, .icon-hxml:before, .icon-hxp:before, .icon-hxs:before, .icon-hx:before, .icon-lhs:before, .icon-hs:before, .icon-haml:before, .icon-hack:before, .icon-graphqls:before, .icon-graphql:before, .icon-gql:before, .icon-gsp:before, .icon-gradle:before, .icon-tscn:before, .icon-tres:before, .icon-godot:before, .icon-gd:before, .icon-article:before, .icon-slide:before, .icon-gitmodules:before, .icon-gitattributes:before, .icon-gitkeep:before, .icon-gitconfig:before, .icon-ico:before, .icon-elm:before, .icon-exs:before, .icon-ex:before, .icon-ejs:before, .icon-docx:before, .icon-doc:before, .icon-d:before, .icon-ctp:before, .icon-cake:before, .icon-hu:before, .icon-cuh:before, .icon-pptx:before, .icon-ppt:before, .icon-xlsx:before, .icon-xls:before, .icon-csv:before, .icon-sss:before, .icon-css.map:before, .icon-cson:before, .icon-slang:before, .icon-ecr:before, .icon-cr:before, .icon-config:before, .icon-litcoffee:before, .icon-cfm:before, .icon-cfc:before, .icon-edn:before, .icon-h\+\+:before, .icon-hxx:before, .icon-hpp:before, .icon-hh:before, .icon-master:before, .icon-asax:before, .icon-ascx:before, .icon-aspx:before, .icon-h:before, .icon-bazelversion:before, .icon-bazelignore:before, .icon-workspace:before, .icon-build:before, .icon-bazel:before, .icon-bzl:before, .icon-bicep:before, .icon-s:before, .icon-asm:before, .icon-apex:before, .icon-cls:before, .icon-mdo:before, .icon-bsl:before, .icon-default:before {
  font-family: "seti";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  line-height: 1;
  font-size: 16px;
  position: relative;
  vertical-align: 0;
}

.icon-default {
  display: flex;
  line-height: initial;
}
.icon-default:before {
  content: "\e023";
}

.icon-bsl {
  display: flex;
  line-height: initial;
}
.icon-bsl:before {
  content: "\e00a";
}

.icon-mdo {
  display: flex;
  line-height: initial;
}
.icon-mdo:before {
  content: "\e062";
}

.icon-cls {
  display: flex;
  line-height: initial;
}
.icon-cls:before {
  content: "\e083";
}

.icon-apex {
  display: flex;
  line-height: initial;
}
.icon-apex:before {
  content: "\e083";
}

.icon-asm {
  display: flex;
  line-height: initial;
}
.icon-asm:before {
  content: "\e004";
}

.icon-s {
  display: flex;
  line-height: initial;
}
.icon-s:before {
  content: "\e004";
}

.icon-bicep {
  display: flex;
  line-height: initial;
}
.icon-bicep:before {
  content: "\e008";
}

.icon-bzl {
  display: flex;
  line-height: initial;
}
.icon-bzl:before {
  content: "\e007";
}

.icon-bazel {
  display: flex;
  line-height: initial;
}
.icon-bazel:before {
  content: "\e007";
}

.icon-build {
  display: flex;
  line-height: initial;
}
.icon-build:before {
  content: "\e007";
}

.icon-workspace {
  display: flex;
  line-height: initial;
}
.icon-workspace:before {
  content: "\e007";
}

.icon-bazelignore {
  display: flex;
  line-height: initial;
}
.icon-bazelignore:before {
  content: "\e007";
}

.icon-bazelversion {
  display: flex;
  line-height: initial;
}
.icon-bazelversion:before {
  content: "\e007";
}

.icon-h {
  display: flex;
  line-height: initial;
}
.icon-h:before {
  content: "\e00c";
}

.icon-aspx {
  display: flex;
  line-height: initial;
}
.icon-aspx:before {
  content: "\e048";
}

.icon-ascx {
  display: flex;
  line-height: initial;
}
.icon-ascx:before {
  content: "\e048";
}

.icon-asax {
  display: flex;
  line-height: initial;
}
.icon-asax:before {
  content: "\e048";
}

.icon-master {
  display: flex;
  line-height: initial;
}
.icon-master:before {
  content: "\e048";
}

.icon-hh {
  display: flex;
  line-height: initial;
}
.icon-hh:before {
  content: "\e01a";
}

.icon-hpp {
  display: flex;
  line-height: initial;
}
.icon-hpp:before {
  content: "\e01a";
}

.icon-hxx {
  display: flex;
  line-height: initial;
}
.icon-hxx:before {
  content: "\e01a";
}

.icon-h\+\+ {
  display: flex;
  line-height: initial;
}
.icon-h\+\+:before {
  content: "\e01a";
}

.icon-edn {
  display: flex;
  line-height: initial;
}
.icon-edn:before {
  content: "\e013";
}

.icon-cfc {
  display: flex;
  line-height: initial;
}
.icon-cfc:before {
  content: "\e018";
}

.icon-cfm {
  display: flex;
  line-height: initial;
}
.icon-cfm:before {
  content: "\e018";
}

.icon-litcoffee {
  display: flex;
  line-height: initial;
}
.icon-litcoffee:before {
  content: "\e016";
}

.icon-config {
  display: flex;
  line-height: initial;
}
.icon-config:before {
  content: "\e019";
}

.icon-cr {
  display: flex;
  line-height: initial;
}
.icon-cr:before {
  content: "\e01b";
}

.icon-ecr {
  display: flex;
  line-height: initial;
}
.icon-ecr:before {
  content: "\e01c";
}

.icon-slang {
  display: flex;
  line-height: initial;
}
.icon-slang:before {
  content: "\e01c";
}

.icon-cson {
  display: flex;
  line-height: initial;
}
.icon-cson:before {
  content: "\e055";
}

.icon-css.map {
  display: flex;
  line-height: initial;
}
.icon-css.map:before {
  content: "\e01d";
}

.icon-sss {
  display: flex;
  line-height: initial;
}
.icon-sss:before {
  content: "\e01d";
}

.icon-csv {
  display: flex;
  line-height: initial;
}
.icon-csv:before {
  content: "\e01e";
}

.icon-xls {
  display: flex;
  line-height: initial;
}
.icon-xls:before {
  content: "\e0a4";
}

.icon-xlsx {
  display: flex;
  line-height: initial;
}
.icon-xlsx:before {
  content: "\e0a4";
}

.icon-ppt {
  display: flex;
  line-height: initial;
}
.icon-ppt:before {
  content: "\e0aa";
}

.icon-pptx {
  display: flex;
  line-height: initial;
}
.icon-pptx:before {
  content: "\e0aa";
}

.icon-cuh {
  display: flex;
  line-height: initial;
}
.icon-cuh:before {
  content: "\e01f";
}

.icon-hu {
  display: flex;
  line-height: initial;
}
.icon-hu:before {
  content: "\e01f";
}

.icon-cake {
  display: flex;
  line-height: initial;
}
.icon-cake:before {
  content: "\e00d";
}

.icon-ctp {
  display: flex;
  line-height: initial;
}
.icon-ctp:before {
  content: "\e00e";
}

.icon-d {
  display: flex;
  line-height: initial;
}
.icon-d:before {
  content: "\e020";
}

.icon-doc {
  display: flex;
  line-height: initial;
}
.icon-doc:before {
  content: "\e0a3";
}

.icon-docx {
  display: flex;
  line-height: initial;
}
.icon-docx:before {
  content: "\e0a3";
}

.icon-ejs {
  display: flex;
  line-height: initial;
}
.icon-ejs:before {
  content: "\e027";
}

.icon-ex {
  display: flex;
  line-height: initial;
}
.icon-ex:before {
  content: "\e028";
}

.icon-exs {
  display: flex;
  line-height: initial;
}
.icon-exs:before {
  content: "\e029";
}

.icon-elm {
  display: flex;
  line-height: initial;
}
.icon-elm:before {
  content: "\e02a";
}

.icon-ico {
  display: flex;
  line-height: initial;
}
.icon-ico:before {
  content: "\e02f";
}

.icon-gitconfig {
  display: flex;
  line-height: initial;
}
.icon-gitconfig:before {
  content: "\e034";
}

.icon-gitkeep {
  display: flex;
  line-height: initial;
}
.icon-gitkeep:before {
  content: "\e034";
}

.icon-gitattributes {
  display: flex;
  line-height: initial;
}
.icon-gitattributes:before {
  content: "\e034";
}

.icon-gitmodules {
  display: flex;
  line-height: initial;
}
.icon-gitmodules:before {
  content: "\e034";
}

.icon-slide {
  display: flex;
  line-height: initial;
}
.icon-slide:before {
  content: "\e039";
}

.icon-article {
  display: flex;
  line-height: initial;
}
.icon-article:before {
  content: "\e039";
}

.icon-gd {
  display: flex;
  line-height: initial;
}
.icon-gd:before {
  content: "\e03b";
}

.icon-godot {
  display: flex;
  line-height: initial;
}
.icon-godot:before {
  content: "\e03b";
}

.icon-tres {
  display: flex;
  line-height: initial;
}
.icon-tres:before {
  content: "\e03b";
}

.icon-tscn {
  display: flex;
  line-height: initial;
}
.icon-tscn:before {
  content: "\e03b";
}

.icon-gradle {
  display: flex;
  line-height: initial;
}
.icon-gradle:before {
  content: "\e03c";
}

.icon-gsp {
  display: flex;
  line-height: initial;
}
.icon-gsp:before {
  content: "\e03d";
}

.icon-gql {
  display: flex;
  line-height: initial;
}
.icon-gql:before {
  content: "\e03e";
}

.icon-graphql {
  display: flex;
  line-height: initial;
}
.icon-graphql:before {
  content: "\e03e";
}

.icon-graphqls {
  display: flex;
  line-height: initial;
}
.icon-graphqls:before {
  content: "\e03e";
}

.icon-hack {
  display: flex;
  line-height: initial;
}
.icon-hack:before {
  content: "\e041";
}

.icon-haml {
  display: flex;
  line-height: initial;
}
.icon-haml:before {
  content: "\e042";
}

.icon-hs {
  display: flex;
  line-height: initial;
}
.icon-hs:before {
  content: "\e044";
}

.icon-lhs {
  display: flex;
  line-height: initial;
}
.icon-lhs:before {
  content: "\e044";
}

.icon-hx {
  display: flex;
  line-height: initial;
}
.icon-hx:before {
  content: "\e045";
}

.icon-hxs {
  display: flex;
  line-height: initial;
}
.icon-hxs:before {
  content: "\e045";
}

.icon-hxp {
  display: flex;
  line-height: initial;
}
.icon-hxp:before {
  content: "\e045";
}

.icon-hxml {
  display: flex;
  line-height: initial;
}
.icon-hxml:before {
  content: "\e045";
}

.icon-jade {
  display: flex;
  line-height: initial;
}
.icon-jade:before {
  content: "\e078";
}

.icon-class {
  display: flex;
  line-height: initial;
}
.icon-class:before {
  content: "\e050";
}

.icon-classpath {
  display: flex;
  line-height: initial;
}
.icon-classpath:before {
  content: "\e050";
}

.icon-js.map {
  display: flex;
  line-height: initial;
}
.icon-js.map:before {
  content: "\e051";
}

.icon-cjs.map {
  display: flex;
  line-height: initial;
}
.icon-cjs.map:before {
  content: "\e051";
}

.icon-mjs.map {
  display: flex;
  line-height: initial;
}
.icon-mjs.map:before {
  content: "\e051";
}

.icon-spec.js {
  display: flex;
  line-height: initial;
}
.icon-spec.js:before {
  content: "\e051";
}

.icon-spec.cjs {
  display: flex;
  line-height: initial;
}
.icon-spec.cjs:before {
  content: "\e051";
}

.icon-spec.mjs {
  display: flex;
  line-height: initial;
}
.icon-spec.mjs:before {
  content: "\e051";
}

.icon-test.js {
  display: flex;
  line-height: initial;
}
.icon-test.js:before {
  content: "\e051";
}

.icon-test.cjs {
  display: flex;
  line-height: initial;
}
.icon-test.cjs:before {
  content: "\e051";
}

.icon-test.mjs {
  display: flex;
  line-height: initial;
}
.icon-test.mjs:before {
  content: "\e051";
}

.icon-es {
  display: flex;
  line-height: initial;
}
.icon-es:before {
  content: "\e051";
}

.icon-es5 {
  display: flex;
  line-height: initial;
}
.icon-es5:before {
  content: "\e051";
}

.icon-es7 {
  display: flex;
  line-height: initial;
}
.icon-es7:before {
  content: "\e051";
}

.icon-jinja {
  display: flex;
  line-height: initial;
}
.icon-jinja:before {
  content: "\e053";
}

.icon-jinja2 {
  display: flex;
  line-height: initial;
}
.icon-jinja2:before {
  content: "\e053";
}

.icon-kt {
  display: flex;
  line-height: initial;
}
.icon-kt:before {
  content: "\e058";
}

.icon-kts {
  display: flex;
  line-height: initial;
}
.icon-kts:before {
  content: "\e058";
}

.icon-liquid {
  display: flex;
  line-height: initial;
}
.icon-liquid:before {
  content: "\e05b";
}

.icon-ls {
  display: flex;
  line-height: initial;
}
.icon-ls:before {
  content: "\e05c";
}

.icon-argdown {
  display: flex;
  line-height: initial;
}
.icon-argdown:before {
  content: "\e003";
}

.icon-ad {
  display: flex;
  line-height: initial;
}
.icon-ad:before {
  content: "\e003";
}

.icon-mustache {
  display: flex;
  line-height: initial;
}
.icon-mustache:before {
  content: "\e063";
}

.icon-stache {
  display: flex;
  line-height: initial;
}
.icon-stache:before {
  content: "\e063";
}

.icon-nim {
  display: flex;
  line-height: initial;
}
.icon-nim:before {
  content: "\e065";
}

.icon-nims {
  display: flex;
  line-height: initial;
}
.icon-nims:before {
  content: "\e065";
}

.icon-github-issues {
  display: flex;
  line-height: initial;
}
.icon-github-issues:before {
  content: "\e037";
}

.icon-ipynb {
  display: flex;
  line-height: initial;
}
.icon-ipynb:before {
  content: "\e066";
}

.icon-njk {
  display: flex;
  line-height: initial;
}
.icon-njk:before {
  content: "\e069";
}

.icon-nunjucks {
  display: flex;
  line-height: initial;
}
.icon-nunjucks:before {
  content: "\e069";
}

.icon-nunjs {
  display: flex;
  line-height: initial;
}
.icon-nunjs:before {
  content: "\e069";
}

.icon-nunj {
  display: flex;
  line-height: initial;
}
.icon-nunj:before {
  content: "\e069";
}

.icon-njs {
  display: flex;
  line-height: initial;
}
.icon-njs:before {
  content: "\e069";
}

.icon-nj {
  display: flex;
  line-height: initial;
}
.icon-nj:before {
  content: "\e069";
}

.icon-npm-debug.log {
  display: flex;
  line-height: initial;
}
.icon-npm-debug.log:before {
  content: "\e068";
}

.icon-npmignore {
  display: flex;
  line-height: initial;
}
.icon-npmignore:before {
  content: "\e067";
}

.icon-npmrc {
  display: flex;
  line-height: initial;
}
.icon-npmrc:before {
  content: "\e067";
}

.icon-ml {
  display: flex;
  line-height: initial;
}
.icon-ml:before {
  content: "\e06a";
}

.icon-mli {
  display: flex;
  line-height: initial;
}
.icon-mli:before {
  content: "\e06a";
}

.icon-cmx {
  display: flex;
  line-height: initial;
}
.icon-cmx:before {
  content: "\e06a";
}

.icon-cmxa {
  display: flex;
  line-height: initial;
}
.icon-cmxa:before {
  content: "\e06a";
}

.icon-odata {
  display: flex;
  line-height: initial;
}
.icon-odata:before {
  content: "\e06b";
}

.icon-php.inc {
  display: flex;
  line-height: initial;
}
.icon-php.inc:before {
  content: "\e070";
}

.icon-pipeline {
  display: flex;
  line-height: initial;
}
.icon-pipeline:before {
  content: "\e071";
}

.icon-pddl {
  display: flex;
  line-height: initial;
}
.icon-pddl:before {
  content: "\e06c";
}

.icon-plan {
  display: flex;
  line-height: initial;
}
.icon-plan:before {
  content: "\e072";
}

.icon-happenings {
  display: flex;
  line-height: initial;
}
.icon-happenings:before {
  content: "\e043";
}

.icon-prisma {
  display: flex;
  line-height: initial;
}
.icon-prisma:before {
  content: "\e075";
}

.icon-pp {
  display: flex;
  line-height: initial;
}
.icon-pp:before {
  content: "\e079";
}

.icon-epp {
  display: flex;
  line-height: initial;
}
.icon-epp:before {
  content: "\e079";
}

.icon-purs {
  display: flex;
  line-height: initial;
}
.icon-purs:before {
  content: "\e07a";
}

.icon-spec.jsx {
  display: flex;
  line-height: initial;
}
.icon-spec.jsx:before {
  content: "\e07d";
}

.icon-test.jsx {
  display: flex;
  line-height: initial;
}
.icon-test.jsx:before {
  content: "\e07d";
}

.icon-cjsx {
  display: flex;
  line-height: initial;
}
.icon-cjsx:before {
  content: "\e07d";
}

.icon-spec.tsx {
  display: flex;
  line-height: initial;
}
.icon-spec.tsx:before {
  content: "\e07d";
}

.icon-test.tsx {
  display: flex;
  line-height: initial;
}
.icon-test.tsx:before {
  content: "\e07d";
}

.icon-re {
  display: flex;
  line-height: initial;
}
.icon-re:before {
  content: "\e07e";
}

.icon-res {
  display: flex;
  line-height: initial;
}
.icon-res:before {
  content: "\e07f";
}

.icon-resi {
  display: flex;
  line-height: initial;
}
.icon-resi:before {
  content: "\e07f";
}

.icon-r {
  display: flex;
  line-height: initial;
}
.icon-r:before {
  content: "\e001";
}

.icon-rmd {
  display: flex;
  line-height: initial;
}
.icon-rmd:before {
  content: "\e001";
}

.icon-erb {
  display: flex;
  line-height: initial;
}
.icon-erb:before {
  content: "\e049";
}

.icon-erb.html {
  display: flex;
  line-height: initial;
}
.icon-erb.html:before {
  content: "\e049";
}

.icon-html.erb {
  display: flex;
  line-height: initial;
}
.icon-html.erb:before {
  content: "\e049";
}

.icon-sass {
  display: flex;
  line-height: initial;
}
.icon-sass:before {
  content: "\e084";
}

.icon-springbeans {
  display: flex;
  line-height: initial;
}
.icon-springbeans:before {
  content: "\e08c";
}

.icon-slim {
  display: flex;
  line-height: initial;
}
.icon-slim:before {
  content: "\e08a";
}

.icon-smarty.tpl {
  display: flex;
  line-height: initial;
}
.icon-smarty.tpl:before {
  content: "\e08b";
}

.icon-tpl {
  display: flex;
  line-height: initial;
}
.icon-tpl:before {
  content: "\e08b";
}

.icon-sbt {
  display: flex;
  line-height: initial;
}
.icon-sbt:before {
  content: "\e085";
}

.icon-scala {
  display: flex;
  line-height: initial;
}
.icon-scala:before {
  content: "\e086";
}

.icon-sol {
  display: flex;
  line-height: initial;
}
.icon-sol:before {
  content: "\e02d";
}

.icon-styl {
  display: flex;
  line-height: initial;
}
.icon-styl:before {
  content: "\e08e";
}

.icon-svelte {
  display: flex;
  line-height: initial;
}
.icon-svelte:before {
  content: "\e090";
}

.icon-soql {
  display: flex;
  line-height: initial;
}
.icon-soql:before {
  content: "\e022";
}

.icon-tf {
  display: flex;
  line-height: initial;
}
.icon-tf:before {
  content: "\e093";
}

.icon-tf.json {
  display: flex;
  line-height: initial;
}
.icon-tf.json:before {
  content: "\e093";
}

.icon-tfvars {
  display: flex;
  line-height: initial;
}
.icon-tfvars:before {
  content: "\e093";
}

.icon-tfvars.json {
  display: flex;
  line-height: initial;
}
.icon-tfvars.json:before {
  content: "\e093";
}

.icon-dtx {
  display: flex;
  line-height: initial;
}
.icon-dtx:before {
  content: "\e094";
}

.icon-ins {
  display: flex;
  line-height: initial;
}
.icon-ins:before {
  content: "\e094";
}

.icon-toml {
  display: flex;
  line-height: initial;
}
.icon-toml:before {
  content: "\e019";
}

.icon-twig {
  display: flex;
  line-height: initial;
}
.icon-twig:before {
  content: "\e098";
}

.icon-spec.ts {
  display: flex;
  line-height: initial;
}
.icon-spec.ts:before {
  content: "\e099";
}

.icon-test.ts {
  display: flex;
  line-height: initial;
}
.icon-test.ts:before {
  content: "\e099";
}

.icon-vala {
  display: flex;
  line-height: initial;
}
.icon-vala:before {
  content: "\e09a";
}

.icon-vapi {
  display: flex;
  line-height: initial;
}
.icon-vapi:before {
  content: "\e09a";
}

.icon-component {
  display: flex;
  line-height: initial;
}
.icon-component:before {
  content: "\e048";
}

.icon-vue {
  display: flex;
  line-height: initial;
}
.icon-vue:before {
  content: "\e09d";
}

.icon-wasm {
  display: flex;
  line-height: initial;
}
.icon-wasm:before {
  content: "\e09e";
}

.icon-wat {
  display: flex;
  line-height: initial;
}
.icon-wat:before {
  content: "\e09f";
}

.icon-pro {
  display: flex;
  line-height: initial;
}
.icon-pro:before {
  content: "\e077";
}

.icon-zig {
  display: flex;
  line-height: initial;
}
.icon-zig:before {
  content: "\e0a8";
}

.icon-jar {
  display: flex;
  line-height: initial;
}
.icon-jar:before {
  content: "\e0a9";
}

.icon-zip {
  display: flex;
  line-height: initial;
}
.icon-zip:before {
  content: "\e0a9";
}

.icon-wgt {
  display: flex;
  line-height: initial;
}
.icon-wgt:before {
  content: "\e0a1";
}

.icon-ai {
  display: flex;
  line-height: initial;
}
.icon-ai:before {
  content: "\e04b";
}

.icon-psd {
  display: flex;
  line-height: initial;
}
.icon-psd:before {
  content: "\e06f";
}

.icon-pdf {
  display: flex;
  line-height: initial;
}
.icon-pdf:before {
  content: "\e06d";
}

.icon-eot {
  display: flex;
  line-height: initial;
}
.icon-eot:before {
  content: "\e033";
}

.icon-ttf {
  display: flex;
  line-height: initial;
}
.icon-ttf:before {
  content: "\e033";
}

.icon-woff {
  display: flex;
  line-height: initial;
}
.icon-woff:before {
  content: "\e033";
}

.icon-woff2 {
  display: flex;
  line-height: initial;
}
.icon-woff2:before {
  content: "\e033";
}

.icon-otf {
  display: flex;
  line-height: initial;
}
.icon-otf:before {
  content: "\e033";
}

.icon-avif {
  display: flex;
  line-height: initial;
}
.icon-avif:before {
  content: "\e04c";
}

.icon-gif {
  display: flex;
  line-height: initial;
}
.icon-gif:before {
  content: "\e04c";
}

.icon-jpg {
  display: flex;
  line-height: initial;
}
.icon-jpg:before {
  content: "\e04c";
}

.icon-jpeg {
  display: flex;
  line-height: initial;
}
.icon-jpeg:before {
  content: "\e04c";
}

.icon-png {
  display: flex;
  line-height: initial;
}
.icon-png:before {
  content: "\e04c";
}

.icon-pxm {
  display: flex;
  line-height: initial;
}
.icon-pxm:before {
  content: "\e04c";
}

.icon-svg {
  display: flex;
  line-height: initial;
}
.icon-svg:before {
  content: "\e091";
}

.icon-svgx {
  display: flex;
  line-height: initial;
}
.icon-svgx:before {
  content: "\e04c";
}

.icon-tiff {
  display: flex;
  line-height: initial;
}
.icon-tiff:before {
  content: "\e04c";
}

.icon-webp {
  display: flex;
  line-height: initial;
}
.icon-webp:before {
  content: "\e04c";
}

.icon-bmp {
  display: flex;
  line-height: initial;
}
.icon-bmp:before {
  content: "\e04c";
}

.icon-drawio {
  display: flex;
  line-height: initial;
}
.icon-drawio:before {
  content: "\e04c";
}

.icon-dio {
  display: flex;
  line-height: initial;
}
.icon-dio:before {
  content: "\e04c";
}

.icon-excalidraw {
  display: flex;
  line-height: initial;
}
.icon-excalidraw:before {
  content: "\e04c";
}

.icon-sublime-project {
  display: flex;
  line-height: initial;
}
.icon-sublime-project:before {
  content: "\e08f";
}

.icon-sublime-workspace {
  display: flex;
  line-height: initial;
}
.icon-sublime-workspace:before {
  content: "\e08f";
}

.icon-mov {
  display: flex;
  line-height: initial;
}
.icon-mov:before {
  content: "\e09b";
}

.icon-ogv {
  display: flex;
  line-height: initial;
}
.icon-ogv:before {
  content: "\e09b";
}

.icon-webm {
  display: flex;
  line-height: initial;
}
.icon-webm:before {
  content: "\e09b";
}

.icon-avi {
  display: flex;
  line-height: initial;
}
.icon-avi:before {
  content: "\e09b";
}

.icon-mpg {
  display: flex;
  line-height: initial;
}
.icon-mpg:before {
  content: "\e09b";
}

.icon-mp4 {
  display: flex;
  line-height: initial;
}
.icon-mp4:before {
  content: "\e09b";
}

.icon-mp3 {
  display: flex;
  line-height: initial;
}
.icon-mp3:before {
  content: "\e005";
}

.icon-ogg {
  display: flex;
  line-height: initial;
}
.icon-ogg:before {
  content: "\e005";
}

.icon-aac {
  display: flex;
  line-height: initial;
}
.icon-aac:before {
  content: "\e005";
}

.icon-wav {
  display: flex;
  line-height: initial;
}
.icon-wav:before {
  content: "\e005";
}

.icon-flac {
  display: flex;
  line-height: initial;
}
.icon-flac:before {
  content: "\e005";
}

.icon-3ds {
  display: flex;
  line-height: initial;
}
.icon-3ds:before {
  content: "\e091";
}

.icon-3dm {
  display: flex;
  line-height: initial;
}
.icon-3dm:before {
  content: "\e091";
}

.icon-stl {
  display: flex;
  line-height: initial;
}
.icon-stl:before {
  content: "\e091";
}

.icon-obj {
  display: flex;
  line-height: initial;
}
.icon-obj:before {
  content: "\e091";
}

.icon-dae {
  display: flex;
  line-height: initial;
}
.icon-dae:before {
  content: "\e091";
}

.icon-babelrc {
  display: flex;
  line-height: initial;
}
.icon-babelrc:before {
  content: "\e006";
}

.icon-babelrc.js {
  display: flex;
  line-height: initial;
}
.icon-babelrc.js:before {
  content: "\e006";
}

.icon-babelrc.cjs {
  display: flex;
  line-height: initial;
}
.icon-babelrc.cjs:before {
  content: "\e006";
}

.icon-bazelrc {
  display: flex;
  line-height: initial;
}
.icon-bazelrc:before {
  content: "\e007";
}

.icon-bowerrc {
  display: flex;
  line-height: initial;
}
.icon-bowerrc:before {
  content: "\e009";
}

.icon-dockerignore {
  display: flex;
  line-height: initial;
}
.icon-dockerignore:before {
  content: "\e025";
}

.icon-codeclimate.yml {
  display: flex;
  line-height: initial;
}
.icon-codeclimate.yml:before {
  content: "\e014";
}

.icon-eslintrc {
  display: flex;
  line-height: initial;
}
.icon-eslintrc:before {
  content: "\e02c";
}

.icon-eslintrc.js {
  display: flex;
  line-height: initial;
}
.icon-eslintrc.js:before {
  content: "\e02c";
}

.icon-eslintrc.cjs {
  display: flex;
  line-height: initial;
}
.icon-eslintrc.cjs:before {
  content: "\e02c";
}

.icon-eslintrc.yaml {
  display: flex;
  line-height: initial;
}
.icon-eslintrc.yaml:before {
  content: "\e02c";
}

.icon-eslintrc.yml {
  display: flex;
  line-height: initial;
}
.icon-eslintrc.yml:before {
  content: "\e02c";
}

.icon-eslintrc.json {
  display: flex;
  line-height: initial;
}
.icon-eslintrc.json:before {
  content: "\e02c";
}

.icon-eslintignore {
  display: flex;
  line-height: initial;
}
.icon-eslintignore:before {
  content: "\e02c";
}

.icon-firebaserc {
  display: flex;
  line-height: initial;
}
.icon-firebaserc:before {
  content: "\e030";
}

.icon-gitlab-ci.yml {
  display: flex;
  line-height: initial;
}
.icon-gitlab-ci.yml:before {
  content: "\e038";
}

.icon-jshintrc {
  display: flex;
  line-height: initial;
}
.icon-jshintrc:before {
  content: "\e051";
}

.icon-jscsrc {
  display: flex;
  line-height: initial;
}
.icon-jscsrc:before {
  content: "\e051";
}

.icon-stylelintrc {
  display: flex;
  line-height: initial;
}
.icon-stylelintrc:before {
  content: "\e08d";
}

.icon-stylelintrc.json {
  display: flex;
  line-height: initial;
}
.icon-stylelintrc.json:before {
  content: "\e08d";
}

.icon-stylelintrc.yaml {
  display: flex;
  line-height: initial;
}
.icon-stylelintrc.yaml:before {
  content: "\e08d";
}

.icon-stylelintrc.yml {
  display: flex;
  line-height: initial;
}
.icon-stylelintrc.yml:before {
  content: "\e08d";
}

.icon-stylelintrc.js {
  display: flex;
  line-height: initial;
}
.icon-stylelintrc.js:before {
  content: "\e08d";
}

.icon-stylelintignore {
  display: flex;
  line-height: initial;
}
.icon-stylelintignore:before {
  content: "\e08d";
}

.icon-direnv {
  display: flex;
  line-height: initial;
}
.icon-direnv:before {
  content: "\e019";
}

.icon-env {
  display: flex;
  line-height: initial;
}
.icon-env:before {
  content: "\e019";
}

.icon-static {
  display: flex;
  line-height: initial;
}
.icon-static:before {
  content: "\e019";
}

.icon-slugignore {
  display: flex;
  line-height: initial;
}
.icon-slugignore:before {
  content: "\e019";
}

.icon-tmp {
  display: flex;
  line-height: initial;
}
.icon-tmp:before {
  content: "\e012";
}

.icon-htaccess {
  display: flex;
  line-height: initial;
}
.icon-htaccess:before {
  content: "\e019";
}

.icon-key {
  display: flex;
  line-height: initial;
}
.icon-key:before {
  content: "\e05d";
}

.icon-cert {
  display: flex;
  line-height: initial;
}
.icon-cert:before {
  content: "\e05d";
}

.icon-cer {
  display: flex;
  line-height: initial;
}
.icon-cer:before {
  content: "\e05d";
}

.icon-crt {
  display: flex;
  line-height: initial;
}
.icon-crt:before {
  content: "\e05d";
}

.icon-pem {
  display: flex;
  line-height: initial;
}
.icon-pem:before {
  content: "\e05d";
}

.icon-ds_store {
  display: flex;
  line-height: initial;
}
.icon-ds_store:before {
  content: "\e04a";
}

.icon-mix {
  display: flex;
  line-height: initial;
}
.icon-mix:before {
  content: "\e047";
}

.icon-karma.conf.js {
  display: flex;
  line-height: initial;
}
.icon-karma.conf.js:before {
  content: "\e057";
}

.icon-karma.conf.cjs {
  display: flex;
  line-height: initial;
}
.icon-karma.conf.cjs:before {
  content: "\e057";
}

.icon-karma.conf.mjs {
  display: flex;
  line-height: initial;
}
.icon-karma.conf.mjs:before {
  content: "\e057";
}

.icon-karma.conf.coffee {
  display: flex;
  line-height: initial;
}
.icon-karma.conf.coffee:before {
  content: "\e057";
}

.icon-readme.md {
  display: flex;
  line-height: initial;
}
.icon-readme.md:before {
  content: "\e04d";
}

.icon-readme.txt {
  display: flex;
  line-height: initial;
}
.icon-readme.txt:before {
  content: "\e04d";
}

.icon-readme {
  display: flex;
  line-height: initial;
}
.icon-readme:before {
  content: "\e04d";
}

.icon-changelog.md {
  display: flex;
  line-height: initial;
}
.icon-changelog.md:before {
  content: "\e012";
}

.icon-changelog.txt {
  display: flex;
  line-height: initial;
}
.icon-changelog.txt:before {
  content: "\e012";
}

.icon-changelog {
  display: flex;
  line-height: initial;
}
.icon-changelog:before {
  content: "\e012";
}

.icon-changes.md {
  display: flex;
  line-height: initial;
}
.icon-changes.md:before {
  content: "\e012";
}

.icon-changes.txt {
  display: flex;
  line-height: initial;
}
.icon-changes.txt:before {
  content: "\e012";
}

.icon-changes {
  display: flex;
  line-height: initial;
}
.icon-changes:before {
  content: "\e012";
}

.icon-version.md {
  display: flex;
  line-height: initial;
}
.icon-version.md:before {
  content: "\e012";
}

.icon-version.txt {
  display: flex;
  line-height: initial;
}
.icon-version.txt:before {
  content: "\e012";
}

.icon-version {
  display: flex;
  line-height: initial;
}
.icon-version:before {
  content: "\e012";
}

.icon-mvnw {
  display: flex;
  line-height: initial;
}
.icon-mvnw:before {
  content: "\e061";
}

.icon-pom.xml {
  display: flex;
  line-height: initial;
}
.icon-pom.xml:before {
  content: "\e061";
}

.icon-tsconfig.json {
  display: flex;
  line-height: initial;
}
.icon-tsconfig.json:before {
  content: "\e097";
}

.icon-vite.config.js {
  display: flex;
  line-height: initial;
}
.icon-vite.config.js:before {
  content: "\e09c";
}

.icon-vite.config.ts {
  display: flex;
  line-height: initial;
}
.icon-vite.config.ts:before {
  content: "\e09c";
}

.icon-vite.config.mjs {
  display: flex;
  line-height: initial;
}
.icon-vite.config.mjs:before {
  content: "\e09c";
}

.icon-vite.config.mts {
  display: flex;
  line-height: initial;
}
.icon-vite.config.mts:before {
  content: "\e09c";
}

.icon-vite.config.cjs {
  display: flex;
  line-height: initial;
}
.icon-vite.config.cjs:before {
  content: "\e09c";
}

.icon-vite.config.cts {
  display: flex;
  line-height: initial;
}
.icon-vite.config.cts:before {
  content: "\e09c";
}

.icon-swagger.json {
  display: flex;
  line-height: initial;
}
.icon-swagger.json:before {
  content: "\e055";
}

.icon-swagger.yml {
  display: flex;
  line-height: initial;
}
.icon-swagger.yml:before {
  content: "\e055";
}

.icon-swagger.yaml {
  display: flex;
  line-height: initial;
}
.icon-swagger.yaml:before {
  content: "\e055";
}

.icon-mime.types {
  display: flex;
  line-height: initial;
}
.icon-mime.types:before {
  content: "\e019";
}

.icon-jenkinsfile {
  display: flex;
  line-height: initial;
}
.icon-jenkinsfile:before {
  content: "\e052";
}

.icon-babel.config.js {
  display: flex;
  line-height: initial;
}
.icon-babel.config.js:before {
  content: "\e006";
}

.icon-babel.config.json {
  display: flex;
  line-height: initial;
}
.icon-babel.config.json:before {
  content: "\e006";
}

.icon-babel.config.cjs {
  display: flex;
  line-height: initial;
}
.icon-babel.config.cjs:before {
  content: "\e006";
}

.icon-build.bazel {
  display: flex;
  line-height: initial;
}
.icon-build.bazel:before {
  content: "\e007";
}

.icon-workspace.bazel {
  display: flex;
  line-height: initial;
}
.icon-workspace.bazel:before {
  content: "\e007";
}

.icon-bower.json {
  display: flex;
  line-height: initial;
}
.icon-bower.json:before {
  content: "\e009";
}

.icon-docker-healthcheck {
  display: flex;
  line-height: initial;
}
.icon-docker-healthcheck:before {
  content: "\e025";
}

.icon-eslint.config.js {
  display: flex;
  line-height: initial;
}
.icon-eslint.config.js:before {
  content: "\e02c";
}

.icon-firebase.json {
  display: flex;
  line-height: initial;
}
.icon-firebase.json:before {
  content: "\e030";
}

.icon-geckodriver {
  display: flex;
  line-height: initial;
}
.icon-geckodriver:before {
  content: "\e031";
}

.icon-gruntfile.js {
  display: flex;
  line-height: initial;
}
.icon-gruntfile.js:before {
  content: "\e03f";
}

.icon-gruntfile.babel.js {
  display: flex;
  line-height: initial;
}
.icon-gruntfile.babel.js:before {
  content: "\e03f";
}

.icon-gruntfile.coffee {
  display: flex;
  line-height: initial;
}
.icon-gruntfile.coffee:before {
  content: "\e03f";
}

.icon-gulpfile {
  display: flex;
  line-height: initial;
}
.icon-gulpfile:before {
  content: "\e040";
}

.icon-gulpfile.js {
  display: flex;
  line-height: initial;
}
.icon-gulpfile.js:before {
  content: "\e040";
}

.icon-ionic.config.json {
  display: flex;
  line-height: initial;
}
.icon-ionic.config.json:before {
  content: "\e04e";
}

.icon-ionic.project {
  display: flex;
  line-height: initial;
}
.icon-ionic.project:before {
  content: "\e04e";
}

.icon-platformio.ini {
  display: flex;
  line-height: initial;
}
.icon-platformio.ini:before {
  content: "\e073";
}

.icon-rollup.config.js {
  display: flex;
  line-height: initial;
}
.icon-rollup.config.js:before {
  content: "\e080";
}

.icon-sass-lint.yml {
  display: flex;
  line-height: initial;
}
.icon-sass-lint.yml:before {
  content: "\e084";
}

.icon-stylelint.config.js {
  display: flex;
  line-height: initial;
}
.icon-stylelint.config.js:before {
  content: "\e08d";
}

.icon-stylelint.config.cjs {
  display: flex;
  line-height: initial;
}
.icon-stylelint.config.cjs:before {
  content: "\e08d";
}

.icon-stylelint.config.mjs {
  display: flex;
  line-height: initial;
}
.icon-stylelint.config.mjs:before {
  content: "\e08d";
}

.icon-yarn.clean {
  display: flex;
  line-height: initial;
}
.icon-yarn.clean:before {
  content: "\e0a6";
}

.icon-yarn.lock {
  display: flex;
  line-height: initial;
}
.icon-yarn.lock:before {
  content: "\e0a6";
}

.icon-webpack.config.js {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.js:before {
  content: "\e0a0";
}

.icon-webpack.config.cjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.cjs:before {
  content: "\e0a0";
}

.icon-webpack.config.mjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.mjs:before {
  content: "\e0a0";
}

.icon-webpack.config.ts {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.ts:before {
  content: "\e0a0";
}

.icon-webpack.config.build.js {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.build.js:before {
  content: "\e0a0";
}

.icon-webpack.config.build.cjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.build.cjs:before {
  content: "\e0a0";
}

.icon-webpack.config.build.mjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.build.mjs:before {
  content: "\e0a0";
}

.icon-webpack.config.build.ts {
  display: flex;
  line-height: initial;
}
.icon-webpack.config.build.ts:before {
  content: "\e0a0";
}

.icon-webpack.common.js {
  display: flex;
  line-height: initial;
}
.icon-webpack.common.js:before {
  content: "\e0a0";
}

.icon-webpack.common.cjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.common.cjs:before {
  content: "\e0a0";
}

.icon-webpack.common.mjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.common.mjs:before {
  content: "\e0a0";
}

.icon-webpack.common.ts {
  display: flex;
  line-height: initial;
}
.icon-webpack.common.ts:before {
  content: "\e0a0";
}

.icon-webpack.dev.js {
  display: flex;
  line-height: initial;
}
.icon-webpack.dev.js:before {
  content: "\e0a0";
}

.icon-webpack.dev.cjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.dev.cjs:before {
  content: "\e0a0";
}

.icon-webpack.dev.mjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.dev.mjs:before {
  content: "\e0a0";
}

.icon-webpack.dev.ts {
  display: flex;
  line-height: initial;
}
.icon-webpack.dev.ts:before {
  content: "\e0a0";
}

.icon-webpack.prod.js {
  display: flex;
  line-height: initial;
}
.icon-webpack.prod.js:before {
  content: "\e0a0";
}

.icon-webpack.prod.cjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.prod.cjs:before {
  content: "\e0a0";
}

.icon-webpack.prod.mjs {
  display: flex;
  line-height: initial;
}
.icon-webpack.prod.mjs:before {
  content: "\e0a0";
}

.icon-webpack.prod.ts {
  display: flex;
  line-height: initial;
}
.icon-webpack.prod.ts:before {
  content: "\e0a0";
}

.icon-license {
  display: flex;
  line-height: initial;
}
.icon-license:before {
  content: "\e05a";
}

.icon-licence {
  display: flex;
  line-height: initial;
}
.icon-licence:before {
  content: "\e05a";
}

.icon-license.txt {
  display: flex;
  line-height: initial;
}
.icon-license.txt:before {
  content: "\e05a";
}

.icon-licence.txt {
  display: flex;
  line-height: initial;
}
.icon-licence.txt:before {
  content: "\e05a";
}

.icon-license.md {
  display: flex;
  line-height: initial;
}
.icon-license.md:before {
  content: "\e05a";
}

.icon-licence.md {
  display: flex;
  line-height: initial;
}
.icon-licence.md:before {
  content: "\e05a";
}

.icon-copying {
  display: flex;
  line-height: initial;
}
.icon-copying:before {
  content: "\e05a";
}

.icon-copying.txt {
  display: flex;
  line-height: initial;
}
.icon-copying.txt:before {
  content: "\e05a";
}

.icon-copying.md {
  display: flex;
  line-height: initial;
}
.icon-copying.md:before {
  content: "\e05a";
}

.icon-compiling {
  display: flex;
  line-height: initial;
}
.icon-compiling:before {
  content: "\e05a";
}

.icon-compiling.txt {
  display: flex;
  line-height: initial;
}
.icon-compiling.txt:before {
  content: "\e05a";
}

.icon-compiling.md {
  display: flex;
  line-height: initial;
}
.icon-compiling.md:before {
  content: "\e05a";
}

.icon-contributing {
  display: flex;
  line-height: initial;
}
.icon-contributing:before {
  content: "\e05a";
}

.icon-contributing.txt {
  display: flex;
  line-height: initial;
}
.icon-contributing.txt:before {
  content: "\e05a";
}

.icon-contributing.md {
  display: flex;
  line-height: initial;
}
.icon-contributing.md:before {
  content: "\e05a";
}

.icon-qmakefile {
  display: flex;
  line-height: initial;
}
.icon-qmakefile:before {
  content: "\e05f";
}

.icon-omakefile {
  display: flex;
  line-height: initial;
}
.icon-omakefile:before {
  content: "\e05f";
}

.icon-cmakelists.txt {
  display: flex;
  line-height: initial;
}
.icon-cmakelists.txt:before {
  content: "\e05f";
}

.icon-procfile {
  display: flex;
  line-height: initial;
}
.icon-procfile:before {
  content: "\e046";
}

.icon-todo {
  display: flex;
  line-height: initial;
}
.icon-todo:before {
  content: "\e096";
}

.icon-todo.txt {
  display: flex;
  line-height: initial;
}
.icon-todo.txt:before {
  content: "\e096";
}

.icon-todo.md {
  display: flex;
  line-height: initial;
}
.icon-todo.md:before {
  content: "\e096";
}

.icon-bat {
  display: flex;
  line-height: initial;
}
.icon-bat:before {
  content: "\e0a2";
}

.icon-clojure {
  display: flex;
  line-height: initial;
}
.icon-clojure:before {
  content: "\e013";
}

.icon-coffeescript {
  display: flex;
  line-height: initial;
}
.icon-coffeescript:before {
  content: "\e016";
}

.icon-jsonc {
  display: flex;
  line-height: initial;
}
.icon-jsonc:before {
  content: "\e055";
}

.icon-json {
  display: flex;
  line-height: initial;
}
.icon-json:before {
  content: "\e055";
}

.icon-c {
  display: flex;
  line-height: initial;
}
.icon-c:before {
  content: "\e00c";
}

.icon-cpp {
  display: flex;
  line-height: initial;
}
.icon-cpp:before {
  content: "\e01a";
}

.icon-cuda-cpp {
  display: flex;
  line-height: initial;
}
.icon-cuda-cpp:before {
  content: "\e01f";
}

.icon-csharp {
  display: flex;
  line-height: initial;
}
.icon-csharp:before {
  content: "\e00b";
}

.icon-css {
  display: flex;
  line-height: initial;
}
.icon-css:before {
  content: "\e01d";
}

.icon-dart {
  display: flex;
  line-height: initial;
}
.icon-dart:before {
  content: "\e021";
}

.icon-dockerfile {
  display: flex;
  line-height: initial;
}
.icon-dockerfile:before {
  content: "\e025";
}

.icon-ignore,
.icon-gitignore {
  display: flex;
  line-height: initial;
}
.icon-ignore:before,
.icon-gitignore:before {
  content: "\e034";
}

.icon-fsharp {
  display: flex;
  line-height: initial;
}
.icon-fsharp:before {
  content: "\e02e";
}

.icon-git-commit {
  display: flex;
  line-height: initial;
}
.icon-git-commit:before {
  content: "\e034";
}

.icon-go {
  display: flex;
  line-height: initial;
}
.icon-go:before {
  content: "\e03a";
}

.icon-groovy {
  display: flex;
  line-height: initial;
}
.icon-groovy:before {
  content: "\e03d";
}

.icon-handlebars {
  display: flex;
  line-height: initial;
}
.icon-handlebars:before {
  content: "\e063";
}

.icon-html {
  display: flex;
  line-height: initial;
}
.icon-html:before {
  content: "\e048";
}

.icon-properties {
  display: flex;
  line-height: initial;
}
.icon-properties:before {
  content: "\e019";
}

.icon-java {
  display: flex;
  line-height: initial;
}
.icon-java:before {
  content: "\e050";
}

.icon-javascriptreact {
  display: flex;
  line-height: initial;
}
.icon-javascriptreact:before {
  content: "\e07d";
}

.icon-javascript {
  display: flex;
  line-height: initial;
}
.icon-javascript:before {
  content: "\e051";
}

.icon-julia {
  display: flex;
  line-height: initial;
}
.icon-julia:before {
  content: "\e056";
}

.icon-tex {
  display: flex;
  line-height: initial;
}
.icon-tex:before {
  content: "\e094";
}

.icon-latex {
  display: flex;
  line-height: initial;
}
.icon-latex:before {
  content: "\e094";
}

.icon-less {
  display: flex;
  line-height: initial;
}
.icon-less:before {
  content: "\e059";
}

.icon-lua {
  display: flex;
  line-height: initial;
}
.icon-lua:before {
  content: "\e05e";
}

.icon-makefile {
  display: flex;
  line-height: initial;
}
.icon-makefile:before {
  content: "\e05f";
}

.icon-markdown {
  display: flex;
  line-height: initial;
}
.icon-markdown:before {
  content: "\e060";
}

.icon-objective-c {
  display: flex;
  line-height: initial;
}
.icon-objective-c:before {
  content: "\e00c";
}

.icon-objective-cpp {
  display: flex;
  line-height: initial;
}
.icon-objective-cpp:before {
  content: "\e01a";
}

.icon-perl {
  display: flex;
  line-height: initial;
}
.icon-perl:before {
  content: "\e06e";
}

.icon-php {
  display: flex;
  line-height: initial;
}
.icon-php:before {
  content: "\e070";
}

.icon-powershell {
  display: flex;
  line-height: initial;
}
.icon-powershell:before {
  content: "\e074";
}

.icon-python {
  display: flex;
  line-height: initial;
}
.icon-python:before {
  content: "\e07b";
}

.icon-razor {
  display: flex;
  line-height: initial;
}
.icon-razor:before {
  content: "\e048";
}

.icon-ruby {
  display: flex;
  line-height: initial;
}
.icon-ruby:before {
  content: "\e081";
}

.icon-rust {
  display: flex;
  line-height: initial;
}
.icon-rust:before {
  content: "\e082";
}

.icon-scss {
  display: flex;
  line-height: initial;
}
.icon-scss:before {
  content: "\e084";
}

.icon-search-result {
  display: flex;
  line-height: initial;
}
.icon-search-result:before {
  content: "\e015";
}

.icon-shellscript {
  display: flex;
  line-height: initial;
}
.icon-shellscript:before {
  content: "\e089";
}

.icon-sql {
  display: flex;
  line-height: initial;
}
.icon-sql:before {
  content: "\e022";
}

.icon-swift {
  display: flex;
  line-height: initial;
}
.icon-swift:before {
  content: "\e092";
}

.icon-typescript {
  display: flex;
  line-height: initial;
}
.icon-typescript:before {
  content: "\e099";
}

.icon-typescriptreact {
  display: flex;
  line-height: initial;
}
.icon-typescriptreact:before {
  content: "\e07d";
}

.icon-xml {
  display: flex;
  line-height: initial;
}
.icon-xml:before {
  content: "\e0a5";
}

.icon-yaml {
  display: flex;
  line-height: initial;
}
.icon-yaml:before {
  content: "\e0a7";
}

.icon-dockercompose,
.icon-docker-compose {
  display: flex;
  line-height: initial;
}
.icon-dockercompose:before,
.icon-docker-compose:before {
  content: "\e025";
}

.icon-elixir {
  display: flex;
  line-height: initial;
}
.icon-elixir:before {
  content: "\e028";
}

.icon-haskell {
  display: flex;
  line-height: initial;
}
.icon-haskell:before {
  content: "\e044";
}

.icon-haxe {
  display: flex;
  line-height: initial;
}
.icon-haxe:before {
  content: "\e045";
}

.icon-kotlin {
  display: flex;
  line-height: initial;
}
.icon-kotlin:before {
  content: "\e058";
}

.icon-ocaml {
  display: flex;
  line-height: initial;
}
.icon-ocaml:before {
  content: "\e06a";
}

.icon-rescript {
  display: flex;
  line-height: initial;
}
.icon-rescript:before {
  content: "\e07f";
}

.icon-stylus {
  display: flex;
  line-height: initial;
}
.icon-stylus:before {
  content: "\e08e";
}

.icon-terraform {
  display: flex;
  line-height: initial;
}
.icon-terraform:before {
  content: "\e093";
}

.icon-jsonl {
  display: flex;
  line-height: initial;
}
.icon-jsonl:before {
  content: "\e055";
}

.icon-postcss {
  display: flex;
  line-height: initial;
}
.icon-postcss:before {
  content: "\e01d";
}

.icon-django-html {
  display: flex;
  line-height: initial;
}
.icon-django-html:before {
  content: "\e048";
}

.icon-blade {
  display: flex;
  line-height: initial;
}
.icon-blade:before {
  content: "\e070";
}

body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-default,
body.vscode-dark .icon-default,
body.cb-dark .icon-default,
body.dark .icon-default {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bsl,
body.vscode-dark .icon-bsl,
body.cb-dark .icon-bsl,
body.dark .icon-bsl {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mdo,
body.vscode-dark .icon-mdo,
body.cb-dark .icon-mdo,
body.dark .icon-mdo {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cls,
body.vscode-dark .icon-cls,
body.cb-dark .icon-cls,
body.dark .icon-cls {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-apex,
body.vscode-dark .icon-apex,
body.cb-dark .icon-apex,
body.dark .icon-apex {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-asm,
body.vscode-dark .icon-asm,
body.cb-dark .icon-asm,
body.dark .icon-asm {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-s,
body.vscode-dark .icon-s,
body.cb-dark .icon-s,
body.dark .icon-s {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bicep,
body.vscode-dark .icon-bicep,
body.cb-dark .icon-bicep,
body.dark .icon-bicep {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bzl,
body.vscode-dark .icon-bzl,
body.cb-dark .icon-bzl,
body.dark .icon-bzl {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bazel,
body.vscode-dark .icon-bazel,
body.cb-dark .icon-bazel,
body.dark .icon-bazel {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-build,
body.vscode-dark .icon-build,
body.cb-dark .icon-build,
body.dark .icon-build {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-workspace,
body.vscode-dark .icon-workspace,
body.cb-dark .icon-workspace,
body.dark .icon-workspace {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bazelignore,
body.vscode-dark .icon-bazelignore,
body.cb-dark .icon-bazelignore,
body.dark .icon-bazelignore {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bazelversion,
body.vscode-dark .icon-bazelversion,
body.cb-dark .icon-bazelversion,
body.dark .icon-bazelversion {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-h,
body.vscode-dark .icon-h,
body.cb-dark .icon-h,
body.dark .icon-h {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-aspx,
body.vscode-dark .icon-aspx,
body.cb-dark .icon-aspx,
body.dark .icon-aspx {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ascx,
body.vscode-dark .icon-ascx,
body.cb-dark .icon-ascx,
body.dark .icon-ascx {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-asax,
body.vscode-dark .icon-asax,
body.cb-dark .icon-asax,
body.dark .icon-asax {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-master,
body.vscode-dark .icon-master,
body.cb-dark .icon-master,
body.dark .icon-master {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hh,
body.vscode-dark .icon-hh,
body.cb-dark .icon-hh,
body.dark .icon-hh {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hpp,
body.vscode-dark .icon-hpp,
body.cb-dark .icon-hpp,
body.dark .icon-hpp {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hxx,
body.vscode-dark .icon-hxx,
body.cb-dark .icon-hxx,
body.dark .icon-hxx {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-h\+\+,
body.vscode-dark .icon-h\+\+,
body.cb-dark .icon-h\+\+,
body.dark .icon-h\+\+ {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-edn,
body.vscode-dark .icon-edn,
body.cb-dark .icon-edn,
body.dark .icon-edn {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cfc,
body.vscode-dark .icon-cfc,
body.cb-dark .icon-cfc,
body.dark .icon-cfc {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cfm,
body.vscode-dark .icon-cfm,
body.cb-dark .icon-cfm,
body.dark .icon-cfm {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-litcoffee,
body.vscode-dark .icon-litcoffee,
body.cb-dark .icon-litcoffee,
body.dark .icon-litcoffee {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-config,
body.vscode-dark .icon-config,
body.cb-dark .icon-config,
body.dark .icon-config {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cr,
body.vscode-dark .icon-cr,
body.cb-dark .icon-cr,
body.dark .icon-cr {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ecr,
body.vscode-dark .icon-ecr,
body.cb-dark .icon-ecr,
body.dark .icon-ecr {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-slang,
body.vscode-dark .icon-slang,
body.cb-dark .icon-slang,
body.dark .icon-slang {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cson,
body.vscode-dark .icon-cson,
body.cb-dark .icon-cson,
body.dark .icon-cson {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-css.map,
body.vscode-dark .icon-css.map,
body.cb-dark .icon-css.map,
body.dark .icon-css.map {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sss,
body.vscode-dark .icon-sss,
body.cb-dark .icon-sss,
body.dark .icon-sss {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-csv,
body.vscode-dark .icon-csv,
body.cb-dark .icon-csv,
body.dark .icon-csv {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-xls,
body.vscode-dark .icon-xls,
body.cb-dark .icon-xls,
body.dark .icon-xls {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-xlsx,
body.vscode-dark .icon-xlsx,
body.cb-dark .icon-xlsx,
body.dark .icon-xlsx {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ppt,
body.vscode-dark .icon-ppt,
body.cb-dark .icon-ppt,
body.dark .icon-ppt {
  color: #d95532;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pptx,
body.vscode-dark .icon-pptx,
body.cb-dark .icon-pptx,
body.dark .icon-pptx {
  color: #d95532;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cuh,
body.vscode-dark .icon-cuh,
body.cb-dark .icon-cuh,
body.dark .icon-cuh {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hu,
body.vscode-dark .icon-hu,
body.cb-dark .icon-hu,
body.dark .icon-hu {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cake,
body.vscode-dark .icon-cake,
body.cb-dark .icon-cake,
body.dark .icon-cake {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ctp,
body.vscode-dark .icon-ctp,
body.cb-dark .icon-ctp,
body.dark .icon-ctp {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-d,
body.vscode-dark .icon-d,
body.cb-dark .icon-d,
body.dark .icon-d {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-doc,
body.vscode-dark .icon-doc,
body.cb-dark .icon-doc,
body.dark .icon-doc {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-docx,
body.vscode-dark .icon-docx,
body.cb-dark .icon-docx,
body.dark .icon-docx {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ejs,
body.vscode-dark .icon-ejs,
body.cb-dark .icon-ejs,
body.dark .icon-ejs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ex,
body.vscode-dark .icon-ex,
body.cb-dark .icon-ex,
body.dark .icon-ex {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-exs,
body.vscode-dark .icon-exs,
body.cb-dark .icon-exs,
body.dark .icon-exs {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-elm,
body.vscode-dark .icon-elm,
body.cb-dark .icon-elm,
body.dark .icon-elm {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ico,
body.vscode-dark .icon-ico,
body.cb-dark .icon-ico,
body.dark .icon-ico {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitconfig,
body.vscode-dark .icon-gitconfig,
body.cb-dark .icon-gitconfig,
body.dark .icon-gitconfig {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitkeep,
body.vscode-dark .icon-gitkeep,
body.cb-dark .icon-gitkeep,
body.dark .icon-gitkeep {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitattributes,
body.vscode-dark .icon-gitattributes,
body.cb-dark .icon-gitattributes,
body.dark .icon-gitattributes {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitmodules,
body.vscode-dark .icon-gitmodules,
body.cb-dark .icon-gitmodules,
body.dark .icon-gitmodules {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-slide,
body.vscode-dark .icon-slide,
body.cb-dark .icon-slide,
body.dark .icon-slide {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-article,
body.vscode-dark .icon-article,
body.cb-dark .icon-article,
body.dark .icon-article {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gd,
body.vscode-dark .icon-gd,
body.cb-dark .icon-gd,
body.dark .icon-gd {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-godot,
body.vscode-dark .icon-godot,
body.cb-dark .icon-godot,
body.dark .icon-godot {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tres,
body.vscode-dark .icon-tres,
body.cb-dark .icon-tres,
body.dark .icon-tres {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tscn,
body.vscode-dark .icon-tscn,
body.cb-dark .icon-tscn,
body.dark .icon-tscn {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gradle,
body.vscode-dark .icon-gradle,
body.cb-dark .icon-gradle,
body.dark .icon-gradle {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gsp,
body.vscode-dark .icon-gsp,
body.cb-dark .icon-gsp,
body.dark .icon-gsp {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gql,
body.vscode-dark .icon-gql,
body.cb-dark .icon-gql,
body.dark .icon-gql {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-graphql,
body.vscode-dark .icon-graphql,
body.cb-dark .icon-graphql,
body.dark .icon-graphql {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-graphqls,
body.vscode-dark .icon-graphqls,
body.cb-dark .icon-graphqls,
body.dark .icon-graphqls {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hack,
body.vscode-dark .icon-hack,
body.cb-dark .icon-hack,
body.dark .icon-hack {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-haml,
body.vscode-dark .icon-haml,
body.cb-dark .icon-haml,
body.dark .icon-haml {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hs,
body.vscode-dark .icon-hs,
body.cb-dark .icon-hs,
body.dark .icon-hs {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-lhs,
body.vscode-dark .icon-lhs,
body.cb-dark .icon-lhs,
body.dark .icon-lhs {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hx,
body.vscode-dark .icon-hx,
body.cb-dark .icon-hx,
body.dark .icon-hx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hxs,
body.vscode-dark .icon-hxs,
body.cb-dark .icon-hxs,
body.dark .icon-hxs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hxp,
body.vscode-dark .icon-hxp,
body.cb-dark .icon-hxp,
body.dark .icon-hxp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hxml,
body.vscode-dark .icon-hxml,
body.cb-dark .icon-hxml,
body.dark .icon-hxml {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jade,
body.vscode-dark .icon-jade,
body.cb-dark .icon-jade,
body.dark .icon-jade {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-class,
body.vscode-dark .icon-class,
body.cb-dark .icon-class,
body.dark .icon-class {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-classpath,
body.vscode-dark .icon-classpath,
body.cb-dark .icon-classpath,
body.dark .icon-classpath {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-js.map,
body.vscode-dark .icon-js.map,
body.cb-dark .icon-js.map,
body.dark .icon-js.map {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cjs.map,
body.vscode-dark .icon-cjs.map,
body.cb-dark .icon-cjs.map,
body.dark .icon-cjs.map {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mjs.map,
body.vscode-dark .icon-mjs.map,
body.cb-dark .icon-mjs.map,
body.dark .icon-mjs.map {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.js,
body.vscode-dark .icon-spec.js,
body.cb-dark .icon-spec.js,
body.dark .icon-spec.js {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.cjs,
body.vscode-dark .icon-spec.cjs,
body.cb-dark .icon-spec.cjs,
body.dark .icon-spec.cjs {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.mjs,
body.vscode-dark .icon-spec.mjs,
body.cb-dark .icon-spec.mjs,
body.dark .icon-spec.mjs {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.js,
body.vscode-dark .icon-test.js,
body.cb-dark .icon-test.js,
body.dark .icon-test.js {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.cjs,
body.vscode-dark .icon-test.cjs,
body.cb-dark .icon-test.cjs,
body.dark .icon-test.cjs {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.mjs,
body.vscode-dark .icon-test.mjs,
body.cb-dark .icon-test.mjs,
body.dark .icon-test.mjs {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-es,
body.vscode-dark .icon-es,
body.cb-dark .icon-es,
body.dark .icon-es {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-es5,
body.vscode-dark .icon-es5,
body.cb-dark .icon-es5,
body.dark .icon-es5 {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-es7,
body.vscode-dark .icon-es7,
body.cb-dark .icon-es7,
body.dark .icon-es7 {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jinja,
body.vscode-dark .icon-jinja,
body.cb-dark .icon-jinja,
body.dark .icon-jinja {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jinja2,
body.vscode-dark .icon-jinja2,
body.cb-dark .icon-jinja2,
body.dark .icon-jinja2 {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-kt,
body.vscode-dark .icon-kt,
body.cb-dark .icon-kt,
body.dark .icon-kt {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-kts,
body.vscode-dark .icon-kts,
body.cb-dark .icon-kts,
body.dark .icon-kts {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-liquid,
body.vscode-dark .icon-liquid,
body.cb-dark .icon-liquid,
body.dark .icon-liquid {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ls,
body.vscode-dark .icon-ls,
body.cb-dark .icon-ls,
body.dark .icon-ls {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-argdown,
body.vscode-dark .icon-argdown,
body.cb-dark .icon-argdown,
body.dark .icon-argdown {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ad,
body.vscode-dark .icon-ad,
body.cb-dark .icon-ad,
body.dark .icon-ad {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mustache,
body.vscode-dark .icon-mustache,
body.cb-dark .icon-mustache,
body.dark .icon-mustache {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stache,
body.vscode-dark .icon-stache,
body.cb-dark .icon-stache,
body.dark .icon-stache {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nim,
body.vscode-dark .icon-nim,
body.cb-dark .icon-nim,
body.dark .icon-nim {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nims,
body.vscode-dark .icon-nims,
body.cb-dark .icon-nims,
body.dark .icon-nims {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-github-issues,
body.vscode-dark .icon-github-issues,
body.cb-dark .icon-github-issues,
body.dark .icon-github-issues {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ipynb,
body.vscode-dark .icon-ipynb,
body.cb-dark .icon-ipynb,
body.dark .icon-ipynb {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-njk,
body.vscode-dark .icon-njk,
body.cb-dark .icon-njk,
body.dark .icon-njk {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nunjucks,
body.vscode-dark .icon-nunjucks,
body.cb-dark .icon-nunjucks,
body.dark .icon-nunjucks {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nunjs,
body.vscode-dark .icon-nunjs,
body.cb-dark .icon-nunjs,
body.dark .icon-nunjs {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nunj,
body.vscode-dark .icon-nunj,
body.cb-dark .icon-nunj,
body.dark .icon-nunj {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-njs,
body.vscode-dark .icon-njs,
body.cb-dark .icon-njs,
body.dark .icon-njs {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-nj,
body.vscode-dark .icon-nj,
body.cb-dark .icon-nj,
body.dark .icon-nj {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-npm-debug.log,
body.vscode-dark .icon-npm-debug.log,
body.cb-dark .icon-npm-debug.log,
body.dark .icon-npm-debug.log {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-npmignore,
body.vscode-dark .icon-npmignore,
body.cb-dark .icon-npmignore,
body.dark .icon-npmignore {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-npmrc,
body.vscode-dark .icon-npmrc,
body.cb-dark .icon-npmrc,
body.dark .icon-npmrc {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ml,
body.vscode-dark .icon-ml,
body.cb-dark .icon-ml,
body.dark .icon-ml {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mli,
body.vscode-dark .icon-mli,
body.cb-dark .icon-mli,
body.dark .icon-mli {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cmx,
body.vscode-dark .icon-cmx,
body.cb-dark .icon-cmx,
body.dark .icon-cmx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cmxa,
body.vscode-dark .icon-cmxa,
body.cb-dark .icon-cmxa,
body.dark .icon-cmxa {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-odata,
body.vscode-dark .icon-odata,
body.cb-dark .icon-odata,
body.dark .icon-odata {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-php.inc,
body.vscode-dark .icon-php.inc,
body.cb-dark .icon-php.inc,
body.dark .icon-php.inc {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pipeline,
body.vscode-dark .icon-pipeline,
body.cb-dark .icon-pipeline,
body.dark .icon-pipeline {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pddl,
body.vscode-dark .icon-pddl,
body.cb-dark .icon-pddl,
body.dark .icon-pddl {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-plan,
body.vscode-dark .icon-plan,
body.cb-dark .icon-plan,
body.dark .icon-plan {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-happenings,
body.vscode-dark .icon-happenings,
body.cb-dark .icon-happenings,
body.dark .icon-happenings {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-prisma,
body.vscode-dark .icon-prisma,
body.cb-dark .icon-prisma,
body.dark .icon-prisma {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pp,
body.vscode-dark .icon-pp,
body.cb-dark .icon-pp,
body.dark .icon-pp {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-epp,
body.vscode-dark .icon-epp,
body.cb-dark .icon-epp,
body.dark .icon-epp {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-purs,
body.vscode-dark .icon-purs,
body.cb-dark .icon-purs,
body.dark .icon-purs {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.jsx,
body.vscode-dark .icon-spec.jsx,
body.cb-dark .icon-spec.jsx,
body.dark .icon-spec.jsx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.jsx,
body.vscode-dark .icon-test.jsx,
body.cb-dark .icon-test.jsx,
body.dark .icon-test.jsx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cjsx,
body.vscode-dark .icon-cjsx,
body.cb-dark .icon-cjsx,
body.dark .icon-cjsx {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.tsx,
body.vscode-dark .icon-spec.tsx,
body.cb-dark .icon-spec.tsx,
body.dark .icon-spec.tsx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.tsx,
body.vscode-dark .icon-test.tsx,
body.cb-dark .icon-test.tsx,
body.dark .icon-test.tsx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-re,
body.vscode-dark .icon-re,
body.cb-dark .icon-re,
body.dark .icon-re {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-res,
body.vscode-dark .icon-res,
body.cb-dark .icon-res,
body.dark .icon-res {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-resi,
body.vscode-dark .icon-resi,
body.cb-dark .icon-resi,
body.dark .icon-resi {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-r,
body.vscode-dark .icon-r,
body.cb-dark .icon-r,
body.dark .icon-r {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-rmd,
body.vscode-dark .icon-rmd,
body.cb-dark .icon-rmd,
body.dark .icon-rmd {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-erb,
body.vscode-dark .icon-erb,
body.cb-dark .icon-erb,
body.dark .icon-erb {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-erb.html,
body.vscode-dark .icon-erb.html,
body.cb-dark .icon-erb.html,
body.dark .icon-erb.html {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-html.erb,
body.vscode-dark .icon-html.erb,
body.cb-dark .icon-html.erb,
body.dark .icon-html.erb {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sass,
body.vscode-dark .icon-sass,
body.cb-dark .icon-sass,
body.dark .icon-sass {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-springbeans,
body.vscode-dark .icon-springbeans,
body.cb-dark .icon-springbeans,
body.dark .icon-springbeans {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-slim,
body.vscode-dark .icon-slim,
body.cb-dark .icon-slim,
body.dark .icon-slim {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-smarty.tpl,
body.vscode-dark .icon-smarty.tpl,
body.cb-dark .icon-smarty.tpl,
body.dark .icon-smarty.tpl {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tpl,
body.vscode-dark .icon-tpl,
body.cb-dark .icon-tpl,
body.dark .icon-tpl {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sbt,
body.vscode-dark .icon-sbt,
body.cb-dark .icon-sbt,
body.dark .icon-sbt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-scala,
body.vscode-dark .icon-scala,
body.cb-dark .icon-scala,
body.dark .icon-scala {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sol,
body.vscode-dark .icon-sol,
body.cb-dark .icon-sol,
body.dark .icon-sol {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-styl,
body.vscode-dark .icon-styl,
body.cb-dark .icon-styl,
body.dark .icon-styl {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-svelte,
body.vscode-dark .icon-svelte,
body.cb-dark .icon-svelte,
body.dark .icon-svelte {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-soql,
body.vscode-dark .icon-soql,
body.cb-dark .icon-soql,
body.dark .icon-soql {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tf,
body.vscode-dark .icon-tf,
body.cb-dark .icon-tf,
body.dark .icon-tf {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tf.json,
body.vscode-dark .icon-tf.json,
body.cb-dark .icon-tf.json,
body.dark .icon-tf.json {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tfvars,
body.vscode-dark .icon-tfvars,
body.cb-dark .icon-tfvars,
body.dark .icon-tfvars {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tfvars.json,
body.vscode-dark .icon-tfvars.json,
body.cb-dark .icon-tfvars.json,
body.dark .icon-tfvars.json {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dtx,
body.vscode-dark .icon-dtx,
body.cb-dark .icon-dtx,
body.dark .icon-dtx {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ins,
body.vscode-dark .icon-ins,
body.cb-dark .icon-ins,
body.dark .icon-ins {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-toml,
body.vscode-dark .icon-toml,
body.cb-dark .icon-toml,
body.dark .icon-toml {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-twig,
body.vscode-dark .icon-twig,
body.cb-dark .icon-twig,
body.dark .icon-twig {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spec.ts,
body.vscode-dark .icon-spec.ts,
body.cb-dark .icon-spec.ts,
body.dark .icon-spec.ts {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-test.ts,
body.vscode-dark .icon-test.ts,
body.cb-dark .icon-test.ts,
body.dark .icon-test.ts {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vala,
body.vscode-dark .icon-vala,
body.cb-dark .icon-vala,
body.dark .icon-vala {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vapi,
body.vscode-dark .icon-vapi,
body.cb-dark .icon-vapi,
body.dark .icon-vapi {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-component,
body.vscode-dark .icon-component,
body.cb-dark .icon-component,
body.dark .icon-component {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vue,
body.vscode-dark .icon-vue,
body.cb-dark .icon-vue,
body.dark .icon-vue {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-wasm,
body.vscode-dark .icon-wasm,
body.cb-dark .icon-wasm,
body.dark .icon-wasm {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-wat,
body.vscode-dark .icon-wat,
body.cb-dark .icon-wat,
body.dark .icon-wat {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pro,
body.vscode-dark .icon-pro,
body.cb-dark .icon-pro,
body.dark .icon-pro {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-zig,
body.vscode-dark .icon-zig,
body.cb-dark .icon-zig,
body.dark .icon-zig {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jar,
body.vscode-dark .icon-jar,
body.cb-dark .icon-jar,
body.dark .icon-jar {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-zip,
body.vscode-dark .icon-zip,
body.cb-dark .icon-zip,
body.dark .icon-zip {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-wgt,
body.vscode-dark .icon-wgt,
body.cb-dark .icon-wgt,
body.dark .icon-wgt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ai,
body.vscode-dark .icon-ai,
body.cb-dark .icon-ai,
body.dark .icon-ai {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-psd,
body.vscode-dark .icon-psd,
body.cb-dark .icon-psd,
body.dark .icon-psd {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pdf,
body.vscode-dark .icon-pdf,
body.cb-dark .icon-pdf,
body.dark .icon-pdf {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eot,
body.vscode-dark .icon-eot,
body.cb-dark .icon-eot,
body.dark .icon-eot {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ttf,
body.vscode-dark .icon-ttf,
body.cb-dark .icon-ttf,
body.dark .icon-ttf {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-woff,
body.vscode-dark .icon-woff,
body.cb-dark .icon-woff,
body.dark .icon-woff {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-woff2,
body.vscode-dark .icon-woff2,
body.cb-dark .icon-woff2,
body.dark .icon-woff2 {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-otf,
body.vscode-dark .icon-otf,
body.cb-dark .icon-otf,
body.dark .icon-otf {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-avif,
body.vscode-dark .icon-avif,
body.cb-dark .icon-avif,
body.dark .icon-avif {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gif,
body.vscode-dark .icon-gif,
body.cb-dark .icon-gif,
body.dark .icon-gif {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jpg,
body.vscode-dark .icon-jpg,
body.cb-dark .icon-jpg,
body.dark .icon-jpg {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jpeg,
body.vscode-dark .icon-jpeg,
body.cb-dark .icon-jpeg,
body.dark .icon-jpeg {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-png,
body.vscode-dark .icon-png,
body.cb-dark .icon-png,
body.dark .icon-png {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pxm,
body.vscode-dark .icon-pxm,
body.cb-dark .icon-pxm,
body.dark .icon-pxm {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-svg,
body.vscode-dark .icon-svg,
body.cb-dark .icon-svg,
body.dark .icon-svg {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-svgx,
body.vscode-dark .icon-svgx,
body.cb-dark .icon-svgx,
body.dark .icon-svgx {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tiff,
body.vscode-dark .icon-tiff,
body.cb-dark .icon-tiff,
body.dark .icon-tiff {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webp,
body.vscode-dark .icon-webp,
body.cb-dark .icon-webp,
body.dark .icon-webp {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bmp,
body.vscode-dark .icon-bmp,
body.cb-dark .icon-bmp,
body.dark .icon-bmp {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-drawio,
body.vscode-dark .icon-drawio,
body.cb-dark .icon-drawio,
body.dark .icon-drawio {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dio,
body.vscode-dark .icon-dio,
body.cb-dark .icon-dio,
body.dark .icon-dio {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-excalidraw,
body.vscode-dark .icon-excalidraw,
body.cb-dark .icon-excalidraw,
body.dark .icon-excalidraw {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sublime-project,
body.vscode-dark .icon-sublime-project,
body.cb-dark .icon-sublime-project,
body.dark .icon-sublime-project {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sublime-workspace,
body.vscode-dark .icon-sublime-workspace,
body.cb-dark .icon-sublime-workspace,
body.dark .icon-sublime-workspace {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mov,
body.vscode-dark .icon-mov,
body.cb-dark .icon-mov,
body.dark .icon-mov {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ogv,
body.vscode-dark .icon-ogv,
body.cb-dark .icon-ogv,
body.dark .icon-ogv {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webm,
body.vscode-dark .icon-webm,
body.cb-dark .icon-webm,
body.dark .icon-webm {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-avi,
body.vscode-dark .icon-avi,
body.cb-dark .icon-avi,
body.dark .icon-avi {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mpg,
body.vscode-dark .icon-mpg,
body.cb-dark .icon-mpg,
body.dark .icon-mpg {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mp4,
body.vscode-dark .icon-mp4,
body.cb-dark .icon-mp4,
body.dark .icon-mp4 {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mp3,
body.vscode-dark .icon-mp3,
body.cb-dark .icon-mp3,
body.dark .icon-mp3 {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ogg,
body.vscode-dark .icon-ogg,
body.cb-dark .icon-ogg,
body.dark .icon-ogg {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-aac,
body.vscode-dark .icon-aac,
body.cb-dark .icon-aac,
body.dark .icon-aac {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-wav,
body.vscode-dark .icon-wav,
body.cb-dark .icon-wav,
body.dark .icon-wav {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-flac,
body.vscode-dark .icon-flac,
body.cb-dark .icon-flac,
body.dark .icon-flac {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-3ds,
body.vscode-dark .icon-3ds,
body.cb-dark .icon-3ds,
body.dark .icon-3ds {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-3dm,
body.vscode-dark .icon-3dm,
body.cb-dark .icon-3dm,
body.dark .icon-3dm {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stl,
body.vscode-dark .icon-stl,
body.cb-dark .icon-stl,
body.dark .icon-stl {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-obj,
body.vscode-dark .icon-obj,
body.cb-dark .icon-obj,
body.dark .icon-obj {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dae,
body.vscode-dark .icon-dae,
body.cb-dark .icon-dae,
body.dark .icon-dae {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babelrc,
body.vscode-dark .icon-babelrc,
body.cb-dark .icon-babelrc,
body.dark .icon-babelrc {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babelrc.js,
body.vscode-dark .icon-babelrc.js,
body.cb-dark .icon-babelrc.js,
body.dark .icon-babelrc.js {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babelrc.cjs,
body.vscode-dark .icon-babelrc.cjs,
body.cb-dark .icon-babelrc.cjs,
body.dark .icon-babelrc.cjs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bazelrc,
body.vscode-dark .icon-bazelrc,
body.cb-dark .icon-bazelrc,
body.dark .icon-bazelrc {
  color: #4d5a5e;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bowerrc,
body.vscode-dark .icon-bowerrc,
body.cb-dark .icon-bowerrc,
body.dark .icon-bowerrc {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dockerignore,
body.vscode-dark .icon-dockerignore,
body.cb-dark .icon-dockerignore,
body.dark .icon-dockerignore {
  color: #4d5a5e;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-codeclimate.yml,
body.vscode-dark .icon-codeclimate.yml,
body.cb-dark .icon-codeclimate.yml,
body.dark .icon-codeclimate.yml {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc,
body.vscode-dark .icon-eslintrc,
body.cb-dark .icon-eslintrc,
body.dark .icon-eslintrc {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc.js,
body.vscode-dark .icon-eslintrc.js,
body.cb-dark .icon-eslintrc.js,
body.dark .icon-eslintrc.js {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc.cjs,
body.vscode-dark .icon-eslintrc.cjs,
body.cb-dark .icon-eslintrc.cjs,
body.dark .icon-eslintrc.cjs {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc.yaml,
body.vscode-dark .icon-eslintrc.yaml,
body.cb-dark .icon-eslintrc.yaml,
body.dark .icon-eslintrc.yaml {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc.yml,
body.vscode-dark .icon-eslintrc.yml,
body.cb-dark .icon-eslintrc.yml,
body.dark .icon-eslintrc.yml {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintrc.json,
body.vscode-dark .icon-eslintrc.json,
body.cb-dark .icon-eslintrc.json,
body.dark .icon-eslintrc.json {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslintignore,
body.vscode-dark .icon-eslintignore,
body.cb-dark .icon-eslintignore,
body.dark .icon-eslintignore {
  color: #4d5a5e;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-firebaserc,
body.vscode-dark .icon-firebaserc,
body.cb-dark .icon-firebaserc,
body.dark .icon-firebaserc {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitlab-ci.yml,
body.vscode-dark .icon-gitlab-ci.yml,
body.cb-dark .icon-gitlab-ci.yml,
body.dark .icon-gitlab-ci.yml {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jshintrc,
body.vscode-dark .icon-jshintrc,
body.cb-dark .icon-jshintrc,
body.dark .icon-jshintrc {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jscsrc,
body.vscode-dark .icon-jscsrc,
body.cb-dark .icon-jscsrc,
body.dark .icon-jscsrc {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintrc,
body.vscode-dark .icon-stylelintrc,
body.cb-dark .icon-stylelintrc,
body.dark .icon-stylelintrc {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintrc.json,
body.vscode-dark .icon-stylelintrc.json,
body.cb-dark .icon-stylelintrc.json,
body.dark .icon-stylelintrc.json {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintrc.yaml,
body.vscode-dark .icon-stylelintrc.yaml,
body.cb-dark .icon-stylelintrc.yaml,
body.dark .icon-stylelintrc.yaml {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintrc.yml,
body.vscode-dark .icon-stylelintrc.yml,
body.cb-dark .icon-stylelintrc.yml,
body.dark .icon-stylelintrc.yml {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintrc.js,
body.vscode-dark .icon-stylelintrc.js,
body.cb-dark .icon-stylelintrc.js,
body.dark .icon-stylelintrc.js {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelintignore,
body.vscode-dark .icon-stylelintignore,
body.cb-dark .icon-stylelintignore,
body.dark .icon-stylelintignore {
  color: #4d5a5e;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-direnv,
body.vscode-dark .icon-direnv,
body.cb-dark .icon-direnv,
body.dark .icon-direnv {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-env,
body.vscode-dark .icon-env,
body.cb-dark .icon-env,
body.dark .icon-env {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-static,
body.vscode-dark .icon-static,
body.cb-dark .icon-static,
body.dark .icon-static {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-slugignore,
body.vscode-dark .icon-slugignore,
body.cb-dark .icon-slugignore,
body.dark .icon-slugignore {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tmp,
body.vscode-dark .icon-tmp,
body.cb-dark .icon-tmp,
body.dark .icon-tmp {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-htaccess,
body.vscode-dark .icon-htaccess,
body.cb-dark .icon-htaccess,
body.dark .icon-htaccess {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-key,
body.vscode-dark .icon-key,
body.cb-dark .icon-key,
body.dark .icon-key {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cert,
body.vscode-dark .icon-cert,
body.cb-dark .icon-cert,
body.dark .icon-cert {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cer,
body.vscode-dark .icon-cer,
body.cb-dark .icon-cer,
body.dark .icon-cer {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-crt,
body.vscode-dark .icon-crt,
body.cb-dark .icon-crt,
body.dark .icon-crt {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pem,
body.vscode-dark .icon-pem,
body.cb-dark .icon-pem,
body.dark .icon-pem {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ds_store,
body.vscode-dark .icon-ds_store,
body.cb-dark .icon-ds_store,
body.dark .icon-ds_store {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mix,
body.vscode-dark .icon-mix,
body.cb-dark .icon-mix,
body.dark .icon-mix {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-karma.conf.js,
body.vscode-dark .icon-karma.conf.js,
body.cb-dark .icon-karma.conf.js,
body.dark .icon-karma.conf.js {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-karma.conf.cjs,
body.vscode-dark .icon-karma.conf.cjs,
body.cb-dark .icon-karma.conf.cjs,
body.dark .icon-karma.conf.cjs {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-karma.conf.mjs,
body.vscode-dark .icon-karma.conf.mjs,
body.cb-dark .icon-karma.conf.mjs,
body.dark .icon-karma.conf.mjs {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-karma.conf.coffee,
body.vscode-dark .icon-karma.conf.coffee,
body.cb-dark .icon-karma.conf.coffee,
body.dark .icon-karma.conf.coffee {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-readme.md,
body.vscode-dark .icon-readme.md,
body.cb-dark .icon-readme.md,
body.dark .icon-readme.md {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-readme.txt,
body.vscode-dark .icon-readme.txt,
body.cb-dark .icon-readme.txt,
body.dark .icon-readme.txt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-readme,
body.vscode-dark .icon-readme,
body.cb-dark .icon-readme,
body.dark .icon-readme {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changelog.md,
body.vscode-dark .icon-changelog.md,
body.cb-dark .icon-changelog.md,
body.dark .icon-changelog.md {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changelog.txt,
body.vscode-dark .icon-changelog.txt,
body.cb-dark .icon-changelog.txt,
body.dark .icon-changelog.txt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changelog,
body.vscode-dark .icon-changelog,
body.cb-dark .icon-changelog,
body.dark .icon-changelog {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changes.md,
body.vscode-dark .icon-changes.md,
body.cb-dark .icon-changes.md,
body.dark .icon-changes.md {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changes.txt,
body.vscode-dark .icon-changes.txt,
body.cb-dark .icon-changes.txt,
body.dark .icon-changes.txt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-changes,
body.vscode-dark .icon-changes,
body.cb-dark .icon-changes,
body.dark .icon-changes {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-version.md,
body.vscode-dark .icon-version.md,
body.cb-dark .icon-version.md,
body.dark .icon-version.md {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-version.txt,
body.vscode-dark .icon-version.txt,
body.cb-dark .icon-version.txt,
body.dark .icon-version.txt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-version,
body.vscode-dark .icon-version,
body.cb-dark .icon-version,
body.dark .icon-version {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mvnw,
body.vscode-dark .icon-mvnw,
body.cb-dark .icon-mvnw,
body.dark .icon-mvnw {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pom.xml,
body.vscode-dark .icon-pom.xml,
body.cb-dark .icon-pom.xml,
body.dark .icon-pom.xml {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tsconfig.json,
body.vscode-dark .icon-tsconfig.json,
body.cb-dark .icon-tsconfig.json,
body.dark .icon-tsconfig.json {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.js,
body.vscode-dark .icon-vite.config.js,
body.cb-dark .icon-vite.config.js,
body.dark .icon-vite.config.js {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.ts,
body.vscode-dark .icon-vite.config.ts,
body.cb-dark .icon-vite.config.ts,
body.dark .icon-vite.config.ts {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.mjs,
body.vscode-dark .icon-vite.config.mjs,
body.cb-dark .icon-vite.config.mjs,
body.dark .icon-vite.config.mjs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.mts,
body.vscode-dark .icon-vite.config.mts,
body.cb-dark .icon-vite.config.mts,
body.dark .icon-vite.config.mts {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.cjs,
body.vscode-dark .icon-vite.config.cjs,
body.cb-dark .icon-vite.config.cjs,
body.dark .icon-vite.config.cjs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite.config.cts,
body.vscode-dark .icon-vite.config.cts,
body.cb-dark .icon-vite.config.cts,
body.dark .icon-vite.config.cts {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-swagger.json,
body.vscode-dark .icon-swagger.json,
body.cb-dark .icon-swagger.json,
body.dark .icon-swagger.json {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-swagger.yml,
body.vscode-dark .icon-swagger.yml,
body.cb-dark .icon-swagger.yml,
body.dark .icon-swagger.yml {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-swagger.yaml,
body.vscode-dark .icon-swagger.yaml,
body.cb-dark .icon-swagger.yaml,
body.dark .icon-swagger.yaml {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-mime.types,
body.vscode-dark .icon-mime.types,
body.cb-dark .icon-mime.types,
body.dark .icon-mime.types {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jenkinsfile,
body.vscode-dark .icon-jenkinsfile,
body.cb-dark .icon-jenkinsfile,
body.dark .icon-jenkinsfile {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babel.config.js,
body.vscode-dark .icon-babel.config.js,
body.cb-dark .icon-babel.config.js,
body.dark .icon-babel.config.js {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babel.config.json,
body.vscode-dark .icon-babel.config.json,
body.cb-dark .icon-babel.config.json,
body.dark .icon-babel.config.json {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babel.config.cjs,
body.vscode-dark .icon-babel.config.cjs,
body.cb-dark .icon-babel.config.cjs,
body.dark .icon-babel.config.cjs {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-build.bazel,
body.vscode-dark .icon-build.bazel,
body.cb-dark .icon-build.bazel,
body.dark .icon-build.bazel {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-workspace.bazel,
body.vscode-dark .icon-workspace.bazel,
body.cb-dark .icon-workspace.bazel,
body.dark .icon-workspace.bazel {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bower.json,
body.vscode-dark .icon-bower.json,
body.cb-dark .icon-bower.json,
body.dark .icon-bower.json {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-docker-healthcheck,
body.vscode-dark .icon-docker-healthcheck,
body.cb-dark .icon-docker-healthcheck,
body.dark .icon-docker-healthcheck {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslint.config.js,
body.vscode-dark .icon-eslint.config.js,
body.cb-dark .icon-eslint.config.js,
body.dark .icon-eslint.config.js {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-firebase.json,
body.vscode-dark .icon-firebase.json,
body.cb-dark .icon-firebase.json,
body.dark .icon-firebase.json {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-geckodriver,
body.vscode-dark .icon-geckodriver,
body.cb-dark .icon-geckodriver,
body.dark .icon-geckodriver {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gruntfile.js,
body.vscode-dark .icon-gruntfile.js,
body.cb-dark .icon-gruntfile.js,
body.dark .icon-gruntfile.js {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gruntfile.babel.js,
body.vscode-dark .icon-gruntfile.babel.js,
body.cb-dark .icon-gruntfile.babel.js,
body.dark .icon-gruntfile.babel.js {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gruntfile.coffee,
body.vscode-dark .icon-gruntfile.coffee,
body.cb-dark .icon-gruntfile.coffee,
body.dark .icon-gruntfile.coffee {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gulpfile,
body.vscode-dark .icon-gulpfile,
body.cb-dark .icon-gulpfile,
body.dark .icon-gulpfile {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gulpfile.js,
body.vscode-dark .icon-gulpfile.js,
body.cb-dark .icon-gulpfile.js,
body.dark .icon-gulpfile.js {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ionic.config.json,
body.vscode-dark .icon-ionic.config.json,
body.cb-dark .icon-ionic.config.json,
body.dark .icon-ionic.config.json {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ionic.project,
body.vscode-dark .icon-ionic.project,
body.cb-dark .icon-ionic.project,
body.dark .icon-ionic.project {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-platformio.ini,
body.vscode-dark .icon-platformio.ini,
body.cb-dark .icon-platformio.ini,
body.dark .icon-platformio.ini {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-rollup.config.js,
body.vscode-dark .icon-rollup.config.js,
body.cb-dark .icon-rollup.config.js,
body.dark .icon-rollup.config.js {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sass-lint.yml,
body.vscode-dark .icon-sass-lint.yml,
body.cb-dark .icon-sass-lint.yml,
body.dark .icon-sass-lint.yml {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelint.config.js,
body.vscode-dark .icon-stylelint.config.js,
body.cb-dark .icon-stylelint.config.js,
body.dark .icon-stylelint.config.js {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelint.config.cjs,
body.vscode-dark .icon-stylelint.config.cjs,
body.cb-dark .icon-stylelint.config.cjs,
body.dark .icon-stylelint.config.cjs {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelint.config.mjs,
body.vscode-dark .icon-stylelint.config.mjs,
body.cb-dark .icon-stylelint.config.mjs,
body.dark .icon-stylelint.config.mjs {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-yarn.clean,
body.vscode-dark .icon-yarn.clean,
body.cb-dark .icon-yarn.clean,
body.dark .icon-yarn.clean {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-yarn.lock,
body.vscode-dark .icon-yarn.lock,
body.cb-dark .icon-yarn.lock,
body.dark .icon-yarn.lock {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.js,
body.vscode-dark .icon-webpack.config.js,
body.cb-dark .icon-webpack.config.js,
body.dark .icon-webpack.config.js {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.cjs,
body.vscode-dark .icon-webpack.config.cjs,
body.cb-dark .icon-webpack.config.cjs,
body.dark .icon-webpack.config.cjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.mjs,
body.vscode-dark .icon-webpack.config.mjs,
body.cb-dark .icon-webpack.config.mjs,
body.dark .icon-webpack.config.mjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.ts,
body.vscode-dark .icon-webpack.config.ts,
body.cb-dark .icon-webpack.config.ts,
body.dark .icon-webpack.config.ts {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.build.js,
body.vscode-dark .icon-webpack.config.build.js,
body.cb-dark .icon-webpack.config.build.js,
body.dark .icon-webpack.config.build.js {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.build.cjs,
body.vscode-dark .icon-webpack.config.build.cjs,
body.cb-dark .icon-webpack.config.build.cjs,
body.dark .icon-webpack.config.build.cjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.build.mjs,
body.vscode-dark .icon-webpack.config.build.mjs,
body.cb-dark .icon-webpack.config.build.mjs,
body.dark .icon-webpack.config.build.mjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.config.build.ts,
body.vscode-dark .icon-webpack.config.build.ts,
body.cb-dark .icon-webpack.config.build.ts,
body.dark .icon-webpack.config.build.ts {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.common.js,
body.vscode-dark .icon-webpack.common.js,
body.cb-dark .icon-webpack.common.js,
body.dark .icon-webpack.common.js {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.common.cjs,
body.vscode-dark .icon-webpack.common.cjs,
body.cb-dark .icon-webpack.common.cjs,
body.dark .icon-webpack.common.cjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.common.mjs,
body.vscode-dark .icon-webpack.common.mjs,
body.cb-dark .icon-webpack.common.mjs,
body.dark .icon-webpack.common.mjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.common.ts,
body.vscode-dark .icon-webpack.common.ts,
body.cb-dark .icon-webpack.common.ts,
body.dark .icon-webpack.common.ts {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.dev.js,
body.vscode-dark .icon-webpack.dev.js,
body.cb-dark .icon-webpack.dev.js,
body.dark .icon-webpack.dev.js {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.dev.cjs,
body.vscode-dark .icon-webpack.dev.cjs,
body.cb-dark .icon-webpack.dev.cjs,
body.dark .icon-webpack.dev.cjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.dev.mjs,
body.vscode-dark .icon-webpack.dev.mjs,
body.cb-dark .icon-webpack.dev.mjs,
body.dark .icon-webpack.dev.mjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.dev.ts,
body.vscode-dark .icon-webpack.dev.ts,
body.cb-dark .icon-webpack.dev.ts,
body.dark .icon-webpack.dev.ts {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.prod.js,
body.vscode-dark .icon-webpack.prod.js,
body.cb-dark .icon-webpack.prod.js,
body.dark .icon-webpack.prod.js {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.prod.cjs,
body.vscode-dark .icon-webpack.prod.cjs,
body.cb-dark .icon-webpack.prod.cjs,
body.dark .icon-webpack.prod.cjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.prod.mjs,
body.vscode-dark .icon-webpack.prod.mjs,
body.cb-dark .icon-webpack.prod.mjs,
body.dark .icon-webpack.prod.mjs {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack.prod.ts,
body.vscode-dark .icon-webpack.prod.ts,
body.cb-dark .icon-webpack.prod.ts,
body.dark .icon-webpack.prod.ts {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-license,
body.vscode-dark .icon-license,
body.cb-dark .icon-license,
body.dark .icon-license {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-licence,
body.vscode-dark .icon-licence,
body.cb-dark .icon-licence,
body.dark .icon-licence {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-license.txt,
body.vscode-dark .icon-license.txt,
body.cb-dark .icon-license.txt,
body.dark .icon-license.txt {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-licence.txt,
body.vscode-dark .icon-licence.txt,
body.cb-dark .icon-licence.txt,
body.dark .icon-licence.txt {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-license.md,
body.vscode-dark .icon-license.md,
body.cb-dark .icon-license.md,
body.dark .icon-license.md {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-licence.md,
body.vscode-dark .icon-licence.md,
body.cb-dark .icon-licence.md,
body.dark .icon-licence.md {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-copying,
body.vscode-dark .icon-copying,
body.cb-dark .icon-copying,
body.dark .icon-copying {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-copying.txt,
body.vscode-dark .icon-copying.txt,
body.cb-dark .icon-copying.txt,
body.dark .icon-copying.txt {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-copying.md,
body.vscode-dark .icon-copying.md,
body.cb-dark .icon-copying.md,
body.dark .icon-copying.md {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-compiling,
body.vscode-dark .icon-compiling,
body.cb-dark .icon-compiling,
body.dark .icon-compiling {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-compiling.txt,
body.vscode-dark .icon-compiling.txt,
body.cb-dark .icon-compiling.txt,
body.dark .icon-compiling.txt {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-compiling.md,
body.vscode-dark .icon-compiling.md,
body.cb-dark .icon-compiling.md,
body.dark .icon-compiling.md {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-contributing,
body.vscode-dark .icon-contributing,
body.cb-dark .icon-contributing,
body.dark .icon-contributing {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-contributing.txt,
body.vscode-dark .icon-contributing.txt,
body.cb-dark .icon-contributing.txt,
body.dark .icon-contributing.txt {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-contributing.md,
body.vscode-dark .icon-contributing.md,
body.cb-dark .icon-contributing.md,
body.dark .icon-contributing.md {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-qmakefile,
body.vscode-dark .icon-qmakefile,
body.cb-dark .icon-qmakefile,
body.dark .icon-qmakefile {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-omakefile,
body.vscode-dark .icon-omakefile,
body.cb-dark .icon-omakefile,
body.dark .icon-omakefile {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cmakelists.txt,
body.vscode-dark .icon-cmakelists.txt,
body.cb-dark .icon-cmakelists.txt,
body.dark .icon-cmakelists.txt {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-procfile,
body.vscode-dark .icon-procfile,
body.cb-dark .icon-procfile,
body.dark .icon-procfile {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-todo,
body.vscode-dark .icon-todo,
body.cb-dark .icon-todo,
body.dark .icon-todo {
  color: inherit;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-todo.txt,
body.vscode-dark .icon-todo.txt,
body.cb-dark .icon-todo.txt,
body.dark .icon-todo.txt {
  color: inherit;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-todo.md,
body.vscode-dark .icon-todo.md,
body.cb-dark .icon-todo.md,
body.dark .icon-todo.md {
  color: inherit;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bat,
body.vscode-dark .icon-bat,
body.cb-dark .icon-bat,
body.dark .icon-bat {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-clojure,
body.vscode-dark .icon-clojure,
body.cb-dark .icon-clojure,
body.dark .icon-clojure {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-coffeescript,
body.vscode-dark .icon-coffeescript,
body.cb-dark .icon-coffeescript,
body.dark .icon-coffeescript {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jsonc,
body.vscode-dark .icon-jsonc,
body.cb-dark .icon-jsonc,
body.dark .icon-jsonc {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-json,
body.vscode-dark .icon-json,
body.cb-dark .icon-json,
body.dark .icon-json {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-c,
body.vscode-dark .icon-c,
body.cb-dark .icon-c,
body.dark .icon-c {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cpp,
body.vscode-dark .icon-cpp,
body.cb-dark .icon-cpp,
body.dark .icon-cpp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cuda-cpp,
body.vscode-dark .icon-cuda-cpp,
body.cb-dark .icon-cuda-cpp,
body.dark .icon-cuda-cpp {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-csharp,
body.vscode-dark .icon-csharp,
body.cb-dark .icon-csharp,
body.dark .icon-csharp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-css,
body.vscode-dark .icon-css,
body.cb-dark .icon-css,
body.dark .icon-css {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dart,
body.vscode-dark .icon-dart,
body.cb-dark .icon-dart,
body.dark .icon-dart {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dockerfile,
body.vscode-dark .icon-dockerfile,
body.cb-dark .icon-dockerfile,
body.dark .icon-dockerfile {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ignore,
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitignore,
body.vscode-dark .icon-ignore,
body.vscode-dark .icon-gitignore,
body.cb-dark .icon-ignore,
body.cb-dark .icon-gitignore,
body.dark .icon-ignore,
body.dark .icon-gitignore {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-fsharp,
body.vscode-dark .icon-fsharp,
body.cb-dark .icon-fsharp,
body.dark .icon-fsharp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-git-commit,
body.vscode-dark .icon-git-commit,
body.cb-dark .icon-git-commit,
body.dark .icon-git-commit {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-go,
body.vscode-dark .icon-go,
body.cb-dark .icon-go,
body.dark .icon-go {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-groovy,
body.vscode-dark .icon-groovy,
body.cb-dark .icon-groovy,
body.dark .icon-groovy {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-handlebars,
body.vscode-dark .icon-handlebars,
body.cb-dark .icon-handlebars,
body.dark .icon-handlebars {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-html,
body.vscode-dark .icon-html,
body.cb-dark .icon-html,
body.dark .icon-html {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-properties,
body.vscode-dark .icon-properties,
body.cb-dark .icon-properties,
body.dark .icon-properties {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-java,
body.vscode-dark .icon-java,
body.cb-dark .icon-java,
body.dark .icon-java {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-javascriptreact,
body.vscode-dark .icon-javascriptreact,
body.cb-dark .icon-javascriptreact,
body.dark .icon-javascriptreact {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-javascript,
body.vscode-dark .icon-javascript,
body.cb-dark .icon-javascript,
body.dark .icon-javascript {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-julia,
body.vscode-dark .icon-julia,
body.cb-dark .icon-julia,
body.dark .icon-julia {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tex,
body.vscode-dark .icon-tex,
body.cb-dark .icon-tex,
body.dark .icon-tex {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-latex,
body.vscode-dark .icon-latex,
body.cb-dark .icon-latex,
body.dark .icon-latex {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-less,
body.vscode-dark .icon-less,
body.cb-dark .icon-less,
body.dark .icon-less {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-lua,
body.vscode-dark .icon-lua,
body.cb-dark .icon-lua,
body.dark .icon-lua {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-makefile,
body.vscode-dark .icon-makefile,
body.cb-dark .icon-makefile,
body.dark .icon-makefile {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-markdown,
body.vscode-dark .icon-markdown,
body.cb-dark .icon-markdown,
body.dark .icon-markdown {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-objective-c,
body.vscode-dark .icon-objective-c,
body.cb-dark .icon-objective-c,
body.dark .icon-objective-c {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-objective-cpp,
body.vscode-dark .icon-objective-cpp,
body.cb-dark .icon-objective-cpp,
body.dark .icon-objective-cpp {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-perl,
body.vscode-dark .icon-perl,
body.cb-dark .icon-perl,
body.dark .icon-perl {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-php,
body.vscode-dark .icon-php,
body.cb-dark .icon-php,
body.dark .icon-php {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-powershell,
body.vscode-dark .icon-powershell,
body.cb-dark .icon-powershell,
body.dark .icon-powershell {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-python,
body.vscode-dark .icon-python,
body.cb-dark .icon-python,
body.dark .icon-python {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-razor,
body.vscode-dark .icon-razor,
body.cb-dark .icon-razor,
body.dark .icon-razor {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ruby,
body.vscode-dark .icon-ruby,
body.cb-dark .icon-ruby,
body.dark .icon-ruby {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-rust,
body.vscode-dark .icon-rust,
body.cb-dark .icon-rust,
body.dark .icon-rust {
  color: #6d8086;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-scss,
body.vscode-dark .icon-scss,
body.cb-dark .icon-scss,
body.dark .icon-scss {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-search-result,
body.vscode-dark .icon-search-result,
body.cb-dark .icon-search-result,
body.dark .icon-search-result {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-shellscript,
body.vscode-dark .icon-shellscript,
body.cb-dark .icon-shellscript,
body.dark .icon-shellscript {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sql,
body.vscode-dark .icon-sql,
body.cb-dark .icon-sql,
body.dark .icon-sql {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-swift,
body.vscode-dark .icon-swift,
body.cb-dark .icon-swift,
body.dark .icon-swift {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-typescript,
body.vscode-dark .icon-typescript,
body.cb-dark .icon-typescript,
body.dark .icon-typescript {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-typescriptreact,
body.vscode-dark .icon-typescriptreact,
body.cb-dark .icon-typescriptreact,
body.dark .icon-typescriptreact {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-xml,
body.vscode-dark .icon-xml,
body.cb-dark .icon-xml,
body.dark .icon-xml {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-yaml,
body.vscode-dark .icon-yaml,
body.cb-dark .icon-yaml,
body.dark .icon-yaml {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-dockercompose,
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-docker-compose,
body.vscode-dark .icon-dockercompose,
body.vscode-dark .icon-docker-compose,
body.cb-dark .icon-dockercompose,
body.cb-dark .icon-docker-compose,
body.dark .icon-dockercompose,
body.dark .icon-docker-compose {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-elixir,
body.vscode-dark .icon-elixir,
body.cb-dark .icon-elixir,
body.dark .icon-elixir {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-haskell,
body.vscode-dark .icon-haskell,
body.cb-dark .icon-haskell,
body.dark .icon-haskell {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-haxe,
body.vscode-dark .icon-haxe,
body.cb-dark .icon-haxe,
body.dark .icon-haxe {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-kotlin,
body.vscode-dark .icon-kotlin,
body.cb-dark .icon-kotlin,
body.dark .icon-kotlin {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ocaml,
body.vscode-dark .icon-ocaml,
body.cb-dark .icon-ocaml,
body.dark .icon-ocaml {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-rescript,
body.vscode-dark .icon-rescript,
body.cb-dark .icon-rescript,
body.dark .icon-rescript {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylus,
body.vscode-dark .icon-stylus,
body.cb-dark .icon-stylus,
body.dark .icon-stylus {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-terraform,
body.vscode-dark .icon-terraform,
body.cb-dark .icon-terraform,
body.dark .icon-terraform {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jsonl,
body.vscode-dark .icon-jsonl,
body.cb-dark .icon-jsonl,
body.dark .icon-jsonl {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-postcss,
body.vscode-dark .icon-postcss,
body.cb-dark .icon-postcss,
body.dark .icon-postcss {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-django-html,
body.vscode-dark .icon-django-html,
body.cb-dark .icon-django-html,
body.dark .icon-django-html {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-blade,
body.vscode-dark .icon-blade,
body.cb-dark .icon-blade,
body.dark .icon-blade {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-R,
body.vscode-dark .icon-R,
body.cb-dark .icon-R,
body.dark .icon-R {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-audio,
body.vscode-dark .icon-audio,
body.cb-dark .icon-audio,
body.dark .icon-audio {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-babel,
body.vscode-dark .icon-babel,
body.cb-dark .icon-babel,
body.dark .icon-babel {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-bower,
body.vscode-dark .icon-bower,
body.cb-dark .icon-bower,
body.dark .icon-bower {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-c-sharp,
body.vscode-dark .icon-c-sharp,
body.cb-dark .icon-c-sharp,
body.dark .icon-c-sharp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-clock,
body.vscode-dark .icon-clock,
body.cb-dark .icon-clock,
body.dark .icon-clock {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-code-climate,
body.vscode-dark .icon-code-climate,
body.cb-dark .icon-code-climate,
body.dark .icon-code-climate {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-code-search,
body.vscode-dark .icon-code-search,
body.cb-dark .icon-code-search,
body.dark .icon-code-search {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-coffee,
body.vscode-dark .icon-coffee,
body.cb-dark .icon-coffee,
body.dark .icon-coffee {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-coldfusion,
body.vscode-dark .icon-coldfusion,
body.cb-dark .icon-coldfusion,
body.dark .icon-coldfusion {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-crystal,
body.vscode-dark .icon-crystal,
body.cb-dark .icon-crystal,
body.dark .icon-crystal {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-cu,
body.vscode-dark .icon-cu,
body.cb-dark .icon-cu,
body.dark .icon-cu {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-db,
body.vscode-dark .icon-db,
body.cb-dark .icon-db,
body.dark .icon-db {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-docker,
body.vscode-dark .icon-docker,
body.cb-dark .icon-docker,
body.dark .icon-docker {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-eslint,
body.vscode-dark .icon-eslint,
body.cb-dark .icon-eslint,
body.dark .icon-eslint {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ethereum,
body.vscode-dark .icon-ethereum,
body.cb-dark .icon-ethereum,
body.dark .icon-ethereum {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-f-sharp,
body.vscode-dark .icon-f-sharp,
body.cb-dark .icon-f-sharp,
body.dark .icon-f-sharp {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-favicon,
body.vscode-dark .icon-favicon,
body.cb-dark .icon-favicon,
body.dark .icon-favicon {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-firebase,
body.vscode-dark .icon-firebase,
body.cb-dark .icon-firebase,
body.dark .icon-firebase {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-firefox,
body.vscode-dark .icon-firefox,
body.cb-dark .icon-firefox,
body.dark .icon-firefox {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-font,
body.vscode-dark .icon-font,
body.cb-dark .icon-font,
body.dark .icon-font {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-git,
body.vscode-dark .icon-git,
body.cb-dark .icon-git,
body.dark .icon-git {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-github,
body.vscode-dark .icon-github,
body.cb-dark .icon-github,
body.dark .icon-github {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gitlab,
body.vscode-dark .icon-gitlab,
body.cb-dark .icon-gitlab,
body.dark .icon-gitlab {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-go2,
body.vscode-dark .icon-go2,
body.cb-dark .icon-go2,
body.dark .icon-go2 {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-grails,
body.vscode-dark .icon-grails,
body.cb-dark .icon-grails,
body.dark .icon-grails {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-grunt,
body.vscode-dark .icon-grunt,
body.cb-dark .icon-grunt,
body.dark .icon-grunt {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-gulp,
body.vscode-dark .icon-gulp,
body.cb-dark .icon-gulp,
body.dark .icon-gulp {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hacklang,
body.vscode-dark .icon-hacklang,
body.cb-dark .icon-hacklang,
body.dark .icon-hacklang {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-heroku,
body.vscode-dark .icon-heroku,
body.cb-dark .icon-heroku,
body.dark .icon-heroku {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-hex,
body.vscode-dark .icon-hex,
body.cb-dark .icon-hex,
body.dark .icon-hex {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ignored,
body.vscode-dark .icon-ignored,
body.cb-dark .icon-ignored,
body.dark .icon-ignored {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-illustrator,
body.vscode-dark .icon-illustrator,
body.cb-dark .icon-illustrator,
body.dark .icon-illustrator {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-image,
body.vscode-dark .icon-image,
body.cb-dark .icon-image,
body.dark .icon-image {
  color: #a074c4;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-info,
body.vscode-dark .icon-info,
body.cb-dark .icon-info,
body.dark .icon-info {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-ionic,
body.vscode-dark .icon-ionic,
body.cb-dark .icon-ionic,
body.dark .icon-ionic {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-jenkins,
body.vscode-dark .icon-jenkins,
body.cb-dark .icon-jenkins,
body.dark .icon-jenkins {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-karma,
body.vscode-dark .icon-karma,
body.cb-dark .icon-karma,
body.dark .icon-karma {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-livescript,
body.vscode-dark .icon-livescript,
body.cb-dark .icon-livescript,
body.dark .icon-livescript {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-lock,
body.vscode-dark .icon-lock,
body.cb-dark .icon-lock,
body.dark .icon-lock {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-maven,
body.vscode-dark .icon-maven,
body.cb-dark .icon-maven,
body.dark .icon-maven {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-notebook,
body.vscode-dark .icon-notebook,
body.cb-dark .icon-notebook,
body.dark .icon-notebook {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-npm,
body.vscode-dark .icon-npm,
body.cb-dark .icon-npm,
body.dark .icon-npm {
  color: #41535b;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-photoshop,
body.vscode-dark .icon-photoshop,
body.cb-dark .icon-photoshop,
body.dark .icon-photoshop {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-platformio,
body.vscode-dark .icon-platformio,
body.cb-dark .icon-platformio,
body.dark .icon-platformio {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-prolog,
body.vscode-dark .icon-prolog,
body.cb-dark .icon-prolog,
body.dark .icon-prolog {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-pug,
body.vscode-dark .icon-pug,
body.cb-dark .icon-pug,
body.dark .icon-pug {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-puppet,
body.vscode-dark .icon-puppet,
body.cb-dark .icon-puppet,
body.dark .icon-puppet {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-purescript,
body.vscode-dark .icon-purescript,
body.cb-dark .icon-purescript,
body.dark .icon-purescript {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-react,
body.vscode-dark .icon-react,
body.cb-dark .icon-react,
body.dark .icon-react {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-reasonml,
body.vscode-dark .icon-reasonml,
body.cb-dark .icon-reasonml,
body.dark .icon-reasonml {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-rollup,
body.vscode-dark .icon-rollup,
body.cb-dark .icon-rollup,
body.dark .icon-rollup {
  color: #cc3e44;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-salesforce,
body.vscode-dark .icon-salesforce,
body.cb-dark .icon-salesforce,
body.dark .icon-salesforce {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-shell,
body.vscode-dark .icon-shell,
body.cb-dark .icon-shell,
body.dark .icon-shell {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-smarty,
body.vscode-dark .icon-smarty,
body.cb-dark .icon-smarty,
body.dark .icon-smarty {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-spring,
body.vscode-dark .icon-spring,
body.cb-dark .icon-spring,
body.dark .icon-spring {
  color: #8dc149;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-stylelint,
body.vscode-dark .icon-stylelint,
body.cb-dark .icon-stylelint,
body.dark .icon-stylelint {
  color: #d4d7d6;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-sublime,
body.vscode-dark .icon-sublime,
body.cb-dark .icon-sublime,
body.dark .icon-sublime {
  color: #e37933;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-tsconfig,
body.vscode-dark .icon-tsconfig,
body.cb-dark .icon-tsconfig,
body.dark .icon-tsconfig {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-video,
body.vscode-dark .icon-video,
body.cb-dark .icon-video,
body.dark .icon-video {
  color: #f55385;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-vite,
body.vscode-dark .icon-vite,
body.cb-dark .icon-vite,
body.dark .icon-vite {
  color: #cbcb41;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-webpack,
body.vscode-dark .icon-webpack,
body.cb-dark .icon-webpack,
body.dark .icon-webpack {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-windows,
body.vscode-dark .icon-windows,
body.cb-dark .icon-windows,
body.dark .icon-windows {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-word,
body.vscode-dark .icon-word,
body.cb-dark .icon-word,
body.dark .icon-word {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-yarn,
body.vscode-dark .icon-yarn,
body.cb-dark .icon-yarn,
body.dark .icon-yarn {
  color: #519aba;
}
body.vscode-high-contrast:not(.vscode-high-contrast-light) .icon-yml,
body.vscode-dark .icon-yml,
body.cb-dark .icon-yml,
body.dark .icon-yml {
  color: #a074c4;
}

body.vscode-high-contrast.vscode-high-contrast-light .icon-default,
body.vscode-light .icon-default,
body.cb-light .icon-default,
body.light .icon-default {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bsl,
body.vscode-light .icon-bsl,
body.cb-light .icon-bsl,
body.light .icon-bsl {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mdo,
body.vscode-light .icon-mdo,
body.cb-light .icon-mdo,
body.light .icon-mdo {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cls,
body.vscode-light .icon-cls,
body.cb-light .icon-cls,
body.light .icon-cls {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-apex,
body.vscode-light .icon-apex,
body.cb-light .icon-apex,
body.light .icon-apex {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-asm,
body.vscode-light .icon-asm,
body.cb-light .icon-asm,
body.light .icon-asm {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-s,
body.vscode-light .icon-s,
body.cb-light .icon-s,
body.light .icon-s {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bicep,
body.vscode-light .icon-bicep,
body.cb-light .icon-bicep,
body.light .icon-bicep {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bzl,
body.vscode-light .icon-bzl,
body.cb-light .icon-bzl,
body.light .icon-bzl {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bazel,
body.vscode-light .icon-bazel,
body.cb-light .icon-bazel,
body.light .icon-bazel {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-build,
body.vscode-light .icon-build,
body.cb-light .icon-build,
body.light .icon-build {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-workspace,
body.vscode-light .icon-workspace,
body.cb-light .icon-workspace,
body.light .icon-workspace {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bazelignore,
body.vscode-light .icon-bazelignore,
body.cb-light .icon-bazelignore,
body.light .icon-bazelignore {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bazelversion,
body.vscode-light .icon-bazelversion,
body.cb-light .icon-bazelversion,
body.light .icon-bazelversion {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-h,
body.vscode-light .icon-h,
body.cb-light .icon-h,
body.light .icon-h {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-aspx,
body.vscode-light .icon-aspx,
body.cb-light .icon-aspx,
body.light .icon-aspx {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ascx,
body.vscode-light .icon-ascx,
body.cb-light .icon-ascx,
body.light .icon-ascx {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-asax,
body.vscode-light .icon-asax,
body.cb-light .icon-asax,
body.light .icon-asax {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-master,
body.vscode-light .icon-master,
body.cb-light .icon-master,
body.light .icon-master {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hh,
body.vscode-light .icon-hh,
body.cb-light .icon-hh,
body.light .icon-hh {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hpp,
body.vscode-light .icon-hpp,
body.cb-light .icon-hpp,
body.light .icon-hpp {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hxx,
body.vscode-light .icon-hxx,
body.cb-light .icon-hxx,
body.light .icon-hxx {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-h\+\+,
body.vscode-light .icon-h\+\+,
body.cb-light .icon-h\+\+,
body.light .icon-h\+\+ {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-edn,
body.vscode-light .icon-edn,
body.cb-light .icon-edn,
body.light .icon-edn {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cfc,
body.vscode-light .icon-cfc,
body.cb-light .icon-cfc,
body.light .icon-cfc {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cfm,
body.vscode-light .icon-cfm,
body.cb-light .icon-cfm,
body.light .icon-cfm {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-litcoffee,
body.vscode-light .icon-litcoffee,
body.cb-light .icon-litcoffee,
body.light .icon-litcoffee {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-config,
body.vscode-light .icon-config,
body.cb-light .icon-config,
body.light .icon-config {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cr,
body.vscode-light .icon-cr,
body.cb-light .icon-cr,
body.light .icon-cr {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ecr,
body.vscode-light .icon-ecr,
body.cb-light .icon-ecr,
body.light .icon-ecr {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-slang,
body.vscode-light .icon-slang,
body.cb-light .icon-slang,
body.light .icon-slang {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cson,
body.vscode-light .icon-cson,
body.cb-light .icon-cson,
body.light .icon-cson {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-css.map,
body.vscode-light .icon-css.map,
body.cb-light .icon-css.map,
body.light .icon-css.map {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sss,
body.vscode-light .icon-sss,
body.cb-light .icon-sss,
body.light .icon-sss {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-csv,
body.vscode-light .icon-csv,
body.cb-light .icon-csv,
body.light .icon-csv {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-xls,
body.vscode-light .icon-xls,
body.cb-light .icon-xls,
body.light .icon-xls {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-xlsx,
body.vscode-light .icon-xlsx,
body.cb-light .icon-xlsx,
body.light .icon-xlsx {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ppt,
body.vscode-light .icon-ppt,
body.cb-light .icon-ppt,
body.light .icon-ppt {
  color: #c43e1c;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pptx,
body.vscode-light .icon-pptx,
body.cb-light .icon-pptx,
body.light .icon-pptx {
  color: #c43e1c;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cuh,
body.vscode-light .icon-cuh,
body.cb-light .icon-cuh,
body.light .icon-cuh {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hu,
body.vscode-light .icon-hu,
body.cb-light .icon-hu,
body.light .icon-hu {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cake,
body.vscode-light .icon-cake,
body.cb-light .icon-cake,
body.light .icon-cake {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ctp,
body.vscode-light .icon-ctp,
body.cb-light .icon-ctp,
body.light .icon-ctp {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-d,
body.vscode-light .icon-d,
body.cb-light .icon-d,
body.light .icon-d {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-doc,
body.vscode-light .icon-doc,
body.cb-light .icon-doc,
body.light .icon-doc {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-docx,
body.vscode-light .icon-docx,
body.cb-light .icon-docx,
body.light .icon-docx {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ejs,
body.vscode-light .icon-ejs,
body.cb-light .icon-ejs,
body.light .icon-ejs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ex,
body.vscode-light .icon-ex,
body.cb-light .icon-ex,
body.light .icon-ex {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-exs,
body.vscode-light .icon-exs,
body.cb-light .icon-exs,
body.light .icon-exs {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-elm,
body.vscode-light .icon-elm,
body.cb-light .icon-elm,
body.light .icon-elm {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ico,
body.vscode-light .icon-ico,
body.cb-light .icon-ico,
body.light .icon-ico {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitconfig,
body.vscode-light .icon-gitconfig,
body.cb-light .icon-gitconfig,
body.light .icon-gitconfig {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitkeep,
body.vscode-light .icon-gitkeep,
body.cb-light .icon-gitkeep,
body.light .icon-gitkeep {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitattributes,
body.vscode-light .icon-gitattributes,
body.cb-light .icon-gitattributes,
body.light .icon-gitattributes {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitmodules,
body.vscode-light .icon-gitmodules,
body.cb-light .icon-gitmodules,
body.light .icon-gitmodules {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-slide,
body.vscode-light .icon-slide,
body.cb-light .icon-slide,
body.light .icon-slide {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-article,
body.vscode-light .icon-article,
body.cb-light .icon-article,
body.light .icon-article {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gd,
body.vscode-light .icon-gd,
body.cb-light .icon-gd,
body.light .icon-gd {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-godot,
body.vscode-light .icon-godot,
body.cb-light .icon-godot,
body.light .icon-godot {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tres,
body.vscode-light .icon-tres,
body.cb-light .icon-tres,
body.light .icon-tres {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tscn,
body.vscode-light .icon-tscn,
body.cb-light .icon-tscn,
body.light .icon-tscn {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gradle,
body.vscode-light .icon-gradle,
body.cb-light .icon-gradle,
body.light .icon-gradle {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gsp,
body.vscode-light .icon-gsp,
body.cb-light .icon-gsp,
body.light .icon-gsp {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gql,
body.vscode-light .icon-gql,
body.cb-light .icon-gql,
body.light .icon-gql {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-graphql,
body.vscode-light .icon-graphql,
body.cb-light .icon-graphql,
body.light .icon-graphql {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-graphqls,
body.vscode-light .icon-graphqls,
body.cb-light .icon-graphqls,
body.light .icon-graphqls {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hack,
body.vscode-light .icon-hack,
body.cb-light .icon-hack,
body.light .icon-hack {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-haml,
body.vscode-light .icon-haml,
body.cb-light .icon-haml,
body.light .icon-haml {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hs,
body.vscode-light .icon-hs,
body.cb-light .icon-hs,
body.light .icon-hs {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-lhs,
body.vscode-light .icon-lhs,
body.cb-light .icon-lhs,
body.light .icon-lhs {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hx,
body.vscode-light .icon-hx,
body.cb-light .icon-hx,
body.light .icon-hx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hxs,
body.vscode-light .icon-hxs,
body.cb-light .icon-hxs,
body.light .icon-hxs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hxp,
body.vscode-light .icon-hxp,
body.cb-light .icon-hxp,
body.light .icon-hxp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hxml,
body.vscode-light .icon-hxml,
body.cb-light .icon-hxml,
body.light .icon-hxml {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jade,
body.vscode-light .icon-jade,
body.cb-light .icon-jade,
body.light .icon-jade {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-class,
body.vscode-light .icon-class,
body.cb-light .icon-class,
body.light .icon-class {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-classpath,
body.vscode-light .icon-classpath,
body.cb-light .icon-classpath,
body.light .icon-classpath {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-js.map,
body.vscode-light .icon-js.map,
body.cb-light .icon-js.map,
body.light .icon-js.map {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cjs.map,
body.vscode-light .icon-cjs.map,
body.cb-light .icon-cjs.map,
body.light .icon-cjs.map {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mjs.map,
body.vscode-light .icon-mjs.map,
body.cb-light .icon-mjs.map,
body.light .icon-mjs.map {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.js,
body.vscode-light .icon-spec.js,
body.cb-light .icon-spec.js,
body.light .icon-spec.js {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.cjs,
body.vscode-light .icon-spec.cjs,
body.cb-light .icon-spec.cjs,
body.light .icon-spec.cjs {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.mjs,
body.vscode-light .icon-spec.mjs,
body.cb-light .icon-spec.mjs,
body.light .icon-spec.mjs {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.js,
body.vscode-light .icon-test.js,
body.cb-light .icon-test.js,
body.light .icon-test.js {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.cjs,
body.vscode-light .icon-test.cjs,
body.cb-light .icon-test.cjs,
body.light .icon-test.cjs {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.mjs,
body.vscode-light .icon-test.mjs,
body.cb-light .icon-test.mjs,
body.light .icon-test.mjs {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-es,
body.vscode-light .icon-es,
body.cb-light .icon-es,
body.light .icon-es {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-es5,
body.vscode-light .icon-es5,
body.cb-light .icon-es5,
body.light .icon-es5 {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-es7,
body.vscode-light .icon-es7,
body.cb-light .icon-es7,
body.light .icon-es7 {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jinja,
body.vscode-light .icon-jinja,
body.cb-light .icon-jinja,
body.light .icon-jinja {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jinja2,
body.vscode-light .icon-jinja2,
body.cb-light .icon-jinja2,
body.light .icon-jinja2 {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-kt,
body.vscode-light .icon-kt,
body.cb-light .icon-kt,
body.light .icon-kt {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-kts,
body.vscode-light .icon-kts,
body.cb-light .icon-kts,
body.light .icon-kts {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-liquid,
body.vscode-light .icon-liquid,
body.cb-light .icon-liquid,
body.light .icon-liquid {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ls,
body.vscode-light .icon-ls,
body.cb-light .icon-ls,
body.light .icon-ls {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-argdown,
body.vscode-light .icon-argdown,
body.cb-light .icon-argdown,
body.light .icon-argdown {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ad,
body.vscode-light .icon-ad,
body.cb-light .icon-ad,
body.light .icon-ad {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mustache,
body.vscode-light .icon-mustache,
body.cb-light .icon-mustache,
body.light .icon-mustache {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stache,
body.vscode-light .icon-stache,
body.cb-light .icon-stache,
body.light .icon-stache {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nim,
body.vscode-light .icon-nim,
body.cb-light .icon-nim,
body.light .icon-nim {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nims,
body.vscode-light .icon-nims,
body.cb-light .icon-nims,
body.light .icon-nims {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-github-issues,
body.vscode-light .icon-github-issues,
body.cb-light .icon-github-issues,
body.light .icon-github-issues {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ipynb,
body.vscode-light .icon-ipynb,
body.cb-light .icon-ipynb,
body.light .icon-ipynb {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-njk,
body.vscode-light .icon-njk,
body.cb-light .icon-njk,
body.light .icon-njk {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nunjucks,
body.vscode-light .icon-nunjucks,
body.cb-light .icon-nunjucks,
body.light .icon-nunjucks {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nunjs,
body.vscode-light .icon-nunjs,
body.cb-light .icon-nunjs,
body.light .icon-nunjs {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nunj,
body.vscode-light .icon-nunj,
body.cb-light .icon-nunj,
body.light .icon-nunj {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-njs,
body.vscode-light .icon-njs,
body.cb-light .icon-njs,
body.light .icon-njs {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-nj,
body.vscode-light .icon-nj,
body.cb-light .icon-nj,
body.light .icon-nj {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-npm-debug.log,
body.vscode-light .icon-npm-debug.log,
body.cb-light .icon-npm-debug.log,
body.light .icon-npm-debug.log {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-npmignore,
body.vscode-light .icon-npmignore,
body.cb-light .icon-npmignore,
body.light .icon-npmignore {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-npmrc,
body.vscode-light .icon-npmrc,
body.cb-light .icon-npmrc,
body.light .icon-npmrc {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ml,
body.vscode-light .icon-ml,
body.cb-light .icon-ml,
body.light .icon-ml {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mli,
body.vscode-light .icon-mli,
body.cb-light .icon-mli,
body.light .icon-mli {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cmx,
body.vscode-light .icon-cmx,
body.cb-light .icon-cmx,
body.light .icon-cmx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cmxa,
body.vscode-light .icon-cmxa,
body.cb-light .icon-cmxa,
body.light .icon-cmxa {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-odata,
body.vscode-light .icon-odata,
body.cb-light .icon-odata,
body.light .icon-odata {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-php.inc,
body.vscode-light .icon-php.inc,
body.cb-light .icon-php.inc,
body.light .icon-php.inc {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pipeline,
body.vscode-light .icon-pipeline,
body.cb-light .icon-pipeline,
body.light .icon-pipeline {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pddl,
body.vscode-light .icon-pddl,
body.cb-light .icon-pddl,
body.light .icon-pddl {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-plan,
body.vscode-light .icon-plan,
body.cb-light .icon-plan,
body.light .icon-plan {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-happenings,
body.vscode-light .icon-happenings,
body.cb-light .icon-happenings,
body.light .icon-happenings {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-prisma,
body.vscode-light .icon-prisma,
body.cb-light .icon-prisma,
body.light .icon-prisma {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pp,
body.vscode-light .icon-pp,
body.cb-light .icon-pp,
body.light .icon-pp {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-epp,
body.vscode-light .icon-epp,
body.cb-light .icon-epp,
body.light .icon-epp {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-purs,
body.vscode-light .icon-purs,
body.cb-light .icon-purs,
body.light .icon-purs {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.jsx,
body.vscode-light .icon-spec.jsx,
body.cb-light .icon-spec.jsx,
body.light .icon-spec.jsx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.jsx,
body.vscode-light .icon-test.jsx,
body.cb-light .icon-test.jsx,
body.light .icon-test.jsx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cjsx,
body.vscode-light .icon-cjsx,
body.cb-light .icon-cjsx,
body.light .icon-cjsx {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.tsx,
body.vscode-light .icon-spec.tsx,
body.cb-light .icon-spec.tsx,
body.light .icon-spec.tsx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.tsx,
body.vscode-light .icon-test.tsx,
body.cb-light .icon-test.tsx,
body.light .icon-test.tsx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-re,
body.vscode-light .icon-re,
body.cb-light .icon-re,
body.light .icon-re {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-res,
body.vscode-light .icon-res,
body.cb-light .icon-res,
body.light .icon-res {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-resi,
body.vscode-light .icon-resi,
body.cb-light .icon-resi,
body.light .icon-resi {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-r,
body.vscode-light .icon-r,
body.cb-light .icon-r,
body.light .icon-r {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-rmd,
body.vscode-light .icon-rmd,
body.cb-light .icon-rmd,
body.light .icon-rmd {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-erb,
body.vscode-light .icon-erb,
body.cb-light .icon-erb,
body.light .icon-erb {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-erb.html,
body.vscode-light .icon-erb.html,
body.cb-light .icon-erb.html,
body.light .icon-erb.html {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-html.erb,
body.vscode-light .icon-html.erb,
body.cb-light .icon-html.erb,
body.light .icon-html.erb {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sass,
body.vscode-light .icon-sass,
body.cb-light .icon-sass,
body.light .icon-sass {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-springbeans,
body.vscode-light .icon-springbeans,
body.cb-light .icon-springbeans,
body.light .icon-springbeans {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-slim,
body.vscode-light .icon-slim,
body.cb-light .icon-slim,
body.light .icon-slim {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-smarty.tpl,
body.vscode-light .icon-smarty.tpl,
body.cb-light .icon-smarty.tpl,
body.light .icon-smarty.tpl {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tpl,
body.vscode-light .icon-tpl,
body.cb-light .icon-tpl,
body.light .icon-tpl {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sbt,
body.vscode-light .icon-sbt,
body.cb-light .icon-sbt,
body.light .icon-sbt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-scala,
body.vscode-light .icon-scala,
body.cb-light .icon-scala,
body.light .icon-scala {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sol,
body.vscode-light .icon-sol,
body.cb-light .icon-sol,
body.light .icon-sol {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-styl,
body.vscode-light .icon-styl,
body.cb-light .icon-styl,
body.light .icon-styl {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-svelte,
body.vscode-light .icon-svelte,
body.cb-light .icon-svelte,
body.light .icon-svelte {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-soql,
body.vscode-light .icon-soql,
body.cb-light .icon-soql,
body.light .icon-soql {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tf,
body.vscode-light .icon-tf,
body.cb-light .icon-tf,
body.light .icon-tf {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tf.json,
body.vscode-light .icon-tf.json,
body.cb-light .icon-tf.json,
body.light .icon-tf.json {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tfvars,
body.vscode-light .icon-tfvars,
body.cb-light .icon-tfvars,
body.light .icon-tfvars {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tfvars.json,
body.vscode-light .icon-tfvars.json,
body.cb-light .icon-tfvars.json,
body.light .icon-tfvars.json {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dtx,
body.vscode-light .icon-dtx,
body.cb-light .icon-dtx,
body.light .icon-dtx {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ins,
body.vscode-light .icon-ins,
body.cb-light .icon-ins,
body.light .icon-ins {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-toml,
body.vscode-light .icon-toml,
body.cb-light .icon-toml,
body.light .icon-toml {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-twig,
body.vscode-light .icon-twig,
body.cb-light .icon-twig,
body.light .icon-twig {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spec.ts,
body.vscode-light .icon-spec.ts,
body.cb-light .icon-spec.ts,
body.light .icon-spec.ts {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-test.ts,
body.vscode-light .icon-test.ts,
body.cb-light .icon-test.ts,
body.light .icon-test.ts {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vala,
body.vscode-light .icon-vala,
body.cb-light .icon-vala,
body.light .icon-vala {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vapi,
body.vscode-light .icon-vapi,
body.cb-light .icon-vapi,
body.light .icon-vapi {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-component,
body.vscode-light .icon-component,
body.cb-light .icon-component,
body.light .icon-component {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vue,
body.vscode-light .icon-vue,
body.cb-light .icon-vue,
body.light .icon-vue {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-wasm,
body.vscode-light .icon-wasm,
body.cb-light .icon-wasm,
body.light .icon-wasm {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-wat,
body.vscode-light .icon-wat,
body.cb-light .icon-wat,
body.light .icon-wat {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pro,
body.vscode-light .icon-pro,
body.cb-light .icon-pro,
body.light .icon-pro {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-zig,
body.vscode-light .icon-zig,
body.cb-light .icon-zig,
body.light .icon-zig {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jar,
body.vscode-light .icon-jar,
body.cb-light .icon-jar,
body.light .icon-jar {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-zip,
body.vscode-light .icon-zip,
body.cb-light .icon-zip,
body.light .icon-zip {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-wgt,
body.vscode-light .icon-wgt,
body.cb-light .icon-wgt,
body.light .icon-wgt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ai,
body.vscode-light .icon-ai,
body.cb-light .icon-ai,
body.light .icon-ai {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-psd,
body.vscode-light .icon-psd,
body.cb-light .icon-psd,
body.light .icon-psd {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pdf,
body.vscode-light .icon-pdf,
body.cb-light .icon-pdf,
body.light .icon-pdf {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eot,
body.vscode-light .icon-eot,
body.cb-light .icon-eot,
body.light .icon-eot {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ttf,
body.vscode-light .icon-ttf,
body.cb-light .icon-ttf,
body.light .icon-ttf {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-woff,
body.vscode-light .icon-woff,
body.cb-light .icon-woff,
body.light .icon-woff {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-woff2,
body.vscode-light .icon-woff2,
body.cb-light .icon-woff2,
body.light .icon-woff2 {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-otf,
body.vscode-light .icon-otf,
body.cb-light .icon-otf,
body.light .icon-otf {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-avif,
body.vscode-light .icon-avif,
body.cb-light .icon-avif,
body.light .icon-avif {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gif,
body.vscode-light .icon-gif,
body.cb-light .icon-gif,
body.light .icon-gif {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jpg,
body.vscode-light .icon-jpg,
body.cb-light .icon-jpg,
body.light .icon-jpg {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jpeg,
body.vscode-light .icon-jpeg,
body.cb-light .icon-jpeg,
body.light .icon-jpeg {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-png,
body.vscode-light .icon-png,
body.cb-light .icon-png,
body.light .icon-png {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pxm,
body.vscode-light .icon-pxm,
body.cb-light .icon-pxm,
body.light .icon-pxm {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-svg,
body.vscode-light .icon-svg,
body.cb-light .icon-svg,
body.light .icon-svg {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-svgx,
body.vscode-light .icon-svgx,
body.cb-light .icon-svgx,
body.light .icon-svgx {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tiff,
body.vscode-light .icon-tiff,
body.cb-light .icon-tiff,
body.light .icon-tiff {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webp,
body.vscode-light .icon-webp,
body.cb-light .icon-webp,
body.light .icon-webp {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bmp,
body.vscode-light .icon-bmp,
body.cb-light .icon-bmp,
body.light .icon-bmp {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-drawio,
body.vscode-light .icon-drawio,
body.cb-light .icon-drawio,
body.light .icon-drawio {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dio,
body.vscode-light .icon-dio,
body.cb-light .icon-dio,
body.light .icon-dio {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-excalidraw,
body.vscode-light .icon-excalidraw,
body.cb-light .icon-excalidraw,
body.light .icon-excalidraw {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sublime-project,
body.vscode-light .icon-sublime-project,
body.cb-light .icon-sublime-project,
body.light .icon-sublime-project {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sublime-workspace,
body.vscode-light .icon-sublime-workspace,
body.cb-light .icon-sublime-workspace,
body.light .icon-sublime-workspace {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mov,
body.vscode-light .icon-mov,
body.cb-light .icon-mov,
body.light .icon-mov {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ogv,
body.vscode-light .icon-ogv,
body.cb-light .icon-ogv,
body.light .icon-ogv {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webm,
body.vscode-light .icon-webm,
body.cb-light .icon-webm,
body.light .icon-webm {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-avi,
body.vscode-light .icon-avi,
body.cb-light .icon-avi,
body.light .icon-avi {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mpg,
body.vscode-light .icon-mpg,
body.cb-light .icon-mpg,
body.light .icon-mpg {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mp4,
body.vscode-light .icon-mp4,
body.cb-light .icon-mp4,
body.light .icon-mp4 {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mp3,
body.vscode-light .icon-mp3,
body.cb-light .icon-mp3,
body.light .icon-mp3 {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ogg,
body.vscode-light .icon-ogg,
body.cb-light .icon-ogg,
body.light .icon-ogg {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-aac,
body.vscode-light .icon-aac,
body.cb-light .icon-aac,
body.light .icon-aac {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-wav,
body.vscode-light .icon-wav,
body.cb-light .icon-wav,
body.light .icon-wav {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-flac,
body.vscode-light .icon-flac,
body.cb-light .icon-flac,
body.light .icon-flac {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-3ds,
body.vscode-light .icon-3ds,
body.cb-light .icon-3ds,
body.light .icon-3ds {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-3dm,
body.vscode-light .icon-3dm,
body.cb-light .icon-3dm,
body.light .icon-3dm {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stl,
body.vscode-light .icon-stl,
body.cb-light .icon-stl,
body.light .icon-stl {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-obj,
body.vscode-light .icon-obj,
body.cb-light .icon-obj,
body.light .icon-obj {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dae,
body.vscode-light .icon-dae,
body.cb-light .icon-dae,
body.light .icon-dae {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babelrc,
body.vscode-light .icon-babelrc,
body.cb-light .icon-babelrc,
body.light .icon-babelrc {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babelrc.js,
body.vscode-light .icon-babelrc.js,
body.cb-light .icon-babelrc.js,
body.light .icon-babelrc.js {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babelrc.cjs,
body.vscode-light .icon-babelrc.cjs,
body.cb-light .icon-babelrc.cjs,
body.light .icon-babelrc.cjs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bazelrc,
body.vscode-light .icon-bazelrc,
body.cb-light .icon-bazelrc,
body.light .icon-bazelrc {
  color: #455155;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bowerrc,
body.vscode-light .icon-bowerrc,
body.cb-light .icon-bowerrc,
body.light .icon-bowerrc {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dockerignore,
body.vscode-light .icon-dockerignore,
body.cb-light .icon-dockerignore,
body.light .icon-dockerignore {
  color: #455155;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-codeclimate.yml,
body.vscode-light .icon-codeclimate.yml,
body.cb-light .icon-codeclimate.yml,
body.light .icon-codeclimate.yml {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc,
body.vscode-light .icon-eslintrc,
body.cb-light .icon-eslintrc,
body.light .icon-eslintrc {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc.js,
body.vscode-light .icon-eslintrc.js,
body.cb-light .icon-eslintrc.js,
body.light .icon-eslintrc.js {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc.cjs,
body.vscode-light .icon-eslintrc.cjs,
body.cb-light .icon-eslintrc.cjs,
body.light .icon-eslintrc.cjs {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc.yaml,
body.vscode-light .icon-eslintrc.yaml,
body.cb-light .icon-eslintrc.yaml,
body.light .icon-eslintrc.yaml {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc.yml,
body.vscode-light .icon-eslintrc.yml,
body.cb-light .icon-eslintrc.yml,
body.light .icon-eslintrc.yml {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintrc.json,
body.vscode-light .icon-eslintrc.json,
body.cb-light .icon-eslintrc.json,
body.light .icon-eslintrc.json {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslintignore,
body.vscode-light .icon-eslintignore,
body.cb-light .icon-eslintignore,
body.light .icon-eslintignore {
  color: #455155;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-firebaserc,
body.vscode-light .icon-firebaserc,
body.cb-light .icon-firebaserc,
body.light .icon-firebaserc {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitlab-ci.yml,
body.vscode-light .icon-gitlab-ci.yml,
body.cb-light .icon-gitlab-ci.yml,
body.light .icon-gitlab-ci.yml {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jshintrc,
body.vscode-light .icon-jshintrc,
body.cb-light .icon-jshintrc,
body.light .icon-jshintrc {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jscsrc,
body.vscode-light .icon-jscsrc,
body.cb-light .icon-jscsrc,
body.light .icon-jscsrc {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintrc,
body.vscode-light .icon-stylelintrc,
body.cb-light .icon-stylelintrc,
body.light .icon-stylelintrc {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintrc.json,
body.vscode-light .icon-stylelintrc.json,
body.cb-light .icon-stylelintrc.json,
body.light .icon-stylelintrc.json {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintrc.yaml,
body.vscode-light .icon-stylelintrc.yaml,
body.cb-light .icon-stylelintrc.yaml,
body.light .icon-stylelintrc.yaml {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintrc.yml,
body.vscode-light .icon-stylelintrc.yml,
body.cb-light .icon-stylelintrc.yml,
body.light .icon-stylelintrc.yml {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintrc.js,
body.vscode-light .icon-stylelintrc.js,
body.cb-light .icon-stylelintrc.js,
body.light .icon-stylelintrc.js {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelintignore,
body.vscode-light .icon-stylelintignore,
body.cb-light .icon-stylelintignore,
body.light .icon-stylelintignore {
  color: #455155;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-direnv,
body.vscode-light .icon-direnv,
body.cb-light .icon-direnv,
body.light .icon-direnv {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-env,
body.vscode-light .icon-env,
body.cb-light .icon-env,
body.light .icon-env {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-static,
body.vscode-light .icon-static,
body.cb-light .icon-static,
body.light .icon-static {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-slugignore,
body.vscode-light .icon-slugignore,
body.cb-light .icon-slugignore,
body.light .icon-slugignore {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tmp,
body.vscode-light .icon-tmp,
body.cb-light .icon-tmp,
body.light .icon-tmp {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-htaccess,
body.vscode-light .icon-htaccess,
body.cb-light .icon-htaccess,
body.light .icon-htaccess {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-key,
body.vscode-light .icon-key,
body.cb-light .icon-key,
body.light .icon-key {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cert,
body.vscode-light .icon-cert,
body.cb-light .icon-cert,
body.light .icon-cert {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cer,
body.vscode-light .icon-cer,
body.cb-light .icon-cer,
body.light .icon-cer {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-crt,
body.vscode-light .icon-crt,
body.cb-light .icon-crt,
body.light .icon-crt {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pem,
body.vscode-light .icon-pem,
body.cb-light .icon-pem,
body.light .icon-pem {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ds_store,
body.vscode-light .icon-ds_store,
body.cb-light .icon-ds_store,
body.light .icon-ds_store {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mix,
body.vscode-light .icon-mix,
body.cb-light .icon-mix,
body.light .icon-mix {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-karma.conf.js,
body.vscode-light .icon-karma.conf.js,
body.cb-light .icon-karma.conf.js,
body.light .icon-karma.conf.js {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-karma.conf.cjs,
body.vscode-light .icon-karma.conf.cjs,
body.cb-light .icon-karma.conf.cjs,
body.light .icon-karma.conf.cjs {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-karma.conf.mjs,
body.vscode-light .icon-karma.conf.mjs,
body.cb-light .icon-karma.conf.mjs,
body.light .icon-karma.conf.mjs {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-karma.conf.coffee,
body.vscode-light .icon-karma.conf.coffee,
body.cb-light .icon-karma.conf.coffee,
body.light .icon-karma.conf.coffee {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-readme.md,
body.vscode-light .icon-readme.md,
body.cb-light .icon-readme.md,
body.light .icon-readme.md {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-readme.txt,
body.vscode-light .icon-readme.txt,
body.cb-light .icon-readme.txt,
body.light .icon-readme.txt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-readme,
body.vscode-light .icon-readme,
body.cb-light .icon-readme,
body.light .icon-readme {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changelog.md,
body.vscode-light .icon-changelog.md,
body.cb-light .icon-changelog.md,
body.light .icon-changelog.md {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changelog.txt,
body.vscode-light .icon-changelog.txt,
body.cb-light .icon-changelog.txt,
body.light .icon-changelog.txt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changelog,
body.vscode-light .icon-changelog,
body.cb-light .icon-changelog,
body.light .icon-changelog {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changes.md,
body.vscode-light .icon-changes.md,
body.cb-light .icon-changes.md,
body.light .icon-changes.md {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changes.txt,
body.vscode-light .icon-changes.txt,
body.cb-light .icon-changes.txt,
body.light .icon-changes.txt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-changes,
body.vscode-light .icon-changes,
body.cb-light .icon-changes,
body.light .icon-changes {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-version.md,
body.vscode-light .icon-version.md,
body.cb-light .icon-version.md,
body.light .icon-version.md {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-version.txt,
body.vscode-light .icon-version.txt,
body.cb-light .icon-version.txt,
body.light .icon-version.txt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-version,
body.vscode-light .icon-version,
body.cb-light .icon-version,
body.light .icon-version {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mvnw,
body.vscode-light .icon-mvnw,
body.cb-light .icon-mvnw,
body.light .icon-mvnw {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pom.xml,
body.vscode-light .icon-pom.xml,
body.cb-light .icon-pom.xml,
body.light .icon-pom.xml {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tsconfig.json,
body.vscode-light .icon-tsconfig.json,
body.cb-light .icon-tsconfig.json,
body.light .icon-tsconfig.json {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.js,
body.vscode-light .icon-vite.config.js,
body.cb-light .icon-vite.config.js,
body.light .icon-vite.config.js {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.ts,
body.vscode-light .icon-vite.config.ts,
body.cb-light .icon-vite.config.ts,
body.light .icon-vite.config.ts {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.mjs,
body.vscode-light .icon-vite.config.mjs,
body.cb-light .icon-vite.config.mjs,
body.light .icon-vite.config.mjs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.mts,
body.vscode-light .icon-vite.config.mts,
body.cb-light .icon-vite.config.mts,
body.light .icon-vite.config.mts {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.cjs,
body.vscode-light .icon-vite.config.cjs,
body.cb-light .icon-vite.config.cjs,
body.light .icon-vite.config.cjs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite.config.cts,
body.vscode-light .icon-vite.config.cts,
body.cb-light .icon-vite.config.cts,
body.light .icon-vite.config.cts {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-swagger.json,
body.vscode-light .icon-swagger.json,
body.cb-light .icon-swagger.json,
body.light .icon-swagger.json {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-swagger.yml,
body.vscode-light .icon-swagger.yml,
body.cb-light .icon-swagger.yml,
body.light .icon-swagger.yml {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-swagger.yaml,
body.vscode-light .icon-swagger.yaml,
body.cb-light .icon-swagger.yaml,
body.light .icon-swagger.yaml {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-mime.types,
body.vscode-light .icon-mime.types,
body.cb-light .icon-mime.types,
body.light .icon-mime.types {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jenkinsfile,
body.vscode-light .icon-jenkinsfile,
body.cb-light .icon-jenkinsfile,
body.light .icon-jenkinsfile {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babel.config.js,
body.vscode-light .icon-babel.config.js,
body.cb-light .icon-babel.config.js,
body.light .icon-babel.config.js {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babel.config.json,
body.vscode-light .icon-babel.config.json,
body.cb-light .icon-babel.config.json,
body.light .icon-babel.config.json {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babel.config.cjs,
body.vscode-light .icon-babel.config.cjs,
body.cb-light .icon-babel.config.cjs,
body.light .icon-babel.config.cjs {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-build.bazel,
body.vscode-light .icon-build.bazel,
body.cb-light .icon-build.bazel,
body.light .icon-build.bazel {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-workspace.bazel,
body.vscode-light .icon-workspace.bazel,
body.cb-light .icon-workspace.bazel,
body.light .icon-workspace.bazel {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bower.json,
body.vscode-light .icon-bower.json,
body.cb-light .icon-bower.json,
body.light .icon-bower.json {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-docker-healthcheck,
body.vscode-light .icon-docker-healthcheck,
body.cb-light .icon-docker-healthcheck,
body.light .icon-docker-healthcheck {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslint.config.js,
body.vscode-light .icon-eslint.config.js,
body.cb-light .icon-eslint.config.js,
body.light .icon-eslint.config.js {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-firebase.json,
body.vscode-light .icon-firebase.json,
body.cb-light .icon-firebase.json,
body.light .icon-firebase.json {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-geckodriver,
body.vscode-light .icon-geckodriver,
body.cb-light .icon-geckodriver,
body.light .icon-geckodriver {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gruntfile.js,
body.vscode-light .icon-gruntfile.js,
body.cb-light .icon-gruntfile.js,
body.light .icon-gruntfile.js {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gruntfile.babel.js,
body.vscode-light .icon-gruntfile.babel.js,
body.cb-light .icon-gruntfile.babel.js,
body.light .icon-gruntfile.babel.js {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gruntfile.coffee,
body.vscode-light .icon-gruntfile.coffee,
body.cb-light .icon-gruntfile.coffee,
body.light .icon-gruntfile.coffee {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gulpfile,
body.vscode-light .icon-gulpfile,
body.cb-light .icon-gulpfile,
body.light .icon-gulpfile {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gulpfile.js,
body.vscode-light .icon-gulpfile.js,
body.cb-light .icon-gulpfile.js,
body.light .icon-gulpfile.js {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ionic.config.json,
body.vscode-light .icon-ionic.config.json,
body.cb-light .icon-ionic.config.json,
body.light .icon-ionic.config.json {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ionic.project,
body.vscode-light .icon-ionic.project,
body.cb-light .icon-ionic.project,
body.light .icon-ionic.project {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-platformio.ini,
body.vscode-light .icon-platformio.ini,
body.cb-light .icon-platformio.ini,
body.light .icon-platformio.ini {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-rollup.config.js,
body.vscode-light .icon-rollup.config.js,
body.cb-light .icon-rollup.config.js,
body.light .icon-rollup.config.js {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sass-lint.yml,
body.vscode-light .icon-sass-lint.yml,
body.cb-light .icon-sass-lint.yml,
body.light .icon-sass-lint.yml {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelint.config.js,
body.vscode-light .icon-stylelint.config.js,
body.cb-light .icon-stylelint.config.js,
body.light .icon-stylelint.config.js {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelint.config.cjs,
body.vscode-light .icon-stylelint.config.cjs,
body.cb-light .icon-stylelint.config.cjs,
body.light .icon-stylelint.config.cjs {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelint.config.mjs,
body.vscode-light .icon-stylelint.config.mjs,
body.cb-light .icon-stylelint.config.mjs,
body.light .icon-stylelint.config.mjs {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-yarn.clean,
body.vscode-light .icon-yarn.clean,
body.cb-light .icon-yarn.clean,
body.light .icon-yarn.clean {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-yarn.lock,
body.vscode-light .icon-yarn.lock,
body.cb-light .icon-yarn.lock,
body.light .icon-yarn.lock {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.js,
body.vscode-light .icon-webpack.config.js,
body.cb-light .icon-webpack.config.js,
body.light .icon-webpack.config.js {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.cjs,
body.vscode-light .icon-webpack.config.cjs,
body.cb-light .icon-webpack.config.cjs,
body.light .icon-webpack.config.cjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.mjs,
body.vscode-light .icon-webpack.config.mjs,
body.cb-light .icon-webpack.config.mjs,
body.light .icon-webpack.config.mjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.ts,
body.vscode-light .icon-webpack.config.ts,
body.cb-light .icon-webpack.config.ts,
body.light .icon-webpack.config.ts {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.build.js,
body.vscode-light .icon-webpack.config.build.js,
body.cb-light .icon-webpack.config.build.js,
body.light .icon-webpack.config.build.js {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.build.cjs,
body.vscode-light .icon-webpack.config.build.cjs,
body.cb-light .icon-webpack.config.build.cjs,
body.light .icon-webpack.config.build.cjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.build.mjs,
body.vscode-light .icon-webpack.config.build.mjs,
body.cb-light .icon-webpack.config.build.mjs,
body.light .icon-webpack.config.build.mjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.config.build.ts,
body.vscode-light .icon-webpack.config.build.ts,
body.cb-light .icon-webpack.config.build.ts,
body.light .icon-webpack.config.build.ts {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.common.js,
body.vscode-light .icon-webpack.common.js,
body.cb-light .icon-webpack.common.js,
body.light .icon-webpack.common.js {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.common.cjs,
body.vscode-light .icon-webpack.common.cjs,
body.cb-light .icon-webpack.common.cjs,
body.light .icon-webpack.common.cjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.common.mjs,
body.vscode-light .icon-webpack.common.mjs,
body.cb-light .icon-webpack.common.mjs,
body.light .icon-webpack.common.mjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.common.ts,
body.vscode-light .icon-webpack.common.ts,
body.cb-light .icon-webpack.common.ts,
body.light .icon-webpack.common.ts {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.dev.js,
body.vscode-light .icon-webpack.dev.js,
body.cb-light .icon-webpack.dev.js,
body.light .icon-webpack.dev.js {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.dev.cjs,
body.vscode-light .icon-webpack.dev.cjs,
body.cb-light .icon-webpack.dev.cjs,
body.light .icon-webpack.dev.cjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.dev.mjs,
body.vscode-light .icon-webpack.dev.mjs,
body.cb-light .icon-webpack.dev.mjs,
body.light .icon-webpack.dev.mjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.dev.ts,
body.vscode-light .icon-webpack.dev.ts,
body.cb-light .icon-webpack.dev.ts,
body.light .icon-webpack.dev.ts {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.prod.js,
body.vscode-light .icon-webpack.prod.js,
body.cb-light .icon-webpack.prod.js,
body.light .icon-webpack.prod.js {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.prod.cjs,
body.vscode-light .icon-webpack.prod.cjs,
body.cb-light .icon-webpack.prod.cjs,
body.light .icon-webpack.prod.cjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.prod.mjs,
body.vscode-light .icon-webpack.prod.mjs,
body.cb-light .icon-webpack.prod.mjs,
body.light .icon-webpack.prod.mjs {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack.prod.ts,
body.vscode-light .icon-webpack.prod.ts,
body.cb-light .icon-webpack.prod.ts,
body.light .icon-webpack.prod.ts {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-license,
body.vscode-light .icon-license,
body.cb-light .icon-license,
body.light .icon-license {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-licence,
body.vscode-light .icon-licence,
body.cb-light .icon-licence,
body.light .icon-licence {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-license.txt,
body.vscode-light .icon-license.txt,
body.cb-light .icon-license.txt,
body.light .icon-license.txt {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-licence.txt,
body.vscode-light .icon-licence.txt,
body.cb-light .icon-licence.txt,
body.light .icon-licence.txt {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-license.md,
body.vscode-light .icon-license.md,
body.cb-light .icon-license.md,
body.light .icon-license.md {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-licence.md,
body.vscode-light .icon-licence.md,
body.cb-light .icon-licence.md,
body.light .icon-licence.md {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-copying,
body.vscode-light .icon-copying,
body.cb-light .icon-copying,
body.light .icon-copying {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-copying.txt,
body.vscode-light .icon-copying.txt,
body.cb-light .icon-copying.txt,
body.light .icon-copying.txt {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-copying.md,
body.vscode-light .icon-copying.md,
body.cb-light .icon-copying.md,
body.light .icon-copying.md {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-compiling,
body.vscode-light .icon-compiling,
body.cb-light .icon-compiling,
body.light .icon-compiling {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-compiling.txt,
body.vscode-light .icon-compiling.txt,
body.cb-light .icon-compiling.txt,
body.light .icon-compiling.txt {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-compiling.md,
body.vscode-light .icon-compiling.md,
body.cb-light .icon-compiling.md,
body.light .icon-compiling.md {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-contributing,
body.vscode-light .icon-contributing,
body.cb-light .icon-contributing,
body.light .icon-contributing {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-contributing.txt,
body.vscode-light .icon-contributing.txt,
body.cb-light .icon-contributing.txt,
body.light .icon-contributing.txt {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-contributing.md,
body.vscode-light .icon-contributing.md,
body.cb-light .icon-contributing.md,
body.light .icon-contributing.md {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-qmakefile,
body.vscode-light .icon-qmakefile,
body.cb-light .icon-qmakefile,
body.light .icon-qmakefile {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-omakefile,
body.vscode-light .icon-omakefile,
body.cb-light .icon-omakefile,
body.light .icon-omakefile {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cmakelists.txt,
body.vscode-light .icon-cmakelists.txt,
body.cb-light .icon-cmakelists.txt,
body.light .icon-cmakelists.txt {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-procfile,
body.vscode-light .icon-procfile,
body.cb-light .icon-procfile,
body.light .icon-procfile {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-todo,
body.vscode-light .icon-todo,
body.cb-light .icon-todo,
body.light .icon-todo {
  color: inherit;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-todo.txt,
body.vscode-light .icon-todo.txt,
body.cb-light .icon-todo.txt,
body.light .icon-todo.txt {
  color: inherit;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-todo.md,
body.vscode-light .icon-todo.md,
body.cb-light .icon-todo.md,
body.light .icon-todo.md {
  color: inherit;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bat,
body.vscode-light .icon-bat,
body.cb-light .icon-bat,
body.light .icon-bat {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-clojure,
body.vscode-light .icon-clojure,
body.cb-light .icon-clojure,
body.light .icon-clojure {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-coffeescript,
body.vscode-light .icon-coffeescript,
body.cb-light .icon-coffeescript,
body.light .icon-coffeescript {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jsonc,
body.vscode-light .icon-jsonc,
body.cb-light .icon-jsonc,
body.light .icon-jsonc {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-json,
body.vscode-light .icon-json,
body.cb-light .icon-json,
body.light .icon-json {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-c,
body.vscode-light .icon-c,
body.cb-light .icon-c,
body.light .icon-c {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cpp,
body.vscode-light .icon-cpp,
body.cb-light .icon-cpp,
body.light .icon-cpp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cuda-cpp,
body.vscode-light .icon-cuda-cpp,
body.cb-light .icon-cuda-cpp,
body.light .icon-cuda-cpp {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-csharp,
body.vscode-light .icon-csharp,
body.cb-light .icon-csharp,
body.light .icon-csharp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-css,
body.vscode-light .icon-css,
body.cb-light .icon-css,
body.light .icon-css {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dart,
body.vscode-light .icon-dart,
body.cb-light .icon-dart,
body.light .icon-dart {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dockerfile,
body.vscode-light .icon-dockerfile,
body.cb-light .icon-dockerfile,
body.light .icon-dockerfile {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ignore,
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitignore,
body.vscode-light .icon-ignore,
body.vscode-light .icon-gitignore,
body.cb-light .icon-ignore,
body.cb-light .icon-gitignore,
body.light .icon-ignore,
body.light .icon-gitignore {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-fsharp,
body.vscode-light .icon-fsharp,
body.cb-light .icon-fsharp,
body.light .icon-fsharp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-git-commit,
body.vscode-light .icon-git-commit,
body.cb-light .icon-git-commit,
body.light .icon-git-commit {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-go,
body.vscode-light .icon-go,
body.cb-light .icon-go,
body.light .icon-go {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-groovy,
body.vscode-light .icon-groovy,
body.cb-light .icon-groovy,
body.light .icon-groovy {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-handlebars,
body.vscode-light .icon-handlebars,
body.cb-light .icon-handlebars,
body.light .icon-handlebars {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-html,
body.vscode-light .icon-html,
body.cb-light .icon-html,
body.light .icon-html {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-properties,
body.vscode-light .icon-properties,
body.cb-light .icon-properties,
body.light .icon-properties {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-java,
body.vscode-light .icon-java,
body.cb-light .icon-java,
body.light .icon-java {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-javascriptreact,
body.vscode-light .icon-javascriptreact,
body.cb-light .icon-javascriptreact,
body.light .icon-javascriptreact {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-javascript,
body.vscode-light .icon-javascript,
body.cb-light .icon-javascript,
body.light .icon-javascript {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-julia,
body.vscode-light .icon-julia,
body.cb-light .icon-julia,
body.light .icon-julia {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tex,
body.vscode-light .icon-tex,
body.cb-light .icon-tex,
body.light .icon-tex {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-latex,
body.vscode-light .icon-latex,
body.cb-light .icon-latex,
body.light .icon-latex {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-less,
body.vscode-light .icon-less,
body.cb-light .icon-less,
body.light .icon-less {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-lua,
body.vscode-light .icon-lua,
body.cb-light .icon-lua,
body.light .icon-lua {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-makefile,
body.vscode-light .icon-makefile,
body.cb-light .icon-makefile,
body.light .icon-makefile {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-markdown,
body.vscode-light .icon-markdown,
body.cb-light .icon-markdown,
body.light .icon-markdown {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-objective-c,
body.vscode-light .icon-objective-c,
body.cb-light .icon-objective-c,
body.light .icon-objective-c {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-objective-cpp,
body.vscode-light .icon-objective-cpp,
body.cb-light .icon-objective-cpp,
body.light .icon-objective-cpp {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-perl,
body.vscode-light .icon-perl,
body.cb-light .icon-perl,
body.light .icon-perl {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-php,
body.vscode-light .icon-php,
body.cb-light .icon-php,
body.light .icon-php {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-powershell,
body.vscode-light .icon-powershell,
body.cb-light .icon-powershell,
body.light .icon-powershell {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-python,
body.vscode-light .icon-python,
body.cb-light .icon-python,
body.light .icon-python {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-razor,
body.vscode-light .icon-razor,
body.cb-light .icon-razor,
body.light .icon-razor {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ruby,
body.vscode-light .icon-ruby,
body.cb-light .icon-ruby,
body.light .icon-ruby {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-rust,
body.vscode-light .icon-rust,
body.cb-light .icon-rust,
body.light .icon-rust {
  color: #627379;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-scss,
body.vscode-light .icon-scss,
body.cb-light .icon-scss,
body.light .icon-scss {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-search-result,
body.vscode-light .icon-search-result,
body.cb-light .icon-search-result,
body.light .icon-search-result {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-shellscript,
body.vscode-light .icon-shellscript,
body.cb-light .icon-shellscript,
body.light .icon-shellscript {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sql,
body.vscode-light .icon-sql,
body.cb-light .icon-sql,
body.light .icon-sql {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-swift,
body.vscode-light .icon-swift,
body.cb-light .icon-swift,
body.light .icon-swift {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-typescript,
body.vscode-light .icon-typescript,
body.cb-light .icon-typescript,
body.light .icon-typescript {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-typescriptreact,
body.vscode-light .icon-typescriptreact,
body.cb-light .icon-typescriptreact,
body.light .icon-typescriptreact {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-xml,
body.vscode-light .icon-xml,
body.cb-light .icon-xml,
body.light .icon-xml {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-dockercompose,
body.vscode-high-contrast.vscode-high-contrast-light .icon-docker-compose,
body.vscode-light .icon-dockercompose,
body.vscode-light .icon-docker-compose,
body.cb-light .icon-dockercompose,
body.cb-light .icon-docker-compose,
body.light .icon-dockercompose,
body.light .icon-docker-compose {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-yaml,
body.vscode-light .icon-yaml,
body.cb-light .icon-yaml,
body.light .icon-yaml {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-elixir,
body.vscode-light .icon-elixir,
body.cb-light .icon-elixir,
body.light .icon-elixir {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-haskell,
body.vscode-light .icon-haskell,
body.cb-light .icon-haskell,
body.light .icon-haskell {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-haxe,
body.vscode-light .icon-haxe,
body.cb-light .icon-haxe,
body.light .icon-haxe {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-kotlin,
body.vscode-light .icon-kotlin,
body.cb-light .icon-kotlin,
body.light .icon-kotlin {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ocaml,
body.vscode-light .icon-ocaml,
body.cb-light .icon-ocaml,
body.light .icon-ocaml {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-rescript,
body.vscode-light .icon-rescript,
body.cb-light .icon-rescript,
body.light .icon-rescript {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylus,
body.vscode-light .icon-stylus,
body.cb-light .icon-stylus,
body.light .icon-stylus {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-terraform,
body.vscode-light .icon-terraform,
body.cb-light .icon-terraform,
body.light .icon-terraform {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jsonl,
body.vscode-light .icon-jsonl,
body.cb-light .icon-jsonl,
body.light .icon-jsonl {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-postcss,
body.vscode-light .icon-postcss,
body.cb-light .icon-postcss,
body.light .icon-postcss {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-django-html,
body.vscode-light .icon-django-html,
body.cb-light .icon-django-html,
body.light .icon-django-html {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-blade,
body.vscode-light .icon-blade,
body.cb-light .icon-blade,
body.light .icon-blade {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-R,
body.vscode-light .icon-R,
body.cb-light .icon-R,
body.light .icon-R {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-audio,
body.vscode-light .icon-audio,
body.cb-light .icon-audio,
body.light .icon-audio {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-babel,
body.vscode-light .icon-babel,
body.cb-light .icon-babel,
body.light .icon-babel {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-bower,
body.vscode-light .icon-bower,
body.cb-light .icon-bower,
body.light .icon-bower {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-c-sharp,
body.vscode-light .icon-c-sharp,
body.cb-light .icon-c-sharp,
body.light .icon-c-sharp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-clock,
body.vscode-light .icon-clock,
body.cb-light .icon-clock,
body.light .icon-clock {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-code-climate,
body.vscode-light .icon-code-climate,
body.cb-light .icon-code-climate,
body.light .icon-code-climate {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-code-search,
body.vscode-light .icon-code-search,
body.cb-light .icon-code-search,
body.light .icon-code-search {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-coffee,
body.vscode-light .icon-coffee,
body.cb-light .icon-coffee,
body.light .icon-coffee {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-coldfusion,
body.vscode-light .icon-coldfusion,
body.cb-light .icon-coldfusion,
body.light .icon-coldfusion {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-crystal,
body.vscode-light .icon-crystal,
body.cb-light .icon-crystal,
body.light .icon-crystal {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-cu,
body.vscode-light .icon-cu,
body.cb-light .icon-cu,
body.light .icon-cu {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-db,
body.vscode-light .icon-db,
body.cb-light .icon-db,
body.light .icon-db {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-docker,
body.vscode-light .icon-docker,
body.cb-light .icon-docker,
body.light .icon-docker {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-eslint,
body.vscode-light .icon-eslint,
body.cb-light .icon-eslint,
body.light .icon-eslint {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ethereum,
body.vscode-light .icon-ethereum,
body.cb-light .icon-ethereum,
body.light .icon-ethereum {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-f-sharp,
body.vscode-light .icon-f-sharp,
body.cb-light .icon-f-sharp,
body.light .icon-f-sharp {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-favicon,
body.vscode-light .icon-favicon,
body.cb-light .icon-favicon,
body.light .icon-favicon {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-firebase,
body.vscode-light .icon-firebase,
body.cb-light .icon-firebase,
body.light .icon-firebase {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-firefox,
body.vscode-light .icon-firefox,
body.cb-light .icon-firefox,
body.light .icon-firefox {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-font,
body.vscode-light .icon-font,
body.cb-light .icon-font,
body.light .icon-font {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-git,
body.vscode-light .icon-git,
body.cb-light .icon-git,
body.light .icon-git {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-github,
body.vscode-light .icon-github,
body.cb-light .icon-github,
body.light .icon-github {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gitlab,
body.vscode-light .icon-gitlab,
body.cb-light .icon-gitlab,
body.light .icon-gitlab {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-go2,
body.vscode-light .icon-go2,
body.cb-light .icon-go2,
body.light .icon-go2 {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-grails,
body.vscode-light .icon-grails,
body.cb-light .icon-grails,
body.light .icon-grails {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-grunt,
body.vscode-light .icon-grunt,
body.cb-light .icon-grunt,
body.light .icon-grunt {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-gulp,
body.vscode-light .icon-gulp,
body.cb-light .icon-gulp,
body.light .icon-gulp {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hacklang,
body.vscode-light .icon-hacklang,
body.cb-light .icon-hacklang,
body.light .icon-hacklang {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-heroku,
body.vscode-light .icon-heroku,
body.cb-light .icon-heroku,
body.light .icon-heroku {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-hex,
body.vscode-light .icon-hex,
body.cb-light .icon-hex,
body.light .icon-hex {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ignored,
body.vscode-light .icon-ignored,
body.cb-light .icon-ignored,
body.light .icon-ignored {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-illustrator,
body.vscode-light .icon-illustrator,
body.cb-light .icon-illustrator,
body.light .icon-illustrator {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-image,
body.vscode-light .icon-image,
body.cb-light .icon-image,
body.light .icon-image {
  color: #9068b0;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-info,
body.vscode-light .icon-info,
body.cb-light .icon-info,
body.light .icon-info {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-ionic,
body.vscode-light .icon-ionic,
body.cb-light .icon-ionic,
body.light .icon-ionic {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-jenkins,
body.vscode-light .icon-jenkins,
body.cb-light .icon-jenkins,
body.light .icon-jenkins {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-karma,
body.vscode-light .icon-karma,
body.cb-light .icon-karma,
body.light .icon-karma {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-livescript,
body.vscode-light .icon-livescript,
body.cb-light .icon-livescript,
body.light .icon-livescript {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-lock,
body.vscode-light .icon-lock,
body.cb-light .icon-lock,
body.light .icon-lock {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-maven,
body.vscode-light .icon-maven,
body.cb-light .icon-maven,
body.light .icon-maven {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-notebook,
body.vscode-light .icon-notebook,
body.cb-light .icon-notebook,
body.light .icon-notebook {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-npm,
body.vscode-light .icon-npm,
body.cb-light .icon-npm,
body.light .icon-npm {
  color: #3b4b52;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-photoshop,
body.vscode-light .icon-photoshop,
body.cb-light .icon-photoshop,
body.light .icon-photoshop {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-platformio,
body.vscode-light .icon-platformio,
body.cb-light .icon-platformio,
body.light .icon-platformio {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-prolog,
body.vscode-light .icon-prolog,
body.cb-light .icon-prolog,
body.light .icon-prolog {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-pug,
body.vscode-light .icon-pug,
body.cb-light .icon-pug,
body.light .icon-pug {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-puppet,
body.vscode-light .icon-puppet,
body.cb-light .icon-puppet,
body.light .icon-puppet {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-purescript,
body.vscode-light .icon-purescript,
body.cb-light .icon-purescript,
body.light .icon-purescript {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-react,
body.vscode-light .icon-react,
body.cb-light .icon-react,
body.light .icon-react {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-reasonml,
body.vscode-light .icon-reasonml,
body.cb-light .icon-reasonml,
body.light .icon-reasonml {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-rollup,
body.vscode-light .icon-rollup,
body.cb-light .icon-rollup,
body.light .icon-rollup {
  color: #b8383d;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-salesforce,
body.vscode-light .icon-salesforce,
body.cb-light .icon-salesforce,
body.light .icon-salesforce {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-shell,
body.vscode-light .icon-shell,
body.cb-light .icon-shell,
body.light .icon-shell {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-smarty,
body.vscode-light .icon-smarty,
body.cb-light .icon-smarty,
body.light .icon-smarty {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-spring,
body.vscode-light .icon-spring,
body.cb-light .icon-spring,
body.light .icon-spring {
  color: #7fae42;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-stylelint,
body.vscode-light .icon-stylelint,
body.cb-light .icon-stylelint,
body.light .icon-stylelint {
  color: #bfc2c1;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-sublime,
body.vscode-light .icon-sublime,
body.cb-light .icon-sublime,
body.light .icon-sublime {
  color: #cc6d2e;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-tsconfig,
body.vscode-light .icon-tsconfig,
body.cb-light .icon-tsconfig,
body.light .icon-tsconfig {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-video,
body.vscode-light .icon-video,
body.cb-light .icon-video,
body.light .icon-video {
  color: #dd4b78;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-vite,
body.vscode-light .icon-vite,
body.cb-light .icon-vite,
body.light .icon-vite {
  color: #b7b73b;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-webpack,
body.vscode-light .icon-webpack,
body.cb-light .icon-webpack,
body.light .icon-webpack {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-windows,
body.vscode-light .icon-windows,
body.cb-light .icon-windows,
body.light .icon-windows {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-word,
body.vscode-light .icon-word,
body.cb-light .icon-word,
body.light .icon-word {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-yarn,
body.vscode-light .icon-yarn,
body.cb-light .icon-yarn,
body.light .icon-yarn {
  color: #498ba7;
}
body.vscode-high-contrast.vscode-high-contrast-light .icon-yml,
body.vscode-light .icon-yml,
body.cb-light .icon-yml,
body.light .icon-yml {
  color: #9068b0;
}.sortable-element {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  padding: 2px 0;
  border-radius: 4px;
}
.sortable-element:hover .drag-handle {
  opacity: 1;
}

.drag-handle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 24px;
  flex-shrink: 0;
  opacity: 0;
  cursor: grab;
  user-select: none;
  color: var(--cb-text-tertiary);
  font-size: 12px;
  border-radius: 2px;
  transition: opacity 0.15s ease;
}
.drag-handle:hover {
  background: var(--cb-hover-bg);
  color: var(--cb-text-secondary);
}
.drag-handle:active {
  cursor: grabbing;
}

.element-content {
  flex: 1;
  min-width: 0;
}

.phrase-content-wrapper {
  display: inline-flex;
  align-items: center;
  vertical-align: middle;
  cursor: grab;
}
.phrase-content-wrapper:active {
  cursor: grabbing;
}

.phrase-drag-placeholder {
  display: inline-block;
  min-width: 60px;
  height: 20px;
  border: 1.5px dashed var(--cb-border);
  border-radius: 4px;
  vertical-align: middle;
  background: var(--cb-bg-secondary);
}

.dnd-insert-indicator {
  position: absolute;
  width: 2px;
  background: var(--cb-button-primary);
  border-radius: 1px;
  pointer-events: none;
  z-index: 10;
  transition: left 0.05s ease, top 0.05s ease;
}
.dnd-insert-indicator::before, .dnd-insert-indicator::after {
  content: "";
  position: absolute;
  left: -2px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cb-button-primary);
}
.dnd-insert-indicator::before {
  top: -3px;
}
.dnd-insert-indicator::after {
  bottom: -3px;
}

.drag-overlay-content {
  display: inline-flex;
  align-items: center;
  background: var(--cb-bg-primary);
  opacity: 0.75;
  pointer-events: none;
}

.dnd-editable-container {
  position: relative;
}

.slate-editable {
  outline: none;
  padding: 16px;
}._editable_5t975_1 {
  font-size: 14px;
  line-height: 25px;
  font-family: inherit;
  color: var(--cb-text-primary, #d2d3e0);
  outline: none;
  position: relative;
}
._editable_5t975_1[contenteditable=true] {
  min-height: 50px;
  max-height: 310px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-gutter: stable;
}
._editable_5t975_1[contenteditable=true]::-webkit-scrollbar {
  width: 6px;
}
._editable_5t975_1[contenteditable=true]::-webkit-scrollbar-track {
  background: transparent;
}
._editable_5t975_1[contenteditable=true]::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-thumb, rgba(255, 255, 255, 0.2));
  border-radius: 3px;
}
._editable_5t975_1[contenteditable=true]::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-scrollbar-thumb-hover, rgba(255, 255, 255, 0.3));
}
._editable_5t975_1 * {
  line-height: 25px !important;
}
._editable_5t975_1 p {
  margin: 0;
  line-height: 25px;
  min-height: 25px;
}
._editable_5t975_1 span {
  line-height: 25px;
}
._editable_5t975_1 [data-slate-node=text] {
  vertical-align: middle;
}
._editable_5t975_1[contenteditable=false] {
  cursor: text;
  user-select: text;
}
._editable_5t975_1[contenteditable=false] p {
  line-height: 1.78 !important;
  min-height: 1.78em;
}
._editable_5t975_1[contenteditable=false] [data-slate-node=text],
._editable_5t975_1[contenteditable=false] [data-slate-leaf=true],
._editable_5t975_1[contenteditable=false] [data-slate-string=true] {
  line-height: 1.78 !important;
}

._phrase_5t975_57 {
  color: var(--cb-marker-foreground, #40a6ff);
  background-color: var(--cb-marker-background, #34414b);
  border-radius: 2px;
}

[data-phrase-type="@"] > span:not([class*="sceneTag"]):not([class*="urlTag"]):not([class*="skillTag"]):not([class*="fileTag"]):not([class*="tdoc"]):not(:has([class*="sceneTag"])):not(:has([class*="urlTag"])):not(:has([class*="skillTag"])):not(:has([class*="fileTag"])):not(:has([class*="tdoc"])) {
  background-color: var(--cb-mention-phrase-bg, color-mix(in srgb, #6C4DFF 20%, transparent)) !important;
}

[data-phrase-type="/"] > span:not([class*="sceneTag"]):not([class*="urlTag"]):not([class*="skillTag"]):not([class*="fileTag"]):not([class*="tdoc"]):not(:has([class*="sceneTag"])):not(:has([class*="urlTag"])):not(:has([class*="skillTag"])):not(:has([class*="fileTag"])):not(:has([class*="tdoc"])) {
  background-color: color-mix(in srgb, #28B894 20%, transparent) !important;
}

._suffixPlaceholder_5t975_71 {
  position: absolute;
  top: 0;
  color: var(--cb-text-placeholder, rgba(210, 211, 224, 0.5));
  pointer-events: none;
  user-select: none;
  font-size: 14px;
  line-height: 25px;
  vertical-align: middle;
  white-space: nowrap;
}._container_6y1rh_1 {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  min-height: 18px;
  line-height: 18px;
  flex-shrink: 0;
}

._tag_6y1rh_11 {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 4px;
  margin-inline: 2px;
  height: 18px;
  line-height: 14px;
  vertical-align: middle;
  border-radius: 3px;
  background-color: var(--cb-tag-background, rgba(128, 128, 128, 0.2));
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 12px;
  outline: none;
  cursor: pointer;
  max-width: calc(100% - 4px);
}
._tag_6y1rh_11._hasCloseIcon_6y1rh_29:hover ._iconContainer_6y1rh_29 {
  visibility: hidden;
}
._tag_6y1rh_11._hasCloseIcon_6y1rh_29:hover ._icon_6y1rh_29 {
  visibility: visible;
}
._tag_6y1rh_11:focus, ._tag_6y1rh_11:focus-visible, ._tag_6y1rh_11._selected_6y1rh_35 {
  background-color: var(--cb-tag-selected-background, rgba(100, 150, 255, 0.3));
  color: var(--cb-tag-selected-text, var(--cb-text-primary, #d2d3e0));
}
._tag_6y1rh_11::selection {
  background-color: var(--cb-tag-selected-background, rgba(100, 150, 255, 0.3));
}
._tag_6y1rh_11._uploading_6y1rh_42 {
  opacity: 0.7;
}
._tag_6y1rh_11._uploading_6y1rh_42 ._iconContainer_6y1rh_29 {
  color: var(--cb-text-secondary, #888);
}
._tag_6y1rh_11._failed_6y1rh_48 {
  background-color: var(--cb-error-background, rgba(255, 100, 100, 0.2));
}
._tag_6y1rh_11._failed_6y1rh_48 ._iconContainer_6y1rh_29 {
  color: var(--cb-error-foreground, #f14c4c);
}
._tag_6y1rh_11._failed_6y1rh_48 ._text_6y1rh_54 {
  color: var(--cb-error-foreground, #f14c4c);
}

._iconContainer_6y1rh_29 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  visibility: visible;
}

._icon_6y1rh_29 {
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  padding: 4px;
  margin-left: -4px;
  box-sizing: content-box;
  cursor: pointer;
  flex-shrink: 0;
  visibility: hidden;
}

._text_6y1rh_54 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}

._skillTag_6y1rh_93,
._fileTag_6y1rh_94 {
  height: 22px;
  border-radius: 6px;
  padding: 2px 6px;
  font-weight: 500;
  background-color: var(--cb-bg-primary-default, #f2f2f2);
}
._skillTag_6y1rh_93 ._icon_6y1rh_29,
._fileTag_6y1rh_94 ._icon_6y1rh_29 {
  left: 6px;
}
._skillTag_6y1rh_93._hasCloseIcon_6y1rh_29:hover,
._fileTag_6y1rh_94._hasCloseIcon_6y1rh_29:hover {
  background-color: var(--cb-bg-primary-hover, #ebebeb);
}
._skillTag_6y1rh_93:focus, ._skillTag_6y1rh_93:focus-visible, ._skillTag_6y1rh_93._selected_6y1rh_35,
._fileTag_6y1rh_94:focus,
._fileTag_6y1rh_94:focus-visible,
._fileTag_6y1rh_94._selected_6y1rh_35 {
  background-color: var(--cb-bg-primary-active, #e6e6e6);
}

.vscode-dark ._skillTag_6y1rh_93,
.vscode-dark ._fileTag_6y1rh_94,
.vscode-high-contrast ._skillTag_6y1rh_93,
.vscode-high-contrast ._fileTag_6y1rh_94 {
  background-color: var(--cb-tag-skill-background, var(--cb-vscode-list-hover-background, rgba(255, 255, 255, 0.08)));
}
.vscode-dark ._skillTag_6y1rh_93._hasCloseIcon_6y1rh_29:hover, .vscode-dark ._skillTag_6y1rh_93:focus, .vscode-dark ._skillTag_6y1rh_93:focus-visible, .vscode-dark ._skillTag_6y1rh_93._selected_6y1rh_35,
.vscode-dark ._fileTag_6y1rh_94._hasCloseIcon_6y1rh_29:hover,
.vscode-dark ._fileTag_6y1rh_94:focus,
.vscode-dark ._fileTag_6y1rh_94:focus-visible,
.vscode-dark ._fileTag_6y1rh_94._selected_6y1rh_35,
.vscode-high-contrast ._skillTag_6y1rh_93._hasCloseIcon_6y1rh_29:hover,
.vscode-high-contrast ._skillTag_6y1rh_93:focus,
.vscode-high-contrast ._skillTag_6y1rh_93:focus-visible,
.vscode-high-contrast ._skillTag_6y1rh_93._selected_6y1rh_35,
.vscode-high-contrast ._fileTag_6y1rh_94._hasCloseIcon_6y1rh_29:hover,
.vscode-high-contrast ._fileTag_6y1rh_94:focus,
.vscode-high-contrast ._fileTag_6y1rh_94:focus-visible,
.vscode-high-contrast ._fileTag_6y1rh_94._selected_6y1rh_35 {
  background-color: var(--cb-tag-skill-background-hover, var(--cb-vscode-list-active-selection-background, rgba(255, 255, 255, 0.14)));
}

._urlTag_6y1rh_138 {
  background-color: transparent;
  color: var(--cb-link-foreground, #1668dc);
  padding: 0 2px;
  height: 20px;
  line-height: 20px;
}
._urlTag_6y1rh_138 ._iconContainer_6y1rh_29 {
  width: 14px;
  height: 14px;
  color: currentColor;
}
._urlTag_6y1rh_138 ._text_6y1rh_54 {
  color: currentColor;
}
._urlTag_6y1rh_138:focus, ._urlTag_6y1rh_138:focus-visible, ._urlTag_6y1rh_138._selected_6y1rh_35 {
  background-color: color-mix(in srgb, currentColor 12%, transparent);
  color: var(--cb-link-foreground, #1668dc);
}
._urlTag_6y1rh_138._hasCloseIcon_6y1rh_29:hover {
  background-color: color-mix(in srgb, currentColor 8%, transparent);
}

._sceneTag_6y1rh_161 {
  display: inline-flex;
  height: 22px;
  padding: 2px 6px;
  justify-content: center;
  align-items: center;
  gap: 4px;
  border-radius: 6px;
  background: #000 !important;
  color: #fff;
  font-size: 12px;
}
._sceneTag_6y1rh_161[data-phrase-type] > span, ._sceneTag_6y1rh_161 > span,
._sceneTag_6y1rh_161 span {
  background-color: transparent !important;
}
._sceneTag_6y1rh_161 ._text_6y1rh_54 {
  color: #fff;
  overflow: visible;
  text-overflow: unset;
  white-space: nowrap;
}
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 {
  color: #fff;
  width: 14px;
  height: 14px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 svg {
  color: inherit;
  fill: currentColor;
  fill-opacity: 1;
  stroke: none;
  width: 14px;
  height: 14px;
}
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 svg path,
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 svg circle,
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 svg rect,
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 svg g {
  fill-opacity: 1;
}
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 .custom-icon-img,
._sceneTag_6y1rh_161 ._iconContainer_6y1rh_29 img {
  width: 11px;
  height: 11px;
  border-radius: 0;
  object-fit: contain;
  filter: brightness(0) invert(1);
}
._sceneTag_6y1rh_161 ._icon_6y1rh_29 {
  position: static;
  transform: none;
  margin-left: 0;
  color: rgba(255, 255, 255, 0.55);
  visibility: visible;
  padding: 1px;
  box-sizing: content-box;
}
._sceneTag_6y1rh_161 ._icon_6y1rh_29:hover {
  color: rgba(255, 255, 255, 0.85);
}
._sceneTag_6y1rh_161:focus, ._sceneTag_6y1rh_161:focus-visible, ._sceneTag_6y1rh_161._selected_6y1rh_35 {
  background: #000 !important;
  color: #fff;
}
._sceneTag_6y1rh_161._hasCloseIcon_6y1rh_29:hover {
  background: #222 !important;
}
._sceneTag_6y1rh_161._hasCloseIcon_6y1rh_29:hover ._iconContainer_6y1rh_29 {
  visibility: visible;
}
._sceneTag_6y1rh_161._hasCloseIcon_6y1rh_29:hover ._icon_6y1rh_29 {
  visibility: visible;
}/**
 * Loading Spinner Icon Animation
 */
.cb-loading-spinner {
  animation: cb-spinner-rotate 1s linear infinite;
}

@keyframes cb-spinner-rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * Tooltip 样式
 * 使用 CSS 变量适配主题
 *
 * Tooltip 渲染在组件内部，可以正常继承 CSS 变量
 */
.cb-tooltip {
  --cb-tooltip-arrow-size: 5px;
  border-radius: 4px;
  z-index: 10001;
  padding: 6px 10px;
  box-shadow: none !important;
  pointer-events: none;
}
.cb-tooltip.cb-tooltip--interactive {
  pointer-events: auto;
}
.cb-tooltip {
  /* Dark 主题（默认） - 使用 CSS 变量 */
  background-color: var(--cb-dropdown-bg-color, #3c3c3c);
  border: 1px solid var(--cb-input-border-color, #313248);
}
.cb-tooltip .cb-tooltip-content {
  color: var(--cb-tooltip-text-color, #ffffff);
  font-size: 12px;
  line-height: 18px;
  word-break: break-word;
}
.cb-tooltip .cb-tooltip-content > div:first-child,
.cb-tooltip .cb-tooltip-content h1,
.cb-tooltip .cb-tooltip-content h2,
.cb-tooltip .cb-tooltip-content h3,
.cb-tooltip .cb-tooltip-content h4,
.cb-tooltip .cb-tooltip-content h5,
.cb-tooltip .cb-tooltip-content h6 {
  font-size: 13px;
  font-weight: 500;
  line-height: 18px;
}
.cb-tooltip .cb-tooltip-content p,
.cb-tooltip .cb-tooltip-content span,
.cb-tooltip .cb-tooltip-content div {
  font-size: 12px;
  line-height: 16px;
}
.cb-tooltip.cb-tooltip--no-padding {
  padding: 0;
}
.cb-tooltip {
  /* 黑色半透明主题（用于浮在白底菜单上的提示） */
}
.cb-tooltip.cb-tooltip--dark {
  --cb-tooltip-arrow-color: rgba(0, 0, 0, 0.75);
  background-color: rgba(0, 0, 0, 0.75);
  border: none;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  border-radius: 8px;
  padding: 6px 10px;
}
.cb-tooltip.cb-tooltip--dark .cb-tooltip-arrow {
  color: rgba(0, 0, 0, 0.75);
}
.cb-tooltip.cb-tooltip--dark .cb-tooltip-content,
.cb-tooltip.cb-tooltip--dark .cb-tooltip-content * {
  color: #ffffff;
  font-size: 12px;
  line-height: 20px;
}
.cb-tooltip.cb-tooltip--no-border {
  border: none;
  background: none;
}
.cb-tooltip {
  /* 小三角箭头（FloatingArrow SVG 方案，不再使用 ::after 伪元素） */
}
.cb-tooltip.cb-tooltip--arrow {
  position: relative;
  overflow: visible;
}

/* 置顶卡片 Tooltip 内容：标题 + 灰色工作空间名 */
.cb-tooltip-pinned-title {
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-tooltip-text-color, #ffffff);
  word-break: break-all;
  /* 最多 4 行，超出省略号 */
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cb-tooltip-pinned-workspace {
  font-weight: 400;
  font-size: 11px;
  line-height: 14px;
  color: var(--cb-text-secondary, #858699);
  margin-top: 2px;
  word-break: break-word;
  /* 最多 2 行，超出省略号 */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
}

/* 箭头样式 — FloatingArrow 渲染为 SVG，fill="currentColor" 继承此处 color */
.cb-tooltip-arrow {
  color: var(--cb-tooltip-arrow-color, var(--cb-dropdown-bg-color, #3c3c3c));
}

/* 工具栏 tooltip 样式：半透明黑色背景 + 白色文字 + 箭头 */
.cb-tooltip.cb-toolbar-tooltip {
  --cb-tooltip-arrow-color: rgba(0, 0, 0, 0.75);
  background-color: rgba(0, 0, 0, 0.75);
  border: none;
}
.cb-tooltip.cb-toolbar-tooltip .cb-tooltip-arrow {
  color: rgba(0, 0, 0, 0.75);
}
.cb-tooltip.cb-toolbar-tooltip .cb-tooltip-content {
  color: #ffffff;
}

/* Light 主题 */
:global(.cb-light) .cb-tooltip,
:global(.light) .cb-tooltip {
  /* Light 主题的变量值已经在 cb-chat.module.scss 中定义 */
  /* 这里不需要重复设置，CSS 变量会自动切换 */
}
:global(.cb-light) .cb-tooltip .cb-tooltip-content,
:global(.light) .cb-tooltip .cb-tooltip-content {
  /* 颜色通过 var(--cb-tooltip-text-color, #FFFFFF) 自动切换 */
}.cb-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  outline: none;
  appearance: none;
  font-weight: 500;
  white-space: nowrap;
  user-select: none;
  text-decoration: none;
  position: relative;
  gap: 6px;
}
.cb-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.cb-button:focus-visible {
  outline: 2px solid var(--cb-focus-border, var(--vscode-focusBorder));
  outline-offset: 2px;
}
.cb-button--small {
  padding: 2px 12px;
  font-size: 12px;
  line-height: 18px;
  height: 22px;
}
.cb-button--medium {
  padding: 6px 16px;
  font-size: 13px;
  line-height: 20px;
  height: 32px;
}
.cb-button--large {
  padding: 8px 20px;
  font-size: 14px;
  line-height: 22px;
  height: 40px;
}
.cb-button--primary {
  background-color: var(--cb-button-primary, #6c4dff);
  color: var(--cb-button-primary-foreground, #fff);
}
.cb-button--primary:hover:not(:disabled), .cb-button--primary:focus:not(:disabled), .cb-button--primary:active:not(:disabled) {
  filter: brightness(1.05);
}
.cb-button--secondary {
  background-color: var(--cb-input-button-background, #313248);
  color: var(--cb-input-button-foreground, #D2D3E0);
}
.cb-button--secondary:hover:not(:disabled), .cb-button--secondary:focus-visible:not(:disabled), .cb-button--secondary:active:not(:disabled) {
  background-color: var(--cb-dropdown-item-hover-bg-color);
}
.cb-button--outline {
  background: transparent !important;
  border: 1px solid var(--cb-input-border-color, #606060) !important;
  color: var(--cb-text-primary, #a0a0a0) !important;
}
.cb-button--outline:hover:not(:disabled) {
  background-color: var(--cb-dropdown-item-hover-bg-color) !important;
}
.cb-button--ghost {
  background: transparent;
  color: var(--cb-button-ghost-foreground, var(--vscode-foreground));
  border: 1px solid transparent;
}
.cb-button--ghost:hover:not(:disabled) {
  background: var(--cb-button-ghost-hover-background, var(--cb-icon-button-hover-background, rgba(255, 255, 255, 0.1)));
}
.cb-button--ghost:active:not(:disabled) {
  background: var(--cb-button-ghost-hover-background, var(--cb-icon-button-hover-background, rgba(255, 255, 255, 0.1)));
  filter: brightness(0.9);
}
.cb-button--danger {
  background: var(--cb-button-danger-background, var(--vscode-errorForeground));
  color: var(--cb-button-danger-foreground, var(--vscode-errorBackground, #ffffff));
  border: 1px solid var(--cb-button-danger-border, transparent);
}
.cb-button--danger:hover:not(:disabled) {
  background: var(--cb-button-danger-hover-background, var(--vscode-errorForeground));
  opacity: 0.9;
}
.cb-button--danger:active:not(:disabled) {
  transform: translateY(1px);
}
.cb-button--disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.cb-button--loading {
  pointer-events: none;
}
.cb-button--loading .cb-button__content {
  opacity: 0.6;
}
.cb-button--icon-only {
  padding: 0;
  width: var(--cb-button-icon-size, 32px);
  height: var(--cb-button-icon-size, 32px);
}
.cb-button--icon-only.cb-button--small {
  width: 22px;
  height: 22px;
}
.cb-button--icon-only.cb-button--large {
  width: 40px;
  height: 40px;
}
.cb-button--full-width {
  width: 100%;
}
.cb-button__content {
  display: flex;
  align-items: center;
  gap: 6px;
}
.cb-button__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.cb-button__icon svg {
  width: 100%;
  height: 100%;
}
.cb-button__loading {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 14px;
  height: 14px;
  border: 2px solid currentColor;
  border-top: 2px solid transparent;
  border-radius: 50%;
  animation: cb-button-spin 1s linear infinite;
}
@keyframes cb-button-spin {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}._icon_hg7y0_1 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 4px;
  cursor: pointer;
  color: var(--cb-input-button-foreground, #D2D3E0);
  background-color: transparent;
  transition: background-color 0.2s ease;
}
._icon_hg7y0_1:hover {
  background-color: var(--cb-icon-button-hover-background, rgba(255, 255, 255, 0.1));
}

._disabled_hg7y0_16 {
  pointer-events: none;
  cursor: not-allowed;
  opacity: 0.5;
}

._medium_hg7y0_22 {
  height: 24px;
  width: 24px;
}

._small_hg7y0_27 {
  height: 16px;
  width: 16px;
}

._large_hg7y0_32 {
  height: 32px;
  width: 32px;
  border-radius: 50%;
}

._sendButtonSpacing_hg7y0_38 {
  margin-inline-start: 4px;
}

._withBackground_hg7y0_42 {
  background-color: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
}
._withBackground_hg7y0_42:hover {
  background-color: var(--chat-input-add-btn-hover-bg-color);
}
._withBackground_hg7y0_42._disabled_hg7y0_16 {
  background-color: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
  opacity: 0.5;
}
._withBackground_hg7y0_42._disabled_hg7y0_16:hover {
  background-color: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
}

._loading_hg7y0_56 {
  color: var(--cb-send-button-loading-color, rgba(0, 0, 0, 0.9));
  background-color: var(--cb-send-button-loading-bg, rgba(255, 255, 255, 0.9));
}
._loading_hg7y0_56:hover {
  background-color: var(--cb-send-button-loading-bg, rgba(255, 255, 255, 0.9));
}

._active_hg7y0_64 {
  background-color: var(--cb-button-primary, #6c4dff);
  color: var(--cb-button-primary-foreground, #fff);
}
._active_hg7y0_64:hover {
  background-color: var(--cb-button-primary, #6c4dff);
  opacity: 0.9;
}

._stopConfirmLabel_hg7y0_73 {
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  white-space: nowrap;
  user-select: none;
}@keyframes _rotation_rr1h2_1 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
._spinner_rr1h2_9 {
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border-top: 2px solid currentColor;
  border-right: 2px solid transparent;
  box-sizing: border-box;
  animation: _rotation_rr1h2_1 1s linear infinite;
}._icon_rrmrn_1 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  font-size: 12px;
}
._icon_rrmrn_1 img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
._icon_rrmrn_1 svg {
  width: 100%;
  height: 100%;
}

.sceneTag ._icon_rrmrn_1 {
  width: 14px;
  height: 14px;
}
.sceneTag ._icon_rrmrn_1 img {
  width: 14px;
  height: 14px;
}@keyframes _skeletonShimmer_4ygfd_1 {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}
._skeleton_4ygfd_9 {
  padding: 8px 0;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  gap: 12px;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 ._skeletonIcon_4ygfd_18 {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_4ygfd_1 1.5s ease-in-out infinite;
  flex-shrink: 0;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 ._skeletonContent_4ygfd_27 {
  flex: 1;
  display: flex;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 ._skeletonContent_4ygfd_27 ._skeletonLine_4ygfd_31 {
  height: 12px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_4ygfd_1 1.5s ease-in-out infinite;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 ._skeletonContent_4ygfd_27 ._skeletonLineMain_4ygfd_38 {
  width: 100%;
  height: 20px;
}
._skeleton_4ygfd_9 ._skeletonItem_4ygfd_12 ._skeletonContent_4ygfd_27 ._skeletonLineDesc_4ygfd_42 {
  width: 40%;
  height: 20px;
}._dropHint_10ig5_1 {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
  z-index: 1000;
  border-radius: inherit;
}
._dropHint_10ig5_1._visible_10ig5_14 {
  opacity: 1;
}

._content_10ig5_18 {
  background-color: white;
  padding: 24px 32px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  line-height: 1.5;
  user-select: none;
}

._keyBadge_10ig5_31 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 32px;
  height: 32px;
  padding: 0 8px;
  background-color: #f0f0f0;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  font-weight: 600;
  font-family: monospace;
  font-size: 14px;
}._resizeHandle_f5039_1 {
  --cb-resize-handle-radius: 18px;
  height: 4px;
  cursor: ns-resize;
  user-select: none;
  flex-shrink: 0;
  position: absolute;
  top: -5px;
  left: 8px;
  right: 8px;
  z-index: 10;
}
._resizeHandle_f5039_1::before {
  content: "";
  position: absolute;
  top: 0;
  left: -8px;
  right: -8px;
  height: var(--cb-resize-handle-radius);
  box-sizing: border-box;
  border: 1px solid transparent;
  border-bottom: 0;
  border-radius: var(--cb-resize-handle-radius) var(--cb-resize-handle-radius) 0 0;
  pointer-events: none;
  transition: border-color 0.2s ease;
}
._resizeHandle_f5039_1._disabled_f5039_27 {
  cursor: not-allowed;
  opacity: 0.5;
}
._resizeHandle_f5039_1._bottom_f5039_31 {
  top: auto;
  bottom: 0;
}
._resizeHandle_f5039_1._bottom_f5039_31::before {
  top: auto;
  bottom: 0;
  border: 1px solid transparent;
  border-top: 0;
  border-radius: 0 0 var(--cb-resize-handle-radius) var(--cb-resize-handle-radius);
}

body.resizing {
  cursor: ns-resize !important;
  user-select: none !important;
}
body.resizing * {
  cursor: ns-resize !important;
}
._container_1a264_2 {
  position: relative;
  /* 容器固定 32×32，与同行 IconButton（强化提示词 / 语音输入 / 发送按钮）
     几何对齐；圆环本身仍为 16px，由 inline-flex 居中。
     hover 圆角 16 让灰底落点与 IconButton 一致（之前 padding 4 / radius 4 → 24×24
     导致兄弟按钮视觉不齐，圆环偏小，已修正）。 */
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  user-select: none;
  transition: background-color 0.2s ease;
}
._container_1a264_2:hover {
  background-color: var(--cb-input-hover-bg, rgba(0, 0, 0, 0.05));
}

/* 圆环可点击态：仅在 usageByCategory 合法时由 ContextUsageDisplay 添加。 */
._ringClickable_1a264_23 {
  cursor: pointer;
}

._ring_1a264_23 {
  display: block;
}

._ringProgress_1a264_31 {
  transition: stroke-dashoffset 0.3s ease;
}

/* ─── UsageByCategoryPopover ─────────────────────────────────────── */
/* 设计稿：卡片式弹层，白色背景 + 阴影 + 圆角 16px。 */
._popover_1a264_37 {
  position: absolute;
  bottom: calc(100% + 8px);
  right: 0;
  z-index: 1000;
  width: 280px;
  padding: 16px;
  border: 1px solid var(--cb-context-popover-border, var(--cb-border, rgba(0, 0, 0, 0.08)));
  border-radius: 16px;
  background: var(--cb-context-popover-bg, var(--cb-bg-primary, #fff));
  box-shadow: 0 6px 24px -4px rgba(0, 0, 0, 0.04), 0 4px 6px -8px rgba(0, 0, 0, 0.04);
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
  font-size: 12px;
  line-height: 1.5;
}

/* 头部：标题 + 关闭按钮 */
._popoverHeader_1a264_54 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}

._popoverHeaderTitle_1a264_61 {
  flex: 1;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px;
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}

._popoverClose_1a264_69 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  padding: 0;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transition: color 0.15s ease;
}
._popoverClose_1a264_69:hover {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}

/* 统计区域：大号百分比 + 已使用摘要 */
._popoverStats_1a264_89 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 4px;
}

._popoverPercent_1a264_96 {
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 28px;
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}

._popoverUsedInfo_1a264_104 {
  display: flex;
  align-items: center;
  gap: 4px;
}

._popoverUsedLabel_1a264_110 {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.3));
}

._popoverUsedValue_1a264_116 {
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.3));
}

/* 进度条 */
._popoverBar_1a264_124 {
  display: flex;
  height: 8px;
  margin-bottom: 16px;
  overflow: hidden;
  border-radius: 3px;
  background: var(--cb-context-bar-track, rgba(0, 0, 0, 0.05));
}

._popoverBarFill_1a264_133 {
  display: flex;
  height: 100%;
  gap: 1px;
  transition: width 0.3s ease;
}

._popoverSeg_1a264_140 {
  height: 100%;
  transition: width 0.25s ease;
}

._popoverSegSp_1a264_145 {
  background: var(--cb-cat-system-prompt);
}

._popoverSegTool_1a264_149 {
  background: var(--cb-cat-tools);
}

._popoverSegConv_1a264_153 {
  background: var(--cb-cat-conversation);
}

._popoverSegMcp_1a264_157 {
  background: var(--cb-cat-mcp);
}

._popoverSegSkill_1a264_161 {
  background: var(--cb-cat-skills);
}

/* 图例列表 */
._popoverLegend_1a264_166 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._popoverRow_1a264_172 {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 22px;
}

._popoverSwatch_1a264_179 {
  flex: 0 0 8px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

._popoverSwatchSp_1a264_186 {
  background: var(--cb-cat-system-prompt);
}

._popoverSwatchTool_1a264_190 {
  background: var(--cb-cat-tools);
}

._popoverSwatchConv_1a264_194 {
  background: var(--cb-cat-conversation);
}

._popoverSwatchMcp_1a264_198 {
  background: var(--cb-cat-mcp);
}

._popoverSwatchSkill_1a264_202 {
  background: var(--cb-cat-skills);
}

._popoverRowName_1a264_206 {
  flex: 1;
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 13px;
  line-height: 22px;
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}

._popoverRowValue_1a264_214 {
  font-family: "SF Pro Text", -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.3));
}
._container_axgft_2 {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.7));
  font-family: "PingFang SC", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  user-select: none;
  box-sizing: border-box;
}

._prefix_axgft_15 {
  color: inherit;
}

._value_axgft_19 {
  font-weight: 400;
  color: inherit;
  white-space: nowrap;
}

._loading_axgft_25 {
  border-bottom: none;
}
._loading_axgft_25::before {
  content: "·";
  margin-right: 8px;
  color: inherit;
}

._feedback_axgft_34 {
  margin-left: 4px;
}

._creditBox_axgft_38 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: inherit;
}

._modelTag_axgft_45 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: inherit;
}

._modelIcon_axgft_52 {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}

._modelName_axgft_58 {
  color: inherit;
  white-space: nowrap;
}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(./KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(./KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(./KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(./KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(./KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(./KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(./KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(./KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(./KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(./KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(./KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(./KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(./KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(./KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(./KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(./KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(./KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(./KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(./KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(./KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(./KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(./KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(./KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(./KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(./KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(./KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(./KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(./KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(./KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(./KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(./KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(./KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(./KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(./KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(./KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(./KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(./KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(./KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(./KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(./KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(./KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(./KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(./KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(./KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(./KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(./KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(./KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(./KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(./KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(./KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(./KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(./KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(./KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(./KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(./KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(./KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(./KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(./KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(./KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.25"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}

/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.cb-markdown {
  --cb-katex-text-color: var(--cb-vscode-editor-foreground, #cccccc);
  --cb-katex-border-color: var(--cb-markdown-border-color, #3c3c3c);
  --cb-katex-bg-color: transparent;
}
.cb-markdown .katex {
  font-size: 1em;
  color: var(--cb-katex-text-color);
}
.cb-markdown span.katex-display,
.cb-markdown .katex-display {
  margin: var(--markdown-content-gap) 0 !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
  text-align: center;
  background-color: var(--cb-katex-bg-color);
  border-left: 3px solid var(--cb-katex-border-color);
  padding-left: 12px;
}
.cb-markdown span.katex-display > .katex,
.cb-markdown .katex-display > .katex {
  display: inline-block;
  text-align: left;
}
.cb-markdown .katex-error {
  color: var(--cb-text-error, #e74856);
  background-color: rgba(231, 72, 86, 0.1);
  padding: 2px 4px;
  border-radius: 3px;
  font-size: 0.9em;
}
:global(.light) .cb-markdown,
:global(.cb-light) .cb-markdown,
.cbChat.light .cb-markdown {
  --cb-katex-text-color: var(--cb-vscode-editor-foreground, #333333);
  --cb-katex-border-color: var(--cb-markdown-border-color, #e1e4e8);
}
.cb-markdown .cb-latex-display {
  margin: var(--markdown-content-gap) 0;
  padding: 12px;
  background-color: var(--cb-katex-bg-color, transparent);
  border-left: 3px solid var(--cb-katex-border-color);
  text-align: center;
  overflow-x: auto;
}
.cb-markdown .cb-latex-display .katex {
  font-size: 1.1em;
  color: var(--cb-katex-text-color);
}
.cb-markdown .cb-latex-error {
  margin-top: 8px;
  padding: 8px 12px;
  background-color: rgba(231, 72, 86, 0.1);
  border-left: 3px solid var(--cb-text-error, #e74856);
  color: var(--cb-text-error, #e74856);
  font-size: 12px;
  font-family: var(--cb-font-family, monospace);
}
.cb-markdown {
  --markdown-list-padding-left: 2em;
  --markdown-content-gap: 12px;
  --markdown-line-gap: 4px;
  --cb-md-font-size: 13px;
  --cb-md-line-height: 21px;
  --cb-md-heading-font-size: 13px;
  font-size: var(--cb-md-font-size);
  line-height: var(--cb-md-line-height);
  color: var(--cb-text-primary, var(--cb-vscode-editor-foreground, #cccccc));
  word-wrap: break-word;
}
.cb-markdown h1,
.cb-markdown h2,
.cb-markdown h3,
.cb-markdown h4,
.cb-markdown h5,
.cb-markdown h6 {
  margin-block: 0 var(--markdown-line-gap);
  font-weight: 600;
  font-size: var(--cb-md-heading-font-size);
}
.cb-markdown p,
.cb-markdown ul,
.cb-markdown ol {
  margin: 0;
  padding-bottom: var(--markdown-content-gap);
}
.cb-markdown ul,
.cb-markdown ol {
  padding-left: var(--markdown-list-padding-left);
}
.cb-markdown ul li,
.cb-markdown ol li {
  margin: 0;
  padding-bottom: var(--markdown-line-gap);
}
.cb-markdown ul {
  list-style-type: disc;
}
.cb-markdown ol {
  list-style-type: decimal;
}
.cb-markdown .cb-markdown-table-wrapper {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  margin-block: var(--markdown-content-gap);
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
}
.cb-markdown .cb-markdown-table-wrapper > table {
  margin-block: 0;
  min-width: 100%;
}
.cb-markdown table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border: 1px solid var(--cb-markdown-table-border-color, var(--cb-markdown-border-color, #3c3c3c));
  border-radius: 16px;
  overflow: hidden;
  margin-block: var(--markdown-content-gap);
  background: var(--cb-markdown-table-cell-bg, transparent);
}
.cb-markdown thead th {
  background: var(--cb-markdown-table-header-bg, transparent);
  font-weight: 600;
  text-align: left;
  padding: 8px 16px;
}
.cb-markdown tbody td {
  padding: 8px 16px;
}
.cb-markdown:not([data-md-theme]) thead th {
  font-size: 12px;
  line-height: 21px;
}
.cb-markdown:not([data-md-theme]) tbody td {
  font-size: 14px;
  line-height: 22px;
}
.cb-markdown th,
.cb-markdown td {
  border-right: 1px solid var(--cb-markdown-table-border-color, var(--cb-markdown-border-color, #3c3c3c));
  border-bottom: 1px solid var(--cb-markdown-table-border-color, var(--cb-markdown-border-color, #3c3c3c));
}
.cb-markdown th:last-child,
.cb-markdown td:last-child {
  border-right: none;
}
.cb-markdown tbody tr:last-child td {
  border-bottom: none;
}
.cb-markdown blockquote {
  all: unset;
}
.cb-markdown li > p,
.cb-markdown li > ul,
.cb-markdown li > ol,
.cb-markdown ul:has(+ ul),
.cb-markdown ul:has(+ ol),
.cb-markdown ol:has(+ ul),
.cb-markdown ol:has(+ ol) {
  padding-bottom: 0;
}
.cb-markdown p:has(+ ul),
.cb-markdown p:has(+ ol) {
  padding-bottom: 4px;
}
.cb-markdown li:empty {
  display: none;
}
.cb-markdown code:not(pre > code) {
  padding-inline: 4px;
  border-radius: 3px;
  background-color: var(--cb-markdown-code-bg-color, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-primary, var(--cb-vscode-editor-foreground, #cccccc));
  pointer-events: none;
}
.cb-markdown code:not(pre > code).cb-clickable-path {
  display: inline;
  padding: 1px 6px;
  line-height: 1.5;
  background-color: var(--cb-markdown-symbol-background, rgba(81, 154, 186, 0.15));
  border-radius: 4px;
  color: var(--cb-markdown-symbol-color, #75beff);
  pointer-events: auto;
  cursor: pointer;
  text-decoration: none;
  opacity: 0.8;
  transition: opacity 0.2s ease, background-color 0.2s ease;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}
.cb-markdown code:not(pre > code).cb-clickable-path:hover {
  opacity: 1;
  background-color: var(--cb-markdown-symbol-hover-background, rgba(112, 174, 255, 0.25));
}
.cb-markdown code:not(pre > code).cb-clickable-path:active {
  opacity: 0.7;
}
.cb-markdown code:not(pre > code).cb-clickable-path .cb-clickable-path-icon {
  display: inline-block;
  vertical-align: -0.18em;
  margin-right: 4px;
  color: inherit;
}
.cb-markdown code:not(pre > code).cb-clickable-path .cb-clickable-path-icon > svg {
  display: block;
}
.cb-markdown pre {
  margin: 0;
  border-top: none;
  background-color: var(--cb-vscode-sideBar-background);
  overflow: auto;
}
.cb-markdown pre > code {
  display: block;
  margin-inline: 0;
  border-radius: 0;
  background-color: inherit;
  color: var(--cb-markdown-hljs-color, #cccccc);
  overflow-x: auto;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
  scrollbar-width: thin;
}
.cb-markdown a,
.cb-markdown a > code:not(pre > code) {
  color: var(--cb-text-link, #1470B4);
  text-decoration: none;
  transition: color 0.15s ease;
}
.cb-markdown a:hover,
.cb-markdown a > code:not(pre > code):hover {
  color: var(--cb-text-link-hover, #0E58A0);
  text-decoration: underline;
}
.cb-markdown strong {
  font-weight: 600;
}
.cb-markdown em {
  font-style: italic;
}
.cb-markdown del {
  text-decoration: line-through;
  opacity: 0.7;
}
.cb-markdown hr {
  margin: 16px 0;
  border: none;
  border-top: 1px solid var(--cb-markdown-hr-border-color, var(--cb-vscode-panel-border, #3c3c3c));
}
.cb-markdown img {
  max-width: 100%;
  height: auto;
}
.cb-markdown .hljs {
  background: transparent;
  color: var(--cb-vscode-editor-foreground, #cccccc);
}
.cb-markdown .hljs-comment,
.cb-markdown .hljs-quote {
  color: var(--cb-hljs-comment, #6A9955);
  font-style: italic;
}
.cb-markdown .hljs-keyword,
.cb-markdown .hljs-selector-tag,
.cb-markdown .hljs-type {
  color: var(--cb-hljs-keyword, #569cd6);
}
.cb-markdown .hljs-string,
.cb-markdown .hljs-attr {
  color: var(--cb-hljs-string, #ce9178);
}
.cb-markdown .hljs-number,
.cb-markdown .hljs-literal {
  color: var(--cb-hljs-number, #b5cea8);
}
.cb-markdown .hljs-function,
.cb-markdown .hljs-title {
  color: var(--cb-hljs-function, #dcdcaa);
}
.cb-markdown .hljs-variable,
.cb-markdown .hljs-params {
  color: var(--cb-hljs-variable, #9cdcfe);
}
.cb-markdown[data-md-theme=loose] {
  font-size: var(--cb-md-root, 16px);
  --cb-md-h1-font-size: 1.25em;
  --cb-md-h1-line-height: 1.75;
  --cb-md-h2-font-size: 1.125em;
  --cb-md-h2-line-height: 1.778;
  --cb-md-h3-font-size: 1em;
  --cb-md-h3-line-height: 1.75;
  --cb-md-h4-font-size: 0.875em;
  --cb-md-h4-line-height: 1.786;
  --cb-md-p1-font-size: 0.875em;
  --cb-md-p1-line-height: 1.786;
  --cb-md-p2-font-size: 0.75em;
  --cb-md-p2-line-height: 1.75;
  --cb-md-p3-font-size: 0.625em;
  --cb-md-p3-line-height: 1.8;
  --cb-md-font-weight-heading: 600;
  --cb-md-font-weight-body: 400;
  --cb-md-font-weight-strong: 600;
  --cb-md-h1-pt: 20px;
  --cb-md-h1-pb: 16px;
  --cb-md-h2-pt: 16px;
  --cb-md-h2-pb: 16px;
  --cb-md-h3-pt: 16px;
  --cb-md-h3-pb: 4px;
  --cb-md-h4-pt: 8px;
  --cb-md-h4-pb: 4px;
  --cb-md-p-pt: 0px;
  --cb-md-p-pb: 12px;
  --cb-md-list-pt: 0px;
  --cb-md-list-pb: 16px;
  --cb-md-li-gap: 4px;
  --markdown-list-padding-left: 2em;
  --cb-md-table-pt: 12px;
  --cb-md-table-pb: 12px;
  --cb-md-pre-pt: 12px;
  --cb-md-pre-pb: 12px;
  --cb-md-img-pt: 12px;
  --cb-md-img-pb: 12px;
  --cb-md-hr-pt: 20px;
  --cb-md-hr-pb: 20px;
  --cb-md-blockquote-pt: 12px;
  --cb-md-blockquote-pb: 12px;
  --cb-md-exec-pt: 12px;
  --cb-md-exec-pb: 12px;
  --cb-md-task-pt: 12px;
  --cb-md-task-pb: 12px;
  --cb-md-search-think-pt: 8px;
  --cb-md-search-think-pb: 12px;
  --cb-md-button-pt: 12px;
  --cb-md-button-pb: 12px;
  --cb-md-tool-gap: 4px;
  --cb-md-font-size: var(--cb-md-p1-font-size);
  --cb-md-line-height: var(--cb-md-p1-line-height);
  --cb-md-heading-font-size: var(--cb-md-h1-font-size);
  --markdown-content-gap: var(--cb-md-p-pb);
  --markdown-line-gap: var(--cb-md-li-gap);
  line-height: var(--cb-md-p1-line-height);
  font-weight: var(--cb-md-font-weight-body);
}
.cb-markdown[data-md-theme=loose] h1 {
  font-size: var(--cb-md-h1-font-size);
  line-height: var(--cb-md-h1-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h1-pt) 0 var(--cb-md-h1-pb);
}
.cb-markdown[data-md-theme=loose] h2 {
  font-size: var(--cb-md-h2-font-size);
  line-height: var(--cb-md-h2-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h2-pt) 0 var(--cb-md-h2-pb);
}
.cb-markdown[data-md-theme=loose] h3 {
  font-size: var(--cb-md-h3-font-size);
  line-height: var(--cb-md-h3-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h3-pt) 0 var(--cb-md-h3-pb);
}
.cb-markdown[data-md-theme=loose] h4,
.cb-markdown[data-md-theme=loose] h5,
.cb-markdown[data-md-theme=loose] h6 {
  font-size: var(--cb-md-h4-font-size);
  line-height: var(--cb-md-h4-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h4-pt) 0 var(--cb-md-h4-pb);
}
.cb-markdown[data-md-theme=loose] p {
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
  margin: 0;
  padding: var(--cb-md-p-pt) 0 var(--cb-md-p-pb);
}
.cb-markdown[data-md-theme=loose] ul,
.cb-markdown[data-md-theme=loose] ol {
  margin: 0;
  padding: var(--cb-md-list-pt) 0 var(--cb-md-list-pb) var(--markdown-list-padding-left);
}
.cb-markdown[data-md-theme=loose] ul li,
.cb-markdown[data-md-theme=loose] ol li {
  margin: 0;
  padding-bottom: var(--cb-md-li-gap);
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
}
.cb-markdown[data-md-theme=loose] ul li li,
.cb-markdown[data-md-theme=loose] ol li li {
  font-size: 1em;
}
.cb-markdown[data-md-theme=loose] ul li > p,
.cb-markdown[data-md-theme=loose] ol li > p {
  font-size: 1em;
}
.cb-markdown[data-md-theme=loose] ul li:last-child,
.cb-markdown[data-md-theme=loose] ol li:last-child {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] li > p,
.cb-markdown[data-md-theme=loose] li > ul,
.cb-markdown[data-md-theme=loose] li > ol {
  padding: 0;
}
.cb-markdown[data-md-theme=loose] p:has(+ ul),
.cb-markdown[data-md-theme=loose] p:has(+ ol) {
  padding-bottom: 4px;
}
.cb-markdown[data-md-theme=loose] ul:has(+ ul),
.cb-markdown[data-md-theme=loose] ul:has(+ ol),
.cb-markdown[data-md-theme=loose] ol:has(+ ul),
.cb-markdown[data-md-theme=loose] ol:has(+ ol) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] table {
  margin: var(--cb-md-table-pt) 0 var(--cb-md-table-pb);
  padding: 0;
}
.cb-markdown[data-md-theme=loose] thead th,
.cb-markdown[data-md-theme=loose] tbody td {
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
}
.cb-markdown[data-md-theme=loose] thead th > p,
.cb-markdown[data-md-theme=loose] tbody td > p {
  font-size: 1em;
}
.cb-markdown[data-md-theme=loose] pre {
  margin: 0;
  padding: var(--cb-md-pre-pt) 0 var(--cb-md-pre-pb);
}
.cb-markdown[data-md-theme=loose] pre > code {
  font-size: var(--cb-md-p2-font-size);
  line-height: var(--cb-md-p2-line-height);
}
.cb-markdown[data-md-theme=loose] img {
  border-radius: 16px;
  border: 0.5px solid rgba(0, 0, 0, 0.08);
}
.cb-markdown[data-md-theme=loose] hr {
  margin: var(--cb-md-hr-pt) 0 var(--cb-md-hr-pb);
  padding: 0;
  border: none;
  border-top: 1px solid var(--cb-markdown-hr-border-color, var(--cb-vscode-panel-border, #3c3c3c));
}
.cb-markdown[data-md-theme=loose] blockquote {
  all: unset;
  display: block;
  margin: 0;
  padding-left: 16px;
  border-left: 4px solid var(--cb-vscode-textBlockQuote-border, var(--cb-vscode-panel-border, #3c3c3c));
  background: var(--cb-vscode-textBlockQuote-background, transparent);
}
.cb-markdown[data-md-theme=loose] blockquote > :first-child {
  padding-top: 0;
}
.cb-markdown[data-md-theme=loose] blockquote > :last-child {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] strong {
  font-weight: var(--cb-md-font-weight-strong);
}
.cb-markdown[data-md-theme=loose] > :first-child {
  padding-top: 0 !important;
}
.cb-markdown[data-md-theme=loose] > :last-child {
  padding-bottom: 0 !important;
}
.cb-markdown[data-md-theme=loose] > :last-child:is(hr, table) {
  margin-bottom: 0 !important;
}
.cb-markdown[data-md-theme=loose] :is(p, ul, ol, blockquote, pre):has(+ :is(h1, h2, h3, h4, h5, h6, hr)) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] :is(h3, h4, h5, h6):has(+ :is(pre, blockquote, img, hr)) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] :is(h1, h2, h3, h4, h5, h6):has(+ :is(h1, h2, h3, h4, h5, h6)) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] hr:has(+ :is(h1, h2, h3, h4, h5, h6)) {
  margin-bottom: 0;
}
.cb-markdown[data-md-theme=loose] :is(h1, h2):has(+ hr) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=loose] table:has(+ :is(h1, h2, h3, h4, h5, h6, hr)) {
  margin-bottom: 0;
}
.cb-markdown[data-md-theme=loose] hr:has(+ table) {
  margin-bottom: 0;
}
.cb-markdown[data-md-theme=loose] :is(p, ul, ol, h3, h4, h5, h6, blockquote, pre):has(+ table) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=reasoning] {
  font-size: var(--cb-md-root, 16px);
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  --cb-md-h1-font-size: 0.875em;
  --cb-md-h1-line-height: 1.786;
  --cb-md-h2-font-size: 0.875em;
  --cb-md-h2-line-height: 1.786;
  --cb-md-h3-font-size: 0.875em;
  --cb-md-h3-line-height: 1.786;
  --cb-md-h4-font-size: 0.875em;
  --cb-md-h4-line-height: 1.786;
  --cb-md-p1-font-size: 0.875em;
  --cb-md-p1-line-height: 1.786;
  --cb-md-p2-font-size: 0.75em;
  --cb-md-p2-line-height: 1.75;
  --cb-md-p3-font-size: 0.625em;
  --cb-md-p3-line-height: 1.8;
  --cb-md-font-weight-heading: 400;
  --cb-md-font-weight-body: 400;
  --cb-md-font-weight-strong: 600;
  --cb-md-h1-pt: 0px;
  --cb-md-h1-pb: 8px;
  --cb-md-h2-pt: 0px;
  --cb-md-h2-pb: 8px;
  --cb-md-h3-pt: 0px;
  --cb-md-h3-pb: 8px;
  --cb-md-h4-pt: 0px;
  --cb-md-h4-pb: 4px;
  --cb-md-p-pt: 0px;
  --cb-md-p-pb: 8px;
  --cb-md-list-pt: 0px;
  --cb-md-list-pb: 8px;
  --cb-md-li-gap: 4px;
  --markdown-list-padding-left: 2em;
  --cb-md-table-pt: 8px;
  --cb-md-table-pb: 8px;
  --cb-md-pre-pt: 4px;
  --cb-md-pre-pb: 4px;
  --cb-md-img-pt: 8px;
  --cb-md-img-pb: 8px;
  --cb-md-hr-pt: 12px;
  --cb-md-hr-pb: 12px;
  --cb-md-blockquote-pt: 8px;
  --cb-md-blockquote-pb: 8px;
  --cb-md-exec-pt: 12px;
  --cb-md-exec-pb: 12px;
  --cb-md-task-pt: 12px;
  --cb-md-task-pb: 12px;
  --cb-md-search-think-pt: 8px;
  --cb-md-search-think-pb: 12px;
  --cb-md-button-pt: 12px;
  --cb-md-button-pb: 12px;
  --cb-md-tool-gap: 4px;
  --cb-md-font-size: var(--cb-md-p1-font-size);
  --cb-md-line-height: var(--cb-md-p1-line-height);
  --cb-md-heading-font-size: var(--cb-md-h1-font-size);
  --markdown-content-gap: var(--cb-md-p-pb);
  --markdown-line-gap: var(--cb-md-li-gap);
  line-height: var(--cb-md-p1-line-height);
  font-weight: var(--cb-md-font-weight-body);
}
.cb-markdown[data-md-theme=reasoning] h1 {
  font-size: var(--cb-md-h1-font-size);
  line-height: var(--cb-md-h1-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h1-pt) 0 var(--cb-md-h1-pb);
}
.cb-markdown[data-md-theme=reasoning] h2 {
  font-size: var(--cb-md-h2-font-size);
  line-height: var(--cb-md-h2-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h2-pt) 0 var(--cb-md-h2-pb);
}
.cb-markdown[data-md-theme=reasoning] h3 {
  font-size: var(--cb-md-h3-font-size);
  line-height: var(--cb-md-h3-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h3-pt) 0 var(--cb-md-h3-pb);
}
.cb-markdown[data-md-theme=reasoning] h4,
.cb-markdown[data-md-theme=reasoning] h5,
.cb-markdown[data-md-theme=reasoning] h6 {
  font-size: var(--cb-md-h4-font-size);
  line-height: var(--cb-md-h4-line-height);
  font-weight: var(--cb-md-font-weight-heading);
  margin-block: 0;
  padding: var(--cb-md-h4-pt) 0 var(--cb-md-h4-pb);
}
.cb-markdown[data-md-theme=reasoning] p {
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
  margin: 0;
  padding: var(--cb-md-p-pt) 0 var(--cb-md-p-pb);
}
.cb-markdown[data-md-theme=reasoning] ul,
.cb-markdown[data-md-theme=reasoning] ol {
  margin: 0;
  padding: var(--cb-md-list-pt) 0 var(--cb-md-list-pb) var(--markdown-list-padding-left);
}
.cb-markdown[data-md-theme=reasoning] ul li,
.cb-markdown[data-md-theme=reasoning] ol li {
  margin: 0;
  padding-bottom: var(--cb-md-li-gap);
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
}
.cb-markdown[data-md-theme=reasoning] ul li li,
.cb-markdown[data-md-theme=reasoning] ol li li {
  font-size: 1em;
}
.cb-markdown[data-md-theme=reasoning] ul li > p,
.cb-markdown[data-md-theme=reasoning] ol li > p {
  font-size: 1em;
}
.cb-markdown[data-md-theme=reasoning] ul li:last-child,
.cb-markdown[data-md-theme=reasoning] ol li:last-child {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=reasoning] li > p,
.cb-markdown[data-md-theme=reasoning] li > ul,
.cb-markdown[data-md-theme=reasoning] li > ol {
  padding: 0;
}
.cb-markdown[data-md-theme=reasoning] p:has(+ ul),
.cb-markdown[data-md-theme=reasoning] p:has(+ ol) {
  padding-bottom: 4px;
}
.cb-markdown[data-md-theme=reasoning] ul:has(+ ul),
.cb-markdown[data-md-theme=reasoning] ul:has(+ ol),
.cb-markdown[data-md-theme=reasoning] ol:has(+ ul),
.cb-markdown[data-md-theme=reasoning] ol:has(+ ol) {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=reasoning] table {
  margin: var(--cb-md-table-pt) 0 var(--cb-md-table-pb);
  padding: 0;
}
.cb-markdown[data-md-theme=reasoning] thead th,
.cb-markdown[data-md-theme=reasoning] tbody td {
  font-size: var(--cb-md-p1-font-size);
  line-height: var(--cb-md-p1-line-height);
}
.cb-markdown[data-md-theme=reasoning] thead th > p,
.cb-markdown[data-md-theme=reasoning] tbody td > p {
  font-size: 1em;
}
.cb-markdown[data-md-theme=reasoning] pre {
  margin: 0;
  padding: var(--cb-md-pre-pt) 0 var(--cb-md-pre-pb);
}
.cb-markdown[data-md-theme=reasoning] pre > code {
  font-size: var(--cb-md-p2-font-size);
  line-height: var(--cb-md-p2-line-height);
}
.cb-markdown[data-md-theme=reasoning] img {
  border-radius: 16px;
  border: 0.5px solid rgba(0, 0, 0, 0.08);
}
.cb-markdown[data-md-theme=reasoning] hr {
  margin: var(--cb-md-hr-pt) 0 var(--cb-md-hr-pb);
  padding: 0;
  border: none;
  border-top: 1px solid var(--cb-markdown-hr-border-color, var(--cb-vscode-panel-border, #3c3c3c));
}
.cb-markdown[data-md-theme=reasoning] blockquote {
  all: unset;
  display: block;
  margin: 0;
  padding-left: 16px;
  border-left: 4px solid var(--cb-vscode-textBlockQuote-border, var(--cb-vscode-panel-border, #3c3c3c));
  background: var(--cb-vscode-textBlockQuote-background, transparent);
}
.cb-markdown[data-md-theme=reasoning] blockquote > :first-child {
  padding-top: 0;
}
.cb-markdown[data-md-theme=reasoning] blockquote > :last-child {
  padding-bottom: 0;
}
.cb-markdown[data-md-theme=reasoning] strong {
  font-weight: var(--cb-md-font-weight-strong);
}
.cb-markdown[data-md-theme=reasoning] > :first-child {
  padding-top: 0 !important;
}
.cb-markdown[data-md-theme=reasoning] > :last-child {
  padding-bottom: 0 !important;
}
.cb-markdown[data-md-theme=reasoning] > :last-child:is(hr, table) {
  margin-bottom: 0 !important;
}
.cb-markdown[data-md-theme=reasoning] .cb-markdown-pre-wrapper {
  padding-bottom: 4px;
}
.cb-markdown[data-md-theme=reasoning] .cb-markdown-pre-container {
  background-color: var(--qad-card-bg, #f2f2f2);
  max-height: 200px;
  overflow-y: auto;
}
:global(.light) .cb-markdown .hljs-comment,
:global(.light) .cb-markdown .hljs-quote,
:global(.cb-light) .cb-markdown .hljs-comment,
:global(.cb-light) .cb-markdown .hljs-quote,
.cbChat.light .cb-markdown .hljs-comment,
.cbChat.light .cb-markdown .hljs-quote {
  color: var(--cb-hljs-comment, #6A9955);
  font-style: italic;
}
:global(.light) .cb-markdown .hljs-keyword,
:global(.light) .cb-markdown .hljs-selector-tag,
:global(.light) .cb-markdown .hljs-type,
:global(.cb-light) .cb-markdown .hljs-keyword,
:global(.cb-light) .cb-markdown .hljs-selector-tag,
:global(.cb-light) .cb-markdown .hljs-type,
.cbChat.light .cb-markdown .hljs-keyword,
.cbChat.light .cb-markdown .hljs-selector-tag,
.cbChat.light .cb-markdown .hljs-type {
  color: var(--cb-hljs-keyword, #569cd6);
}
:global(.light) .cb-markdown .hljs-string,
:global(.light) .cb-markdown .hljs-attr,
:global(.cb-light) .cb-markdown .hljs-string,
:global(.cb-light) .cb-markdown .hljs-attr,
.cbChat.light .cb-markdown .hljs-string,
.cbChat.light .cb-markdown .hljs-attr {
  color: var(--cb-hljs-string, #ce9178);
}
:global(.light) .cb-markdown .hljs-number,
:global(.light) .cb-markdown .hljs-literal,
:global(.cb-light) .cb-markdown .hljs-number,
:global(.cb-light) .cb-markdown .hljs-literal,
.cbChat.light .cb-markdown .hljs-number,
.cbChat.light .cb-markdown .hljs-literal {
  color: var(--cb-hljs-number, #b5cea8);
}
:global(.light) .cb-markdown .hljs-function,
:global(.light) .cb-markdown .hljs-title,
:global(.cb-light) .cb-markdown .hljs-function,
:global(.cb-light) .cb-markdown .hljs-title,
.cbChat.light .cb-markdown .hljs-function,
.cbChat.light .cb-markdown .hljs-title {
  color: var(--cb-hljs-function, #dcdcaa);
}
:global(.light) .cb-markdown .hljs-variable,
:global(.light) .cb-markdown .hljs-params,
:global(.cb-light) .cb-markdown .hljs-variable,
:global(.cb-light) .cb-markdown .hljs-params,
.cbChat.light .cb-markdown .hljs-variable,
.cbChat.light .cb-markdown .hljs-params {
  color: var(--cb-hljs-variable, #9cdcfe);
}
.cb-markdown-fallback {
  font-size: 13px;
  line-height: 21px;
  white-space: pre-wrap;
  word-wrap: break-word;
  color: var(--cb-text-primary, var(--cb-vscode-editor-foreground, #cccccc));
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font-family: inherit;
}
/**
 * Markdown 代码块公共样式
 * 被 markdown-pre.tsx, markdown-pre-mermaid.tsx, code-block-actions.tsx 共享
 *
 * 视觉规格按 ardot「Markdown / pre_代码表格」（节点 1125:4659）：
 *   容器  — 16px 圆角 + #EBEBEB 描边
 *   表头  — 44px 高 / #F7F7F7 / 左右 16px padding
 *   代码区 — 白底 / 16px padding（仅 light 主题强制白底，dark 跟随容器）
 *   折叠功能已移除
 *
 * 使用 .cb-markdown 命名空间 + cb- 前缀以完全隔离旧版 chat-ui 样式
 */
.cb-markdown .cb-markdown-pre-wrapper {
  padding-bottom: 12px;
}
.cb-markdown .cb-markdown-pre-container {
  border: 1px solid var(--cb-markdown-code-block-border, #ebebeb);
  border-radius: 16px;
  overflow: hidden;
}
.cb-markdown .cb-markdown-pre__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 36px;
  padding: 6px 8px 6px 16px;
  background-color: var(--cb-markdown-code-block-header-bg, #f7f7f7);
}
.cb-markdown .cb-markdown-pre__title {
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 22px;
  font-size: 14px;
  font-weight: 400 !important;
  color: var(--cb-markdown-code-block-title-fg, rgba(0, 0, 0, 0.9));
}
.cb-markdown .cb-markdown-pre__title--clickable {
  cursor: pointer;
}
.cb-markdown .cb-markdown-pre__title--clickable:hover {
  color: var(--cb-vscode-textLink-activeForeground, #4daafc);
}
.cb-markdown .cb-markdown-pre__line-range {
  margin-left: 6px;
  color: var(--cb-vscode-descriptionForeground, #8b949e);
  font-weight: 400;
}
.cb-markdown .cb-markdown-pre__action {
  display: flex;
  height: 24px;
  padding: 0 6px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: 6px;
  cursor: pointer;
  color: var(--cb-markdown-code-block-action-fg, rgba(0, 0, 0, 0.7));
}
.cb-markdown .cb-markdown-pre__action:hover {
  background-color: var(--cb-markdown-code-block-action-hover-bg, rgba(0, 0, 0, 0.04));
}
.cb-markdown .cb-markdown-pre__action.disabled {
  opacity: 0.3;
  pointer-events: none;
}
.cb-markdown .cb-markdown-pre__icon {
  width: 14px;
  height: 14px;
}
.cb-markdown .cb-markdown-pre__label {
  display: block;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
}
.cb-markdown .cb-md-divider {
  width: 0.5px;
  height: 16px;
  background: var(--cb-border, #e1e4e8);
  opacity: 0.6;
}
@media screen and (max-width: 320px) {
  .cb-markdown .cb-md-divider {
    display: none;
  }
}
.cb-markdown .cb-markdown-pre {
  background-color: var(--cb-markdown-code-block-bg, transparent);
  padding: 12px 16px !important;
}
/**
 * CodeBlockActions 组件样式
 * 全局样式已迁移至 markdown-pre-common.scss
 */
._actions_12mgp_6 {
  display: flex;
  align-items: center;
  gap: 12px;
  line-height: 20px;
  font-size: 13px;
  color: var(--cb-markdown-code-block-action-fg, rgba(0, 0, 0, 0.7));
  overflow-x: hidden;
  flex-shrink: 0;
}

._action_12mgp_6 {
  display: flex;
  height: 24px;
  padding: 0 6px;
  align-items: center;
  justify-content: center;
  gap: 4px;
  border-radius: 6px;
  cursor: pointer;
  color: var(--cb-markdown-code-block-action-fg, rgba(0, 0, 0, 0.7));
}
._action_12mgp_6:hover {
  background-color: var(--cb-markdown-code-block-action-hover-bg, rgba(0, 0, 0, 0.04));
}
._action_12mgp_6._disabled_12mgp_31 {
  opacity: 0.3;
  pointer-events: none;
}

._icon_12mgp_36 {
  width: 14px;
  height: 14px;
}

._label_12mgp_41 {
  display: block;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 400;
  line-height: 21px;
}

._icon-check_12mgp_49 {
  color: var(--cb-success-color, #28b894);
}.cb-queue-banner {
  position: relative;
  display: flex;
  width: calc(100% - 8px);
  margin: 0 4px;
  margin-bottom: -2px;
  padding: 10px 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  box-sizing: border-box;
  animation: cb-queue-banner-fade-in 0.3s ease-in-out;
  border-radius: var(--cb-banner-border-radius, 6px 6px 0 0);
}
.cb-queue-banner--waiting, .cb-queue-banner--expired, .cb-queue-banner--timeout {
  border: 1px solid var(--cb-banner-border-warning, rgba(254, 157, 46, 0.6));
  border-bottom: none;
  background: var(--cb-banner-bg-warning, rgba(254, 157, 46, 0.2));
}
.cb-queue-banner--waiting .cb-queue-banner__title, .cb-queue-banner--expired .cb-queue-banner__title, .cb-queue-banner--timeout .cb-queue-banner__title {
  color: var(--cb-banner-icon-warning, #FE9D2E);
}
.cb-queue-banner--waiting .cb-queue-banner__action, .cb-queue-banner--expired .cb-queue-banner__action, .cb-queue-banner--timeout .cb-queue-banner__action {
  border-color: var(--cb-banner-button-secondary-border, #FE9D2E);
  color: var(--cb-banner-button-secondary-color, #FE9D2E);
}
.cb-queue-banner--waiting .cb-queue-banner__action--primary, .cb-queue-banner--expired .cb-queue-banner__action--primary, .cb-queue-banner--timeout .cb-queue-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, #FE9D2E);
  border-color: var(--cb-banner-button-primary-border, #FE9D2E);
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-queue-banner--waiting .cb-queue-banner__action--upgrade, .cb-queue-banner--expired .cb-queue-banner__action--upgrade, .cb-queue-banner--timeout .cb-queue-banner__action--upgrade {
  background: var(--cb-button-primary, #1677ff);
  border-color: var(--cb-button-primary, #1677ff);
  color: var(--cb-button-primary-foreground, #fff);
}
.cb-queue-banner--full, .cb-queue-banner--user_limit {
  border: 1px solid var(--cb-banner-border-error, #EF4444);
  border-bottom: none;
  background: var(--cb-banner-bg-error, rgba(239, 68, 68, 0.2));
}
.cb-queue-banner--full .cb-queue-banner__title, .cb-queue-banner--user_limit .cb-queue-banner__title {
  color: var(--cb-banner-icon-error, #EF4444);
}
.cb-queue-banner--full .cb-queue-banner__action, .cb-queue-banner--user_limit .cb-queue-banner__action {
  border-color: var(--cb-banner-button-secondary-border, #EF4444);
  color: var(--cb-banner-button-secondary-color, #EF4444);
}
.cb-queue-banner--full .cb-queue-banner__action--primary, .cb-queue-banner--user_limit .cb-queue-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, #EF4444);
  border-color: var(--cb-banner-button-primary-border, #EF4444);
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-queue-banner__close {
  position: absolute;
  top: 10px;
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--cb-error-banner-text-color);
  cursor: pointer;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}
.cb-queue-banner__close:hover {
  opacity: 1;
}
.cb-queue-banner__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  min-width: 0;
  padding-right: 20px;
  box-sizing: border-box;
}
.cb-queue-banner__title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  line-height: 18px;
}
.cb-queue-banner__title svg {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}
.cb-queue-banner__info {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--cb-error-banner-text-color);
  font-size: 13px;
  line-height: 18px;
}
.cb-queue-banner__position {
  font-weight: 500;
}
.cb-queue-banner__desc {
  color: var(--cb-error-banner-text-color);
  font-size: 12px;
  line-height: 16px;
  opacity: 0.9;
}
.cb-queue-banner__upgrade-hint {
  color: var(--cb-error-banner-text-color);
  font-size: 12px;
  line-height: 16px;
  opacity: 0.9;
  margin-top: 4px;
}
.cb-queue-banner__actions {
  display: flex;
  gap: 8px;
  width: 100%;
  justify-content: flex-end;
  align-items: center;
}
.cb-queue-banner__action {
  display: flex;
  height: 23px;
  padding: 4px 8px;
  justify-content: center;
  align-items: center;
  gap: 9px;
  border-radius: 4px;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  box-sizing: border-box;
  transition: all 0.15s ease;
  background: transparent;
  border: 1px solid;
}
.cb-queue-banner__action:hover {
  opacity: 0.85;
}
.cb-queue-banner__action:active {
  opacity: 0.7;
}
.cb-queue-banner__action:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-queue-banner__action:disabled:hover {
  background: transparent;
  opacity: 0.5;
}
.cb-queue-banner__action--primary {
  text-align: center;
}
.cb-queue-banner__action--primary:hover {
  opacity: 0.85;
}
.cb-queue-banner__action--primary:active {
  opacity: 0.7;
}

@keyframes cb-queue-banner-fade-in {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}._cb-markdown_1ew2c_1 {
  --cb-mermaid-block-height: 360px;
}

._cb-mermaid-code_1ew2c_5 {
  max-height: var(--cb-mermaid-block-height);
  overflow: auto;
}

._cb-mermaid-diagram_1ew2c_10 {
  max-height: var(--cb-mermaid-block-height);
  overflow: auto;
  padding: 16px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  transition: background-color 0.2s ease;
}
._cb-mermaid-diagram_1ew2c_10._theme-light_1ew2c_19 {
  background-color: #ffffff;
}
._cb-mermaid-diagram_1ew2c_10._theme-dark_1ew2c_22 {
  background-color: #1e1e1e;
}
._cb-mermaid-diagram_1ew2c_10._use-vscode-bg_1ew2c_25 {
  background-color: var(--vscode-editor-background);
}
._cb-mermaid-diagram_1ew2c_10 ._hidden_1ew2c_28 {
  display: none;
}

._cb-mermaid-error_1ew2c_32 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 16px;
  min-height: 200px;
  line-height: 18px;
  font-size: 12px;
}
._cb-mermaid-error__content_1ew2c_43 {
  width: 100%;
  max-width: 600px;
}
._cb-mermaid-error__title_1ew2c_47 {
  font-size: 12px;
  color: var(--cb-text-secondary, #666);
  margin-bottom: 8px;
}
._cb-mermaid-error__message-container_1ew2c_52 {
  position: relative;
  border: 1px solid var(--cb-border, #e1e4e8);
  border-radius: 6px;
  padding: 12px;
  padding-right: 32px;
  background: var(--cb-input-background, #1D1E2B);
}
._cb-mermaid-error__message_1ew2c_52 {
  margin: 0;
  padding: 0;
  background: transparent !important;
  border-radius: 0;
  color: var(--cb-text-error, #e74856);
  font-family: var(--cb-font-family-mono, "Menlo", "Monaco", "Courier New", monospace);
  font-size: 11px;
  line-height: 16px;
  white-space: pre-wrap;
  word-break: break-word;
  overflow-x: auto;
  text-align: left;
}
._cb-mermaid-error__copy-btn_1ew2c_74 {
  position: absolute;
  top: 4px;
  right: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  border: none;
  background: transparent;
  color: inherit;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
._cb-mermaid-error__copy-btn_1ew2c_74:hover {
  opacity: 0.8;
}
._cb-mermaid-error__copy-btn_1ew2c_74 svg {
  width: 14px;
  height: 14px;
}
._cb-mermaid-error_1ew2c_32 svg {
  width: 14px;
  height: 14px;
}

._mermaid-toggle_1ew2c_100 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px;
  border-radius: 4px;
  background: var(--cb-bg-secondary, var(--vscode-input-background, #3c3c3c));
}

._mermaid-toggle-btn_1ew2c_109 {
  padding: 2px 8px;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground, #858699));
  font-size: 12px;
  line-height: 18px;
  cursor: pointer;
  transition: all 0.2s ease;
}
._mermaid-toggle-btn_1ew2c_109:hover:not(:disabled):not(._active_1ew2c_120) {
  color: var(--cb-text-primary, var(--vscode-foreground, #d2d3e0));
}
._mermaid-toggle-btn_1ew2c_109._active_1ew2c_120 {
  background: var(--cb-vscode-toolbar-hoverBackground, var(--vscode-toolbar-hoverBackground, #353535));
  color: var(--cb-text-primary, var(--vscode-foreground, #d2d3e0));
}
._mermaid-toggle-btn_1ew2c_109:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

._mermaid-actions_1ew2c_132 {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 20px;
  font-size: 13px;
}
._mermaid-actions_1ew2c_132 ._action_1ew2c_139 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding-inline: 4px;
  border-radius: 4px;
  height: 24px;
  line-height: 22px;
  font-size: 13px;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.2s ease;
  opacity: 0.7;
}
._mermaid-actions_1ew2c_132 ._action_1ew2c_139:hover {
  opacity: 1;
}
._mermaid-actions_1ew2c_132 ._action_1ew2c_139 svg {
  width: 16px;
  height: 16px;
}
._mermaid-actions_1ew2c_132 ._label_1ew2c_160 {
  font-size: 12px;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu_1ew2c_163 {
  position: relative;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-trigger_1ew2c_166 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding-inline: 4px;
  border-radius: 4px;
  height: 24px;
  line-height: 22px;
  font-size: 13px;
  white-space: nowrap;
  cursor: pointer;
  transition: opacity 0.2s ease;
  opacity: 0.7;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-trigger_1ew2c_166:hover {
  opacity: 1;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-trigger_1ew2c_166 svg {
  width: 16px;
  height: 16px;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-list_1ew2c_187 {
  position: absolute;
  top: 100%;
  right: 0;
  margin: 2px 0 0 0 !important;
  padding: 4px !important;
  list-style: none !important;
  display: flex;
  flex-direction: column;
  gap: 2px;
  background: var(--cb-vscode-dropdown-background, var(--cb-bg-secondary, #f5f5f5));
  border: 1px solid var(--cb-border, #e1e4e8);
  border-radius: 6px;
  font-size: 12px;
  line-height: 18px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  z-index: 10;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-list_1ew2c_187::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  right: 0;
  height: 2px;
  background: transparent;
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-item_1ew2c_214 {
  margin: 0 !important;
  list-style: none !important;
  padding: 6px 12px;
  border-radius: 4px;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.2s ease;
  color: var(--cb-text-primary, #333);
}
._mermaid-actions_1ew2c_132 ._mermaid-menu-item_1ew2c_214:hover {
  background: var(--cb-vscode-list-hoverBackground, var(--cb-bg-hover, rgba(0, 0, 0, 0.1)));
}._assistantFeedback_u83br_1 {
  margin: 0;
  padding-top: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
  visibility: visible;
}._messageActions_jnle9_1 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

._actionButton_jnle9_7 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0 6px;
  height: 24px;
  border: none;
  border-radius: 8px;
  background: transparent;
  color: var(--cb-text-secondary, #858699);
  cursor: pointer;
  transition: background-color 0.15s ease;
}
._actionButton_jnle9_7:hover {
  background: var(--cb-bg-primary-hover, #EBEBEB);
}
._actionButton_jnle9_7:focus, ._actionButton_jnle9_7:focus-visible {
  outline: none;
}

._actionButton_jnle9_7._iconOnly_jnle9_27 {
  width: 24px;
  padding: 0;
  justify-content: center;
}

._actionIconWrapper_jnle9_33 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}
._actionIconWrapper_jnle9_33 > svg {
  width: 16px;
  height: 16px;
}

._actionIcon_jnle9_33 {
  width: 16px;
  height: 16px;
  object-fit: contain;
}

._actionIconText_jnle9_51 {
  font-size: 12px;
}

._actionLabel_jnle9_55 {
  white-space: nowrap;
  font-size: 13px;
  color: inherit;
}._message_time_tip_14s9t_1 {
  width: max-content;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.7));
  font-family: "PingFang SC";
  font-size: 14px;
  font-weight: 400;
  font-style: normal;
  text-decoration-line: none;
  line-height: 24px;
  white-space: nowrap;
  opacity: 0;
}._copyButton_1ncbp_1 {
  width: 24px;
  height: 24px;
  padding: 0;
  cursor: pointer;
  font-size: 0;
  border-radius: 8px;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-secondary, #858699);
  transition: background-color 0.15s ease;
}
._copyButton_1ncbp_1:hover {
  background: var(--cb-bg-primary-hover, #EBEBEB);
}
._copyButton_1ncbp_1:focus, ._copyButton_1ncbp_1:focus-visible {
  outline: none;
}

._icon_1ncbp_23 {
  width: 16px;
  height: 16px;
}._moreMenu_1mfnc_1 {
  position: relative;
  display: inline-block;
}

._moreButton_1mfnc_6 {
  width: 24px;
  height: 24px;
  padding: 0;
  cursor: pointer;
  font-size: 0;
  border-radius: 8px;
  border: none;
  outline: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-secondary, #858699);
  line-height: 0;
  transition: background-color 0.15s ease;
}
._moreButton_1mfnc_6:hover {
  background: var(--cb-bg-primary-hover, #EBEBEB);
}
._moreButton_1mfnc_6:focus, ._moreButton_1mfnc_6:focus-visible {
  outline: none;
}

._icon_1mfnc_30 {
  width: 16px;
  height: 16px;
  display: block;
}

._dropdown_1mfnc_36 {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  min-width: 160px;
  background: var(--cb-dropdown-bg-color);
  border: 1px solid var(--cb-input-border-color, #313248);
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
  padding: 4px 0;
  z-index: 100;
}

._dropdownItem_1mfnc_50 {
  display: block;
  width: 100%;
  padding: 8px 16px;
  border: none;
  background: transparent;
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 13px;
  text-align: left;
  cursor: pointer;
  transition: background 0.2s ease;
}
._dropdownItem_1mfnc_50:hover {
  background: var(--cb-dropdown-item-hover-bg-color);
}
._dropdownItem_1mfnc_50._danger_1mfnc_65 {
  color: var(--cb-danger-color, #d32f2f);
}
/**
 * 确认对话框样式
 *
 * 引入统一的变量系统（变量已在 variables 中定义）
 */
._dialogOverlay_1icaw_7 {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  z-index: var(--cb-z-index-modal-confirm, 100001);
  width: 100vw;
  padding: 0 24px;
}
._dialogOverlay_1icaw_7[data-theme=light] {
  background: rgba(0, 0, 0, 0.3);
}
._dialogOverlay_1icaw_7[data-theme=light] ._dialogContainer_1icaw_21 {
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.18);
}
._dialogOverlay_1icaw_7[data-appearance=workbuddy] {
  background: var(--cb-dialog-mask, rgba(0, 0, 0, 0.6)) !important;
}

._dialogContainer_1icaw_21 {
  position: relative;
  flex-grow: 1;
  max-width: 400px;
  padding: 18px;
  border-radius: 12px;
  border: 1px solid color-mix(in srgb, var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248)) 72%, transparent);
  background-color: var(--cb-vscode-editor-background, var(--vscode-editor-background, #1e1e1e));
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.35);
  width: 100%;
}

._dialogClose_1icaw_40 {
  position: absolute;
  top: 12px;
  right: 12px;
  min-width: 24px;
  min-height: 24px;
}

._dialogHeader_1icaw_48 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  margin-right: 32px;
  line-height: 22px;
  font-size: 16px;
  font-weight: 650;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
}

._dialogContent_1icaw_60 {
  margin-bottom: 20px;
  line-height: 18px;
  font-size: 12px;
  font-weight: 400;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}

._dialogDetailContent_1icaw_68 {
  margin-bottom: 16px;
  padding: 12px;
  border-radius: 8px;
  background-color: color-mix(in srgb, var(--cb-vscode-editor-background, var(--vscode-editor-background, #1e1e1e)) 92%, #64748b 8%);
  border: 0;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
  max-height: 180px;
  overflow-y: auto;
}
._dialogDetailContent_1icaw_68::-webkit-scrollbar {
  width: 6px;
}
._dialogDetailContent_1icaw_68::-webkit-scrollbar-track {
  background: transparent;
}
._dialogDetailContent_1icaw_68::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background, rgba(255, 255, 255, 0.2));
  border-radius: 3px;
}
._dialogDetailContent_1icaw_68::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground, rgba(255, 255, 255, 0.3));
}

._dialogFooter_1icaw_92 {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}

._dialogFooterAlignStart_1icaw_99 {
  justify-content: flex-start;
}

._dialogFooterAlignCenter_1icaw_103 {
  justify-content: center;
}

._footerLeftSlot_1icaw_107 {
  flex: 1;
  min-width: 0;
}

._footerButtons_1icaw_112 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-shrink: 0;
}
._footerButtons_1icaw_112 .cb-button {
  height: 32px;
  min-width: 68px;
  padding: 0 14px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}

._cancelButtonStatic_1icaw_129, ._cancelButtonStatic_1icaw_129:hover:not(:disabled), ._cancelButtonStatic_1icaw_129:focus-visible:not(:disabled), ._cancelButtonStatic_1icaw_129:active:not(:disabled) {
  background-color: var(--cb-input-button-background, #313248);
  color: var(--cb-input-button-foreground, #d2d3e0);
  filter: none;
  transform: none;
}

._footerButtonsAlignStart_1icaw_136 {
  justify-content: flex-start;
}

._footerButtonsAlignCenter_1icaw_140 {
  justify-content: center;
}

._dontAskAgain_1icaw_144 {
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  user-select: none;
  flex-shrink: 0;
}

._checkbox_1icaw_153 {
  width: 14px;
  height: 14px;
  margin: 0;
  cursor: pointer;
  accent-color: var(--cb-vscode-button-background, var(--vscode-button-background, #4a9eff));
}

._checkboxLabel_1icaw_161 {
  font-size: 12px;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}

/**
 * WorkBuddy 设计稿（ardot 14256:79 / 14263:699）二次确认弹窗规格。
 */
._dialogContainerWorkbuddy_1icaw_169 {
  flex-grow: 0;
  max-width: 480px;
  padding: 24px;
  border-radius: 24px;
  border: 0.5px solid var(--cb-popover-border, #e5e5e5);
  background-color: var(--cb-dropdown-bg-color, #ffffff);
  box-shadow: var(--cb-shadow-popover, 0 6px 12px -4px rgba(0, 0, 0, 0.04), 0 8px 48px -4px rgba(0, 0, 0, 0.08));
}
._dialogContainerWorkbuddy_1icaw_169 ._dialogHeader_1icaw_48 {
  margin-right: 0;
  margin-bottom: 8px;
  font-weight: 600;
  color: var(--cb-text-primary);
}
._dialogContainerWorkbuddy_1icaw_169 ._dialogContent_1icaw_60 {
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 22px;
  font-weight: 400;
  color: var(--cb-text-secondary);
}
._dialogContainerWorkbuddy_1icaw_169 ._dialogFooter_1icaw_92 {
  gap: 12px;
}
._dialogContainerWorkbuddy_1icaw_169 ._footerButtons_1icaw_112 {
  gap: 12px;
}
._dialogContainerWorkbuddy_1icaw_169 ._footerButtons_1icaw_112 .cb-button {
  height: 32px;
  min-width: 0;
  padding: 0 12px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
}
._dialogContainerWorkbuddy_1icaw_169 ._footerButtons_1icaw_112 .cb-button:disabled {
  opacity: 1;
}
._dialogContainerWorkbuddy_1icaw_169 ._cancelButtonStatic_1icaw_129, ._dialogContainerWorkbuddy_1icaw_169 ._cancelButtonStatic_1icaw_129:hover:not(:disabled), ._dialogContainerWorkbuddy_1icaw_169 ._cancelButtonStatic_1icaw_129:focus-visible:not(:disabled), ._dialogContainerWorkbuddy_1icaw_169 ._cancelButtonStatic_1icaw_129:active:not(:disabled) {
  background-color: var(--cb-button-grey-bg, #ebebeb);
  color: var(--cb-button-grey-fg, rgba(0, 0, 0, 0.9));
}
._dropdownRoot_1h1nv_2 {
  position: relative;
}

._trigger_1h1nv_6 {
  cursor: pointer;
  display: inline-flex;
  outline: none;
}
._trigger_1h1nv_6:focus, ._trigger_1h1nv_6:focus-visible {
  outline: none;
}

._menu_1h1nv_15 {
  position: absolute;
  z-index: 1000;
  border: 0.5px solid var(--cb-dropdown-border-color, #EBEBEB);
  border-radius: 16px;
  background-color: var(--cb-dropdown-bg-color);
  /* 宽度自适应内容，避免在 position: fixed 下宽度塌陷 */
  width: max-content;
  min-width: fit-content;
  /* shadow/Popup */
  box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.04), 0px 3px 6px 0px rgba(0, 0, 0, 0.04);
}

._viewport_1h1nv_28 {
  padding: 6px;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

._item_1h1nv_36 {
  display: block;
  width: 100%;
  box-sizing: border-box;
  text-align: left;
  border: none;
  outline: none;
  background: transparent;
  /* 使用统一前景色，保证 dark 模式下的对比度 */
  color: var(--cb-text-primary, #ffffff);
  font-size: 12px;
  line-height: 22px;
  padding: 5px 8px;
  border-radius: 8px;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.2s ease;
}
._item_1h1nv_36:hover {
  color: var(--cb-text-primary, #ffffff);
  background-color: var(--cb-dropdown-item-hover-bg-color);
}
._item_1h1nv_36:focus, ._item_1h1nv_36:focus-visible {
  outline: none;
  background-color: var(--cb-dropdown-item-hover-bg-color);
}

._disabled_1h1nv_63 {
  opacity: 0.5;
  cursor: not-allowed;
}

._separator_1h1nv_68 {
  height: 1px;
  background-color: var(--cb-input-border-color, #313248);
  margin: 4px 0;
}._toast_3ho3q_1 {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  padding: 6px 8px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 100010;
  animation: _slideIn_3ho3q_1 0.3s;
  background: var(--cb-dropdown-bg-color);
  border: 1px solid var(--cb-input-border-color, #313248);
  color: var(--cb-text-primary, #ffffff);
  font-size: 12px;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
  transition: top 0.25s ease;
  -webkit-app-region: no-drag;
}

._toastContent_3ho3q_21 {
  display: flex;
  align-items: center;
}

._toastIcon_3ho3q_26 {
  font-size: 16px;
  min-width: 16px;
  width: 16px;
  height: 16px;
  color: var(--cb-toast-success-color, #40C8AE);
}
._toastIcon_3ho3q_26._info_3ho3q_33 {
  color: var(--cb-toast-info-color, #3B82F6);
}
._toastIcon_3ho3q_26._warning_3ho3q_36 {
  color: var(--cb-toast-warning-color, #F59E0B);
}
._toastIcon_3ho3q_26._error_3ho3q_39 {
  color: var(--cb-toast-error-color, #FF5263);
}

._toastMessage_3ho3q_43 {
  margin-left: 4px;
}

._toastAction_3ho3q_47 {
  margin-left: 4px;
  padding: 0;
  cursor: pointer;
  background: none;
  border: none;
  color: var(--cb-toast-success-color, #40C8AE);
  font-size: 12px;
  font-family: inherit;
  white-space: nowrap;
  flex-shrink: 0;
  font-weight: 600;
  text-decoration: none;
  transition: opacity 0.15s ease;
}
._toastAction_3ho3q_47:hover {
  opacity: 0.8;
}
._toastAction_3ho3q_47:active {
  opacity: 0.6;
}

._toastClose_3ho3q_69 {
  margin-left: 10px;
  cursor: pointer;
  color: var(--cb-text-primary, #ffffff);
  opacity: 0.7;
}
._toastClose_3ho3q_69:hover {
  opacity: 1;
}

._toast_3ho3q_1._leaving_3ho3q_79 {
  opacity: 0;
  transition: opacity 0.3s ease-in;
}

@keyframes _slideIn_3ho3q_1 {
  from {
    opacity: 0;
    transform: translate(-50%, -20px);
  }
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}._ratingBar_13zum_1 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

._ratingButton_13zum_7 {
  width: 24px;
  height: 24px;
  padding: 0;
  cursor: pointer;
  font-size: 0;
  border-radius: 8px;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-secondary, #858699);
  transition: background-color 0.15s ease;
}
._ratingButton_13zum_7:hover {
  background: var(--cb-bg-primary-hover, #EBEBEB);
}
._ratingButton_13zum_7:focus, ._ratingButton_13zum_7:focus-visible {
  outline: none;
}

._icon_13zum_29 {
  width: 16px;
  height: 16px;
}._feedbackBox_9r9tl_1 {
  position: fixed;
  padding: 12px;
  border-radius: 8px;
  box-sizing: content-box;
  border: 1px solid var(--cb-input-border-color, #313248);
  background-color: var(--cb-dropdown-bg-color);
  color: var(--cb-text-primary, #ffffff);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  z-index: 1000;
}
@media (max-width: 420px) {
  ._feedbackBox_9r9tl_1 {
    width: 225px;
  }
}
@media (min-width: 420px) {
  ._feedbackBox_9r9tl_1 {
    width: 340px;
  }
}

._feedbackHeader_9r9tl_23 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  font-size: 14px;
  line-height: 20px;
}

._feedbackTitle_9r9tl_32 {
  color: var(--cb-text-primary, #ffffff);
  font-weight: 500;
}

._closeButton_9r9tl_37 {
  background: transparent;
  border: none;
  color: var(--cb-text-primary, #ffffff);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}
._closeButton_9r9tl_37:hover {
  opacity: 1;
}

._feedbackContent_9r9tl_57 {
  padding: 0;
}

._otherInputWrapper_9r9tl_61 {
  position: relative;
  margin-top: 12px;
}

._otherInput_9r9tl_61 {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 12px;
  border-radius: 5px;
  border: 1px solid var(--cb-input-border-color, #313248);
  background: transparent;
  color: var(--cb-text-primary, #ffffff);
  font-size: 13px;
  line-height: 1.5;
  resize: vertical;
  min-height: 64px;
  font-family: inherit;
  outline: none;
  transition: border-color 0.2s ease;
}
._otherInput_9r9tl_61::placeholder {
  color: var(--cb-text-tertiary, var(--cb-text-secondary, #858699));
}
._otherInput_9r9tl_61:focus {
  border-color: var(--cb-vscode-focusBorder, var(--vscode-focusBorder, #007fd4));
}

._otherInputCounter_9r9tl_89 {
  margin-top: 4px;
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-text-tertiary, var(--cb-text-secondary, #858699));
  text-align: right;
}

._feedbackItemBox_9r9tl_97 {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

._feedbackItem_9r9tl_97 {
  cursor: pointer;
  padding: 4px 12px;
  min-width: 108px;
  max-width: 48%;
  text-align: center;
  border-radius: 5px;
  border: 1px solid var(--cb-input-border-color, #313248);
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--cb-text-primary, #ffffff);
  font-size: 13px;
  flex: none;
  background: transparent;
  transition: all 0.2s ease;
}
._feedbackItem_9r9tl_97:hover {
  background: var(--cb-dropdown-item-hover-bg-color);
}
._feedbackItem_9r9tl_97._active_9r9tl_128 {
  color: var(--cb-text-secondary, #858699);
  background: var(--cb-feedback-item-active-bg, rgba(255, 255, 255, 0.1));
  border-color: var(--cb-input-border-color, #4a4b5f);
}

._feedbackFooter_9r9tl_134 {
  margin-top: 16px;
  display: flex;
  justify-content: center;
}

._submitButton_9r9tl_140 {
  width: 100%;
  padding: 8px 16px;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  border: none;
  background: var(--cb-vscode-button-background, var(--vscode-button-background, #0e639c));
  color: var(--cb-vscode-button-foreground, var(--vscode-button-foreground, #ffffff));
  font-weight: 500;
  transition: background 0.2s ease;
}
._submitButton_9r9tl_140:hover:not(:disabled) {
  background: var(--cb-vscode-button-hoverBackground, var(--vscode-button-hoverBackground, #1177bb));
}
._submitButton_9r9tl_140:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}._shareButton_r4qq4_1 {
  width: 24px;
  height: 24px;
  padding: 0;
  cursor: pointer;
  font-size: 0;
  border-radius: 8px;
  border: none;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-secondary, #858699);
  transition: background-color 0.15s ease;
}
._shareButton_r4qq4_1:hover {
  background: var(--cb-bg-primary-hover, #EBEBEB);
}
._shareButton_r4qq4_1:focus, ._shareButton_r4qq4_1:focus-visible {
  outline: none;
}

._icon_r4qq4_23 {
  width: 16px;
  height: 16px;
}
/**
 * Widget Renderer 样式
 *
 * 使用 cb 主题 token，提供容器、iframe、工具栏、代码区、loading 样式
 */
/* ===========================================================
 * 外层包装盒：固定显示 WidgetRenderer header + Widget 内容
 * =========================================================== */
._widgetRendererWrapper_jx8zx_10 {
  border: 1px solid var(--cb-stroke-secondary, #454545);
  border-radius: 10px;
  overflow: hidden;
  margin: 8px 0;
  border-radius: 16px;
}

._widgetRendererWrapperHeader_jx8zx_18 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 8px 6px 16px;
  border-bottom: 1px solid var(--cb-stroke-secondary, #454545);
  background: var(--cb-colleague-card-chat-bg, #F7F7F7);
  flex-shrink: 0;
  gap: 24px;
}

._widgetRendererWrapperTitle_jx8zx_29 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  color: var(--cb-text-primary, #d2d3e0);
}

._widgetRendererWrapperIcon_jx8zx_37 {
  display: flex;
  align-items: center;
  justify-content: center;
}
._widgetRendererWrapperIcon_jx8zx_37 svg {
  fill: currentColor;
}

._widgetContainer_jx8zx_46 {
  position: relative;
  border: none;
  border-radius: 0;
  background: var(--cb-panel-bg-primary, #FFFFFF);
  overflow: hidden;
  min-height: 360px;
  padding: 12px 16px;
  max-height: 80vh;
}

/* 卡片头部 */
._widgetHeader_jx8zx_58 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  border-bottom: 1px solid var(--cb-stroke-secondary, #454545);
  background: var(--cb-bg-secondary, rgba(255, 255, 255, 0.05));
}

._headerLeft_jx8zx_67 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}

._widgetIcon_jx8zx_75 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  color: var(--cb-text-secondary, #858699);
  flex-shrink: 0;
}
._widgetIcon_jx8zx_75 svg {
  width: 14px;
  height: 14px;
}

._toolName_jx8zx_89 {
  font-size: 12px;
  font-weight: 500;
  color: var(--cb-text-primary, #d2d3e0);
  white-space: nowrap;
}

._widgetTitle_jx8zx_96 {
  font-size: 12px;
  font-weight: 500;
  color: var(--cb-text-primary, #d2d3e0);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._headerRight_jx8zx_105 {
  position: relative;
  flex-shrink: 0;
}

/* 下拉菜单触发器 */
._menuTrigger_jx8zx_111 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid var(--cb-stroke-tertiary, #333);
  border-radius: 4px;
  background: transparent;
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  cursor: pointer;
  transition: all 0.15s ease;
}
._menuTrigger_jx8zx_111:hover {
  background: var(--cb-bg-tertiary, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-primary, #d2d3e0);
  border-color: var(--cb-stroke-secondary, #454545);
}
._menuTrigger_jx8zx_111:focus {
  outline: none;
  box-shadow: 0 0 0 2px var(--cb-focus-outline-color, rgba(100, 150, 255, 0.3));
}
._menuTrigger_jx8zx_111 svg {
  width: 12px;
  height: 12px;
}

/* 下拉菜单 */
._dropdownMenu_jx8zx_139 {
  position: absolute;
  top: calc(100% + 4px);
  right: 0;
  min-width: 160px;
  padding: 4px 0;
  border-radius: 6px;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border: 1px solid var(--cb-stroke-secondary, #454545);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 100;
}

._menuItemWrapper_jx8zx_152 {
  display: flex;
  width: 100%;
}

._menuItem_jx8zx_152 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 8px 12px;
  border: none;
  background: transparent;
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 12px;
  text-align: left;
  cursor: pointer;
  transition: background 0.1s ease;
}
._menuItem_jx8zx_152:hover {
  background: var(--cb-bg-secondary, rgba(255, 255, 255, 0.1));
}
._menuItem_jx8zx_152:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
._menuItem_jx8zx_152:disabled:hover {
  background: transparent;
}
._menuItem_jx8zx_152 svg {
  width: 14px;
  height: 14px;
  color: var(--cb-text-secondary, #858699);
  flex-shrink: 0;
}

/* iframe 样式 */
._widgetFrame_jx8zx_189 {
  width: 100%;
  border: 0;
  display: block;
  overflow: hidden;
  background: transparent;
  min-height: 320px;
  max-height: calc(80vh - 40px);
}

._widgetFrame_jx8zx_189:focus {
  outline: none;
}

._widgetFrameHidden_jx8zx_203 {
  display: none;
}

/* 代码查看区域 */
._widgetCodeView_jx8zx_208 {
  font-family: var(--cb-font-mono, "SF Mono", Monaco, "Cascadia Code", monospace);
  font-size: 12px;
  line-height: 1.5;
  max-height: 320px;
  overflow-y: auto;
  padding: 12px;
  background: var(--cb-bg-secondary, rgba(255, 255, 255, 0.05));
  white-space: pre-wrap;
  word-break: break-all;
  color: var(--cb-text-primary, #d2d3e0);
  border-top: 1px solid var(--cb-stroke-secondary, #454545);
  /* 自定义滚动条 */
}
._widgetCodeView_jx8zx_208::-webkit-scrollbar {
  width: 6px;
}
._widgetCodeView_jx8zx_208::-webkit-scrollbar-track {
  background: transparent;
}
._widgetCodeView_jx8zx_208::-webkit-scrollbar-thumb {
  background: var(--cb-stroke-secondary, #454545);
  border-radius: 3px;
}
._widgetCodeView_jx8zx_208::-webkit-scrollbar-thumb:hover {
  background: var(--cb-border-bright, #666);
}

/* Loading 覆盖层 - 骨架屏 shimmer 动画 */
._loadingOverlay_jx8zx_237 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
  border-radius: 10px;
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _widgetShimmer_jx8zx_1 1.5s infinite;
}

/* 骨架屏 shimmer 动画 */
@keyframes _widgetShimmer_jx8zx_1 {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
._widgetLoading_jx8zx_263 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  z-index: 1;
}

._loadingText_jx8zx_271 {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  background: var(--cb-panel-bg-primary, rgba(30, 30, 30, 0.9));
  padding: 6px 12px;
  border-radius: 4px;
}

/* 错误状态容器 */
._errorContainer_jx8zx_280 {
  padding: 12px;
  background: var(--cb-error-bg, rgba(239, 68, 68, 0.1));
  border-top: 1px solid var(--cb-error-border, rgba(239, 68, 68, 0.3));
}

._errorHeader_jx8zx_286 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
._errorHeader_jx8zx_286 svg {
  width: 16px;
  height: 16px;
  color: var(--cb-error-foreground, #ef4444);
  flex-shrink: 0;
}

._errorPhase_jx8zx_299 {
  font-size: 11px;
  font-weight: 500;
  color: var(--cb-error-foreground, #ef4444);
  text-transform: uppercase;
}

._errorMessage_jx8zx_306 {
  font-size: 12px;
  color: var(--cb-text-primary, #d2d3e0);
}

._errorDetail_jx8zx_311 {
  margin-bottom: 8px;
  padding: 8px;
  border-radius: 4px;
  background: var(--cb-bg-secondary, rgba(0, 0, 0, 0.2));
  max-height: 120px;
  overflow-y: auto;
}
._errorDetail_jx8zx_311 pre {
  margin: 0;
  font-family: var(--cb-font-mono, "SF Mono", Monaco, "Cascadia Code", monospace);
  font-size: 11px;
  line-height: 1.4;
  color: var(--cb-text-secondary, #858699);
  white-space: pre-wrap;
  word-break: break-all;
}

._copyErrorButton_jx8zx_329 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: 1px solid var(--cb-stroke-tertiary, #333);
  border-radius: 4px;
  background: transparent;
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  cursor: pointer;
  transition: all 0.15s ease;
}
._copyErrorButton_jx8zx_329:hover {
  background: var(--cb-bg-tertiary, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-primary, #d2d3e0);
}
._copyErrorButton_jx8zx_329 svg {
  width: 12px;
  height: 12px;
}

/* 旧版兼容样式（保留以防其他组件使用） */
._widgetToolbar_jx8zx_352 {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 4px;
  opacity: 0;
  transition: opacity 0.15s ease;
}

._widgetContainer_jx8zx_46:hover ._widgetToolbar_jx8zx_352 {
  opacity: 1;
}

._toolbarButton_jx8zx_368 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  border-radius: 4px;
  background: var(--cb-bg-secondary, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-secondary, #858699);
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}
._toolbarButton_jx8zx_368:hover {
  background: var(--cb-bg-tertiary, rgba(255, 255, 255, 0.15));
  color: var(--cb-text-primary, #d2d3e0);
}
._toolbarButton_jx8zx_368:focus {
  outline: none;
  box-shadow: 0 0 0 2px var(--cb-focus-outline-color, rgba(100, 150, 255, 0.3));
}
._toolbarButton_jx8zx_368 svg {
  width: 14px;
  height: 14px;
}

._toggleCodeButton_jx8zx_395 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border: none;
  border-radius: 4px;
  background: var(--cb-bg-secondary, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  cursor: pointer;
  transition: background 0.15s ease, color 0.15s ease;
}
._toggleCodeButton_jx8zx_395:hover {
  background: var(--cb-bg-tertiary, rgba(255, 255, 255, 0.15));
  color: var(--cb-text-primary, #d2d3e0);
}
._toggleCodeButton_jx8zx_395 svg {
  width: 12px;
  height: 12px;
}

._moreMenu_jx8zx_417 {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  min-width: 140px;
  padding: 4px 0;
  border-radius: 6px;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border: 1px solid var(--cb-stroke-secondary, #454545);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 100;
}

/* 旧版 loading 点样式（保留兼容） */
._loadingDot_jx8zx_432 {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--cb-text-tertiary, #666);
  animation: _loadingPulse_jx8zx_1 1.4s ease-in-out infinite;
}
._loadingDot_jx8zx_432:nth-child(2) {
  animation-delay: 0.2s;
}
._loadingDot_jx8zx_432:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes _loadingPulse_jx8zx_1 {
  0%, 80%, 100% {
    opacity: 0.3;
    transform: scale(0.8);
  }
  40% {
    opacity: 1;
    transform: scale(1);
  }
}
/* 错误状态（旧版兼容） */
._widgetError_jx8zx_458 {
  padding: 16px;
  color: var(--cb-error-foreground, #ef4444);
  font-size: 12px;
  text-align: center;
}

._widgetContainer_jx8zx_46._chromeless_jx8zx_465 {
  border: none;
  border-radius: 0;
  min-height: 0;
  max-height: none;
  overflow: visible;
}
._widgetContainer_jx8zx_46._chromeless_jx8zx_465 ._widgetFrame_jx8zx_189 {
  min-height: 0;
  max-height: none;
  background: transparent;
}

._floatingActions_jx8zx_478 {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 10;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease;
}

._widgetContainer_jx8zx_46:hover ._floatingActions_jx8zx_478,
._widgetContainer_jx8zx_46:focus-within ._floatingActions_jx8zx_478 {
  opacity: 1;
  pointer-events: auto;
}

._floatingActionsVisible_jx8zx_494 {
  opacity: 1 !important;
  pointer-events: auto !important;
}

._floatingActionsButton_jx8zx_499 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  border-radius: 4px;
  background: transparent;
  color: var(--cb-text-tertiary, #666);
  cursor: pointer;
  transition: background 0.12s ease, color 0.12s ease;
}
._floatingActionsButton_jx8zx_499:hover, ._floatingActionsButton_jx8zx_499:focus-visible {
  background: var(--cb-bg-tertiary, rgba(255, 255, 255, 0.06));
  color: var(--cb-text-secondary, #858699);
}
._floatingActionsButton_jx8zx_499:focus {
  outline: none;
}
._floatingActionsButton_jx8zx_499 svg {
  width: 16px;
  height: 16px;
}

/* ============================================================
 * iframe bootstrap pending - first-byte 已到、iframe 还没 widget:ready 时的极简占位
 *
 * 出现条件由 shouldRenderBootstrapPending 决定：iframe 已挂载 + widgetCode 已到 + isReady=false。
 *
 * 视觉语言对齐 InlineLoadingLine（pre-first-byte 占位）：靠左 / 单行 / 斜体灰色 / 14x14 spinner +
 * 文字。不居中、不撑满 iframe 区域，避免"加载卡片"的视觉重量级感觉。
 *
 * 布局采用绝对定位贴在 iframe 区域顶部，避免占据 iframe 默认 360px 高度的中间，
 * 减弱"卡片中央 loading"的硬切换感。pointer-events:none 让 iframe 自身不被遮挡。
 * iframe 一旦 ready，组件自动卸载这一节点；不影响 iframe 后续 widget:resize 推断高度。
 *
 * Fade-in 延迟 250ms：iframe bootstrap 通常在 100~200ms 内就 ready，这种快路径下用户
 * 完全看不到占位条。仅当 bootstrap 慢（主线程繁忙 / Trusted Types 冷启动）才显示，
 * 避免"快闪烁一下"的刺眼感。
 * =========================================================== */
._widgetBootstrapPending_jx8zx_541 {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  animation: _widgetBootstrapPendingFadeIn_jx8zx_1 0.2s ease-out 0.25s forwards;
}

._widgetBootstrapPendingSpinner_jx8zx_555 {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 1.5px solid var(--cb-stroke-secondary, rgba(255, 255, 255, 0.25));
  border-top-color: var(--cb-text-secondary, #858699);
  animation: _widgetBootstrapPendingSpin_jx8zx_555 0.8s linear infinite;
}

._widgetBootstrapPendingText_jx8zx_564 {
  font-size: 13px;
  line-height: 1;
  color: var(--cb-text-secondary, #858699);
  font-style: italic;
}

@keyframes _widgetBootstrapPendingSpin_jx8zx_555 {
  to {
    transform: rotate(360deg);
  }
}
@keyframes _widgetBootstrapPendingFadeIn_jx8zx_1 {
  to {
    opacity: 1;
  }
}.avatar-container {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-bottom: 12px;
  gap: 8px;
}
.avatar-container .avatar-row-main {
  display: flex;
  align-items: center;
  gap: 10px;
}
.avatar-container .face {
  display: flex;
  position: relative;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  overflow: hidden;
}
.avatar-container .avatar-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.avatar-container .name {
  font-family: "Montserrat", var(--cb-font-family, sans-serif);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.75;
}
.avatar-container .name-suffix {
  display: flex;
  align-items: center;
  min-width: 0;
}
.avatar-container .version {
  opacity: 0.15;
}
.avatar-container .copilot-avatar-icon {
  width: 16px;
  height: 16px;
  display: none;
}
.avatar-container.avatar-collapsible .avatar-fold-line {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: max-content;
  cursor: pointer;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  outline: none;
}
.avatar-container.avatar-collapsible .avatar-fold-line:focus-visible {
  outline: 1px solid var(--cb-text-primary, #d2d3e0);
  outline-offset: 2px;
  border-radius: 2px;
}
.avatar-container.avatar-collapsible .avatar-fold-line:hover, .avatar-container.avatar-collapsible .avatar-fold-line:hover .avatar-fold-status, .avatar-container.avatar-collapsible .avatar-fold-line:hover .avatar-fold-arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.avatar-container.avatar-collapsible .avatar-fold-status {
  flex-shrink: 0;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 14px;
  line-height: 1.75;
}
.avatar-container.avatar-collapsible .avatar-fold-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  transition: transform 0.16s ease, color 0.16s ease;
  transform: rotate(-90deg);
}
.avatar-container.avatar-collapsible.avatar-expanded .avatar-fold-arrow {
  transform: rotate(0deg);
}.cb-checkpoint-actions {
  display: flex;
  gap: 8px;
  margin: 0;
  padding-top: 8px;
  position: relative;
  z-index: 989;
}
.cb-checkpoint-actions .cb-checkpoint-button {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  background-color: var(--cb-button-secondary-background);
  color: var(--cb-text-primary, #d2d3e0);
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 12px;
  transition: background-color 0.2s;
}
.cb-checkpoint-actions .cb-checkpoint-button:hover:not(:disabled) {
  background-color: var(--cb-button-secondary-hover-background);
}
.cb-checkpoint-actions .cb-checkpoint-button:focus {
  outline: none;
}
.cb-checkpoint-actions .cb-checkpoint-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-checkpoint-actions .cb-checkpoint-button .cb-checkpoint-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.cb-checkpoint-actions .cb-checkpoint-button span {
  white-space: nowrap;
}._continueWrapper_i5bhk_1 {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 10px 0;
}

._continueCard_i5bhk_8 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px;
  border-radius: 8px;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
  border: 1px solid var(--cb-stroke-secondary, #454545);
}

._title_i5bhk_18 {
  font-size: 13px;
  font-weight: 600;
  color: var(--cb-text-primary, #d2d3e0);
  line-height: 18px;
}

._content_i5bhk_25 {
  font-size: 13px;
  color: var(--cb-text-secondary, #999);
  line-height: 18px;
}

._actions_i5bhk_31 {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

._cancelBtn_i5bhk_37,
._continueBtn_i5bhk_38 {
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  border: none;
  outline: none;
}
._cancelBtn_i5bhk_37:focus-visible,
._continueBtn_i5bhk_38:focus-visible {
  outline: 2px solid var(--cb-vscode-button-background, #0e639c);
  outline-offset: 1px;
}

._cancelBtn_i5bhk_37 {
  background-color: var(--cb-button-secondary-background, #4C4F6B);
  color: var(--cb-button-secondary-foreground, #ffffff);
}
._cancelBtn_i5bhk_37:hover {
  background-color: var(--cb-button-secondary-hover-background, #606060);
}
._cancelBtn_i5bhk_37:active {
  opacity: 0.9;
}

._continueBtn_i5bhk_38 {
  background-color: var(--cb-vscode-button-background, #0e639c);
  color: var(--cb-vscode-button-foreground, #ffffff);
}
._continueBtn_i5bhk_38:hover {
  background-color: var(--cb-vscode-button-hoverBackground, #1177bb);
}
._continueBtn_i5bhk_38:active {
  opacity: 0.9;
}
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes _cb-shining-text-sweep_vl6fl_1 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
._cb-shining-text_vl6fl_48 {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_vl6fl_1 2.2s linear infinite;
}

._loadingMessage_vl6fl_60 {
  display: flex;
  align-items: flex-start;
  width: 100%;
  box-sizing: border-box;
  padding: 8px var(--cb-assistant-inline-padding, 12px) 8px var(--cb-assistant-inline-padding, 12px);
  min-height: 36px;
  contain: layout style;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 {
  display: flex;
  gap: 6px;
  flex: 1 1 auto;
  min-width: 0;
  width: 100%;
  color: var(--cb-text-disabled, rgba(0, 0, 0, 0.3));
  font-family: "PingFang SC", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._loadingText_vl6fl_81 {
  display: flex;
  align-items: center;
  gap: 0;
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._mainText_vl6fl_94 {
  display: inline-block;
  flex: 0 0 auto;
  white-space: nowrap;
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_vl6fl_1 2.2s linear infinite;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipPhrase_vl6fl_108 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 8px;
  width: auto;
  max-width: none;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  flex: 1 1 auto;
  min-width: 0;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipDivider_vl6fl_121 {
  flex-shrink: 0;
  color: var(--cb-border, #d0d0d0);
  user-select: none;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipText_vl6fl_126 {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--cb-text-disabled, rgba(255, 255, 255, 0.3));
  font-size: 12px;
  font-style: normal;
  line-height: 21px;
  text-decoration-line: none;
  opacity: 0;
  animation: _cb-tip-fade-in_vl6fl_1 0.32s ease-out forwards;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipDismissButton_vl6fl_140 {
  flex: 0 0 auto;
  appearance: none;
  border: 0;
  padding: 0;
  margin: 0 0 0 auto;
  background: transparent;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.55));
  font: inherit;
  line-height: inherit;
  white-space: nowrap;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.16s ease-out, color 0.16s ease-out;
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipDismissButton_vl6fl_140:hover {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.88));
}
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipPhrase_vl6fl_108:hover ._tipDismissButton_vl6fl_140,
._loadingMessage_vl6fl_60 ._loadingContent_vl6fl_69 ._tipPhrase_vl6fl_108:focus-within ._tipDismissButton_vl6fl_140 {
  opacity: 1;
  pointer-events: auto;
}

._tipPhrase_vl6fl_108 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-left: 8px;
  color: var(--cb-text-disabled, rgba(0, 0, 0, 0.3));
  font-family: "PingFang SC", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  flex: 1 1 auto;
  min-width: 0;
}

._trailingTipPhrase_vl6fl_179 {
  flex: 0 1 auto;
  margin-left: 0;
}
._trailingTipPhrase_vl6fl_179 ._tipText_vl6fl_126 {
  flex: 0 1 auto;
}
._trailingTipPhrase_vl6fl_179 ._tipDismissButton_vl6fl_140 {
  margin-left: 8px;
}

._tipDivider_vl6fl_121 {
  flex-shrink: 0;
  color: var(--cb-border, #d0d0d0);
  user-select: none;
}

._tipText_vl6fl_126 {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--cb-text-disabled, rgba(255, 255, 255, 0.3));
  font-size: 12px;
  font-style: normal;
  line-height: 21px;
  text-decoration-line: none;
  opacity: 0;
  animation: _cb-tip-fade-in_vl6fl_1 0.32s ease-out forwards;
}

._tipDismissButton_vl6fl_140 {
  flex: 0 0 auto;
  appearance: none;
  border: 0;
  padding: 0;
  margin: 0 0 0 auto;
  background: transparent;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.55));
  font: inherit;
  line-height: inherit;
  white-space: nowrap;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.16s ease-out, color 0.16s ease-out;
}
._tipDismissButton_vl6fl_140:hover {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.88));
}

._tipPhrase_vl6fl_108:hover ._tipDismissButton_vl6fl_140,
._tipPhrase_vl6fl_108:focus-within ._tipDismissButton_vl6fl_140 {
  opacity: 1;
  pointer-events: auto;
}

@keyframes _cb-tip-fade-in_vl6fl_1 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* MetaFold 过程折叠 - 主题变量 */
/* dark 模式（默认） */
:root {
  /* MetaFold 过程折叠 */
  --cb-meta-fold-label: #666666;
  --cb-meta-fold-count: #999;
  --cb-meta-fold-arrow: #bbb;
}

:root._dark_16c45_11,
:root._cb-dark_16c45_12,
:root ._dark_16c45_11,
:root ._cb-dark_16c45_12 {
  /* MetaFold 过程折叠 */
  --cb-meta-fold-label: #777777;
  --cb-meta-fold-count: #aaa;
  --cb-meta-fold-arrow: #666 ;
}

._metaFold_16c45_21 {
  margin: 2px 0;
}

._metaFoldHead_16c45_25 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  cursor: pointer;
  user-select: none;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
._metaFoldHead_16c45_25:hover ._mfHeadIcon_16c45_36,
._metaFoldHead_16c45_25:hover ._mfSectionLabel_16c45_37,
._metaFoldHead_16c45_25:hover ._mfCount_16c45_38,
._metaFoldHead_16c45_25:hover ._mfSeparator_16c45_39,
._metaFoldHead_16c45_25:hover ._mfSummary_16c45_40,
._metaFoldHead_16c45_25:hover ._mfArrow_16c45_41 {
  color: var(--cb-text-primary, #d2d3e0);
}
._metaFoldHead_16c45_25:hover ._mfArrow_16c45_41 {
  opacity: 1;
}

._mfArrow_16c45_41 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, #a0a0a0);
  transition: transform 0.2s, color 0.16s ease, opacity 0.16s ease;
  transform: rotate(-90deg);
  opacity: 0;
}
._metaFoldOpen_16c45_59 ._mfArrow_16c45_41 {
  transform: rotate(0deg);
  opacity: 1;
}

._mfHeadIcon_16c45_36 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  line-height: 0;
}
._mfHeadIcon_16c45_36 svg {
  width: 14px;
  height: 14px;
}

._mfCount_16c45_38 {
  font-weight: 500;
  color: var(--cb-meta-fold-count, #999);
  font-family: "SF Mono", "Menlo", monospace;
  font-size: 14px;
}

._mfSummary_16c45_40 {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 14px;
  line-height: 1.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 520px;
}

._mfSegment_16c45_96 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

._mfSectionLabel_16c45_37 {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 14px;
  line-height: 1.75;
}

._mfSeparator_16c45_39 {
  color: var(--cb-meta-fold-count, #b1b1b6);
  font-size: 12px;
  line-height: 1;
}

._mfIcons_16c45_114 {
  display: flex;
  gap: 4px;
  margin-left: 6px;
  font-size: 10px;
  color: var(--cb-meta-fold-icons, #ccc);
}

._mfError_16c45_122 {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-left: 8px;
  font-size: 11px;
  font-weight: 600;
  color: var(--cb-meta-fold-error, #e53935);
}

._mfErrIcon_16c45_132 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

._metaFoldBody_16c45_138 {
  padding: 2px 0 2px 0;
}
/**
 * Question Answer Display 样式
 *
 * 设计稿：ardot 10138:802（"进度"）—— 仅提供 light 真值
 *   · 卡片底：#f2f2f2
 *   · 问题文本：rgba(0, 0, 0, 0.5)
 *   · 答案文本：rgba(0, 0, 0, 0.9)
 *
 * Dark 主题没有独立设计稿，按 cb-chat-ui "深色卡片三件套"对齐
 * （intercept-card / question-floating / question-answer-display）：
 *   · 卡片底：#181b20
 *   · 问题/答案文本沿用 question-floating 的 muted/primary 档位（0.5 / 0.9）
 *
 * 主题策略与 question-floating 一致：组件局部 token（--qad-* 前缀）声明在文件顶部，
 * dark 为默认（:root + .dark + .cb-dark），light 通过 .light/.cb-light 覆盖；
 * 业务样式只引用 var(--qad-*)，不再直写 hex/rgba。
 *
 * 该卡片是纯展示零交互组件，仅需 2 档文本色（问题 / 答案），不引入 question-floating 的 5 档体系。
 *
 * overflow: hidden 同时承担 BFC（防 margin 溢出，符合 tool-renderer 样式规范）。
 */
:root,
.dark,
.cb-dark {
  --qad-card-bg: #181b20;
  --qad-question-color: rgba(255, 255, 255, 0.5);
  --qad-answer-color: rgba(255, 255, 255, 0.9);
}

.light,
.cb-light {
  --qad-card-bg: #f2f2f2;
  --qad-question-color: rgba(0, 0, 0, 0.5);
  --qad-answer-color: rgba(0, 0, 0, 0.9);
}

._questionAnswerDisplay_192gv_38 {
  width: 100%;
  padding: 12px 16px;
  background-color: var(--qad-card-bg);
  border-radius: 16px;
  overflow: hidden;
}

._qaContent_192gv_46 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

._qaQuestionItem_192gv_52 {
  display: flex;
  flex-direction: column;
  gap: 0;
}

._qaQuestion_192gv_52 {
  color: var(--qad-question-color);
  font-weight: 400;
  font-size: 14px;
  line-height: 25px;
}

._qaAnswer_192gv_65 {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  word-break: break-all;
}

._qaAnswerText_192gv_72 {
  color: var(--qad-answer-color);
  font-weight: 400;
  font-size: 14px;
  line-height: 22px;
}.cb-restore-button-container {
  display: flex;
  justify-content: flex-start;
  margin: 8px 10px 0;
  position: relative;
  z-index: 989;
}
.cb-restore-button-container .cb-restore-button {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  background-color: var(--cb-button-secondary-background);
  color: var(--cb-text-primary, #d2d3e0);
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 12px;
  transition: background-color 0.2s;
}
.cb-restore-button-container .cb-restore-button:hover {
  background-color: var(--cb-button-secondary-hover-background);
}
.cb-restore-button-container .cb-restore-button:focus {
  outline: none;
}
.cb-restore-button-container .cb-restore-button .cb-restore-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}.error-message-container {
  font-size: 13px;
}
.error-message-container .cb-error-message__content {
  display: flex;
  margin-top: 10px;
  padding: 12px;
  border-radius: 8px;
  gap: 8px;
  border: 1px solid var(--cb-stroke-secondary, #454545);
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.error-message-container .cb-error-message__content__block {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  line-height: 18px;
  font-size: 13px;
}
.error-message-container .cb-error-message__icon svg {
  width: 16px;
  height: 16px;
}
.error-message-container .cb-error-message__icon {
  flex-shrink: 0;
}
.error-message-container .cb-error-message .error-icon {
  color: var(--cb-error-foreground, #f14c4c);
}
.error-message-container .cb-error-message .error-title {
  word-break: break-all;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--cb-error-foreground, #f14c4c);
}
.error-message-container .cb-error-message .error-title > span:first-child {
  flex: 1;
}
.error-message-container .cb-error-message .error-sub-title {
  word-break: break-all;
  color: var(--cb-text-primary, #d2d3e0);
}
.error-message-container .request-id {
  display: flex;
  flex-direction: column;
  padding-top: 8px;
  border-top: 1px solid var(--cb-stroke-secondary, #30363d);
  margin-top: 4px;
  font-size: 11px;
  gap: 4px;
  word-break: break-all;
  color: var(--cb-text-primary, #d2d3e0);
}
.error-message-container .request-id .request-id-line {
  display: flex;
  align-items: center;
  gap: 4px;
}
.error-message-container .request-id .request-id-line > span {
  flex: 1;
}
.error-message-container .request-id .request-date {
  color: var(--cb-text-secondary, #999);
}
.error-message-container .request-id .request-user-id {
  color: var(--cb-text-secondary, #999);
}
.error-message-container .cb-error-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}
.error-message-container .copy-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 2px;
  display: inline-flex;
  align-items: center;
  color: inherit;
}
.error-message-container .copy-button:hover {
  opacity: 0.8;
}
.error-message-container .copy-button .linear-icon {
  width: 14px;
  height: 14px;
}
.error-message-container .close-icon {
  cursor: pointer;
  color: var(--cb-text-secondary, #999);
  display: flex;
  align-items: center;
  margin-left: 8px;
  flex-shrink: 0;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}
.error-message-container .close-icon:hover {
  color: var(--cb-text-primary, #fff);
  opacity: 1;
}
.error-message-container .close-icon svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
  stroke: currentColor;
}
.error-message-container .cursor-pointer {
  cursor: pointer;
}
/**
 * 用户消息气泡
 *
 * 只负责视觉样式
 * 宽度由外层 .userMessageWrapper 控制，气泡自适应 wrapper 宽度
 */
._userMessageBubble_cko0t_8 {
  box-sizing: border-box;
  padding: 8px 12px;
  border-radius: 16px 16px 0 16px;
  background-color: var(--cb-colleagues-remote-chip-border, #EBEBEB);
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--cb-user-bubble-color, var(--cb-text-primary, #d2d3e0));
  font-size: var(--cb-user-bubble-font-size, 13px);
  line-height: var(--cb-user-bubble-line-height, 19px);
  overflow-wrap: break-word;
  word-wrap: break-word;
  max-height: 310px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-scrollbar-thumb, rgba(255, 255, 255, 0.15)) transparent;
}
._userMessageBubble_cko0t_8::-webkit-scrollbar {
  width: 4px;
}
._userMessageBubble_cko0t_8::-webkit-scrollbar-thumb {
  background: var(--cb-scrollbar-thumb, rgba(255, 255, 255, 0.15));
  border-radius: 2px;
}
._userMessageBubble_cko0t_8::-webkit-scrollbar-track {
  background: transparent;
}
._userMessageBubble_cko0t_8 .user-message-phrase {
  display: inline-block;
  padding: 2px 6px;
  margin: 0 2px;
  background: var(--cb-user-bubble-phrase-bg, var(--cb-bg-secondary, rgba(255, 255, 255, 0.1)));
  border-radius: var(--cb-user-bubble-phrase-radius, 4px);
  color: var(--cb-user-bubble-phrase-color, var(--cb-text-link, #4a9eff));
  font-weight: 500;
  white-space: nowrap;
}

/**
 * Token 超限续写消息气泡（Chat history summarized）
 * 橙色边框样式，显示总结提示
 */
._summaryBubble_cko0t_51 {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0px 12px;
  border-radius: 6px;
  font-size: 13px;
  line-height: 19px;
  width: fit-content;
  max-width: 100%;
}

._summaryIcon_cko0t_64 {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--cb-text-secondary, #858699);
}

._summaryText_cko0t_71 {
  color: var(--cb-text-secondary, #858699);
}.cb-user-cancelled-indicator {
  display: inline-flex;
  align-items: center;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-tertiary, var(--vscode-descriptionForeground, #888));
  margin: 0;
}
/**
 * 用户消息编辑器样式
 * 占满宽度，padding 由外层 .user-message 提供
 *
 * 引入统一的变量系统（提供全局兜底）
 */
.user-message-editor {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
}
.user-message-editor > section {
  margin: 0 !important;
}
.user-message-editor__resume-button {
  margin-top: 8px;
}
._container_pf4c4_2 {
  position: relative;
  box-sizing: border-box;
}

._contentOverlayWrapper_pf4c4_7 {
  position: relative;
}

._content_pf4c4_7 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--cb-input-content-gap, 4px);
  padding: var(--cb-input-content-padding, 0);
  border: var(--cb-input-content-border, none);
  background: var(--cb-content-background, #252526);
  border-radius: var(--cb-input-content-radius, 18px);
  box-shadow: var(--cb-input-content-shadow, none);
  box-sizing: border-box;
}

._inputOverlay_pf4c4_24 {
  position: absolute;
  inset: 0;
  z-index: 20;
  display: flex;
  pointer-events: auto;
  cursor: default;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 18px;
  background: var(--cb-bg-overlay, rgba(255, 255, 255, 0.9));
  backdrop-filter: blur(3px);
}

._contentWrapper_pf4c4_39 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

._topArea_pf4c4_48 {
  height: var(--cb-input-top-area-height, 28px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: var(--cb-input-top-area-margin, 0 -8px 0 -8px);
  padding-left: var(--cb-input-top-area-padding-left, 12px);
  border-top-left-radius: 7px;
  border-top-right-radius: 7px;
}
._topArea_pf4c4_48 [class*=icon]:hover {
  background-color: var(--cb-main-area-background, #F5F5F5);
  border-radius: 50%;
}

._topRightSlotStandalone_pf4c4_63 {
  position: absolute;
  top: -80px;
  right: 0;
  z-index: 0;
  pointer-events: none;
}

._mainArea_pf4c4_71 {
  position: relative;
  z-index: 16;
  padding: var(--cb-input-main-area-padding, 12px);
  gap: var(--cb-input-main-area-gap, 12px);
  border-radius: var(--cb-input-main-area-radius, 16px);
  background: var(--cb-main-area-background, #F5F5F5);
  border: 1px solid var(--cb-main-area-border-color, transparent);
  box-shadow: var(--cb-main-area-box-shadow, none);
}

._svg_pf4c4_82 svg {
  width: 14px;
}

._mentionButtonLabeled_pf4c4_86 {
  width: auto !important;
  min-width: 72px;
  height: 32px !important;
  gap: 6px;
  padding: 0 11px;
  border: 1px solid var(--cb-mention-button-border, transparent);
  border-radius: var(--cb-mention-button-radius, 10px);
  color: var(--cb-mention-button-color, var(--cb-text-primary, #d2d3e0));
  background: var(--cb-mention-button-bg, transparent);
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
}
._mentionButtonLabeled_pf4c4_86 span {
  white-space: nowrap;
}

._gap_pf4c4_104 {
  gap: 4px;
}

._gapLarge_pf4c4_108 {
  gap: var(--cb-input-bottom-right-gap, 16px);
}

._selector_pf4c4_112 {
  min-width: 0;
}
@media screen and (max-width: 310px) {
  ._selector_pf4c4_112 {
    flex-wrap: wrap;
  }
}

._shrink0_pf4c4_121 {
  flex-shrink: 0;
}

/* 键盘导航选中样式 - 使用 :global 确保样式全局可用 */
.keyboard-nav-selected {
  outline: 2px solid var(--cb-primary-color, #0066FF) !important;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(0, 102, 255, 0.1) !important;
  transition: outline 0.15s ease, box-shadow 0.15s ease;
}

._inlineSandboxConfig_pf4c4_133 {
  display: flex;
  align-items: center;
}
._inlineSandboxConfig_pf4c4_133 > div {
  padding: 0;
  justify-content: flex-start;
}
._inlineSandboxConfig_pf4c4_133 button {
  background: transparent !important;
}
._inlineSandboxConfig_pf4c4_133 button:hover {
  background: var(--cb-gray-color, rgba(204, 204, 204, 0.1)) !important;
}
._container_42lfr_2 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--cb-mention-panel-gap, 4px);
  max-height: var(--cb-mention-panel-max-height, 256px);
  overflow-y: auto;
  padding: var(--cb-mention-panel-padding, 4px 0px);
  border-radius: var(--cb-mention-panel-radius, 4px);
  background: var(--cb-mention-panel-bg, var(--cb-dropdown-bg-color));
  border: 1px solid var(--cb-mention-panel-border-color, var(--cb-input-border-color, #313248));
  box-shadow: var(--cb-mention-panel-shadow, none);
  font-size: 14px;
  color: var(--cb-text-primary, #d2d3e0);
  z-index: 9998;
  user-select: none;
  outline: none;
}
._container_42lfr_2:focus, ._container_42lfr_2:focus-visible {
  outline: none;
}

._return_42lfr_24 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  cursor: pointer;
  font-size: 13px;
  line-height: 21px;
  color: var(--cb-text-primary, #d2d3e0);
}
._return_42lfr_24 svg {
  width: 14px;
  height: 14px;
}

._input_42lfr_39 {
  display: block;
  width: 100%;
  padding: 4px 8px;
  background: inherit;
  border: none;
  outline: none;
  font-size: 13px;
  font-family: inherit;
  color: var(--cb-text-primary, #d2d3e0);
}
._input_42lfr_39::placeholder {
  color: var(--cb-text-secondary, #858699);
  font-size: 13px;
}

._recent_42lfr_55 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
._recent_42lfr_55._withFooter_42lfr_61 {
  padding-bottom: 8px;
}
._recent_42lfr_55._withFooter_42lfr_61::after {
  content: "";
  display: block;
  width: calc(100% - 16px);
  height: 1px;
  background-color: var(--cb-input-border-color, rgba(204, 204, 204, 0.12));
  position: absolute;
  bottom: 0;
  left: 8px;
}

._groupContainer_42lfr_75 {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/**
 * 分组分隔线（设计稿 ardot 17663:653）：
 *   - 独立 div 模拟一条线，位于两个 groupContainer 之间
 *   - 设计稿分隔线上下呼吸各 8px（技能组 paddingBottom 8 + 组间 itemSpacing 8）。
 *     父容器 `.recent` 已用 `gap: 4px` 提供了 4px 间距，因此这里只需再加 4px margin
 *     即可凑齐 8px（4 gap + 4 margin），避免视觉高度超出设计稿 296px。
 *   - 高度 1px、颜色 #EBEBEB（浅色）/ rgba(255,255,255,0.10)（深色）
 *   - 横贯宽度：左右不留白
 */
._groupDivider_42lfr_91 {
  flex-shrink: 0;
  height: 1px;
  margin: 4px 0;
  background: var(--cb-border-secondary, rgba(0, 0, 0, 0.08));
}

._groupTitle_42lfr_98 {
  height: 18px;
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  padding: 2px 8px 4px 8px;
  margin-bottom: 4px;
  /* 点击可滚动定位到该组（见 mentions.tsx handleGroupTitleClick），但视觉不显 pointer——
     产品要求组标题保持"静态标签"外观，不要暗示"可点击"。 */
  cursor: default;
  user-select: none;
}

._text_42lfr_110 {
  gap: 4px;
  height: 24px;
  padding: 0 8px;
  cursor: pointer;
}
._text_42lfr_110:hover {
  background: var(--cb-dropdown-item-hover-bg-color);
}

._menuContainer_42lfr_120 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  position: relative;
}
._menuContainer_42lfr_120._withFooter_42lfr_61 {
  padding-bottom: 8px;
}
._menuContainer_42lfr_120._withFooter_42lfr_61::after {
  content: "";
  display: block;
  width: calc(100% - 16px);
  height: 1px;
  background-color: var(--cb-input-border-color, rgba(204, 204, 204, 0.12));
  position: absolute;
  bottom: 0;
  left: 8px;
}

._item_42lfr_140 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: var(--cb-mention-item-min-height, auto);
  padding: var(--cb-mention-item-padding, 4px 8px);
  border-radius: var(--cb-mention-item-radius, 0);
  cursor: pointer;
  line-height: 22px;
  color: var(--cb-text-primary, #d2d3e0);
}
._item_42lfr_140._selected_42lfr_151 {
  background: var(--cb-mention-item-hover-bg, var(--cb-dropdown-item-hover-bg-color));
}

._itemInner_42lfr_155 {
  display: flex;
  align-items: center;
  gap: var(--cb-mention-item-gap, 4px);
  flex: 1;
  min-width: 0;
  margin-right: 10px;
}
._itemInner_42lfr_155 svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

._name_42lfr_169 {
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._description_42lfr_176 {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
}

._chevron_42lfr_185 {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, #858699);
}

._emptyState_42lfr_192 {
  padding: 8px 12px;
  text-align: center;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  user-select: none;
}

._loadingState_42lfr_200 {
  padding: 8px 12px;
  text-align: center;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  user-select: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
._loadingState_42lfr_200::before {
  content: "";
  width: 12px;
  height: 12px;
  border: 1px solid var(--cb-text-secondary, #858699);
  border-top-color: transparent;
  border-radius: 50%;
  animation: _spin_42lfr_1 1s linear infinite;
}

@keyframes _spin_42lfr_1 {
  to {
    transform: rotate(360deg);
  }
}
._footerActions_42lfr_226 {
  padding: 4px 8px;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._footerActionButton_42lfr_233 {
  width: 100%;
  padding: 2px 4px;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground, #808080));
  background: transparent;
  border: none;
  cursor: pointer;
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
._footerActionButton_42lfr_233 svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
._footerActionButton_42lfr_233:hover {
  color: var(--cb-text-primary, var(--vscode-foreground, #d2d3e0));
}
._footerActionButton_42lfr_233:active {
  opacity: 0.8;
}

._highlight_42lfr_261 {
  color: var(--cb-green-color, #00b96b);
  font-weight: inherit;
}

/* ──────────────────── Skill 行右侧 pin 按钮 ────────────────────
 *
 * 视觉规则（与 wb-input-add SkillsSubmenu 完全一致）：
 *   - 未置顶 + 行未 hover → 整体隐藏
 *   - 未置顶 + 行 hover    → 显示 PinIcon（浅灰）
 *   - 已置顶              → 始终显示 PinIcon（深色）
 *   - 已置顶 + 行 hover   → 显示 UnpinIcon（带斜切口，提示"点击取消置顶"）
 *
 * 热区/间距工程调整（图标视觉仍 16x16，热区放大到 28x28，与文案再拉开一档间距）：
 *   1. 按钮盒子 28x28，内部 SVG 16x16 —— 热区放大，视觉不变
 *   2. margin-left: 4px —— 与描述文案再拉开一档间距（原 itemInner margin-right 10 + 4 = 14）
 *   3. margin: -6px 0 —— 抵消热区外扩带来的行高影响，避免撑高整行
 *   4. margin-right 用 -6px 抵消右侧外扩，保证行右缘不偏移
 *
 * 实现：JSX 同时渲染 PinIcon (.pinIconRest) + UnpinIcon (.pinIconHover)，
 * 由本 SCSS 通过 :hover / .pinned 组合控制 display 切换。
 */
._pinBtn_42lfr_283 {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  /* 热区上下各外扩 6px（用负 margin 抵消），左侧比行内元素默认间距再拉开 4px */
  margin: -6px -6px -6px 4px;
  align-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: transparent;
  border: none;
  padding: 0;
  border-radius: 6px;
  color: var(--cb-text-muted, rgba(0, 0, 0, 0.3));
  /* 默认整体隐藏（仅未置顶且行未 hover 时） */
  opacity: 0;
  transition: opacity 0.15s ease, color 0.15s ease, background 0.15s ease;
  /* 行 hover 或选中态时显示按钮容器 */
}
._item_42lfr_140:hover ._pinBtn_42lfr_283, ._item_42lfr_140._selected_42lfr_151 ._pinBtn_42lfr_283 {
  opacity: 1;
}
._pinBtn_42lfr_283 {
  /* 已置顶始终显示按钮容器，深色 */
}
._pinBtn_42lfr_283._pinned_42lfr_281 {
  opacity: 1;
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
._pinBtn_42lfr_283:hover {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
  background: var(--cb-hover-bg, rgba(0, 0, 0, 0.06));
}

._pinIconRest_42lfr_280,
._pinIconHover_42lfr_280 {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
._pinIconRest_42lfr_280 > svg,
._pinIconHover_42lfr_280 > svg {
  width: 16px;
  height: 16px;
}

/* 默认 = pinIconRest 显示，pinIconHover 隐藏 */
._pinIconHover_42lfr_280 {
  display: none;
}

/* 已置顶 + 行 hover / 选中：切换显示 unpin（带斜切口） */
._item_42lfr_140:hover ._pinBtn_42lfr_283._pinned_42lfr_281 ._pinIconRest_42lfr_280,
._item_42lfr_140._selected_42lfr_151 ._pinBtn_42lfr_283._pinned_42lfr_281 ._pinIconRest_42lfr_280 {
  display: none;
}
._item_42lfr_140:hover ._pinBtn_42lfr_283._pinned_42lfr_281 ._pinIconHover_42lfr_280,
._item_42lfr_140._selected_42lfr_151 ._pinBtn_42lfr_283._pinned_42lfr_281 ._pinIconHover_42lfr_280 {
  display: inline-flex;
}._spaceBetween_5alyt_1 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

._item_5alyt_7 {
  display: flex;
  align-items: center;
}

._inputBottom_5alyt_12 {
  min-height: 24px;
}.cb-input-banner {
  position: relative;
  bottom: -2px;
  width: auto;
  margin: 0 4px;
  display: flex;
  padding: 10px 12px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 8px;
  box-sizing: border-box;
  z-index: 9;
  animation: cb-banner-fade-in 0.3s ease-in-out;
  border-radius: var(--cb-banner-border-radius, 6px 6px 0 0);
}
.cb-input-banner--warning {
  border: 1px solid var(--cb-banner-border-warning, rgba(254, 157, 46, 0.6));
  border-bottom: none;
  background: var(--cb-banner-bg-warning, rgba(254, 157, 46, 0.2));
}
.cb-input-banner--warning .cb-input-banner__icon {
  color: var(--cb-banner-icon-warning, #FE9D2E);
}
.cb-input-banner--warning .cb-input-banner__action {
  border-color: var(--cb-banner-button-secondary-border, #FE9D2E);
  color: var(--cb-banner-button-secondary-color, #FE9D2E);
}
.cb-input-banner--warning .cb-input-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, #FE9D2E);
  border-color: var(--cb-banner-button-primary-border, #FE9D2E);
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-input-banner--error {
  border: 1px solid var(--cb-banner-border-error, #EF4444);
  border-bottom: none;
  background: var(--cb-banner-bg-error, rgba(239, 68, 68, 0.2));
}
.cb-input-banner--error .cb-input-banner__icon {
  color: var(--cb-banner-icon-error, #EF4444);
}
.cb-input-banner--error .cb-input-banner__action {
  border-color: var(--cb-banner-button-secondary-border, #EF4444);
  color: var(--cb-banner-button-secondary-color, #EF4444);
}
.cb-input-banner--error .cb-input-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, #EF4444);
  border-color: var(--cb-banner-button-primary-border, #EF4444);
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-input-banner--info {
  border: 1px solid var(--cb-banner-border-info, rgba(40, 184, 148, 0.55));
  border-bottom: none;
  background: var(--cb-banner-bg-info, rgba(40, 184, 148, 0.2));
}
.cb-input-banner--info .cb-input-banner__icon {
  color: var(--cb-banner-icon-info, rgb(40, 184, 148));
}
.cb-input-banner--info .cb-input-banner__action {
  border-color: var(--cb-banner-button-secondary-border, rgb(40, 184, 148));
  color: var(--cb-banner-button-secondary-color, rgb(40, 184, 148));
}
.cb-input-banner--info .cb-input-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, rgb(40, 184, 148));
  border-color: var(--cb-banner-button-primary-border, rgb(40, 184, 148));
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-input-banner--success {
  border: 1px solid var(--cb-banner-border-success, rgba(40, 184, 148, 0.55));
  border-bottom: none;
  background: var(--cb-banner-bg-success, rgba(40, 184, 148, 0.2));
}
.cb-input-banner--success .cb-input-banner__icon {
  color: var(--cb-banner-icon-success, rgb(40, 184, 148));
}
.cb-input-banner--success .cb-input-banner__action {
  border-color: var(--cb-banner-button-secondary-border, rgb(40, 184, 148));
  color: var(--cb-banner-button-secondary-color, rgb(40, 184, 148));
}
.cb-input-banner--success .cb-input-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, rgb(40, 184, 148));
  border-color: var(--cb-banner-button-primary-border, rgb(40, 184, 148));
  color: var(--cb-error-banner-retry-text-color, #171717);
}
.cb-input-banner__close {
  position: absolute;
  top: 10px;
  right: 12px;
  color: var(--cb-error-banner-text-color);
  background-color: transparent !important;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}
.cb-input-banner__close:hover {
  opacity: 1;
}
.cb-input-banner__content {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  min-width: 0;
  padding-right: 20px;
  box-sizing: border-box;
}
.cb-input-banner__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
  color: var(--cb-error-banner-text-color);
}
.cb-input-banner__icon svg {
  width: 16px;
  height: 16px;
}
.cb-input-banner__message {
  flex: 1;
  color: var(--cb-error-banner-text-color);
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  margin: 0;
  white-space: pre-wrap;
  word-break: normal;
  overflow-wrap: break-word;
}
.cb-input-banner__message a {
  display: inline-block;
  color: inherit;
  text-decoration: underline;
  cursor: pointer;
}
.cb-input-banner__message a:hover {
  color: var(--cb-vscode-textLink-activeForeground, #4daafc);
}
.cb-input-banner__actions {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 8px;
  width: 100%;
  justify-content: flex-start;
  align-items: center;
}
.cb-input-banner__action {
  display: flex;
  height: 23px;
  padding: 4px 8px;
  justify-content: center;
  align-items: center;
  gap: 9px;
  border-radius: 4px;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  color: var(--cb-banner-button-secondary-color, #FE9D2E);
  box-sizing: border-box;
  transition: opacity 0.2s;
  box-shadow: var(--cb-banner-button-shadow, 0 1px 1px 0 rgba(0, 0, 0, 0.15));
  background: transparent;
  border: 1px solid var(--cb-banner-button-secondary-border, #FE9D2E);
}
.cb-input-banner__action:hover {
  background: rgba(255, 255, 255, 0.1);
}
.cb-input-banner__action:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-input-banner__action--primary {
  background: var(--cb-banner-button-primary-bg, #FE9D2E);
  border: 1px solid var(--cb-banner-button-primary-border, #FE9D2E);
  color: var(--cb-error-banner-retry-text-color, #171717);
  text-align: center;
}
.cb-input-banner__decorative-image {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 36px;
  pointer-events: none;
}
.cb-input-banner__decorative-image img {
  height: 100%;
}

@keyframes cb-banner-fade-in {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}._container_19dy6_1 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 2px 0px;
  border-radius: 4px;
  background: var(--cb-dropdown-bg-color);
  border: 1px solid var(--cb-input-border-color, #313248);
  font-size: 12px;
  z-index: 20;
  user-select: none;
  outline: none !important;
}
._container_19dy6_1:focus, ._container_19dy6_1:focus-visible {
  outline: none !important;
}

._list_19dy6_18 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._label_19dy6_24 {
  padding: 4px 8px;
  color: var(--cb-popover-secondary, #858699);
  text-transform: capitalize;
  text-wrap: nowrap;
}

._item_19dy6_31 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
  padding: 4px 8px;
  color: var(--cb-input-foreground, #d2d3e0);
  text-wrap: nowrap;
  cursor: pointer;
  transition: background-color 0.2s ease;
  outline: none !important;
}
._item_19dy6_31:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color);
}
._item_19dy6_31:focus, ._item_19dy6_31:focus-visible {
  outline: none !important;
}._container_14ub4_1 {
  position: relative;
  user-select: none;
}

._popover_14ub4_6 {
  width: auto !important;
  font-size: 12px;
}

._empty_14ub4_11:after {
  content: "";
  display: block;
  width: 12px;
}

._left_14ub4_17 {
  gap: 4px;
}

._label_14ub4_21 {
  text-wrap: nowrap;
  color: var(--cb-input-foreground, #d2d3e0);
}

._description_14ub4_26 {
  color: var(--cb-popover-secondary, #858699);
  margin-top: 2px;
}.cb-error-boundary {
  padding: 12px;
  border: 1px solid var(--vscode-inputValidation-errorBorder, var(--cb-error, #f48771));
  border-radius: 4px;
  background-color: var(--vscode-inputValidation-errorBackground, var(--cb-error-bg, rgba(244, 135, 113, 0.1)));
  color: var(--vscode-errorForeground, var(--cb-error, #f48771));
  font-size: 12px;
}
.cb-error-boundary__title {
  margin-bottom: 8px;
  font-weight: 500;
}
.cb-error-boundary__message {
  margin-bottom: 8px;
  opacity: 0.8;
}
.cb-error-boundary__button {
  padding: 4px 12px;
  border: 1px solid var(--vscode-button-border, transparent);
  border-radius: 2px;
  background-color: var(--vscode-button-background, var(--cb-accent, #0e639c));
  color: var(--vscode-button-foreground, white);
  cursor: pointer;
  font-size: 12px;
}
.cb-error-boundary__button:hover {
  background-color: var(--vscode-button-hoverBackground, var(--cb-accent-hover, #1177bb));
}
.cb-error-boundary__button:active {
  background-color: var(--vscode-button-background, var(--cb-accent, #0e639c));
}._container_1jxhw_1 {
  position: relative;
}

._popover_1jxhw_5 {
  min-width: 270px;
}

._header_1jxhw_9 {
  padding: 4px 8px;
  color: var(--cb-input-foreground, #d2d3e0);
}

._headerActions_1jxhw_14 {
  gap: 4px;
}

._item_1jxhw_18 {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  padding: 4px 8px;
  color: var(--cb-input-foreground, #d2d3e0);
  text-wrap: nowrap;
  cursor: pointer;
  transition: background-color 0.2s ease;
}
._item_1jxhw_18:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color);
}

._itemHeader_1jxhw_33 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

._itemInfo_1jxhw_40 {
  padding-top: 0;
  border-top: none;
}

._itemContent_1jxhw_45 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._itemIcon_1jxhw_51 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}
._itemIcon_1jxhw_51 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

._itemStatus_1jxhw_65 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

._statusLabel_1jxhw_72 {
  font-size: 12px;
  color: var(--cb-popover-secondary, #858699);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._statusIndicator_1jxhw_80 {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}

._expandToggle_1jxhw_87 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  cursor: pointer;
  color: var(--cb-input-foreground, #d2d3e0);
  transition: transform 0.2s ease;
}
._expandToggle_1jxhw_87 svg {
  width: 100%;
  height: 100%;
}

._statusSuccess_1jxhw_103 {
  background-color: var(--cb-green-color, #00b96b);
}

._statusWarning_1jxhw_107 {
  background-color: var(--cb-orange-color, #ff9f0a);
}

._statusError_1jxhw_111 {
  background-color: var(--cb-red-color, #ff453a);
}

._statusNeutral_1jxhw_115 {
  background-color: var(--cb-popover-secondary, #808080);
}

._itemName_1jxhw_119 {
  font-size: 13px;
  color: var(--cb-input-foreground, #d2d3e0);
}

._adpServerCount_1jxhw_124 {
  font-size: 11px;
  color: var(--cb-popover-secondary, #858699);
  margin-left: 4px;
}

._adpAddButton_1jxhw_130 {
  font-size: 12px;
  color: var(--cb-popover-secondary, #858699);
  cursor: pointer;
  padding: 2px 6px;
  border-radius: 4px;
  transition: background-color 0.2s ease, color 0.2s ease;
}
._adpAddButton_1jxhw_130:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color);
  color: var(--cb-input-foreground, #d2d3e0);
}

._adpServerList_1jxhw_143 {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-left: 16px;
}

._adpServerItem_1jxhw_150 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 8px;
  border-radius: 4px;
  cursor: pointer;
}
._adpServerItem_1jxhw_150:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color);
}

._adpServerContent_1jxhw_162 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}

._adpServerName_1jxhw_170 {
  font-size: 12px;
  color: var(--cb-input-foreground, #d2d3e0);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._adpServerTools_1jxhw_178 {
  font-size: 11px;
  color: var(--cb-popover-secondary, #858699);
  flex-shrink: 0;
}

._adpServerStatus_1jxhw_184 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._adpServerStatusLabel_1jxhw_191 {
  font-size: 12px;
  color: var(--cb-popover-secondary, #858699);
}.cb-integration-info-card {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.cb-integration-info-card .cb-integration-info-expand-toggle {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease;
  color: var(--codebuddy-text-secondary);
  padding: 2px;
}
.cb-integration-info-card .cb-integration-info-expand-toggle:hover {
  color: var(--codebuddy-text-primary);
}

.cb-deploy-info-container {
  padding: 8px 8px 4px 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cb-deploy-info-container .deploy-info-url {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 6px;
  background: var(--codebuddy-panel-bg-primary);
  border-radius: 4px;
  color: var(--codebuddy-text-secondary);
  min-height: 24px;
}
.cb-deploy-info-container .deploy-info-url svg {
  flex-shrink: 0;
}
.cb-deploy-info-container .deploy-info-url .deploy-url-link {
  flex: 1;
  font-size: 11px;
  line-height: 16px;
  color: var(--codebuddy-text-primary);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-deploy-info-container .deploy-info-url .deploy-url-link:hover {
  text-decoration: underline;
  color: var(--codebuddy-green-color);
}
.cb-deploy-info-container .deploy-info-url.url-expired .deploy-url-link {
  text-decoration: line-through;
  opacity: 0.6;
}
.cb-deploy-info-container .deploy-info-url.url-expired .deploy-url-link:hover {
  color: var(--codebuddy-text-primary);
}
.cb-deploy-info-container .deploy-info-expired-warning {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #ee9d28;
  font-size: 11px;
  line-height: 16px;
}
.cb-deploy-info-container .deploy-info-expired-warning svg {
  flex-shrink: 0;
  color: #ee9d28;
}
.cb-deploy-info-container .deploy-info-actions {
  display: flex;
  gap: 6px;
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 11px;
  line-height: 16px;
  min-height: 24px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn svg {
  flex-shrink: 0;
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn.share-btn {
  background: transparent;
  border: 1px solid var(--codebuddy-input-border-primary);
  color: var(--codebuddy-text-primary);
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn.share-btn:hover {
  background: var(--codebuddy-panel-bg-primary);
  border-color: var(--codebuddy-green-color);
  color: var(--codebuddy-green-color);
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn.deploy-btn {
  background: #28b894;
  color: #fff;
}
.cb-deploy-info-container .deploy-info-actions .deploy-action-btn.deploy-btn:hover {
  opacity: 0.9;
}.cb-deploy-info-section {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 12px;
  color: var(--codebuddy-text-secondary);
}
.cb-deploy-info-section .deploy-basic-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.cb-deploy-info-section .deploy-basic-info .info-item {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 4px;
}
.cb-deploy-info-section .deploy-basic-info .info-item .info-label {
  font-weight: 400;
  color: var(--codebuddy-text-secondary);
  white-space: nowrap;
}
.cb-deploy-info-section .deploy-basic-info .info-item .info-value {
  color: var(--codebuddy-text-primary);
  word-break: break-all;
}
.cb-deploy-info-section .deploy-basic-info .info-item .info-link {
  color: var(--codebuddy-green-color);
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  text-decoration: none;
}
.cb-deploy-info-section .deploy-basic-info .info-item .info-link:hover {
  text-decoration: underline;
}
.cb-deploy-info-section .deploy-basic-info .info-expired-warning {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #ee9d28;
  font-size: 11px;
  line-height: 16px;
  width: fit-content;
}
.cb-deploy-info-section .deploy-basic-info .info-expired-warning svg {
  flex-shrink: 0;
  color: #ee9d28;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 6px;
  background: var(--codebuddy-panel-bg-primary);
  border-radius: 4px;
  color: var(--codebuddy-text-secondary);
  min-height: 24px;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url svg {
  flex-shrink: 0;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url .deploy-url-link {
  flex: 1;
  font-size: 11px;
  line-height: 16px;
  color: var(--codebuddy-text-primary);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url .deploy-url-link:hover {
  text-decoration: underline;
  color: var(--codebuddy-green-color);
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url.url-expired .deploy-url-link {
  text-decoration: line-through;
  opacity: 0.6;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-url.url-expired .deploy-url-link:hover {
  color: var(--codebuddy-text-primary);
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-expired-warning {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #ee9d28;
  font-size: 11px;
  line-height: 16px;
}
.cb-deploy-info-section .deploy-preview-section .deploy-info-expired-warning svg {
  flex-shrink: 0;
  color: #ee9d28;
}
.cb-deploy-info-section .deploy-info-actions {
  display: flex;
  gap: 6px;
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 11px;
  line-height: 16px;
  min-height: 24px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn svg {
  flex-shrink: 0;
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn.share-btn {
  background: transparent;
  border: 1px solid var(--codebuddy-input-border-primary);
  color: var(--codebuddy-text-primary);
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn.share-btn:hover {
  background: var(--codebuddy-panel-bg-primary);
  border-color: var(--codebuddy-green-color);
  color: var(--codebuddy-green-color);
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn.deploy-btn {
  background: #28b894;
  color: #fff;
}
.cb-deploy-info-section .deploy-info-actions .deploy-action-btn.deploy-btn:hover {
  opacity: 0.9;
}.cb-database-info-section {
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 12px;
  color: var(--codebuddy-text-secondary);
}
.cb-database-info-section .info-item {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 4px;
}
.cb-database-info-section .info-item .info-label {
  font-weight: 400;
  color: var(--codebuddy-text-secondary);
  white-space: nowrap;
}
.cb-database-info-section .info-item .info-value {
  color: var(--codebuddy-text-primary);
  word-break: break-all;
}
.cb-database-info-section .info-item .info-link {
  color: var(--codebuddy-green-color);
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
  text-decoration: none;
}
.cb-database-info-section .info-item .info-link:hover {
  text-decoration: underline;
}
/* ================================================
   CBInfiniteScroll – 通用无限滚动容器
   ================================================ */
._cbInfiniteScroll_1ncb0_5 {
  display: flex;
  min-width: 0;
  min-height: 0;
  /* ── 轴向 ── */
}
._cbInfiniteScroll_1ncb0_5._vertical_1ncb0_11 {
  flex-direction: column;
}
._cbInfiniteScroll_1ncb0_5._vertical_1ncb0_11._reverse_1ncb0_14 {
  flex-direction: column-reverse;
}
._cbInfiniteScroll_1ncb0_5._horizontal_1ncb0_17 {
  flex-direction: row;
}
._cbInfiniteScroll_1ncb0_5._horizontal_1ncb0_17._reverse_1ncb0_14 {
  flex-direction: row-reverse;
}
._cbInfiniteScroll_1ncb0_5 {
  /* ── 自带滚动容器 ── */
}
._cbInfiniteScroll_1ncb0_5._selfScroll_1ncb0_26._vertical_1ncb0_11 {
  overflow-y: auto;
  overflow-x: hidden;
}
._cbInfiniteScroll_1ncb0_5._selfScroll_1ncb0_26._horizontal_1ncb0_17 {
  overflow-x: auto;
  overflow-y: hidden;
}

/* ── sentinel：1px 透明哨兵，给 IO 观察 ── */
._sentinel_1ncb0_36 {
  flex: 0 0 1px;
  width: 1px;
  height: 1px;
  pointer-events: none;
  opacity: 0;
}
/* ================================================
   CBInfiniteScroll 默认 loader 样式
   ================================================ */
._loader_1j818_5 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--cb-text-secondary);
  font-size: 12px;
  line-height: 1;
  flex: 0 0 auto;
}
._loader_1j818_5._vertical_1j818_15 {
  padding: 8px 0;
  width: 100%;
}
._loader_1j818_5._horizontal_1j818_19 {
  padding: 0 8px;
  height: 100%;
  white-space: nowrap;
}

._text_1j818_25 {
  user-select: none;
}

/* ── 纯 CSS spinner ── */
._spinner_1j818_30 {
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 1.5px solid var(--cb-text-muted);
  border-top-color: var(--cb-text-secondary);
  animation: _cb-infinite-scroll-spin_1j818_1 0.8s linear infinite;
}

@keyframes _cb-infinite-scroll-spin_1j818_1 {
  to {
    transform: rotate(360deg);
  }
}._container_1p5j7_1 {
  display: flex;
  align-items: center;
}

._modeButton_1p5j7_6 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 3px;
  cursor: pointer;
  font-size: 12px;
  line-height: 20px;
  transition: all 0.2s;
  border: none;
  background: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
  color: var(--cb-text-primary, #EBEBEF);
  outline: none !important;
  height: 24px;
  max-width: 140px;
  overflow: hidden;
}
._modeButton_1p5j7_6:focus, ._modeButton_1p5j7_6:focus-visible, ._modeButton_1p5j7_6:active {
  outline: none !important;
  box-shadow: none !important;
}

._modeButtonTransparent_1p5j7_30._modeButtonTransparent_1p5j7_30 {
  background: transparent;
}
._modeButtonTransparent_1p5j7_30._modeButtonTransparent_1p5j7_30:hover {
  background: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
}
._modeButtonTransparent_1p5j7_30._modeButtonTransparent_1p5j7_30 ._modeIconWrapper_1p5j7_36 {
  color: inherit;
}

._modeButtonLeft_1p5j7_40 {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

._modeIconWrapper_1p5j7_36 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, #666);
}
._modeIconWrapper_1p5j7_36 svg {
  width: 100%;
  height: 100%;
}

._currentModeLabel_1p5j7_61 {
  font-weight: 500;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

._modeButtonCompact_1p5j7_68 {
  max-width: none;
  padding: 4px;
  gap: 0;
  border-radius: 50%;
}
._modeButtonCompact_1p5j7_68 ._currentModeLabel_1p5j7_61,
._modeButtonCompact_1p5j7_68 ._modeButtonLeft_1p5j7_40 ._shortcut_1p5j7_75,
._modeButtonCompact_1p5j7_68 ._modeIcon_1p5j7_36 {
  display: none;
}

._modeIcon_1p5j7_36 {
  flex-shrink: 0;
}

/* Dropdown Styles */
._dropdownItemWrapper_1p5j7_85 {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
}
._dropdownItemWrapper_1p5j7_85:hover ._descriptionTooltip_1p5j7_91 {
  opacity: 1;
  visibility: visible;
}

._dropdownItem_1p5j7_85 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  width: 100%;
  padding: 4px 6px;
  box-sizing: border-box;
  cursor: pointer;
  border-radius: 8px;
  color: var(--cb-text-primary, #333);
  font-size: 13px;
  font-family: "Inter", sans-serif;
}
._dropdownItem_1p5j7_85._selected_1p5j7_110 {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
  margin: -4px -8px;
  padding: 8px 14px;
  width: calc(100% + 16px);
}

._dropdownItemLeft_1p5j7_117 {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  flex: 1;
}
._dropdownItemLeft_1p5j7_117 > span {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

._dropdownItemRight_1p5j7_130 {
  display: flex;
  align-items: center;
  gap: 4px;
}

._itemLabel_1p5j7_136 {
  line-height: 18px;
  color: var(--cb-text-primary, #333);
}

._shortcut_1p5j7_75 {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
  margin-left: 4px;
  display: flex;
  align-items: center;
}

._descriptionTooltip_1p5j7_91 {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
  padding: 4px 8px 0 24px;
  line-height: 1.4;
  white-space: normal;
  word-break: break-word;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  max-width: 200px;
}

._checkIcon_1p5j7_162 {
  color: var(--cb-text-primary, #FFFFFF);
  display: flex;
  align-items: center;
  width: 14px;
  height: 14px;
}
._checkIcon_1p5j7_162 svg {
  width: 100%;
  height: 100%;
}

._editIcon_1p5j7_174 {
  display: none;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, #858699);
  cursor: pointer;
  transition: color 0.15s ease;
}
._editIcon_1p5j7_174:hover {
  color: var(--cb-text-primary, #EBEBEF);
}
._editIcon_1p5j7_174 svg {
  width: 12px;
  height: 12px;
}

._dropdownItem_1p5j7_85:hover ._editIcon_1p5j7_174 {
  display: flex;
}

._infoIcon_1p5j7_197 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, #666);
  cursor: pointer;
  transition: opacity 0.15s ease;
  opacity: 0.35;
}
._infoIcon_1p5j7_197:hover {
  opacity: 0.7;
}
._infoIcon_1p5j7_197 svg {
  width: 100%;
  height: 100%;
}

._header_1p5j7_217 {
  display: flex;
  align-items: center;
  padding: 8px;
  gap: 4px;
  width: 100%;
  height: 24px;
  /* Increased height for better spacing */
  box-sizing: border-box;
  border-bottom: 1px solid var(--cb-border-color, #4C4F6B);
  pointer-events: none;
  /* Disable hover and clicks */
  font-family: "PingFang SC", sans-serif;
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  line-height: 18px;
}

._footer_1p5j7_235 {
  display: flex;
  align-items: center;
  padding: 8px;
  gap: 4px;
  width: 100%;
  height: 24px;
  box-sizing: border-box;
  border-top: 1px solid var(--cb-border-color, #4C4F6B);
  margin-top: 4px;
  cursor: pointer;
  color: var(--cb-text-secondary, #858699);
}
._footer_1p5j7_235:hover {
  background: var(--cb-bg-hover, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-primary, #EBEBEF);
}
._footer_1p5j7_235 span {
  font-size: 12px;
  line-height: 18px;
}

._customAgentActions_1p5j7_257 {
  display: flex;
  align-items: center;
  gap: 4px;
}
._customAgentActions_1p5j7_257 ._actionIcon_1p5j7_262 {
  width: 12px;
  height: 12px;
  color: var(--cb-text-secondary, #858699);
  cursor: pointer;
}
._customAgentActions_1p5j7_257 ._actionIcon_1p5j7_262:hover {
  color: var(--cb-text-primary, #EBEBEF);
}

._modeDescription_1p5j7_272 {
  padding: 0;
}

._modeDescriptionTitle_1p5j7_276 {
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
  margin-bottom: 4px;
  padding: 4px 8px 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._modeDescriptionRecommended_1p5j7_288 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  padding: 0 8px 4px 8px;
}
._modeDescriptionRecommended_1p5j7_288 svg {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-green-color, #00b96b);
  margin-right: 4px;
}
._modeDescriptionRecommended_1p5j7_288 span {
  color: var(--cb-text-secondary, #858699);
}

._modeDescriptionText_1p5j7_308 {
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  padding: 0 8px 4px 8px;
  white-space: normal;
  word-wrap: break-word;
}

._modeDescriptionDivider_1p5j7_318 {
  height: 1px;
  background: var(--cb-border, rgba(255, 255, 255, 0.1));
  margin-bottom: 4px;
}

._modeDescriptionToolsHeader_1p5j7_324 {
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  font-weight: 400;
  line-height: 16px;
  margin-bottom: 4px;
  padding: 0 8px;
}

._modeDescriptionTools_1p5j7_324 {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0 8px 4px 8px;
}

._modeDescriptionTool_1p5j7_324 {
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}

._expertSection_1p5j7_347 {
  position: relative;
}

._expertDivider_1p5j7_351 {
  height: 1px;
  background: var(--cb-border-color, #f0f0f0);
  margin: 2px 6px;
}

._expertOptionWrapper_1p5j7_357 {
  position: relative;
  padding: 0 4px;
}

._expertSubmenuWrapper_1p5j7_362 {
  position: absolute;
  z-index: 1001;
}

._expertAvatarSmall_1p5j7_367 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  flex-shrink: 0;
  overflow: hidden;
  background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
}

._expertAvatarImage_1p5j7_379 {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

._expertAvatarInitial_1p5j7_385 {
  font-size: 9px;
  font-weight: 600;
  color: #ffffff;
  text-transform: uppercase;
  line-height: 1;
}._expertOption_16uat_1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 6px 8px;
  box-sizing: border-box;
  cursor: pointer;
  color: var(--cb-text-primary, #1a1a1a);
  font-size: 12px;
  font-family: "Inter", sans-serif;
  transition: background-color 0.15s ease;
  border-radius: 4px;
}
._expertOption_16uat_1:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
}
._expertOption_16uat_1._selected_16uat_18 {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
}

._leftSection_16uat_22 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}

._rightSection_16uat_30 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-left: 6px;
  gap: 4px;
}

._summonEntry_16uat_38 ._summonIcon_16uat_38 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
._summonEntry_16uat_38 ._summonIcon_16uat_38 svg {
  width: 14px;
  height: 14px;
}
._summonEntry_16uat_38 ._summonText_16uat_50 {
  font-size: 13px;
  font-weight: 400;
  line-height: 16px;
  color: var(--cb-text-primary, #EBEBEF);
  white-space: nowrap;
}

._expertCard_16uat_58 {
  padding: 6px 8px;
  max-width: 280px;
}

._expertCard_16uat_58 ._leftSection_16uat_22 {
  gap: 8px;
}

._avatar_16uat_67 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  flex-shrink: 0;
  overflow: hidden;
  background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
}

._avatarImage_16uat_79 {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

._avatarInitial_16uat_85 {
  font-size: 9px;
  font-weight: 600;
  color: #ffffff;
  text-transform: uppercase;
  line-height: 1;
}

._expertInfo_16uat_93 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1;
  gap: 0;
}

._expertProfession_16uat_101 {
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  color: var(--cb-text-primary, #1a1a1a);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._expertName_16uat_111 {
  font-size: 10px;
  font-weight: 400;
  line-height: 12px;
  color: var(--cb-text-secondary, #999);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 150px;
}

._arrowIcon_16uat_122 {
  width: 10px;
  height: 10px;
  color: var(--cb-text-secondary, #858699);
  transition: color 0.15s ease;
}

._expertOption_16uat_1:hover ._arrowIcon_16uat_122 {
  color: var(--cb-text-primary, #EBEBEF);
}

._checkIcon_16uat_133 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--cb-primary-color, #6366f1);
  visibility: hidden;
}
._checkIcon_16uat_133._visible_16uat_143 {
  visibility: visible;
}
._checkIcon_16uat_133 svg {
  width: 100%;
  height: 100%;
}._submenu_1vui6_1 {
  min-width: 140px;
  max-width: 180px;
  border: 1px solid var(--cb-input-border-color, #e8e8e8);
  border-radius: 8px;
  background-color: var(--cb-dropdown-bg-color, #fff);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  padding: 4px;
  box-sizing: border-box;
}

._sectionTitle_1vui6_12 {
  font-size: 10px;
  color: var(--cb-text-tertiary, #aaa);
  font-weight: 500;
  padding: 4px 8px 2px;
  letter-spacing: 0.3px;
}

._recentExpertsList_1vui6_20 {
  display: flex;
  flex-direction: column;
  max-height: 240px;
  overflow-y: auto;
}

._expertItem_1vui6_27 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 8px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  border-radius: 4px;
  gap: 6px;
}
._expertItem_1vui6_27:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
}
._expertItem_1vui6_27._selected_1vui6_40 {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
}

._expertItemContent_1vui6_44 {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  flex: 1;
}

._checkIcon_1vui6_52 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--cb-primary-color, #6366f1);
  visibility: hidden;
}
._checkIcon_1vui6_52._visible_1vui6_62 {
  visibility: visible;
}
._checkIcon_1vui6_52 svg {
  width: 100%;
  height: 100%;
}

._avatar_1vui6_70 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  flex-shrink: 0;
  overflow: hidden;
  background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
}

._avatarImage_1vui6_82 {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

._avatarInitial_1vui6_88 {
  font-size: 9px;
  font-weight: 600;
  color: #ffffff;
  text-transform: uppercase;
  line-height: 1;
}

._expertInfo_1vui6_96 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1;
  gap: 0;
}

._expertProfession_1vui6_104 {
  font-size: 11px;
  font-weight: 500;
  line-height: 14px;
  color: var(--cb-text-primary, #1a1a1a);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._expertName_1vui6_114 {
  font-size: 10px;
  font-weight: 400;
  line-height: 12px;
  color: var(--cb-text-secondary, #999);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

._divider_1vui6_124 {
  height: 1px;
  background-color: var(--cb-border-color, #eee);
  margin: 2px 6px;
}

._summonOtherEntry_1vui6_130 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 8px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  border-radius: 4px;
  color: var(--cb-primary-color, #6366f1);
  font-size: 12px;
  font-weight: 500;
}
._summonOtherEntry_1vui6_130:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color, #f3f4f6);
}

._summonIcon_1vui6_146 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
._summonIcon_1vui6_146 svg {
  width: 14px;
  height: 14px;
}

._summonText_1vui6_159 {
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  color: inherit;
  white-space: nowrap;
}

._loadingState_1vui6_167 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 6px;
}

._loadingSpinner_1vui6_175 {
  width: 12px;
  height: 12px;
  border: 2px solid var(--cb-text-secondary, #858699);
  border-top-color: transparent;
  border-radius: 50%;
  animation: _spin_1vui6_1 0.8s linear infinite;
}

@keyframes _spin_1vui6_1 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
._loadingText_1vui6_192 {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
._dropdownRoot_1dmfm_2 {
  position: relative;
  height: 24px;
}

._trigger_1dmfm_7 {
  cursor: pointer;
  display: inline-flex;
  border: none;
  outline: none !important;
}
._trigger_1dmfm_7:focus, ._trigger_1dmfm_7:focus-visible, ._trigger_1dmfm_7:active {
  outline: none !important;
  box-shadow: none !important;
}

._menu_1dmfm_18 {
  position: absolute;
  z-index: 1000;
  border: 1px solid var(--cb-input-border-color, #e0e0e0);
  border-radius: 8px;
  background-color: var(--cb-dropdown-bg-color, #fff);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  /* 宽度自动展开 */
  width: auto;
  min-width: 160px;
  padding: 4px;
  outline: none;
}
._menu_1dmfm_18:focus, ._menu_1dmfm_18:focus-visible {
  outline: none;
}

._headerItem_1dmfm_35 {
  height: 24px;
  border-bottom: 1px solid var(--cb-border-color, #4C4F6B);
  margin-bottom: 4px;
}

._viewport_1dmfm_41 {
  border-radius: 8px;
  padding: 0;
}

._item_1dmfm_46 {
  display: block;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  background: transparent;
  /* 使用统一前景色，保证 dark 模式下的对比度 */
  color: var(--cb-text-primary, #ffffff);
  font-size: 13px;
  line-height: 18px;
  padding: 4px 8px;
  cursor: pointer;
  white-space: nowrap;
  font-weight: 400;
  font-family: "Inter", sans-serif;
  border-radius: 8px;
  transition: background-color 0.2s ease;
}
._item_1dmfm_46:hover {
  background-color: var(--cb-dropdown-item-hover-bg-color);
}
._item_1dmfm_46:focus, ._item_1dmfm_46:focus-visible {
  outline: none;
}

._disabled_1dmfm_72 {
  opacity: 0.5;
  cursor: not-allowed;
}._container_qeqjw_1 {
  position: relative;
  color: var(--cb-input-foreground, #d2d3e0);
  display: flex;
  flex-shrink: 0;
}

._popover_qeqjw_8 {
  min-width: 280px;
  width: 280px;
  border-radius: 16px;
  padding: 8px;
  max-height: 368px;
  border: 0.5px solid var(--cb-popover-border, #e5e5e5);
  box-shadow: var(--cb-shadow-popover);
  background: var(--cb-dropdown-bg-color);
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  z-index: 40;
  animation: _modelSelectPopIn_qeqjw_1 0.18s ease-out both;
}

@keyframes _modelSelectPopIn_qeqjw_1 {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
._popoverList_qeqjw_33 {
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  gap: 0;
  isolation: isolate;
}

._modelListContainer_qeqjw_41 {
  flex: 1 1 auto;
  min-height: 0;
  position: relative;
  z-index: 1;
  max-height: 312px;
  overflow-x: hidden;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0;
}
._modelListContainer_qeqjw_41._modelListAfterDivider_qeqjw_53 {
  border-top: 2px solid var(--cb-dropdown-bg-color, #ffffff);
}
._modelListContainer_qeqjw_41::-webkit-scrollbar {
  width: 4px;
}
._modelListContainer_qeqjw_41::-webkit-scrollbar-track {
  background: transparent;
}
._modelListContainer_qeqjw_41::-webkit-scrollbar-thumb {
  background-color: transparent;
  border-radius: 12px;
  transition: background-color 0.2s;
}
._modelListContainer_qeqjw_41:hover::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-thumb, #ebebeb);
}
._modelListContainer_qeqjw_41::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-scrollbar-thumb-hover, #dcdcdc);
}

._modelGroup_qeqjw_74 {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

._groupLabel_qeqjw_80 {
  position: sticky;
  top: 0;
  background: var(--cb-dropdown-bg-color, #ffffff);
  z-index: 2;
  padding: 0 8px !important;
  min-height: 28px;
  line-height: 16px;
  display: flex !important;
  align-items: center;
  gap: 8px;
}

._groupLabelText_qeqjw_93 {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  font-weight: 400;
}

._trigger_qeqjw_99 {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 8px;
  gap: 2px;
  background: transparent;
  border: none;
  border-radius: 8px;
  color: var(--chat-input-area-header-font-color);
  cursor: pointer;
  text-wrap: nowrap;
  font-size: 13px;
  min-width: 0;
  outline: none !important;
}
._trigger_qeqjw_99:hover {
  background-color: var(--cb-icon-button-hover-background, var(--cb-gray-color, rgba(204, 204, 204, 0.1)));
}
._trigger_qeqjw_99:focus, ._trigger_qeqjw_99:focus-visible, ._trigger_qeqjw_99:active {
  outline: none !important;
  box-shadow: none !important;
}
._trigger_qeqjw_99 ._modelIcon_qeqjw_122 {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 4px;
}
._trigger_qeqjw_99 ._modelIcon_qeqjw_122 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
._trigger_qeqjw_99 ._modelIcon_qeqjw_122 svg {
  width: 100%;
  height: 100%;
}
._trigger_qeqjw_99 ._triggerLeft_qeqjw_141 {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
}

._triggerLabel_qeqjw_149 {
  display: block;
  white-space: nowrap;
}

._triggerArrow_qeqjw_154 {
  flex-shrink: 0;
  transition: transform 0.42s cubic-bezier(0.25, 0.8, 0.3, 1);
  transform-origin: center;
}

._triggerOpen_qeqjw_160 {
  background-color: var(--cb-icon-button-hover-background, var(--cb-gray-color, rgba(204, 204, 204, 0.1)));
}
._triggerOpen_qeqjw_160 ._triggerArrow_qeqjw_154 {
  transform: rotate(180deg);
}

._triggerCompact_qeqjw_167 {
  gap: 0;
  border-radius: 50%;
}
._triggerCompact_qeqjw_167 ._triggerLabel_qeqjw_149,
._triggerCompact_qeqjw_167 ._triggerArrow_qeqjw_154 {
  display: none;
}

._unselected_qeqjw_176:after {
  content: "";
  display: block;
  width: 12px;
}

._autoModeSection_qeqjw_182 {
  flex-shrink: 0;
  padding: 0 8px;
  line-height: 20px;
  position: relative;
  z-index: 2;
  background: var(--cb-dropdown-bg-color, #ffffff);
}
._autoModeSection_qeqjw_182._lastSection_qeqjw_190 {
  padding-bottom: 8px;
  border-bottom: 1px solid var(--cb-popover-divider, #f2f2f2);
}

._autoModeItem_qeqjw_195 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 32px;
}

._autoModeLeft_qeqjw_202 {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 18px;
}

._autoModeIcon_qeqjw_209 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, #858699);
}

._autoModeLabel_qeqjw_219 {
  font-size: 13px;
  color: var(--chat-input-area-header-font-color);
  white-space: nowrap;
  user-select: none;
  font-weight: 500;
}

._autoModeMessage_qeqjw_227 {
  font-size: 11px;
  color: var(--chat-input-area-header-font-color);
  opacity: 0.7;
  line-height: 1.4;
  font-style: italic;
  margin-top: 8px;
}

._switch_qeqjw_236 {
  position: relative;
  display: inline-block;
  width: 26px;
  height: 16px;
  flex-shrink: 0;
}
._switch_qeqjw_236 input {
  opacity: 0;
  width: 0;
  height: 0;
}
._switch_qeqjw_236 input:checked + ._slider_qeqjw_248 {
  background-color: var(--cb-switch-active-bg, #00b96b);
}
._switch_qeqjw_236 input:checked + ._slider_qeqjw_248:before {
  transform: translateX(10px);
}
._switch_qeqjw_236 input:focus + ._slider_qeqjw_248 {
  box-shadow: 0 0 1px var(--cb-switch-active-bg, #00b96b);
}

._slider_qeqjw_248 {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--cb-switch-bg, #e5e5e5);
  border: none;
  transition: 0.3s;
  border-radius: 12px;
}
._slider_qeqjw_248:before {
  position: absolute;
  content: "";
  height: 12px;
  width: 12px;
  left: 2px;
  top: 2px;
  background-color: white;
  transition: 0.3s;
  border-radius: 50%;
}

._levelBadge_qeqjw_282 {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 11px;
  padding: 1px 4px;
  border-radius: 3px;
  color: var(--cb-text-secondary);
  border: 1px solid var(--cb-border-color, rgba(255, 255, 255, 0.15));
}

._lockIcon_qeqjw_293 {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  display: inline-block;
}._modelItem_13ko7_1 {
  height: 32px !important;
  min-height: 32px;
  align-items: center;
  border-radius: 8px;
  padding: 0 8px !important;
  gap: 2px;
  padding-top: 3px !important;
  padding-bottom: 3px !important;
}
._modelItem_13ko7_1 ._modelName_13ko7_11 {
  color: var(--cb-list-item-selected-foreground, #ffffff);
}
._modelItem_13ko7_1:hover:not(._disabled_13ko7_14) {
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.08)) !important;
}
._modelItem_13ko7_1._disabled_13ko7_14 {
  opacity: 0.5;
  cursor: not-allowed;
}
._modelItem_13ko7_1._disabled_13ko7_14 ._modelName_13ko7_11 {
  color: var(--cb-text-secondary, #858699);
}
._modelItem_13ko7_1._disabled_13ko7_14 ._modelIcon_13ko7_24 {
  opacity: 0.4;
}
._modelItem_13ko7_1._disabled_13ko7_14:hover {
  background-color: transparent !important;
}
._modelItem_13ko7_1._disabled_13ko7_14:hover ._modelName_13ko7_11 {
  color: var(--cb-text-secondary, #858699);
}
._modelItem_13ko7_1._disabled_13ko7_14:hover ._modelIcon_13ko7_24 {
  opacity: 0.8;
}

._modelContent_13ko7_37 {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 6px;
}

._modelInfo_13ko7_44 {
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 1;
  min-width: 0;
}

._modelInfo_13ko7_44 ._modelIcon_13ko7_24 {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
  overflow: hidden;
  border-radius: 4px;
}
._modelInfo_13ko7_44 ._modelIcon_13ko7_24 img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
._modelInfo_13ko7_44 ._modelIcon_13ko7_24 svg {
  width: 16px;
  height: 16px;
}

._modelItem_13ko7_1 ._modelIcon_13ko7_24 {
  opacity: 1;
}

._modelText_13ko7_77 {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 6px;
  flex: 1;
  min-width: 0;
}

._modelName_13ko7_11 {
  line-height: 18px;
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.2s ease;
  flex-shrink: 1;
}

._thinkingSummary_13ko7_96 {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  height: 18px;
  padding: 0 6px;
  flex-shrink: 0;
  border-radius: 4px;
  background: var(--cb-hover-bg, rgba(255, 255, 255, 0.06));
  color: var(--cb-text-secondary, #858699);
  line-height: 16px;
}
._thinkingSummary_13ko7_96 svg {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

._thinkingEffortLabel_13ko7_114 {
  font-size: 11px;
  line-height: 16px;
  white-space: nowrap;
  font-weight: 500;
}

._modelCredits_13ko7_121 {
  flex-shrink: 0;
  min-width: 5ch;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
  line-height: 14px;
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

._modelBadge_13ko7_132 {
  display: inline-flex;
  align-items: center;
  height: 16px;
  padding: 0 6px;
  border-radius: 4px;
  font-size: 10px;
  line-height: 16px;
  font-weight: 600;
  letter-spacing: 0.2px;
  white-space: nowrap;
  flex-shrink: 0;
}

._checkIcon_13ko7_146 {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--cb-green-color, #00b96b);
}

._modelCheckSlot_13ko7_153 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--cb-green-color, #00b96b);
}
._modelCheckSlot_13ko7_153 svg {
  width: 14px;
  height: 14px;
}

._modelActions_13ko7_167 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  flex-shrink: 0;
  min-width: calc(4ch + 4px);
}

._actionButton_13ko7_176 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 2px;
  cursor: pointer;
  color: var(--cb-input-foreground, #d2d3e0);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s, background-color 0.2s;
}
._actionButton_13ko7_176:hover {
  opacity: 1;
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.1));
}
._actionButton_13ko7_176:active {
  opacity: 0.8;
}
._actionButton_13ko7_176:focus-visible {
  opacity: 1;
  pointer-events: auto;
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.1));
  outline: 1px solid var(--cb-green-color, #00b96b);
  outline-offset: 1px;
}
._actionButton_13ko7_176 ._modelIcon_13ko7_24 {
  width: 14px;
  height: 14px;
}

._modelItem_13ko7_1:hover ._actionButton_13ko7_176,
._modelItem_13ko7_1:focus-within ._actionButton_13ko7_176,
._modelItem_13ko7_1:hover ._reasoningEditButton_13ko7_213,
._modelItem_13ko7_1:focus-within ._reasoningEditButton_13ko7_213 {
  opacity: 1;
  pointer-events: auto;
}

._modelDescription_13ko7_219 {
  padding: 0;
  max-width: 180px;
}

._modelDescriptionTitle_13ko7_224 {
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
  margin-bottom: 4px;
  padding: 4px 8px 0 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._modelDescriptionText_13ko7_236 {
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  padding: 0 8px 4px 8px;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: break-word;
}

._modelDescriptionTextError_13ko7_247 {
  color: var(--cb-error-color, #D7432E);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  padding: 0 8px 4px 8px;
}

._footerActionSection_13ko7_255 {
  flex-shrink: 0;
  padding: 8px 0 0;
  margin-top: 0;
  border-top: 1px solid var(--cb-popover-divider, #f2f2f2);
}

._footerActionItem_13ko7_262 {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
  cursor: pointer;
  user-select: none;
  color: var(--cb-text-primary, #d2d3e0);
}
._footerActionItem_13ko7_262:hover {
  background: var(--cb-hover-bg, rgba(255, 255, 255, 0.08));
}
._footerActionItem_13ko7_262:focus-visible {
  outline: 2px solid var(--cb-input-active-border, #00b96b);
  outline-offset: -2px;
}

._footerActionIcon_13ko7_281 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, #858699);
}

._footerActionLabel_13ko7_291 {
  font-size: 13px;
  line-height: 22px;
  color: inherit;
}

._modelDescriptionActionLink_13ko7_297 {
  margin-top: 4px;
}

._actionLinkButton_13ko7_301 {
  color: var(--vscode-textLink-foreground);
  padding: 0;
  margin: 0;
  text-decoration: underline;
  cursor: pointer;
  font-size: 12px;
  line-height: 18px;
  font-family: inherit;
  text-align: left;
}
._actionLinkButton_13ko7_301:hover {
  text-decoration: underline;
}
._actionLinkButton_13ko7_301:focus {
  outline: none;
}

._modelDescriptionDivider_13ko7_319 {
  height: 1px;
  background: var(--cb-border, rgba(255, 255, 255, 0.1));
  margin-bottom: 4px;
}

._modelDescriptionCapabilitiesHeader_13ko7_325 {
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  font-weight: 400;
  line-height: 16px;
  margin-bottom: 4px;
  padding: 0 8px;
}

._modelDescriptionCapabilities_13ko7_325 {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 0 8px 4px 8px;
}

._modelDescriptionCapability_13ko7_341 {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}
._modelDescriptionCapability_13ko7_341 svg {
  color: var(--cb-green-color, #00b96b);
  flex-shrink: 0;
}
/**
 * ModelSubMenu 样式 — 二级菜单 + 三级面板（按设计稿 15622:390 / 15669:706）
 *
 * 二级菜单：240px 宽，模型名+企业版徽章+描述+消耗速度+深度思考(→)+上下文窗口(→)
 * 三级面板：240px 宽，复用 .subMenuPanel + .panelItem 系列
 */
/* ========== 二级菜单容器 ========== */
._subMenu_gtbqm_6 {
  width: 240px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: var(--cb-dropdown-bg-color);
  border-radius: 16px;
  border: 0.5px solid var(--cb-popover-border);
  box-shadow: var(--cb-shadow-popover);
  z-index: 60;
}

/* 头部块（模型名 + 描述） */
._headerSection_gtbqm_23 {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 4px 8px;
}

._header_gtbqm_23 {
  display: flex;
  align-items: center;
  gap: 6px;
}

._modelName_gtbqm_36 {
  font-size: 14px;
  font-weight: 500;
  color: var(--cb-text-primary, #d2d3e0);
  line-height: 22px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 企业版徽章：金色（参考设计稿 #DEB169） */
._enterpriseBadge_gtbqm_47 {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 11px;
  line-height: 20px;
  color: #DEB169;
  flex-shrink: 0;
}

._enterpriseIcon_gtbqm_57 {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}

/* 描述（双行） */
._description_gtbqm_64 {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-secondary, #858699);
}

._externalHint_gtbqm_70 {
  align-self: flex-start;
  height: 16px;
  padding: 0 4px;
  border-radius: 4px;
  background: var(--cb-hover-bg, rgba(0, 0, 0, 0.05));
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  line-height: 16px;
  white-space: nowrap;
}

/* 分割线 */
._divider_gtbqm_83 {
  height: 1px;
  background: var(--cb-popover-divider);
  margin: 0;
}

/* 消耗速度行（不可点击） */
._metaRow_gtbqm_90 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
}

._metaLabel_gtbqm_99 {
  font-size: 13px;
  color: var(--cb-text-primary, #d2d3e0);
}

._metaValue_gtbqm_104 {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}

/* 可点击行（深度思考 / 上下文窗口）— 右侧值 + chevron */
._actionRow_gtbqm_110 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
  cursor: default;
}

._actionRowClickable_gtbqm_120 {
  cursor: pointer;
}
._actionRowClickable_gtbqm_120:hover {
  background: var(--cb-hover-bg);
}

._actionLabel_gtbqm_127 {
  font-size: 13px;
  color: var(--cb-text-primary, #d2d3e0);
}

._actionValue_gtbqm_132 {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}

._actionValueText_gtbqm_140 {
  white-space: nowrap;
}

._chevron_gtbqm_144 {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, rgba(255, 255, 255, 0.4));
}

/* ========== 三级菜单面板 ========== */
._subMenuPanel_gtbqm_6 {
  width: 240px;
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  background: var(--cb-dropdown-bg-color);
  border-radius: 16px;
  border: 0.5px solid var(--cb-popover-border);
  box-shadow: var(--cb-shadow-popover);
  z-index: 70;
}

/* 三级深度思考头部行（标题 + 开关） */
._panelToggleRow_gtbqm_166 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 32px;
  padding: 0 8px;
}

._panelToggleLabel_gtbqm_174 {
  font-size: 13px;
  color: var(--cb-text-primary, #d2d3e0);
}

/* 三级小标题（"思考强度"） */
._panelSectionLabel_gtbqm_180 {
  font-size: 12px;
  color: var(--cb-text-tertiary, rgba(255, 255, 255, 0.4));
  padding: 4px 8px;
  line-height: 20px;
}

/* 三级列表项 */
._panelItem_gtbqm_6 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
  font-size: 13px;
  color: var(--cb-text-primary, #d2d3e0);
  cursor: pointer;
}
._panelItem_gtbqm_6:hover {
  background: var(--cb-hover-bg);
}

._panelItemActive_gtbqm_203 {
  font-weight: 500;
  background: var(--cb-list-item-active-bg);
}

._panelItemDisabled_gtbqm_208 {
  opacity: 0.4;
  cursor: not-allowed;
}
._panelItemDisabled_gtbqm_208:hover {
  background: transparent;
}

._checkSlot_gtbqm_216 {
  display: flex;
  align-items: center;
  color: var(--cb-success-color, #00c29a);
}
._checkSlot_gtbqm_216 svg {
  width: 14px;
  height: 14px;
}

/* ========== Toggle Switch ========== */
._switch_gtbqm_227 {
  position: relative;
  display: inline-block;
  width: 28px;
  height: 16px;
  flex-shrink: 0;
}
._switch_gtbqm_227 input {
  opacity: 0;
  width: 0;
  height: 0;
}
._switch_gtbqm_227 input:checked + ._slider_gtbqm_239 {
  background-color: var(--cb-switch-active-bg, #00b96b);
}
._switch_gtbqm_227 input:checked + ._slider_gtbqm_239:before {
  transform: translateX(12px);
}

._slider_gtbqm_239 {
  position: absolute;
  cursor: pointer;
  inset: 0;
  background-color: var(--cb-switch-bg, #3a3a3a);
  border-radius: 16px;
  transition: 0.2s;
}
._slider_gtbqm_239:before {
  position: absolute;
  content: "";
  height: 12px;
  width: 12px;
  left: 2px;
  bottom: 2px;
  background-color: var(--cb-switch-thumb-bg);
  transition: 0.2s;
  border-radius: 50%;
}

/* ========== 运营活动（Issue #57623） ========== */
/* 消耗速度行折扣展示：原价划线弱化 + 折后价高亮 */
._creditsOriginal_gtbqm_268 {
  margin-right: 6px;
  color: var(--cb-text-tertiary, rgba(255, 255, 255, 0.4));
  text-decoration: line-through;
}

._creditsDiscounted_gtbqm_274 {
  color: var(--cb-text-highlight, #1e90ff);
  font-weight: 500;
}

/* 底部活动说明 + CTA */
._promotionFooter_gtbqm_280 {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 4px;
  padding: 4px 8px;
}

._promotionFooterText_gtbqm_288 {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-secondary, #858699);
}

._promotionFooterAction_gtbqm_294 {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-highlight, #1e90ff);
  cursor: pointer;
  white-space: nowrap;
}
._promotionFooterAction_gtbqm_294:hover {
  text-decoration: underline;
}._container_1ljyg_1 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 6px 0 0;
  background: transparent;
}

._rightSlot_1ljyg_9 {
  font-size: 11px;
  color: var(--cb-text-quaternary, #999);
  line-height: 1.4;
  flex-shrink: 0;
}

/* Pill button base style */
._pill_1ljyg_17 {
  display: flex;
  align-items: center;
  gap: 2px;
  padding: 4px;
  border-radius: 4px;
  cursor: pointer;
  font-size: 12px;
  line-height: 20px;
  height: 24px;
  border: none;
  background: transparent;
  color: var(--cb-text-primary, #ebebef);
  outline: none !important;
  transition: all 0.2s;
  white-space: nowrap;
  flex-shrink: 0;
}
._pill_1ljyg_17:hover {
  background: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
}
._pill_1ljyg_17:focus, ._pill_1ljyg_17:focus-visible, ._pill_1ljyg_17:active {
  outline: none !important;
  box-shadow: none !important;
}

._pillIcon_1ljyg_43 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
._pillIcon_1ljyg_43 svg {
  width: 100%;
  height: 100%;
}

._pillLabel_1ljyg_56 {
  white-space: nowrap;
}

._pillArrow_1ljyg_60 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

._pillCompact_1ljyg_66 {
  gap: 0;
  padding: 4px;
  border-radius: 50%;
}
._pillCompact_1ljyg_66 ._pillLabel_1ljyg_56,
._pillCompact_1ljyg_66 ._pillArrow_1ljyg_60 {
  display: none;
}

/* Color variants */
._pillDefault_1ljyg_77 ._pillIcon_1ljyg_43 {
  color: var(--cb-text-primary, #ebebef);
}

._pillDanger_1ljyg_81 {
  color: var(--cb-error-foreground, #f14c4c);
}
._pillDanger_1ljyg_81 ._pillIcon_1ljyg_43 {
  color: var(--cb-error-foreground, #f14c4c);
}

/* Dropdown item layout */
._dropdownItem_1ljyg_89 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._dropdownItemCheck_1ljyg_95 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--cb-text-primary, #fff);
}
._dropdownItemCheck_1ljyg_95 svg {
  width: 100%;
  height: 100%;
}

._dropdownItemIcon_1ljyg_109 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
._dropdownItemIcon_1ljyg_109 svg {
  width: 100%;
  height: 100%;
}

._dropdownItemDanger_1ljyg_122 {
  color: var(--cb-error-foreground, #f14c4c);
}

/* Tooltip styles */
._tooltipContent_1ljyg_127 {
  padding: 8px 12px;
  text-align: left;
}

._tooltipTitle_1ljyg_132 {
  font-size: 12px;
  font-weight: 600;
  color: var(--cb-text-primary, #ebebef);
  margin-bottom: 6px;
}

._tooltipList_1ljyg_139 {
  margin: 0;
  padding: 0 0 0 16px;
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-secondary, #858699);
}
._tooltipList_1ljyg_139 li {
  margin-bottom: 2px;
}
._tooltipList_1ljyg_139 li:last-child {
  margin-bottom: 0;
}

/* Confirm dialog styles */
._confirmTitleWrapper_1ljyg_154 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._confirmTitleIcon_1ljyg_160 {
  color: var(--cb-permission-danger, #e74c3c);
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

._confirmContent_1ljyg_167 {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

._confirmDesc_1ljyg_173 {
  margin: 0;
  font-size: 13px;
  line-height: 20px;
  color: var(--cb-text-secondary, #858699);
}
._confirmDesc_1ljyg_173 p {
  margin: 0;
}

._confirmCheckbox_1ljyg_183 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--cb-text-primary, #ebebef);
  cursor: pointer;
}
._confirmCheckbox_1ljyg_183 input[type=checkbox] {
  width: 16px;
  height: 16px;
  cursor: pointer;
  accent-color: #000;
}._container_d5uvg_1 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--cb-input-foreground, #d2d3e0);
}

._label_d5uvg_9 {
  user-select: none;
}

._switch_d5uvg_13 {
  position: relative;
  display: inline-block;
  width: 28px;
  height: 16px;
}

._switch_d5uvg_13 input {
  opacity: 0;
  width: 0;
  height: 0;
}

._slider_d5uvg_26 {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--cb-toggle-inactive-bg, #555);
  transition: 0.3s;
  border-radius: 16px;
}

._slider_d5uvg_26:before {
  position: absolute;
  content: "";
  height: 12px;
  width: 12px;
  left: 2px;
  bottom: 2px;
  background-color: var(--cb-toggle-slider-color, white);
  transition: 0.3s;
  border-radius: 50%;
}

input:checked + ._slider_d5uvg_26 {
  background-color: var(--cb-button-primary, #6c4dff);
}

input:checked + ._slider_d5uvg_26:before {
  transform: translateX(12px);
}._container_gebz0_1 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0 0;
  background: transparent;
}

._left_gebz0_9 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

._right_gebz0_16 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: auto;
  min-width: 0;
}

._description_gebz0_24 {
  font-size: 12px;
  line-height: 18px;
  color: var(--cb-text-tertiary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

/* Pill button base style (matches ModeSelector pattern) */
._pill_gebz0_35 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 3px;
  cursor: pointer;
  font-size: 12px;
  line-height: 20px;
  height: 24px;
  border: none;
  background: var(--cb-gray-color, rgba(204, 204, 204, 0.1));
  color: var(--cb-text-primary, #ebebef);
  outline: none !important;
  transition: all 0.2s;
  white-space: nowrap;
  flex-shrink: 0;
}
._pill_gebz0_35:hover {
  background: var(--cb-icon-button-hover-background, rgba(255, 255, 255, 0.1));
}
._pill_gebz0_35:focus, ._pill_gebz0_35:focus-visible, ._pill_gebz0_35:active {
  outline: none !important;
  box-shadow: none !important;
}

._pillIcon_gebz0_61 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
._pillIcon_gebz0_61 svg {
  width: 100%;
  height: 100%;
}

._pillLabel_gebz0_74 {
  white-space: nowrap;
}

._pillArrow_gebz0_78 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

/* Color variants */
._permDefault_gebz0_85 ._pillIcon_gebz0_61 {
  color: var(--cb-text-primary, #ebebef);
}

._permFullAccess_gebz0_89 {
  color: var(--cb-error-foreground, #f14c4c);
}
._permFullAccess_gebz0_89 ._pillIcon_gebz0_61 {
  color: var(--cb-error-foreground, #f14c4c);
}

._envSandbox_gebz0_96 ._pillIcon_gebz0_61 {
  color: var(--cb-text-secondary, #858699);
}

._envLocal_gebz0_100 {
  color: var(--cb-warning, #f59e0b);
}
._envLocal_gebz0_100 ._pillIcon_gebz0_61 {
  color: var(--cb-warning, #f59e0b);
}

/* Dropdown menu item layout */
._dropdownItem_gebz0_108 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._dropdownItemCheck_gebz0_114 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--cb-text-primary, #fff);
}
._dropdownItemCheck_gebz0_114 svg {
  width: 100%;
  height: 100%;
}
/*
 * InterceptCard 样式 — 还原 ardot 设计稿（FrameID 11319:132）
 * 色值优先复用 cb token（光暗主题自适配），无对应 token 时用 hex 兜底。
 * 设计稿是 light 主题：gray/3 = #F2F2F2 在 dark 下由 --cb-bg-secondary token 自适配为深灰。
 *
 * 局部主题 token（--ic-*）：
 *   设计稿 light 真值（卡片白底 / #f2f2f2 选中底 / 高风险红 / 中风险橙）在 cb-chat-ui 全局
 *   token 表里没有对应项，且这些色只在 InterceptCard 用，没必要污染全局 _theme-{dark,light}.scss。
 *   做法：在本文件内声明 --ic-* 局部 token，dark 作默认值（cb-chat-ui 默认 dark），light 通过
 *   :global(.light)/(.cb-light) 覆盖。所有业务样式只引用 var(--ic-xxx)，不再出现裸 hex。
 *   命名前缀 --ic- = intercept-card 缩写，规避与 --cb-/--wb-/--vscode- 冲突。
 */
/* dark 默认值（包含 :root，覆盖宿主未挂主题类名的 fallback 场景） */
:root,
.dark,
.cb-dark {
  /* 卡片底：dark 下采用与 cb 卡片色板同档的深底 */
  --ic-card-bg: #181b20;
  /* 选项选中底：参考 --cb-list-item-selected-bg dark 档 */
  --ic-option-selected-bg: #343841;
  /* 选中徽章底：在选中底之上再亮一档，避免徽章融进底色 */
  --ic-option-index-active-bg: #3a3d45;
  /* 高风险红：dark 下提亮饱和度保证对比度（设计稿 light = #b42c3f） */
  --ic-risk-high: #ff6b7a;
  /* 中风险橙：dark 下提亮（设计稿 light = #c04100） */
  --ic-risk-medium: #ff9550;
}

/* light 覆盖 — 完全沿用 ardot 设计稿真值 */
.light,
.cb-light {
  --ic-card-bg: #ffffff;
  --ic-option-selected-bg: #f2f2f2;
  --ic-option-index-active-bg: #ffffff;
  --ic-risk-high: #b42c3f; /* ardot 11353:1 fill: rgb(0.7059, 0.1725, 0.2471) */
  --ic-risk-medium: #c04100; /* ardot 11353:119 fill: rgb(0.7529, 0.2549, 0) */
}

._container_198p3_40 {
  display: flex;
  flex-direction: column;
  padding-bottom: 16px;
  border: 1px solid var(--cb-border, #e6e6e6);
  border-radius: 24px;
  /* 设计稿 light 白底；dark 下走 --ic-card-bg 深底（见文件顶部 token 声明） */
  background: var(--ic-card-bg);
  /* 设计稿双层阴影 — 无对应 token，hex 兜底 */
  box-shadow: 0px 6px 12px -8px rgba(0, 0, 0, 0.02), 0px 2px 4px -4px rgba(0, 0, 0, 0.03);
}

/* Header: 主标题 + 灰色描述（两行垂直布局，参考设计稿 Frame 11319:149 VERTICAL itemSpacing 4） */
._header_198p3_53 {
  display: flex;
  flex-direction: column;
  padding: 20px 20px 8px;
  gap: 4px;
  /* 防止子元素 margin 溢出 */
  overflow: hidden;
}

/*
 * 主标题行 — 还原 ardot 11353:32：
 * layoutMode HORIZONTAL / itemSpacing 4 / 子节点 layoutAlign AUTO（按内容宽度，不拉伸）。
 * 因此主标题 **不 flex:1**，而是按文本自然宽度，风险文本紧贴在主标题右侧 gap=4px。
 * align-items: baseline 让两段不同字号文字在文字基线上对齐（设计稿里风险文本 y=1 微调）。
 */
._titleRow_198p3_68 {
  display: flex;
  align-items: baseline;
  gap: 4px;
  /* 允许整行收窄；主标题超长时由其自身省略 */
  min-width: 0;
  /* 标题与风险文本应同行；超出容器时优先省略主标题，保留风险文本可见 */
  flex-wrap: nowrap;
}

._title_198p3_68 {
  /* 与风险文本共享水平空间：主标题最长可占满，剩余给风险文本；空间不够时省略主标题。 */
  min-width: 0;
  flex-shrink: 1;
  font-size: 16px;
  font-weight: 500;
  line-height: 25px;
  color: var(--cb-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*
 * 风险文本 — 还原 ardot 11353:1（高风险）/ 11353:119（中风险）：
 * 纯文字内联，**无背景 / 无 padding / 无圆角**；紧跟主标题右侧 gap 4px。
 * 12px / PingFang SC Medium / line-height 20px；颜色按风险档分两档（设计稿真值）。
 */
._riskText_198p3_96 {
  flex-shrink: 0;
  display: inline-block;
  margin-left: 4px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  white-space: nowrap;
  /* 长文本兜底省略（极端情况，正常文案在设计稿里都能整行展示） */
  max-width: 320px;
  overflow: hidden;
  text-overflow: ellipsis;
}

._riskText--high_198p3_110 {
  /* light = ardot 11353:1（#b42c3f）；dark 用提亮版本，见文件顶部 token */
  color: var(--ic-risk-high);
}

._riskText--medium_198p3_115 {
  /* light = ardot 11353:119（#c04100）；dark 用提亮版本，见文件顶部 token */
  color: var(--ic-risk-medium);
}

._riskText--low_198p3_120 {
  /* 设计稿未给出 low 档，沿用次要文本色（保持视觉层级，不抢眼） */
  color: var(--cb-text-secondary, #595959);
}

._commandInline_198p3_125 {
  /* 描述行整体 */
  display: block;
  font-size: 14px;
  font-weight: 400;
  line-height: 28px;
  color: var(--cb-text-tertiary);
  /* 单行省略，hover 通过 title 看完整命令 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

/* Option list */
._optionList_198p3_140 {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 0 12px;
}

._optionItem_198p3_147 {
  all: unset;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 8px;
  /* hover/选中态的灰底需要圆角，避免 48px 高的方块视觉太硬 */
  border-radius: 12px;
  cursor: pointer;
  color: var(--cb-text-primary);
  transition: background 0.15s;
  /* 选项之间的 1px 分隔线 — 设计稿 stroke #F2F2F2。
   * 用伪元素绘制（不占布局高度，hover/选中背景能自然盖住），
   * 配合 z-index: 1 让选中/hover 行的背景层级更高，与设计稿
   * VECTOR Rectangle 1329138099 (y=-1, h=49 跨出行边界盖住分隔线) 视觉等价。 */
}
._optionItem_198p3_147:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 12px;
  right: 12px;
  height: 1px;
  background: var(--cb-border-subtle, #f2f2f2);
  z-index: 0;
}
._optionItem_198p3_147:hover:not(:disabled) {
  background: var(--cb-hover-bg, rgba(0, 0, 0, 0.04));
  z-index: 1;
}
._optionItem_198p3_147:disabled {
  cursor: default;
}

._optionSelected_198p3_184 {
  /* 选中态背景：light = 设计稿 #F2F2F2，dark = 深灰，见文件顶部 token */
  background: var(--ic-option-selected-bg);
  /* 选中行 z-index 提升，让 8px 圆角背景压在相邻 1px 分隔线上方 */
  z-index: 1;
}
._optionSelected_198p3_184:hover:not(:disabled) {
  background: var(--ic-option-selected-bg);
}

/* 序号徽章：24×24 圆角矩形，未选中灰底，选中白底 */
._optionIndex_198p3_195 {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: var(--cb-bg-secondary, #f2f2f2);
  color: var(--cb-text-primary);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  transition: background 0.15s;
}

/* 选中态：徽章背景切换为亮档（与外层选中底形成反差） */
._optionIndexSelected_198p3_212 {
  background: var(--ic-option-index-active-bg);
}

/* hover 态下徽章也切换为亮档（与 hover 底反差，视觉与选中态一致） */
._optionItem_198p3_147:hover:not(:disabled) ._optionIndex_198p3_195 {
  background: var(--ic-option-index-active-bg);
}

._optionLabel_198p3_221 {
  flex: 1;
  font-size: 14px;
  font-weight: 500;
  line-height: 22px;
  color: var(--cb-text-primary);
  /* 长文本省略，避免破坏 48px 行高 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

/* 行右侧 › 箭头（提交触发提示） — 默认隐藏，hover/选中时显示
 * 注：直接挂在 RightArrowSubmitIcon 的 <svg> 上（无 wrapper span），
 * 因此用 inline-block + vertical-align 控制对齐，避免 svg 基线对齐导致的视觉偏移。
 */
._optionArrow_198p3_238 {
  flex-shrink: 0;
  display: inline-block;
  width: 16px;
  height: 16px;
  /* 与 question-floating 单选题箭头视觉对齐：
   * 那边用 --cb-question-floating-text-secondary（light rgba(0,0,0,0.7) / dark rgba(255,255,255,0.65)），
   * 这边对齐到同档的 --cb-text-secondary（light #666 / dark #858699）。
   * 之前用 tertiary 比 secondary 更浅一档，肉眼看明显偏淡。 */
  color: var(--cb-text-secondary);
  vertical-align: middle;
  opacity: 0;
  transition: opacity 0.15s;
}

/* hover 时显示 ›（与行灰底同时出现） */
._optionItem_198p3_147:hover:not(:disabled) ._optionArrow_198p3_238,
._optionSelected_198p3_184 ._optionArrow_198p3_238 {
  opacity: 1;
}
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes _cb-shining-text-sweep_opd8h_1 {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
._cb-shining-text_opd8h_48 {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_opd8h_1 2.2s linear infinite;
}

._assistantReasoning_opd8h_60 {
  margin: 0;
  padding: 2px 0;
  font-size: 12px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
}
._assistantReasoning_opd8h_60._collapse_opd8h_70 ._assistantReasoningIcon_opd8h_70 {
  transform: rotate(-90deg);
  opacity: 0;
}
._assistantReasoning_opd8h_60._collapse_opd8h_70 ._assistantReasoningHeader_opd8h_74:hover ._assistantReasoningIcon_opd8h_70 {
  opacity: 1;
}
._assistantReasoning_opd8h_60._collapse_opd8h_70 ._assistantReasoningContent_opd8h_77 {
  display: none;
}
._assistantReasoning_opd8h_60._complete_opd8h_80 ._assistantReasoningContent_opd8h_77 {
  background: none;
  background-clip: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: unset;
}
._assistantReasoning_opd8h_60 ._assistantReasoningHeader_opd8h_74:not(._loadingText_opd8h_86):hover {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}

._assistantReasoningHeader_opd8h_74 {
  display: flex;
  align-items: center;
  margin: 0;
  padding-bottom: 0;
  gap: 4px;
  font-size: 14px;
  line-height: 1.75;
  transition: color 0.16s ease;
}
._assistantReasoningHeader_opd8h_74._loadingText_opd8h_86 {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: _cb-shining-text-sweep_opd8h_1 2.2s linear infinite;
}

._assistantReasoningIcon_opd8h_70 {
  transition: transform 0.2s ease, color 0.16s ease, opacity 0.16s ease;
  opacity: 1;
}

._assistantReasoningContent_opd8h_77 {
  color: var(--cb-text-primary, #d2d3e0);
  padding: 2px 0 0 12px;
  border-left: 4px solid var(--cb-reasoning-border-color, #EBEBEB);
  line-height: 20px;
  max-height: 200px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-scrollbar-thumb, #888) transparent;
  background: linear-gradient(180deg, var(--cb-text-primary, #d2d3e0) 20%, var(--cb-text-tertiary, #a0a0a0) 80%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-attachment: local;
}
._assistantReasoningContent_opd8h_77::-webkit-scrollbar {
  width: 6px;
}
._assistantReasoningContent_opd8h_77::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-thumb, #888);
  border-radius: 3px;
}
._assistantReasoningContent_opd8h_77::-webkit-scrollbar-track {
  background-color: transparent;
}
._assistantReasoningContent_opd8h_77 pre,
._assistantReasoningContent_opd8h_77 code,
._assistantReasoningContent_opd8h_77 .hljs,
._assistantReasoningContent_opd8h_77 [class^="hljs-"] {
  -webkit-text-fill-color: initial;
  background-clip: initial;
  -webkit-background-clip: initial;
}
/**
 * 默认工具渲染器样式
 * 与 chat-ui 保持一致的样式风格
 */
.default-tool-title {
  display: flex;
  align-items: center;
  gap: 8px;
}
.default-tool-title .tool-name {
  font-weight: 500;
  color: var(--cb-text-primary, #d2d3e0);
}
.default-tool-title .tool-status {
  font-size: 12px;
  padding: 2px 8px;
  border-radius: 3px;
  background-color: var(--cb-success-bg, rgba(16, 185, 129, 0.1));
  color: var(--cb-success-color, #10b981);
}
.default-tool-title .tool-status.error {
  background-color: var(--cb-error-bg, rgba(239, 68, 68, 0.1));
  color: var(--cb-text-error-active, #B42C3F);
}

.default-tool-details {
  padding: 12px;
  background: var(--cb-bg-primary-active, #F2F2F2);
  border-radius: 4px;
}
.default-tool-details .detail-section:not(:last-child) {
  margin-bottom: 12px;
}
.default-tool-details .detail-section .detail-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--cb-text-secondary, #6b7280);
  margin-bottom: 6px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.default-tool-details .detail-section .detail-content {
  font-family: "SF Mono", "Monaco", "Inconsolata", "Fira Code", "Droid Sans Mono", "Source Code Pro", monospace;
  font-size: 12px;
  line-height: 1.5;
  padding: 8px 12px;
  background-color: var(--cb-code-bg, #f5f5f5);
  border: 1px solid var(--cb-border-color, #e5e7eb);
  border-radius: 4px;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-word;
  color: var(--cb-code-text, #374151);
  margin: 0;
  max-height: 300px;
  overflow-y: auto;
}
.default-tool-details .detail-section .detail-content::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.default-tool-details .detail-section .detail-content::-webkit-scrollbar-track {
  background: transparent;
}
.default-tool-details .detail-section .detail-content::-webkit-scrollbar-thumb {
  background: var(--cb-scrollbar-thumb, #d1d5db);
  border-radius: 4px;
}
.default-tool-details .detail-section .detail-content::-webkit-scrollbar-thumb:hover {
  background: var(--cb-scrollbar-thumb-hover, #9ca3af);
}
/**
 * ToolCard 样式
 * 从 chat-ui/tool.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/tool.less
 *
 * TODO: 此文件已 487 行，超过 SCSS 硬阈值 (400)，考虑拆分：
 * - 把文件末尾的「折叠头箭头交互统一规则」抽到独立 _collapsible-arrow.scss
 * - 把 .common-icon / .text-* / .loading-icon 等通用 utility 抽到 _utilities.scss
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.tool-card-container {
  position: relative;
  width: 100%;
  height: 100%;
  padding-bottom: 2px;
  font-size: 12px;
  border-radius: 8px;
}
.tool-card .tool-inner {
  display: flex;
  flex-direction: column;
}
.tool-card .tool-inner.border {
  border-radius: 4px;
  border: 1px solid var(--cb-input-border-primary, #454545);
  overflow: hidden;
  background: var(--cb-bg-primary-active, #F2F2F2);
}
.tool-card .tool-inner.border .card-header {
  padding: 8px 12px;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.tool-card .tool-inner.border .card-header:hover.click-header {
  background-color: var(--cb-vscode-sideBar-background);
}
.tool-card .tool-inner.border.tool-status-pending {
  outline: 2px solid var(--cb-vscode-textLink-foreground, #3794ff);
  animation: border-ping 2s cubic-bezier(0, 0, 0.2, 1) infinite;
}
.tool-card .card-content {
  padding: 8px 12px;
  margin: 4px 0;
  background: var(--cb-bg-primary-active, #F2F2F2);
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
}
.tool-card .card-content::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.tool-card .card-content::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.tool-card .card-content::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground);
}
.tool-card .card-content::-webkit-scrollbar-track {
  background-color: transparent;
}
.tool-card .card-content.hidden {
  display: none;
}
.tool-card .click-header {
  cursor: pointer;
}
.tool-card .card-header {
  font-size: 14px;
  line-height: 1.75;
}
.tool-card .card-header .card-header-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.tool-card .card-header .left {
  display: flex;
  color: var(--cb-text-primary, #d2d3e0);
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.tool-card .card-header .left .icon,
.tool-card .card-header .left > svg {
  flex-shrink: 0;
}
.tool-card .card-header .left .title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.tool-card .card-header .left .arrow-icon-always-show {
  color: var(--cb-text-tertiary, #a0a0a0);
}
.tool-card .card-header .left .arrow-icon {
  width: 14px;
  height: 14px;
}
.tool-card .card-header .right {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  font-weight: 400;
}
.tool-card .card-header .right .icon {
  width: 12px;
  height: 12px;
  margin-left: 3px;
}
.tool-card .card-header .control {
  align-items: center;
  color: var(--cb-text-primary, #d2d3e0);
  display: flex;
  font-size: 12px;
}
.tool-card .card-bottom {
  padding: 8px 12px;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
@keyframes border-ping {
  0% {
    outline-color: var(--cb-vscode-textLink-foreground, #3794ff);
    outline-width: 1px;
  }
  75%, 100% {
    outline-color: rgba(149, 181, 221, 0);
    outline-width: 3px;
  }
}
.icon-hover {
  width: 16px;
  height: 16px;
  padding: 2px;
  box-sizing: border-box;
  cursor: pointer;
  opacity: 0.7;
}
.icon-hover:hover {
  opacity: 1;
}
.text-primary {
  color: var(--cb-text-primary, #d2d3e0);
}
.text-secondary {
  color: var(--cb-text-secondary, #858699);
}
.text-tertiary {
  color: var(--cb-text-tertiary, #a0a0a0);
}
.shrink-0 {
  flex-shrink: 0;
}
.tool-card svg.arrow-left {
  transform: rotate(-90deg);
}
.tool-card svg.arrow-up {
  transform: rotate(-180deg);
}
.command-control {
  padding: 0 4px;
  font-size: 12px;
}
.command-control .button-container {
  padding-top: 6px;
  align-items: center;
  display: flex;
  gap: 10px;
}
.command-control .command-options {
  margin-left: auto;
  opacity: 0.7;
}
.command-control .command-options:hover {
  opacity: 1;
}
.command-control .command-options-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}
.title-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.common-icon {
  color: var(--cb-text-tertiary, #a0a0a0);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.common-icon path {
  stroke: var(--cb-text-tertiary, #a0a0a0);
}
.common-icon path[fill] {
  fill: var(--cb-text-tertiary, #a0a0a0);
  stroke: none;
}
.common-failed-icon {
  width: 14px;
  height: 14px;
  color: inherit;
  flex-shrink: 0;
}
.loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
}
.spinning {
  animation: spin-slow-start 1.4s ease-in-out infinite;
}
.action-desc {
  margin-bottom: 8px;
}
.cursor-pointer {
  cursor: pointer;
}
.no-result {
  opacity: 0.6;
}
.text-button {
  color: var(--cb-vscode-foreground, #cccccc);
  opacity: 0.6;
  transition: opacity 0.1s ease-in-out;
  cursor: pointer;
}
.text-button:hover {
  opacity: 0.8;
}
.tool-menu {
  display: flex;
  flex-direction: column;
  padding: 2px;
  margin-top: 6px;
  border-radius: 6px;
  gap: 4px;
  font-size: 12px;
  min-width: 200px;
  width: fit-content;
  box-sizing: border-box;
  background-color: var(--cb-vscode-dropdown-background, #3c3c3c);
  border: 1px solid var(--cb-vscode-commandCenter-inactiveBorder, var(--cb-vscode-widget-border, #414141));
}
.tool-menu .menu-title {
  padding: 2px 6px;
  font-size: 10.5px;
  color: var(--cb-text-secondary, #858699);
}
.tool-menu .menu-content {
  display: flex;
  gap: 2px;
  flex-direction: column;
}
.tool-menu .menu-item {
  padding: 2px 6px;
  color: var(--cb-text-primary, #d2d3e0);
  border-radius: 4px;
  line-height: 16px;
  cursor: pointer;
}
.tool-menu .menu-item:hover {
  background-color: var(--cb-bg-primary, rgba(255, 255, 255, 0.1));
  color: var(--cb-vscode-list-activeSelectionForeground);
}
.file-path-clickable {
  cursor: pointer;
  display: flex;
  gap: 4px;
  align-items: center;
  border-radius: 4px;
  padding: 2px 4px;
  width: 100%;
  line-height: 18px;
}
.file-path-clickable:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.file-path-clickable .line-file-icon {
  display: inline-block;
  align-self: center;
}
.file-path-clickable .line-file-icon > .icon-fontstyle::before {
  font-size: 16px;
}
.file-path-clickable .line-file-icon > svg {
  width: 16px;
  height: 16px;
  vertical-align: middle;
}
.file-path-clickable .line-info {
  opacity: 0.7;
}
.file-path-clickable .line-info,
.file-path-clickable .line-file-path {
  font-size: 9px;
}
.file-path-clickable .match-count {
  font-size: 11px;
  margin-left: 4px;
  flex-shrink: 0;
  opacity: 0.8;
}
.file-path-clickable .text-rtl {
  direction: rtl;
  text-align: right;
}
.file-path-clickable .line-file-name {
  font-size: 12px;
  color: var(--cb-vscode-editor-foreground, #cccccc);
}
.tool-card-container .search-reference .card-header {
  width: fit-content;
}
@keyframes spin-slow-start {
  0% {
    transform: rotate(0deg);
  }
  50% {
    transform: rotate(180deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.tool-card .card-header .cb-fold-arrow {
  opacity: 0;
  transition: opacity 0.16s ease;
}
.tool-card .card-header.click-header:hover .cb-fold-arrow,
.tool-card .card-header.click-header.expanded .cb-fold-arrow {
  opacity: 1;
}
.image-gen-header .cb-fold-arrow,
.read-lints-title-with-arrow .cb-fold-arrow {
  opacity: 0;
  transition: opacity 0.16s ease;
}
.image-gen-header:hover .cb-fold-arrow,
.read-lints-title-with-arrow:hover .cb-fold-arrow {
  opacity: 1;
}
.cb-fold-arrow.expanded {
  opacity: 1;
}
[class*=-compact__arrow] {
  opacity: 0;
  transition: opacity 0.16s ease;
}
[class*=-compact__header]:hover [class*=-compact__arrow] {
  opacity: 1;
}
[class*=-compact__arrow].expanded {
  opacity: 1;
}/*---------------------------------------------------------------------------------------------
 *  Copyright (c) Microsoft Corporation. All rights reserved.
 *  Licensed under the MIT License. See License.txt in the project root for license information.
 *--------------------------------------------------------------------------------------------*/

@font-face {
	font-family: "codicon";
	font-display: block;
	src: url("./codicon-Qa9GRfoU.ttf?eb10abb8b9291201e2c39eced5bd6993") format("truetype");
}

.codicon[class*='codicon-'] {
	font: normal normal normal 16px/1 codicon;
	display: inline-block;
	text-decoration: none;
	text-rendering: auto;
	text-align: center;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}

/*---------------------
 *  Modifiers
 *-------------------*/

@keyframes codicon-spin {
	100% {
		transform:rotate(360deg);
	}
}

.codicon-sync.codicon-modifier-spin,
.codicon-loading.codicon-modifier-spin,
.codicon-gear.codicon-modifier-spin {
	/* Use steps to throttle FPS to reduce CPU usage */
	animation: codicon-spin 1.5s steps(30) infinite;
}

.codicon-modifier-disabled {
	opacity: 0.5;
}

.codicon-modifier-hidden {
	opacity: 0;
}

/* custom speed & easing for loading icon */
.codicon-loading {
	animation-duration: 1s !important;
	animation-timing-function: cubic-bezier(0.53, 0.21, 0.29, 0.67) !important;
}

/*---------------------
 *  Icons
 *-------------------*/

.codicon-add:before { content: "\ea60" }
.codicon-plus:before { content: "\ea60" }
.codicon-gist-new:before { content: "\ea60" }
.codicon-repo-create:before { content: "\ea60" }
.codicon-lightbulb:before { content: "\ea61" }
.codicon-light-bulb:before { content: "\ea61" }
.codicon-repo:before { content: "\ea62" }
.codicon-repo-delete:before { content: "\ea62" }
.codicon-gist-fork:before { content: "\ea63" }
.codicon-repo-forked:before { content: "\ea63" }
.codicon-git-pull-request:before { content: "\ea64" }
.codicon-git-pull-request-abandoned:before { content: "\ea64" }
.codicon-record-keys:before { content: "\ea65" }
.codicon-keyboard:before { content: "\ea65" }
.codicon-tag:before { content: "\ea66" }
.codicon-git-pull-request-label:before { content: "\ea66" }
.codicon-tag-add:before { content: "\ea66" }
.codicon-tag-remove:before { content: "\ea66" }
.codicon-person:before { content: "\ea67" }
.codicon-person-follow:before { content: "\ea67" }
.codicon-person-outline:before { content: "\ea67" }
.codicon-person-filled:before { content: "\ea67" }
.codicon-git-branch:before { content: "\ea68" }
.codicon-git-branch-create:before { content: "\ea68" }
.codicon-git-branch-delete:before { content: "\ea68" }
.codicon-source-control:before { content: "\ea68" }
.codicon-mirror:before { content: "\ea69" }
.codicon-mirror-public:before { content: "\ea69" }
.codicon-star:before { content: "\ea6a" }
.codicon-star-add:before { content: "\ea6a" }
.codicon-star-delete:before { content: "\ea6a" }
.codicon-star-empty:before { content: "\ea6a" }
.codicon-comment:before { content: "\ea6b" }
.codicon-comment-add:before { content: "\ea6b" }
.codicon-alert:before { content: "\ea6c" }
.codicon-warning:before { content: "\ea6c" }
.codicon-search:before { content: "\ea6d" }
.codicon-search-save:before { content: "\ea6d" }
.codicon-log-out:before { content: "\ea6e" }
.codicon-sign-out:before { content: "\ea6e" }
.codicon-log-in:before { content: "\ea6f" }
.codicon-sign-in:before { content: "\ea6f" }
.codicon-eye:before { content: "\ea70" }
.codicon-eye-unwatch:before { content: "\ea70" }
.codicon-eye-watch:before { content: "\ea70" }
.codicon-circle-filled:before { content: "\ea71" }
.codicon-primitive-dot:before { content: "\ea71" }
.codicon-close-dirty:before { content: "\ea71" }
.codicon-debug-breakpoint:before { content: "\ea71" }
.codicon-debug-breakpoint-disabled:before { content: "\ea71" }
.codicon-debug-hint:before { content: "\ea71" }
.codicon-terminal-decoration-success:before { content: "\ea71" }
.codicon-primitive-square:before { content: "\ea72" }
.codicon-edit:before { content: "\ea73" }
.codicon-pencil:before { content: "\ea73" }
.codicon-info:before { content: "\ea74" }
.codicon-issue-opened:before { content: "\ea74" }
.codicon-gist-private:before { content: "\ea75" }
.codicon-git-fork-private:before { content: "\ea75" }
.codicon-lock:before { content: "\ea75" }
.codicon-mirror-private:before { content: "\ea75" }
.codicon-close:before { content: "\ea76" }
.codicon-remove-close:before { content: "\ea76" }
.codicon-x:before { content: "\ea76" }
.codicon-repo-sync:before { content: "\ea77" }
.codicon-sync:before { content: "\ea77" }
.codicon-clone:before { content: "\ea78" }
.codicon-desktop-download:before { content: "\ea78" }
.codicon-beaker:before { content: "\ea79" }
.codicon-microscope:before { content: "\ea79" }
.codicon-vm:before { content: "\ea7a" }
.codicon-device-desktop:before { content: "\ea7a" }
.codicon-file:before { content: "\ea7b" }
.codicon-file-text:before { content: "\ea7b" }
.codicon-more:before { content: "\ea7c" }
.codicon-ellipsis:before { content: "\ea7c" }
.codicon-kebab-horizontal:before { content: "\ea7c" }
.codicon-mail-reply:before { content: "\ea7d" }
.codicon-reply:before { content: "\ea7d" }
.codicon-organization:before { content: "\ea7e" }
.codicon-organization-filled:before { content: "\ea7e" }
.codicon-organization-outline:before { content: "\ea7e" }
.codicon-new-file:before { content: "\ea7f" }
.codicon-file-add:before { content: "\ea7f" }
.codicon-new-folder:before { content: "\ea80" }
.codicon-file-directory-create:before { content: "\ea80" }
.codicon-trash:before { content: "\ea81" }
.codicon-trashcan:before { content: "\ea81" }
.codicon-history:before { content: "\ea82" }
.codicon-clock:before { content: "\ea82" }
.codicon-folder:before { content: "\ea83" }
.codicon-file-directory:before { content: "\ea83" }
.codicon-symbol-folder:before { content: "\ea83" }
.codicon-logo-github:before { content: "\ea84" }
.codicon-mark-github:before { content: "\ea84" }
.codicon-github:before { content: "\ea84" }
.codicon-terminal:before { content: "\ea85" }
.codicon-console:before { content: "\ea85" }
.codicon-repl:before { content: "\ea85" }
.codicon-zap:before { content: "\ea86" }
.codicon-symbol-event:before { content: "\ea86" }
.codicon-error:before { content: "\ea87" }
.codicon-stop:before { content: "\ea87" }
.codicon-variable:before { content: "\ea88" }
.codicon-symbol-variable:before { content: "\ea88" }
.codicon-array:before { content: "\ea8a" }
.codicon-symbol-array:before { content: "\ea8a" }
.codicon-symbol-module:before { content: "\ea8b" }
.codicon-symbol-package:before { content: "\ea8b" }
.codicon-symbol-namespace:before { content: "\ea8b" }
.codicon-symbol-object:before { content: "\ea8b" }
.codicon-symbol-method:before { content: "\ea8c" }
.codicon-symbol-function:before { content: "\ea8c" }
.codicon-symbol-constructor:before { content: "\ea8c" }
.codicon-symbol-boolean:before { content: "\ea8f" }
.codicon-symbol-null:before { content: "\ea8f" }
.codicon-symbol-numeric:before { content: "\ea90" }
.codicon-symbol-number:before { content: "\ea90" }
.codicon-symbol-structure:before { content: "\ea91" }
.codicon-symbol-struct:before { content: "\ea91" }
.codicon-symbol-parameter:before { content: "\ea92" }
.codicon-symbol-type-parameter:before { content: "\ea92" }
.codicon-symbol-key:before { content: "\ea93" }
.codicon-symbol-text:before { content: "\ea93" }
.codicon-symbol-reference:before { content: "\ea94" }
.codicon-go-to-file:before { content: "\ea94" }
.codicon-symbol-enum:before { content: "\ea95" }
.codicon-symbol-value:before { content: "\ea95" }
.codicon-symbol-ruler:before { content: "\ea96" }
.codicon-symbol-unit:before { content: "\ea96" }
.codicon-activate-breakpoints:before { content: "\ea97" }
.codicon-archive:before { content: "\ea98" }
.codicon-arrow-both:before { content: "\ea99" }
.codicon-arrow-down:before { content: "\ea9a" }
.codicon-arrow-left:before { content: "\ea9b" }
.codicon-arrow-right:before { content: "\ea9c" }
.codicon-arrow-small-down:before { content: "\ea9d" }
.codicon-arrow-small-left:before { content: "\ea9e" }
.codicon-arrow-small-right:before { content: "\ea9f" }
.codicon-arrow-small-up:before { content: "\eaa0" }
.codicon-arrow-up:before { content: "\eaa1" }
.codicon-bell:before { content: "\eaa2" }
.codicon-bold:before { content: "\eaa3" }
.codicon-book:before { content: "\eaa4" }
.codicon-bookmark:before { content: "\eaa5" }
.codicon-debug-breakpoint-conditional-unverified:before { content: "\eaa6" }
.codicon-debug-breakpoint-conditional:before { content: "\eaa7" }
.codicon-debug-breakpoint-conditional-disabled:before { content: "\eaa7" }
.codicon-debug-breakpoint-data-unverified:before { content: "\eaa8" }
.codicon-debug-breakpoint-data:before { content: "\eaa9" }
.codicon-debug-breakpoint-data-disabled:before { content: "\eaa9" }
.codicon-debug-breakpoint-log-unverified:before { content: "\eaaa" }
.codicon-debug-breakpoint-log:before { content: "\eaab" }
.codicon-debug-breakpoint-log-disabled:before { content: "\eaab" }
.codicon-briefcase:before { content: "\eaac" }
.codicon-broadcast:before { content: "\eaad" }
.codicon-browser:before { content: "\eaae" }
.codicon-bug:before { content: "\eaaf" }
.codicon-calendar:before { content: "\eab0" }
.codicon-case-sensitive:before { content: "\eab1" }
.codicon-check:before { content: "\eab2" }
.codicon-checklist:before { content: "\eab3" }
.codicon-chevron-down:before { content: "\eab4" }
.codicon-chevron-left:before { content: "\eab5" }
.codicon-chevron-right:before { content: "\eab6" }
.codicon-chevron-up:before { content: "\eab7" }
.codicon-chrome-close:before { content: "\eab8" }
.codicon-chrome-maximize:before { content: "\eab9" }
.codicon-chrome-minimize:before { content: "\eaba" }
.codicon-chrome-restore:before { content: "\eabb" }
.codicon-circle-outline:before { content: "\eabc" }
.codicon-circle:before { content: "\eabc" }
.codicon-debug-breakpoint-unverified:before { content: "\eabc" }
.codicon-terminal-decoration-incomplete:before { content: "\eabc" }
.codicon-circle-slash:before { content: "\eabd" }
.codicon-circuit-board:before { content: "\eabe" }
.codicon-clear-all:before { content: "\eabf" }
.codicon-clippy:before { content: "\eac0" }
.codicon-close-all:before { content: "\eac1" }
.codicon-cloud-download:before { content: "\eac2" }
.codicon-cloud-upload:before { content: "\eac3" }
.codicon-code:before { content: "\eac4" }
.codicon-collapse-all:before { content: "\eac5" }
.codicon-color-mode:before { content: "\eac6" }
.codicon-comment-discussion:before { content: "\eac7" }
.codicon-credit-card:before { content: "\eac9" }
.codicon-dash:before { content: "\eacc" }
.codicon-dashboard:before { content: "\eacd" }
.codicon-database:before { content: "\eace" }
.codicon-debug-continue:before { content: "\eacf" }
.codicon-debug-disconnect:before { content: "\ead0" }
.codicon-debug-pause:before { content: "\ead1" }
.codicon-debug-restart:before { content: "\ead2" }
.codicon-debug-start:before { content: "\ead3" }
.codicon-debug-step-into:before { content: "\ead4" }
.codicon-debug-step-out:before { content: "\ead5" }
.codicon-debug-step-over:before { content: "\ead6" }
.codicon-debug-stop:before { content: "\ead7" }
.codicon-debug:before { content: "\ead8" }
.codicon-device-camera-video:before { content: "\ead9" }
.codicon-device-camera:before { content: "\eada" }
.codicon-device-mobile:before { content: "\eadb" }
.codicon-diff-added:before { content: "\eadc" }
.codicon-diff-ignored:before { content: "\eadd" }
.codicon-diff-modified:before { content: "\eade" }
.codicon-diff-removed:before { content: "\eadf" }
.codicon-diff-renamed:before { content: "\eae0" }
.codicon-diff:before { content: "\eae1" }
.codicon-diff-sidebyside:before { content: "\eae1" }
.codicon-discard:before { content: "\eae2" }
.codicon-editor-layout:before { content: "\eae3" }
.codicon-empty-window:before { content: "\eae4" }
.codicon-exclude:before { content: "\eae5" }
.codicon-extensions:before { content: "\eae6" }
.codicon-eye-closed:before { content: "\eae7" }
.codicon-file-binary:before { content: "\eae8" }
.codicon-file-code:before { content: "\eae9" }
.codicon-file-media:before { content: "\eaea" }
.codicon-file-pdf:before { content: "\eaeb" }
.codicon-file-submodule:before { content: "\eaec" }
.codicon-file-symlink-directory:before { content: "\eaed" }
.codicon-file-symlink-file:before { content: "\eaee" }
.codicon-file-zip:before { content: "\eaef" }
.codicon-files:before { content: "\eaf0" }
.codicon-filter:before { content: "\eaf1" }
.codicon-flame:before { content: "\eaf2" }
.codicon-fold-down:before { content: "\eaf3" }
.codicon-fold-up:before { content: "\eaf4" }
.codicon-fold:before { content: "\eaf5" }
.codicon-folder-active:before { content: "\eaf6" }
.codicon-folder-opened:before { content: "\eaf7" }
.codicon-gear:before { content: "\eaf8" }
.codicon-gift:before { content: "\eaf9" }
.codicon-gist-secret:before { content: "\eafa" }
.codicon-gist:before { content: "\eafb" }
.codicon-git-commit:before { content: "\eafc" }
.codicon-git-compare:before { content: "\eafd" }
.codicon-compare-changes:before { content: "\eafd" }
.codicon-git-merge:before { content: "\eafe" }
.codicon-github-action:before { content: "\eaff" }
.codicon-github-alt:before { content: "\eb00" }
.codicon-globe:before { content: "\eb01" }
.codicon-grabber:before { content: "\eb02" }
.codicon-graph:before { content: "\eb03" }
.codicon-gripper:before { content: "\eb04" }
.codicon-heart:before { content: "\eb05" }
.codicon-home:before { content: "\eb06" }
.codicon-horizontal-rule:before { content: "\eb07" }
.codicon-hubot:before { content: "\eb08" }
.codicon-inbox:before { content: "\eb09" }
.codicon-issue-reopened:before { content: "\eb0b" }
.codicon-issues:before { content: "\eb0c" }
.codicon-italic:before { content: "\eb0d" }
.codicon-jersey:before { content: "\eb0e" }
.codicon-json:before { content: "\eb0f" }
.codicon-kebab-vertical:before { content: "\eb10" }
.codicon-key:before { content: "\eb11" }
.codicon-law:before { content: "\eb12" }
.codicon-lightbulb-autofix:before { content: "\eb13" }
.codicon-link-external:before { content: "\eb14" }
.codicon-link:before { content: "\eb15" }
.codicon-list-ordered:before { content: "\eb16" }
.codicon-list-unordered:before { content: "\eb17" }
.codicon-live-share:before { content: "\eb18" }
.codicon-loading:before { content: "\eb19" }
.codicon-location:before { content: "\eb1a" }
.codicon-mail-read:before { content: "\eb1b" }
.codicon-mail:before { content: "\eb1c" }
.codicon-markdown:before { content: "\eb1d" }
.codicon-megaphone:before { content: "\eb1e" }
.codicon-mention:before { content: "\eb1f" }
.codicon-milestone:before { content: "\eb20" }
.codicon-git-pull-request-milestone:before { content: "\eb20" }
.codicon-mortar-board:before { content: "\eb21" }
.codicon-move:before { content: "\eb22" }
.codicon-multiple-windows:before { content: "\eb23" }
.codicon-mute:before { content: "\eb24" }
.codicon-no-newline:before { content: "\eb25" }
.codicon-note:before { content: "\eb26" }
.codicon-octoface:before { content: "\eb27" }
.codicon-open-preview:before { content: "\eb28" }
.codicon-package:before { content: "\eb29" }
.codicon-paintcan:before { content: "\eb2a" }
.codicon-pin:before { content: "\eb2b" }
.codicon-play:before { content: "\eb2c" }
.codicon-run:before { content: "\eb2c" }
.codicon-plug:before { content: "\eb2d" }
.codicon-preserve-case:before { content: "\eb2e" }
.codicon-preview:before { content: "\eb2f" }
.codicon-project:before { content: "\eb30" }
.codicon-pulse:before { content: "\eb31" }
.codicon-question:before { content: "\eb32" }
.codicon-quote:before { content: "\eb33" }
.codicon-radio-tower:before { content: "\eb34" }
.codicon-reactions:before { content: "\eb35" }
.codicon-references:before { content: "\eb36" }
.codicon-refresh:before { content: "\eb37" }
.codicon-regex:before { content: "\eb38" }
.codicon-remote-explorer:before { content: "\eb39" }
.codicon-remote:before { content: "\eb3a" }
.codicon-remove:before { content: "\eb3b" }
.codicon-replace-all:before { content: "\eb3c" }
.codicon-replace:before { content: "\eb3d" }
.codicon-repo-clone:before { content: "\eb3e" }
.codicon-repo-force-push:before { content: "\eb3f" }
.codicon-repo-pull:before { content: "\eb40" }
.codicon-repo-push:before { content: "\eb41" }
.codicon-report:before { content: "\eb42" }
.codicon-request-changes:before { content: "\eb43" }
.codicon-rocket:before { content: "\eb44" }
.codicon-root-folder-opened:before { content: "\eb45" }
.codicon-root-folder:before { content: "\eb46" }
.codicon-rss:before { content: "\eb47" }
.codicon-ruby:before { content: "\eb48" }
.codicon-save-all:before { content: "\eb49" }
.codicon-save-as:before { content: "\eb4a" }
.codicon-save:before { content: "\eb4b" }
.codicon-screen-full:before { content: "\eb4c" }
.codicon-screen-normal:before { content: "\eb4d" }
.codicon-search-stop:before { content: "\eb4e" }
.codicon-server:before { content: "\eb50" }
.codicon-settings-gear:before { content: "\eb51" }
.codicon-settings:before { content: "\eb52" }
.codicon-shield:before { content: "\eb53" }
.codicon-smiley:before { content: "\eb54" }
.codicon-sort-precedence:before { content: "\eb55" }
.codicon-split-horizontal:before { content: "\eb56" }
.codicon-split-vertical:before { content: "\eb57" }
.codicon-squirrel:before { content: "\eb58" }
.codicon-star-full:before { content: "\eb59" }
.codicon-star-half:before { content: "\eb5a" }
.codicon-symbol-class:before { content: "\eb5b" }
.codicon-symbol-color:before { content: "\eb5c" }
.codicon-symbol-constant:before { content: "\eb5d" }
.codicon-symbol-enum-member:before { content: "\eb5e" }
.codicon-symbol-field:before { content: "\eb5f" }
.codicon-symbol-file:before { content: "\eb60" }
.codicon-symbol-interface:before { content: "\eb61" }
.codicon-symbol-keyword:before { content: "\eb62" }
.codicon-symbol-misc:before { content: "\eb63" }
.codicon-symbol-operator:before { content: "\eb64" }
.codicon-symbol-property:before { content: "\eb65" }
.codicon-wrench:before { content: "\eb65" }
.codicon-wrench-subaction:before { content: "\eb65" }
.codicon-symbol-snippet:before { content: "\eb66" }
.codicon-tasklist:before { content: "\eb67" }
.codicon-telescope:before { content: "\eb68" }
.codicon-text-size:before { content: "\eb69" }
.codicon-three-bars:before { content: "\eb6a" }
.codicon-thumbsdown:before { content: "\eb6b" }
.codicon-thumbsup:before { content: "\eb6c" }
.codicon-tools:before { content: "\eb6d" }
.codicon-triangle-down:before { content: "\eb6e" }
.codicon-triangle-left:before { content: "\eb6f" }
.codicon-triangle-right:before { content: "\eb70" }
.codicon-triangle-up:before { content: "\eb71" }
.codicon-twitter:before { content: "\eb72" }
.codicon-unfold:before { content: "\eb73" }
.codicon-unlock:before { content: "\eb74" }
.codicon-unmute:before { content: "\eb75" }
.codicon-unverified:before { content: "\eb76" }
.codicon-verified:before { content: "\eb77" }
.codicon-versions:before { content: "\eb78" }
.codicon-vm-active:before { content: "\eb79" }
.codicon-vm-outline:before { content: "\eb7a" }
.codicon-vm-running:before { content: "\eb7b" }
.codicon-watch:before { content: "\eb7c" }
.codicon-whitespace:before { content: "\eb7d" }
.codicon-whole-word:before { content: "\eb7e" }
.codicon-window:before { content: "\eb7f" }
.codicon-word-wrap:before { content: "\eb80" }
.codicon-zoom-in:before { content: "\eb81" }
.codicon-zoom-out:before { content: "\eb82" }
.codicon-list-filter:before { content: "\eb83" }
.codicon-list-flat:before { content: "\eb84" }
.codicon-list-selection:before { content: "\eb85" }
.codicon-selection:before { content: "\eb85" }
.codicon-list-tree:before { content: "\eb86" }
.codicon-debug-breakpoint-function-unverified:before { content: "\eb87" }
.codicon-debug-breakpoint-function:before { content: "\eb88" }
.codicon-debug-breakpoint-function-disabled:before { content: "\eb88" }
.codicon-debug-stackframe-active:before { content: "\eb89" }
.codicon-circle-small-filled:before { content: "\eb8a" }
.codicon-debug-stackframe-dot:before { content: "\eb8a" }
.codicon-terminal-decoration-mark:before { content: "\eb8a" }
.codicon-debug-stackframe:before { content: "\eb8b" }
.codicon-debug-stackframe-focused:before { content: "\eb8b" }
.codicon-debug-breakpoint-unsupported:before { content: "\eb8c" }
.codicon-symbol-string:before { content: "\eb8d" }
.codicon-debug-reverse-continue:before { content: "\eb8e" }
.codicon-debug-step-back:before { content: "\eb8f" }
.codicon-debug-restart-frame:before { content: "\eb90" }
.codicon-debug-alt:before { content: "\eb91" }
.codicon-call-incoming:before { content: "\eb92" }
.codicon-call-outgoing:before { content: "\eb93" }
.codicon-menu:before { content: "\eb94" }
.codicon-expand-all:before { content: "\eb95" }
.codicon-feedback:before { content: "\eb96" }
.codicon-git-pull-request-reviewer:before { content: "\eb96" }
.codicon-group-by-ref-type:before { content: "\eb97" }
.codicon-ungroup-by-ref-type:before { content: "\eb98" }
.codicon-account:before { content: "\eb99" }
.codicon-git-pull-request-assignee:before { content: "\eb99" }
.codicon-bell-dot:before { content: "\eb9a" }
.codicon-debug-console:before { content: "\eb9b" }
.codicon-library:before { content: "\eb9c" }
.codicon-output:before { content: "\eb9d" }
.codicon-run-all:before { content: "\eb9e" }
.codicon-sync-ignored:before { content: "\eb9f" }
.codicon-pinned:before { content: "\eba0" }
.codicon-github-inverted:before { content: "\eba1" }
.codicon-server-process:before { content: "\eba2" }
.codicon-server-environment:before { content: "\eba3" }
.codicon-pass:before { content: "\eba4" }
.codicon-issue-closed:before { content: "\eba4" }
.codicon-stop-circle:before { content: "\eba5" }
.codicon-play-circle:before { content: "\eba6" }
.codicon-record:before { content: "\eba7" }
.codicon-debug-alt-small:before { content: "\eba8" }
.codicon-vm-connect:before { content: "\eba9" }
.codicon-cloud:before { content: "\ebaa" }
.codicon-merge:before { content: "\ebab" }
.codicon-export:before { content: "\ebac" }
.codicon-graph-left:before { content: "\ebad" }
.codicon-magnet:before { content: "\ebae" }
.codicon-notebook:before { content: "\ebaf" }
.codicon-redo:before { content: "\ebb0" }
.codicon-check-all:before { content: "\ebb1" }
.codicon-pinned-dirty:before { content: "\ebb2" }
.codicon-pass-filled:before { content: "\ebb3" }
.codicon-circle-large-filled:before { content: "\ebb4" }
.codicon-circle-large:before { content: "\ebb5" }
.codicon-circle-large-outline:before { content: "\ebb5" }
.codicon-combine:before { content: "\ebb6" }
.codicon-gather:before { content: "\ebb6" }
.codicon-table:before { content: "\ebb7" }
.codicon-variable-group:before { content: "\ebb8" }
.codicon-type-hierarchy:before { content: "\ebb9" }
.codicon-type-hierarchy-sub:before { content: "\ebba" }
.codicon-type-hierarchy-super:before { content: "\ebbb" }
.codicon-git-pull-request-create:before { content: "\ebbc" }
.codicon-run-above:before { content: "\ebbd" }
.codicon-run-below:before { content: "\ebbe" }
.codicon-notebook-template:before { content: "\ebbf" }
.codicon-debug-rerun:before { content: "\ebc0" }
.codicon-workspace-trusted:before { content: "\ebc1" }
.codicon-workspace-untrusted:before { content: "\ebc2" }
.codicon-workspace-unknown:before { content: "\ebc3" }
.codicon-terminal-cmd:before { content: "\ebc4" }
.codicon-terminal-debian:before { content: "\ebc5" }
.codicon-terminal-linux:before { content: "\ebc6" }
.codicon-terminal-powershell:before { content: "\ebc7" }
.codicon-terminal-tmux:before { content: "\ebc8" }
.codicon-terminal-ubuntu:before { content: "\ebc9" }
.codicon-terminal-bash:before { content: "\ebca" }
.codicon-arrow-swap:before { content: "\ebcb" }
.codicon-copy:before { content: "\ebcc" }
.codicon-person-add:before { content: "\ebcd" }
.codicon-filter-filled:before { content: "\ebce" }
.codicon-wand:before { content: "\ebcf" }
.codicon-debug-line-by-line:before { content: "\ebd0" }
.codicon-inspect:before { content: "\ebd1" }
.codicon-layers:before { content: "\ebd2" }
.codicon-layers-dot:before { content: "\ebd3" }
.codicon-layers-active:before { content: "\ebd4" }
.codicon-compass:before { content: "\ebd5" }
.codicon-compass-dot:before { content: "\ebd6" }
.codicon-compass-active:before { content: "\ebd7" }
.codicon-azure:before { content: "\ebd8" }
.codicon-issue-draft:before { content: "\ebd9" }
.codicon-git-pull-request-closed:before { content: "\ebda" }
.codicon-git-pull-request-draft:before { content: "\ebdb" }
.codicon-debug-all:before { content: "\ebdc" }
.codicon-debug-coverage:before { content: "\ebdd" }
.codicon-run-errors:before { content: "\ebde" }
.codicon-folder-library:before { content: "\ebdf" }
.codicon-debug-continue-small:before { content: "\ebe0" }
.codicon-beaker-stop:before { content: "\ebe1" }
.codicon-graph-line:before { content: "\ebe2" }
.codicon-graph-scatter:before { content: "\ebe3" }
.codicon-pie-chart:before { content: "\ebe4" }
.codicon-bracket:before { content: "\eb0f" }
.codicon-bracket-dot:before { content: "\ebe5" }
.codicon-bracket-error:before { content: "\ebe6" }
.codicon-lock-small:before { content: "\ebe7" }
.codicon-azure-devops:before { content: "\ebe8" }
.codicon-verified-filled:before { content: "\ebe9" }
.codicon-newline:before { content: "\ebea" }
.codicon-layout:before { content: "\ebeb" }
.codicon-layout-activitybar-left:before { content: "\ebec" }
.codicon-layout-activitybar-right:before { content: "\ebed" }
.codicon-layout-panel-left:before { content: "\ebee" }
.codicon-layout-panel-center:before { content: "\ebef" }
.codicon-layout-panel-justify:before { content: "\ebf0" }
.codicon-layout-panel-right:before { content: "\ebf1" }
.codicon-layout-panel:before { content: "\ebf2" }
.codicon-layout-sidebar-left:before { content: "\ebf3" }
.codicon-layout-sidebar-right:before { content: "\ebf4" }
.codicon-layout-statusbar:before { content: "\ebf5" }
.codicon-layout-menubar:before { content: "\ebf6" }
.codicon-layout-centered:before { content: "\ebf7" }
.codicon-target:before { content: "\ebf8" }
.codicon-indent:before { content: "\ebf9" }
.codicon-record-small:before { content: "\ebfa" }
.codicon-error-small:before { content: "\ebfb" }
.codicon-terminal-decoration-error:before { content: "\ebfb" }
.codicon-arrow-circle-down:before { content: "\ebfc" }
.codicon-arrow-circle-left:before { content: "\ebfd" }
.codicon-arrow-circle-right:before { content: "\ebfe" }
.codicon-arrow-circle-up:before { content: "\ebff" }
.codicon-layout-sidebar-right-off:before { content: "\ec00" }
.codicon-layout-panel-off:before { content: "\ec01" }
.codicon-layout-sidebar-left-off:before { content: "\ec02" }
.codicon-blank:before { content: "\ec03" }
.codicon-heart-filled:before { content: "\ec04" }
.codicon-map:before { content: "\ec05" }
.codicon-map-horizontal:before { content: "\ec05" }
.codicon-fold-horizontal:before { content: "\ec05" }
.codicon-map-filled:before { content: "\ec06" }
.codicon-map-horizontal-filled:before { content: "\ec06" }
.codicon-fold-horizontal-filled:before { content: "\ec06" }
.codicon-circle-small:before { content: "\ec07" }
.codicon-bell-slash:before { content: "\ec08" }
.codicon-bell-slash-dot:before { content: "\ec09" }
.codicon-comment-unresolved:before { content: "\ec0a" }
.codicon-git-pull-request-go-to-changes:before { content: "\ec0b" }
.codicon-git-pull-request-new-changes:before { content: "\ec0c" }
.codicon-search-fuzzy:before { content: "\ec0d" }
.codicon-comment-draft:before { content: "\ec0e" }
.codicon-send:before { content: "\ec0f" }
.codicon-sparkle:before { content: "\ec10" }
.codicon-insert:before { content: "\ec11" }
.codicon-mic:before { content: "\ec12" }
.codicon-thumbsdown-filled:before { content: "\ec13" }
.codicon-thumbsup-filled:before { content: "\ec14" }
.codicon-coffee:before { content: "\ec15" }
.codicon-snake:before { content: "\ec16" }
.codicon-game:before { content: "\ec17" }
.codicon-vr:before { content: "\ec18" }
.codicon-chip:before { content: "\ec19" }
.codicon-piano:before { content: "\ec1a" }
.codicon-music:before { content: "\ec1b" }
.codicon-mic-filled:before { content: "\ec1c" }
.codicon-repo-fetch:before { content: "\ec1d" }
.codicon-copilot:before { content: "\ec1e" }
.codicon-lightbulb-sparkle:before { content: "\ec1f" }
.codicon-robot:before { content: "\ec20" }
.codicon-sparkle-filled:before { content: "\ec21" }
.codicon-diff-single:before { content: "\ec22" }
.codicon-diff-multiple:before { content: "\ec23" }
.codicon-surround-with:before { content: "\ec24" }
.codicon-share:before { content: "\ec25" }
.codicon-git-stash:before { content: "\ec26" }
.codicon-git-stash-apply:before { content: "\ec27" }
.codicon-git-stash-pop:before { content: "\ec28" }
.codicon-vscode:before { content: "\ec29" }
.codicon-vscode-insiders:before { content: "\ec2a" }
.codicon-code-oss:before { content: "\ec2b" }
.codicon-run-coverage:before { content: "\ec2c" }
.codicon-run-all-coverage:before { content: "\ec2d" }
.codicon-coverage:before { content: "\ec2e" }
.codicon-github-project:before { content: "\ec2f" }
.codicon-map-vertical:before { content: "\ec30" }
.codicon-fold-vertical:before { content: "\ec30" }
.codicon-map-vertical-filled:before { content: "\ec31" }
.codicon-fold-vertical-filled:before { content: "\ec31" }
.codicon-go-to-search:before { content: "\ec32" }
.codicon-percentage:before { content: "\ec33" }
.codicon-sort-percentage:before { content: "\ec33" }
.codicon-attach:before { content: "\ec34" }
.codicon-go-to-editing-session:before { content: "\ec35" }
.codicon-edit-session:before { content: "\ec36" }
.codicon-code-review:before { content: "\ec37" }
.codicon-copilot-warning:before { content: "\ec38" }
.codicon-python:before { content: "\ec39" }
.codicon-copilot-large:before { content: "\ec3a" }
.codicon-copilot-warning-large:before { content: "\ec3b" }
.codicon-keyboard-tab:before { content: "\ec3c" }
.codicon-copilot-blocked:before { content: "\ec3d" }
.codicon-copilot-not-connected:before { content: "\ec3e" }
.codicon-flag:before { content: "\ec3f" }
.codicon-lightbulb-empty:before { content: "\ec40" }
.codicon-symbol-method-arrow:before { content: "\ec41" }
.codicon-copilot-unavailable:before { content: "\ec42" }
.codicon-repo-pinned:before { content: "\ec43" }
.codicon-keyboard-tab-above:before { content: "\ec44" }
.codicon-keyboard-tab-below:before { content: "\ec45" }
.codicon-git-pull-request-done:before { content: "\ec46" }
.codicon-mcp:before { content: "\ec47" }
.codicon-extensions-large:before { content: "\ec48" }
.codicon-layout-panel-dock:before { content: "\ec49" }
.codicon-layout-sidebar-left-dock:before { content: "\ec4a" }
.codicon-layout-sidebar-right-dock:before { content: "\ec4b" }
.codicon-copilot-in-progress:before { content: "\ec4c" }
.codicon-copilot-error:before { content: "\ec4d" }
.codicon-copilot-success:before { content: "\ec4e" }
.codicon-chat-sparkle:before { content: "\ec4f" }
.codicon-search-sparkle:before { content: "\ec50" }
.codicon-edit-sparkle:before { content: "\ec51" }
.codicon-copilot-snooze:before { content: "\ec52" }
.codicon-send-to-remote-agent:before { content: "\ec53" }
.codicon-comment-discussion-sparkle:before { content: "\ec54" }
.codicon-chat-sparkle-warning:before { content: "\ec55" }
.codicon-chat-sparkle-error:before { content: "\ec56" }
.codicon-collection:before { content: "\ec57" }
.codicon-new-collection:before { content: "\ec58" }
.codicon-thinking:before { content: "\ec59" }
.codicon-git-fetch:before { content: "\f101" }

/**
 * 对话内搜索高亮样式
 *
 * 使用 cb-chat-ui 推荐的 --cb-* token 命名规范（见 .codebuddy/rules/cb-chat-ui-styling.md）
 */
.cb-chat-search-hit {
  background: var(--cb-search-hit-bg, #c5eee0);
  color: var(--cb-search-hit-fg, #1f8c67);
  padding: 0 1px;
  border-radius: 2px;
  transition: background 120ms ease-out, color 120ms ease-out, box-shadow 120ms ease-out;
}
.cb-chat-search-hit--current {
  background: var(--cb-search-hit-current-bg, #4ecba0);
  color: var(--cb-search-hit-current-fg, #ffffff);
  box-shadow: var(--cb-search-hit-current-glow, 0 0 0 2px rgba(78, 203, 160, 0.3));
}

[data-chat-search-skip] {
  display: contents;
}
/**
 * CB Chat UI - 主组件样式
 *
 * 注意：变量已在 src/index.ts 中全局导入，这里不需要重复导入
 */
._cbChat_1akz6_7 {
  display: flex;
  flex-direction: column;
  height: 100%;
}
._cbChat_1akz6_7,
._cbChat_1akz6_7 > * {
  box-sizing: border-box;
}
._cbChat_1akz6_7._centeredLayout_1akz6_16 {
  height: 100%;
}
._cbChat_1akz6_7._centeredLayout_1akz6_16 ._input-area-container_1akz6_19 {
  width: 100%;
}
._cbChat_1akz6_7._hasMaxContentWidth_1akz6_22 ._input-area-container_1akz6_19 {
  max-width: var(--cb-chat-max-content-width);
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}

._emptyStateContainer_1akz6_29 {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: auto;
  position: relative;
  min-height: fit-content;
}
._centeredLayout_1akz6_16 ._emptyStateContainer_1akz6_29 {
  flex: 1;
  min-height: 0;
  overflow: auto;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
._emptyStateContainer_1akz6_29._inlineInputContainer_1akz6_46 {
  scrollbar-width: none;
}
._emptyStateContainer_1akz6_29._inlineInputContainer_1akz6_46::-webkit-scrollbar {
  display: none;
}

._cb-top-slot_1akz6_53 {
  flex-shrink: 0;
  width: 100%;
  box-sizing: border-box;
}

._messageHeaderSlot_1akz6_59 {
  flex-shrink: 0;
  padding: 4px 16px;
  height: 34px;
  box-sizing: border-box;
}

._input-area-container_1akz6_19 {
  display: flex;
  flex-direction: column;
  position: relative;
  flex-shrink: 0;
  margin: 0;
  gap: 0;
  min-height: fit-content;
}
._input-area-container_1akz6_19::before {
  content: "";
  position: absolute;
  top: -72px;
  left: 0;
  right: 0;
  height: 72px;
  background: linear-gradient(to bottom, transparent, var(--cb-colleagues-prompt-bg, #FAFAFA));
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.2s ease;
}
._input-area-container--scrolled_1akz6_88::before {
  opacity: 1;
}

._input-area-container--empty-state_1akz6_92 {
  padding-top: 0;
}

._input-area-container--opaque-main-area_1akz6_96 {
  --cb-main-area-background: var(--cb-bg-secondary);
}

._input-bottom-slot_1akz6_100 {
  display: flex;
  justify-content: center;
  align-items: stretch;
  padding: 8px 0;
  width: 100%;
  box-sizing: border-box;
  flex-shrink: 0;
  transition: min-height 0.25s ease;
}
._centeredLayout_1akz6_16 ._input-bottom-slot_1akz6_100, ._input-area-container--empty-state_1akz6_92 ._input-bottom-slot_1akz6_100 {
  min-height: var(--cb-chat-input-bottom-slot-min-height, 168px);
}
@media (max-height: 860px) {
  ._centeredLayout_1akz6_16 ._input-bottom-slot_1akz6_100, ._input-area-container--empty-state_1akz6_92 ._input-bottom-slot_1akz6_100 {
    min-height: 0;
  }
}
._input-bottom-slot--has-banner_1akz6_118 {
  min-height: 0 !important;
}

._aiDisclaimer_1akz6_122 {
  font-size: 12px;
  color: var(--cb-text-quaternary, #999);
  text-align: center;
  padding: 8px;
  line-height: 20px;
}.cb-message-queue {
  background-color: var(--cb-bg-secondary, #f2f2f2);
  color: var(--cb-text-primary);
  border-radius: 24px 24px 0px 0px;
  bottom: -40px;
  padding: 8px 8px 44px;
  max-height: 224px;
  position: relative;
  font-size: var(--default-font-size, 14px);
  z-index: 15;
}
.cb-message-queue .cb-message-queue-content {
  height: 100%;
  overflow-y: scroll;
  display: flex;
  flex-shrink: 0;
  flex-direction: column;
  padding: 0px 8px;
}
.cb-message-queue .cb-message-queue-content::-webkit-scrollbar {
  width: 6px;
}
.cb-message-queue .cb-message-queue-content::-webkit-scrollbar-thumb {
  background: var(--cb-scrollbar-thumb, rgba(0, 0, 0, 0.1));
  border-radius: 3px;
}
.cb-message-queue .cb-message-queue-item {
  display: flex;
  align-items: center;
  padding: 12px 0;
  line-height: 22px;
  justify-content: space-between;
  gap: 8px;
  height: var(--cb-queue-item-height, 48px);
  flex-shrink: 0;
  box-sizing: border-box;
  overflow: hidden;
  border-bottom: 1px solid var(--cb-border);
  cursor: grab;
}
.cb-message-queue .cb-message-queue-item:last-child {
  border-bottom: none;
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-single {
  cursor: default;
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-single .cb-message-queue-item-left .prompt-icon {
  opacity: 0.4;
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-dragging .cb-message-queue-item-left .prompt-icon,
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-dragging .cb-message-queue-item-left .content {
  color: var(--cb-text-quaternary, rgba(0, 0, 0, 0.3));
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-dragging .cb-message-queue-item-actions .icon-btn {
  color: var(--cb-text-quaternary, rgba(0, 0, 0, 0.3));
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-dragging .cb-message-queue-item-actions .icon-btn:hover {
  background: transparent;
  color: var(--cb-text-quaternary, rgba(0, 0, 0, 0.3));
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-drag-image {
  position: absolute;
  top: -9999px;
  left: -9999px;
  width: 100%;
  pointer-events: none;
  background: rgba(0, 0, 0, 0.2);
  border-radius: var(--cb-border-radius-lg, 8px);
  border-bottom-color: transparent;
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-drag-over {
  position: relative;
  border-bottom-color: transparent;
}
.cb-message-queue .cb-message-queue-item.cb-message-queue-item-drag-over::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 2px;
  border-radius: 1px;
  background: var(--cb-border-drag-indicator, #00c29a);
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-left {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-left .prompt-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  width: 16px;
  height: 16px;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-left .content {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: var(--cb-text-primary);
  font-size: 14px;
  font-weight: 500;
  line-height: 22px;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions .icon-btn {
  padding: 0;
  width: 24px;
  height: 24px;
  border: none;
  background: transparent;
  color: var(--cb-text-primary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: var(--cb-border-radius-md, 6px);
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions .icon-btn svg {
  width: 16px;
  height: 16px;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions .icon-btn:hover {
  background: var(--cb-hover-bg, rgba(0, 0, 0, 0.05));
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions .icon-btn.cb-queue-loading {
  cursor: default;
  animation: cb-queue-spin 1s linear infinite;
}
.cb-message-queue .cb-message-queue-item .cb-message-queue-item-actions .icon-btn.cb-queue-loading:hover {
  background: transparent;
}

@keyframes cb-queue-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * Question 浮层样式 —— 分步答题 v3（含选项分隔线 / hover 序号高亮）
 * 设计稿：ardot pageId 1125:3430（节点 11353:577 / 699 / 121 / 10041:265 / 10041:374）
 *
 * 主题策略：所有颜色 token 走 cb-chat-ui 主题源（--cb-question-floating-* 命名空间），
 * 真值定义在 packages/cb-chat-ui/src/styles/variables/_theme-dark.scss（块 A）
 * 与 _theme-light.scss（主块）；本文件不再声明组件局部主题 token，
 * dark/light 切换由全局主题驱动。
 *
 * TODO: 文件仍偏大，后续可按结构域（header / options / footer）拆子样式文件。
 */
._questionFloating_105i4_13 {
  box-sizing: border-box;
  width: 100%;
  background: var(--cb-question-floating-card-bg);
  border: 1px solid var(--cb-question-floating-card-border);
  border-radius: 24px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.02), 0 1px 4px rgba(0, 0, 0, 0.03);
  display: flex;
  flex-direction: column;
  /**
   * 卡片高度上限（兜底）。
   *
   * why: header / footer 用 `flex-shrink: 0` 固定高度，.content 用 `flex: 1` +
   *      `overflow-y: auto` 接管内部滚动；但 flex 子项的 overflow 只有在父容器
   *      自身被高度约束时才会真正生效。如果 .questionFloating 没有 max-height，
   *      `flex: 1` 退化为按内容自适应——多题平铺渲染（lib v1 / 部分历史 bundle）
   *      时卡片会按自然高度撑开，把外层 input-area / 对话区整体顶飞，
   *      表现为「大面积遮挡聊天内容」。
   *
   * 取值：min(60vh, 520px)
   *   - 60vh: 大屏 / 桌面下保留更多答题空间，但仍给上方对话区留 ≥ 40% 视口
   *   - 520px: 中小屏避免占满视口（手机端 60vh ≈ 500-600px，加个上限更稳）
   *   - 单题轮播 (v2 src) 自然高度通常 < 360px，不会触发上限，无副作用
   *   - 多题平铺 (lib v1) 超出时 .content 接管 overflow-y: auto，行为与 desktop 对齐
   */
  max-height: min(60vh, 520px);
  overflow: hidden;
  animation: _questionFloatingSlideUp_105i4_1 0.2s ease-out;
}

@keyframes _questionFloatingSlideUp_105i4_1 {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
._header_105i4_53 {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px 8px;
  flex-shrink: 0;
}

._headerLeft_105i4_62 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
._headerLeft_105i4_62 svg {
  color: var(--cb-question-floating-text-secondary);
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

._title_105i4_75 {
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  color: var(--cb-question-floating-text-primary);
  word-break: break-word;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
}

._headerRight_105i4_86 {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

._pagination_105i4_93 {
  display: flex;
  align-items: center;
  gap: 2px;
  color: var(--cb-question-floating-text-secondary);
}

._pageBtn_105i4_100 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border: none;
  background: transparent;
  color: var(--cb-question-floating-text-secondary);
  cursor: pointer;
  border-radius: 6px;
  transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
  padding: 0;
}
._pageBtn_105i4_100:hover:not(:disabled) {
  background-color: var(--cb-question-floating-hover-bg);
  color: var(--cb-question-floating-text-strong);
}
._pageBtn_105i4_100:disabled {
  opacity: 0.25;
  cursor: not-allowed;
}
._pageBtn_105i4_100 svg {
  display: block;
  width: 16px;
  height: 16px;
}

._pageInfo_105i4_128 {
  font-size: 14px;
  line-height: 22px;
  color: var(--cb-question-floating-text-secondary);
  min-width: 32px;
  text-align: center;
  user-select: none;
}

._skipAllBtn_105i4_137 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--cb-question-floating-text-secondary);
  cursor: pointer;
  border-radius: 6px;
  transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}
._skipAllBtn_105i4_137 svg {
  width: 16px;
  height: 16px;
}
._skipAllBtn_105i4_137:hover {
  opacity: 0.7;
}

._content_105i4_25 {
  padding: 0 12px 0px;
  flex: 1;
  min-height: var(--cb-question-content-min-h, 0);
  overflow-y: auto;
  scrollbar-width: thin;
}
._content_105i4_25::-webkit-scrollbar {
  width: 6px;
}
._content_105i4_25::-webkit-scrollbar-track {
  background: transparent;
}
._content_105i4_25::-webkit-scrollbar-thumb {
  background-color: var(--cb-question-floating-scrollbar-thumb);
  border-radius: 3px;
}

._options_105i4_177 {
  display: flex;
  flex-direction: column;
}

._optionItem_105i4_182 {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 8px;
  border-radius: 12px;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: background-color 0.15s ease;
  position: relative;
}
._optionItem_105i4_182::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0px;
  height: 1px;
  background: var(--cb-question-floating-hover-bg);
  pointer-events: none;
}
._optionItem_105i4_182:hover {
  background-color: var(--cb-question-floating-hover-bg);
}
._optionItem_105i4_182:hover ._optionArrow_105i4_208 {
  opacity: 1;
}
._optionItem_105i4_182:hover ._optionNumber_105i4_211 {
  background-color: var(--cb-question-floating-number-active-bg);
}
._optionItem_105i4_182._selected_105i4_214 {
  background-color: var(--cb-question-floating-hover-bg);
}
._optionItem_105i4_182._selected_105i4_214 ._optionNumber_105i4_211 {
  background-color: var(--cb-question-floating-number-active-bg);
}
._optionItem_105i4_182._selected_105i4_214 ._optionArrow_105i4_208 {
  opacity: 1;
}
._optionItem_105i4_182._selected_105i4_214:has(._checkbox_105i4_223) {
  background-color: transparent;
}
._optionItem_105i4_182._selected_105i4_214:has(._checkbox_105i4_223):hover {
  background-color: transparent;
}
._optionItem_105i4_182._disabled_105i4_229 {
  cursor: not-allowed;
  opacity: 0.4;
}
._optionItem_105i4_182._disabled_105i4_229:hover {
  background-color: transparent;
}
._optionItem_105i4_182._disabled_105i4_229:hover ._optionArrow_105i4_208 {
  opacity: 0;
}
._optionItem_105i4_182._disabled_105i4_229:hover ._optionNumber_105i4_211 {
  background-color: var(--cb-question-floating-number-bg);
}

._optionNumber_105i4_211 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 8px;
  background-color: var(--cb-question-floating-number-bg);
  color: var(--cb-question-floating-text-primary);
  font-size: 14px;
  line-height: 14px;
  flex-shrink: 0;
  transition: all 0.15s ease;
  user-select: none;
}

._checkbox_105i4_223 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: var(--cb-question-floating-text-secondary);
  cursor: pointer;
}

._optionText_105i4_270 {
  flex: 1;
  min-width: 0;
  font-size: 14px;
  line-height: 22px;
  color: var(--cb-question-floating-text-primary);
  word-break: break-word;
}

._optionArrow_105i4_208 {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--cb-question-floating-text-secondary);
  opacity: 0;
  transition: opacity 0.15s ease;
}

._customInputRow_105i4_288 {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 40px;
  padding: 8px;
  border-radius: 12px;
  background: transparent;
  border: none;
  cursor: text;
  transition: background-color 0.15s ease;
  position: relative;
}
._customInputRow_105i4_288::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0px;
  height: 1px;
  background: var(--cb-question-floating-hover-bg);
  pointer-events: none;
}
._customInputRow_105i4_288:hover {
  background-color: var(--cb-question-floating-hover-bg);
}
._customInputRow_105i4_288:hover ._customInputIcon_105i4_314, ._customInputRow_105i4_288._focused_105i4_314 ._customInputIcon_105i4_314, ._customInputRow_105i4_288._selected_105i4_214 ._customInputIcon_105i4_314 {
  background-color: var(--cb-question-floating-number-active-bg);
  color: var(--cb-question-floating-text-primary);
}

._customInputIcon_105i4_314 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background-color: var(--cb-question-floating-number-bg);
  color: var(--cb-question-floating-text-primary);
  flex-shrink: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}
._customInputIcon_105i4_314 svg {
  width: 12px;
  height: 12px;
  display: block;
}

._customInput_105i4_288 {
  flex: 1;
  min-width: 0;
  border: none;
  outline: none;
  background: transparent;
  color: var(--cb-question-floating-text-primary);
  font-size: 14px;
  line-height: 22px;
  padding: 0;
}
._customInput_105i4_288::placeholder {
  color: var(--cb-question-floating-text-muted);
}

._footer_105i4_352 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 12px 20px 20px;
  flex-shrink: 0;
  min-height: 52px;
}

._footerSingle_105i4_362 {
  justify-content: flex-end;
}

._selectedCount_105i4_366 {
  font-size: 14px;
  line-height: 22px;
  color: var(--cb-question-floating-text-muted);
  flex: 1;
  min-width: 0;
  user-select: none;
}

._footerActions_105i4_375 {
  display: flex;
  align-items: center;
  gap: 12px;
}

._skipBtn_105i4_381 {
  height: 32px;
  padding: 0 12px;
  border-radius: 24px;
  border: none;
  background: var(--cb-question-floating-skip-bg);
  color: var(--cb-question-floating-skip-fg);
  font-size: 14px;
  font-weight: 500;
  line-height: 22px;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}
._skipBtn_105i4_381:hover {
  opacity: 0.85;
}

._iconBtn_105i4_398 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  border: none;
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
  padding: 0;
  flex-shrink: 0;
}
._iconBtn_105i4_398 svg {
  display: block;
  width: 16px;
  height: 16px;
}
._iconBtn_105i4_398._iconBtnDisabled_105i4_416 {
  background-color: var(--cb-question-floating-hover-bg);
  color: var(--cb-question-floating-text-faint);
  cursor: not-allowed;
}
._iconBtn_105i4_398._iconBtnActive_105i4_421 {
  background-color: var(--cb-question-floating-icon-active-bg);
  color: var(--cb-question-floating-icon-active-fg);
}
._iconBtn_105i4_398._iconBtnActive_105i4_421:hover {
  background-color: var(--cb-question-floating-icon-active-bg-hover);
}
._iconBtn_105i4_398._iconBtnActive_105i4_421:active {
  background-color: var(--cb-question-floating-icon-active-bg-active);
}
._iconBtn_105i4_398 {
  /**
   * 发送按钮（最后一题）专用 modifier：
   *   图标本身就是「圆形外壳 + 镂空箭头」的整图，与主输入框 SendButton 同款，
   *   所以按钮自身不再画圆背景，让 32×32 SVG 充满整个按钮，
   *   状态切换通过 color（驱动 path 的 currentColor）。
   */
}
._iconBtn_105i4_398._iconBtnSend_105i4_439 svg {
  width: 32px;
  height: 32px;
}
._iconBtn_105i4_398._iconBtnSend_105i4_439._iconBtnActive_105i4_421 {
  background-color: transparent;
  color: var(--cb-question-floating-icon-active-bg);
}
._iconBtn_105i4_398._iconBtnSend_105i4_439._iconBtnActive_105i4_421:hover {
  background-color: transparent;
  color: var(--cb-question-floating-icon-active-bg-hover);
}
._iconBtn_105i4_398._iconBtnSend_105i4_439._iconBtnActive_105i4_421:active {
  background-color: transparent;
  color: var(--cb-question-floating-icon-active-bg-active);
}
._iconBtn_105i4_398._iconBtnSend_105i4_439._iconBtnDisabled_105i4_416 {
  background-color: transparent;
  color: var(--cb-question-floating-hover-bg);
}.cb-top-tab {
  background-color: var(--cb-input-background, rgba(255, 255, 255, 0.1));
  border: 1px solid var(--cb-input-border-color);
  color: var(--cb-text-primary, #d2d3e0);
  margin: 0 5px;
  bottom: -2px;
  padding-bottom: 2px;
  position: relative;
  border-radius: 8px 8px 0 0;
  border-bottom: none;
  font-size: var(--default-font-size, 13px);
  z-index: 15;
}
.cb-top-tab .cb-top-tab-wrapper {
  padding: 8px 12px;
}
.cb-top-tab .cb-top-tab-inner {
  display: flex;
  padding: 2px;
  align-items: center;
  gap: 4px;
  border-radius: 8px;
  background: var(--cb-bg-secondary);
}
.cb-top-tab .cb-top-tab-icon {
  padding: 0 8px;
  font-size: 0;
}
.cb-top-tab .cb-top-tab-icon svg {
  vertical-align: middle;
  width: 14px;
  height: 14px;
}
.cb-top-tab .cb-top-tab-icon path {
  stroke: var(--cb-text-tertiary, #a0a0a0);
}
.cb-top-tab .cb-top-tab-icon.expand path {
  stroke: var(--cb-text-primary, #d2d3e0);
}
.cb-top-tab .cb-top-tab-item {
  display: flex;
  flex: 1;
  padding: 2px 0;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  line-height: 18px;
  border-radius: 5px;
  cursor: pointer;
}
.cb-top-tab .cb-top-tab-item.active {
  color: var(--cb-text-primary, #d2d3e0);
  background-color: rgba(255, 255, 255, 0.1);
}
.cb-top-tab .cb-top-tab-content {
  display: none;
}
.cb-top-tab .cb-top-tab-content.active {
  display: block;
}.cb-snapshot-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
  font-size: 13px;
  color: var(--cb-vscode-foreground, #cccccc);
  overflow: visible;
  position: relative;
}
.cb-snapshot-wrapper.cb-expand .cb-snapshot-top {
  border-bottom: 1px solid var(--cb-vscode-panel-border, #3c3c3c);
}
.cb-snapshot-wrapper.cb-expand .cb-snapshot-top .codicon-chevron-right {
  transform: rotate(90deg);
}
.cb-snapshot-wrapper .cb-snapshot-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 8px;
  border-bottom: 1px solid transparent;
  position: static;
  overflow: visible;
}
@media screen and (max-width: 390px) {
  .cb-snapshot-wrapper .cb-snapshot-top {
    flex-direction: column;
    align-items: start !important;
    gap: 5px;
  }
}
.cb-snapshot-wrapper .cb-file-summary {
  display: flex;
  align-items: center;
  padding: 3px 1px;
  cursor: pointer;
  gap: 4px;
  flex: 1;
  min-width: 70px;
}
.cb-snapshot-wrapper .cb-file-summary .cb-file-status {
  color: var(--cb-vscode-descriptionForeground);
}
.cb-snapshot-wrapper .cb-file-summary .codicon-chevron-right {
  transform-origin: center;
  transition: transform 0.4s ease;
}
.cb-snapshot-wrapper .cb-file-info {
  display: flex;
  align-items: center;
  min-width: 0;
  flex: 1;
  font-size: 12px;
  line-height: 16px;
  gap: 8px;
}
.cb-snapshot-wrapper .cb-snapshot-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cb-snapshot-wrapper .cb-snapshot-content {
  display: flex;
  flex-direction: column;
  max-height: 280px;
  overflow-y: auto;
}
.cb-snapshot-wrapper .cb-snapshot-content::-webkit-scrollbar {
  width: 8px;
}
.cb-snapshot-wrapper .cb-snapshot-content::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.cb-snapshot-wrapper .cb-snapshot-content::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground);
}
.cb-snapshot-wrapper .cb-snapshot-content--ardot {
  gap: 4px;
  padding: 8px 24px 16px;
  max-height: 320px;
}
.cb-snapshot-wrapper .cb-snapshot-cumulative {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 4px;
  height: 20px;
  line-height: 20px;
  font-size: 12px;
  margin-bottom: 4px;
}
.cb-snapshot-wrapper .cb-snapshot-cumulative__label {
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.5));
  font-weight: 600;
}
.cb-snapshot-wrapper .cb-snapshot-cumulative__added {
  color: var(--cb-diff-added-color, #088f50);
  font-family: Menlo, Consolas, "JetBrains Mono", "SF Mono", monospace;
}
.cb-snapshot-wrapper .cb-snapshot-cumulative__removed {
  color: var(--cb-diff-removed-color, #b42c3f);
  font-family: Menlo, Consolas, "JetBrains Mono", "SF Mono", monospace;
}
.cb-snapshot-wrapper .codicon {
  font-size: 0;
}
.cb-snapshot-wrapper .codicon:before {
  font-size: 16px;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-wrapper {
  position: static;
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-trigger {
  display: flex;
  color: var(--cb-vscode-descriptionForeground);
  align-items: center;
  gap: 4px;
  cursor: pointer;
  padding: 2px 4px;
  border-radius: 4px;
  transition: background-color 0.2s;
  white-space: nowrap;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-trigger:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-trigger .cb-icon-up {
  transform: rotate(180deg);
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-content {
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 100%;
  margin-bottom: 4px;
  box-sizing: border-box;
  max-height: 400px;
  overflow-y: auto;
  overscroll-behavior: contain;
  z-index: 1000;
  outline: none !important;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--cb-vscode-panel-border, #3c3c3c);
  background-color: var(--cb-vscode-dropdown-background, #3c3c3c);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 4px 8px;
  border-radius: 4px;
  cursor: pointer;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item .cb-click-text {
  display: none;
  color: var(--cb-vscode-foreground, #cccccc);
  opacity: 0.6;
  transition: opacity 0.1s ease-in-out;
  cursor: pointer;
  margin-left: 8px;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item .cb-click-text:hover {
  opacity: 0.8;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item .cb-icon-arrow {
  min-width: 16px;
  width: 16px;
  margin-left: 8px;
  color: var(--cb-checkpoint-arrow-color, #bbb);
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item:hover, .cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item.cb-active {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item:hover .cb-click-text {
  display: block;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item .cb-snapshot-checkpoint-item-title {
  gap: 8px;
  align-items: center;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item .cb-snapshot-checkpoint-item-right {
  gap: 0;
  align-items: center;
  margin-left: auto;
  justify-content: flex-end;
}
.cb-snapshot-wrapper .cb-snapshot-checkpoint-items .cb-snapshot-checkpoint-item-desc {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  color: var(--cb-vscode-descriptionForeground);
}
.cb-snapshot-wrapper .cb-loading-dots {
  display: inline-block;
  min-width: 12px;
}
.cb-snapshot-wrapper .cb-loading-dots:after {
  content: "";
  animation: cb-loading-dots 1s steps(4, end) infinite;
}
.cb-snapshot-wrapper .cb-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  outline: none;
  appearance: none;
  font-weight: 500;
  white-space: nowrap;
  user-select: none;
}
.cb-snapshot-wrapper .cb-button--small {
  padding: 2px 12px;
  font-size: 12px;
  line-height: 18px;
  height: 22px;
}
.cb-snapshot-wrapper .cb-button--primary {
  background-color: var(--cb-vscode-button-background, #0e639c);
  color: #fff;
}
.cb-snapshot-wrapper .cb-button--primary:hover, .cb-snapshot-wrapper .cb-button--primary:focus, .cb-snapshot-wrapper .cb-button--primary:active {
  background-color: var(--cb-vscode-button-hoverBackground);
}
.cb-snapshot-wrapper .cb-button--outline {
  background: transparent !important;
  border: 1px solid var(--cb-vscode-panel-border, #3c3c3c) !important;
  color: var(--cb-vscode-descriptionForeground) !important;
}
.cb-snapshot-wrapper .cb-button--outline:hover {
  background-color: var(--cb-vscode-list-hoverBackground) !important;
}
.cb-snapshot-wrapper .cb-button:not(.cb-snapshot-wrapper .cb-button--primary):not(.cb-snapshot-wrapper .cb-button--outline) {
  background-color: var(--cb-button-secondary-background, #ffffff);
  color: var(--cb-button-secondary-foreground, #4C4F6B);
}
.cb-snapshot-wrapper .cb-button:not(.cb-snapshot-wrapper .cb-button--primary):not(.cb-snapshot-wrapper .cb-button--outline):hover, .cb-snapshot-wrapper .cb-button:not(.cb-snapshot-wrapper .cb-button--primary):not(.cb-snapshot-wrapper .cb-button--outline):focus, .cb-snapshot-wrapper .cb-button:not(.cb-snapshot-wrapper .cb-button--primary):not(.cb-snapshot-wrapper .cb-button--outline):active {
  background-color: var(--cb-button-secondary-background, #606060);
}
.cb-snapshot-wrapper .cb-flex {
  display: flex;
}
.cb-snapshot-wrapper .cb-flex-1 {
  flex: 1;
}

@keyframes cb-loading-dots {
  0%, 20% {
    content: "";
  }
  40% {
    content: ".";
  }
  60% {
    content: "..";
  }
  80%, 100% {
    content: "...";
  }
}
/**
 * LoadingDots 公共组件样式
 * 从 chat-ui/components/loading-dots/loading-dots.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/components/loading-dots/loading-dots.less
 */
.cb-loading-dots {
  display: inline-block;
  font-size: 12px;
  min-width: 12px;
  line-height: 12px;
}

.cb-loading-dots:after {
  content: "";
  animation: cb-loading-dots-animation 1s steps(4, end) infinite;
}

@keyframes cb-loading-dots-animation {
  0%, 20% {
    content: "";
  }
  40% {
    content: ".";
  }
  60% {
    content: "..";
  }
  80%, 100% {
    content: "...";
  }
}.cb-text-ellipsis, .cb-file-path, .cb-file-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.cb-snapshot-file {
  display: flex;
  padding: 2px 12px;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
  min-width: 0;
  height: 25px;
  gap: 8px;
  overflow: hidden;
  color: var(--cb-vscode-foreground, #cccccc);
  flex-shrink: 0;
  cursor: pointer;
}
.cb-snapshot-file .cb-status-modify {
  display: none;
  font-size: 0;
  gap: 4px;
  align-items: center;
}
.cb-snapshot-file:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.cb-snapshot-file:hover .cb-status-modify {
  display: flex;
}
.cb-snapshot-file:hover .cb-status-modify > span {
  opacity: 0.7;
}
.cb-snapshot-file:hover .cb-status-modify > span:hover {
  opacity: 1;
}
.cb-snapshot-file:hover .cb-file-diff.cb-not-modify,
.cb-snapshot-file:hover .cb-status {
  display: none;
}

.cb-file-content {
  display: flex;
  align-items: center;
  font-size: 13px;
  line-height: 21px;
  gap: 4px;
  min-width: 0;
  overflow: hidden;
}
.cb-file-content > span {
  flex-shrink: 0;
}

.cb-file-status {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  position: relative;
}

.cb-file-diff {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  line-height: 18px;
}
.cb-file-diff .cb-added-lines {
  color: var(--cb-diff-added-color, #16825d);
}
.cb-file-diff .cb-removed-lines {
  color: var(--cb-diff-removed-color, #f14c4c);
}

.cb-file-icon {
  height: 16px;
  width: 16px;
  flex-shrink: 0;
  font-size: 16px;
  line-height: 16px;
}
.cb-file-icon:before {
  font-size: 16px !important;
  line-height: 16px;
}

.cb-file-name {
  max-width: 50%;
  flex-shrink: 0;
}

.cb-file-path {
  color: var(--cb-vscode-descriptionForeground);
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
}

.cb-status {
  margin-left: 4px;
  min-width: 4px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: var(--cb-status-success-color, #16825d);
}
.cb-status.cb-pending {
  background-color: var(--cb-status-pending-color, #e08855);
}

.cb-status-text-wrapper {
  color: var(--cb-vscode-descriptionForeground);
  display: flex;
  align-items: center;
  gap: 4px;
}

.cb-status-text-inner {
  display: flex;
  align-items: center;
  gap: 4px;
}

.cb-cursor-pointer {
  cursor: pointer;
  display: flex;
  align-items: center;
  padding: 2px;
  border-radius: 2px;
  transition: background-color 0.2s;
}
.cb-cursor-pointer:hover {
  background-color: var(--cb-vscode-toolbar-hoverBackground);
}
.cb-cursor-pointer.cb-disabled {
  opacity: 0.5;
  pointer-events: none;
}

.cb-icon-active.cb-refused {
  border-radius: 2px;
  padding: 2px;
}
.cb-cursor-pointer:hover .cb-icon-active.cb-refused {
  background-color: var(--cb-vscode-toolbar-hoverBackground);
}

.cb-icon-active {
  width: 14px;
  height: 14px;
}
.cb-icon-active.cb-refused {
  color: var(--cb-icon-refused-color, #FF0000);
}
.cb-icon-active.cb-accept {
  color: var(--cb-icon-accepted-color, #16825D);
}

.codicon {
  font-size: 0;
}
.codicon:before {
  font-size: 12px;
}.cb-rounded-file-change {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  height: 32px;
  padding: 0 12px;
  border-radius: 8px;
  background-color: var(--cb-file-change-row-bg, #f7f7f7);
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.7));
  cursor: pointer;
  overflow: hidden;
  transition: background-color 0.15s ease;
}
.cb-rounded-file-change:hover {
  background-color: var(--cb-file-change-row-hover-bg, #efefef);
}
.cb-rounded-file-change:hover .cb-rounded-file-change__hover-actions {
  display: inline-flex;
}
.cb-rounded-file-change:hover .cb-rounded-file-change__diff {
  display: none;
}
.cb-rounded-file-change--accepted {
  opacity: 0.7;
}
.cb-rounded-file-change--rejected {
  opacity: 0.6;
}

.cb-rounded-file-change__main {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}

.cb-rounded-file-change__icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.cb-rounded-file-change__name {
  font-family: Menlo, Consolas, "JetBrains Mono", "SF Mono", monospace;
  font-size: 14px;
  line-height: 22px;
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.7));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}

.cb-rounded-file-change__status {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  position: relative;
}

.cb-rounded-file-change__pending {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.5));
  font-size: 12px;
  line-height: 20px;
}

.cb-rounded-file-change__diff {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-family: "JetBrains Mono", Menlo, Consolas, "SF Mono", monospace;
  font-size: 10px;
  line-height: 20px;
}

.cb-rounded-file-change__added {
  color: var(--cb-diff-added-color, #088f50);
}

.cb-rounded-file-change__removed {
  color: var(--cb-diff-removed-color, #b42c3f);
}

.cb-rounded-file-change__state-icon {
  width: 14px;
  height: 14px;
}
.cb-rounded-file-change__state-icon--accept {
  color: var(--cb-icon-accepted-color, #088f50);
}
.cb-rounded-file-change__state-icon--refuse {
  color: var(--cb-icon-refused-color, #b42c3f);
}

.cb-rounded-file-change__hover-actions {
  display: none;
  align-items: center;
  gap: 2px;
}

.cb-rounded-file-change__hover-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  border-radius: 4px;
  color: var(--cb-icon-accepted-color, #088f50);
  cursor: pointer;
  transition: background-color 0.15s ease, opacity 0.15s ease;
  opacity: 0.75;
}
.cb-rounded-file-change__hover-btn:hover {
  background-color: var(--cb-vscode-toolbar-hoverBackground, rgba(0, 0, 0, 0.06));
  opacity: 1;
}
.cb-rounded-file-change__hover-btn--refuse {
  color: var(--cb-icon-refused-color, #b42c3f);
}.cb-task-list-wrapper .cb-task-list-status {
  padding: 8px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.cb-task-list-wrapper .cb-task-list-status-text {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}
.cb-task-list-wrapper .cb-task-list-detail {
  flex-direction: column;
  gap: 4px;
  padding: 6px 12px;
  display: none;
  max-height: 300px;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-scrollbar-thumb) transparent;
  border-top: 1px solid var(--cb-stroke-tertiary);
}
.cb-task-list-wrapper .cb-task-list-item {
  position: relative;
  display: flex;
  align-items: start;
  padding: 2px;
  gap: 4px;
  border-radius: 3px;
  cursor: pointer;
}
.cb-task-list-wrapper .cb-task-list-item:hover {
  background-color: var(--cb-bg-hover);
}
.cb-task-list-wrapper .cb-task-list-item.edit {
  background-color: transparent;
}
.cb-task-list-wrapper .cb-task-list-item:before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 8px;
  width: 1px;
  height: 4px;
  background-color: #606060;
}
.cb-task-list-wrapper .cb-task-list-item:last-child:before {
  display: none;
}
.cb-task-list-wrapper .cb-task-list-content {
  flex: 1;
  display: flex;
  gap: 6px;
  flex-direction: column;
}
.cb-task-list-wrapper .cb-task-list-content.line-through {
  opacity: 0.5;
}
.cb-task-list-wrapper .cb-task-list-content.line-through .cb-task-list-text,
.cb-task-list-wrapper .cb-task-list-content.line-through .cb-task-list-desc {
  text-decoration: line-through;
}
.cb-task-list-wrapper .cb-task-list-text {
  flex: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  line-height: 18px;
}
.cb-task-list-wrapper .cb-task-list-desc {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;
  line-height: 18px;
  color: var(--cb-text-secondary, #858699);
}
.cb-task-list-wrapper .cb-task-list-textarea {
  resize: none;
  line-height: 18px;
  padding: 2px 6px;
  background-color: var(--cb-input-bg);
  color: var(--cb-text-primary, #d2d3e0);
  border: none;
  outline: none;
  scrollbar-color: var(--cb-scrollbar-thumb) transparent;
  scrollbar-width: thin;
  font-size: 12px;
  border-radius: 4px;
}
.cb-task-list-wrapper .cb-task-list-textarea:focus {
  border: 1px solid var(--cb-border-focus);
}
.cb-task-list-wrapper .cb-task-list-icon {
  flex-shrink: 0;
  margin-top: 2px;
  width: 14px;
  height: 14px;
}
.cb-task-list-wrapper .cb-task-list-icon.cb-loading-spinner {
  width: 12px;
  height: 12px;
}
.cb-task-list-wrapper .cb-task-list-wait {
  border-radius: 20px;
  border: 1px solid #606060;
}
.cb-task-list-wrapper .cb-task-list-operate,
.cb-task-list-wrapper .cb-task-list-status-operate {
  display: flex;
  gap: 4px;
  align-items: center;
}
.cb-task-list-wrapper .cb-task-list-operate svg,
.cb-task-list-wrapper .cb-task-list-status-operate svg {
  padding: 2px;
  width: 16px;
  height: 16px;
  cursor: pointer;
}
.cb-task-list-wrapper .cb-task-list-operate svg path,
.cb-task-list-wrapper .cb-task-list-status-operate svg path {
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-task-list-wrapper .cb-task-list-operate {
  display: none;
}
.cb-task-list-wrapper .cb-task-list-item:hover .cb-task-list-operate {
  display: flex;
}
.cb-task-list-wrapper .cb-task-list-operate-icon {
  height: 18px;
  opacity: 0.7;
}
.cb-task-list-wrapper .cb-task-list-operate-icon:hover {
  opacity: 1;
}
.cb-task-list-wrapper .cb-task-list-input {
  display: block;
  padding: 0 6px;
  width: 100%;
  height: 18px;
  line-height: 16px;
  font-size: 12px;
  border: none;
  outline: none;
  border-radius: 4px;
  background-color: var(--cb-input-bg);
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-task-list-wrapper .cb-task-list-input:focus {
  border: 1px solid var(--cb-border-focus);
}
.cb-task-list-wrapper .cb-task-list-input::placeholder {
  color: var(--cb-text-placeholder);
}
.cb-task-list-wrapper .cb-task-list-title {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 16px;
  justify-content: space-between;
  gap: 8px;
  color: var(--cb-text-primary, #d2d3e0);
  background-color: var(--cb-bg-primary, rgba(255, 255, 255, 0.1));
}
.cb-task-list-wrapper .cb-task-list-title-left {
  display: flex;
  align-items: center;
  gap: 4px;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.cb-task-list-wrapper .cb-task-list-title-icon {
  opacity: 0.7;
  cursor: pointer;
  width: 14px;
  height: 14px;
}
.cb-task-list-wrapper .cb-task-list-title-icon:hover {
  opacity: 1;
}
.cb-task-list-wrapper.expand .cb-task-list-detail {
  display: flex;
}
.cb-task-list-wrapper.view-mode .cb-task-list-detail {
  padding: 8px 12px;
  border: none;
}
.cb-task-list-wrapper.view-mode .cb-task-list-item {
  cursor: auto;
}
/**
 * DiffViewer 样式
 * 转换自 simple-diff-view.less
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.diff-viewer {
  font-size: 12px;
  line-height: 18px;
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.diff-viewer::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.diff-viewer::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.diff-viewer::-webkit-scrollbar-thumb:hover {
  background-color: var(--vscode-scrollbarSlider-hoverBackground);
}
.diff-viewer::-webkit-scrollbar-track {
  background-color: transparent;
}
.diff-viewer pre {
  margin: 0;
  padding: 0;
  background: transparent;
  overflow: visible;
}
.diff-viewer_stats, .diff-viewer__stats, .diff-viewer__stats-added, .diff-viewer__stats-removed {
  display: none;
}
.diff-viewer__item {
  margin: 0;
  padding: 0;
  line-height: 18px;
}
.diff-viewer__item > div {
  min-width: 100%;
  display: flex;
  align-items: flex-start;
}
.diff-viewer__line-content {
  flex: 1;
  min-width: 0;
}
.diff-viewer__gutter {
  width: 16px;
  height: 18px;
  margin-right: 2px;
  flex-shrink: 0;
  border-left: 2px solid transparent;
}
.diff-viewer__inserted {
  padding: 0;
}
.diff-viewer__inserted .diff-viewer__gutter {
  height: -webkit-fill-available;
  border-left-color: rgba(16, 185, 129, 0.5);
  background-color: rgba(16, 185, 129, 0.2);
}
.diff-viewer__inserted .diff-viewer__line-content {
  height: -webkit-fill-available;
  background-color: rgba(16, 185, 129, 0.2);
}
.diff-viewer__removed {
  padding: 0;
}
.diff-viewer__removed .diff-viewer__gutter {
  height: -webkit-fill-available;
  border-left-color: rgba(239, 68, 68, 0.5);
  background-color: rgba(239, 68, 68, 0.2);
}
.diff-viewer__removed .diff-viewer__line-content {
  height: -webkit-fill-available;
  background-color: rgba(239, 68, 68, 0.2);
}
.diff-viewer__unchanged {
  padding: 0;
}
.diff-viewer__unchanged .diff-viewer__gutter {
  border-left-color: transparent;
}
:global(.light) .diff-viewer__inserted,
:global(.cb-light) .diff-viewer__inserted,
.cbChat.light .diff-viewer__inserted {
  background-color: var(--cb-vscode-diffEditor-insertedLineBackground, rgba(46, 160, 67, 0.15));
}
:global(.light) .diff-viewer__inserted::before,
:global(.cb-light) .diff-viewer__inserted::before,
.cbChat.light .diff-viewer__inserted::before {
  color: rgb(46, 160, 67);
}
:global(.light) .diff-viewer__inserted .diff-viewer__gutter,
:global(.cb-light) .diff-viewer__inserted .diff-viewer__gutter,
.cbChat.light .diff-viewer__inserted .diff-viewer__gutter {
  border-left-color: rgba(46, 160, 67, 0.5);
}
:global(.light) .diff-viewer__removed,
:global(.cb-light) .diff-viewer__removed,
.cbChat.light .diff-viewer__removed {
  background-color: var(--cb-vscode-diffEditor-removedLineBackground, rgba(255, 0, 0, 0.15));
}
:global(.light) .diff-viewer__removed::before,
:global(.cb-light) .diff-viewer__removed::before,
.cbChat.light .diff-viewer__removed::before {
  color: rgb(207, 34, 46);
}
:global(.light) .diff-viewer__removed .diff-viewer__gutter,
:global(.cb-light) .diff-viewer__removed .diff-viewer__gutter,
.cbChat.light .diff-viewer__removed .diff-viewer__gutter {
  border-left-color: rgba(207, 34, 46, 0.5);
}
/**
 * 单行工具头部统一样式
 *
 * 用于统一 read-file、list-file、search、execute-command 等单行工具的展示
 * 确保高度、字体大小、间距一致
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.tool-card-container--line {
  padding-bottom: 2px;
}

.single-line-tool-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  min-height: 25px;
}
.single-line-tool-header .tool-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.single-line-tool-header .tool-icon svg {
  width: 14px;
  height: 14px;
}
.single-line-tool-header .status-text {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 14px;
  white-space: nowrap;
  flex-shrink: 0;
}
.single-line-tool-header .status-text.loading-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.single-line-tool-header .primary-content {
  font-size: 14px;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  min-width: 0;
  flex: 0 1 auto;
}
.single-line-tool-header .primary-content.clickable {
  cursor: pointer;
}
.single-line-tool-header .primary-content.clickable:hover {
  text-decoration: underline;
}
.single-line-tool-header .cursor-pointer {
  cursor: pointer;
}
.single-line-tool-header .title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.single-line-tool-header .text-tertiary {
  color: var(--cb-text-tertiary, #a0a0a0);
}
.single-line-tool-header .text-link {
  color: var(--cb-text-link, #4a90e2);
}
.single-line-tool-header .secondary-info {
  color: var(--cb-text-tertiary, #a0a0a0);
  font-size: 14px;
  white-space: nowrap;
  flex-shrink: 0;
}
.single-line-tool-header .tool-arrow {
  margin-left: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, #a0a0a0);
  transition: color 0.16s ease, transform 0.16s ease, opacity 0.16s ease;
  transform: rotate(-90deg);
  opacity: 0;
}
.single-line-tool-header .tool-arrow svg {
  width: 16px;
  height: 16px;
}
.single-line-tool-header.collapsible {
  cursor: pointer;
}
.single-line-tool-header.collapsible:hover .tool-icon,
.single-line-tool-header.collapsible:hover .status-text,
.single-line-tool-header.collapsible:hover .primary-content,
.single-line-tool-header.collapsible:hover .secondary-info,
.single-line-tool-header.collapsible:hover .tool-arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.single-line-tool-header.collapsible:hover .tool-arrow {
  opacity: 1;
}
.single-line-tool-header.collapsible.expanded .tool-arrow {
  transform: rotate(0deg);
  opacity: 1;
}.tool-renderer-error-boundary .cb-error-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-text-error-active, #B42C3F);
}
.tool-renderer-error-boundary .cb-error-title {
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--cb-text-error-active, #B42C3F);
  font-weight: 500;
}
.tool-renderer-error-boundary .cb-error-title .cb-tool-name {
  font-family: var(--cb-font-monospace, "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace);
  font-size: 0.9em;
  opacity: 0.9;
}
.tool-renderer-error-boundary .cb-retry-button {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid var(--cb-button-border, #e1e4e8);
  border-radius: 4px;
  background: var(--cb-button-background, #ffffff);
  color: var(--cb-button-foreground, #24292e);
  font-size: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.tool-renderer-error-boundary .cb-retry-button:hover {
  background: var(--cb-button-hover-background, #f3f4f6);
  border-color: var(--cb-button-hover-border, #d1d5db);
}
.tool-renderer-error-boundary .cb-retry-button:active {
  background: var(--cb-button-active-background, #e5e7eb);
}
.tool-renderer-error-boundary .cb-retry-button svg {
  flex-shrink: 0;
}
.tool-renderer-error-boundary .cb-max-retries {
  font-size: 12px;
  color: var(--cb-description-foreground, #6b7280);
  font-style: italic;
}
.tool-renderer-error-boundary .cb-error-content {
  padding: 12px;
  border-top: 1px solid var(--cb-border-color, #e1e4e8);
  background: var(--cb-error-background, rgba(255, 107, 107, 0.05));
}
.tool-renderer-error-boundary .cb-error-message {
  color: var(--cb-text-error-active, #B42C3F);
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 8px;
}
.tool-renderer-error-boundary .cb-error-details {
  margin-top: 8px;
}
.tool-renderer-error-boundary .cb-error-details summary {
  cursor: pointer;
  font-size: 12px;
  color: var(--cb-description-foreground, #6b7280);
  margin-bottom: 4px;
}
.tool-renderer-error-boundary .cb-error-details summary:hover {
  color: var(--cb-foreground, #24292e);
}
.tool-renderer-error-boundary .cb-error-details pre {
  background: var(--cb-vscode-editor-background, #1e1e1e);
  color: var(--cb-vscode-editor-foreground, #d4d4d4);
  padding: 8px;
  border-radius: 4px;
  font-size: 11px;
  line-height: 1.4;
  overflow-x: auto;
  border: 1px solid var(--cb-border-color, #e1e4e8);
}
.tool-renderer-error-boundary.dark .cb-retry-button, .vs-dark .tool-renderer-error-boundary .cb-retry-button {
  background: var(--cb-button-background, #2d2d30);
  color: var(--cb-button-foreground, #cccccc);
  border-color: var(--cb-button-border, #3e3e42);
}
.tool-renderer-error-boundary.dark .cb-retry-button:hover, .vs-dark .tool-renderer-error-boundary .cb-retry-button:hover {
  background: var(--cb-button-hover-background, #3e3e42);
  border-color: var(--cb-button-hover-border, #5a5a5a);
}
.tool-renderer-error-boundary.dark .cb-retry-button:active, .vs-dark .tool-renderer-error-boundary .cb-retry-button:active {
  background: var(--cb-button-active-background, #4a4a4a);
}
.tool-renderer-error-boundary.dark .cb-error-content, .vs-dark .tool-renderer-error-boundary .cb-error-content {
  background: var(--cb-error-background, rgba(255, 107, 107, 0.1));
}
.tool-renderer-error-boundary.high-contrast .cb-error-icon,
.tool-renderer-error-boundary.high-contrast .cb-error-title,
.tool-renderer-error-boundary.high-contrast .cb-error-message, .hc-black .tool-renderer-error-boundary .cb-error-icon,
.hc-black .tool-renderer-error-boundary .cb-error-title,
.hc-black .tool-renderer-error-boundary .cb-error-message {
  color: var(--cb-vscode-errorForeground, #f48771);
}
.tool-renderer-error-boundary.high-contrast .cb-retry-button, .hc-black .tool-renderer-error-boundary .cb-retry-button {
  border-color: var(--cb-vscode-button-border, #6fc3df);
  background: var(--cb-vscode-button-background, #0c4d7f);
  color: var(--cb-vscode-button-foreground, #ffffff);
}
.tool-renderer-error-boundary.high-contrast .cb-retry-button:hover, .hc-black .tool-renderer-error-boundary .cb-retry-button:hover {
  background: var(--cb-vscode-button-hoverBackground, #2b6183);
}
.tool-renderer-error-boundary.high-contrast .cb-error-content, .hc-black .tool-renderer-error-boundary .cb-error-content {
  background: var(--cb-error-background, rgba(244, 135, 113, 0.1));
}
/**
 * 工具审批菜单样式
 * 
 * 复用 tool-card.scss 中的 .tool-menu 样式设计
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.tool-approval-menu {
  display: flex;
  flex-direction: column;
  padding: 2px;
  margin-top: 6px;
  border-radius: 6px;
  gap: 4px;
  font-size: 12px;
  min-width: 200px;
  width: fit-content;
  box-sizing: border-box;
  background-color: var(--cb-vscode-dropdown-background, #3c3c3c);
  border: 1px solid var(--cb-vscode-commandCenter-inactiveBorder, var(--cb-vscode-widget-border, #414141));
}
.tool-approval-menu .approval-menu-title {
  padding: 2px 6px;
  font-size: 10.5px;
  color: var(--cb-text-secondary, #858699);
}
.tool-approval-menu .approval-menu-content {
  display: flex;
  gap: 2px;
  flex-direction: column;
}
.tool-approval-menu .approval-menu-item {
  padding: 2px 6px;
  color: var(--cb-text-primary, #d2d3e0);
  border-radius: 4px;
  line-height: 16px;
  cursor: pointer;
}
.tool-approval-menu .approval-menu-item:hover {
  background-color: var(--cb-bg-primary, rgba(255, 255, 255, 0.1));
  color: var(--cb-vscode-list-activeSelectionForeground);
}.tool-args-invalid-fallback {
  display: flex;
  align-items: center;
  gap: 6px;
  padding-bottom: 2px;
  font-size: 12px;
  line-height: 1.4;
  color: var(--cb-text-secondary, #8b949e);
}
.tool-args-invalid-fallback__icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--cb-warning, #d29922);
}
.tool-args-invalid-fallback__text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tool-args-invalid-fallback__name {
  opacity: 0.7;
  font-family: var(--cb-font-monospace, "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace);
}
/**
 * ReadFile 渲染器样式
 * 从 chat-ui/tool.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/tool.less (行 411-417)
 *
 * 注意：现在使用 SingleLineToolHeader 统一管理样式
 * 样式通过组件内的 import 语句自动导入
 */
/**
 * WriteFile 渲染器样式
 * 从 chat-ui/renderers/write-to-file/ 转换而来
 * 源文件：
 * - packages/chat-ui/src/browser/message/tools/renderers/write-to-file/write-to-file.less
 * - packages/chat-ui/src/browser/message/tools/renderers/write-to-file/simple-diff-view.less
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.write-to-file .card-header,
.write-file-renderer .card-header {
  padding: 4px 8px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.write-to-file .card-header.click-header:hover,
.write-file-renderer .card-header.click-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.write-to-file .card-header.click-header:hover .title,
.write-file-renderer .card-header.click-header:hover .title {
  color: var(--cb-vscode-list-activeSelectionForeground);
}
.write-to-file .card-header .left,
.write-file-renderer .card-header .left {
  align-items: center;
}
.write-to-file .card-header .left .file-icon,
.write-file-renderer .card-header .left .file-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.write-to-file .card-header .left .file-icon svg,
.write-to-file .card-header .left .file-icon img,
.write-file-renderer .card-header .left .file-icon svg,
.write-file-renderer .card-header .left .file-icon img {
  display: block;
  vertical-align: middle;
}
.write-to-file .card-header .left .title,
.write-file-renderer .card-header .left .title {
  cursor: pointer;
  color: var(--cb-text-primary, #d2d3e0);
}
.write-to-file .card-header .left .operate-type,
.write-file-renderer .card-header .left .operate-type {
  text-align: right;
  font-feature-settings: "liga" off, "clig" off;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  flex-shrink: 0;
  margin-left: 4px;
}
.write-to-file .card-header .left .operate-type.modify,
.write-file-renderer .card-header .left .operate-type.modify {
  color: #ee9d28;
}
.write-to-file .card-header .left .operate-type.write,
.write-file-renderer .card-header .left .operate-type.write {
  color: #40c8ae;
}
.write-to-file .card-header .left .operate-type.read,
.write-file-renderer .card-header .left .operate-type.read {
  color: #808080;
}
.write-to-file .card-header .left .operate-type.failed,
.write-file-renderer .card-header .left .operate-type.failed {
  color: var(--cb-text-tertiary, #a0a0a0);
}
.write-to-file .card-header .left .failed-icon,
.write-file-renderer .card-header .left .failed-icon {
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  margin-right: 4px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.write-to-file .card-header .left .add,
.write-file-renderer .card-header .left .add {
  color: rgb(36, 163, 148);
  margin-right: 5px;
  font-weight: 600;
}
.write-to-file .card-header .left .delete,
.write-file-renderer .card-header .left .delete {
  color: rgb(219, 92, 92);
  margin-right: 2px;
}
.write-to-file .card-header .left .change-file-info,
.write-file-renderer .card-header .left .change-file-info {
  display: flex;
  align-items: center;
}
.write-to-file .card-header .left .change-line-info,
.write-file-renderer .card-header .left .change-line-info {
  display: flex;
  margin-left: 4px;
  align-items: center;
  white-space: nowrap;
  flex-shrink: 0;
}
.write-to-file .card-header .left .change-line-info:hover .add,
.write-to-file .card-header .left .change-line-info:hover .delete,
.write-file-renderer .card-header .left .change-line-info:hover .add,
.write-file-renderer .card-header .left .change-line-info:hover .delete {
  display: none;
}
.write-to-file .card-header .left .change-line-info:hover .diff-btn,
.write-file-renderer .card-header .left .change-line-info:hover .diff-btn {
  display: block;
}
.write-to-file .card-header .left .info,
.write-file-renderer .card-header .left .info {
  color: var(--cb-text-tertiary, #a0a0a0);
  margin-left: 6px;
}
.write-to-file .card-header .left .diff-btn,
.write-file-renderer .card-header .left .diff-btn {
  display: none;
  color: var(--cb-text-tertiary, #a0a0a0);
  right: 12px;
  cursor: pointer;
  white-space: nowrap;
}
.write-to-file .card-header .right .icon-hover,
.write-file-renderer .card-header .right .icon-hover {
  width: 18px;
  height: 18px;
}
.write-to-file .card-content,
.write-file-renderer .card-content {
  padding: 0 !important;
}
.write-to-file .tool-control-wrapper,
.write-file-renderer .tool-control-wrapper {
  display: flex;
  align-items: center;
  font-size: 12px;
  gap: 4px;
}
.write-to-file .status-icon,
.write-file-renderer .status-icon {
  width: 12px;
  height: 12px;
}
.write-to-file .icon-accept,
.write-file-renderer .icon-accept {
  color: #40c8ae;
}
.write-to-file .icon-reject,
.write-file-renderer .icon-reject {
  color: #c74e39;
}
.write-to-file .loading-icon,
.write-file-renderer .loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.write-to-file .write-file-result,
.write-file-renderer .write-file-result {
  overflow-y: auto;
  overflow-x: hidden;
  padding: 6px 8px;
  max-height: 300px;
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.write-to-file .write-file-result::-webkit-scrollbar,
.write-file-renderer .write-file-result::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.write-to-file .write-file-result::-webkit-scrollbar-thumb,
.write-file-renderer .write-file-result::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.write-to-file .write-file-result::-webkit-scrollbar-thumb:hover,
.write-file-renderer .write-file-result::-webkit-scrollbar-thumb:hover {
  background-color: var(--vscode-scrollbarSlider-hoverBackground);
}
.write-to-file .write-file-result::-webkit-scrollbar-track,
.write-file-renderer .write-file-result::-webkit-scrollbar-track {
  background-color: transparent;
}
.write-to-file .write-file-result.executing,
.write-file-renderer .write-file-result.executing {
  max-height: 150px;
}
.write-to-file .write-file-result pre,
.write-file-renderer .write-file-result pre {
  font-family: "JetBrains Mono", "Fira Code", "Consolas", monospace;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
}
.write-to-file .write-file-result pre > div,
.write-file-renderer .write-file-result pre > div {
  width: fit-content;
  min-width: 100%;
}
.write-to-file .write-file-result pre .truncated-hint,
.write-file-renderer .write-file-result pre .truncated-hint {
  padding: 8px 0 4px;
  color: var(--cb-text-secondary, #888);
  font-style: italic;
  font-size: 12px;
  font-family: -apple-system, BlinkMacSystemFont, sans-serif;
}
.write-to-file .card-bottom,
.write-file-renderer .card-bottom {
  padding: 0;
}
.simple-diff-view pre {
  font-family: "JetBrains Mono", "Fira Code", "Consolas", monospace;
  margin: 0;
}
.simple-diff-view pre > div {
  width: fit-content;
  min-width: 100%;
}
.simple-diff-view__inserted {
  background-color: var(--cb-vscode-diffEditor-insertedLineBackground, rgba(155, 185, 85, 0.2));
  display: block;
  min-width: 100%;
}
.simple-diff-view__removed {
  background-color: var(--cb-vscode-diffEditor-removedLineBackground, rgba(255, 0, 0, 0.2));
  display: block;
  min-width: 100%;
}
.simple-diff-view__char_inserted {
  background-color: var(--cb-vscode-diffEditor-insertedTextBackground, rgba(156, 204, 44, 0.2));
}
.simple-diff-view__char_removed {
  background-color: var(--cb-vscode-diffEditor-removedTextBackground, rgba(255, 0, 0, 0.2));
}
/**
 * MultiEditDiffViewer 样式
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.multi-edit-diff-viewer {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.multi-edit-diff-viewer__item {
  border-radius: 4px;
  overflow: hidden;
}
.multi-edit-diff-viewer__item-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 4px 8px;
  background-color: var(--cb-bg-secondary, rgba(255, 255, 255, 0.05));
}
.multi-edit-diff-viewer__item-label {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
  font-weight: 500;
}
.multi-edit-diff-viewer__item-stats {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
}
.multi-edit-diff-viewer__item-added {
  color: var(--cb-success-color, #4ec9b0);
}
.multi-edit-diff-viewer__item-removed {
  color: var(--cb-error-foreground, #f14c4c);
}
/**
 * WriteFile 简洁模式渲染器样式
 * 参考 Figma 设计稿: 一行内联 + 可展开的 diff 内容区
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.write-file-compact {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  padding-bottom: 2px;
}
.write-file-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.write-file-compact__header.expandable {
  cursor: pointer;
}
.write-file-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.write-file-compact__failed-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.write-file-compact__file-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.write-file-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.write-file-compact__action.failed {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.write-file-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.write-file-compact__filename {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.write-file-compact__filename.clickable {
  cursor: pointer;
  color: var(--cb-text-link);
}
.write-file-compact__filename.clickable:hover {
  text-decoration: underline;
}
.write-file-compact__changes {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.write-file-compact__multi-edit-count {
  color: var(--cb-file-op-modify-color, #ee9d28);
  font-size: 12px;
  font-weight: 400;
  flex-shrink: 0;
}
.write-file-compact__added {
  color: var(--cb-file-op-added-color, #088F50);
}
.write-file-compact__removed {
  color: var(--cb-file-op-removed-color, #B42C3F);
}
.write-file-compact__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.2s ease, color 0.15s ease;
}
.write-file-compact__arrow.expanded {
  transform: rotate(0deg);
}
.write-file-compact__header.expandable:hover .write-file-compact__file-icon, .write-file-compact__header.expandable:hover .write-file-compact__action, .write-file-compact__header.expandable:hover .write-file-compact__changes, .write-file-compact__header.expandable:hover .write-file-compact__arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.write-file-compact__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 4px 0;
  background: var(--cb-bg-primary-active, #F2F2F2);
  border-radius: 4px;
  padding: 8px;
  overflow: hidden;
}
.write-file-compact__content--diff {
  padding: 12px 0;
  background: var(--cb-panel-bg-primary, #FFFFFF);
  border: 1px solid var(--cb-border-secondary, #EBEBEB);
  border-radius: 16px;
}
.write-file-compact__content--executing {
  background: var(--cb-panel-bg-primary, #FFFFFF);
}
.write-file-compact__content--executing .write-file-compact__diff {
  background-color: var(--cb-panel-bg-primary, #FFFFFF);
}
.write-file-compact__content--executing .write-file-compact__diff pre {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.write-file-compact__diff {
  background-color: var(--cb-vscode-diffEditor-insertedLineBackground, rgba(155, 185, 85, 0.1));
  border-radius: 4px;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 300px;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background, transparent) transparent;
}
.write-file-compact__diff::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.write-file-compact__diff::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.write-file-compact__diff::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground);
}
.write-file-compact__diff::-webkit-scrollbar-track {
  background-color: transparent;
}
.write-file-compact__diff pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
  font-size: 12px;
  color: var(--cb-text-tertiary, #6a737d);
}
.write-file-compact__diff pre > div {
  width: fit-content;
  min-width: 100%;
}@use "../../../../styles/vscode-theme-vars.scss";
.delete-files-renderer .card-header,
.delete-files .card-header {
  padding: 4px 8px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.delete-files-renderer .card-header.click-header:hover,
.delete-files .card-header.click-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.delete-files-renderer .card-header.click-header:hover .title,
.delete-files .card-header.click-header:hover .title {
  color: var(--cb-vscode-list-activeSelectionForeground);
}
.delete-files-renderer .card-header .left,
.delete-files .card-header .left {
  align-items: center;
}
.delete-files-renderer .card-header .left .file-icon,
.delete-files .card-header .left .file-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.delete-files-renderer .card-header .left .file-icon svg,
.delete-files .card-header .left .file-icon svg,
.delete-files-renderer .card-header .left .file-icon img,
.delete-files .card-header .left .file-icon img {
  display: block;
  vertical-align: middle;
}
.delete-files-renderer .card-header .left .title,
.delete-files .card-header .left .title {
  line-height: 1.75;
  cursor: pointer;
  color: var(--cb-text-primary, #d2d3e0);
}
.delete-files-renderer .card-header .left .operate-type,
.delete-files .card-header .left .operate-type {
  text-align: right;
  font-feature-settings: 'liga' off, 'clig' off;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  flex-shrink: 0;
  margin-left: 4px;
  color: #808080;
}
.delete-files-renderer .card-header .left .operate-type.modify,
.delete-files .card-header .left .operate-type.modify {
  color: #EE9D28;
}
.delete-files-renderer .card-header .left .operate-type.write,
.delete-files .card-header .left .operate-type.write {
  color: #40C8AE;
}
.delete-files-renderer .card-header .left .operate-type.read,
.delete-files .card-header .left .operate-type.read {
  color: #808080;
}
.delete-files-renderer .card-header .left .operate-type.delete,
.delete-files .card-header .left .operate-type.delete {
  color: #db5c5c;
}
.delete-files-renderer .card-header .left .add,
.delete-files .card-header .left .add {
  color: #24a394;
  margin-right: 5px;
  font-weight: 600;
}
.delete-files-renderer .card-header .left .delete,
.delete-files .card-header .left .delete {
  color: #db5c5c;
  margin-right: 2px;
}
.delete-files-renderer .card-header .left .change-file-info,
.delete-files .card-header .left .change-file-info {
  display: flex;
  align-items: center;
}
.delete-files-renderer .card-header .left .change-line-info,
.delete-files .card-header .left .change-line-info {
  display: flex;
  margin-left: 4px;
  align-items: center;
  white-space: nowrap;
  flex-shrink: 0;
}
.delete-files-renderer .card-header .left .change-line-info:hover .add,
.delete-files .card-header .left .change-line-info:hover .add,
.delete-files-renderer .card-header .left .change-line-info:hover .delete,
.delete-files .card-header .left .change-line-info:hover .delete {
  display: none;
}
.delete-files-renderer .card-header .left .change-line-info:hover .diff-btn,
.delete-files .card-header .left .change-line-info:hover .diff-btn {
  display: block;
}
.delete-files-renderer .card-header .left .info,
.delete-files .card-header .left .info {
  color: var(--cb-text-tertiary, #a0a0a0);
  margin-left: 6px;
}
.delete-files-renderer .card-header .left .diff-btn,
.delete-files .card-header .left .diff-btn {
  display: none;
  color: var(--cb-text-tertiary, #a0a0a0);
  right: 12px;
  cursor: pointer;
  white-space: nowrap;
}
.delete-files-renderer .card-header .right .icon-hover,
.delete-files .card-header .right .icon-hover {
  width: 18px;
  height: 18px;
}
.delete-files-renderer .loading-icon,
.delete-files .loading-icon {
  margin-right: 0;
  animation: rotate 1s linear infinite;
}
.delete-files-renderer .icon,
.delete-files .icon {
  flex-shrink: 0;
}
.delete-files-renderer .title,
.delete-files .title {
  margin-left: 0;
  margin-right: 0;
  font-weight: 500;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.delete-files-renderer .title.loading-text,
.delete-files .title.loading-text {
  opacity: 0.6;
}
.delete-files-renderer .delete-status,
.delete-files .delete-status {
  margin-left: 6px;
  font-size: 12px;
  font-weight: 400;
  flex-shrink: 0;
}
.delete-files-renderer .delete-status.success,
.delete-files .delete-status.success {
  color: #db5c5c;
}
.delete-files-renderer .delete-status.failed,
.delete-files .delete-status.failed {
  color: #808080;
}
.delete-files-renderer .delete-icon-wrapper,
.delete-files .delete-icon-wrapper {
  flex-shrink: 0;
  margin-left: auto;
  margin-right: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.delete-files-renderer .delete-icon,
.delete-files .delete-icon {
  width: 16px;
  height: 16px;
  color: #db5c5c;
}
.delete-files-renderer .tool-result-container,
.delete-files .tool-result-container {
  margin-top: 8px;
}
.delete-files-renderer .tool-result-container .hint-message,
.delete-files .tool-result-container .hint-message {
  padding: 8px 12px;
  border-radius: 4px;
  font-size: 12px;
  line-height: 20px;
  font-family: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.delete-files-renderer .tool-result-container .hint-message.success,
.delete-files .tool-result-container .hint-message.success {
  background-color: rgba(46, 160, 67, 0.1);
  color: #2ea043;
  border: 1px solid rgba(46, 160, 67, 0.2);
}
.delete-files-renderer .tool-result-container .hint-message.error,
.delete-files .tool-result-container .hint-message.error {
  background-color: rgba(248, 81, 73, 0.1);
  color: #db5c5c;
  border: 1px solid rgba(248, 81, 73, 0.2);
}
@keyframes rotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

/**
 * DeleteFile 简洁模式渲染器样式
 * 单行展示：[图标] Deleted [文件名] (Deleted)
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.delete-file-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.delete-file-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.delete-file-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.delete-file-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.delete-file-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.delete-file-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.delete-file-compact__filename {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.delete-file-compact__status {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
/**
 * ExecuteCommand 渲染器样式
 * 从 chat-ui/renderers/execute-command/execute-command.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/renderers/execute-command/execute-command.less
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.execute-command.assistant-message-tool .card-header .card-header-top,
.execute-command.assistant-message-tool .card-header .left,
.execute-command.assistant-message-tool .card-header .right,
.execute-command.assistant-message-tool .card-header .tool-control-wrapper {
  align-items: flex-start;
}
.execute-command.assistant-message-tool .card-header .left {
  padding-right: 48px;
  flex: 1;
  min-width: 0;
}
.execute-command.assistant-message-tool .card-header .right {
  position: relative;
  margin-left: -48px;
}
.execute-command .command-text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-all;
}
.execute-command .command-text-expanded {
  word-break: break-all;
  white-space: normal;
  overflow-wrap: break-word;
}
.execute-command .card-bottom {
  padding: 0;
}
.execute-command .tool-control-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
}
.execute-command .tool-control-wrapper .icon-hover {
  padding: 0;
}
.execute-command .tool-control-wrapper .control-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.execute-command .tool-control-wrapper .standalone-terminal-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--vscode-terminal-ansiGreen, #4ec9b0);
}
.execute-command .tool-control-wrapper .standalone-terminal-icon svg {
  width: 14px;
  height: 14px;
}
.execute-command .terminal-icon-container {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.execute-command .card-content {
  box-sizing: border-box;
  max-height: 200px;
  overflow: auto;
}
.execute-command .stdout-content {
  display: flex;
  padding: 0 4px;
}
.execute-command .stdout-content .stdout-icon {
  margin-right: 4px;
}
.execute-command .stdout-content .content {
  font-size: 12px;
  line-height: 18px;
  color: var(--cb-command-stdout-color, #dfe1e5);
  white-space: pre-wrap;
  word-break: break-all;
  font-weight: 500;
  font-family: var(--cb-font-family-mono, "Menlo", "Monaco", "Courier New", monospace);
}
.execute-command .stdout-content .exec-status-text {
  color: #808080;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}
.execute-command-warning-card {
  margin-top: 12px;
}
.craft-warning-message {
  position: relative;
  padding: 10px;
  border-radius: 8px;
  background: var(--cb-panel-bg-primary, #2d2d2d);
  border: 1px solid var(--cb-input-border-primary, #454545);
  font-size: 12px;
  line-height: 18px;
}
.craft-warning-message__title {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
  color: #ee9d28;
}
.craft-warning-message__title-icon {
  margin-right: 4px;
  font-size: 14px;
  line-height: 18px;
}
.craft-warning-message__content {
  margin-bottom: 8px;
  white-space: pre-wrap;
}
._dropdown_xva83_2 {
  position: relative;
  display: inline-block;
}

._trigger_xva83_7 {
  cursor: pointer;
  display: inline-flex;
  outline: none;
}
._trigger_xva83_7:focus, ._trigger_xva83_7:focus-visible {
  outline: none;
}

._selectTrigger_xva83_16 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: none;
  background: transparent;
  color: var(--cb-text-primary, var(--vscode-foreground));
  font-size: 12px;
  line-height: 20px;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.15s ease;
}
._selectTrigger_xva83_16:hover:not(._disabled_xva83_30) {
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.05));
}
._selectTrigger_xva83_16._disabled_xva83_30 {
  opacity: 0.5;
  cursor: not-allowed;
}

._modelSelectorTrigger_xva83_38 ._triggerArrow_xva83_38 {
  transition: color 0.15s ease;
}
._modelSelectorTrigger_xva83_38:hover:not(._disabled_xva83_30), ._modelSelectorTrigger_xva83_38:focus-visible:not(._disabled_xva83_30) {
  color: var(--cb-text-primary, var(--vscode-foreground));
}
._modelSelectorTrigger_xva83_38:hover:not(._disabled_xva83_30) ._triggerArrow_xva83_38, ._modelSelectorTrigger_xva83_38:focus-visible:not(._disabled_xva83_30) ._triggerArrow_xva83_38 {
  color: var(--cb-text-primary, var(--vscode-foreground));
}

._triggerIcon_xva83_48 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}
._triggerIcon_xva83_48 svg {
  width: 100%;
  height: 100%;
}

._triggerText_xva83_61 {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._triggerArrow_xva83_38 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 12px;
  height: 12px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  margin-left: 2px;
}
._triggerArrow_xva83_38 svg {
  width: 100%;
  height: 100%;
}

._menu_xva83_83 {
  position: absolute;
  z-index: 10001;
  border: 1px solid var(--cb-input-border-color, #313248);
  border-radius: 4px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06), 0 12px 28px rgba(0, 0, 0, 0.15);
  background-color: var(--cb-panel-bg-primary);
  overflow: hidden;
  width: 200px;
  min-width: 200px;
  max-width: 200px;
}
@media (prefers-color-scheme: dark) {
  ._menu_xva83_83 {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 12px 28px rgba(0, 0, 0, 0.4);
  }
}

/* width="auto" 修饰：解除 .menu 的固定 200px，让 inline style 上的
 * minWidth/maxWidth/max-content 独立生效，菜单按内容 hug。 */
._menu_xva83_83._menuAutoWidth_xva83_103 {
  width: auto;
  min-width: 0;
  max-width: none;
}

._menu_xva83_83._modelSelectorMenu_xva83_109,
._subMenu_xva83_110._modelSelectorMenu_xva83_109 {
  background-color: var(--cb-dropdown-bg-color, var(--cb-panel-bg-primary));
  border-color: var(--cb-input-border-color, #313248);
}

._searchContainer_xva83_115 {
  display: flex;
  align-items: center;
  padding: 4px 10px;
  border-bottom: 1px solid var(--cb-input-border-color, #313248);
  gap: 8px;
}

._searchContainer_xva83_115._modelSelectorSearchContainer_xva83_123 {
  padding: 4px 10px;
  background-color: var(--cb-dropdown-bg-color, var(--cb-panel-bg-primary));
}

._searchInput_xva83_128 {
  flex: 1;
  padding: 4px 0;
  border: none;
  background-color: transparent;
  color: var(--cb-text-primary, var(--vscode-input-foreground));
  font-size: 13px;
  outline: none;
}
._searchInput_xva83_128::placeholder {
  color: var(--cb-text-secondary, var(--vscode-input-placeholderForeground));
}

._searchInput_xva83_128._modelSelectorSearchInput_xva83_141 {
  font-size: 13px;
}

._searchIcon_xva83_145 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}
._searchIcon_xva83_145 svg {
  width: 100%;
  height: 100%;
}

._searchClear_xva83_159 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  cursor: pointer;
  border-radius: 50%;
  transition: color 0.15s ease;
}
._searchClear_xva83_159:hover {
  color: var(--cb-text-primary, var(--vscode-foreground));
}
._searchClear_xva83_159 svg {
  width: 100%;
  height: 100%;
}

._viewport_xva83_179 {
  max-height: inherit;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

._scrollContainer_xva83_186 {
  flex: 1;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
._scrollContainer_xva83_186::-webkit-scrollbar {
  width: 6px;
}
._scrollContainer_xva83_186::-webkit-scrollbar-track {
  background: transparent;
}
._scrollContainer_xva83_186::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-thumb, rgba(255, 255, 255, 0.2));
  border-radius: 3px;
}
._scrollContainer_xva83_186::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-scrollbar-thumb-hover, rgba(255, 255, 255, 0.3));
}

._item_xva83_206 {
  display: flex;
  align-items: center;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  background: transparent;
  color: var(--cb-text-primary, var(--vscode-foreground));
  font-size: 13px;
  line-height: 20px;
  padding: 2px 10px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s ease;
  gap: 8px;
  min-height: 26px;
}
._item_xva83_206._hasDescription_xva83_224 {
  min-height: 47px;
}
._item_xva83_206:hover:not(._disabled_xva83_30) {
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-hoverBackground));
  color: var(--cb-text-primary, var(--vscode-list-hoverForeground));
}
._item_xva83_206:focus, ._item_xva83_206:focus-visible {
  outline: none;
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-hoverBackground));
}
._item_xva83_206:active:not(._disabled_xva83_30) {
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-activeSelectionBackground));
}

._item_xva83_206._selected_xva83_239 {
  background-color: var(--cb-dropdown-item-selected-bg-color, var(--cb-list-activeSelectionBackground, var(--vscode-list-activeSelectionBackground, #094771)));
  color: var(--cb-dropdown-item-selected-color, var(--cb-vscode-list-activeSelectionForeground, var(--vscode-list-activeSelectionForeground, #ffffff)));
  position: relative;
}
._item_xva83_206._selected_xva83_239._has-right-icon_xva83_244::after {
  right: 28px;
}

._item_xva83_206._disabled_xva83_30 {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

._leftIcon_xva83_254,
._rightIcon_xva83_255,
._selectedIcon_xva83_256 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}
._leftIcon_xva83_254 svg,
._rightIcon_xva83_255 svg,
._selectedIcon_xva83_256 svg {
  width: 100%;
  height: 100%;
}
._leftIcon_xva83_254._alignTop_xva83_270,
._rightIcon_xva83_255._alignTop_xva83_270,
._selectedIcon_xva83_256._alignTop_xva83_270 {
  margin-top: 2px;
}

._selectedIcon_xva83_256 {
  color: var(--cb-success-color, #52c41a);
}

._content_xva83_280 {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
  overflow: hidden;
  min-width: 0;
}

._label_xva83_289 {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
}

._description_xva83_295 {
  font-size: 12px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._checkbox_xva83_304 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  border: 1px solid var(--cb-input-border-color, #313248);
  border-radius: 2px;
  font-size: 10px;
  font-weight: bold;
  color: var(--cb-text-primary, var(--vscode-foreground));
  flex-shrink: 0;
  transition: all 0.15s ease;
}
._checkbox_xva83_304:not(:empty) {
  background-color: var(--cb-accent-color, var(--vscode-focusBorder, #007acc));
  border-color: var(--cb-accent-color, var(--vscode-focusBorder, #007acc));
  color: #ffffff;
}

._header_xva83_324 {
  padding: 8px 8px 4px 8px;
  font-size: 11px;
  font-weight: 600;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  letter-spacing: 0.5px;
  border-bottom: 1px solid var(--cb-input-border-color, #313248);
  margin-bottom: 4px;
}

._header_xva83_324._modelSelectorHeader_xva83_334 {
  padding: 6px 10px 4px;
  margin-bottom: 0;
  border-bottom: none;
  background-color: var(--cb-dropdown-bg-color, var(--cb-panel-bg-primary));
}

._separator_xva83_341 {
  height: 1px;
  background-color: var(--cb-input-border-color, #313248);
  margin: 4px 0;
}

._footer_xva83_347 {
  padding: 8px;
  border-top: 1px solid var(--cb-input-border-color, #313248);
  background-color: var(--cb-dropdown-footer-bg, rgba(0, 0, 0, 0.02));
}

._empty_xva83_353 {
  padding: 16px 8px;
  text-align: center;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  font-size: 12px;
  font-style: italic;
}

._loadingContainer_xva83_361 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  gap: 8px;
}

._loadingIcon_xva83_370 {
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  animation: _spin_xva83_1 1s linear infinite;
}

._loadingText_xva83_375 {
  font-size: 12px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}

@keyframes _spin_xva83_1 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
._bottomSlot_xva83_388 {
  padding: 12px;
  border-top: 1px solid var(--cb-input-border-color, #313248);
  background-color: var(--cb-dropdown-bottom-slot-bg, transparent);
}

._group_xva83_394 {
  display: flex;
  flex-direction: column;
}

._groupTitle_xva83_399 {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 0 4px 10px;
  font-size: 11px;
  font-weight: 600;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
  letter-spacing: 0.5px;
  user-select: none;
}
._groupTitle_xva83_399._collapsible_xva83_410 {
  cursor: pointer;
  border-radius: 4px;
  transition: background-color 0.15s ease;
}
._groupTitle_xva83_399._collapsible_xva83_410:hover {
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.05));
}

._groupTitle_xva83_399._modelSelectorGroupTitle_xva83_419 {
  position: sticky;
  top: 0;
  z-index: 1;
  padding: 6px 10px 4px;
  background-color: var(--cb-dropdown-bg-color, var(--cb-panel-bg-primary));
  font-size: 12px;
  line-height: 18px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}

._groupChevron_xva83_430 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}
._groupChevron_xva83_430 svg {
  width: 100%;
  height: 100%;
}

._groupIcon_xva83_444 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
._groupIcon_xva83_444 svg {
  width: 100%;
  height: 100%;
}

._groupLabel_xva83_457 {
  flex: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._groupContent_xva83_464 {
  display: flex;
  flex-direction: column;
}
._groupContent_xva83_464 ._itemWithSubMenu_xva83_468 {
  width: 100%;
}

._itemWithSubMenu_xva83_468 {
  position: relative;
}
._itemWithSubMenu_xva83_468._active_xva83_475 > ._item_xva83_206 {
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-hoverBackground));
}
._itemWithSubMenu_xva83_468._selected_xva83_239 > ._item_xva83_206 {
  background-color: var(--cb-dropdown-item-selected-bg-color, var(--cb-list-activeSelectionBackground, var(--vscode-list-activeSelectionBackground, #094771)));
  color: var(--cb-dropdown-item-selected-color, var(--cb-vscode-list-activeSelectionForeground, var(--vscode-list-activeSelectionForeground, #ffffff)));
}

._subMenuArrow_xva83_483 {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}
._subMenuArrow_xva83_483 svg {
  width: 100%;
  height: 100%;
}

._subMenu_xva83_110 {
  position: fixed;
  z-index: 10002;
  border: 1px solid var(--cb-input-border-color, #313248);
  border-radius: 4px;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06), 0 12px 28px rgba(0, 0, 0, 0.15);
  background-color: var(--cb-panel-bg-primary);
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
@media (prefers-color-scheme: dark) {
  ._subMenu_xva83_110 {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.2), 0 12px 28px rgba(0, 0, 0, 0.4);
  }
}

._item_xva83_206._modelSelectorItem_xva83_517 {
  min-height: 26px;
  padding-top: 3px;
  padding-bottom: 3px;
  background-color: transparent;
  color: var(--cb-text-primary, var(--vscode-foreground));
}
._item_xva83_206._modelSelectorItem_xva83_517:hover:not(._disabled_xva83_30), ._item_xva83_206._modelSelectorItem_xva83_517:focus, ._item_xva83_206._modelSelectorItem_xva83_517:focus-visible, ._item_xva83_206._modelSelectorItem_xva83_517:active:not(._disabled_xva83_30) {
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-hoverBackground));
  color: var(--cb-text-primary, var(--vscode-foreground));
}

._item_xva83_206._modelSelectorItem_xva83_517._selected_xva83_239,
._itemWithSubMenu_xva83_468._selected_xva83_239 > ._item_xva83_206._modelSelectorItem_xva83_517 {
  background-color: transparent;
  color: var(--cb-text-primary, var(--vscode-foreground));
}

._itemWithSubMenu_xva83_468._active_xva83_475 > ._item_xva83_206._modelSelectorItem_xva83_517 {
  background-color: var(--cb-dropdown-item-hover-bg-color, var(--vscode-list-hoverBackground));
}

._label_xva83_289._modelSelectorLabel_xva83_539 {
  color: var(--cb-list-item-foreground, var(--cb-text-primary, var(--vscode-foreground)));
}

._item_xva83_206._modelSelectorItem_xva83_517:hover:not(._disabled_xva83_30) ._label_xva83_289._modelSelectorLabel_xva83_539,
._item_xva83_206._modelSelectorItem_xva83_517:focus ._label_xva83_289._modelSelectorLabel_xva83_539,
._item_xva83_206._modelSelectorItem_xva83_517:focus-visible ._label_xva83_289._modelSelectorLabel_xva83_539,
._item_xva83_206._modelSelectorItem_xva83_517._selected_xva83_239 ._label_xva83_289._modelSelectorLabel_xva83_539,
._itemWithSubMenu_xva83_468._selected_xva83_239 > ._item_xva83_206._modelSelectorItem_xva83_517 ._label_xva83_289._modelSelectorLabel_xva83_539 {
  color: var(--cb-list-item-selected-foreground, var(--cb-text-primary, var(--vscode-foreground)));
}

._leftIcon_xva83_254._modelSelectorLeftIcon_xva83_551 {
  opacity: 0.6;
  transition: opacity 0.2s ease, color 0.15s ease;
}

._item_xva83_206._modelSelectorItem_xva83_517:hover:not(._disabled_xva83_30) ._leftIcon_xva83_254._modelSelectorLeftIcon_xva83_551,
._item_xva83_206._modelSelectorItem_xva83_517._selected_xva83_239 ._leftIcon_xva83_254._modelSelectorLeftIcon_xva83_551,
._itemWithSubMenu_xva83_468._selected_xva83_239 > ._item_xva83_206._modelSelectorItem_xva83_517 ._leftIcon_xva83_254._modelSelectorLeftIcon_xva83_551 {
  opacity: 1;
}

._description_xva83_295._modelSelectorDescription_xva83_562 {
  color: var(--cb-text-secondary, var(--vscode-descriptionForeground));
}

._subMenuScrollContainer_xva83_566 {
  flex: 1;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
._subMenuScrollContainer_xva83_566::-webkit-scrollbar {
  width: 6px;
}
._subMenuScrollContainer_xva83_566::-webkit-scrollbar-track {
  background: transparent;
}
._subMenuScrollContainer_xva83_566::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-thumb, rgba(255, 255, 255, 0.2));
  border-radius: 3px;
}
._subMenuScrollContainer_xva83_566::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-scrollbar-thumb-hover, rgba(255, 255, 255, 0.3));
}

@media (max-width: 768px) {
  ._menu_xva83_83 {
    max-width: 90vw;
  }
  ._item_xva83_206 {
    padding: 8px;
    font-size: 14px;
    min-height: 36px;
  }
}
@media (prefers-contrast: high) {
  ._menu_xva83_83 {
    border-width: 2px;
  }
  ._item_xva83_206:hover:not(._disabled_xva83_30) {
    outline: 2px solid var(--cb-focus-border, var(--vscode-focusBorder));
  }
}
@media (prefers-reduced-motion: reduce) {
  ._item_xva83_206 {
    transition: none;
  }
}
.cb-dropdown-highlight {
  background: transparent;
  color: var(--cb-success-color, #00c29a);
  font-weight: inherit;
}
/**
 * ExecuteCommand 简洁模式渲染器样式
 * 收起状态：[终端图标] Run Command [风险标签] [命令描述] [展开箭头] [操作按钮]
 * 展开状态：收起行 + bash 标题 + 命令输出内容
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.execute-command-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.execute-command-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.execute-command-compact__header.expandable {
  cursor: pointer;
}
.execute-command-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.execute-command-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.execute-command-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.execute-command-compact__command {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.execute-command-compact__command--primary {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.execute-command-compact__command--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.execute-command-compact__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.2s ease, color 0.15s ease;
}
.execute-command-compact__arrow.expanded {
  transform: rotate(0deg);
}
.execute-command-compact__header.expandable:hover .execute-command-compact__icon, .execute-command-compact__header.expandable:hover .execute-command-compact__action, .execute-command-compact__header.expandable:hover .execute-command-compact__command, .execute-command-compact__header.expandable:hover .execute-command-compact__arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.execute-command-compact__actions {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
  margin-left: auto;
}
.execute-command-compact__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  width: 58px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 400;
  cursor: pointer;
  border: none;
  line-height: 17px;
  padding: 0;
}
.execute-command-compact__btn--allow {
  background-color: rgba(232, 245, 233, 0.8);
  color: #2e7d32;
}
.execute-command-compact__btn--allow:hover {
  background-color: rgb(232, 245, 233);
}
.execute-command-compact__btn--always-allow {
  width: auto;
  min-width: 58px;
  padding: 0 8px;
  background-color: rgba(227, 242, 253, 0.8);
  color: #1565c0;
}
.execute-command-compact__btn--always-allow:hover {
  background-color: rgb(227, 242, 253);
}
.execute-command-compact__btn--skip {
  background-color: rgba(242, 244, 247, 0.8);
  color: #475467;
}
.execute-command-compact__btn--skip:hover {
  background-color: rgb(242, 244, 247);
}
.execute-command-compact__btn--deny {
  background-color: rgba(253, 236, 234, 0.8);
  color: #c62828;
}
.execute-command-compact__btn--deny:hover {
  background-color: rgb(253, 236, 234);
}
.execute-command-compact__content {
  display: flex;
  flex-direction: column;
  gap: 2px;
  max-height: 300px;
  margin: 4px 0;
  background: var(--cb-bg-primary-active, #F2F2F2);
  border-radius: var(--cb-border-radius-xl, 16px);
  padding: 12px 16px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background, transparent) transparent;
}
.execute-command-compact__content::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.execute-command-compact__content::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.execute-command-compact__content::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground);
}
.execute-command-compact__content::-webkit-scrollbar-track {
  background-color: transparent;
}
.execute-command-compact__content-title {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-primary, #333);
  font-weight: 400;
}
.execute-command-compact__command-line {
  font-size: 12px;
  line-height: 21px;
  color: var(--cb-text-primary, #333);
  font-family: var(--cb-font-family-mono, "Menlo", "Monaco", "Courier New", monospace);
  white-space: pre-wrap;
  word-break: break-all;
  padding: 4px 0;
  border-bottom: 0px;
}
.execute-command-compact__output {
  padding: 4px 0;
}
.execute-command-compact__output-text {
  font-size: 12px;
  line-height: 18px;
  color: var(--cb-text-primary, #333);
  white-space: pre-wrap;
  word-break: break-all;
  font-family: var(--cb-font-family-mono, "Menlo", "Monaco", "Courier New", monospace);
}
.execute-command-compact__output-text--success {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.execute-command-compact__output-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  color: inherit;
}
.execute-command-compact__exec-status {
  color: #808080;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
}
/**
 * ListFile 渲染器样式
 * 从 chat-ui/tool.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/tool.less (行 292-406)
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.list-file,
.list-file-renderer {
  display: flex;
  gap: 6px;
  flex-direction: column;
}
.list-file .card-content,
.list-file-renderer .card-content {
  background: transparent;
  padding: 8px 0 !important;
}
.list-file .title-wrapper,
.list-file-renderer .title-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  min-width: 0;
  flex: 1;
  line-height: 1.75;
}
.list-file .title-wrapper .common-icon,
.list-file-renderer .title-wrapper .common-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .common-icon path[stroke]:not([stroke=none]),
.list-file .title-wrapper .common-icon circle[stroke]:not([stroke=none]),
.list-file .title-wrapper .common-icon rect[stroke]:not([stroke=none]),
.list-file .title-wrapper .common-icon line[stroke]:not([stroke=none]),
.list-file .title-wrapper .common-icon polygon[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper .common-icon path[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper .common-icon circle[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper .common-icon rect[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper .common-icon line[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper .common-icon polygon[stroke]:not([stroke=none]) {
  stroke: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .common-icon path[fill]:not([fill=none]),
.list-file .title-wrapper .common-icon circle[fill]:not([fill=none]),
.list-file .title-wrapper .common-icon rect[fill]:not([fill=none]),
.list-file .title-wrapper .common-icon polygon[fill]:not([fill=none]),
.list-file-renderer .title-wrapper .common-icon path[fill]:not([fill=none]),
.list-file-renderer .title-wrapper .common-icon circle[fill]:not([fill=none]),
.list-file-renderer .title-wrapper .common-icon rect[fill]:not([fill=none]),
.list-file-renderer .title-wrapper .common-icon polygon[fill]:not([fill=none]) {
  fill: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .text-primary,
.list-file-renderer .title-wrapper .text-primary {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 14px;
}
.list-file .title-wrapper .shrink-0,
.list-file-renderer .title-wrapper .shrink-0 {
  flex-shrink: 0;
}
.list-file .title-wrapper .loading-text::after,
.list-file-renderer .title-wrapper .loading-text::after {
  content: "...";
  animation: loading-dots 1.5s infinite;
}
.list-file .title-wrapper .title,
.list-file-renderer .title-wrapper .title {
  font-size: 14px;
  min-width: 0;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .text-tertiary,
.list-file-renderer .title-wrapper .text-tertiary {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .truncate,
.list-file-renderer .title-wrapper .truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.list-file .title-wrapper .text-rtl,
.list-file-renderer .title-wrapper .text-rtl {
  direction: rtl;
  text-align: right;
}
.list-file .title-wrapper .arrow-icon,
.list-file-renderer .title-wrapper .arrow-icon {
  margin-left: auto;
  transition: transform 0.2s ease;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.list-file .title-wrapper .arrow-icon.arrow-down,
.list-file-renderer .title-wrapper .arrow-icon.arrow-down {
  transform: rotate(0deg);
}
.list-file .title-wrapper .arrow-icon.arrow-right,
.list-file-renderer .title-wrapper .arrow-icon.arrow-right {
  transform: rotate(-90deg);
}
.list-file .title-wrapper:hover .common-icon,
.list-file .title-wrapper:hover .text-primary,
.list-file .title-wrapper:hover .title,
.list-file .title-wrapper:hover .arrow-icon,
.list-file-renderer .title-wrapper:hover .common-icon,
.list-file-renderer .title-wrapper:hover .text-primary,
.list-file-renderer .title-wrapper:hover .title,
.list-file-renderer .title-wrapper:hover .arrow-icon {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9)) !important;
}
.list-file .title-wrapper:hover .common-icon path[stroke]:not([stroke=none]),
.list-file .title-wrapper:hover .common-icon circle[stroke]:not([stroke=none]),
.list-file .title-wrapper:hover .common-icon rect[stroke]:not([stroke=none]),
.list-file .title-wrapper:hover .common-icon line[stroke]:not([stroke=none]),
.list-file .title-wrapper:hover .common-icon polygon[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper:hover .common-icon path[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper:hover .common-icon circle[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper:hover .common-icon rect[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper:hover .common-icon line[stroke]:not([stroke=none]),
.list-file-renderer .title-wrapper:hover .common-icon polygon[stroke]:not([stroke=none]) {
  stroke: var(--cb-text-primary, rgba(0, 0, 0, 0.9)) !important;
}
.list-file .title-wrapper:hover .common-icon path[fill]:not([fill=none]),
.list-file .title-wrapper:hover .common-icon circle[fill]:not([fill=none]),
.list-file .title-wrapper:hover .common-icon rect[fill]:not([fill=none]),
.list-file .title-wrapper:hover .common-icon polygon[fill]:not([fill=none]),
.list-file-renderer .title-wrapper:hover .common-icon path[fill]:not([fill=none]),
.list-file-renderer .title-wrapper:hover .common-icon circle[fill]:not([fill=none]),
.list-file-renderer .title-wrapper:hover .common-icon rect[fill]:not([fill=none]),
.list-file-renderer .title-wrapper:hover .common-icon polygon[fill]:not([fill=none]) {
  fill: var(--cb-text-primary, rgba(0, 0, 0, 0.9)) !important;
}
.list-file .list-file-result,
.list-file-renderer .list-file-result {
  padding: 0;
}
.list-file .list-file-result .no-results,
.list-file-renderer .list-file-result .no-results {
  display: block;
  padding: 8px 4px;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
  opacity: 0.6;
}
.list-file .list-file-result .container,
.list-file-renderer .list-file-result .container {
  scrollbar-color: #888 transparent;
  box-sizing: border-box;
  height: 100%;
  max-height: 360px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
}
.list-file .list-file-result .container:hover,
.list-file-renderer .list-file-result .container:hover {
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background) transparent;
}
.list-file .list-file-result .content-item,
.list-file-renderer .list-file-result .content-item {
  font-size: 12px;
  line-height: 18px;
  cursor: default;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.list-file .list-file-result .more-results,
.list-file-renderer .list-file-result .more-results {
  padding: 8px 4px;
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  opacity: 0.6;
}
.list-file .file-path-clickable,
.list-file-renderer .file-path-clickable {
  cursor: pointer;
  display: flex;
  gap: 4px;
  align-items: center;
  border-radius: 4px;
  padding: 2px 4px;
  width: 100%;
  line-height: 18px;
}
.list-file .file-path-clickable:hover,
.list-file-renderer .file-path-clickable:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.list-file .file-path-clickable .line-file-icon,
.list-file-renderer .file-path-clickable .line-file-icon {
  display: inline-block;
  align-self: center;
  flex-shrink: 0;
}
.list-file .file-path-clickable .line-file-icon > .icon-fontstyle::before,
.list-file-renderer .file-path-clickable .line-file-icon > .icon-fontstyle::before {
  font-size: 16px;
}
.list-file .file-path-clickable .line-file-icon > svg,
.list-file-renderer .file-path-clickable .line-file-icon > svg {
  width: 16px;
  height: 16px;
  vertical-align: middle;
}
.list-file .file-path-clickable .line-file-name,
.list-file-renderer .file-path-clickable .line-file-name {
  flex-shrink: 0;
  max-width: 80%;
  font-size: 12px;
  color: var(--cb-vscode-editor-foreground, #cccccc);
}
.list-file .file-path-clickable .line-file-path,
.list-file-renderer .file-path-clickable .line-file-path {
  font-size: 9px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.list-file .file-path-clickable .line-info,
.list-file-renderer .file-path-clickable .line-info {
  font-feature-settings: "liga" off, "clig" off;
  font-size: 11px;
  flex-shrink: 0;
  opacity: 0.7;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.list-file .file-path-clickable .match-count,
.list-file-renderer .file-path-clickable .match-count {
  font-size: 11px;
  margin-left: 4px;
  flex-shrink: 0;
  opacity: 0.8;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.list-file .file-path-clickable .truncate,
.list-file-renderer .file-path-clickable .truncate {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.list-file .file-path-clickable .text-rtl,
.list-file-renderer .file-path-clickable .text-rtl {
  direction: rtl;
  text-align: right;
}
@keyframes loading-dots {
  0%, 20% {
    content: ".";
  }
  40% {
    content: "..";
  }
  60%, 100% {
    content: "...";
  }
}
/**
 * ReadLints 渲染器样式
 * 从 chat-ui/renderers/read-lints-renderer.less 转换而来
 * 源文件：packages/chat-ui/src/browser/message/tools/renderers/read-lints-renderer.less
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.read-lints {
  max-width: 100%;
  overflow: hidden;
  padding-bottom: 2px;
}
.read-lints .read-lints-title-with-arrow {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 2px 4px;
  margin: -2px -4px;
  font-size: 14px;
  line-height: 1.75;
  border-radius: 4px;
  transition: background-color 0.2s;
  cursor: pointer;
  user-select: none;
}
.read-lints .read-lints-title-with-arrow:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.read-lints .read-lints-title-with-arrow:hover:not(.expanded) span.chevron-icon.collapsed {
  opacity: 1 !important;
}
.read-lints .read-lints-title-with-arrow span.chevron-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.3s ease, opacity 0.2s ease;
  color: var(--cb-vscode-foreground, #cccccc);
  width: 16px;
  height: 16px;
  will-change: transform;
  transform-origin: center center;
}
.read-lints .read-lints-title-with-arrow span.chevron-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}
.read-lints .read-lints-title-with-arrow span.chevron-icon.collapsed {
  transform: rotate(90deg) !important;
  opacity: 0 !important;
}
.read-lints .read-lints-title-with-arrow span.chevron-icon.expanded {
  transform: rotate(0deg) !important;
  opacity: 1 !important;
}
.read-lints .error-list-container {
  margin: 4px 0;
  border-radius: 6px;
  border: 1px solid var(--cb-vscode-commandCenter-inactiveBorder);
  overflow: hidden;
  max-width: 100%;
}
.read-lints .error-list-container .error-list-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  background-color: var(--cb-vscode-input-background, #3c3c3c);
}
.read-lints .error-list-container .error-list-header .file-name {
  font-weight: 500;
  font-size: 13px;
}
.read-lints .error-list-container .error-list-content {
  border-top: 1px solid var(--cb-vscode-commandCenter-inactiveBorder);
  background-color: var(--cb-vscode-editor-background, #1e1e1e);
  max-width: 100%;
}
.read-lints .error-list-container .error-list-content .error-item {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  padding: 8px 12px;
  border-bottom: 1px solid var(--cb-vscode-commandCenter-inactiveBorder);
  font-size: 12px;
  gap: 0;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}
.read-lints .error-list-container .error-list-content .error-item:last-child {
  border-bottom: none;
}
.read-lints .error-list-container .error-list-content .error-item:hover {
  background-color: var(--cb-vscode-list-hoverBackground);
}
.read-lints .error-list-container .error-list-content .error-item .error-icon {
  color: #f85149;
  flex-shrink: 0;
  font-size: 16px;
  font-weight: bold;
  margin-right: 8px;
  line-height: 1;
}
.read-lints .error-list-container .error-list-content .error-item span.error-icon {
  color: #f85149;
  margin-right: 8px;
}
.read-lints .error-list-container .error-list-content .error-item .error-message {
  flex: 1 1 auto;
  color: var(--cb-vscode-editor-foreground, #cccccc);
  line-height: 18px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.read-lints .error-list-container .error-list-content .error-item .error-location {
  color: var(--cb-vscode-descriptionForeground);
  flex-shrink: 0;
  font-family: monospace;
  font-size: 11px;
  line-height: 18px;
  margin-left: 8px;
  white-space: nowrap;
}
.tool-card-container .read-lints .error-list-container .error-item .error-icon {
  color: #f85149;
}.completion-renderer .completion-title {
  display: flex;
  align-items: center;
  gap: 8px;
  line-height: 1.75;
}
.completion-renderer .completion-title .status-text {
  font-weight: 500;
  font-size: 14px;
  color: var(--cb-text-primary, #d2d3e0);
}
.completion-renderer .completion-title .status-text.success {
  color: var(--cb-success-color, #10b981);
}
.completion-renderer .completion-title .status-text.failed {
  color: var(--cb-text-primary, #d2d3e0);
}
.completion-renderer .completion-title .message-text {
  font-size: 14px;
  color: var(--cb-text-secondary, #858699);
}
.completion-renderer .completion-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.completion-renderer .completion-icon.success {
  color: var(--cb-success-color, #10b981);
}
.completion-renderer .completion-icon.failed {
  color: inherit;
}
.completion-renderer .completion-details {
  margin-top: 8px;
  padding: 12px;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
  border-radius: 6px;
  border: 1px solid var(--cb-border-color, rgba(255, 255, 255, 0.1));
}
.completion-renderer .completion-details .details-content {
  font-size: 13px;
  color: var(--cb-text-secondary, #858699);
  line-height: 1.5;
  white-space: pre-wrap;
}
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.unknown-tool-renderer .card-header {
  padding: 7px 12px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.unknown-tool-renderer .card-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.unknown-tool-renderer .card-header .left {
  flex: 1;
  min-width: 0;
}
.unknown-tool-renderer .card-header .right {
  flex-shrink: 0;
}
.unknown-tool-renderer .unknown-tool-title {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-primary, #d2d3e0);
  min-width: 0;
}
.unknown-tool-renderer .unknown-tool-title .arrow-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}
.unknown-tool-renderer .unknown-tool-title .arrow-icon.arrow-left {
  transform: rotate(-90deg);
}
.unknown-tool-renderer .unknown-tool-title .tool-name-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-family: "Monaco", "Menlo", "Ubuntu Mono", monospace;
  font-size: 14px;
}
.unknown-tool-renderer .unknown-tool-control {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.unknown-tool-renderer .unknown-tool-control .status-text.success {
  color: var(--cb-success-color, #40c8ae);
}
.unknown-tool-renderer .unknown-tool-control .status-text.failed {
  color: inherit;
}
.unknown-tool-renderer .unknown-tool-content .block {
  padding: 8px 12px 8px 24px;
  position: relative;
}
.unknown-tool-renderer .unknown-tool-content .block .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  vertical-align: middle;
  color: var(--cb-text-primary, #d2d3e0);
}
.unknown-tool-renderer .unknown-tool-content .block .scroll_content {
  max-height: 320px;
  overflow: auto;
}
.unknown-tool-renderer .unknown-tool-content .block .scroll_content::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 8px;
}
.unknown-tool-renderer .unknown-tool-content .block .contents {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}
.unknown-tool-renderer .unknown-tool-content .block .contents pre {
  margin: 0;
  overflow-x: auto;
  overflow-y: auto;
  max-height: 330px;
  white-space: pre-wrap;
  word-break: break-all;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
  scrollbar-width: thin;
}
.unknown-tool-renderer .unknown-tool-content .first-child-block {
  border-top: 1px solid var(--vscode-widget-border, #454545);
  border-bottom: 1px solid var(--vscode-widget-border, #454545);
}
.unknown-tool-renderer .unknown-tool-content .unknown-result-loading {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
}
.unknown-tool-renderer .title-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
}
.unknown-tool-renderer .text-primary {
  color: var(--cb-text-primary, #d2d3e0);
}
.unknown-tool-renderer .loading-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.unknown-tool-renderer .status-text-control.status-common {
  color: var(--cb-card-disabled-color, #808080);
}
.unknown-tool-renderer .status-text-control .status-pending {
  display: inline-flex;
  align-items: center;
}
.unknown-tool-renderer .status-text-control .status-executed {
  display: inline-flex;
  align-items: center;
}
.unknown-tool-renderer .status-text-control .status-icon {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  vertical-align: middle;
  margin-left: 4px;
}
.unknown-tool-renderer .status-text-control .status-icon.accept {
  background-color: #40C8AE;
}
.unknown-tool-renderer .status-text-control .status-icon.reject {
  background-color: #C74E39;
}
/**
 * UnknownTool 简洁模式渲染器样式
 * 支持通用展示和特殊工具（memory、preview_url、read_rules）
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.unknown-tool-compact {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  padding-bottom: 2px;
}
.unknown-tool-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.unknown-tool-compact__header.expandable {
  cursor: pointer;
}
.unknown-tool-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.unknown-tool-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.unknown-tool-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.unknown-tool-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.unknown-tool-compact__sub-text {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.unknown-tool-compact__link {
  color: var(--cb-text-link, #1470B4);
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.unknown-tool-compact__link--clickable {
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.15s ease, color 0.15s ease;
}
.unknown-tool-compact__link--clickable:hover {
  color: var(--cb-text-link-hover, #0E58A0);
  text-decoration-color: var(--cb-text-link-hover, #0E58A0);
}
.unknown-tool-compact__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.2s ease, color 0.15s ease;
}
.unknown-tool-compact__arrow.expanded {
  transform: rotate(0deg);
}
.unknown-tool-compact__header.expandable:hover .unknown-tool-compact__icon, .unknown-tool-compact__header.expandable:hover .unknown-tool-compact__action, .unknown-tool-compact__header.expandable:hover .unknown-tool-compact__sub-text, .unknown-tool-compact__header.expandable:hover .unknown-tool-compact__link, .unknown-tool-compact__header.expandable:hover .unknown-tool-compact__arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.unknown-tool-compact__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 4px 0;
  padding: 12px 16px;
  background-color: var(--qad-card-bg);
  border-radius: 16px;
  overflow: hidden;
}
.unknown-tool-compact__content-title {
  font-size: 12px;
  line-height: 20px;
  color: var(--cb-text-primary, #333);
  font-weight: 400;
}
.unknown-tool-compact__content-body {
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-text-quaternary, #494b57);
  max-height: 300px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background, transparent) transparent;
}
.unknown-tool-compact__content-body::-webkit-scrollbar {
  width: 8px;
}
.unknown-tool-compact__content-body::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.unknown-tool-compact__content-body pre {
  font-family: "JetBrains Mono", "Fira Code", "Consolas", monospace;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
  font-size: 12px;
  color: var(--cb-text-quaternary, #494b57);
}
.unknown-tool-compact__json {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 300px;
  scrollbar-width: thin;
  scrollbar-color: var(--cb-vscode-scrollbarSlider-background, transparent) transparent;
}
.unknown-tool-compact__json::-webkit-scrollbar {
  width: 8px;
}
.unknown-tool-compact__json::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.unknown-tool-compact__json pre {
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
  font-size: 12px;
  color: var(--cb-text-tertiary, #6a737d);
}
/**
 * WebFetch 渲染器样式
 * 与 chat-ui/renderers/web-fetch-renderer.tsx 保持一致
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.web-fetch-renderer {
  padding-bottom: 2px;
}
.web-fetch-renderer.title-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.web-fetch-renderer.title-wrapper .common-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.web-fetch-renderer .cursor-pointer {
  cursor: pointer;
}
.web-fetch-renderer .min-w-0 {
  min-width: 0;
}
.web-fetch-renderer .flex-shrink-0 {
  flex-shrink: 0;
}
.web-fetch-renderer .truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.web-fetch-renderer .title {
  font-size: 14px;
  line-height: 1.75;
}
.web-fetch-renderer .text-tertiary {
  color: var(--cb-text-tertiary, #a0a0a0);
}
.web-fetch-renderer .loading-text {
  opacity: 0.7;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
  0%, 100% {
    opacity: 0.7;
  }
  50% {
    opacity: 0.9;
  }
}
/**
 * WebFetch 简洁模式渲染器样式
 * 单行展示：[图标] Web Fetch [URL/标题]
 * 与 web-search 共用类似布局
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.web-fetch-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.web-fetch-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.web-fetch-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.web-fetch-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.web-fetch-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.web-fetch-compact__title {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
/**
 * WebSearch 渲染器样式
 * 从 chat-ui/src/browser/message/tools/tool.less 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.web-search-renderer .container {
  scrollbar-color: #888 transparent;
  box-sizing: border-box;
  height: 100%;
  max-height: 360px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
}
.web-search-renderer .container:hover {
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.web-search-renderer .content-item {
  font-size: 12px;
  line-height: 18px;
  cursor: default;
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.web-search-renderer .web-search-item {
  position: relative;
  width: 100%;
  margin: 4px 0;
}
.web-search-renderer .line-file-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.web-search-renderer .line-file-icon img {
  display: block;
}
.web-search-renderer .line-file-icon svg {
  display: block;
}
.web-search-renderer .line-file-name {
  font-size: 12px;
  color: var(--cb-vscode-editor-foreground, #cccccc);
  line-height: 18px;
}
.web-search-renderer .line-file-name.truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.web-search-renderer .web-search-overlay {
  position: fixed;
  top: 0;
  background-color: var(--vscode-dropdown-background);
  border: 1px solid var(--vscode-widget-border);
  border-radius: 6px;
  padding: 12px;
  max-width: 400px;
  min-width: 300px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 1000;
}
.web-search-renderer .web-search-overlay .web-search-overlay-title {
  font-size: 14px;
  font-weight: 500;
  color: var(--cb-text-primary, #d2d3e0);
  margin-bottom: 8px;
  line-height: 1.4;
}
.web-search-renderer .web-search-overlay .web-search-overlay-content {
  font-size: 13px;
  color: var(--cb-text-secondary, #858699);
  line-height: 1.6;
  margin-bottom: 8px;
  max-height: 300px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.web-search-renderer .web-search-overlay .web-search-overlay-content:hover {
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.web-search-renderer .web-search-overlay .web-search-overlay-source {
  font-size: 12px;
  color: var(--cb-text-tertiary, #a0a0a0);
  display: flex;
  align-items: center;
  gap: 4px;
}
.web-search-renderer .web-search-overlay .web-search-overlay-source img {
  vertical-align: middle;
}
.web-search-renderer .loading-text {
  opacity: 0.7;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
  0%, 100% {
    opacity: 0.7;
  }
  50% {
    opacity: 0.9;
  }
}
/**
 * WebSearch 简洁模式渲染器样式
 * 收起状态：[图标] Web Search [查询内容] [展开箭头]
 * 展开状态：收起行 + 搜索结果列表
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.web-search-compact {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 100%;
  padding-bottom: 2px;
}
.web-search-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.web-search-compact__header.expandable {
  cursor: pointer;
}
.web-search-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.web-search-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.web-search-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.web-search-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.web-search-compact__query {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.web-search-compact__arrow {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.2s ease, color 0.15s ease;
}
.web-search-compact__arrow.expanded {
  transform: rotate(0deg);
}
.web-search-compact__header.expandable:hover .web-search-compact__icon, .web-search-compact__header.expandable:hover .web-search-compact__action, .web-search-compact__header.expandable:hover .web-search-compact__query, .web-search-compact__header.expandable:hover .web-search-compact__arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.web-search-compact__content {
  display: flex;
  flex-direction: column;
  margin: 4px 0;
  background: var(--wb-home-bg-primary, #F2F2F2);
  border-radius: 12px;
  padding: 8px 16px;
  overflow: hidden;
  max-height: 300px;
  overflow-y: auto;
}
.web-search-compact__result-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 25px;
  cursor: pointer;
}
.web-search-compact__result-item:hover .web-search-compact__result-title {
  text-decoration: underline;
}
.web-search-compact__result-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}
.web-search-compact__result-icon img {
  width: 14px;
  height: 14px;
  object-fit: cover;
}
.web-search-compact__result-title {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/**
 * PlanTask 渲染器样式
 */
.cb-plan-task-renderer {
  font-size: 12px;
  padding-bottom: 2px;
}
.cb-plan-task-renderer .cb-plan-task-status-text {
  display: flex;
  align-items: center;
  padding: 12px;
  font-size: 12px;
  line-height: 16px;
  gap: 8px;
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-plan-task-renderer .cb-plan-task-status-text .cb-plan-task-status-loading {
  color: var(--cb-text-secondary, #858699);
}
.cb-plan-task-renderer .cb-plan-task-status-text .cb-plan-task-status-error {
  color: inherit;
}
.cb-plan-task-renderer .cb-plan-task-error-message {
  padding: 8px 12px;
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-text-error-active, #B42C3F);
  background: var(--cb-error-background, rgba(217, 48, 38, 0.1));
  border-radius: 4px;
  margin: 0 12px 12px;
}
.cb-plan-task-renderer.cb-plan-task-renderer-empty {
  border: 1px solid var(--cb-input-border-primary, #454545);
  border-radius: 4px;
  background: var(--cb-bg-secondary);
}
.cb-plan-task-renderer.cb-plan-task-renderer-empty .cb-plan-task-error-message {
  margin-top: 0;
}
.cb-plan-task-renderer.cb-plan-task-renderer-failed .cb-plan-task-error-message {
  margin-top: 8px;
}.cb-plan-task-wrapper {
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-plan-task-wrapper .cb-plan-task-header {
  padding: 0;
  width: 100%;
  display: flex;
  align-items: center;
  gap: 8px;
  border: none;
  background: transparent;
  color: inherit;
  text-align: left;
}
.cb-plan-task-wrapper .cb-plan-task-header.cb-plan-task-header-clickable {
  cursor: pointer;
}
.cb-plan-task-wrapper .cb-plan-task-header.cb-plan-task-header-clickable:hover .cb-plan-task-header-icon,
.cb-plan-task-wrapper .cb-plan-task-header.cb-plan-task-header-clickable:hover .cb-plan-task-header-title,
.cb-plan-task-wrapper .cb-plan-task-header.cb-plan-task-header-clickable:hover .cb-plan-task-header-chevron {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.cb-plan-task-wrapper .cb-plan-task-header-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.cb-plan-task-wrapper .cb-plan-task-header-icon svg {
  width: 14px;
  height: 14px;
}
.cb-plan-task-wrapper .cb-plan-task-header-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 16px;
  width: 16px;
  height: 16px;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  transition: color 0.16s ease;
}
.cb-plan-task-wrapper .cb-plan-task-header-chevron-icon {
  width: 16px;
  height: 16px;
  transform: rotate(-90deg);
  transition: transform 0.16s ease;
}
.cb-plan-task-wrapper .cb-plan-task-header-chevron-icon.cb-plan-task-header-chevron-icon-expanded {
  transform: rotate(0deg);
}
.cb-plan-task-wrapper .cb-plan-task-header-main {
  min-width: 0;
  flex: 0 1 auto;
}
.cb-plan-task-wrapper .cb-plan-task-header-title {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  line-height: 25px;
  font-weight: 400;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.cb-plan-task-wrapper .cb-plan-task-header-error {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  margin-left: auto;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}
.cb-plan-task-wrapper .cb-plan-task-detail {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 6px 0 4px;
  padding: 12px 16px;
  background: var(--cb-bg-primary-active, #F2F2F2);
  border-radius: 16px;
}
.cb-plan-task-wrapper .cb-plan-task-item {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 1px 4px 2px;
  border-radius: 8px;
  cursor: default;
  transition: background-color 0.16s ease;
}
.cb-plan-task-wrapper .cb-plan-task-item.cb-plan-task-item-clickable {
  cursor: pointer;
}
.cb-plan-task-wrapper .cb-plan-task-item.cb-plan-task-item-clickable:hover {
  background: var(--cb-hover-bg, rgba(255, 255, 255, 0.05));
}
.cb-plan-task-wrapper .cb-plan-task-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 16px;
  width: 16px;
  min-height: 25px;
  color: var(--cb-text-secondary, #858699);
}
.cb-plan-task-wrapper .cb-plan-task-icon svg {
  width: 16px;
  height: 16px;
}
.cb-plan-task-wrapper .cb-plan-task-check-icon {
  color: var(--cb-text-quaternary, rgba(255, 255, 255, 0.32));
}
.cb-plan-task-wrapper .cb-plan-task-loader-icon {
  color: var(--cb-success-color, #28b894);
  animation: cb-plan-task-loader-spin 2s linear infinite;
}
.cb-plan-task-wrapper .cb-plan-task-failed-icon {
  color: var(--cb-text-primary, #1a1a1a);
}
.cb-plan-task-wrapper .cb-plan-task-content {
  min-width: 0;
  flex: 1;
}
.cb-plan-task-wrapper .cb-plan-task-content.cb-plan-task-line-through .cb-plan-task-text {
  color: var(--cb-text-disabled, rgba(0, 0, 0, 0.3));
  font-weight: 400;
  text-decoration: line-through;
}
.cb-plan-task-wrapper .cb-plan-task-text {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  line-height: 25px;
  font-weight: 400;
  color: var(--cb-text-primary, #1a1a1a);
}
.cb-plan-task-wrapper .cb-plan-task-item-running .cb-plan-task-text {
  font-weight: 600;
  color: var(--cb-text-solid, #000000);
}
.cb-plan-task-wrapper .cb-plan-task-item-action {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, #6b7280);
  transform: rotate(-90deg);
  opacity: 0.72;
}
.cb-plan-task-wrapper .cb-plan-task-wait-icon {
  width: 12px;
  height: 12px;
  border: 1px solid var(--cb-text-tertiary, #606060);
  border-radius: 999px;
  background: transparent;
}

@keyframes cb-plan-task-loader-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * SearchReference 渲染器样式
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.search-reference-renderer .container {
  scrollbar-color: #888 transparent;
  box-sizing: border-box;
  height: 100%;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.search-reference-renderer .container:hover {
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.search-reference-renderer .reference-type-label {
  font-size: 12px;
  color: var(--vscode-descriptionForeground);
  margin-bottom: 4px;
}
.search-reference-renderer .reference-wrapper {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.search-reference-renderer .reference-detail.pointer {
  cursor: pointer;
}
.search-reference-renderer .reference-item {
  position: relative;
  width: 100%;
  cursor: pointer;
  padding: 2px 4px;
  border-radius: 4px;
}
.search-reference-renderer .reference-item:hover {
  background: var(--vscode-list-inactiveSelectionBackground);
}
.search-reference-renderer .reference-content {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
  overflow: hidden;
}
.search-reference-renderer .text-hover:hover {
  color: var(--vscode-textLink-activeForeground);
}
.search-reference-renderer .reference-index {
  color: var(--vscode-descriptionForeground);
  flex-shrink: 0;
}
.search-reference-renderer .reference-filename {
  color: var(--cb-vscode-editor-foreground, #cccccc);
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 0;
  max-width: 200px;
}
.search-reference-renderer .reference-line {
  color: var(--vscode-descriptionForeground);
  flex-shrink: 0;
}
.search-reference-renderer .reference-source {
  color: var(--vscode-descriptionForeground);
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  min-width: 60px;
}
.search-reference-renderer .share-icon {
  flex-shrink: 0;
  color: var(--vscode-descriptionForeground);
  margin-left: auto;
}
.search-reference-renderer .expand-icon {
  flex-shrink: 0;
  color: var(--vscode-descriptionForeground);
  margin-left: auto;
  transition: transform 0.2s ease;
}
.search-reference-renderer .expand-icon.expand {
  transform: rotate(90deg);
}
.search-reference-renderer .code-area {
  margin-top: 8px;
  margin-left: 16px;
  padding: 8px;
  border-radius: 4px;
  background: var(--vscode-editor-background);
  border: 1px solid var(--vscode-panel-border);
  overflow-x: auto;
  font-size: 12px;
}
.search-reference-renderer .code-area pre {
  margin: 0;
  padding: 0;
  background: transparent;
}
.search-reference-renderer .code-area code {
  font-family: var(--vscode-editor-font-family, "Menlo", "Monaco", "Courier New", monospace);
  font-size: 12px;
}
.search-reference-renderer .no-result {
  font-size: 12px;
  color: var(--vscode-descriptionForeground);
  padding: 8px;
}
.search-reference-renderer .loading-text {
  opacity: 0.7;
  animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}
@keyframes pulse {
  0%, 100% {
    opacity: 0.7;
  }
  50% {
    opacity: 0.9;
  }
}/**
 * Plan Create Renderer styles
 * Aligned with packages/chat-ui/src/browser/message/tools/renderers/plan/plan-create-renderer.less
 */
.cb-plan-tool-container {
  padding-bottom: 2px;
}
.cb-plan-tool-container.cb-container-loading {
  animation: cbContainerBreathing 2s ease-in-out infinite;
}
@keyframes cbContainerBreathing {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.cb-plan-tool-container .cb-plan-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 40px;
  padding: 12px;
  border: 1px solid var(--cb-stroke-secondary);
  border-radius: 8px 8px 0 0;
  background-color: var(--cb-panel-bg-primary);
}
.cb-plan-tool-container .cb-plan-header.cb-header-collapsed {
  border-radius: 8px;
}
.cb-plan-tool-container .cb-plan-header-left {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cb-plan-tool-container .cb-plan-header-left svg {
  width: 14px;
  height: 14px;
}
.cb-plan-tool-container .cb-plan-header-title {
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-primary);
}
.cb-plan-tool-container .cb-plan-header-right {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cb-plan-tool-container .cb-plan-header-icon {
  cursor: pointer;
  opacity: 0.7;
  transition: opacity 0.2s;
  width: 16px;
  height: 16px;
}
.cb-plan-tool-container .cb-plan-header-icon:hover {
  opacity: 1;
}
.cb-plan-tool-container .cb-plan-header-failed-icon {
  cursor: default;
  opacity: 1;
  color: var(--cb-text-primary);
}
.cb-plan-tool-container .cb-plan-header-failed-icon:hover {
  opacity: 1;
}
.cb-plan-tool-container .cb-plan-tool-result {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cb-plan-tool-container .cb-plan-tool-result.cb-plan-view {
  padding: 12px;
  border-left: 1px solid var(--cb-stroke-secondary);
  border-right: 1px solid var(--cb-stroke-secondary);
  border-bottom: 1px solid var(--cb-stroke-secondary);
  border-radius: 0 0 8px 8px;
  background-color: var(--cb-panel-bg-primary);
}
.cb-plan-tool-container .cb-plan-title {
  height: 24px;
  line-height: 24px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--cb-text-primary);
  font-family: Inter, sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
}
.cb-plan-tool-container .cb-plan-overview {
  color: var(--cb-text-primary);
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
}
.cb-plan-tool-container .cb-plan-overview p {
  margin: 0;
  color: var(--cb-text-primary);
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
}
.cb-plan-tool-container .cb-plan-actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.cb-plan-tool-container .cb-plan-actions-right {
  display: flex;
  align-items: center;
  gap: 8px;
}
.cb-plan-tool-container .cb-plan-view-button {
  display: flex;
  height: 24px;
  padding: 6px 12px;
  min-width: fit-content;
  white-space: nowrap;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  border: 1px solid var(--cb-input-border-primary);
  background: var(--cb-panel-bg-primary);
  color: var(--cb-text-primary);
  font-size: 12px;
  cursor: pointer;
  transition: all 0.2s;
}
.cb-plan-tool-container .cb-plan-view-button:hover {
  opacity: 0.9;
}
.cb-plan-tool-container .cb-plan-build-button {
  display: flex;
  height: 24px;
  padding: 4px 8px;
  align-items: center;
  gap: 4px;
  border-radius: 4px;
  background: #6C4DFF;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.15);
  border: none;
  color: #ffffff;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
}
.cb-plan-tool-container .cb-plan-build-button:hover {
  opacity: 0.9;
}
.cb-plan-tool-container .cb-plan-build-button:active {
  opacity: 0.8;
}
.cb-plan-tool-container .cb-plan-build-button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.cb-plan-tool-container .cb-plan-build-button:disabled:hover {
  opacity: 0.5;
}
.cb-plan-tool-container .cb-plan-tool-result-item-border {
  border-top: 1px solid var(--cb-stroke-secondary);
}
.cb-plan-tool-container .cb-plan-tool-result-item {
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid var(--cb-input-border-primary);
}
.cb-plan-tool-container .cb-plan-tool-result-item.cb-todolist .cb-item-title-text {
  color: #FFA500;
}
.cb-plan-tool-container .cb-plan-tool-result-item.cb-todolist .cb-plan-tool-result-item-border {
  border-color: #FFA500;
}
.cb-plan-tool-container .cb-plan-tool-result-item-content {
  max-height: 300px;
  overflow: auto;
  scrollbar-width: thin;
  background: var(--cb-bg-primary-active, #F2F2F2);
}
.cb-plan-tool-container .cb-plan-tool-result-item-content .cb-plan-task-detail {
  padding: 0 0 8px 0;
}
.cb-plan-tool-container .cb-exploration-status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  color: var(--cb-text-secondary);
  font-size: 12px;
}
.cb-plan-tool-container .cb-exploration-status .cb-exploration-status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: rgba(108, 77, 255, 0.2);
  animation: cbPulse 1.5s ease-in-out infinite;
}
.cb-plan-tool-container .cb-exploration-status .cb-exploration-status-text {
  color: var(--cb-text-secondary);
}
@keyframes cbPulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.8);
  }
}
.cb-plan-tool-container .cb-plan-todolist-wrapper {
  background-color: var(--cb-bg-primary, #212234);
}
.cb-plan-tool-container .cb-plan-more-link {
  padding: 0px 4px 8px 4px;
  font-size: 12px;
  color: var(--cb-text-secondary);
  text-align: left;
  cursor: pointer;
}
.cb-plan-tool-container .cb-plan-more-link:hover {
  color: var(--cb-text-primary);
}/**
 * Plan Update Renderer styles
 * Aligned with packages/chat-ui/src/browser/message/tools/renderers/plan/plan-update-renderer
 */
.cb-plan-update-renderer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  gap: 8px;
}
.cb-plan-update-renderer .cb-plan-update-title-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
}
.cb-plan-update-renderer .cb-plan-update-title-wrapper.cb-loading-text {
  animation: cbPlanUpdatePulse 1.5s ease-in-out infinite;
}
.cb-plan-update-renderer .cb-plan-update-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}
.cb-plan-update-renderer .cb-plan-update-text-primary {
  color: var(--cb-text-primary, var(--codebuddy-text-primary, #d2d3e0));
  font-size: 14px;
  line-height: 1.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cb-plan-update-renderer .cb-plan-update-status {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.cb-plan-update-renderer .cb-plan-update-status .cb-plan-update-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.cb-plan-update-renderer .cb-plan-update-status .cb-plan-update-status-dot--success {
  background-color: var(--cb-success, #28B894);
}
.cb-plan-update-renderer .cb-plan-update-status .cb-plan-update-status-dot--error {
  background-color: var(--cb-error, #d93026);
}
@keyframes cbPlanUpdatePulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
/**
 * Task Tool Renderer 样式
 */
.cb-task-tool-renderer {
  padding-bottom: 2px;
}
.cb-task-tool-renderer .cb-task-result {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.cb-task-tool-renderer .cb-task-result-item-border {
  border-top: 1px solid var(--cb-border, #454545);
}
.cb-task-tool-renderer .cb-task-result-item {
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid var(--cb-input-border-primary, #454545);
}
.cb-task-tool-renderer .cb-task-result-item.cb-task-info .cb-task-item-title-text {
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-task-tool-renderer .cb-task-result-item.cb-task-info .cb-task-result-item-border {
  border-color: var(--cb-input-border-primary, #454545);
}
.cb-task-tool-renderer .cb-task-result-item.cb-task-subagent-info .cb-task-item-title-text {
  color: var(--cb-text-secondary, #858699);
}
.cb-task-tool-renderer .cb-task-result-item.cb-task-subagent-info .cb-task-result-item-border {
  border-color: var(--cb-input-border-primary, #454545);
}
.cb-task-tool-renderer .cb-task-result-item-title {
  display: flex;
  justify-content: space-between;
  padding: 8px 12px;
  align-items: center;
  line-height: 16px;
  background-color: var(--cb-bg-secondary, #252526);
  cursor: pointer;
}
.cb-task-tool-renderer .cb-task-item-title-text {
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 500;
}
.cb-task-tool-renderer .cb-task-expand-icon {
  display: flex;
  align-items: center;
}
.cb-task-tool-renderer .cb-task-item-icon-common {
  width: 14px;
  height: 14px;
  cursor: pointer;
  opacity: 0.7;
}
.cb-task-tool-renderer .cb-task-item-icon-common:hover {
  opacity: 1;
}
.cb-task-tool-renderer .cb-task-result-item-content {
  padding: 8px 12px 0;
  max-height: 300px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  background-color: var(--cb-bg-primary, #1e1e1e);
}
.cb-task-tool-renderer .cb-task-result-item-content .cb-task-content-text {
  padding-bottom: 8px;
  color: var(--cb-text-primary, #d2d3e0);
  line-height: 1.6;
  word-break: break-word;
}
.cb-task-tool-renderer .cb-task-result-item-content .cb-task-badge {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  margin-bottom: 8px;
}
.cb-task-tool-renderer .cb-task-result-item-content .cb-task-badge-description {
  background-color: rgba(107, 95, 204, 0.1);
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-task-tool-renderer .cb-task-result-item-content .cb-task-badge-subagent {
  background-color: rgba(59, 130, 246, 0.1);
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-task-tool-renderer .cb-task-title-wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background-color: var(--cb-bg-secondary, #252526);
  border-radius: 4px;
}
.cb-task-tool-renderer .cb-task-text-secondary {
  color: var(--cb-text-secondary, #858699);
}
.cb-task-tool-renderer .cb-task-loading-text {
  animation: cb-task-pulse 1.5s ease-in-out infinite;
}
@keyframes cb-task-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.cb-task-tool-renderer .cb-task-tool-info-text {
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
  font-size: 13px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.cb-task-tool-renderer .cb-task-tool-info-text .cb-task-markdown {
  color: var(--cb-text-secondary, #858699);
}
.cb-task-tool-renderer .cb-task-tool-info-text .cb-task-markdown p {
  margin: 0;
  line-height: 1.5;
}
.cb-task-tool-renderer .cb-task-tool-info-text .cb-task-markdown > *:first-child {
  margin-top: 0;
}
.cb-task-tool-renderer .cb-task-tool-info-text .cb-task-markdown > *:last-child {
  margin-bottom: 0;
}
.cb-task-tool-renderer .cb-task-section-title {
  font-weight: 500;
  margin-bottom: 8px;
  color: var(--cb-text-secondary, #858699);
}
.cb-task-tool-renderer .cb-task-final-result {
  padding: 8px 0 0;
  color: var(--cb-text-primary, #d2d3e0);
  font-size: 13px;
  line-height: 1.6;
  white-space: pre-wrap;
  word-break: break-word;
}
.cb-task-tool-renderer .cb-task-final-result .cb-task-markdown {
  color: inherit;
}
.cb-task-tool-renderer .cb-task-final-result .cb-task-markdown > *:first-child {
  margin-top: 0;
}
.cb-task-tool-renderer .cb-task-final-result .cb-task-markdown > *:last-child {
  margin-bottom: 0;
}
.cb-task-tool-renderer .cb-task-tool-item {
  margin-bottom: 12px;
}
.cb-task-tool-renderer .cb-task-tool-item-inner {
  padding-left: 12px;
  border-left: 2px solid var(--cb-border, #454545);
}
.cb-task-tool-renderer .cb-task-tool-item-header {
  font-weight: 500;
  margin-bottom: 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.cb-task-tool-renderer .cb-task-approval-buttons {
  display: flex;
  gap: 8px;
  align-items: center;
}
.cb-task-tool-renderer .cb-task-status-icon {
  cursor: pointer;
  transition: opacity 0.2s;
  opacity: 0.7;
}
.cb-task-tool-renderer .cb-task-status-icon:hover {
  opacity: 1;
}
.cb-task-tool-renderer .cb-task-icon-accept {
  color: var(--cb-success-color, #10b981);
}
.cb-task-tool-renderer .cb-task-icon-reject {
  color: var(--cb-text-error-active, #B42C3F);
}
.cb-task-tool-renderer .cb-task-hidden {
  display: none;
}
/**
 * Task Tool 简洁模式渲染器样式
 * 收起状态：[图标] Task [SubAgent: 描述 | N Tool use] [展开箭头]
 * 展开状态：收起行 + tool 列表 + summary
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.task-compact {
  display: flex;
  flex-direction: column;
  gap: 3px;
  width: 100%;
  padding-bottom: 2px;
}
.task-compact--tree {
  position: relative;
  padding-left: 0;
}
.task-compact--tree::before, .task-compact--tree::after {
  display: none;
}
.task-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.task-compact__header.expandable {
  cursor: pointer;
}
.task-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.task-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.task-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
  font-size: 14px;
  line-height: 1.75;
}
.task-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.task-compact__description {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
  font-size: 14px;
  line-height: 1.75;
}
.task-compact__arrow {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  margin-left: -4px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  cursor: pointer;
  transform: rotate(-90deg);
  transition: transform 0.2s ease, color 0.15s ease;
}
.task-compact__arrow.expanded {
  transform: rotate(0deg);
}
.task-compact__header.expandable:hover .task-compact__icon, .task-compact__header.expandable:hover .task-compact__action, .task-compact__header.expandable:hover .task-compact__description, .task-compact__header.expandable:hover .task-compact__arrow {
  color: var(--cb-text-primary, rgba(0, 0, 0, 0.9));
}
.task-compact__content {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 4px 0;
  background: var(--cb-panel-bg-primary, #FFFFFF);
  border-radius: var(--cb-border-radius-xl, 16px);
  padding: 12px 16px;
  overflow: hidden;
}
.task-compact__tool-list {
  display: flex;
  flex-direction: column;
  padding: 4px 0;
  max-height: 200px;
  overflow-y: auto;
  scrollbar-width: thin;
}
.task-compact__tool-item {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  font-size: 11px;
  line-height: 14px;
  color: var(--cb-text-secondary, #858699);
}
.task-compact__tool-item-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 13px;
  height: 13px;
  color: var(--cb-text-secondary, #858699);
}
.task-compact__tool-item-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.task-compact__summary {
  padding: 4px 0;
  font-size: 11px;
  line-height: 14px;
  color: var(--cb-text-primary, #3b3b3b);
}
.task-compact__final-result {
  padding: 4px 0;
  font-size: 12px;
  line-height: 1.5;
  color: var(--cb-text-primary, #3b3b3b);
  white-space: pre-wrap;
  word-break: break-word;
}
/**
 * ReadFile 简洁模式渲染器样式
 * 单行展示：[图标] Read [文件名] [行号]
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.read-file-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.read-file-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.read-file-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.read-file-compact__loading-icon {
  fill: var(--cb-text-secondary, #858699);
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.read-file-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.read-file-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.read-file-compact__filename {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.read-file-compact__lines {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
/**
 * MCP Tool Renderer 样式
 * 从 chat-ui/renderers/mcp/mcp-tool-renderer.less 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.mcp-tool-renderer .card-header {
  padding: 7px 12px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.mcp-tool-renderer .card-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.mcp-tool-renderer .card-header .left {
  flex: 1;
  min-width: 0;
}
.mcp-tool-renderer .card-header .right {
  flex-shrink: 0;
}
.mcp-tool-renderer .mcp-tool-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-primary, #d2d3e0);
  min-width: 0;
}
.mcp-tool-renderer .mcp-tool-title .mcp-tool-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.mcp-tool-renderer .mcp-tool-title .server-name {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mcp-tool-renderer .mcp-tool-title .tool-name {
  color: var(--cb-text-secondary, #858699);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mcp-tool-renderer .mcp-tool-control {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.mcp-tool-renderer .mcp-tool-control .arrow-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.mcp-tool-renderer .mcp-tool-control .arrow-icon.arrow-left {
  transform: rotate(-90deg);
}
.mcp-tool-renderer .mcp-tool-control .status-text.success {
  color: var(--cb-success-color, #40c8ae);
}
.mcp-tool-renderer .mcp-tool-control .status-text.failed {
  color: inherit;
}
.mcp-tool-renderer .mcp-tool-content .block {
  padding: 8px 12px 8px 24px;
  position: relative;
}
.mcp-tool-renderer .mcp-tool-content .block .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  vertical-align: middle;
  color: var(--cb-text-primary, #d2d3e0);
}
.mcp-tool-renderer .mcp-tool-content .block .scroll_content {
  max-height: 320px;
  overflow: auto;
}
.mcp-tool-renderer .mcp-tool-content .block .scroll_content::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 8px;
}
.mcp-tool-renderer .mcp-tool-content .block .contents {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}
.mcp-tool-renderer .mcp-tool-content .block .contents pre {
  margin: 0;
  overflow-x: auto;
  overflow-y: auto;
  max-height: 330px;
  white-space: pre-wrap;
  word-break: break-all;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
  scrollbar-width: thin;
}
.mcp-tool-renderer .mcp-tool-content .block .contents img {
  max-width: 100%;
  height: auto;
  cursor: zoom-in;
  display: block;
  margin: 4px 0;
  border-radius: 4px;
  transition: opacity 0.2s ease;
}
.mcp-tool-renderer .mcp-tool-content .block .contents img:hover {
  opacity: 0.9;
}
.mcp-tool-renderer .mcp-tool-content .block .contents-list {
  display: flex;
  margin-top: 10px;
  gap: 8px;
  flex-direction: column;
  max-height: 300px;
  overflow: auto;
  scrollbar-width: thin;
}
.mcp-tool-renderer .mcp-tool-content .first-child-block {
  border-top: 1px solid var(--vscode-widget-border, #454545);
  border-bottom: 1px solid var(--vscode-widget-border, #454545);
}
.mcp-tool-renderer .mcp-tool-content .mcp-result-loading {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  color: var(--cb-text-secondary, #858699);
  font-size: 12px;
}
.mcp-tool-renderer .mcp-tool-content .mcp-tool-progress {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px 6px 24px;
  color: var(--cb-text-secondary);
  font-size: 12px;
  line-height: 18px;
}
.mcp-tool-renderer .mcp-tool-content .mcp-tool-progress .progress-spinner {
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border: 1.5px solid var(--cb-border);
  border-top-color: var(--cb-text-primary);
  border-radius: 50%;
  animation: mcp-tool-progress-spin 0.8s linear infinite;
}
.mcp-tool-renderer .mcp-tool-content .mcp-tool-progress .progress-text {
  flex: 1;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@keyframes mcp-tool-progress-spin {
  to {
    transform: rotate(360deg);
  }
}
.mcp-tool-renderer .mcp-image-wrapper {
  position: relative;
  margin: 8px 0;
}
.mcp-tool-renderer .mcp-image-container {
  display: block;
}
.mcp-tool-renderer .mcp-result-image {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  cursor: pointer;
  transition: box-shadow 0.2s ease;
}
.mcp-tool-renderer .mcp-result-image:hover {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}
.mcp-tool-renderer .mcp-image-expand-icon {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 32px;
  height: 32px;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.2s ease;
  color: #fff;
  backdrop-filter: blur(4px);
  z-index: 1;
}
.mcp-tool-renderer .mcp-image-expand-icon:hover {
  background-color: rgba(0, 0, 0, 0.8);
  transform: scale(1.1);
}
.mcp-tool-renderer .mcp-image-expand-icon svg {
  display: block;
}
.mcp-tool-renderer .mcp-image-loading {
  padding: 12px;
  text-align: center;
  color: var(--cb-text-tertiary, #a0a0a0);
  font-size: 12px;
}
.mcp-tool-renderer .mcp-image-error {
  padding: 12px;
  text-align: center;
  color: var(--cb-text-error-active, #B42C3F);
  background-color: var(--vscode-inputValidation-errorBackground, rgba(255, 0, 0, 0.1));
  border: 1px solid var(--vscode-inputValidation-errorBorder, #ff5263);
  border-radius: 4px;
  font-size: 12px;
}
.mcp-tool-renderer .mcp-image-preview-modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.85);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
  animation: fadeIn 0.2s ease;
  -webkit-app-region: no-drag;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.mcp-tool-renderer .mcp-image-preview-content {
  position: relative;
  max-width: 90vw;
  max-height: 90vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.mcp-tool-renderer .mcp-image-preview-img {
  max-width: 100%;
  max-height: 90vh;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.mcp-tool-renderer .mcp-image-preview-close {
  position: absolute;
  top: -40px;
  right: 0;
  background: none;
  border: none;
  color: #fff;
  font-size: 32px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
  opacity: 0.8;
}
.mcp-tool-renderer .mcp-image-preview-close:hover {
  opacity: 1;
}
.mcp-tool-renderer .mcp-image-preview-close:focus {
  outline: none;
}.roots-confirm-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px 12px 8px 24px;
  margin-top: 0;
  border-top: 1px solid var(--vscode-widget-border);
}
.roots-confirm-card__header {
  display: flex;
  align-items: center;
  gap: 6px;
}
.roots-confirm-card__icon {
  font-size: 14px;
}
.roots-confirm-card__title {
  font-size: 12px;
  color: var(--vscode-foreground);
  font-weight: 500;
}
.roots-confirm-card__roots {
  overflow: hidden;
}
.roots-confirm-card__roots-header {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.roots-confirm-card__roots-header:hover {
  color: var(--vscode-foreground);
}
.roots-confirm-card__roots-count {
  color: var(--cb-text-secondary, #858699);
}
.roots-confirm-card__expand-icon {
  font-size: 10px;
  transition: transform 0.2s ease;
  color: var(--cb-text-secondary, #858699);
}
.roots-confirm-card__expand-icon.expanded {
  transform: rotate(90deg);
}
.roots-confirm-card__roots-list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
  max-height: 100px;
  overflow-y: auto;
}
.roots-confirm-card__root-item {
  font-size: 11px;
  font-family: var(--vscode-editor-font-family);
  color: var(--vscode-foreground);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.roots-confirm-card__remember {
  display: flex;
  align-items: center;
}
.roots-confirm-card__checkbox {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.roots-confirm-card__checkbox input[type=checkbox] {
  cursor: pointer;
  margin: 0;
  width: 12px;
  height: 12px;
}
.roots-confirm-card__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}
.roots-confirm-card__actions .action-label {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.roots-confirm-card__actions .action-btn {
  font-size: 11px;
  color: var(--vscode-button-foreground);
  background-color: var(--vscode-button-background);
  border: none;
  border-radius: 3px;
  cursor: pointer;
  padding: 3px 10px;
}
.roots-confirm-card__actions .action-btn:hover {
  background-color: var(--vscode-button-hoverBackground);
}
.roots-confirm-card__actions .action-btn.secondary {
  color: var(--vscode-foreground);
  background-color: transparent;
  border: 1px solid var(--vscode-button-border, var(--vscode-widget-border));
}
.roots-confirm-card__actions .action-btn.secondary:hover {
  background-color: var(--vscode-toolbar-hoverBackground, rgba(90, 93, 94, 0.31));
}
.roots-confirm-card__actions .action-btn.disabled {
  opacity: 0.5;
  pointer-events: none;
}.sampling-confirm-card {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 8px 12px 8px 24px;
  margin-top: 0;
  border-top: 1px solid var(--vscode-widget-border);
}
.sampling-confirm-card__header {
  display: flex;
  align-items: center;
  gap: 6px;
}
.sampling-confirm-card__icon {
  font-size: 14px;
}
.sampling-confirm-card__title {
  font-size: 12px;
  color: var(--vscode-foreground);
  font-weight: 500;
}
.sampling-confirm-card__info {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__info-item {
  display: flex;
  gap: 4px;
}
.sampling-confirm-card__info-item .label {
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__info-item .value {
  color: var(--vscode-foreground);
}
.sampling-confirm-card__preview {
  overflow: hidden;
}
.sampling-confirm-card__preview-header {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__preview-header:hover {
  color: var(--vscode-foreground);
}
.sampling-confirm-card__expand-icon {
  font-size: 10px;
  transition: transform 0.2s ease;
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__expand-icon.expanded {
  transform: rotate(90deg);
}
.sampling-confirm-card__preview-content {
  padding: 6px 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  max-height: 120px;
  overflow-y: auto;
}
.sampling-confirm-card__system-prompt {
  font-size: 11px;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sampling-confirm-card__system-prompt .label {
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__system-prompt .content {
  color: var(--vscode-foreground);
  font-family: var(--vscode-editor-font-family);
}
.sampling-confirm-card__messages {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.sampling-confirm-card__message {
  font-size: 11px;
  display: flex;
  gap: 4px;
}
.sampling-confirm-card__message .role {
  color: var(--cb-text-secondary, #858699);
  flex-shrink: 0;
}
.sampling-confirm-card__message .content {
  color: var(--vscode-foreground);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.sampling-confirm-card__message.user .role {
  color: var(--vscode-textLink-foreground);
}
.sampling-confirm-card__message.assistant .role {
  color: var(--vscode-terminal-ansiGreen);
}
.sampling-confirm-card__remember {
  display: flex;
  align-items: center;
}
.sampling-confirm-card__checkbox {
  display: flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__checkbox input[type=checkbox] {
  cursor: pointer;
  margin: 0;
  width: 12px;
  height: 12px;
}
.sampling-confirm-card__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}
.sampling-confirm-card__actions .action-label {
  font-size: 11px;
  color: var(--cb-text-secondary, #858699);
}
.sampling-confirm-card__actions .action-btn {
  font-size: 11px;
  color: var(--vscode-button-foreground);
  background-color: var(--vscode-button-background);
  border: none;
  border-radius: 3px;
  cursor: pointer;
  padding: 3px 10px;
}
.sampling-confirm-card__actions .action-btn:hover {
  background-color: var(--vscode-button-hoverBackground);
}
.sampling-confirm-card__actions .action-btn.secondary {
  color: var(--vscode-foreground);
  background-color: transparent;
  border: 1px solid var(--vscode-button-border, var(--vscode-widget-border));
}
.sampling-confirm-card__actions .action-btn.secondary:hover {
  background-color: var(--vscode-toolbar-hoverBackground, rgba(90, 93, 94, 0.31));
}
.sampling-confirm-card__actions .action-btn.disabled {
  opacity: 0.5;
  pointer-events: none;
}
/**
 * MCP Tool 简洁模式渲染器样式
 * 单行展示：[图标] serverName (toolName) [状态文本]
 * 与 web-fetch-compact / web-search-compact 共用同一套布局规范，避免在 isCompact 模式下出现卡片样式不协调。
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.mcp-tool-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.mcp-tool-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.mcp-tool-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.mcp-tool-compact__server {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mcp-tool-compact__server--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.mcp-tool-compact__tool {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.mcp-tool-compact__status {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-size: 12px;
  flex-shrink: 0;
  margin-left: auto;
}
.mcp-tool-compact__status--success {
  color: var(--cb-success-color, #40c8ae);
}
.mcp-tool-compact__status--failed {
  color: inherit;
}
/**
 * Fetch MCP Resource Renderer 样式
 * 从 chat-ui/renderers/mcp/fetch-mcp-resource-renderer.less 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.fetch-mcp-resource-renderer .card-header {
  padding: 7px 12px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.fetch-mcp-resource-renderer .card-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.fetch-mcp-resource-renderer .card-header .left {
  flex: 1;
  min-width: 0;
}
.fetch-mcp-resource-renderer .card-header .right {
  flex-shrink: 0;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  color: var(--cb-text-primary, #d2d3e0);
  min-width: 0;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-title .fetch-mcp-resource-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-title .header-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-control {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-control .arrow-icon {
  flex-shrink: 0;
  transition: transform 0.2s ease;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-control .arrow-icon.arrow-left {
  transform: rotate(-90deg);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-control .status-text.success {
  color: var(--cb-success-color, #40c8ae);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-control .status-text.failed {
  color: inherit;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block {
  padding: 8px 12px 8px 24px;
  position: relative;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .title {
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  vertical-align: middle;
  color: var(--cb-text-primary, #d2d3e0);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .scroll_content {
  max-height: 320px;
  overflow: auto;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .scroll_content::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 8px;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .contents {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .contents pre {
  margin: 0;
  overflow-x: auto;
  overflow-y: auto;
  max-height: 330px;
  white-space: pre-wrap;
  word-break: break-all;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
  scrollbar-width: thin;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--vscode-textLink-foreground, #3794ff);
  text-decoration: none;
  cursor: pointer;
  font-size: 12px;
  padding: 4px 0;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-link:hover {
  text-decoration: underline;
  color: var(--vscode-textLink-activeForeground, #3794ff);
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-link .link-icon {
  width: 14px;
  height: 14px;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-image {
  max-width: 100%;
  max-height: 300px;
  border-radius: 4px;
  margin-top: 8px;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 8px;
  background-color: var(--vscode-editor-inactiveSelectionBackground, rgba(255, 255, 255, 0.05));
  border-radius: 4px;
  margin-top: 8px;
  transition: background-color 0.2s ease;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info:hover {
  background-color: var(--vscode-list-hoverBackground, rgba(255, 255, 255, 0.1));
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info .download-icon {
  width: 16px;
  height: 16px;
  margin-top: 2px;
  color: var(--vscode-symbolIcon-fileForeground, #d2d3e0);
  flex-shrink: 0;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info .download-info-text {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info .download-info-text .resource-name {
  font-family: var(--vscode-editor-font-family);
  font-size: 11px;
  color: var(--cb-text-tertiary, #a0a0a0);
  word-break: break-all;
  opacity: 0.8;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info .download-info-text .download-path {
  font-family: var(--vscode-editor-font-family);
  font-size: 12px;
  color: var(--vscode-textLink-foreground, #3794ff);
  word-break: break-all;
  font-weight: 500;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .block .resource-download-info .download-info-text .download-path:hover {
  text-decoration: underline;
}
.fetch-mcp-resource-renderer .fetch-mcp-resource-content .first-child-block {
  border-top: 1px solid var(--vscode-widget-border, #454545);
  border-bottom: 1px solid var(--vscode-widget-border, #454545);
}
/**
 * MCP Match Tool Renderer 样式
 * 从 chat-ui/renderers/mcp-match-tool-renderer 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.mcp-match-tool-renderer .card-header {
  padding: 7px 12px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.mcp-match-tool-renderer .card-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.mcp-match-tool-renderer .card-header .left {
  flex: 1;
  min-width: 0;
}
.mcp-match-tool-renderer .card-header .right {
  flex-shrink: 0;
}
.mcp-match-tool-renderer .mcp-match-tool-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  min-width: 0;
}
.mcp-match-tool-renderer .mcp-match-tool-title .mcp-match-tool-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.mcp-match-tool-renderer .mcp-match-tool-title .title-text {
  color: var(--cb-text-secondary, #858699);
  flex-shrink: 0;
}
.mcp-match-tool-renderer .mcp-match-tool-title .title-text.loading-text {
  animation: pulse 1.5s ease-in-out infinite;
}
.mcp-match-tool-renderer .mcp-match-tool-title .server-names {
  color: var(--cb-text-tertiary, #a0a0a0);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mcp-match-tool-renderer .mcp-match-tool-title .arrow-icon {
  flex-shrink: 0;
  margin-left: auto;
  transition: transform 0.2s ease;
}
.mcp-match-tool-renderer .mcp-match-tool-title .arrow-icon.arrow-left {
  transform: rotate(-90deg);
}
.mcp-match-tool-renderer .mcp-match-tool-title .arrow-icon.arrow-down {
  transform: rotate(0deg);
}
@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.mcp-match-tool-renderer .mcp-match-tool-control {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}
.mcp-match-tool-renderer .mcp-match-tool-content {
  padding: 8px 12px;
}
.mcp-match-tool-renderer .mcp-match-tool-content .mcp-tool-item {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(120px, 1.5fr) auto;
  gap: 12px;
  align-items: center;
  padding: 4px 8px;
  border-radius: 4px;
}
.mcp-match-tool-renderer .mcp-match-tool-content .mcp-tool-item:hover {
  background-color: var(--vscode-list-hoverBackground);
}
.mcp-match-tool-renderer .mcp-match-tool-content .mcp-tool-item .mcp-tool-name {
  font-size: 12px;
  color: var(--vscode-editor-foreground);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mcp-match-tool-renderer .mcp-match-tool-content .mcp-tool-item .mcp-server-name {
  font-size: 12px;
  color: var(--cb-text-secondary, #858699);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mcp-match-tool-renderer .mcp-match-tool-content .mcp-tool-item .mcp-tool-status {
  font-size: 12px;
  color: var(--cb-text-tertiary, #a0a0a0);
  flex-shrink: 0;
  text-align: right;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.mcp-match-tool-renderer .mcp-match-tool-content .no-result {
  color: var(--cb-text-tertiary, #a0a0a0);
  font-size: 12px;
  text-align: center;
  padding: 12px 0;
}
/**
 * MCP Integration Renderer 样式
 * 从 chat-ui/renderers/mcp-integration-renderer.less 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.mcp-integration-renderer .card-header {
  padding: 7px 12px !important;
  background-color: var(--cb-panel-bg-primary, #2d2d2d);
}
.mcp-integration-renderer .card-header:hover {
  background-color: var(--cb-vscode-sideBar-background);
  cursor: pointer;
}
.mcp-integration-renderer .card-header .left {
  flex: 1;
  min-width: 0;
}
.mcp-integration-renderer .card-header .right {
  flex-shrink: 0;
}
.mcp-integration-renderer .mcp-integration-title {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  font-size: 14px;
  line-height: 1.75;
}
.mcp-integration-renderer .mcp-integration-title.loading-text {
  animation: pulse 1.5s ease-in-out infinite;
}
.mcp-integration-renderer .mcp-integration-title .mcp-integration-icon {
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, #a0a0a0);
}
.mcp-integration-renderer .mcp-integration-title .title-text {
  display: block;
  flex: 1;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--cb-text-primary, #d2d3e0);
}
@keyframes pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
}
.mcp-integration-renderer .mcp-integration-control {
  display: flex;
  align-items: center;
  font-size: 12px;
  gap: 4px;
  flex-shrink: 0;
  white-space: nowrap;
}
.mcp-integration-renderer .mcp-integration-control .status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  flex-shrink: 0;
}
.mcp-integration-renderer .mcp-integration-control .icon-hover {
  width: 18px;
  height: 18px;
  cursor: pointer;
  color: var(--cb-text-primary, #d2d3e0);
}
.mcp-integration-renderer .mcp-integration-control .icon-hover:hover {
  opacity: 0.8;
}
.mcp-integration-renderer .mcp-integration-result {
  overflow: auto;
  padding: 6px 8px;
  max-height: 300px;
  scrollbar-width: thin;
  scrollbar-color: var(--vscode-scrollbarSlider-background) transparent;
}
.mcp-integration-renderer .mcp-integration-result::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.mcp-integration-renderer .mcp-integration-result::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.mcp-integration-renderer .mcp-integration-result::-webkit-scrollbar-thumb:hover {
  background-color: var(--vscode-scrollbarSlider-hoverBackground);
}
.mcp-integration-renderer .mcp-integration-result::-webkit-scrollbar-track {
  background-color: transparent;
}
.mcp-integration-renderer .mcp-integration-result pre {
  font-family: "JetBrains Mono", "Fira Code", "Consolas", monospace;
  font-size: 12px;
  margin: 0;
  white-space: pre-wrap;
  word-break: break-all;
  color: var(--cb-text-secondary, #858699);
}
.mcp-integration-renderer .mcp-integration-result pre > div {
  width: fit-content;
  min-width: 100%;
}
.mcp-integration-renderer .mcp-integration-result.search-integration-result .search-result-group {
  padding: 2px 0;
  font-size: 12px;
  color: var(--cb-text-primary, #d2d3e0);
}
.mcp-integration-renderer .mcp-integration-result.search-integration-result .search-result-group .integration-name {
  font-weight: 500;
  color: var(--cb-primary-color, #1890ff);
}
.mcp-integration-renderer .mcp-integration-result.search-integration-result .search-result-group .tool-list {
  color: var(--cb-text-secondary, #858699);
}
.mcp-integration-renderer .mcp-integration-result.search-integration-result .search-result-hint {
  margin-top: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--vscode-widget-border, #454545);
  font-size: 11px;
  color: var(--cb-text-tertiary, #a0a0a0);
  font-style: italic;
}
/**
 * ImageGen 渲染器样式
 * 从 image-gen-renderer.less 转换而来
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.image-gen-tool {
  width: 100%;
}
.image-gen-tool .image-gen-container {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--vscode-panel-border, #3c3c3c);
  background: var(--vscode-editor-background, #1e1e1e);
}
.image-gen-tool .image-gen-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px;
  cursor: pointer;
  user-select: none;
  background: var(--vscode-sideBar-background, #252526);
  border-bottom: 1px solid var(--vscode-panel-border, #3c3c3c);
}
.image-gen-tool .image-gen-header:hover {
  background: var(--vscode-list-hoverBackground, #2a2d2e);
}
.image-gen-tool .image-gen-header .header-left {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
}
.image-gen-tool .image-gen-header .header-right {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: var(--vscode-icon-foreground, #cccccc);
  flex-shrink: 0;
}
.image-gen-tool .image-gen-header .header-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  color: var(--vscode-icon-foreground, #cccccc);
  flex-shrink: 0;
}
.image-gen-tool .image-gen-header .header-icon svg {
  width: 14px;
  height: 14px;
}
.image-gen-tool .image-gen-header .header-title {
  font-size: 14px;
  color: var(--vscode-foreground, #cccccc);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.image-gen-tool .image-gen-content {
  padding: 0;
  margin: 4px 0;
}
.image-gen-tool .image-preview-area {
  padding: 12px;
}
.image-gen-tool .checkerboard-bg {
  position: relative;
  width: 100%;
  min-height: 200px;
  border-radius: 6px;
  overflow: hidden;
  background-image: linear-gradient(45deg, #404040 25%, transparent 25%), linear-gradient(-45deg, #404040 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #404040 75%), linear-gradient(-45deg, transparent 75%, #404040 75%);
  background-size: 16px 16px;
  background-position: 0 0, 0 8px, 8px -8px, -8px 0;
  background-color: #2d2d2d;
}
.image-gen-tool .loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
}
.image-gen-tool .spinner {
  width: 32px;
  height: 32px;
  border: 3px solid rgba(255, 255, 255, 0.2);
  border-top-color: var(--vscode-progressBar-background, #0e70c0);
  border-radius: 50%;
  animation: spinner-rotate 0.8s linear infinite;
}
@keyframes spinner-rotate {
  to {
    transform: rotate(360deg);
  }
}
.image-gen-tool .error-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  color: var(--vscode-errorForeground, #f48771);
  font-size: 14px;
}
.image-gen-tool .image-gallery {
  display: flex;
  flex-direction: column;
  gap: 0;
}
.image-gen-tool .image-item {
  position: relative;
  overflow: hidden;
}
.image-gen-tool .image-item:not(:last-child) {
  border-bottom: 1px solid var(--vscode-panel-border, #3c3c3c);
}
.image-gen-tool .image-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
  background-image: linear-gradient(45deg, #404040 25%, transparent 25%), linear-gradient(-45deg, #404040 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #404040 75%), linear-gradient(-45deg, transparent 75%, #404040 75%);
  background-size: 16px 16px;
  background-position: 0 0, 0 8px, 8px -8px, -8px 0;
  background-color: #2d2d2d;
}
.image-gen-tool .image-wrapper img {
  max-width: 100%;
  max-height: 400px;
  object-fit: contain;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
.image-gen-tool .image-path {
  padding: 8px 12px;
  font-size: 12px;
  color: var(--vscode-descriptionForeground, #858585);
  background: var(--vscode-sideBar-background, #252526);
  cursor: pointer;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.image-gen-tool .image-path:hover {
  color: var(--vscode-textLink-foreground, #3794ff);
  text-decoration: underline;
}
.image-gen-tool .image-path span {
  overflow: hidden;
  text-overflow: ellipsis;
}
/**
 * Skill 渲染器样式
 * 参考 chat-ui 的 status-text.less 和 tool-renderer 样式
 */
/**
 * VSCode 主题变量映射
 *
 * @deprecated 此文件已废弃，请直接使用 `@use './variables'` 或 `@import './variables'`
 *
 * 新的变量系统位于：
 * - styles/variables/_root.scss - 根变量
 * - styles/variables/_theme-dark.scss - Dark 主题
 * - styles/variables/_theme-light.scss - Light 主题
 *
 * 此文件仅作为向后兼容的转发，后续版本将移除
 */
.skill-renderer {
  display: flex;
  gap: 6px;
  flex-direction: column;
}
.skill-renderer .title-wrapper {
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  flex: 1;
}
.skill-renderer .title-wrapper .text-primary {
  color: var(--cb-text-primary, #cccccc);
  font-size: 14px;
  line-height: 1.75;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.skill-renderer .title-wrapper.loading-text .text-primary::after {
  content: "...";
  animation: loading-dots 1.5s infinite;
}
.skill-renderer .status-text {
  display: inline-flex;
  align-items: center;
  color: var(--cb-text-tertiary, #a0a0a0);
  font-size: 14px;
}
.skill-renderer .status-text .status-label {
  flex-shrink: 0;
}
.skill-renderer .status-text .status-icon {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  vertical-align: middle;
  margin-left: 4px;
}
.skill-renderer .status-text .status-icon.accept {
  background-color: #40C8AE;
}
.skill-renderer .status-text .status-icon.reject {
  background-color: #C74E39;
}
@keyframes loading-dots {
  0%, 20% {
    content: ".";
  }
  40% {
    content: "..";
  }
  60%, 100% {
    content: "...";
  }
}
/**
 * Skill 简洁模式渲染器样式
 * 单行展示：[SkillIcon] [状态文本] [技能名称]
 */
.skill-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.skill-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.skill-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.skill-compact__name {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
.skill-compact__status-error {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
/**
 * ConnectCloudService 简洁模式渲染器样式
 * 单行展示：[图标] 连接状态 [标签]
 * 与 web-fetch 等紧凑工具对齐
 */
/**
 * ShiningText 流光文字效果（统一出口）
 *
 * 视觉规格（用户指定，对应 ai-status 设计稿）：
 * - 渐变角度 110deg
 * - 站点 0% / 35% / 50%(highlight) / 65% / 100%(base) — 亮带集中且较窄
 * - background-size: 200% 100%
 * - 动画：background-position 从 200% 0 → -200% 0，周期 2.2s linear infinite
 *
 * 主题适配（关键设计决策）：
 * - 不引入新的全局 token（避免依赖外部 styles/index.scss 入口被加载，否则会出现"空白"故障）
 * - 直接复用 cb-chat-ui 已经在浅/深主题下都有正确值的 --cb-text-primary：
 *   · 深色主题：--cb-text-primary 是亮色（#d2d3e0），透明度做暗→亮变化
 *   · 浅色主题：--cb-text-primary 是深色（#333333），透明度做暗→亮变化
 *   · 两端的 base/highlight 透明度对齐用户给的 0.26 / 0.55 站点
 * - 即使 --cb-text-primary 未定义，每个 var() 也带了 fallback，绝不会触发"渐变 invalid → 空白"
 *
 * 关键帧 cb-shining-text-sweep 在本文件顶部声明，所有 @use 本模块的 .scss 编译产物中都会注入一次。
 *
 * 用法：
 *   @use "<相对路径>/styles/mixins/shining-text" as shining;
 *   .my-loading-text { @include shining.shining-text; }
 *
 * 或直接给元素加公共类：
 *   <span class="cb-shining-text">深度思考中</span>
 *
 * 注意：mixin 不写 font-size / font-weight / color，由调用方决定文字本身排版。
 */
/* ========== 全局唯一关键帧（命名加前缀避免与历史 sweep 撞名） ========== */
@keyframes cb-shining-text-sweep {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
/**
 * mixin 本体
 *
 * 用 color-mix 把 --cb-text-primary 调成两档透明度：
 * - base 26%（暗带，环绕亮带的主基调）
 * - highlight 55%（亮带，集中在 50% 站点）
 * 这两个比例 1:1 复用了用户给的 ShiningText 设计稿（rgba 0.26 / 0.55）。
 */
/* ========== 公共类：给不方便改 .scss 的场景兜底 ========== */
.cb-shining-text {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}

.connect-cloud-service-compact {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding-bottom: 2px;
}
.connect-cloud-service-compact__header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.75;
  overflow: hidden;
  white-space: nowrap;
}
.connect-cloud-service-compact__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
}
.connect-cloud-service-compact__action {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  flex-shrink: 0;
}
.connect-cloud-service-compact__action--loading {
  position: relative;
  width: fit-content;
  background: linear-gradient(110deg, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 0%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 35%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 55%, transparent) 50%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 65%, color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 26%, transparent) 100%);
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  animation: cb-shining-text-sweep 2.2s linear infinite;
}
.connect-cloud-service-compact__label {
  color: var(--cb-text-tertiary, rgba(0, 0, 0, 0.5));
  font-weight: 400;
  overflow: hidden;
  text-overflow: ellipsis;
  flex-shrink: 1;
  min-width: 0;
}
/**
 * CreditEstimate 紧凑形态样式
 * - 整段（prefix + 钻石图标 + 数值）作为 Tooltip 触发区
 * - 文本下加 1px 虚线下划线，与 Figma 设计稿一致
 * - Tooltip 强制纯黑底 + 白字，不跟随主题色，与设计稿一致
 */
._container_1i757_8 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  user-select: none;
  font-size: 14px;
  line-height: 25px;
  color: var(--cb-text-secondary, rgba(0, 0, 0, 0.7));
  white-space: nowrap;
  position: relative;
  top: 1px;
}

._text_1i757_21 {
  color: inherit;
  word-break: keep-all;
}

._value_1i757_26 {
  font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-weight: 400;
  color: inherit;
  white-space: nowrap;
}

._icon_1i757_33 {
  flex-shrink: 0;
  color: inherit;
  /* 视觉对齐：钻石图标比文字略低，微调向上对齐 */
  margin-top: -1px;
}

/* Tooltip 文本：单段简短描述，白字，不跟随主题。
   提高选择器特异性，覆盖 tooltip.scss 中 .cb-tooltip-content span 的默认样式。
   字号 / 行高 / 字重 / 颜色 / 字体均对齐 Figma 设计稿（PingFang SC 14px/22px/500，文本 90% 白）。 */
.cb-tooltip-content ._tooltipText_1i757_43 {
  display: inline-block;
  font-family: "PingFang SC", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px !important;
  line-height: 22px !important;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.9);
  word-break: break-word;
}

/* 设计稿要求的深色 Tooltip：240px 宽 + 70% 透明黑 + 8px 圆角 + 8px backdrop blur。
   该样式在 light/dark 两种主题下表现一致：
   - 70% 黑底配 90% 白字，对比度 ≥ 7:1，可读性达标
   - backdrop-filter 在两种背景上都能形成毛玻璃质感
   因此不再随主题切换颜色。 */
.cb-tooltip._cardSurface_1i757_58 {
  width: 240px;
  background-color: rgba(0, 0, 0, 0.7);
  border-color: transparent;
  padding: 6px 8px;
  border-radius: 8px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.24);
  /* overflow visible 让 ::after 三角能溢出到容器外 */
  overflow: visible;
}

.cb-tooltip._cardSurface_1i757_58 .cb-tooltip-content {
  color: rgba(255, 255, 255, 0.9);
}

/* 下指小三角：placement="top" 时 tooltip 位于触发元素上方，
   箭头位于 tooltip 底部中线，朝下指向触发元素。
   使用与背景一致的 rgba(0,0,0,0.7)，紧贴 tooltip 下沿避免出现细缝。 */
.cb-tooltip._cardSurface_1i757_58::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid rgba(0, 0, 0, 0.7);
  pointer-events: none;
}
/**
 * Plan Editor 组件样式
 */
._plan-editor_1v05h_5 {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  color: var(--cb-text-primary, #cccccc);
  font-family: var(--cb-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
}

._plan-editor_1v05h_5._light_1v05h_14 {
  background: var(---cb-panel-bg-primary, #ffffff);
  color: var(--cb-text-primary, #333333);
}

._plan-editor-toolbar_1v05h_19 {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px;
  border-bottom: 1px solid var(--cb-border-color, #3c3c3c);
  background: var(--cb-panel-bg-primary, #1e1e1e);
}

._plan-editor-toolbar-left_1v05h_31 {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--cb-text-secondary, #999999);
}

._plan-editor-filename_1v05h_38 {
  font-size: 12px;
  opacity: 0.8;
}

._plan-editor-toolbar-right_1v05h_43 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._mode-selector_1v05h_49 {
  position: relative;
}

._mode-selector-button_1v05h_53 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 24px 4px 12px;
  height: 28px;
  font-size: 12px;
  font-weight: 400;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  border: none;
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  transition: background 0.2s;
}
._mode-selector-button_1v05h_53:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}

._dropdown-arrow_1v05h_73 {
  position: absolute;
  right: 6px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.2s;
  pointer-events: none;
}

._mode-selector-dropdown_1v05h_82 {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  min-width: 100%;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  overflow: hidden;
}

._mode-selector-option_1v05h_96 {
  padding: 8px 12px;
  font-size: 12px;
  color: var(--cb-text-primary, #cccccc);
  cursor: pointer;
  transition: background 0.15s;
}
._mode-selector-option_1v05h_96:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}
._mode-selector-option-active_1v05h_106 {
  background: var(--cb-bg-secondary, #2d2d2d);
}

._build-button_1v05h_110 {
  padding: 4px 12px;
  height: 28px;
  font-size: 12px;
  font-weight: 400;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}
._build-button-ready_1v05h_120 {
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
}
._build-button-ready_1v05h_120:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}
._build-button-building_1v05h_127 {
  background: rgba(108, 77, 255, 0.2);
  color: #a997ff;
  cursor: default;
}
._build-button-finished_1v05h_132 {
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  opacity: 0.5;
  cursor: default;
}
._build-button_1v05h_110:disabled {
  cursor: default;
}

._plan-editor-content_1v05h_142 {
  flex: 1;
  overflow: auto;
  padding: 24px 24px 44px 44px;
}

._plan-editor-content-no-toolbar_1v05h_148 {
  height: 100%;
}

._plan-header_1v05h_152 {
  margin-bottom: 30px;
}

._plan-header-row_1v05h_156 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}

._plan-title_1v05h_163 {
  color: var(--cb-text-primary, #cccccc);
  font-size: 22px;
  font-weight: 600;
  line-height: 24px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0;
}

._plan-overview_1v05h_174 {
  color: var(--cb-text-secondary, #999999);
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  margin: 0;
}

._plan-markdown-container_1v05h_182 {
  margin-bottom: 24px;
}

._plan-section_1v05h_186 {
  margin-top: 32px;
}

._diff-button-container_1v05h_190 {
  position: relative;
}

._diff-button_1v05h_190 {
  padding: 4px 12px;
  height: 28px;
  font-size: 12px;
  font-weight: 400;
  border: none;
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  cursor: pointer;
  transition: background 0.2s;
  max-width: 96px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
._diff-button_1v05h_190:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}
._diff-button-disabled_1v05h_213 {
  opacity: 0.5;
  cursor: default;
}
._diff-button-disabled_1v05h_213:hover {
  background: var(--cb-bg-secondary, #2d2d2d);
}

._diff-button-content_1v05h_221 {
  display: flex;
  align-items: center;
  gap: 2px;
}

._diff-additions_1v05h_227 {
  color: var(--cb-success, #89d185);
}

._diff-separator_1v05h_231 {
  opacity: 0.5;
  margin: 0 4px;
}

._diff-deletions_1v05h_236 {
  color: var(--cb-error, #f14c4c);
}

._diff-panel_1v05h_240 {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  min-width: 400px;
  max-width: 600px;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  display: flex;
  flex-direction: column;
}

._diff-panel-actions_1v05h_256 {
  padding: 12px;
  border-bottom: 1px solid var(--cb-border-color, #3c3c3c);
  display: flex;
  gap: 8px;
}

._diff-action-revert_1v05h_263,
._diff-action-send_1v05h_264 {
  padding: 8px 16px;
  font-size: 12px;
  font-weight: 400;
  border: 1px solid transparent;
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  cursor: pointer;
  transition: background 0.2s;
}
._diff-action-revert_1v05h_263:hover,
._diff-action-send_1v05h_264:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}

._diff-action-revert_1v05h_263 {
  flex: 1 1 33.33%;
}

._diff-action-send_1v05h_264 {
  flex: 2 1 66.67%;
}

._diff-panel-content_1v05h_288 {
  max-height: 250px;
  overflow: auto;
  padding: 8px;
}

._diff-line-removed_1v05h_294 {
  padding: 4px 8px;
  margin-bottom: 2px;
  background: rgba(255, 0, 0, 0.1);
  color: var(--cb-error, #f14c4c);
  font-size: 12px;
  font-family: var(--cb-font-mono, monospace);
  white-space: pre-wrap;
  word-break: break-word;
}

._diff-line-added_1v05h_305 {
  padding: 4px 8px;
  margin-bottom: 2px;
  background: rgba(0, 255, 0, 0.1);
  color: var(--cb-success, #89d185);
  font-size: 12px;
  font-family: var(--cb-font-mono, monospace);
  white-space: pre-wrap;
  word-break: break-word;
}

._diff-line-unchanged_1v05h_316 {
  padding: 4px 8px;
  margin-bottom: 2px;
  font-size: 12px;
  font-family: var(--cb-font-mono, monospace);
  white-space: pre-wrap;
  word-break: break-word;
  color: var(--cb-text-secondary, #999999);
}

._nav-menu-container_1v05h_326 {
  position: relative;
}

._nav-menu-button_1v05h_330 {
  padding: 4px;
  width: 28px;
  height: 28px;
  font-size: 12px;
  background: transparent;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
  color: var(--cb-text-primary, #cccccc);
}
._nav-menu-button_1v05h_330:hover {
  background: var(--cb-bg-secondary, #2d2d2d);
}
._nav-menu-button-active_1v05h_348 {
  background: var(--cb-bg-secondary, #2d2d2d);
}

._nav-menu-dropdown_1v05h_352 {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  min-width: 160px;
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  z-index: 1000;
  overflow: hidden;
}

._nav-menu-item_1v05h_366 {
  padding: 8px 12px;
  font-size: 12px;
  color: var(--cb-text-primary, #cccccc);
  cursor: pointer;
  transition: background 0.15s;
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
._nav-menu-item_1v05h_366:hover {
  background: var(--cb-bg-hover, #3c3c3c);
}

._nav-menu-item-text_1v05h_383 {
  overflow: hidden;
  text-overflow: ellipsis;
}

._nav-menu-empty_1v05h_388 {
  padding: 12px;
  font-size: 12px;
  color: var(--cb-text-secondary, #999999);
  text-align: center;
}

._design-config-panel_1v05h_395 {
  background: var(--cb-panel-bg-primary, #1e1e1e);
  border-radius: 8px;
  padding: 24px;
}

._design-config-inner_1v05h_401 {
  font-size: 13px;
}

._design-config-header_1v05h_405 {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding-bottom: 0.3em;
  border-bottom: 1px solid var(--cb-border-color, #3c3c3c);
  margin-bottom: 32px;
}

._design-config-title_1v05h_414 {
  margin: 0 0 8px 0;
  padding: 0;
  font-size: 18px;
  font-weight: 600;
  color: var(--cb-text-primary, #cccccc);
}

._design-config-grid_1v05h_422 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

._design-config-column_1v05h_428 {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

._design-section_1v05h_434 {
  margin-bottom: 24px;
}

._design-section-title_1v05h_438 {
  margin: 0 0 12px 0;
  font-size: 14px;
  font-weight: 600;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--cb-border-secondary, #4c4c4c);
  color: var(--cb-text-primary, #cccccc);
}

._keyword-tags_1v05h_447 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

._keyword-tag_1v05h_447 {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 4px 24px 4px 8px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-secondary, #999999);
  border-radius: 4px;
  font-size: 12px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  transition: all 0.2s ease;
}

._keyword-text_1v05h_467 {
  transition: all 0.2s ease;
}

._keyword-remove_1v05h_471 {
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: inherit;
  cursor: pointer;
  font-size: 16px;
  padding: 0;
  width: 16px;
  height: 16px;
  opacity: 0;
  transition: opacity 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
._keyword-remove_1v05h_471:disabled {
  cursor: not-allowed;
}

._keyword-tag_1v05h_447:hover ._keyword-remove_1v05h_471 {
  opacity: 1;
}

._keyword-tag_1v05h_447:hover ._keyword-text_1v05h_467 {
  mask-image: linear-gradient(to left, transparent 0%, transparent 10%, black 25%);
  -webkit-mask-image: linear-gradient(to left, transparent 0%, transparent 10%, black 25%);
}

._keyword-input-row_1v05h_503 {
  display: flex;
  gap: 8px;
}

._design-input_1v05h_508 {
  flex: 1;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  font-size: 13px;
}
._design-input_1v05h_508:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
._design-input_1v05h_508::placeholder {
  color: var(--cb-text-secondary, #999999);
  opacity: 0.5;
}

._design-input-mt_1v05h_527 {
  margin-top: 8px;
}

._design-select_1v05h_531 {
  width: 100%;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  font-size: 13px;
  cursor: pointer;
}
._design-select_1v05h_531:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

._design-select-sm_1v05h_547 {
  flex: 1;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  font-size: 13px;
  cursor: pointer;
}
._design-select-sm_1v05h_547:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

._design-select-weight_1v05h_563 {
  width: 140px;
  height: 32px;
  padding: 0 8px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  font-size: 13px;
  cursor: pointer;
}
._design-select-weight_1v05h_563:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

._design-button_1v05h_579 {
  padding: 6px 16px;
  height: 32px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: var(--cb-button-bg, #0e639c);
  color: var(--cb-button-fg, #ffffff);
  font-size: 13px;
  cursor: pointer;
  transition: background 0.2s;
}
._design-button_1v05h_579:hover {
  background: var(--cb-button-hover-bg, #1177bb);
}
._design-button_1v05h_579:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

._design-field_1v05h_598 {
  margin-bottom: 12px;
}

._design-label_1v05h_602 {
  display: block;
  margin-bottom: 4px;
  font-size: 13px;
  color: var(--cb-text-primary, #cccccc);
}

._font-preview_1v05h_609 {
  padding: 16px;
  border-radius: 4px;
  margin-bottom: 16px;
}

._font-preview-heading_1v05h_615 {
  color: var(--cb-text-primary, #cccccc);
  margin-bottom: 12px;
}

._font-preview-subheading_1v05h_620 {
  color: var(--cb-text-primary, #cccccc);
  margin-bottom: 12px;
}

._font-preview-body_1v05h_625 {
  color: var(--cb-text-primary, #cccccc);
}

._font-config-row_1v05h_629 {
  margin-bottom: 12px;
}

._font-config-label_1v05h_633 {
  font-size: 12px;
  margin-bottom: 8px;
  font-weight: 500;
  color: var(--cb-text-primary, #cccccc);
}

._font-config-controls_1v05h_640 {
  display: flex;
  gap: 8px;
}

._color-group_1v05h_645 {
  margin-bottom: 16px;
}

._color-group-label_1v05h_649 {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  color: var(--cb-text-primary, #cccccc);
}

._color-row_1v05h_656 {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

._color-picker_1v05h_662 {
  position: relative;
  display: inline-block;
}

._color-picker-button_1v05h_667 {
  border: 2px solid var(--cb-border-color, #3c3c3c);
  border-radius: 8px;
  transition: transform 0.1s;
}

._color-picker-popup_1v05h_673 {
  background: var(--cb-bg-elevated, #252526);
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 8px;
  padding: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  min-width: 200px;
  max-width: 220px;
}

._color-picker-field_1v05h_683 {
  margin-bottom: 8px;
}

._color-picker-label_1v05h_687 {
  display: block;
  font-size: 11px;
  margin-bottom: 4px;
  color: var(--cb-text-secondary, #999999);
}

._color-picker-hex-input_1v05h_694 {
  width: 100%;
  padding: 6px 8px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-bg-secondary, #2d2d2d);
  color: var(--cb-text-primary, #cccccc);
  font-family: monospace;
  font-size: 13px;
  box-sizing: border-box;
}

._color-picker-native_1v05h_706 {
  width: 100%;
  height: 32px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  cursor: pointer;
  box-sizing: border-box;
}

._color-picker-done_1v05h_715 {
  width: 100%;
  padding: 6px;
  border: 1px solid var(--cb-border-color, #3c3c3c);
  border-radius: 4px;
  background: var(--cb-button-bg, #0e639c);
  color: var(--cb-button-fg, #ffffff);
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  box-sizing: border-box;
}
._color-picker-done_1v05h_715:hover {
  background: var(--cb-button-hover-bg, #1177bb);
}/**
 * Grid Layout Styles
 */
._grid_48kdk_4 {
  position: relative;
  overflow: hidden;
}

._gridView_48kdk_9 {
  position: relative;
  overflow: hidden;
}

._gridViewItem_48kdk_14 {
  position: absolute;
  overflow: hidden;
  box-sizing: border-box;
}

._splitView_48kdk_20 {
  position: relative;
  overflow: hidden;
}
._splitView_48kdk_20._horizontal_48kdk_24 {
  flex-direction: column;
}
._splitView_48kdk_20._vertical_48kdk_27 {
  flex-direction: row;
}

._splitViewItem_48kdk_31 {
  position: absolute;
  overflow: hidden;
  box-sizing: border-box;
}

._sash_48kdk_37 {
  position: absolute;
  z-index: 10;
  touch-action: none;
  background-color: transparent;
  transition: background-color 0.1s ease-out;
}
._sash_48kdk_37::before {
  content: "";
  position: absolute;
  background-color: transparent;
  transition: background-color 0.1s ease-out;
}
._sash_48kdk_37._vertical_48kdk_27 {
  width: 4px;
  cursor: col-resize;
}
._sash_48kdk_37._vertical_48kdk_27::before {
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  transform: translateX(-50%);
}
._sash_48kdk_37._vertical_48kdk_27:hover::before, ._sash_48kdk_37._vertical_48kdk_27._dragging_48kdk_61::before {
  background-color: rgba(0, 122, 204, 0.6);
}
._sash_48kdk_37._horizontal_48kdk_24 {
  height: 4px;
  cursor: row-resize;
}
._sash_48kdk_37._horizontal_48kdk_24::before {
  left: 0;
  right: 0;
  top: 50%;
  height: 1px;
  transform: translateY(-50%);
}
._sash_48kdk_37._horizontal_48kdk_24:hover::before, ._sash_48kdk_37._horizontal_48kdk_24._dragging_48kdk_61::before {
  background-color: rgba(0, 122, 204, 0.6);
}
._sash_48kdk_37:hover {
  background-color: rgba(0, 122, 204, 0.6);
}
._sash_48kdk_37._dragging_48kdk_61 {
  background-color: rgba(0, 122, 204, 0.8);
}
._sash_48kdk_37._disabled_48kdk_84 {
  cursor: default;
  pointer-events: none;
}
._sash_48kdk_37._disabled_48kdk_84:hover, ._sash_48kdk_37._disabled_48kdk_84:hover::before, ._sash_48kdk_37._disabled_48kdk_84._dragging_48kdk_61, ._sash_48kdk_37._disabled_48kdk_84._dragging_48kdk_61::before {
  background-color: transparent;
}

._dragOverlay_48kdk_92 {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  cursor: inherit;
}

._viewContainer_48kdk_102 {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

._maximized_48kdk_109 {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 100;
}

._hidden_48kdk_120 {
  display: none !important;
}

._collapsed_48kdk_124 {
  overflow: hidden;
}

._expanded_48kdk_128 {
  flex: 1;
}

._animated_48kdk_132 {
  transition: all 0.2s ease-out;
}

._viewTransition_48kdk_136 {
  transition: width 0.2s ease-out, height 0.2s ease-out, opacity 0.2s ease-out;
}

._viewEnter_48kdk_140 {
  opacity: 0;
}

._viewEnterActive_48kdk_144 {
  opacity: 1;
}

._viewExit_48kdk_148 {
  opacity: 1;
}

._viewExitActive_48kdk_152 {
  opacity: 0;
}

._drawerBackdrop_48kdk_156 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 200;
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--drawer-animation-duration, 300ms) ease-out;
}

._drawerBackdropOpen_48kdk_169 {
  opacity: 1;
  pointer-events: auto;
}

._drawer_48kdk_156 {
  position: absolute;
  z-index: 201;
  overflow: hidden;
  transition: transform var(--drawer-animation-duration, 300ms) ease-out;
  will-change: transform;
}

._drawerLeft_48kdk_182 {
  top: 0;
  left: 0;
  height: 100%;
  transform: translateX(-100%);
}

._drawerRight_48kdk_189 {
  top: 0;
  right: 0;
  height: 100%;
  transform: translateX(100%);
}

._drawerTop_48kdk_196 {
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(-100%);
}

._drawerBottom_48kdk_203 {
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(100%);
}

._gridViewDrawerItem_48kdk_210 {
  position: absolute;
  z-index: 201;
  overflow: hidden;
  transition: transform var(--drawer-animation-duration, 300ms) ease-out;
  will-change: transform;
}

._drawerItemLeft_48kdk_218 {
  top: 0;
  left: 0;
  height: 100%;
  transform: translateX(-100%);
}

._drawerItemRight_48kdk_225 {
  top: 0;
  right: 0;
  height: 100%;
  transform: translateX(100%);
}

._drawerItemTop_48kdk_232 {
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(-100%);
}

._drawerItemBottom_48kdk_239 {
  bottom: 0;
  left: 0;
  width: 100%;
  transform: translateY(100%);
}

._drawerItemFullScreen_48kdk_246 {
  left: 0;
  right: 0;
  bottom: 0;
  width: 100% !important;
}

._gridViewDrawerItemOpen_48kdk_253 {
  transform: translate3d(0, 0, 0);
}

._drawerOpen_48kdk_257 {
  transform: translate3d(0, 0, 0);
}._card_d0xfh_1 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 8px;
  cursor: default;
  transition: background-color 0.15s ease;
  border: none;
  border-radius: 4px;
}
._card_d0xfh_1[role=button] {
  cursor: pointer;
}
._card_d0xfh_1[role=button]:hover {
  background-color: var(--cb-hover-bg, rgba(255, 255, 255, 0.05));
}
._card_d0xfh_1:hover {
  background: var(--cb-hover-bg, rgba(255, 255, 255, 0.05));
}
._card_d0xfh_1._selected_d0xfh_20 {
  background: var(--cb-bg-primary, rgba(255, 255, 255, 0.1));
}
._card_d0xfh_1._compact_d0xfh_23 {
  padding: 6px 10px;
  gap: 0;
}

._header_d0xfh_28 {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 20px;
  position: relative;
}

._icon_d0xfh_36 {
  flex-shrink: 0;
}

._headerIcon_d0xfh_40 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}
._headerIcon_d0xfh_40._headerIconHideable_d0xfh_48 {
  display: flex;
}

._pinButtonLeft_d0xfh_52 {
  display: none;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--cb-text-secondary, #858699);
}
._pinButtonLeft_d0xfh_52 svg {
  width: 16px;
  height: 16px;
}

._iconWrapper_d0xfh_70 {
  position: relative;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

._bubble_d0xfh_79 {
  width: 16px;
  height: 16px;
  color: var(--cb-text-primary, #d2d3e0);
}

._title_d0xfh_85 {
  flex: 1;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  color: var(--cb-text-primary, #d2d3e0);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

._title_d0xfh_85:has(+ ._titlePrefixButton_d0xfh_99) {
  flex: 0 1 auto;
}

._titlePrefixButton_d0xfh_99 {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  background: none;
  border: none;
  border-radius: 4px;
  color: var(--cb-text-secondary, #858699);
  cursor: default;
  transition: color 0.15s ease, background-color 0.15s ease;
}
._titlePrefixButton_d0xfh_99:disabled {
  opacity: 1;
}

._titlePrefixButtonInteractive_d0xfh_123 {
  cursor: pointer;
}
._titlePrefixButtonInteractive_d0xfh_123:hover {
  color: var(--cb-text-primary, #d2d3e0);
}
._titlePrefixButtonInteractive_d0xfh_123:active {
  opacity: 0.7;
}
._titlePrefixButtonInteractive_d0xfh_123:focus-visible {
  outline: 1px solid var(--cb-brand-color, #4a9eff);
  outline-offset: 1px;
}

._titlePrefixButtonAccent_d0xfh_137 {
  color: var(--cb-brand-color, #4a9eff);
  background: none;
}
._titlePrefixButtonAccent_d0xfh_137:hover {
  color: var(--cb-brand-color, #4a9eff);
  background: none;
}

._titlePrefixButtonExpanded_d0xfh_146 {
  color: var(--cb-text-primary, #d2d3e0);
}

._titlePrefixButtonAccent_d0xfh_137._titlePrefixButtonExpanded_d0xfh_146 {
  color: var(--cb-brand-color, #4a9eff);
  background: none;
}

._titlePrefixIcon_d0xfh_155 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}
._titlePrefixIcon_d0xfh_155 svg {
  width: 16px;
  height: 16px;
}

._titlePrefixIconHover_d0xfh_167,
._titlePrefixIconExpanded_d0xfh_168 {
  display: none;
}

._titlePrefixButtonInteractive_d0xfh_123:hover:not(._titlePrefixButtonExpanded_d0xfh_146) ._titlePrefixIconDefault_d0xfh_172 {
  display: none;
}
._titlePrefixButtonInteractive_d0xfh_123:hover:not(._titlePrefixButtonExpanded_d0xfh_146) ._titlePrefixIconHover_d0xfh_167 {
  display: inline-flex;
}

._titlePrefixButtonExpanded_d0xfh_146 ._titlePrefixIconDefault_d0xfh_172,
._titlePrefixButtonExpanded_d0xfh_146 ._titlePrefixIconHover_d0xfh_167,
._titlePrefixButtonExpanded_d0xfh_146:hover ._titlePrefixIconDefault_d0xfh_172,
._titlePrefixButtonExpanded_d0xfh_146:hover ._titlePrefixIconHover_d0xfh_167 {
  display: none;
}
._titlePrefixButtonExpanded_d0xfh_146 ._titlePrefixIconExpanded_d0xfh_168,
._titlePrefixButtonExpanded_d0xfh_146:hover ._titlePrefixIconExpanded_d0xfh_168 {
  display: inline-flex;
}

._editButton_d0xfh_190 {
  flex-shrink: 0;
  display: none;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--cb-text-secondary, #858699);
}
._editButton_d0xfh_190 svg {
  width: 14px;
  height: 14px;
}
._editButton_d0xfh_190:hover {
  color: var(--cb-text-primary, #d2d3e0);
}

._titleInput_d0xfh_211 {
  flex: 1;
  font-size: 13px;
  font-weight: 400;
  line-height: 18px;
  color: var(--cb-text-primary, #d2d3e0);
  background: var(--cb-input-bg, rgba(255, 255, 255, 0.05));
  border: 1px solid var(--cb-input-border-color, rgba(255, 255, 255, 0.1));
  border-radius: 4px;
  padding: 0 4px;
  min-width: 0;
  outline: none;
}
._titleInput_d0xfh_211:focus {
  border-color: var(--cb-input-focus-border-color, #4a9eff);
}

._timeWrapper_d0xfh_228 {
  flex-shrink: 0;
  margin-left: auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 20px;
  height: 20px;
}

._time_d0xfh_228 {
  font-size: 11px;
  line-height: 16px;
  color: var(--cb-text-secondary, #858699);
}

._timeContainer_d0xfh_244 {
  display: inline-flex;
  align-items: center;
}

._unreadDot_d0xfh_249 {
  position: absolute;
  top: -1px;
  right: -6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #ef4444;
  pointer-events: none;
  z-index: 1;
}

._actionButton_d0xfh_261 {
  display: none;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  color: var(--cb-text-secondary, #858699);
}
._actionButton_d0xfh_261 svg {
  width: 16px;
  height: 16px;
}
._actionButton_d0xfh_261:hover {
  color: var(--cb-text-primary, #d2d3e0);
}
._actionButton_d0xfh_261:active {
  opacity: 0.7;
}
._actionButton_d0xfh_261._actionButtonDisabled_d0xfh_283 {
  cursor: not-allowed;
  opacity: 0.35;
}
._actionButton_d0xfh_261._actionButtonDisabled_d0xfh_283:hover {
  color: var(--cb-text-secondary, #858699);
}
._actionButton_d0xfh_261._actionButtonDisabled_d0xfh_283:active {
  opacity: 0.35;
}

._card_d0xfh_1:hover ._timeContainer_d0xfh_244 {
  display: none;
}
._card_d0xfh_1:hover ._trailingStatus_d0xfh_297 {
  display: none;
}
._card_d0xfh_1:hover ._actionButton_d0xfh_261 {
  display: flex;
}
._card_d0xfh_1:hover ._editButton_d0xfh_190 {
  display: flex;
}
._card_d0xfh_1:hover ._pinButtonLeft_d0xfh_52 {
  display: flex;
  opacity: 1;
}
._card_d0xfh_1:hover ._headerIconHideable_d0xfh_48 {
  display: none;
}

._card_d0xfh_1._pinned_d0xfh_314 ._pinButtonLeft_d0xfh_52 {
  display: flex;
  opacity: 0.3;
}
._card_d0xfh_1._pinned_d0xfh_314 ._headerIconHideable_d0xfh_48 {
  display: none;
}

._card_d0xfh_1:has(._confirmButton_d0xfh_322) ._timeContainer_d0xfh_244 {
  display: none;
}
._card_d0xfh_1:has(._confirmButton_d0xfh_322) ._editButton_d0xfh_190 {
  display: none;
}

._confirmButton_d0xfh_322 {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  padding: 0 8px;
  background: var(--cb-danger-bg, #f14c4c);
  border: none;
  border-radius: 10px;
  cursor: pointer;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  line-height: 20px;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity 0.15s ease;
}
._confirmButton_d0xfh_322:hover {
  opacity: 0.85;
}
._confirmButton_d0xfh_322:active {
  opacity: 0.7;
}

._tag_d0xfh_354 {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  height: 18px;
  padding: 0 6px;
  margin-right: 4px;
  background: var(--cb-success-subtle, rgba(74, 222, 128, 0.15));
  color: var(--cb-success, #4ade80);
  font-size: 11px;
  font-weight: 500;
  line-height: 18px;
  border-radius: 9px;
  white-space: nowrap;
}

._titleTag_d0xfh_370 {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  margin-right: -4px;
  white-space: nowrap;
}

._status_d0xfh_378 {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  line-height: 14px;
  font-weight: 400;
  padding-left: 20px;
  min-height: 14px;
}

._statusDot_d0xfh_389 {
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

._statusIcon_d0xfh_396 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}
._statusIcon_d0xfh_396 svg {
  width: 100%;
  height: 100%;
}
._statusIcon_d0xfh_396._statusIconSpin_d0xfh_408 {
  animation: _spin_d0xfh_1 2s linear infinite;
}

@keyframes _spin_d0xfh_1 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
._trailingStatus_d0xfh_297 {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}._overlay_1hs0f_1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
}

._menu_1hs0f_10 {
  position: fixed;
  z-index: 10000;
  min-width: 160px;
  padding: 4px 0;
  background: var(--cb-vscode-dropdown-background, var(--cb-popover-background, #252526));
  border: 1px solid var(--cb-vscode-menu-border, var(--cb-border, #4a5568));
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

._item_1hs0f_21 {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 6px 12px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 13px;
  line-height: 20px;
  color: var(--cb-vscode-menu-foreground, var(--cb-text-primary, #d2d3e0));
  white-space: nowrap;
}
._item_1hs0f_21:hover {
  background: var(--cb-popover-active-background, var(--cb-hover-bg, rgba(255, 255, 255, 0.08)));
}
._item_1hs0f_21:active {
  opacity: 0.7;
}

._itemIcon_1hs0f_42 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
}
._itemIcon_1hs0f_42 svg {
  width: 16px;
  height: 16px;
}@keyframes _skeletonShimmer_1o4cr_1 {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}
._skeletonList_1o4cr_9 {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 8px 0;
}

._skeletonCard_1o4cr_16 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 8px;
  border-radius: 6px;
}

._skeletonHeader_1o4cr_24 {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 20px;
}

._skeletonIcon_1o4cr_31 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1o4cr_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

._skeletonTitle_1o4cr_41 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1o4cr_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  flex: 1;
  height: 14px;
  max-width: 70%;
}

._skeletonTime_1o4cr_51 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1o4cr_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 24px;
  height: 12px;
  flex-shrink: 0;
  margin-left: auto;
}

._skeletonStatus_1o4cr_62 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1o4cr_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 60px;
  height: 12px;
  margin-left: 24px;
}.cb-search-input {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 32px;
  background-color: var(--cb-input-background, var(--vscode-input-background, #3c3c3c));
  border: 1px solid var(--cb-input-border, var(--vscode-input-border, transparent));
  border-radius: 6px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
  box-sizing: border-box;
}
.cb-search-input:focus-within {
  border-color: var(--cb-input-focus-border-color, var(--cb-input-border-primary, #454545));
}
.cb-search-input--disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cb-search-input--disabled .cb-search-input__input {
  cursor: not-allowed;
}
.cb-search-input--error {
  border-color: var(--cb-error-color, var(--vscode-inputValidation-errorBorder, #f14c4c));
}
.cb-search-input--error:focus-within {
  box-shadow: 0 0 0 1px var(--cb-error-color, var(--vscode-inputValidation-errorBorder, #f14c4c));
}

.cb-search-input__icon {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-left: 8px;
  color: var(--cb-text-tertiary, var(--vscode-input-placeholderForeground, #a0a0a0));
  transition: color 0.15s ease;
}
.cb-search-input__icon svg {
  width: 14px;
  height: 14px;
}
.cb-search-input:focus-within .cb-search-input__icon {
  color: var(--cb-text-secondary, var(--vscode-foreground, #cccccc));
}

.cb-search-input__input {
  flex: 1;
  min-width: 0;
  height: 30px;
  padding: 0 8px;
  background: transparent;
  border: none;
  outline: none;
  color: var(--cb-text-primary, var(--vscode-input-foreground, #cccccc));
  font-size: 13px;
  font-family: var(--cb-font-family, var(--vscode-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif));
  line-height: 1.4;
  box-sizing: border-box;
  width: 100%;
}
.cb-search-input__input::placeholder {
  color: var(--cb-text-placeholder, var(--vscode-input-placeholderForeground, #a0a0a0));
  opacity: 1;
}
.cb-search-input__input:disabled {
  cursor: not-allowed;
}

.cb-search-input__clear {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  margin-right: 8px;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 2px;
  color: var(--cb-text-tertiary, var(--vscode-input-placeholderForeground, #a0a0a0));
  cursor: pointer;
  transition: color 0.15s ease, background-color 0.15s ease;
  opacity: 0;
  visibility: hidden;
}
.cb-search-input__clear svg {
  width: 12px;
  height: 12px;
}
.cb-search-input__clear:hover {
  color: var(--cb-text-primary, var(--vscode-foreground, #cccccc));
  background-color: var(--cb-bg-hover, var(--vscode-toolbar-hoverBackground, rgba(255, 255, 255, 0.1)));
}
.cb-search-input__clear:focus {
  outline: 1px solid var(--cb-input-focus-border-color, var(--cb-input-border-primary, #454545));
  outline-offset: -1px;
}
.cb-search-input__clear--visible {
  opacity: 1;
  visibility: visible;
}

.cb-search-input--small {
  min-height: 28px;
}
.cb-search-input--small .cb-search-input__input {
  height: 26px;
  font-size: 12px;
}
.cb-search-input--small .cb-search-input__icon,
.cb-search-input--small .cb-search-input__clear {
  width: 14px;
  height: 14px;
}
.cb-search-input--small .cb-search-input__icon svg,
.cb-search-input--small .cb-search-input__clear svg {
  width: 12px;
  height: 12px;
}

.cb-search-input--large {
  min-height: 36px;
}
.cb-search-input--large .cb-search-input__input {
  height: 34px;
  font-size: 14px;
}
.cb-search-input--large .cb-search-input__icon,
.cb-search-input--large .cb-search-input__clear {
  width: 18px;
  height: 18px;
}
.cb-search-input--large .cb-search-input__icon svg,
.cb-search-input--large .cb-search-input__clear svg {
  width: 16px;
  height: 16px;
}

.cb-search-input--full-width {
  width: 100%;
}

.cb-search-input--rounded {
  border-radius: 16px;
}

.cb-search-input--borderless {
  border: none;
  background-color: var(--cb-input-background, var(--vscode-sideBar-background, #252526));
}
.cb-search-input--borderless:hover {
  background-color: var(--cb-bg-hover, var(--vscode-list-hoverBackground, rgba(255, 255, 255, 0.1)));
}
.cb-search-input--borderless:focus-within {
  background-color: var(--cb-input-background, var(--vscode-input-background, #3c3c3c));
}

:root.theme-switching .cb-search-input,
:root.theme-switching .cb-search-input__icon,
:root.theme-switching .cb-search-input__clear,
body.theme-switching .cb-search-input,
body.theme-switching .cb-search-input__icon,
body.theme-switching .cb-search-input__clear {
  transition: none;
}
:root.theme-switching .cb-search-input,
body.theme-switching .cb-search-input {
  border-color: transparent;
  box-shadow: none;
}
:root.theme-switching .cb-search-input__clear:focus,
body.theme-switching .cb-search-input__clear:focus {
  outline-color: transparent;
}.cb-sidebar-nav {
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--cb-sidebar-foreground, var(--vscode-sideBar-foreground));
  font-family: var(--cb-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
}
.cb-sidebar-nav__header-title {
  font-size: 13px;
  font-weight: 600;
  color: color-mix(in srgb, var(--cb-text-primary) 30%, transparent);
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.cb-sidebar-nav__header-subtitle {
  font-size: 11px;
  color: var(--cb-sidebar-subtitle-foreground, var(--vscode-descriptionForeground));
  margin: 4px 0 0 0;
  opacity: 0.8;
}
.cb-sidebar-nav__content {
  flex: 1;
  overflow-y: auto;
  padding: 8px 0 16px 0;
}
.cb-sidebar-nav__section {
  margin-bottom: 16px;
}
.cb-sidebar-nav__section:last-child {
  margin-bottom: 0;
}
.cb-sidebar-nav__section-title {
  padding: 8px 20px 4px;
  font-size: 11px;
  font-weight: 600;
  color: var(--cb-sidebar-section-foreground, var(--vscode-sideBarSectionHeader-foreground));
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0;
}
.cb-sidebar-nav__item {
  display: flex;
  align-items: center;
  padding: 8px 20px;
  cursor: pointer;
  transition: all 0.2s ease;
  border: none;
  background: none;
  width: 100%;
  text-align: left;
  position: relative;
  text-decoration: none;
  color: inherit;
}
.cb-sidebar-nav__item:hover {
  background: var(--cb-sidebar-item-hover-background, var(--vscode-list-hoverBackground));
}
.cb-sidebar-nav__item:focus-visible {
  outline: 1px solid var(--cb-focus-border, var(--vscode-focusBorder));
  outline-offset: -1px;
}
.cb-sidebar-nav__item--selected {
  background: var(--cb-vscode-list-inactiveSelectionBackground);
}
.cb-sidebar-nav__item--disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.cb-sidebar-nav__item-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  margin-right: 8px;
  flex-shrink: 0;
  color: color-mix(in srgb, var(--cb-text-primary) 60%, transparent);
}
.cb-sidebar-nav__item-icon svg {
  width: 100%;
  height: 100%;
}
.cb-sidebar-nav__item-icon .icon-fontstyle {
  font-size: 14px;
  line-height: 1;
}
.cb-sidebar-nav__item-icon .icon-fontstyle::before {
  font-size: 23px;
}
.cb-sidebar-nav__item-content {
  flex: 1;
  min-width: 0;
}
.cb-sidebar-nav__item-header {
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: space-between;
}
.cb-sidebar-nav__item-title {
  font-size: 13px;
  font-weight: 400;
  line-height: 1.3;
  margin: 0;
  color: inherit;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-sidebar-nav__item-right-content {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  font-size: 11px;
  gap: 6px;
}
.cb-sidebar-nav__item-right-content .stat-additions {
  color: var(--vscode-gitDecoration-addedResourceForeground, #89d185);
}
.cb-sidebar-nav__item-right-content .stat-deletions {
  color: var(--vscode-gitDecoration-deletedResourceForeground, #f48771);
}
.cb-sidebar-nav__item-subtitle {
  font-size: 11px;
  color: var(--cb-sidebar-item-subtitle-foreground, var(--vscode-descriptionForeground));
  margin: 2px 0 0 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  opacity: 0.8;
}
.cb-sidebar-nav__item-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  margin-left: 8px;
  font-size: 10px;
  font-weight: 600;
  border-radius: 8px;
  background: var(--cb-sidebar-badge-background, var(--vscode-badge-background));
  color: var(--cb-sidebar-badge-foreground, var(--vscode-badge-foreground));
  flex-shrink: 0;
}
.cb-sidebar-nav__item-action {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-left: 8px;
  border-radius: 3px;
  background: none;
  border: none;
  cursor: pointer;
  opacity: 0;
  transition: all 0.2s ease;
  color: var(--cb-sidebar-item-action-foreground, var(--vscode-icon-foreground));
}
.cb-sidebar-nav__item-action:hover {
  background: var(--cb-sidebar-item-action-hover-background, var(--vscode-toolbar-hoverBackground));
}
.cb-sidebar-nav__item-action svg {
  width: 14px;
  height: 14px;
  fill: currentColor;
}
.cb-sidebar-nav__item:hover .cb-sidebar-nav__item-action {
  opacity: 1;
}
.cb-sidebar-nav__empty {
  padding: 12px 16px;
  text-align: center;
  color: var(--cb-sidebar-empty-foreground, var(--vscode-descriptionForeground));
}
.cb-sidebar-nav__empty-icon {
  width: 32px;
  height: 32px;
  margin: 0 auto 8px;
  opacity: 0.3;
}
.cb-sidebar-nav__empty-icon svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}
.cb-sidebar-nav__empty-title {
  font-size: 12px;
  font-weight: 400;
  margin: 0;
  opacity: 0.7;
}
.cb-sidebar-nav__empty-description {
  font-size: 11px;
  opacity: 0.6;
  margin: 4px 0 0 0;
  line-height: 1.4;
}
.cb-sidebar-nav__show-more-button {
  margin: 4px 12px 0;
  padding: 4px 0;
  border: none;
  background: transparent;
  color: var(--cb-text-secondary);
  font-size: 12px;
  line-height: 1.4;
  cursor: pointer;
  text-align: left;
}
.cb-sidebar-nav__show-more-button:hover {
  color: var(--cb-text-primary);
}
.cb-sidebar-nav__show-more-button:focus-visible {
  outline: 1px solid var(--cb-focus-border, var(--cb-border));
  outline-offset: 2px;
  border-radius: 2px;
}
.cb-sidebar-nav__footer {
  padding: 12px 20px;
  border-top: 1px solid var(--cb-sidebar-border, var(--vscode-sideBar-border, transparent));
  background: var(--cb-sidebar-footer-background, transparent);
}
.cb-sidebar-nav--compact .cb-sidebar-nav__item {
  padding: 6px 10px;
  border-radius: 4px;
}
.cb-sidebar-nav--compact .cb-sidebar-nav__item-title {
  font-size: 12px;
  color: var(--cb-text-primary);
}
.cb-sidebar-nav--compact .cb-sidebar-nav__item-subtitle {
  font-size: 10px;
  color: var(--cb-text-desc);
}
.cb-sidebar-nav--compact .cb-sidebar-nav__header-title {
  font-size: 12px;
}
.cb-sidebar-nav--compact .cb-sidebar-nav__section-title {
  padding: 6px 16px 2px;
  font-size: 10px;
}
.cb-sidebar-nav--spacious .cb-sidebar-nav__item {
  padding: 12px 24px;
  border-radius: 4px;
}
.cb-sidebar-nav--spacious .cb-sidebar-nav__item-title {
  font-size: 14px;
}
.cb-sidebar-nav--spacious .cb-sidebar-nav__item-subtitle {
  font-size: 12px;
}
.cb-sidebar-nav--spacious .cb-sidebar-nav__header-title {
  font-size: 14px;
}
.cb-sidebar-nav--spacious .cb-sidebar-nav__section-title {
  padding: 10px 24px 6px;
  font-size: 12px;
}

.cb-sidebar-nav__content {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.cb-sidebar-nav__content::-webkit-scrollbar {
  width: 8px;
}
.cb-sidebar-nav__content::-webkit-scrollbar-track {
  background: transparent;
}
.cb-sidebar-nav__content::-webkit-scrollbar-thumb {
  background: var(--cb-scrollbar-thumb, var(--vscode-scrollbarSlider-background));
  border-radius: 4px;
}
.cb-sidebar-nav__content::-webkit-scrollbar-thumb:hover {
  background: var(--cb-scrollbar-thumb-hover, var(--vscode-scrollbarSlider-hoverBackground));
}._collapsibleSection_nrlw0_1 {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 8px;
}
._collapsibleSection_nrlw0_1:last-child {
  margin-bottom: 0;
}

._header_nrlw0_11 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 12px 4px 0;
  user-select: none;
  transition: background-color 0.15s ease;
  background: var(--cb-sidebar-bg);
}
._header_nrlw0_11._headerClickable_nrlw0_20 {
  cursor: pointer;
}
._header_nrlw0_11._headerSticky_nrlw0_23 {
  position: sticky;
  top: 0;
  z-index: 1;
}
._header_nrlw0_11:hover ._customButton_nrlw0_28 {
  opacity: 1;
  visibility: visible;
}
._header_nrlw0_11:hover ._addButton_nrlw0_32 {
  opacity: 1;
  visibility: visible;
}
._header_nrlw0_11:hover ._chevron_nrlw0_36 {
  opacity: 1;
  visibility: visible;
}

._headerTopPadding_nrlw0_41 {
  padding-top: 6px;
}

._titleWithIcon_nrlw0_45 {
  padding: 0 10px;
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

._titleIcon_nrlw0_55 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-right: 4px;
  color: var(--cb-text-secondary, #858699);
}
._titleIcon_nrlw0_55 svg {
  width: 16px;
  height: 16px;
}

._title_nrlw0_45 {
  min-width: 0;
  font-size: 14px;
  font-weight: 400;
  color: var(--cb-text-primary, #d2d3e0);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

._titleInput_nrlw0_80 {
  flex: 1;
  min-width: 0;
  font-size: 13px;
  font-weight: 400;
  line-height: 18px;
  color: var(--cb-text-primary, #d2d3e0);
  background: var(--cb-input-background, #2a2b3d);
  border: 1px solid var(--cb-border-color, #3e3f5b);
  border-radius: 4px;
  padding: 0 4px;
  outline: none;
}
._titleInput_nrlw0_80:focus {
  border-color: var(--cb-primary-color, #6c4dff);
}

._chevron_nrlw0_36 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  transition: transform 0.2s ease, opacity 0.15s ease;
  color: var(--cb-text-secondary, #858699);
  opacity: 0;
  visibility: hidden;
}
._chevron_nrlw0_36 svg {
  width: 12px;
  height: 12px;
}
._chevron_nrlw0_36._chevronExpanded_nrlw0_113 {
  transform: rotate(0deg);
}
._chevron_nrlw0_36:not(._chevronExpanded_nrlw0_113) {
  transform: rotate(-90deg);
}

._headerRight_nrlw0_120 {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}

._customButton_nrlw0_28 {
  display: flex;
  align-items: center;
  gap: 4px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s ease, visibility 0.15s ease;
  flex-shrink: 0;
}

._addButton_nrlw0_32 {
  flex-shrink: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.15s ease, visibility 0.15s ease;
}
._addButton_nrlw0_32:hover {
  opacity: 1;
}

._content_nrlw0_147 {
  display: flex;
  flex-direction: column;
  width: 100%;
}@keyframes _skeletonShimmer_1ovho_1 {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}
._skeletonList_1ovho_9 {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

._skeletonSection_1ovho_15 {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-bottom: 8px;
}
._skeletonSection_1ovho_15:last-child {
  margin-bottom: 0;
}

._skeletonHeader_1ovho_25 {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 0;
}

._skeletonTitle_1ovho_32 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 80px;
  height: 14px;
}

._skeletonChevron_1ovho_41 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 12px;
  height: 12px;
  border-radius: 2px;
}

._skeletonContent_1ovho_51 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._skeletonCard_1ovho_57 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 8px;
  border-radius: 6px;
}

._skeletonCardHeader_1ovho_65 {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 20px;
}

._skeletonIcon_1ovho_72 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
}

._skeletonCardTitle_1ovho_82 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  flex: 1;
  height: 14px;
  max-width: 70%;
}

._skeletonTime_1ovho_92 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 24px;
  height: 12px;
  flex-shrink: 0;
  margin-left: auto;
}

._skeletonStatus_1ovho_103 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 0%, var(--cb-skeleton-highlight, var(--cb-vscode-list-hoverBackground, rgba(255, 255, 255, 0.08))) 50%, var(--cb-skeleton-base, var(--cb-vscode-input-background, #3c3c3c)) 100%);
  background-size: 468px 100%;
  animation: _skeletonShimmer_1ovho_1 1.5s ease-in-out infinite;
  border-radius: 4px;
  width: 60px;
  height: 12px;
  margin-left: 24px;
}.cb-switch {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
}
.cb-switch--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}
.cb-switch--checked .cb-switch__track {
  background: var(--cb-switch-active-bg, #00b96b);
}

.cb-switch__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.cb-switch__track {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--cb-switch-bg, #3a3a3a);
  border-radius: 999px;
  transition: background-color 0.2s ease;
}

.cb-switch__thumb {
  position: absolute;
  border-radius: 50%;
  transition: transform 0.2s ease, background-color 0.2s ease;
  z-index: 1;
  background: var(--cb-panel-bg-primary);
}

.cb-switch__icon {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--cb-switch-icon-dark-active-color, var(--cb-text-primary, #d2d3e0));
  transition: color 0.2s ease;
}
.cb-switch__icon--active {
  color: var(--cb-switch-icon-light-active-color, var(--cb-text-primary, #d2d3e0));
}

.cb-switch--small .cb-switch__track {
  width: 40px;
  height: 20px;
  padding: 0 4px;
}
.cb-switch--small .cb-switch__thumb {
  width: 16px;
  height: 16px;
  top: 2px;
  left: 2px;
}
.cb-switch--small.cb-switch--checked .cb-switch__thumb {
  transform: translateX(20px);
}
.cb-switch--small .cb-switch__icon {
  width: 14px;
  height: 14px;
}

.cb-switch--medium .cb-switch__track {
  width: 56px;
  height: 28px;
  padding: 0 6px;
}
.cb-switch--medium .cb-switch__thumb {
  width: 22px;
  height: 22px;
  top: 3px;
  left: 3px;
}
.cb-switch--medium.cb-switch--checked .cb-switch__thumb {
  transform: translateX(28px);
}
.cb-switch--medium .cb-switch__icon {
  width: 16px;
  height: 16px;
}

.cb-switch--large .cb-switch__track {
  width: 72px;
  height: 36px;
  padding: 0 8px;
}
.cb-switch--large .cb-switch__thumb {
  width: 32px;
  height: 32px;
  top: 2px;
  left: 2px;
}
.cb-switch--large.cb-switch--checked .cb-switch__thumb {
  transform: translateX(36px);
}
.cb-switch--large .cb-switch__icon {
  width: 24px;
  height: 24px;
}

.light .cb-switch__track,
.cb-light .cb-switch__track {
  background: var(--cb-switch-bg, #ebebeb);
}
.light .cb-switch--checked .cb-switch__track,
.cb-light .cb-switch--checked .cb-switch__track {
  background: var(--cb-switch-active-bg, #00b96b);
}
.light .cb-switch__thumb,
.cb-light .cb-switch__thumb {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.light .cb-switch__icon,
.cb-light .cb-switch__icon {
  color: var(--cb-switch-icon-dark-active-color, rgba(0, 0, 0, 0.35));
}
.light .cb-switch__icon--active,
.cb-light .cb-switch__icon--active {
  color: var(--cb-switch-icon-light-active-color, var(--cb-text-primary, #333333));
}.cb-checkbox {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  user-select: none;
}
.cb-checkbox--disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.cb-checkbox__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}

.cb-checkbox__box {
  position: relative;
  border-radius: 4px;
  border: 1.5px solid var(--cb-input-border-color, var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248)));
  background: transparent;
  flex-shrink: 0;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.cb-checkbox__box::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 46%;
  border: solid var(--cb-vscode-button-background, var(--vscode-button-background, #4a9eff));
  border-width: 0 2px 2px 0;
  opacity: 0;
  transition: opacity 0.15s ease;
}

.cb-checkbox--medium .cb-checkbox__box {
  width: 16px;
  height: 16px;
}
.cb-checkbox--medium .cb-checkbox__box::after {
  width: 3px;
  height: 7px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.cb-checkbox--small .cb-checkbox__box {
  width: 14px;
  height: 14px;
}
.cb-checkbox--small .cb-checkbox__box::after {
  width: 2px;
  height: 6px;
  transform: translate(-50%, -50%) rotate(45deg);
}

.cb-checkbox--checked .cb-checkbox__box {
  border-color: var(--cb-vscode-button-background, var(--vscode-button-background, #4a9eff));
}
.cb-checkbox--checked .cb-checkbox__box::after {
  opacity: 1;
}

.cb-checkbox__label {
  font-size: 12px;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}
/**
 * ErrorBanner 组件样式
 * 使用 CSS Module 和 --cb- 前缀的 CSS 变量
 */
._errorBanner_sq6de_6 {
  display: flex;
  flex-direction: column;
  width: calc(100% - 8px);
  margin: 0 4px;
  margin-bottom: -2px;
  padding: 10px 12px;
  border-radius: var(--cb-banner-border-radius, 6px 6px 0 0);
  position: relative;
  border: 1px solid;
  border-bottom: none;
  overflow: visible;
  animation: _slideInDown_sq6de_1 0.3s ease-out;
  z-index: 15;
  --cb-error-banner-text-secondary: color-mix(in srgb, var(--cb-text-primary, #d2d3e0) 70%, transparent);
  --cb-error-banner-details-color: #6B7280;
}

._variantWarning_sq6de_24 {
  --cb-error-banner-border-color: var(--cb-warning, #ee9d28);
  --cb-error-banner-bg: rgba(254, 157, 46, 0.20);
  --cb-error-banner-accent: var(--cb-warning, #ee9d28);
  --cb-error-banner-accent-light: #ffa500;
  --cb-error-banner-accent-dark: rgba(238, 157, 40, 0.1);
  --cb-error-banner-retry-bg: rgb(254, 157, 46);
  border-color: var(--cb-error-banner-border-color);
  background-color: var(--cb-error-banner-bg);
}

._variantSuccess_sq6de_35 {
  --cb-error-banner-border-color: var(--cb-success-color, #28B894);
  --cb-error-banner-bg: rgba(40, 184, 148, 0.20);
  --cb-error-banner-accent: var(--cb-success-color, #28B894);
  --cb-error-banner-accent-light: #40C8AE;
  --cb-error-banner-accent-dark: rgba(40, 184, 148, 0.1);
  --cb-error-banner-retry-bg: rgb(40, 184, 148);
  border-color: var(--cb-error-banner-border-color);
  background-color: var(--cb-error-banner-bg);
}

._variantError_sq6de_46 {
  --cb-error-banner-border-color: var(--cb-danger-color, #c74e39);
  --cb-error-banner-bg: rgba(239, 68, 68, 0.20);
  --cb-error-banner-accent: var(--cb-danger-color, #c74e39);
  --cb-error-banner-accent-light: #d85f49;
  --cb-error-banner-accent-dark: rgba(199, 78, 57, 0.1);
  --cb-error-banner-retry-bg: rgb(239, 68, 68);
  border-color: var(--cb-error-banner-border-color);
  background-color: var(--cb-error-banner-bg);
}

._closeBtn_sq6de_57 {
  position: absolute;
  top: 10px;
  right: 12px;
  z-index: 5;
}

._contentWrapper_sq6de_64 {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding-right: 20px;
}

._icon_sq6de_74 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1px;
  color: var(--cb-error-banner-accent);
}
._icon_sq6de_74 svg {
  width: 16px;
  height: 16px;
}

._catDecoration_sq6de_87 {
  position: absolute;
  width: 50px;
  height: 50px;
  bottom: -40px;
  right: 8px;
  pointer-events: none;
  z-index: 10;
}
._catDecoration_sq6de_87 img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
}

._content_sq6de_64 {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

._title_sq6de_111 {
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  color: var(--cb-error-banner-text-color);
  word-break: break-word;
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: break-word;
}

._raw_sq6de_124 {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

._rawHeader_sq6de_130 {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
  position: relative;
  flex-direction: column;
}

._rawMeasure_sq6de_139 {
  position: absolute;
  left: -99999px;
  top: 0;
  visibility: hidden;
  pointer-events: none;
}

._rawMessageMeasure_sq6de_147 {
  display: block;
  overflow: visible;
  max-height: none;
}

._rawMessage_sq6de_147 {
  flex: 1 1 auto;
  min-width: 0;
  font-family: Inter, sans-serif;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: 18px;
  color: var(--cb-error-banner-text-color);
  word-break: break-word;
  white-space: pre-wrap;
}

._inlineLink_sq6de_166 {
  display: inline;
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  font-family: inherit;
  color: var(--cb-error-banner-accent-light, #ffa500);
  text-decoration: underline;
  text-underline-offset: 2px;
  word-break: break-all;
}
._inlineLink_sq6de_166:hover {
  color: var(--cb-error-banner-text-color);
}

._rawMessageCollapsed_sq6de_185 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

._rawActions_sq6de_192 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  white-space: nowrap;
}

._rawToggle_sq6de_200,
._rawAction_sq6de_192 {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-error-banner-text-secondary);
}
._rawToggle_sq6de_200:hover,
._rawAction_sq6de_192:hover {
  color: var(--cb-error-banner-text-color);
}

._rawAction_sq6de_192 {
  text-decoration: underline;
  text-underline-offset: 2px;
}

._rawToggle_sq6de_200 {
  text-decoration: none;
}

._details_sq6de_224 {
  margin-top: 0;
  padding: 4px 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

._detailsRow_sq6de_232 {
  display: flex;
  align-items: flex-start;
  gap: 0 4px;
  font-size: 10px;
  line-height: 14px;
  font-family: inherit;
}

._detailsLabel_sq6de_241 {
  flex-shrink: 0;
  min-width: auto;
  color: var(--cb-error-banner-details-color);
  font-weight: 500;
}

._detailsValue_sq6de_248 {
  flex: 1;
  color: var(--cb-error-banner-details-color);
  word-break: break-word;
  font-weight: 400;
  font-family: inherit;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}

._detailsValueGroup_sq6de_261 {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-left: 2px;
}

._errorCodeValue_sq6de_268 {
  flex: 0 0 auto;
  display: inline;
  max-height: none;
  overflow: visible;
  white-space: nowrap;
  -webkit-line-clamp: unset;
  text-overflow: clip;
}

._networkAlertIconBtn_sq6de_278 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  border: none;
  padding: 0;
  margin-left: 2px;
  background: transparent;
  color: var(--cb-error-banner-accent-light, #ffa500);
  cursor: pointer;
  flex-shrink: 0;
}
._networkAlertIconBtn_sq6de_278:hover {
  color: var(--cb-error-banner-text-color);
}
._networkAlertIconBtn_sq6de_278 svg {
  width: 14px;
  height: 14px;
}

._networkCheckBtn_sq6de_300 {
  border: none;
  padding: 0;
  background: transparent;
  color: var(--cb-error-banner-accent-light, #ffa500);
  cursor: pointer;
  font-size: 10px;
  line-height: 14px;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}
._networkCheckBtn_sq6de_300:hover {
  color: var(--cb-error-banner-text-color);
}

._actions_sq6de_316 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  width: 100%;
}

._copyBtn_sq6de_324 {
  display: flex;
  height: 23px;
  align-items: center;
  gap: 9px;
  padding: 4px 8px;
  border-radius: 4px;
  border: 1px solid var(--cb-error-banner-accent);
  background: transparent;
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  cursor: pointer;
  transition: opacity 0.2s;
  color: var(--cb-error-banner-accent);
  white-space: nowrap;
  box-sizing: border-box;
  box-shadow: var(--cb-banner-button-shadow, 0 1px 1px 0 rgba(0, 0, 0, 0.15));
}
._copyBtn_sq6de_324:hover {
  border-color: var(--cb-error-banner-accent-light);
  background-color: var(--cb-error-banner-accent-dark);
  color: var(--cb-error-banner-accent-light);
}
._copyBtn_sq6de_324:active {
  transform: scale(0.98);
}

._copyBtnCopied_sq6de_354 {
  border-color: var(--cb-success-color, #28B894);
  color: var(--cb-success-color, #28B894);
}
._copyBtnCopied_sq6de_354:hover {
  border-color: #40C8AE;
  color: #40C8AE;
}

._retryBtn_sq6de_363 {
  display: flex;
  height: 23px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 4px 12px;
  border-radius: 4px;
  border: 1px solid var(--cb-error-banner-retry-bg);
  font-family: Inter, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-align: center;
  cursor: pointer;
  transition: opacity 0.2s;
  background-color: var(--cb-error-banner-retry-bg);
  color: var(--cb-error-banner-retry-text-color, #171717);
  white-space: nowrap;
  box-sizing: border-box;
  box-shadow: var(--cb-banner-button-shadow, 0 1px 1px 0 rgba(0, 0, 0, 0.15));
}
._retryBtn_sq6de_363:hover {
  filter: brightness(1.1);
}
._retryBtn_sq6de_363:active {
  transform: scale(0.98);
}

@keyframes _slideInDown_sq6de_1 {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 768px) {
  ._contentWrapper_sq6de_64 {
    flex-wrap: wrap;
  }
  ._catDecoration_sq6de_87 {
    width: 50px;
    height: 50px;
    bottom: -40px;
    right: 8px;
  }
}
@media print {
  ._errorBanner_sq6de_6 {
    display: none;
  }
}.cb-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cb-tabs__item {
  display: flex;
  align-items: center;
  gap: 6px;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
  color: var(--cb-text-secondary, #858699);
  font-family: inherit;
}
.cb-tabs__item:hover:not(.cb-tabs__item--disabled) {
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-tabs__item--disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.cb-tabs__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.cb-tabs__icon svg {
  width: 16px;
  height: 16px;
}

.cb-tabs__label {
  font-weight: 500;
}

.cb-tabs--small .cb-tabs__item {
  padding: 5px 8px;
  font-size: 12px;
}
.cb-tabs--small .cb-tabs__icon svg {
  width: 14px;
  height: 14px;
}

.cb-tabs--medium .cb-tabs__item {
  padding: 6px 12px;
  font-size: 13px;
}
.cb-tabs--medium .cb-tabs__icon svg {
  width: 16px;
  height: 16px;
}

.cb-tabs--large .cb-tabs__item {
  padding: 8px 16px;
  font-size: 14px;
}
.cb-tabs--large .cb-tabs__icon svg {
  width: 18px;
  height: 18px;
}

.cb-tabs--pills .cb-tabs__item {
  border-radius: 4px;
}
.cb-tabs--pills .cb-tabs__item:hover:not(.cb-tabs__item--disabled):not(.cb-tabs__item--active) {
  background: color-mix(in srgb, var(--cb-vscode-list-inactiveSelectionBackground, rgba(255, 255, 255, 0.1)) 60%, transparent);
}
.cb-tabs--pills .cb-tabs__item--active {
  background: var(--cb-vscode-list-inactiveSelectionBackground, rgba(255, 255, 255, 0.1));
  color: var(--cb-text-primary, #d2d3e0);
}

.cb-tabs--default .cb-tabs__item {
  border-radius: 4px;
}
.cb-tabs--default .cb-tabs__item:hover:not(.cb-tabs__item--disabled):not(.cb-tabs__item--active) {
  background: rgba(255, 255, 255, 0.05);
}
.cb-tabs--default .cb-tabs__item--active {
  color: var(--cb-text-primary, #d2d3e0);
}

.cb-tabs--underline {
  gap: 0;
  border-bottom: 1px solid var(--cb-panel-border-color, #3e3e42);
}
.cb-tabs--underline .cb-tabs__item {
  border-radius: 0;
  padding-bottom: 8px;
  margin-bottom: -1px;
  border-bottom: 2px solid transparent;
}
.cb-tabs--underline .cb-tabs__item:hover:not(.cb-tabs__item--disabled):not(.cb-tabs__item--active) {
  border-bottom-color: var(--cb-text-tertiary, #5e5e5e);
}
.cb-tabs--underline .cb-tabs__item--active {
  color: var(--cb-text-primary, #d2d3e0);
  border-bottom-color: var(--cb-vscode-button-background, #0e639c);
}.cb-context-menu {
  position: fixed;
  z-index: 10000;
  background: var(--cb-vscode-dropdown-background, var(--cb-popover-background, #212234));
  border: 1px solid var(--cb-vscode-menu-border, var(--cb-border, #4a5568));
  box-shadow: var(--cb-shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05));
  padding: 4px;
  min-width: 100px;
  max-width: 150px;
  font-size: 13px;
  line-height: 1.4;
  user-select: none;
  overflow: hidden;
  pointer-events: auto;
  border-radius: 8px;
}
.cb-context-menu .cb-context-menu-item {
  display: flex;
  align-items: center;
  padding: 3px 12px;
  cursor: pointer;
  color: var(--cb-vscode-menu-foreground, var(--cb-text-primary, #d2d3e0));
  transition: background-color 0.1s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-radius: 4px;
  border: 1px solid transparent;
}
.cb-context-menu .cb-context-menu-item:hover:not(.disabled):not(.separator) {
  background-color: var(--cb-popover-active-background, var(--cb-hover-bg, rgba(255, 255, 255, 0.05)));
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-context-menu .cb-context-menu-item:hover:not(.disabled):not(.separator) .cb-context-menu-item-shortcut {
  color: var(--cb-text-primary, #d2d3e0);
}
.cb-context-menu .cb-context-menu-item.disabled {
  color: var(--cb-text-tertiary, #a0a0a0);
  cursor: not-allowed;
  opacity: 0.6;
}
.cb-context-menu .cb-context-menu-item.separator {
  height: 1px;
  background-color: var(--cb-vscode-menu-separatorBackground, var(--cb-border, #4a5568));
  margin: 4px 0;
  padding: 0;
  cursor: default;
}
.cb-context-menu .cb-context-menu-item.separator:hover {
  background-color: var(--cb-vscode-menu-separatorBackground, var(--cb-border, #4a5568));
}
.cb-context-menu .cb-context-menu-item .cb-context-menu-item-label {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cb-context-menu .cb-context-menu-item .cb-context-menu-item-icon {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  color: currentColor;
}
.cb-context-menu .cb-context-menu-item .cb-context-menu-item-shortcut {
  margin-left: 8px;
  color: var(--cb-text-secondary, #858699);
  font-size: 11px;
  opacity: 0.8;
}

.vscode-high-contrast .cb-context-menu {
  border: 2px solid var(--cb-vscode-widget-border, var(--cb-border-bright, #5a6578));
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.vscode-high-contrast .cb-context-menu .cb-context-menu-item:hover:not(.disabled):not(.separator) {
  background-color: var(--cb-popover-active-background, rgba(255, 255, 255, 0.1));
  border: 1px solid var(--cb-focus-outline-color, #007fd4);
}

body.vscode-light .cb-context-menu {
  background: var(--cb-vscode-dropdown-background, #ffffff);
  border-color: var(--cb-vscode-menu-border, #e1e1e1);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
body.vscode-light .cb-context-menu .cb-context-menu-item {
  color: var(--cb-vscode-menu-foreground, #333333);
}
body.vscode-light .cb-context-menu .cb-context-menu-item:hover:not(.disabled):not(.separator) {
  background-color: var(--cb-dropdown-item-hover-bg-color, #e8e8e8);
  color: var(--cb-text-primary, #333333);
}
body.vscode-light .cb-context-menu .cb-context-menu-item.disabled {
  color: var(--cb-text-tertiary, #999999);
}
body.vscode-light .cb-context-menu .cb-context-menu-item.separator {
  background-color: var(--cb-vscode-menu-separatorBackground, #e1e1e1);
}

body.vscode-dark .cb-context-menu {
  background: var(--cb-vscode-dropdown-background, #3c3c3c);
  border-color: var(--cb-vscode-menu-border, #454545);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
body.vscode-dark .cb-context-menu .cb-context-menu-item {
  color: var(--cb-vscode-menu-foreground, #cccccc);
}
body.vscode-dark .cb-context-menu .cb-context-menu-item:hover:not(.disabled):not(.separator) {
  background-color: var(--cb-dropdown-item-hover-bg-color, #094771);
  color: var(--cb-text-primary, #ffffff);
}
body.vscode-dark .cb-context-menu .cb-context-menu-item.disabled {
  color: var(--cb-text-tertiary, #666666);
}
body.vscode-dark .cb-context-menu .cb-context-menu-item.separator {
  background-color: var(--cb-vscode-menu-separatorBackground, #454545);
}
/**
 * Plugins Main Component Styles
 * 插件市场主界面样式 - 按原型图设计
 */
.cb-plugins {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  padding: 0 16px;
}
.cb-plugins-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 16px 0 12px;
  gap: 16px;
}
.cb-plugins-header-left {
  flex: 1;
  min-width: 0;
}
.cb-plugins-header-right {
  flex-shrink: 0;
  padding-top: 2px;
}
.cb-plugins-mcp-btn {
  display: flex;
  align-items: center;
  gap: 6px;
}
.cb-plugins-mcp-btn svg {
  width: 14px;
  height: 14px;
}
.cb-plugins-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--vscode-foreground);
  margin: 0 0 4px 0;
}
.cb-plugins-subtitle {
  font-size: 13px;
  color: var(--vscode-descriptionForeground, #999);
  margin: 0;
  line-height: 1.4;
}
.cb-plugins-search {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}
.cb-plugins-search .cb-search-input {
  flex: 1;
}
.cb-plugins-filter-btn {
  display: flex;
  width: 36px;
  height: 36px;
  justify-content: center;
  align-items: center;
  border-radius: 4px;
  border: 1px solid var(--vscode-input-border, rgba(255, 255, 255, 0.1));
  background: var(--vscode-input-background);
  cursor: pointer;
  color: var(--vscode-foreground);
  transition: all 0.15s ease;
  flex-shrink: 0;
}
.cb-plugins-filter-btn:hover {
  border-color: var(--vscode-focusBorder);
}
.cb-plugins-filter-btn--active {
  border-color: var(--vscode-focusBorder);
  background: var(--vscode-list-activeSelectionBackground);
}
.cb-plugins-filter-btn svg {
  width: 16px;
  height: 16px;
}
.cb-plugins-category {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 16px;
}
.cb-plugins-category-item {
  display: flex;
  padding: 4px 8px;
  align-items: center;
  gap: 4px;
  border-radius: 4px;
  border: 1px solid var(--vscode-widget-border, #3c3c3c);
  color: var(--vscode-foreground);
  font-size: 12px;
  background: var(--vscode-badge-background);
}
.cb-plugins-category-item-icon {
  cursor: pointer;
  opacity: 0.7;
  width: 12px;
  height: 12px;
}
.cb-plugins-category-item-icon:hover {
  opacity: 1;
}
.cb-plugins-marketplace-filter {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 16px;
}
.cb-plugins-marketplace-filter-item {
  display: flex;
  padding: 4px 8px;
  align-items: center;
  gap: 6px;
  border-radius: 4px;
  border: 1px solid var(--vscode-widget-border, #3c3c3c);
  color: var(--vscode-foreground);
  font-size: 12px;
  background: var(--vscode-badge-background);
  max-width: 200px;
}
.cb-plugins-marketplace-filter-item span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-plugins-marketplace-filter-item-icon {
  cursor: pointer;
  opacity: 0.7;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}
.cb-plugins-marketplace-filter-item-icon:hover {
  opacity: 1;
}
.cb-plugins-marketplace-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.cb-plugins-marketplace-tab {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 8px 6px 12px;
  border-radius: 16px;
  background: transparent;
  border: 1px solid var(--vscode-widget-border, rgba(0, 0, 0, 0.15));
  cursor: pointer;
  transition: all 0.15s ease;
  font-size: 13px;
  color: var(--vscode-descriptionForeground, #666);
}
.cb-plugins-marketplace-tab:hover {
  background: var(--vscode-list-hoverBackground);
  color: var(--vscode-foreground);
}
.cb-plugins-marketplace-tab--active {
  background: var(--vscode-list-activeSelectionBackground, rgba(0, 120, 212, 0.15));
  border-color: var(--vscode-focusBorder, #0078d4);
  color: var(--vscode-list-activeSelectionForeground, var(--vscode-foreground));
  font-weight: 500;
}
.cb-plugins-marketplace-tab-name {
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-plugins-marketplace-tab-menu-container {
  position: relative;
}
.cb-plugins-marketplace-tab-menu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: var(--vscode-foreground);
  opacity: 0.6;
  border-radius: 4px;
  padding: 0;
}
.cb-plugins-marketplace-tab-menu-btn:hover {
  opacity: 1;
  background: var(--vscode-toolbar-hoverBackground);
}
.cb-plugins-marketplace-tab-menu-btn svg {
  width: 14px;
  height: 14px;
}
.cb-plugins-marketplace-tab-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  min-width: 120px;
  background: var(--vscode-menu-background, #252526);
  border: 1px solid var(--vscode-menu-border, rgba(255, 255, 255, 0.1));
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  padding: 4px;
}
.cb-plugins-marketplace-tab-dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-size: 13px;
  color: var(--vscode-menu-foreground);
  cursor: pointer;
  border-radius: 4px;
  transition: background 0.15s ease;
}
.cb-plugins-marketplace-tab-dropdown-item:hover:not(.disabled) {
  background: var(--vscode-list-hoverBackground);
}
.cb-plugins-marketplace-tab-dropdown-item.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-plugins-marketplace-tab-dropdown-item--danger {
  color: var(--vscode-errorForeground, #f14c4c);
}
.cb-plugins-marketplace-tab-dropdown-item--danger:hover:not(.disabled) {
  background: rgba(241, 76, 76, 0.1);
}
.cb-plugins-marketplace-tab-dropdown-item svg {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.cb-plugins-marketplace-add-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  border: 1px dashed var(--vscode-widget-border, rgba(255, 255, 255, 0.2));
  background: transparent;
  cursor: pointer;
  color: var(--vscode-foreground);
  opacity: 0.6;
  transition: all 0.15s ease;
}
.cb-plugins-marketplace-add-btn:hover {
  opacity: 1;
  border-color: var(--vscode-focusBorder);
  background: var(--vscode-list-hoverBackground);
}
.cb-plugins-marketplace-add-btn svg {
  width: 16px;
  height: 16px;
}
.cb-plugins-loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--vscode-editor-background);
  opacity: 0.95;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  backdrop-filter: blur(2px);
}
.cb-plugins-loading-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 24px 32px;
  background-color: var(--vscode-dropdown-background);
  border: 1px solid var(--vscode-dropdown-border, rgba(255, 255, 255, 0.1));
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
.cb-plugins-loading-text {
  font-size: 13px;
  color: var(--vscode-foreground);
  font-weight: 500;
}
.cb-plugins-content-wrapper {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  min-height: 0;
  position: relative;
  overflow-anchor: none;
}
.cb-plugins-spinning {
  animation: cb-plugins-spin 1s linear infinite;
}

.cb-plugins-spinner {
  animation: cb-plugins-spin 1s linear infinite;
}
.cb-plugins-spinner--1 {
  width: 12px;
  height: 12px;
}
.cb-plugins-spinner--2 {
  width: 16px;
  height: 16px;
}
.cb-plugins-spinner--3 {
  width: 24px;
  height: 24px;
}

@keyframes cb-plugins-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * Add Marketplace Modal Styles
 */
.cb-add-marketplace-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10000;
}

.cb-add-marketplace-modal {
  background-color: var(--vscode-editorWidget-background, #252526);
  border: 1px solid var(--vscode-editorWidget-border, #454545);
  border-radius: 8px;
  width: 90%;
  max-width: 480px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
}
.cb-add-marketplace-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid var(--vscode-panel-border, rgba(255, 255, 255, 0.08));
}
.cb-add-marketplace-modal-header h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--vscode-foreground);
}
.cb-add-marketplace-modal-close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: var(--vscode-foreground);
  opacity: 0.6;
  border-radius: 4px;
  padding: 0;
}
.cb-add-marketplace-modal-close:hover {
  opacity: 1;
  background: var(--vscode-toolbar-hoverBackground);
}
.cb-add-marketplace-modal-close svg {
  width: 16px;
  height: 16px;
}
.cb-add-marketplace-modal-content {
  padding: 20px;
  min-height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.cb-add-marketplace-modal-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
  padding: 40px 20px;
}
.cb-add-marketplace-modal-spinner {
  width: 40px;
  height: 40px;
  border: 3px solid var(--vscode-input-border, rgba(255, 255, 255, 0.1));
  border-top-color: var(--vscode-focusBorder, #0e639c);
  border-radius: 50%;
  animation: cb-marketplace-spinner-spin 1s linear infinite;
}
.cb-add-marketplace-modal-loading-message {
  font-size: 13px;
  color: var(--vscode-foreground);
  text-align: center;
}
@keyframes cb-marketplace-spinner-spin {
  to {
    transform: rotate(360deg);
  }
}
.cb-add-marketplace-modal-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cb-add-marketplace-modal-field label {
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-foreground);
}
.cb-add-marketplace-modal-field input {
  width: 100%;
  padding: 8px 12px;
  font-size: 13px;
  color: var(--vscode-input-foreground);
  background-color: var(--vscode-input-background);
  border: 1px solid var(--vscode-input-border, rgba(255, 255, 255, 0.1));
  border-radius: 4px;
  outline: none;
  box-sizing: border-box;
}
.cb-add-marketplace-modal-field input:focus {
  border-color: var(--vscode-focusBorder);
}
.cb-add-marketplace-modal-field input:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cb-add-marketplace-modal-field input::placeholder {
  color: var(--vscode-input-placeholderForeground, #888);
}
.cb-add-marketplace-modal-tip {
  font-size: 12px;
  color: var(--vscode-descriptionForeground, #888);
  line-height: 1.4;
}
.cb-add-marketplace-modal-error {
  font-size: 12px;
  color: var(--vscode-errorForeground, #f14c4c);
  background-color: var(--vscode-inputValidation-errorBackground, rgba(241, 76, 76, 0.1));
  border: 1px solid var(--vscode-inputValidation-errorBorder, #f14c4c);
  border-radius: 4px;
  padding: 8px 12px;
  margin-top: 12px;
}
.cb-add-marketplace-modal-error-brief {
  line-height: 1.5;
  word-break: break-word;
}
.cb-add-marketplace-modal-error-toggle {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 8px;
  cursor: pointer;
  color: var(--vscode-textLink-foreground, #3794ff);
  user-select: none;
  font-size: 11px;
}
.cb-add-marketplace-modal-error-toggle:hover {
  text-decoration: underline;
}
.cb-add-marketplace-modal-error-toggle-icon {
  display: inline-block;
  font-size: 8px;
  transition: transform 0.2s ease;
}
.cb-add-marketplace-modal-error-toggle-icon.expanded {
  transform: rotate(90deg);
}
.cb-add-marketplace-modal-error-details {
  margin-top: 8px;
  padding: 8px;
  background-color: var(--vscode-textCodeBlock-background);
  border-radius: 3px;
  font-family: var(--vscode-editor-font-family, "Monaco", "Menlo", "Courier New", monospace);
  font-size: 11px;
  line-height: 1.6;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 150px;
  overflow-y: auto;
  overflow-x: auto;
  /* 自定义滚动条样式 */
}
.cb-add-marketplace-modal-error-details::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
.cb-add-marketplace-modal-error-details::-webkit-scrollbar-track {
  background: transparent;
}
.cb-add-marketplace-modal-error-details::-webkit-scrollbar-thumb {
  background-color: var(--vscode-scrollbarSlider-background);
  border-radius: 4px;
}
.cb-add-marketplace-modal-error-details::-webkit-scrollbar-thumb:hover {
  background-color: var(--vscode-scrollbarSlider-hoverBackground);
}
.cb-add-marketplace-modal-error-details::-webkit-scrollbar-thumb:active {
  background-color: var(--vscode-scrollbarSlider-activeBackground);
}
.cb-add-marketplace-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 16px 20px;
  border-top: 1px solid var(--vscode-panel-border, rgba(255, 255, 255, 0.08));
}
.cb-add-marketplace-modal-btn {
  padding: 8px 16px;
  font-size: 13px;
  font-weight: 500;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
  display: flex;
  align-items: center;
  gap: 6px;
}
.cb-add-marketplace-modal-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-add-marketplace-modal-btn-spinner {
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 2px solid transparent;
  border-top-color: currentColor;
  border-right-color: currentColor;
  border-radius: 50%;
  animation: cb-marketplace-spinner-spin 0.8s linear infinite;
}
.cb-add-marketplace-modal-btn--primary {
  color: var(--vscode-button-foreground, #fff);
  background-color: var(--vscode-button-background, #0e639c);
  border: none;
}
.cb-add-marketplace-modal-btn--primary:hover:not(:disabled) {
  background-color: var(--vscode-button-hoverBackground, #1177bb);
}
.cb-add-marketplace-modal-btn--secondary {
  color: var(--vscode-button-secondaryForeground, #ccc);
  background-color: var(--vscode-button-secondaryBackground, rgba(255, 255, 255, 0.08));
  border: none;
}
.cb-add-marketplace-modal-btn--secondary:hover:not(:disabled) {
  background-color: var(--vscode-button-secondaryHoverBackground, rgba(255, 255, 255, 0.12));
}/**
 * Plugin Detail Styles
 */
.cb-plugin-detail {
  padding: 16px 16px 20px;
  height: 100%;
  overflow-y: auto;
}
.cb-plugin-detail-spinner {
  animation: cb-plugin-detail-spin 1s linear infinite;
}
.cb-plugin-detail-spinner--1 {
  width: 14px;
  height: 14px;
}
.cb-plugin-detail-back {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 13px;
  color: var(--vscode-foreground);
  cursor: pointer;
  margin-left: -4px;
  margin-bottom: 16px;
}
.cb-plugin-detail-back:hover {
  opacity: 0.8;
}
.cb-plugin-detail-back svg {
  width: 16px;
  height: 16px;
}
.cb-plugin-detail-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.cb-plugin-detail-title {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  color: var(--vscode-foreground);
}
.cb-plugin-detail-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cb-plugin-detail-update-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-foreground);
  background-color: transparent;
  border: 1px solid var(--vscode-button-secondaryBackground, rgba(255, 255, 255, 0.1));
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.cb-plugin-detail-update-btn:hover:not(:disabled) {
  background-color: var(--vscode-button-secondaryHoverBackground, rgba(255, 255, 255, 0.08));
}
.cb-plugin-detail-update-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cb-plugin-detail-update-btn--loading {
  opacity: 0.8;
}
.cb-plugin-detail-install-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-button-foreground, #fff);
  background-color: var(--vscode-button-background, #0e639c);
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.cb-plugin-detail-install-btn:hover:not(:disabled) {
  background-color: var(--vscode-button-hoverBackground, #1177bb);
}
.cb-plugin-detail-install-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cb-plugin-detail-install-btn--loading {
  opacity: 0.8;
}
.cb-plugin-detail-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 40px;
  height: 22px;
  cursor: pointer;
}
.cb-plugin-detail-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}
.cb-plugin-detail-toggle-slider {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--vscode-input-background, #3c3c3c);
  border: 1px solid var(--vscode-input-border, rgba(0, 0, 0, 0.2));
  border-radius: 11px;
  transition: all 0.2s ease;
  box-sizing: border-box;
}
.cb-plugin-detail-toggle-slider::before {
  position: absolute;
  content: "";
  height: 14px;
  width: 14px;
  left: 3px;
  bottom: 3px;
  background-color: var(--vscode-foreground, #333);
  border-radius: 50%;
  transition: all 0.2s ease;
}
input:checked + .cb-plugin-detail-toggle-slider {
  background-color: var(--vscode-button-background, #0e639c);
  border-color: var(--vscode-button-background, #0e639c);
}
input:checked + .cb-plugin-detail-toggle-slider::before {
  transform: translateX(18px);
  background-color: #fff;
}
.cb-plugin-detail-more {
  position: relative;
}
.cb-plugin-detail-more-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  color: var(--vscode-foreground);
  opacity: 0.7;
  border-radius: 4px;
}
.cb-plugin-detail-more-btn:hover {
  opacity: 1;
  background: var(--vscode-toolbar-hoverBackground);
}
.cb-plugin-detail-more-btn svg {
  width: 16px;
  height: 16px;
}
.cb-plugin-detail-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 160px;
  margin-top: 4px;
  padding: 4px 0;
  background: var(--cb-dropdown-bg-color);
  border: 1px solid var(--cb-panel-border-color);
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  z-index: 1000;
  animation: cb-plugin-dropdown-in 0.15s ease;
}
.cb-plugin-detail-dropdown-item-wrapper {
  display: block;
}
.cb-plugin-detail-dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  font-size: 13px;
  color: var(--cb-text-primary);
  cursor: pointer;
  transition: background 0.15s ease;
  border-radius: 6px;
  margin: 0 4px;
}
.cb-plugin-detail-dropdown-item:hover {
  background: var(--cb-dropdown-item-hover-bg-color);
}
.cb-plugin-detail-dropdown-item--danger {
  color: var(--cb-danger-color);
}
.cb-plugin-detail-dropdown-item--danger:hover {
  color: var(--cb-danger-color);
}
.cb-plugin-detail-dropdown-item.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-plugin-detail-source {
  margin-bottom: 12px;
}
.cb-plugin-detail-source-label {
  font-size: 12px;
  color: var(--vscode-descriptionForeground, #888);
  display: block;
  margin-bottom: 2px;
}
.cb-plugin-detail-source-link {
  font-size: 13px;
  color: var(--vscode-textLink-foreground, #3794ff);
  cursor: pointer;
}
.cb-plugin-detail-source-link:hover {
  text-decoration: underline;
}
.cb-plugin-detail-description {
  font-size: 14px;
  line-height: 1.6;
  color: var(--vscode-foreground);
  margin: 0 0 24px 0;
}
.cb-plugin-detail-section {
  margin-bottom: 32px;
}
.cb-plugin-detail-section-title {
  margin: 0 0 8px 0;
  font-size: 16px;
  font-weight: 600;
  color: var(--vscode-foreground);
}
.cb-plugin-detail-section-desc {
  margin: 0 0 16px 0;
  font-size: 13px;
  line-height: 1.5;
  color: var(--vscode-descriptionForeground, #888);
}
.cb-plugin-detail-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 12px;
}
.cb-plugin-detail-card {
  padding: 16px;
  background-color: transparent;
  border: 1px solid var(--vscode-panel-border, rgba(255, 255, 255, 0.1));
  border-radius: 8px;
  transition: border-color 0.15s ease;
}
.cb-plugin-detail-card:hover {
  border-color: var(--vscode-focusBorder, #007fd4);
}
.cb-plugin-detail-card-title {
  font-size: 14px;
  font-weight: 500;
  color: var(--vscode-foreground);
  margin-bottom: 4px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
}
.cb-plugin-detail-card-subtitle {
  font-size: 12px;
  color: var(--vscode-descriptionForeground, #888);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-word;
}

@keyframes cb-plugin-detail-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes cb-plugin-dropdown-in {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/**
 * Plugins Card Styles
 * 插件卡片组件样式 - 按原型图设计
 */
.cb-plugins-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
@media (min-width: 768px) {
  .cb-plugins-card {
    grid-template-columns: repeat(2, 1fr);
  }
}
.cb-plugins-card-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  border: 1px solid var(--vscode-panel-border, rgba(255, 255, 255, 0.08));
  border-radius: 8px;
  background-color: var(--vscode-editor-background);
  transition: all 0.15s ease;
  cursor: pointer;
}
.cb-plugins-card-item:hover {
  border-color: var(--vscode-focusBorder, rgba(255, 255, 255, 0.2));
  background-color: var(--vscode-list-hoverBackground, rgba(255, 255, 255, 0.02));
}
.cb-plugins-card-item:hover .cb-plugins-card-install-btn {
  opacity: 1;
  visibility: visible;
}
.cb-plugins-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}
.cb-plugins-card-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  min-width: 0;
  flex: 1;
}
.cb-plugins-card-name {
  font-size: 14px;
  font-weight: 600;
  color: var(--vscode-foreground);
}
.cb-plugins-card-scope-label {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
  text-transform: lowercase;
}
.cb-plugins-card-scope-label--user {
  background-color: rgba(96, 165, 250, 0.15);
  color: rgb(96, 165, 250);
}
.cb-plugins-card-scope-label--project {
  background-color: rgba(168, 85, 247, 0.15);
  color: rgb(192, 132, 252);
}
.cb-plugins-card-scope-label--project-local {
  background-color: rgba(251, 146, 60, 0.15);
  color: rgb(251, 146, 60);
}
.cb-plugins-card-actions {
  position: relative;
  flex-shrink: 0;
}
.cb-plugins-card-manage-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-foreground);
  background: var(--vscode-button-secondaryBackground, rgba(255, 255, 255, 0.08));
  border: 1px solid var(--vscode-button-border, transparent);
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.cb-plugins-card-manage-btn:hover {
  background: var(--vscode-button-secondaryHoverBackground, rgba(255, 255, 255, 0.12));
}
.cb-plugins-card-install-container {
  position: relative;
}
.cb-plugins-card-install-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-button-foreground, #fff);
  background: var(--vscode-button-background, #0e639c);
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
  opacity: 0;
  visibility: hidden;
}
.cb-plugins-card-install-btn:hover:not(:disabled) {
  background: var(--vscode-button-hoverBackground, #1177bb);
}
.cb-plugins-card-install-btn:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
.cb-plugins-card-install-btn--installing {
  opacity: 0.6;
  visibility: visible;
}
.cb-plugins-card-dropdown {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 4px;
  min-width: 180px;
  background: var(--vscode-menu-background, #252526);
  border: 1px solid var(--vscode-menu-border, rgba(255, 255, 255, 0.1));
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  padding: 4px;
}
.cb-plugins-card-dropdown-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 12px;
  font-size: 13px;
  color: var(--vscode-menu-foreground);
  cursor: pointer;
  border-radius: 4px;
  transition: background 0.15s ease;
}
.cb-plugins-card-dropdown-item:hover:not(.disabled) {
  background: var(--vscode-list-hoverBackground);
}
.cb-plugins-card-dropdown-item.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.cb-plugins-card-dropdown-item--danger {
  color: var(--vscode-errorForeground, #f14c4c);
}
.cb-plugins-card-dropdown-item--danger:hover:not(.disabled) {
  background: rgba(241, 76, 76, 0.1);
}
.cb-plugins-card-dropdown-item-title {
  font-size: 13px;
  font-weight: 500;
  color: var(--vscode-foreground);
}
.cb-plugins-card-dropdown-item-desc {
  font-size: 11px;
  color: var(--vscode-descriptionForeground, #999);
  line-height: 1.3;
}
.cb-plugins-card-install-dropdown {
  min-width: 240px;
}
.cb-plugins-card-install-dropdown .cb-plugins-card-dropdown-item {
  padding: 10px 12px;
}
.cb-plugins-card-install-dropdown .cb-plugins-card-dropdown-item:hover .cb-plugins-card-dropdown-item-title {
  color: var(--vscode-foreground);
}
.cb-plugins-card-description {
  font-size: 13px;
  color: var(--vscode-descriptionForeground, #999);
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.cb-plugins-card-tags {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 4px;
}
.cb-plugins-card-tag {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 500;
  border: 1px solid;
}
.cb-plugins-card-tag--skills {
  color: rgb(74, 222, 128);
  border-color: rgba(74, 222, 128, 0.3);
  background: rgba(74, 222, 128, 0.1);
}
.cb-plugins-card-tag--commands {
  color: rgb(251, 146, 60);
  border-color: rgba(251, 146, 60, 0.3);
  background: rgba(251, 146, 60, 0.1);
}
.cb-plugins-card-tag--mcp {
  color: rgb(96, 165, 250);
  border-color: rgba(96, 165, 250, 0.3);
  background: rgba(96, 165, 250, 0.1);
}
.cb-plugins-card-tag--agents {
  color: rgb(192, 132, 252);
  border-color: rgba(192, 132, 252, 0.3);
  background: rgba(192, 132, 252, 0.1);
}
.cb-plugins-card-tag--hooks {
  color: rgb(244, 114, 182);
  border-color: rgba(244, 114, 182, 0.3);
  background: rgba(244, 114, 182, 0.1);
}
.cb-plugins-card-tag--rules {
  color: rgb(156, 163, 175);
  border-color: rgba(156, 163, 175, 0.3);
  background: rgba(156, 163, 175, 0.1);
}
.cb-plugins-card-source {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  margin-top: 4px;
  padding-top: 8px;
  border-top: 1px solid var(--vscode-panel-border, rgba(255, 255, 255, 0.06));
}
.cb-plugins-card-source-label {
  color: var(--vscode-descriptionForeground, #888);
}
.cb-plugins-card-source-value {
  color: var(--vscode-foreground);
  opacity: 0.8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cb-plugins-card-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 200px;
  color: var(--vscode-descriptionForeground, #999);
  font-size: 14px;
  text-align: center;
  padding: 20px;
  grid-column: 1/-1;
}

.cb-plugins-spinner {
  animation: cb-plugins-card-spin 1s linear infinite;
}
.cb-plugins-spinner--1 {
  width: 12px;
  height: 12px;
}

@keyframes cb-plugins-card-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/**
 * InstalledPluginsList - 已安装插件列表样式
 * 简洁的侧边栏插件列表展示
 */
.cb-installed-plugins-list {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.cb-installed-plugins-list-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-bottom: 1px solid var(--cb-border-color, #333);
  flex-shrink: 0;
}

.cb-installed-plugins-list-title {
  font-size: 12px;
  font-weight: 600;
  color: var(--cb-text-secondary, #858699);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.cb-installed-plugins-list-count {
  font-size: 11px;
  color: var(--cb-text-muted, #6c6c6c);
  background-color: var(--cb-bg-tertiary, #2a2a2a);
  padding: 2px 6px;
  border-radius: 10px;
  min-width: 18px;
  text-align: center;
}

.cb-installed-plugins-list-content {
  flex: 1;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: transparent transparent;
}
.cb-installed-plugins-list-content:hover {
  scrollbar-color: var(--cb-scrollbar-color, #555) transparent;
}
.cb-installed-plugins-list-content::-webkit-scrollbar {
  width: 6px;
}
.cb-installed-plugins-list-content::-webkit-scrollbar-track {
  background: transparent;
}
.cb-installed-plugins-list-content::-webkit-scrollbar-thumb {
  background-color: transparent;
  border-radius: 3px;
}
.cb-installed-plugins-list-content:hover::-webkit-scrollbar-thumb {
  background-color: var(--cb-scrollbar-color, #555);
}

.cb-installed-plugins-list-loading,
.cb-installed-plugins-list-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
  color: var(--cb-text-muted, #6c6c6c);
  font-size: 13px;
}

.cb-installed-plugins-list-items {
  list-style: none;
  margin: 0;
  padding: 8px 0;
}

.cb-installed-plugins-list-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px;
  cursor: pointer;
  transition: background-color 0.15s ease;
  user-select: none;
  border-radius: 8px;
}
.cb-installed-plugins-list-item:hover {
  background: var(--cb-hover-bg, rgba(0, 0, 0, 0.03));
}
.cb-installed-plugins-list-item--selected {
  background: var(--cb-bg-primary, rgba(0, 0, 0, 0.05));
}
.cb-installed-plugins-list-item--disabled {
  opacity: 0.55;
}

.cb-installed-plugins-list-item-icon {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--cb-bg-primary, rgba(0, 0, 0, 0.05));
  color: var(--cb-text-secondary, #858699);
}
.cb-installed-plugins-list-item-icon svg {
  width: 15px;
  height: 15px;
}

.cb-installed-plugins-list-item-name {
  font-size: 13px;
  color: var(--cb-text-primary, #d2d3e0);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
}

.cb-installed-plugins-list-item-status {
  font-size: 10px;
  color: var(--cb-text-muted, #6c6c6c);
  background-color: var(--cb-bg-tertiary, #2a2a2a);
  padding: 2px 6px;
  border-radius: 4px;
  margin-left: 8px;
  flex-shrink: 0;
}

:global(.light) .cb-installed-plugins-list,
:global(.cb-light) .cb-installed-plugins-list {
  background-color: var(--cb-bg-secondary, #f5f5f5);
  border-right-color: var(--cb-border-color, #e0e0e0);
}
:global(.light) .cb-installed-plugins-list-header,
:global(.cb-light) .cb-installed-plugins-list-header {
  border-bottom-color: var(--cb-border-color, #e0e0e0);
}
:global(.light) .cb-installed-plugins-list-count,
:global(.cb-light) .cb-installed-plugins-list-count {
  background-color: var(--cb-bg-tertiary, #e8e8e8);
}
:global(.light) .cb-installed-plugins-list-item:hover,
:global(.cb-light) .cb-installed-plugins-list-item:hover {
  background-color: var(--cb-hover-bg, #e8e8e8);
}
:global(.light) .cb-installed-plugins-list-item--selected,
:global(.cb-light) .cb-installed-plugins-list-item--selected {
  background-color: var(--cb-bg-tertiary, rgba(255, 107, 53, 0.1));
}
:global(.light) .cb-installed-plugins-list-item--disabled .cb-installed-plugins-list-item-icon,
:global(.cb-light) .cb-installed-plugins-list-item--disabled .cb-installed-plugins-list-item-icon {
  background-color: var(--cb-bg-tertiary, #f0f0f0);
  color: var(--cb-text-disabled, #bbb);
}
:global(.light) .cb-installed-plugins-list-item-icon,
:global(.cb-light) .cb-installed-plugins-list-item-icon {
  background-color: var(--cb-bg-tertiary, #eee);
  color: var(--cb-text-secondary, #666);
}
:global(.light) .cb-installed-plugins-list-item-name,
:global(.cb-light) .cb-installed-plugins-list-item-name {
  color: var(--cb-text-primary, #333);
}
:global(.light) .cb-installed-plugins-list-item-status,
:global(.cb-light) .cb-installed-plugins-list-item-status {
  background-color: var(--cb-bg-tertiary, #e8e8e8);
}
/**
 * 确认对话框样式
 *
 * 引入统一的变量系统（变量已在 variables 中定义）
 */
._dialogOverlay_15ey1_7 {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  z-index: var(--cb-z-index-modal-confirm, 10001);
  width: 100vw;
  padding: 0 24px;
}
._dialogOverlay_15ey1_7 .cb-tooltip {
  z-index: 10002;
}
._dialogOverlay_15ey1_7[data-theme=light] {
  background: rgba(0, 0, 0, 0.3);
}
._dialogOverlay_15ey1_7[data-theme=light] ._dialogContainer_15ey1_24 {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.15);
}

._dialogContainer_15ey1_24 {
  position: relative;
  flex-grow: 1;
  max-width: 500px;
  padding: 24px;
  border-radius: 8px;
  border: 1px solid var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248));
  background-color: var(--cb-vscode-dropdown-background, var(--vscode-dropdown-background, #212234));
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.35);
  width: 100%;
}

._dialogClose_15ey1_40 {
  position: absolute;
  top: 12px;
  right: 12px;
  min-width: 24px;
  min-height: 24px;
}

._dialogHeader_15ey1_48 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 18px;
  margin-right: 32px;
  line-height: 22px;
  font-size: 18px;
  font-weight: 600;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
}

._dialogContent_15ey1_60 {
  margin-bottom: 16px;
  line-height: 18px;
  font-size: 14px;
  font-weight: 400;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}

._dialogDetailContent_15ey1_68 {
  margin-bottom: 20px;
  padding: 12px;
  border-radius: 6px;
  background-color: var(--cb-vscode-input-background, var(--vscode-input-background, #1a1b26));
  border: 1px solid var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248));
  max-height: 200px;
  overflow-y: auto;
}
._dialogDetailContent_15ey1_68::-webkit-scrollbar {
  width: 6px;
}
._dialogDetailContent_15ey1_68::-webkit-scrollbar-track {
  background: transparent;
}
._dialogDetailContent_15ey1_68::-webkit-scrollbar-thumb {
  background-color: var(--cb-vscode-scrollbarSlider-background, rgba(255, 255, 255, 0.2));
  border-radius: 3px;
}
._dialogDetailContent_15ey1_68::-webkit-scrollbar-thumb:hover {
  background-color: var(--cb-vscode-scrollbarSlider-hoverBackground, rgba(255, 255, 255, 0.3));
}

._dialogMessage_15ey1_91 {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

._dialogMessageContent_15ey1_97 {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: start;
}

._dialogMessageTitle_15ey1_104 {
  font-size: 14px;
  font-weight: 600;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
}

._dialogMessageDescription_15ey1_110 {
  font-size: 13px;
  font-weight: 400;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #9d9d9d));
}

._dialogMessageIcon_15ey1_116 {
  width: 18px;
  height: 18px;
  color: var(--cb-text-secondary, #858699);
}

._shareUrlContainer_15ey1_122 {
  display: flex;
  align-items: center;
  margin-top: 16px;
  border-radius: 6px;
  background-color: var(--cb-vscode-input-background, var(--vscode-input-background, #1a1b26));
  border: 1px solid var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248));
  overflow: hidden;
}

._shareUrlLinkIcon_15ey1_132 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}

._shareUrlInput_15ey1_142 {
  flex: 1;
  min-width: 0;
  padding: 6px 10px;
  border: none;
  outline: none;
  background: transparent;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
  font-size: 13px;
  line-height: 20px;
  font-family: inherit;
  text-overflow: ellipsis;
  cursor: default;
  user-select: all;
}

._shareUrlCopyBtn_15ey1_158 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border: none;
  background: transparent;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
  cursor: pointer;
  border-radius: 4px;
  transition: color 0.15s, background-color 0.15s;
}
._shareUrlCopyBtn_15ey1_158:hover {
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0));
  background-color: var(--cb-vscode-toolbar-hoverBackground, rgba(255, 255, 255, 0.1));
}

._shareLoadingState_15ey1_177 {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 0;
}

._shareLoadingSpinner_15ey1_184 {
  animation: _share-spin_15ey1_1 1s linear infinite;
}

@keyframes _share-spin_15ey1_1 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
._dialogButton_15ey1_196 {
  width: 100%;
  margin-top: 18px;
  font-size: 14px;
  font-weight: 600;
  padding: 18px 0;
  border-radius: 10px;
  background-color: #4ECBA0 !important;
  color: #fff !important;
}
._dialogButton_15ey1_196:hover:not(:disabled) {
  background-color: #3DBF93 !important;
}
._dialogButton_15ey1_196:active:not(:disabled) {
  background-color: #2EAD82 !important;
}
._dialogButtonGroup_15ey1_212 ._dialogButton_15ey1_196 {
  flex: 1;
  width: auto;
  margin-top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}

._dialogButtonGroup_15ey1_212 {
  display: flex;
  gap: 12px;
  margin-top: 18px;
}

._dialogButtonSecondary_15ey1_228 {
  flex: 1;
  font-size: 14px;
  font-weight: 600;
  padding: 18px 0;
  border-radius: 10px;
  border: 1px solid var(--cb-vscode-widget-border, var(--vscode-widget-border, #313248)) !important;
  background-color: transparent !important;
  color: var(--cb-vscode-foreground, var(--vscode-foreground, #d2d3e0)) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
._dialogButtonSecondary_15ey1_228:hover:not(:disabled) {
  background-color: var(--cb-vscode-toolbar-hoverBackground, rgba(255, 255, 255, 0.1)) !important;
}
._dialogButtonSecondary_15ey1_228:active:not(:disabled) {
  background-color: var(--cb-vscode-toolbar-hoverBackground, rgba(255, 255, 255, 0.15)) !important;
}

._shareQrCodeContainer_15ey1_249 {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
  padding: 12px;
  border-radius: 8px;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  min-height: 192px;
}

._shareQrCodeImage_15ey1_261 {
  width: 168px;
  height: 168px;
  display: block;
  object-fit: contain;
}

._shareQrCodeLoading_15ey1_268 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 168px;
  height: 168px;
  color: var(--cb-text-secondary, #858699);
}

._wechatDescription_15ey1_277 {
  margin: 0;
  line-height: 20px;
  font-size: 14px;
  color: var(--cb-vscode-descriptionForeground, var(--vscode-descriptionForeground, #858699));
}

._shareFileCard_15ey1_284 {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border: 1px solid var(--cb-border);
  border-radius: 8px;
}

._shareFileCardIcon_15ey1_293 {
  flex-shrink: 0;
}

._shareFileCardInfo_15ey1_297 {
  flex: 1;
  min-width: 0;
}

._shareFileCardName_15ey1_302 {
  font-size: 14px;
  font-weight: 500;
  color: var(--cb-text-primary);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
}

._shareFileCardNameLink_15ey1_312 {
  text-decoration: none;
  cursor: pointer;
  display: block;
}
._shareFileCardNameLink_15ey1_312:hover {
  text-decoration: underline;
}

._shareFileCardSize_15ey1_321 {
  font-size: 12px;
  color: var(--cb-text-tertiary);
  margin-top: 2px;
}

._shareFileCardLoading_15ey1_327 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
}

._sharePublicNotice_15ey1_336 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
}

._sharePublicNoticeTitle_15ey1_343 {
  font-size: 13px;
  font-weight: 500;
  color: var(--cb-text-primary);
}

._sharePublicNoticeDesc_15ey1_349 {
  font-size: 12px;
  color: var(--cb-text-tertiary);
}

._shareToSection_15ey1_354 {
  padding-top: 16px;
  padding-bottom: 6px;
}

._shareToLabel_15ey1_359 {
  font-size: 14px;
  color: var(--cb-text-secondary);
  display: flex;
  align-items: center;
  gap: 4px;
  line-height: 20px;
  white-space: nowrap;
}

._shareToQuestionIcon_15ey1_369 {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
}
._shareToQuestionIcon_15ey1_369 svg {
  width: 14px;
  height: 14px;
}

._shareToTip_15ey1_379 {
  display: block;
  max-width: 100%;
  font-size: 12px;
  color: var(--cb-text-tertiary);
  margin-top: 4px;
  line-height: 18px;
}

._shareActions_15ey1_388 {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 18px 22px !important;
  padding-top: 12px;
}
._shareActions_15ey1_388 .wb-share-channel-btn {
  width: 72px;
  height: 78px;
  align-items: center;
}
._shareActions_15ey1_388 .wb-share-channel-btn__label {
  max-width: 96px;
  text-align: center;
}

._shareActionButton_15ey1_406 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: none;
  background: none;
  color: var(--cb-text-primary);
  cursor: pointer;
  font-size: 12px;
  min-width: 0;
}
._shareActionButton_15ey1_406:hover:not(:disabled) ._shareActionButtonIcon_15ey1_419 {
  background: var(--cb-hover-bg);
}
._shareActionButton_15ey1_406:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

._shareActionButtonIcon_15ey1_419 {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--cb-bg-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
}
._shareActionButtonIcon_15ey1_419 svg {
  width: 28px;
  height: 28px;
}.wb-share-bar__channels {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 28px;
  flex-wrap: wrap;
  align-content: flex-start;
}
.wb-share-bar__channels:has(.wb-share-channel-btn:nth-child(2):last-child) {
  gap: 56px;
}
.wb-share-channel-btn {
  width: 48px;
  height: 72px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  padding: 0;
  border: none;
  background: transparent;
  cursor: pointer;
  color: var(--cb-text-primary);
  transition: opacity 0.15s ease, transform 0.12s ease;
}
.wb-share-channel-btn:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}
.wb-share-channel-btn:active:not(:disabled) {
  transform: scale(0.95);
}
.wb-share-channel-btn:hover:not(:disabled) {
  opacity: 1;
}
.wb-share-channel-btn:hover:not(:disabled) .wb-share-channel-btn__icon {
  background-color: var(--cb-hover-bg, rgba(0, 0, 0, 0.08));
  transform: scale(1.05);
}
.wb-share-channel-btn:hover:not(:disabled) .wb-share-channel-btn__label {
  color: var(--cb-text-primary, var(--cb-vscode-foreground, #ffffff));
}
.wb-share-channel-btn:focus-visible {
  outline: 2px solid var(--cb-button-primary, #007acc);
  outline-offset: 4px;
  border-radius: 4px;
}
.wb-share-channel-btn__icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 12px;
  background-color: var(--cb-bg-secondary);
  transition: background-color 0.12s ease, transform 0.12s ease;
}
.wb-share-channel-btn__label {
  font-size: 12px;
  line-height: 16px;
  color: var(--cb-text-secondary, var(--cb-vscode-foreground, #cccccc));
  white-space: nowrap;
  text-align: center;
  transition: color 0.12s ease;
}
._overlay_p04lo_1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10001;
}

._mask_p04lo_13 {
  background: rgba(0, 0, 0, 0.5);
}

._container_p04lo_17 {
  background: #ffffff;
  border-radius: 16px;
  padding: 24px;
  min-width: 380px;
  max-width: 440px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}

._header_p04lo_26 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 20px;
}

._title_p04lo_33 {
  font-size: 18px;
  font-weight: 600;
  color: #1a1a1a;
}

._closeButton_p04lo_39 {
  background: none;
  border: none;
  font-size: 22px;
  color: #999999;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  line-height: 1;
}
._closeButton_p04lo_39:hover {
  background: #f5f5f5;
}

._content_p04lo_53 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  background: rgba(0, 0, 0, 0.1);
  border-radius: 12px;
  padding: 46px 76px;
  background-image: url("./qrcode-bg-Co0kER6O.avif");
  background-repeat: no-repeat;
  background-position: calc(100% + 40px) calc(100% + 30px);
  background-size: 75% auto;
}

._qrcodeWrapper_p04lo_67 {
  width: 200px;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  border-radius: 12px;
  padding: 12px;
}

._qrcodeImage_p04lo_78 {
  width: 100%;
  height: 100%;
  border-radius: 4px;
}

._hint_p04lo_84 {
  font-size: 14px;
  color: #333333;
  font-weight: bold;
  text-align: center;
  margin: 8px 0 0 0;
}

._message_p04lo_92 {
  font-size: 12px;
  color: #e6a23c;
  text-align: center;
  margin: 8px 0 0 0;
}

._loading_p04lo_99 {
  display: flex;
  align-items: center;
  justify-content: center;
}

._spinner_p04lo_105 {
  width: 32px;
  height: 32px;
  border: 3px solid #e0e0e0;
  border-top-color: #4ecba5;
  border-radius: 50%;
  animation: _spin_p04lo_105 0.8s linear infinite;
}

@keyframes _spin_p04lo_105 {
  to {
    transform: rotate(360deg);
  }
}
._error_p04lo_119 {
  font-size: 13px;
  color: #999999;
}

._footer_p04lo_124 {
  display: flex;
  gap: 12px;
  padding-top: 24px;
}

._secondaryButton_p04lo_130 {
  flex: 1;
  padding: 8px 0;
  border: none;
  border-radius: 4px;
  background: rgba(0, 0, 0, 0.08);
  color: #000000;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.2s;
}
._secondaryButton_p04lo_130:hover {
  background: #eeeeee;
}

._primaryButton_p04lo_146 {
  flex: 1;
  padding: 8px 0;
  border: none;
  border-radius: 4px;
  background: #000000;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: opacity 0.2s;
}
._primaryButton_p04lo_146:hover:not(:disabled) {
  opacity: 0.9;
}
._primaryButton_p04lo_146:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}
/* ================================================
   ScrollList – 通用可滚动列表组件
   ================================================ */
._scrollListWrapper_1yamy_5 {
  position: relative;
  width: 100%;
  overflow: hidden;
  /* ── 渐变遮罩（伪元素实现） ── */
}
._scrollListWrapper_1yamy_5::before, ._scrollListWrapper_1yamy_5::after {
  content: "";
  position: absolute;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease;
}
._scrollListWrapper_1yamy_5 {
  /* ── 水平方向 ── */
}
._scrollListWrapper_1yamy_5._horizontal_1yamy_22::before, ._scrollListWrapper_1yamy_5._horizontal_1yamy_22::after {
  top: 0;
  height: 100%;
  width: var(--cb-scroll-list-fade-size, 48px);
}
._scrollListWrapper_1yamy_5._horizontal_1yamy_22::before {
  left: 0;
  background: linear-gradient(to left, transparent, var(--cb-panel-bg-primary, var(--vscode-panel-background, #1e1e1e)));
}
._scrollListWrapper_1yamy_5._horizontal_1yamy_22::after {
  right: 0;
  background: linear-gradient(to right, transparent, var(--cb-panel-bg-primary, var(--vscode-panel-background, #1e1e1e)));
}
._scrollListWrapper_1yamy_5 {
  /* ── 垂直方向 ── */
}
._scrollListWrapper_1yamy_5._vertical_1yamy_38::before, ._scrollListWrapper_1yamy_5._vertical_1yamy_38::after {
  left: 0;
  width: 100%;
  height: var(--cb-scroll-list-fade-size, 48px);
}
._scrollListWrapper_1yamy_5._vertical_1yamy_38::before {
  top: 0;
  background: linear-gradient(to top, transparent, var(--cb-panel-bg-primary, var(--vscode-panel-background, #1e1e1e)));
}
._scrollListWrapper_1yamy_5._vertical_1yamy_38::after {
  bottom: 0;
  background: linear-gradient(to bottom, transparent, var(--cb-panel-bg-primary, var(--vscode-panel-background, #1e1e1e)));
}
._scrollListWrapper_1yamy_5 {
  /* ── 遮罩显示控制 ── */
}
._scrollListWrapper_1yamy_5._fadeStart_1yamy_54::before {
  opacity: 1;
}
._scrollListWrapper_1yamy_5._fadeEnd_1yamy_57::after {
  opacity: 1;
}

/* ── 滚动列表内层 ── */
._scrollList_1yamy_5 {
  display: flex;
  min-width: 0;
}
._scrollList_1yamy_5._horizontal_1yamy_22 {
  flex-direction: row;
  align-items: center;
  overflow-x: auto;
  overflow-y: hidden;
  max-width: inherit;
}
._scrollList_1yamy_5._vertical_1yamy_38 {
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: inherit;
}
._scrollList_1yamy_5 {
  /* ── 隐藏滚动条 ── */
}
._scrollList_1yamy_5._hideScrollbar_1yamy_82 {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
}
._scrollList_1yamy_5._hideScrollbar_1yamy_82::-webkit-scrollbar {
  display: none; /* Chrome/Safari */
}
._scrollList_1yamy_5 {
  /* ── 拖动光标 ── */
}
._scrollList_1yamy_5._draggable_1yamy_92 {
  cursor: grab;
  user-select: none;
  -webkit-user-select: none;
}
._scrollList_1yamy_5._draggable_1yamy_92:active {
  cursor: grabbing;
}
/**
 * Breadcrumb 样式
 *
 * 颜色 token 全部使用 --cb-* 前缀变量，遵循项目样式规范。
 * 容器使用 flex 布局，避免任何 margin（防止 margin collapsing 溢出到外层）。
 */
.cb-breadcrumb {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: nowrap;
  min-width: 0;
  overflow: hidden;
  line-height: 1.4;
}
.cb-breadcrumb--sm {
  font-size: 12px;
}
.cb-breadcrumb--md {
  font-size: 13px;
}
.cb-breadcrumb__item {
  display: inline-flex;
  align-items: center;
  max-width: 200px;
  padding: 2px 4px;
  border-radius: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: transparent;
  border: 0;
  color: var(--cb-text-secondary);
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  cursor: default;
  transition: color 120ms ease, background-color 120ms ease;
}
.cb-breadcrumb__item--clickable {
  cursor: pointer;
}
.cb-breadcrumb__item--clickable:hover {
  color: var(--cb-text-primary);
  background: var(--cb-hover-bg);
}
.cb-breadcrumb__item--clickable:focus-visible {
  outline: 1px solid var(--cb-focus-border, var(--cb-text-primary));
  outline-offset: 1px;
}
.cb-breadcrumb__item--current {
  color: var(--cb-text-primary);
  font-weight: 500;
}
.cb-breadcrumb__sep {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  color: var(--cb-text-tertiary);
  user-select: none;
  font-size: 12px;
  line-height: 1;
}
.cb-breadcrumb__sep-icon {
  display: block;
}
.cb-breadcrumb__ellipsis {
  display: inline-flex;
  align-items: center;
  padding: 2px 4px;
  color: var(--cb-text-tertiary);
  user-select: none;
}
/**
 * ResourceLinkChip 组件样式
 *
 * 用于显示用户消息中的资源引用卡片
 */
.cb-resource-link-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid var(--cb-border, #e1e4e8);
  border-radius: 4px;
  background: var(--cb-vscode-list-inactiveSelectionBackground);
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.15);
  font-size: 12px;
  transition: background-color 0.2s ease;
  max-width: 200px;
  outline: none;
}
.cb-resource-link-chip[role=button] {
  cursor: pointer;
}
.cb-resource-link-chip[role=button]:hover {
  background: var(--cb-vscode-list-hoverBackground);
}
.cb-resource-link-chip .cb-resource-icon {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cb-resource-link-chip .cb-resource-icon svg {
  width: 100%;
  height: 100%;
}
.cb-resource-link-chip .cb-resource-name {
  color: var(--cb-text-primary, #24292f);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 16px;
}

/**
 * 用户消息中的资源引用区域
 *
 * 显示在文本内容上方，右对齐以匹配用户消息气泡的布局
 */
.cb-user-references {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
  justify-content: flex-end;
}@keyframes _shimmer_31khq_1 {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
._skeletonContainer_31khq_9 {
  display: flex;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
  padding: 0 8px;
}

._skeletonPair_31khq_17 {
  display: flex;
  flex-direction: column;
}

._skeletonUserMessage_31khq_22 {
  padding: 32px 16px;
  display: flex;
  justify-content: flex-end;
}

._skeletonUserBubble_31khq_28 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  padding: 8px 12px;
  border-radius: 6px 6px 0 6px;
  min-width: 100px;
  max-width: 70%;
  height: 19px;
}

._skeletonAssistantMessage_31khq_40 {
  padding: 0 12px;
  display: flex;
  flex-direction: column;
}

._skeletonAvatarContainer_31khq_46 {
  display: flex;
  align-items: center;
  padding-bottom: 12px;
  gap: 10px;
}

._skeletonAvatar_31khq_46 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  flex-shrink: 0;
}

._skeletonAvatarName_31khq_64 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  width: 80px;
  height: 12px;
}

._skeletonAssistantContent_31khq_73 {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-bottom: 16px;
}

._skeletonTextLong_31khq_80 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  height: 13px;
  width: 90%;
}

._skeletonTextMedium_31khq_89 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  height: 13px;
  width: 70%;
}

._skeletonTextShort_31khq_98 {
  background: linear-gradient(90deg, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 25%, var(--cb-skeleton-highlight, rgba(128, 128, 128, 0.2)) 50%, var(--cb-skeleton-base, rgba(128, 128, 128, 0.1)) 75%);
  background-size: 200% 100%;
  animation: _shimmer_31khq_1 1.5s infinite;
  border-radius: 4px;
  height: 13px;
  width: 45%;
}