.w-full.h-full.max-h-\[70vh\] {
    max-height: 100% !important;
    height: 100% !important;
}
/* ═══ 为什么我的魅魔是个傻子! · 内置CSS（真实DOM精准版） ═══ */
/* 奶油底#fdf6ec 暖橙#ff7a45 葡萄紫#8b5cf6 薄荷#2dd4bf 阳光黄#fbbf24 */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@300;400;500;700&family=Baloo+2:wght@500;700;800&display=swap');

/* ═══ §0 隐藏平台装饰条 ═══ */
[class*="bg-[#F1CBCB]"],
[class*="bg-[#c9e1e9]"] { display: none !important; }

/* ═══ §1 全局背景 ═══ */
.h-screen, #root { background-color: #fdf6ec !important; }

/* ═══ §2 顶部导航栏 ═══ */
.sticky.w-full.top-0.flex.items-center {
  background: #fff !important;
  border-bottom: 2px solid #e8dcc8 !important;
  box-shadow: 0 2px 10px rgba(43,34,51,.06) !important;
}

/* ═══ §3 模型选择器 ═══ */
#ai-model-selector .group.flex.items-center,
#ai-model-selector [class*="bg-grey-100"] {
  background: #fff !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 10px !important;
  transition: border-color .2s !important;
}
#ai-model-selector .group.flex.items-center:hover {
  border-color: #8b5cf6 !important;
}
#ai-model-selector .truncate {
  color: #6d3fd4 !important;
  font-weight: 700 !important;
}
#ai-model-selector svg { color: #8b5cf6 !important; }

/* 顶部设置按钮 + 音乐按钮 */
#header-setting-button svg,
.lucide-music2,
.lucide-clock8 { color: #8b5cf6 !important; }

/* ═══ §4 用户消息气泡 ═══ */
.group.flex.mb-2:not(#ai-chat-answer) .bg-gray-100\/90.relative.inline-block {
  background: #fff !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 18px 18px 4px 18px !important;
  box-shadow: 3px 3px 0 rgba(43,34,51,.08) !important;
}

/* ═══ §5 AI消息气泡 ═══ */
#ai-chat-answer .bg-gray-100\/90.relative.inline-block {
  background: #fffdf5 !important;
  border: 2px solid #8b5cf6 !important;
  border-left: 5px solid #8b5cf6 !important;
  border-radius: 18px 18px 18px 4px !important;
  box-shadow: 3px 3px 0 rgba(139,92,246,.12) !important;
}

/* ═══ §6 消息操作按钮（复制/刷新/编辑/删除/图片/音频）═══ */
/* 这些是 MUI text button，图标用 fill-current 跟随 color */
.MuiButtonBase-root.MuiButton-text.MuiButton-textPrimary {
  color: #8b5cf6 !important;
  background: transparent !important;
  border-radius: 8px !important;
  font-family: 'Noto Sans SC', sans-serif !important;
  transition: background .15s, color .15s !important;
}
.MuiButtonBase-root.MuiButton-text.MuiButton-textPrimary:hover {
  background: rgba(139,92,246,.1) !important;
  color: #6d3fd4 !important;
}
/* 图标可见性强制保证 */
.MuiButtonBase-root.MuiButton-text.MuiButton-textPrimary svg {
  color: currentColor !important;
  fill: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.MuiButtonBase-root.MuiButton-text.MuiButton-textPrimary svg use {
  fill: currentColor !important;
}

/* 模型消耗信息文字 */
.MuiTypography-root.MuiTypography-body2 { color: #a08a70 !important; }
.text-orange-500 { color: #e85d2a !important; }

/* ═══ §7 底部功能栏（Mod/流式/评论/回到底部/隐藏按钮）═══ */
#ai-mod-button2 .MuiButton-outlined,
#ai-mod-button.MuiButton-outlined,
#toggle-sub-buttons {
  background: #fff !important;
  color: #8b5cf6 !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 20px !important;
  font-family: 'Noto Sans SC', sans-serif !important;
  font-weight: 500 !important;
  transition: all .15s !important;
}
#ai-mod-button2 .MuiButton-outlined:hover,
#ai-mod-button.MuiButton-outlined:hover,
#toggle-sub-buttons:hover {
  background: rgba(139,92,246,.08) !important;
  border-color: #8b5cf6 !important;
  color: #6d3fd4 !important;
}
#ai-mod-button2 .MuiButton-outlined svg,
#toggle-sub-buttons svg {
  color: currentColor !important;
  fill: currentColor !important;
  opacity: 1 !important;
}

