/*!************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/Header.module.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************/
/* Header navigation styles */
.Header_mainHeader__zd_uc {
  height: 50px;
  border-bottom: 1px solid var(--border-color);
  display: flex;
  align-items: center;
  padding: 0 16px;
  justify-content: space-between;
  background-color: var(--main-bg);
}

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

.Header_headerTitle__qKCuJ {
  font-weight: 400;
  margin-left: 8px;
  max-width: 300px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Header_saveStatus__kz3n8 {
  font-size: 12px;
  color: var(--success-color);
  margin-left: 12px;
  display: flex;
  align-items: center;
}

.Header_saveStatus__kz3n8.Header_saving__G7fJe {
  color: var(--text-secondary);
}

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

.Header_headerIcon__7FLLa {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  margin-left: 8px;
  cursor: pointer;
  background: none;
  border: none;
}

.Header_headerIcon__7FLLa:hover {
  background-color: var(--hover-bg);
}

.Header_headerIcon__7FLLa:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
/*!************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/Editor.module.css ***!
  \************************************************************************************************************************************************************************************************************************************************************************/
/* src/styles/Editor.module.css */
/* 注意文件名为 Editor.module.css */

/* 编辑器基本样式 */
.Editor_noteEditor__PO9u8 {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  padding-left: 30px; /* 增加左侧padding，从15px增加到30px */
}

.Editor_editorContent__Hto0I {
  width: 100%;
  min-height: 300px;
  color: var(--text-primary); /* 使用主题变量 */
}

/* 编辑器内容样式 */
.Editor_editorContent__Hto0I .ProseMirror {
  outline: none;
  padding: 10px 0;
  min-height: 300px;
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror p {
  margin-bottom: 0.5em; /* 将段落间距从1em减小到0.5em，减少50% */
  line-height: 1.6;
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror p:hover {
  background-color: var(--hover-bg); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror h1 {
  font-size: 2em;
  font-weight: 600;
  margin: 0.5em 0 0.25em; /* 减少标题上下间距 */
  line-height: 1.3;
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror h2 {
  font-size: 1.5em;
  font-weight: 600;
  margin: 0.5em 0 0.25em; /* 减少标题上下间距 */
  line-height: 1.3;
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror h3 {
  font-size: 1.25em;
  font-weight: 600;
  margin: 0.5em 0 0.25em; /* 减少标题上下间距 */
  line-height: 1.3;
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror ul,
.Editor_editorContent__Hto0I .ProseMirror ol {
  padding-left: 1.5em;
  margin-bottom: 0.5em; /* 减少列表间距 */
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror li {
  margin-bottom: 0.25em; /* 减少列表项间距 */
  position: relative;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror blockquote {
  border-left: 3px solid var(--border-color); /* 使用主题变量 */
  padding-left: 1em;
  color: var(--text-secondary); /* 使用主题变量 */
  margin: 0.5em 0; /* 减少引用块间距 */
}

.Editor_editorContent__Hto0I .ProseMirror pre {
  background-color: var(--hover-bg); /* 使用主题变量 */
  border-radius: 5px;
  padding: 0.75em 1em;
  margin: 0.5em 0; /* 减少代码块间距 */
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
  overflow-x: auto;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror code {
  background-color: var(--hover-bg); /* 使用主题变量 */
  border-radius: 3px;
  padding: 0.2em 0.4em;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror hr {
  border: none;
  border-top: 1px solid var(--border-color); /* 使用主题变量 */
  margin: 1em 0; /* 减少分割线间距 */
}

.Editor_editorContent__Hto0I .ProseMirror p.is-editor-empty:first-child::before {
  content: attr(data-placeholder);
  float: left;
  color: var(--text-secondary); /* 使用主题变量 */
  pointer-events: none;
  height: 0;
}

/* 表格样式 */
.Editor_editorContent__Hto0I .ProseMirror table {
  border-collapse: collapse;
  margin: 0.5em 0; /* 减少表格间距 */
  overflow: hidden;
  width: 100%;
  table-layout: fixed;
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror table td,
.Editor_editorContent__Hto0I .ProseMirror table th {
  border: 1px solid var(--border-color); /* 使用主题变量 */
  padding: 0.5em;
  position: relative;
  vertical-align: top;
}

.Editor_editorContent__Hto0I .ProseMirror table th {
  background-color: var(--hover-bg); /* 使用主题变量 */
  font-weight: 600;
}

.Editor_editorContent__Hto0I .ProseMirror table .selectedCell {
  background-color: rgba(82, 113, 255, 0.1); /* 使用与主题相关的颜色 */
}

/* 图片样式 */
.Editor_editorContent__Hto0I .ProseMirror img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0.5em 0; /* 减少图片间距 */
  border-radius: 4px;
}

/* 任务列表样式 */
.Editor_editorContent__Hto0I .ProseMirror ul[data-type="taskList"] {
  list-style: none;
  padding: 0;
}

.Editor_editorContent__Hto0I .ProseMirror ul[data-type="taskList"] li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 0.25em; /* 减少任务列表项间距 */
  color: var(--text-primary); /* 使用主题变量 */
}

.Editor_editorContent__Hto0I .ProseMirror ul[data-type="taskList"] li > label {
  margin-right: 0.5em;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.Editor_editorContent__Hto0I .ProseMirror ul[data-type="taskList"] li > div {
  flex: 1 1;
}

/* 占位符样式 */
.Editor_editorContent__Hto0I .ProseMirror .is-empty::before {
  content: attr(data-placeholder);
  float: left;
  color: var(--text-secondary); /* 使用主题变量 */
  pointer-events: none;
  height: 0;
}

/* 添加块按钮样式 */
.Editor_addBlockButton__ZsfZL {
  position: absolute;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background-color: var(--primary-color, #5271ff);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  border: none;
  cursor: pointer;
  z-index: 10;
  transform: translateX(-100%);
}

.Editor_addBlockButton__ZsfZL:hover {
  background-color: var(--primary-color-dark, #3a5ae8);
}

/* 浮动菜单样式 */
.Editor_floatingMenu__j0qoS {
  position: absolute;
  background-color: var(--bg-secondary, white);
  border-radius: 6px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  padding: 8px;
  z-index: 20;
  width: 220px;
  max-height: 400px;
  overflow-y: auto;
  border: 1px solid var(--border-color, #e2e8f0);
}

.Editor_menuTitle__KHk_r {
  font-size: 14px;
  font-weight: 600;
  padding: 4px 8px;
  margin-bottom: 4px;
  color: var(--text-secondary, #718096);
}

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

.Editor_menuItem__C6pMa {
  display: flex;
  align-items: center;
  padding: 6px 8px;
  border-radius: 4px;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
  color: var(--text-primary, #2d3748);
}

.Editor_menuItem__C6pMa:hover {
  background-color: var(--hover-bg, #f7fafc);
}

.Editor_menuIcon__FIXQU {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 8px;
  font-size: 14px;
  color: var(--text-secondary, #718096);
}

.Editor_menuText__nQgYy {
  font-size: 14px;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/BubbleMenu.module.css ***!
  \****************************************************************************************************************************************************************************************************************************************************************************/
/* src/styles/BubbleMenu.module.css */

/* 气泡菜单样式 */
.BubbleMenu_editorBubbleMenu__NQSlK {
  display: flex;
  background-color: var(--main-bg); /* 使用主题变量 */
  border: 1px solid var(--border-color); /* 使用主题变量 */
  border-radius: 5px;
  padding: 5px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.BubbleMenu_editorBubbleMenu__NQSlK button {
  background: none;
  border: none;
  border-radius: 3px;
  padding: 5px 10px;
  margin: 0 2px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-primary); /* 使用主题变量 */
}

.BubbleMenu_editorBubbleMenu__NQSlK button:hover {
  background-color: var(--hover-bg); /* 使用主题变量 */
}

.BubbleMenu_isActive__jn16e {
  background-color: rgba(82, 113, 255, 0.1); /* 使用半透明的主题色 */
  color: var(--primary-color); /* 使用主题变量 */
}
/*!******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/FloatingMenu.module.css ***!
  \******************************************************************************************************************************************************************************************************************************************************************************/
/* src/styles/FloatingMenu.module.css */

/* 浮动菜单样式 */
.FloatingMenu_editorFloatingMenu__IugSm {
  display: flex;
  flex-direction: column;
  background-color: var(--main-bg); /* 使用主题变量 */
  border: 1px solid var(--border-color); /* 使用主题变量 */
  border-radius: 5px;
  padding: 10px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  width: 280px;
  max-height: 400px;
  overflow-y: auto;
  position: absolute;
  z-index: 50;
}

.FloatingMenu_menuSection__anGO7 {
  margin-bottom: 15px;
}

.FloatingMenu_menuLabel__pYQIs {
  font-size: 12px;
  color: var(--text-secondary); /* 使用主题变量 */
  margin-bottom: 5px;
  font-weight: 500;
}

.FloatingMenu_editorFloatingMenu__IugSm button {
  display: flex;
  align-items: center;
  background: none;
  border: none;
  border-radius: 3px;
  padding: 8px 10px;
  margin: 3px 0;
  width: 100%;
  text-align: left;
  cursor: pointer;
  color: var(--text-primary); /* 使用主题变量 */
}

.FloatingMenu_editorFloatingMenu__IugSm button:hover {
  background-color: var(--hover-bg); /* 使用主题变量 */
}

.FloatingMenu_editorFloatingMenu__IugSm button span {
  margin-left: 10px;
}

.FloatingMenu_headingIcon__eFRm1, .FloatingMenu_listIcon__WF5eL, .FloatingMenu_quoteIcon__Qzvwy {
  font-weight: 600;
  min-width: 16px;
  display: inline-flex;
  justify-content: center;
  color: var(--text-primary); /* 使用主题变量 */
}

/* 添加块按钮样式 */
.FloatingMenu_addBlockButton__i_AN2 {
  width: 24px;
  height: 24px;
  border-radius: 4px;
  background-color: var(--hover-bg); /* 使用主题变量 */
  border: 1px solid var(--border-color); /* 使用主题变量 */
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  opacity: 0.7;
  position: absolute;
  z-index: 40;
  color: var(--text-primary); /* 使用主题变量 */
}

.FloatingMenu_addBlockButton__i_AN2:hover {
  background-color: rgba(82, 113, 255, 0.1); /* 使用半透明的主题色 */
  color: var(--primary-color); /* 使用主题变量 */
  opacity: 1;
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/NoteContent.module.css ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************/
.NoteContent_mainContent__fbIb3 {
  flex: 1 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-color: var(--main-bg); /* 使用主题变量 */
  color: var(--text-primary); /* 使用主题变量 */
}

.NoteContent_noteContainer__b7LCn {
  flex: 1 1;
  padding: 24px;
  overflow-y: auto;
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
  position: relative;
  background-color: var(--main-bg); /* 使用主题变量 */
}

.NoteContent_noteTitle__OGWbm {
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 24px;
  outline: none;
  color: var(--text-primary); /* 使用主题变量 */
}

.NoteContent_noteTitle__OGWbm[data-placeholder]:empty:before {
  content: attr(data-placeholder);
  color: var(--text-secondary); /* 使用主题变量 */
}

.NoteContent_noteContent__2SuEb {
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-primary);
  margin-bottom: 16px;
  min-height: 100px;
  outline: none;
}

.NoteContent_commandInputContainer__EwJ2W {
  position: relative;
  margin-top: 16px;
}

.NoteContent_commandInput__AXb26 {
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid var(--border-color);
  width: 100%;
  font-size: 1rem;
  color: var(--text-secondary);
  outline: none;
  background-color: var(--main-bg); /* 使用主题变量 */
}

.NoteContent_commandInput__AXb26:focus {
  border-color: var(--primary-color);
}

/* Word count */
.NoteContent_wordCount__vorPw {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: var(--text-secondary);
  background-color: var(--hover-bg);
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
}

.NoteContent_lastSavedIndicator__flkkw {
  color: var(--text-secondary);
}

/* Command dot indicator */
.NoteContent_commandIndicator__A71ya {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: var(--indicator-color);
}
/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/Sidebar.module.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************/
/* src/styles/Sidebar.module.css */

.Sidebar_sidebarContainer__DxHFn {
  position: relative;
  height: 100%;
}

.Sidebar_sidebar__oTTpu {
  width: var(--sidebar-width, 250px);
  height: 100%;
  background-color: var(--sidebar-bg);
  display: flex;
  flex-direction: column;
  padding-right: 10px;
  position: relative;
  /* 性能优化 */
  will-change: width;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-font-smoothing: subpixel-antialiased;
}

/* 不在调整大小时启用平滑过渡 */
.Sidebar_sidebar__oTTpu:not(.Sidebar_resizing__GK_2u) {
  transition: width 0.1s cubic-bezier(0.4, 0, 0.2, 1);
}

/* 禁用调整大小时的过渡效果 */
.Sidebar_resizing__GK_2u {
  transition: none !important;
  pointer-events: none; /* 禁止子元素的鼠标事件，提高性能 */
}

/* 折叠状态样式 */
.Sidebar_sidebarCollapsed__lq0CW {
  width: 60px !important;
  overflow: visible;
  padding-right: 0;
}

/* 拖动条基本样式 */
.Sidebar_resizeHandle__o0yKd {
  position: absolute;
  top: 0;
  right: -6px;
  width: 12px;
  height: 100%;
  cursor: ew-resize;
  z-index: 9999;
  background-color: transparent;
  touch-action: none;
}

/* 拖动条悬停效果 */
.Sidebar_resizeHandle__o0yKd:hover::after {
  content: '';
  position: absolute;
  top: 0;
  right: 6px;
  width: 2px;
  height: 100%;
  background-color: var(--primary-color);
  opacity: 0.6;
}

/* 拖动条活动状态 */
.Sidebar_resizeHandle__o0yKd:active::after {
  content: '';
  position: absolute;
  top: 0;
  right: 6px;
  width: 2px;
  height: 100%;
  background-color: var(--primary-color);
  opacity: 0.9;
}

/* 添加一个额外的滚动条容器，确保滚动条和拖动条分离 */
.Sidebar_sidebarInner__6wjco {
  height: calc(100% - 120px); /* 为底部区域留出空间 */
  overflow-y: auto;
  overflow-x: hidden;
  padding-right: 5px;
  /* 自定义滚动条样式 */
  scrollbar-width: thin;
  scrollbar-color: var(--scrollbar-thumb) transparent;
}

.Sidebar_sidebarInner__6wjco::-webkit-scrollbar {
  width: 6px;
}

.Sidebar_sidebarInner__6wjco::-webkit-scrollbar-track {
  background: transparent;
}

.Sidebar_sidebarInner__6wjco::-webkit-scrollbar-thumb {
  background-color: var(--scrollbar-thumb, rgba(0, 0, 0, 0.2));
  border-radius: 3px;
  border: 1px solid transparent;
}

/* 搜索区域样式 */
.Sidebar_sidebarSearch__aUZBO {
  padding: 12px;
  position: relative;
}

.Sidebar_searchInput__ix8ik {
  width: 100%;
  padding: 8px 12px 8px 32px;
  border-radius: 6px;
  border: 1px solid var(--border-color);
  background-color: var(--main-bg);
  font-size: 14px;
}

.Sidebar_searchIcon__vGU83 {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-secondary);
}

.Sidebar_searchShortcut__mZLO9 {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-secondary);
  font-size: 12px;
  background-color: var(--hover-bg);
  padding: 2px 6px;
  border-radius: 4px;
}

/* 菜单区域样式 */
.Sidebar_sidebarMenu__ftgfe {
  padding: 8px 12px;
}

.Sidebar_menuItem__dL1mN {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 4px;
  cursor: pointer;
  font-size: 1rem;
}

.Sidebar_menuItem__dL1mN:hover {
  background-color: var(--hover-bg);
}

.Sidebar_menuItemIcon__PirdI {
  margin-right: 8px;
  color: var(--text-secondary);
}

/* 新聊天按钮 */
.Sidebar_newChatButton__ikGR4 {
  display: flex;
  align-items: center;
  margin: 8px 12px;
  padding: 8px 12px;
  border-radius: 6px;
  background-color: var(--primary-color-light);
  color: var(--primary-color);
  cursor: pointer;
  transition: background-color 0.2s;
}

.Sidebar_newChatButton__ikGR4:hover {
  background-color: var(--primary-color-light-hover);
}

.Sidebar_newChatButton__ikGR4 svg {
  margin-right: 8px;
}

/* 聊天历史记录样式 */
.Sidebar_chatGroup__X3xY5 {
  margin-top: 12px;
}

.Sidebar_chatList__igPB4 {
  padding: 0 12px;
}

.Sidebar_chatItem__H8Tso {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 2px;
  cursor: pointer;
  font-size: 0.9rem;
  position: relative;
}

.Sidebar_chatItem__H8Tso:hover {
  background-color: var(--hover-bg);
}

.Sidebar_chatItem__H8Tso:hover .Sidebar_chatActions__FM6ni {
  opacity: 1;
}

.Sidebar_chatIcon__xeQZL {
  margin-right: 8px;
  color: var(--text-secondary);
  flex-shrink: 0;
}

.Sidebar_chatTitle__eI1bM {
  flex: 1 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Sidebar_chatActions__FM6ni {
  display: flex;
  gap: 4px;
  opacity: 0;
  transition: opacity 0.2s;
}

.Sidebar_chatActionIcon__EZgHs {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  color: var(--text-secondary);
}

.Sidebar_chatActionIcon__EZgHs:hover {
  background-color: var(--hover-bg-dark);
  color: var(--text-primary);
}

/* 章节头部样式 */
.Sidebar_sectionHeader__b2Z0O {
  padding: 8px 12px;
  font-size: 0.85rem;
  color: var(--text-secondary);
  font-weight: 500;
  margin-top: 12px;
}

/* 笔记区域样式 */
.Sidebar_sidebarNotes__qy07M {
  padding: 0 12px;
}

.Sidebar_noteItem__OkAyR {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 6px;
  margin-bottom: 2px;
  cursor: pointer;
  font-size: 1rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Sidebar_noteItem__OkAyR:hover {
  background-color: var(--hover-bg);
}

.Sidebar_noteIcon__3iLuj {
  margin-right: 8px;
  color: var(--text-secondary);
  flex-shrink: 0;
}

/* 边栏部分样式 */
.Sidebar_sidebarSection__g2dv1 {
  margin-top: 8px;
}

.Sidebar_folderStructure__eyO02 {
  padding: 0 12px;
}

.Sidebar_folderItem__2vRPv {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.Sidebar_folderItem__2vRPv:hover {
  background-color: var(--hover-bg);
}

.Sidebar_folderIcon__zzaTj {
  margin-right: 8px;
  color: var(--text-secondary);
  flex-shrink: 0;
}

.Sidebar_subfolder__Opflh {
  margin-left: 20px;
}

/* 底部固定区域样式 */
.Sidebar_sidebarBottom__oUi3F {
  margin-top: auto;
  border-top: 1px solid var(--border-color);
  padding-top: 8px;
}

.Sidebar_bottomMenu__70ZoF {
  padding: 0 12px;
}

/* 用户资料样式 */
.Sidebar_userProfile__bgHsg {
  display: flex;
  align-items: center;
  padding: 12px;
  margin-top: 8px;
  border-top: 1px solid var(--border-color);
}

.Sidebar_userAvatar__cCSOD {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background-color: var(--avatar-bg);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 500;
  margin-right: 8px;
}

.Sidebar_userName__o_mj7 {
  font-size: 14px;
  font-weight: 500;
}

/* 活动状态样式 */
.Sidebar_active__XIQzC {
  background-color: rgba(82, 113, 255, 0.1);
  color: var(--primary-color);
}

.Sidebar_active__XIQzC .Sidebar_menuItemIcon__PirdI,
.Sidebar_active__XIQzC .Sidebar_noteIcon__3iLuj,
.Sidebar_active__XIQzC .Sidebar_folderIcon__zzaTj,
.Sidebar_active__XIQzC .Sidebar_chatIcon__xeQZL {
  color: var(--primary-color);
}

/* 折叠状态下特殊样式 */
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_menuItem__dL1mN,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_noteItem__OkAyR,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_folderItem__2vRPv,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_chatItem__H8Tso,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_newChatButton__ikGR4 {
  justify-content: center;
  padding: 12px 0;
}

.Sidebar_sidebarCollapsed__lq0CW .Sidebar_menuItemIcon__PirdI,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_noteIcon__3iLuj,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_folderIcon__zzaTj,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_chatIcon__xeQZL {
  margin-right: 0;
}

.Sidebar_sidebarCollapsed__lq0CW .Sidebar_sidebarSearch__aUZBO,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_searchInput__ix8ik,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_searchShortcut__mZLO9,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_sectionHeader__b2Z0O,
.Sidebar_sidebarCollapsed__lq0CW span:not(.Sidebar_menuItemIcon__PirdI):not(.Sidebar_noteIcon__3iLuj):not(.Sidebar_folderIcon__zzaTj):not(.Sidebar_chatIcon__xeQZL),
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_userAvatar__cCSOD,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_userName__o_mj7,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_chatActions__FM6ni,
.Sidebar_sidebarCollapsed__lq0CW .Sidebar_chatTitle__eI1bM {
  display: none;
}

.Sidebar_sidebarCollapsed__lq0CW .Sidebar_userProfile__bgHsg {
  justify-content: center;
}

.Sidebar_sidebarCollapsed__lq0CW .Sidebar_newChatButton__ikGR4 svg {
  margin-right: 0;
}

/* 提示工具样式 */
.Sidebar_tooltip__ef42J {
  position: absolute;
  left: 100%;
  background-color: var(--main-bg);
  border: 1px solid var(--border-color);
  border-radius: 4px;
  padding: 4px 8px;
  font-size: 12px;
  white-space: nowrap;
  z-index: 100;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s;
}

.Sidebar_menuItem__dL1mN:hover .Sidebar_tooltip__ef42J,
.Sidebar_noteItem__OkAyR:hover .Sidebar_tooltip__ef42J,
.Sidebar_folderItem__2vRPv:hover .Sidebar_tooltip__ef42J,
.Sidebar_chatItem__H8Tso:hover .Sidebar_tooltip__ef42J,
.Sidebar_newChatButton__ikGR4:hover .Sidebar_tooltip__ef42J {
  opacity: 1;
}
/*!**************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/Settings.module.css ***!
  \**************************************************************************************************************************************************************************************************************************************************************************/
/* src/styles/Settings.module.css */

.Settings_settingsOverlay__Fb6XL {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  animation: Settings_fadeIn__5UNUd 0.2s ease-out;
}

@keyframes Settings_fadeIn__5UNUd {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.Settings_settingsContainer__TgUua {
  background-color: var(--sidebar-bg);
  border-radius: 8px;
  width: 90%;
  max-width: 700px;
  max-height: 85vh;
  overflow-y: auto;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  animation: Settings_slideIn__Q3ZV1 0.3s ease-out;
}

@keyframes Settings_slideIn__Q3ZV1 {
  from {
    transform: translateY(20px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

.Settings_settingsHeader__l3Gi6 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 24px;
  border-bottom: 1px solid var(--border-color);
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-color: var(--sidebar-bg);
  z-index: 10;
}

.Settings_settingsTitle__mUyrJ {
  font-size: 18px;
  font-weight: 600;
  margin: 0;
  color: var(--text-primary);
}

.Settings_closeButton__qiFCQ {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--text-secondary);
  padding: 4px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.Settings_closeButton__qiFCQ:hover {
  background-color: var(--hover-bg);
}

.Settings_settingsContent__ZBsvn {
  padding: 0 24px 24px;
}

.Settings_settingsSection__anfUw {
  margin-top: 24px;
}

.Settings_sectionTitle__Jhyc2 {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 8px;
  color: var(--text-primary);
}

.Settings_sectionDescription__Fu5rq {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 16px;
}

.Settings_settingGroup__QKkN0 {
  margin-top: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--border-color);
}

.Settings_groupTitle__nUGJ1 {
  font-size: 14px;
  font-weight: 500;
  margin: 0 0 4px;
  color: var(--text-primary);
}

.Settings_groupDescription__ly_EN {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0 0 12px;
}

.Settings_settingItem__eF62_ {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0;
  cursor: pointer;
  border-radius: 4px;
}

.Settings_settingItem__eF62_:hover {
  background-color: var(--hover-bg);
}

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

.Settings_settingItemIcon__kgyDk {
  margin-right: 12px;
  color: var(--text-secondary);
}

.Settings_settingItemLabel__icSWt {
  font-size: 14px;
  color: var(--text-primary);
}

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

.Settings_settingItemValue__hOm6S {
  font-size: 14px;
  color: var(--text-secondary);
  margin-right: 8px;
}

.Settings_settingItemArrow__76_ZC {
  color: var(--text-secondary);
}

.Settings_toggleSwitch__bB1F7 {
  color: var(--text-secondary);
  cursor: pointer;
  transition: color 0.2s;
}

.Settings_toggleSwitch__bB1F7.Settings_active__Lbix4 {
  color: var(--primary-color);
}

/* 下拉菜单样式 */
.Settings_dropdown__sw_eN {
  position: absolute;
  top: 100%;
  right: 0;
  background-color: var(--main-bg);
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
  width: 200px;
  z-index: 100;
}

.Settings_dropdownItem___A2yT {
  padding: 8px 16px;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  color: var(--text-primary);
}

.Settings_dropdownItem___A2yT:hover {
  background-color: var(--hover-bg);
}

.Settings_dropdownItemSelected__lDB__ {
  font-weight: 500;
  color: var(--primary-color);
}

.Settings_dropdownItemIcon__8T1t6 {
  margin-right: 12px;
  display: flex;
  align-items: center;
  color: var(--text-secondary);
}

.Settings_checkIcon__EIST6 {
  margin-left: auto;
  color: var(--primary-color);
}

/* 响应式调整 */
@media (max-width: 768px) {
  .Settings_settingsContainer__TgUua {
    width: 95%;
    max-height: 90vh;
  }
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/MarkdownRenderer.module.css ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************/
.MarkdownRenderer_markdown__rQZdQ {
  font-size: 16px;
  line-height: 1.6;
  overflow-wrap: break-word;
}

.MarkdownRenderer_markdown__rQZdQ h1, 
.MarkdownRenderer_markdown__rQZdQ h2, 
.MarkdownRenderer_markdown__rQZdQ h3, 
.MarkdownRenderer_markdown__rQZdQ h4, 
.MarkdownRenderer_markdown__rQZdQ h5, 
.MarkdownRenderer_markdown__rQZdQ h6 {
  margin-top: 24px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.25;
}

.MarkdownRenderer_markdown__rQZdQ h1 {
  font-size: 2em;
}

.MarkdownRenderer_markdown__rQZdQ h2 {
  font-size: 1.5em;
}

.MarkdownRenderer_markdown__rQZdQ h3 {
  font-size: 1.25em;
}

.MarkdownRenderer_markdown__rQZdQ p, 
.MarkdownRenderer_markdown__rQZdQ blockquote, 
.MarkdownRenderer_markdown__rQZdQ ul, 
.MarkdownRenderer_markdown__rQZdQ ol, 
.MarkdownRenderer_markdown__rQZdQ dl, 
.MarkdownRenderer_markdown__rQZdQ table, 
.MarkdownRenderer_markdown__rQZdQ pre {
  margin-top: 0;
  margin-bottom: 16px;
}

.MarkdownRenderer_markdown__rQZdQ code {
  padding: 0.2em 0.4em;
  margin: 0;
  font-size: 85%;
  background-color: rgba(27, 31, 35, 0.05);
  border-radius: 3px;
}

.MarkdownRenderer_markdown__rQZdQ pre {
  padding: 16px;
  overflow: auto;
  font-size: 85%;
  line-height: 1.45;
  background-color: #f6f8fa;
  border-radius: 3px;
}

.MarkdownRenderer_markdown__rQZdQ blockquote {
  padding: 0 1em;
  color: #6a737d;
  border-left: 0.25em solid #dfe2e5;
}

.MarkdownRenderer_markdown__rQZdQ ul, 
.MarkdownRenderer_markdown__rQZdQ ol {
  padding-left: 2em;
}

.MarkdownRenderer_markdown__rQZdQ table {
  display: block;
  width: 100%;
  overflow: auto;
  border-spacing: 0;
  border-collapse: collapse;
}

.MarkdownRenderer_markdown__rQZdQ table th {
  font-weight: 600;
}

.MarkdownRenderer_markdown__rQZdQ table th, 
.MarkdownRenderer_markdown__rQZdQ table td {
  padding: 6px 13px;
  border: 1px solid #dfe2e5;
}

.MarkdownRenderer_markdown__rQZdQ table tr {
  background-color: #fff;
  border-top: 1px solid #c6cbd1;
}

.MarkdownRenderer_markdown__rQZdQ table tr:nth-child(2n) {
  background-color: #f6f8fa;
}

.MarkdownRenderer_markdown__rQZdQ img {
  max-width: 100%;
  box-sizing: content-box;
  background-color: #fff;
}

/* 暗色主题适配 */
@media (prefers-color-scheme: dark) {
  .MarkdownRenderer_markdown__rQZdQ code {
    background-color: rgba(240, 240, 240, 0.1);
  }
  
  .MarkdownRenderer_markdown__rQZdQ pre {
    background-color: #1e1e1e;
  }
  
  .MarkdownRenderer_markdown__rQZdQ blockquote {
    color: #a0a0a0;
    border-left-color: #4a4a4a;
  }
  
  .MarkdownRenderer_markdown__rQZdQ table th, 
  .MarkdownRenderer_markdown__rQZdQ table td {
    border-color: #4a4a4a;
  }
  
  .MarkdownRenderer_markdown__rQZdQ table tr {
    background-color: transparent;
    border-top-color: #4a4a4a;
  }
  
  .MarkdownRenderer_markdown__rQZdQ table tr:nth-child(2n) {
    background-color: rgba(255, 255, 255, 0.05);
  }
}
/*!*************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./src/styles/ChatBot.module.css ***!
  \*************************************************************************************************************************************************************************************************************************************************************************/
.ChatBot_chatContainer__s7ciV {
  flex: 1 1;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background-color: var(--main-bg);
  color: var(--text-primary);
  position: relative;
  padding: 40px 0;
}

.ChatBot_chatHeader__RGoW1 {
  padding: 0 24px 24px;
  max-width: 800px;
  margin: 0 auto;
  width: 100%;
}

.ChatBot_greeting__6vNq5 {
  font-size: 32px;
  font-weight: 600;
  margin-bottom: 32px;
  color: var(--text-primary);
  text-align: center;
}

.ChatBot_actionButtons__v8wKH {
  display: flex;
  gap: 12px;
  margin-bottom: 32px;
  flex-wrap: wrap;
  justify-content: center;
}

.ChatBot_actionButton__5hLFX {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 20px;
  background-color: var(--hover-bg);
  color: var(--text-primary);
  font-size: 14px;
  cursor: pointer;
  border: none;
  transition: background-color 0.2s;
}

.ChatBot_actionButton__5hLFX:hover {
  background-color: var(--hover-bg-dark);
}

.ChatBot_actionButton__5hLFX svg {
  font-size: 16px;
}

.ChatBot_suggestionList__OPhl4 {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 24px;
  max-width: 730px;
  margin-left: auto;
  margin-right: auto;
}

.ChatBot_suggestionItem__XDBt0 {
  padding: 16px;
  border-radius: 8px;
  background-color: var(--hover-bg);
  color: var(--text-primary);
  cursor: pointer;
  transition: background-color 0.2s;
  border: 1px solid transparent;
}

.ChatBot_suggestionItem__XDBt0:hover {
  background-color: var(--hover-bg-dark);
  border-color: var(--border-color);
}

.ChatBot_chatMessages__Ox1dC {
  flex: 1 1;
  overflow-y: auto;
  padding: 0 15vw 180px; /* 上 左右 下 */
  margin: 0 auto;
  width: 100%;
}

.ChatBot_messageContainer__pWKAP {
  margin-bottom: 24px;
  display: flex;
  flex-direction: column;
  position: relative; /* 添加相对定位，使操作按钮可以相对于此定位 */
}

.ChatBot_userMessage__wvW4S {
  align-self: flex-end;
  background-color: var(--primary-color-light);
  color: var(--text-primary);
  padding: 12px 16px;
  border-radius: 18px 18px 4px 18px;
  max-width: 80%;
  margin-left: auto;
  position: relative;
}

.ChatBot_userMessageTime__20iDx {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 4px;
  text-align: right;
}

.ChatBot_assistantMessage__YZD4S {
  align-self: flex-start;
  background-color: var(--hover-bg);
  color: var(--text-primary);
  padding: 12px 16px;
  border-radius: 18px 18px 18px 4px;
  max-width: 80%;
  margin-right: auto;
  position: relative;
  overflow-wrap: break-word; /* 确保长文本正确换行 */
}

.ChatBot_assistantMessage__YZD4S pre {
  max-width: 100%;
  overflow-x: auto;
  background-color: var(--code-bg, #1e1e1e);
  border-radius: 6px;
  padding: 12px;
  margin: 8px 0;
}

.ChatBot_assistantMessage__YZD4S table {
  border-collapse: collapse;
  width: 100%;
  margin: 16px 0;
}

.ChatBot_assistantMessage__YZD4S th,
.ChatBot_assistantMessage__YZD4S td {
  border: 1px solid var(--border-color);
  padding: 8px;
  text-align: left;
}

.ChatBot_assistantMessage__YZD4S th {
  background-color: var(--hover-bg);
}

/* 修改消息操作按钮的样式，使其适用于用户和助手消息 */
.ChatBot_messageActions__UlfHD {
  display: flex;
  gap: 8px;
  margin-top: 8px;
}

/* 用户消息的操作按钮靠右对齐 */
.ChatBot_userMessage__wvW4S + .ChatBot_userMessageTime__20iDx + .ChatBot_messageActions__UlfHD {
  justify-content: flex-end;
  margin-right: 4px;
}

.ChatBot_actionIcon__tvo_F {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--hover-bg);
  color: var(--text-secondary);
  cursor: pointer;
  transition: all 0.2s;
}

.ChatBot_actionIcon__tvo_F:hover {
  background-color: var(--hover-bg-dark);
  color: var(--text-primary);
}

/* 底部输入区域 - 重新设计为更接近参考图片 */
.ChatBot_inputContainer__pH7Ln {
  /* 定位设置 */
  position: absolute;          /* 改为绝对定位：相对于最近的非static定位祖先元素 */
  bottom: 20px;                /* 距离容器底部20像素 */
  left: 0;                     /* 左边缘与容器左边缘对齐 */
  right: 0;                    /* 右边缘与容器右边缘对齐 */
  
  /* 尺寸和居中设置 */
  margin: 0 auto;              /* 上下边距为0，左右自动，实现水平居中 */
  
  /* 层级和背景设置 */
  z-index: 10;                 /* 保持较高层级 */
  background-color: var(--main-bg); /* 背景色 */
  
  /* 添加宽度设置，确保不会占满整个容器 */
  width: min(1100px, calc(100% - 40px));    /* 宽度为容器宽度减去两侧的间距 */
}


.ChatBot_chatInputWrapper__rE0_0 {
  position: relative;
  border: 1px solid var(--border-color);
  border-radius: 16px;
  background-color: var(--main-bg);
  transition: border-color 0.2s;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  overflow: hidden;
}

.ChatBot_chatInputWrapper__rE0_0:focus-within {
  border-color: var(--primary-color);
}

.ChatBot_contextButtonContainer__LXNkd {
  padding: 10px 16px 4px;
}

.ChatBot_contextButton__i2_iV {
  background: none;
  border: none;
  color: var(--text-secondary);
  cursor: pointer;
  display: flex;
  align-items: center;
  font-size: 14px;
  gap: 4px;
  padding: 6px 10px;
  border-radius: 16px;
  background-color: var(--hover-bg);
  margin-bottom: 4px;
  width: -moz-fit-content;
  width: fit-content;
}

.ChatBot_contextButton__i2_iV:hover {
  background-color: var(--hover-bg-dark);
}

/* 修改 chatInput 的样式，增加默认高度和行高 */
.ChatBot_chatInput__4X3fZ {
  width: 100%;
  border: none;
  background: transparent;
  padding: 8px 16px 16px 16px;
  font-size: 16px;
  color: var(--text-primary);
  resize: none;
  outline: none;
  max-height: 40vh;
  min-height: 60px; /* 增加最小高度 */
  line-height: 1.5; /* 添加行高 */
  overflow-y: auto;
  display: block;
  /* 添加底部内边距，为字符计数留出空间 */
  padding-bottom: 30px;
  font-family:   "Georgia", "Times New Roman", "Playfair Display",serif;
}

.ChatBot_chatInput__4X3fZ::placeholder {
  color: var(--text-secondary);
}

.ChatBot_inputBottomContainer__h4v3S {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px; /* 增加上下内边距 */
  border-top: 1px solid var(--border-color);
  background-color: var(--hover-bg);
}

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

.ChatBot_modelSelector__IXOb_ {
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
}

.ChatBot_modelButton__OhbEK {
  display: flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  color: var(--text-primary);
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 12px;
  font-size: 14px;
}

.ChatBot_modelButton__OhbEK:hover {
  background-color: var(--hover-bg-dark);
}

.ChatBot_modelDropdown__W4I0T {
  position: absolute;
  top: -120px;
  left: 0;
  background-color: var(--main-bg);
  border: 1px solid var(--border-color);
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  width: 180px;
  z-index: 10;
  overflow: hidden;
}

.ChatBot_modelOption__nblbF {
  padding: 10px 12px;
  cursor: pointer;
  transition: background-color 0.2s;
  font-size: 14px;
}

.ChatBot_modelOption__nblbF:hover {
  background-color: var(--hover-bg);
}

.ChatBot_modelOption__nblbF.ChatBot_selected__SxeSI {
  background-color: var(--hover-bg);
  font-weight: 500;
}

.ChatBot_kaiButton__mHkYB {
  display: flex;
  align-items: center;
  gap: 4px;
  background-color: var(--hover-bg-dark);
  border: none;
  color: var(--text-primary);
  cursor: pointer;
  padding: 6px 12px;
  border-radius: 16px;
  font-size: 14px;
}

/* 将 Toggle Hint 移到底部栏中，与模型选择器水平对齐 */
.ChatBot_toggleHint__bvU_n {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--text-secondary);
  margin-left: 16px;
}

.ChatBot_keyboardTag__MvSCr {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 4px;
  border-radius: 4px;
  background-color: var(--hover-bg-dark);
  font-size: 10px;
  margin: 0 2px;
}

.ChatBot_sendButton__PeD0d {
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background-color 0.2s;
}

.ChatBot_sendButton__PeD0d:hover {
  background-color: var(--primary-color-dark);
}

.ChatBot_sendButton__PeD0d:disabled {
  background-color: var(--hover-bg);
  cursor: not-allowed;
}

/* 调整字符计数的位置，增加与文本的间距 */
.ChatBot_characterCount__CNQVA {
  position: absolute;
  bottom: 68px; /* 增加与底部的距离 */
  left: 16px;
  font-size: 12px;
  color: var(--text-secondary);
  background-color: rgba(255, 255, 255, 0.8); /* 添加半透明背景 */
  padding: 0px 6px; /* 添加内边距 */
  border-radius: 4px; /* 添加圆角 */
}

.ChatBot_keyboardShortcut__H2sqI {
  position: absolute;
  bottom: 68px; /* 与字符计数保持一致 */
  right: 16px;
  font-size: 12px;
  color: var(--text-secondary);
  display: flex;
  align-items: center;
  gap: 4px;
  background-color: rgba(255, 255, 255, 0.8); /* 添加半透明背景 */
  padding: 2px 6px; /* 添加内边距 */
  border-radius: 4px; /* 添加圆角 */
}

.ChatBot_keyIcon__UOg6i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 4px;
  border-radius: 4px;
  background-color: var(--hover-bg-dark);
  font-size: 10px;
}

/* 麦克风按钮 */
.ChatBot_micButton__wdzVu {
  background: none;
  border: none;
  color: var(--text-secondary);
  cursor: pointer;
  margin-left: 8px;
  margin-right: 8px;
}

/* 发送按钮使用向上箭头 */
.ChatBot_arrowUpIcon__PdY7E {
  transform: rotate(-90deg);
}

/* 添加复制成功时的样式 */
@keyframes ChatBot_fadeIn__fxzcg {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

.ChatBot_actionIcon__tvo_F svg {
  transition: all 0.2s;
}

/* 复制成功图标的动画 */
.ChatBot_actionIcon__tvo_F:has(svg[data-copied="true"]) {
  color: var(--success-color, #4caf50);
  animation: ChatBot_fadeIn__fxzcg 0.3s ease-in-out;
}

/* 旋转动画 - 用于加载状态的图标 */
@keyframes ChatBot_rotating__ROES4 {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/* 新增：助手消息的加载动画样式 */
.ChatBot_messageLoading__otdAc {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 24px;
}

/* 打字效果动画 */
@keyframes ChatBot_typingAnimation__kkQFS {
  0% { transform: translateY(0px); }
  28% { transform: translateY(-5px); }
  44% { transform: translateY(0px); }
}

/* 思考中的点动画容器 */
.ChatBot_typingIndicator__d0TWi {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  border-radius: 16px;
  background-color: var(--hover-bg);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

/* 思考中的点 */
.ChatBot_typingDot__Gzrfv {
  width: 8px;
  height: 8px;
  background-color: var(--text-secondary);
  border-radius: 50%;
  opacity: 0.7;
  animation: ChatBot_typingAnimation__kkQFS 1.4s infinite ease-in-out;
}

/* 为每个点设置不同的动画延迟 */
.ChatBot_typingDot__Gzrfv:nth-child(1) {
  animation-delay: 0s;
}

.ChatBot_typingDot__Gzrfv:nth-child(2) {
  animation-delay: 0.2s;
}

.ChatBot_typingDot__Gzrfv:nth-child(3) {
  animation-delay: 0.4s;
}

/* 脉冲动画 */
@keyframes ChatBot_pulse__9vp8y {
  0% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.1); opacity: 0.7; }
  100% { transform: scale(1); opacity: 1; }
}

/* 波纹动画 */
@keyframes ChatBot_ripple__kzlZ_ {
  0% { box-shadow: 0 0 0 0 rgba(var(--primary-color-rgb, 0, 120, 212), 0.3); }
  100% { box-shadow: 0 0 0 12px rgba(var(--primary-color-rgb, 0, 120, 212), 0); }
}

/* 渐变背景动画 */
@keyframes ChatBot_gradientShift__7pmyw {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

/* 高级加载动画 - 渐变脉冲 */
.ChatBot_loadingPulse__7lJs1 {
  display: inline-block;
  width: 60px;
  height: 30px;
  border-radius: 15px;
  background: linear-gradient(90deg, 
    var(--hover-bg-dark, #e0e0e0) 0%, 
    var(--hover-bg, #f0f0f0) 50%, 
    var(--hover-bg-dark, #e0e0e0) 100%);
  background-size: 200% 100%;
  animation: ChatBot_gradientShift__7pmyw 2s infinite ease-in-out;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  position: relative;
}

.ChatBot_loadingPulse__7lJs1::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 15px;
  animation: ChatBot_ripple__kzlZ_ 1.5s infinite;
}