/* ═══ §8 底部输入区容器 ═══ */
#ai-chat-bottom-input {
  background: #fff !important;
  border-top: 2px solid #e8dcc8 !important;
  box-shadow: 0 -4px 16px rgba(43,34,51,.06) !important;
}
.bg-gradient-to-t.from-white {
  background: transparent !important;
}

/* 输入框 */
#ai-chat-input,
textarea.rc-textarea {
  background: #fdf6ec !important;
  color: #2b2233 !important;
  caret-color: #ff7a45 !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 14px !important;
  font-family: 'Noto Sans SC', sans-serif !important;
  font-size: 14px !important;
  transition: border-color .2s, box-shadow .2s !important;
}
#ai-chat-input:focus,
textarea.rc-textarea:focus {
  border-color: #8b5cf6 !important;
  box-shadow: 0 0 0 3px rgba(139,92,246,.12) !important;
  outline: none !important;
}
::placeholder { color: #b8a888 !important; opacity: 1 !important; }

/* 字数统计 */
.flex.items-center.px-1.h-5.rounded-md.bg-gray-100 {
  background: rgba(139,92,246,.08) !important;
  color: #6d3fd4 !important;
}

/* ═══ §9 发送按钮 ═══ */
#ai-send-button {
  background: linear-gradient(135deg,#ff7a45,#e85d2a) !important;
  border-radius: 10px !important;
  transition: transform .1s, filter .1s !important;
}
#ai-send-button:hover {
  filter: brightness(1.08) !important;
  transform: translateY(-1px) !important;
}
#ai-send-button:active { transform: translateY(1px) !important; }
#ai-send-button svg {
  color: #fff !important;
  fill: #fff !important;
  opacity: 1 !important;
}

/* ═══ §10 Markdown 正文 ═══ */
.markdown-body {
  color: #2b2233 !important;
  font-family: 'Noto Sans SC', system-ui, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.95 !important;
  letter-spacing: .3px !important;
}
.markdown-body strong { color: #e85d2a !important; font-weight: 700 !important; }
.markdown-body em { color: #8b5cf6 !important; font-style: italic !important; }
.markdown-body blockquote {
  border-left: 4px solid #ff7a45 !important;
  background: rgba(255,122,69,.06) !important;
  color: #5a4020 !important;
  padding: 12px 16px !important;
  border-radius: 0 12px 12px 0 !important;
  margin: 14px 0 !important;
  font-style: italic !important;
}
.markdown-body hr {
  border: none !important;
  height: 2px !important;
  background: linear-gradient(to right,transparent,#e8dcc8,#8b5cf6,#ff7a45,#e8dcc8,transparent) !important;
  margin: 20px 0 !important;
}
.markdown-body h1 { font-family:'Baloo 2',cursive !important; font-size: 22px !important; color: #2b2233 !important; border-bottom: 3px solid #8b5cf6 !important; padding-bottom: 8px !important; }
.markdown-body h2 { font-family:'Baloo 2',cursive !important; font-size: 18px !important; color: #6d3fd4 !important; }
.markdown-body h3 { font-size: 15px !important; color: #e85d2a !important; font-weight: 700 !important; }
.markdown-body ul, .markdown-body ol { padding-left: 22px !important; }
.markdown-body li::marker { color: #ff7a45 !important; }
.markdown-body a { color: #8b5cf6 !important; text-decoration: none !important; border-bottom: 1px dashed #8b5cf6 !important; }
.markdown-body a:hover { color: #ff7a45 !important; border-bottom-color: #ff7a45 !important; }

/* ═══ §11 Details 折叠容器 ═══ */
.markdown-body details {
  background: #fff !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 14px !important;
  margin: 12px 0 !important;
  display: block !important;
  width: 100% !important;
  overflow: hidden !important;
}
.markdown-body details[open] {
  border-color: #8b5cf6 !important;
  box-shadow: 0 4px 14px rgba(139,92,246,.1) !important;
}
.markdown-body details > summary {
  background: linear-gradient(135deg,rgba(139,92,246,.07),rgba(255,122,69,.05)) !important;
  color: #2b2233 !important;
  padding: 12px 16px 12px 36px !important;
  position: relative !important;
  border-bottom: 1px solid #e8dcc8 !important;
  cursor: pointer !important;
  font-weight: 700 !important;
  font-family:'Baloo 2','Noto Sans SC',cursive !important;
  font-size: 14px !important;
  list-style: none !important;
  user-select: none !important;
}
.markdown-body details > summary::before {
  content: '' !important;
  position: absolute !important;
  left: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  width: 0 !important; height: 0 !important;
  border-left: 6px solid #8b5cf6 !important;
  border-top: 4px solid transparent !important;
  border-bottom: 4px solid transparent !important;
  transition: transform .2s !important;
}
.markdown-body details[open] > summary::before { transform: translateY(-50%) rotate(90deg) !important; }
.markdown-body details > summary::-webkit-details-marker { display: none !important; }
.markdown-body details > *:not(summary) { padding: 14px 16px !important; }

/* ═══ §12 代码块 ═══ */
.markdown-body pre {
  background: #faf5ea !important;
  border: 2px solid #e8dcc8 !important;
  border-left: 4px solid #ff7a45 !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
}
.markdown-body pre code { background: transparent !important; color: #3a2a1a !important; }
.markdown-body :not(pre) > code { background: rgba(255,122,69,.1) !important; color: #e85d2a !important; padding: 2px 6px !important; border-radius: 5px !important; }

/* ═══ §13 表格 ═══ */
.markdown-body table { border-collapse: collapse !important; width: 100% !important; border: 2px solid #e8dcc8 !important; border-radius: 10px !important; overflow: hidden !important; }
.markdown-body th { background: linear-gradient(135deg,#8b5cf6,#6d3fd4) !important; color: #fff !important; padding: 10px 14px !important; }
.markdown-body td { padding: 10px 14px !important; border-bottom: 1px solid #e8dcc8 !important; }
.markdown-body tr:nth-child(even) td { background: rgba(139,92,246,.04) !important; }

/* ═══ §14 图片 ═══ */
.markdown-body img {
  border-radius: 12px !important;
  border: 2px solid #e8dcc8 !important;
  box-shadow: 4px 4px 0 rgba(43,34,51,.08) !important;
  max-width: 100% !important;
}

/* ═══ §15 侧边栏 ═══ */
.shadow-lg.border-r.border-gray-200 {
  background: #fff !important;
  border-right: 2px solid #e8dcc8 !important;
}
.conversation-text { color: #6a5f72 !important; }

/* ═══ §16 分页 ═══ */
.MuiPaginationItem-root { color: #6a5f72 !important; }
.MuiPaginationItem-root.Mui-selected {
  background: #8b5cf6 !important;
  color: #fff !important;
}

/* ═══ §17 评论区评分星星 ═══ */
.MuiRating-iconFilled svg { color: #fbbf24 !important; }
.MuiRating-iconEmpty svg { color: #e8dcc8 !important; }

/* ═══ §18 通用 MUI 实心按钮（排序等）═══ */
.MuiButton-contained.MuiButton-containedPrimary {
  background: linear-gradient(135deg,#8b5cf6,#6d3fd4) !important;
  color: #fff !important;
  border-radius: 8px !important;
}
.MuiButton-contained.MuiButton-containedPrimary:hover {
  filter: brightness(1.08) !important;
}

/* 涟漪颜色 */
.MuiTouchRipple-root { color: #8b5cf6 !important; }

/* ═══ §19 滚动条 ═══ */
::-webkit-scrollbar { width: 7px !important; height: 7px !important; }
::-webkit-scrollbar-track { background: #fdf6ec !important; }
::-webkit-scrollbar-thumb { background: linear-gradient(180deg,#8b5cf6,#ff7a45) !important; border-radius: 4px !important; }
::-webkit-scrollbar-thumb:hover { background: linear-gradient(180deg,#6d3fd4,#e85d2a) !important; }

/* ═══ §20 文字选中 ═══ */
::selection { background: rgba(255,122,69,.25) !important; color: #2b2233 !important; }

/* ═══ §21 移动端 ═══ */
@media (max-width: 480px) {
  .markdown-body { font-size: 14px !important; line-height: 1.85 !important; }
  .markdown-body details > summary { padding: 10px 14px 10px 30px !important; font-size: 13px !important; }
}
@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* ═══════════════════════════════════════
   §A 艾露露专属输出容器美化（呼吸感增强）
   ═══════════════════════════════════════ */

/* ── 伪思考区 ── */
.markdown-body .elu-think {
  background: repeating-linear-gradient(
    -45deg,
    rgba(139,92,246,.04),
    rgba(139,92,246,.04) 10px,
    rgba(139,92,246,.07) 10px,
    rgba(139,92,246,.07) 20px
  ) !important;
  border: 1.5px dashed #c4a8f0 !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  margin: 4px 0 18px !important;
  color: #7a6a9e !important;
  font-size: 13.5px !important;
  font-style: italic !important;
  line-height: 2 !important;
  position: relative !important;
}
.markdown-body .elu-think::before {
  content: '艾露露的小脑袋瓜正在转……' !important;
  display: block !important;
  font-style: normal !important;
  font-family: 'Baloo 2','Noto Sans SC',cursive !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  color: #a88fd8 !important;
  margin-bottom: 10px !important;
  padding-bottom: 8px !important;
  border-bottom: 1px dashed rgba(139,92,246,.25) !important;
}

/* ── 正文叙事区 ── */
.markdown-body .elu-text {
  background: rgba(255,253,245,.6) !important;
  border: 1px solid #f0e6d4 !important;
  border-radius: 16px !important;
  padding: 20px 22px !important;
  margin: 0 0 18px !important;
  line-height: 2.05 !important;
  color: #2b2233 !important;
  font-size: 15px !important;
}

/* ── 魅魔碎碎念（带头像） ── */
.markdown-body .elu-mutter {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  background: linear-gradient(135deg, rgba(255,122,69,.06), rgba(251,191,36,.08)) !important;
  border: 2px solid #ffd9a8 !important;
  border-radius: 18px !important;
  padding: 16px 18px !important;
  margin: 0 0 18px !important;
  position: relative !important;
  box-shadow: 3px 3px 0 rgba(255,122,69,.1) !important;
}
.markdown-body .elu-mutter .elu-avatar {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 3px solid #ff7a45 !important;
  box-shadow: 0 0 12px rgba(255,122,69,.35) !important;
  margin: 0 !important;
}
.markdown-body .elu-mutter .elu-mutter-body {
  flex: 1 !important;
  padding-top: 2px !important;
}
.markdown-body .elu-mutter .elu-mutter-title {
  font-family: 'Baloo 2','Noto Sans SC',cursive !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #e85d2a !important;
  letter-spacing: .5px !important;
  margin-bottom: 8px !important;
}
.markdown-body .elu-mutter .elu-mutter-text {
  font-size: 13.5px !important;
  line-height: 1.95 !important;
  color: #6a5240 !important;
  font-style: italic !important;
}

/* ── 记忆锚点 ── */
.markdown-body details.elu-memo {
  background: #fff !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 14px !important;
  margin: 0 0 14px !important;
  overflow: hidden !important;
}
.markdown-body details.elu-memo > summary {
  background: linear-gradient(135deg, rgba(45,212,191,.1), rgba(139,92,246,.06)) !important;
  color: #2b2233 !important;
  padding: 13px 16px 13px 36px !important;
  position: relative !important;
  cursor: pointer !important;
  font-family: 'Baloo 2','Noto Sans SC',cursive !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  list-style: none !important;
  border-bottom: 1px solid #e8dcc8 !important;
}
.markdown-body details.elu-memo > summary::before {
  content: '' !important;
  position: absolute !important;
  left: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  width: 0 !important; height: 0 !important;
  border-left: 6px solid #2dd4bf !important;
  border-top: 4px solid transparent !important;
  border-bottom: 4px solid transparent !important;
  transition: transform .2s !important;
}
.markdown-body details.elu-memo[open] > summary::before { transform: translateY(-50%) rotate(90deg) !important; }
.markdown-body details.elu-memo > summary::-webkit-details-marker { display: none !important; }
.markdown-body details.elu-memo .memo-sec {
  padding: 12px 16px !important;
  margin: 0 !important;
  border-bottom: 1px dashed #eee2d0 !important;
  font-size: 13px !important;
  line-height: 2 !important;
  color: #5a4f62 !important;
}
.markdown-body details.elu-memo .memo-sec:last-child { border-bottom: none !important; }
.markdown-body details.elu-memo .memo-sec b {
  display: block !important;
  color: #2dd4bf !important;
  font-size: 12px !important;
  margin-bottom: 6px !important;
  letter-spacing: .5px !important;
}

/* ── 状态面板 ── */
.markdown-body details.elu-status {
  background: #fff !important;
  border: 2px solid #e8dcc8 !important;
  border-radius: 14px !important;
  margin: 0 0 14px !important;
  overflow: hidden !important;
}
.markdown-body details.elu-status > summary {
  background: linear-gradient(135deg, rgba(139,92,246,.1), rgba(255,122,69,.06)) !important;
  color: #2b2233 !important;
  padding: 13px 16px 13px 36px !important;
  position: relative !important;
  cursor: pointer !important;
  font-family: 'Baloo 2','Noto Sans SC',cursive !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  list-style: none !important;
  border-bottom: 1px solid #e8dcc8 !important;
}
.markdown-body details.elu-status > summary::before {
  content: '' !important;
  position: absolute !important;
  left: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  width: 0 !important; height: 0 !important;
  border-left: 6px solid #8b5cf6 !important;
  border-top: 4px solid transparent !important;
  border-bottom: 4px solid transparent !important;
  transition: transform .2s !important;
}
.markdown-body details.elu-status[open] > summary::before { transform: translateY(-50%) rotate(90deg) !important; }
.markdown-body details.elu-status > summary::-webkit-details-marker { display: none !important; }
/* 状态行：留白+分隔，消除压抑感 */
.markdown-body details.elu-status .stat-row {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  padding: 11px 18px !important;
  margin: 0 !important;
  border-bottom: 1px dashed #eee2d0 !important;
  font-size: 13.5px !important;
  line-height: 1.7 !important;
}
.markdown-body details.elu-status .stat-row:last-child { border-bottom: none !important; }
.markdown-body details.elu-status .stat-k {
  min-width: 44px !important;
  flex-shrink: 0 !important;
  color: #8b5cf6 !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  background: rgba(139,92,246,.08) !important;
  border-radius: 6px !important;
  padding: 3px 8px !important;
  text-align: center !important;
}
.markdown-body details.elu-status .stat-v {
  flex: 1 !important;
  color: #4a3f52 !important;
}

/* ── 接下来（选项） ── */
.markdown-body details.elu-next {
  background: #fff !important;
  border: 2px solid #ffd9a8 !important;
  border-radius: 14px !important;
  margin: 0 0 6px !important;
  overflow: hidden !important;
}
.markdown-body details.elu-next > summary {
  background: linear-gradient(135deg, rgba(255,122,69,.12), rgba(251,191,36,.1)) !important;
  color: #2b2233 !important;
  padding: 13px 16px 13px 36px !important;
  position: relative !important;
  cursor: pointer !important;
  font-family: 'Baloo 2','Noto Sans SC',cursive !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  list-style: none !important;
  border-bottom: 1px solid #f0e0c8 !important;
}
.markdown-body details.elu-next > summary::before {
  content: '' !important;
  position: absolute !important;
  left: 14px !important; top: 50% !important;
  transform: translateY(-50%) !important;
  width: 0 !important; height: 0 !important;
  border-left: 6px solid #ff7a45 !important;
  border-top: 4px solid transparent !important;
  border-bottom: 4px solid transparent !important;
  transition: transform .2s !important;
}
.markdown-body details.elu-next[open] > summary::before { transform: translateY(-50%) rotate(90deg) !important; }
.markdown-body details.elu-next > summary::-webkit-details-marker { display: none !important; }
/* 选项条：宽松间距+悬停高亮 */
.markdown-body details.elu-next .next-item {
  padding: 13px 18px !important;
  margin: 0 !important;
  border-bottom: 1px dashed #f0e0c8 !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #5a4020 !important;
  transition: background .15s, padding-left .15s !important;
  cursor: pointer !important;
}
.markdown-body details.elu-next .next-item:last-child { border-bottom: none !important; }
.markdown-body details.elu-next .next-item:hover {
  background: rgba(255,122,69,.07) !important;
  padding-left: 24px !important;
  color: #e85d2a !important;
}

/* ── 移动端呼吸感保持 ── */
@media (max-width: 480px) {
  .markdown-body .elu-mutter { gap: 10px !important; padding: 14px !important; }
  .markdown-body .elu-mutter .elu-avatar { width: 46px !important; height: 46px !important; min-width: 46px !important; }
  .markdown-body .elu-text { padding: 16px !important; }
  .markdown-body details.elu-status .stat-row,
  .markdown-body details.elu-next .next-item { padding: 10px 14px !important; }
}