/* ═══ B平台加载动画适配（自动注入）═══ */
.flex.items-center.justify-center.size-6 { opacity: 1 !important; }
.flex.items-center.justify-center.size-6 > .flex.gap-2 { display: none !important; }
.is-assistant.w-fit { width: 100% !important; }
.is-assistant > .border.border-muted:has(.flex.items-center.justify-center.size-6) {
  width: 100% !important; background: transparent !important;
  border: none !important; padding: 0 !important;
}
.is-assistant .space-y-3:has(.flex.items-center.justify-center.size-6) {
  display: flex; justify-content: center; width: 100%;
}

/* ═══ B平台表格修正（自动注入）═══ */
.rili-markdown-renderer table { display:table!important; table-layout:auto!important; width:100%!important; border-collapse:collapse!important; }
.rili-markdown-renderer table caption { display:table-caption!important; caption-side:top!important; text-align:center!important; padding:8px!important; }
.rili-markdown-renderer thead { display:table-header-group!important; }
.rili-markdown-renderer tbody { display:table-row-group!important; }
.rili-markdown-renderer tr { display:table-row!important; }
.rili-markdown-renderer th, .rili-markdown-renderer td { display:table-cell!important; }

/* ═══ B平台按钮组保护（自动注入 — 防止按钮消失）═══
   原理：B平台消息操作按钮结构为：
   .flex.items-center.gap-1.ml-auto (hover显隐包装)
     └── .bg-muted.rounded.flex.p-0.5 (按钮组容器)
           └── button.rounded-full.size-7 (单个按钮)
   以下规则使用高specificity + !important确保按钮
   不被任何转换后/透传的CSS规则意外隐藏
   ═══════════════════════════════════════════════ */
/* 按钮组容器保护 */
.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\.5,
.is-user .bg-muted.rounded.flex.p-0\.5,
.is-assistant .bg-muted.rounded.flex.p-0\.5 {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: visible !important;
  position: relative !important;
  width: auto !important;
  height: auto !important;
  max-height: none !important;
  pointer-events: auto !important;
  clip: auto !important;
  clip-path: none !important;
}
/* 单个按钮保护 */
.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\.5 > button,
.is-user .bg-muted.rounded.flex.p-0\.5 > button,
.is-assistant .bg-muted.rounded.flex.p-0\.5 > button {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  position: relative !important;
  clip: auto !important;
  clip-path: none !important;
}
/* hover显隐包装层保护 — 仅保留B平台原生的opacity过渡 */
.flex.items-center.gap-1.ml-auto.md\:opacity-0.group-hover\:opacity-100 {
  visibility: visible !important;
  display: flex !important;
  pointer-events: auto !important;
  overflow: visible !important;
}
/* 操作行保护 */
.flex.w-full.items-center.justify-between.gap-2.px-2 {
  display: flex !important;
  visibility: visible !important;
  overflow: visible !important;
}

/* ═══ B平台顶部栏适配说明（自动注入）═══
   A: div.sticky > div.flex.justify-between
      ├── 左侧空区
      ├── #ai-model-selector (居中)
      └── 右侧工具(设置按钮等)
   B: <header.flex.justify-between>
      ├── #nav-left (侧边栏开关)
      ├── #nav-middle (可能为空)
      └── #nav-right (通知/主题/语言)
   B平台模型按钮不在header内，选择器:
   button:has(> .flex-1.truncate.text-left)
   ═══════════════════════════════════════ */
header.flex.justify-between { position: relative; overflow: visible; }

/* ════════════════════════════════════════════════════════
   万象维度 · 界面主题 (Omni-Verse Interface Theme)
   整合版 — 包含正文区域、折叠块、语义标签、状态栏、
   任务类型、记忆区、NPC分割线、行动推荐、思维链隐藏、
   以及完整的聊天界面组件与动效。
   ════════════════════════════════════════════════════════ */

/* ===== 全局基础样式 & 自定义标签 ===== */

/* 正文区域 (自定义标签) */
text {
  display: block;
  padding: 10px 2px;
  line-height: 2.05;
  font-size: 15.5px;
  color: #e4e0da;
}
text p {
  margin: 16px 0;
  text-indent: 2em;
}
text d {
  color: #f2cc68;
}
text it {
  color: #92a8ba;
  font-style: italic;
}
text sfx {
  color: #5ec4b6;
  font-weight: bold;
  font-style: italic;
  letter-spacing: 1.5px;
}
text key {
  color: #c49cff;
  font-weight: 600;
}

/* 语义标签 (内联元素) */
tag {
  display: inline;
  color: #6b7394;
  font-size: 13px;
  font-weight: 600;
}
stat {
  display: inline;
  color: #4ecdc4;
  font-weight: 700;
  font-size: 14.5px;
}
name {
  display: inline;
  color: #f5d778;
  font-weight: 700;
  font-size: 16px;
  text-shadow: 0 0 8px rgba(245, 215, 120, 0.15);
}
skill {
  display: inline;
  color: #b99aff;
  font-weight: 600;
}
item {
  display: inline;
  color: #ffab40;
  font-weight: 600;
}
rank {
  display: inline;
  font-weight: 700;
  font-style: italic;
}

/* 任务类型 */
mainq {
  display: inline;
  color: #ff6b6b;
  font-weight: 700;
}
sideq {
  display: inline;
  color: #ffd93d;
  font-weight: 700;
}
personalq {
  display: inline;
  color: #6bcb77;
  font-weight: 700;
}

/* 记忆区标题 */
mh {
  display: inline;
  color: #4ecdc4;
  font-weight: 700;
  font-size: 13.5px;
  letter-spacing: 1px;
}

/* 思维链隐藏 */
think {
  display: none;
}

/* ===== 折叠块 (details/summary) ===== */
details {
  margin: 5px 0;
  border: 1px solid #2e3348;
  border-radius: 10px;
  background: linear-gradient(160deg, #12122a, #1b2240 60%, #181832);
  overflow: hidden;
  transition: border-color 0.35s, box-shadow 0.35s;
}
details[open] {
  border-color: #3e4568;
  box-shadow: 0 2px 20px rgba(68, 120, 180, 0.07);
}
summary {
  display: flex;
  align-items: center;
  padding: 10px 16px;
  font-size: 15px;
  font-weight: 700;
  color: #d8cebc;
  letter-spacing: 0.5px;
  cursor: pointer;
  background: linear-gradient(90deg, #171740, #212158);
  border-bottom: 1px solid transparent;
  transition: background 0.3s;
  list-style: none;
  user-select: none;
}
summary::-webkit-details-marker {
  display: none;
}
summary::after {
  content: '›';
  margin-left: auto;
  font-size: 20px;
  color: #4ecdc4;
  display: inline-block;
  transition: transform 0.35s;
}
details[open] > summary {
  border-bottom-color: #2e3348;
}
details[open] > summary::after {
  transform: rotate(90deg);
}
summary:hover {
  background: linear-gradient(90deg, #212150, #2d2d66);
}

/* ===== 状态栏内容区 (块元素) ===== */
scene, chara, npclist, world, quest, memory, actions {
  display: block;
  padding: 6px 0;
}
scene p, chara p, npclist p, world p, quest p, actions p {
  margin: 3px 0;
  padding: 3px 14px;
  font-size: 14px;
  color: #bfc4d8;
  line-height: 1.75;
}

/* 记忆区段落 (覆盖前面 memory 内 p 的样式) */
memory p {
  margin: 3px 0;
  padding: 3px 14px;
  font-size: 13px;
  color: #8890a8;
  line-height: 1.7;
}

/* NPC分割线 */
npclist hr {
  border: none;
  border-top: 1px dashed #2e3660;
  margin: 10px 14px;
}

/* 行动推荐 (特殊样式) */
actions p {
  padding: 7px 14px;
  margin: 4px 8px;
  border-radius: 6px;
  border-left: 3px solid #4ecdc4;
  background: rgba(78, 205, 196, 0.03);
  transition: all 0.25s;
  cursor: default;
}
actions p:hover {
  background: rgba(78, 205, 196, 0.09);
  border-left-color: #7ee8e0;
  padding-left: 20px;
}

/* ===== 移除顶部颜色条 ===== */
[class*="bg-[#F1CBCB]"],
[class*="bg-[#c9e1e9]"] {
  display: none !important;
}

/* ===== 聊天框统一样式 ===== */
.is-user > .border.border-muted,
.is-assistant > .border.border-muted {
  background: linear-gradient(165deg, #0e1025 0%, #151838 40%, #1a1545 100%) !important;
  border: 1px solid #252a4a !important;
  border-radius: 16px !important;
  box-shadow: 
    0 2px 16px rgba(0, 0, 0, 0.35),
    0 0 1px rgba(78, 205, 196, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.03) !important;
  isolation: isolate;
  overflow: hidden !important;
  transition: border-color 0.4s, box-shadow 0.4s !important;
}
.is-user > .border.border-muted,
.is-assistant > .border.border-muted:hover {
  border-color: #3a4070 !important;
  box-shadow:
    0 4px 24px rgba(0, 0, 0, 0.4),
    0 0 12px rgba(78, 205, 196, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
}

/* 输入聊天框单独样式 (非答案容器内的) */
.is-user > .border.border-muted {
  background: linear-gradient(165deg, #12102a 0%, #1a1640 40%, #1e1450 100%) !important;
  border-color: #302a55 !important;
}

/* 聊天框背景动效 (伪元素) */
.is-user > .border.border-muted,
.is-assistant > .border.border-muted::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.5 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cdefs%3E%3CradialGradient id='a' cx='30%25' cy='30%25' r='60%25'%3E%3Cstop offset='0%25' stop-color='%234ecdc4' stop-opacity='0.08'%3E%3Canimate attributeName='stop-opacity' values='0.08;0.14;0.08' dur='7s' repeatCount='indefinite'/%3E%3C/stop%3E%3Cstop offset='100%25' stop-color='transparent'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='120' cy='120' r='200' fill='url(%23a)'%3E%3Canimate attributeName='cx' values='120;160;100;120' dur='12s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='120;90;150;120' dur='10s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") !important;
  background-size: cover !important;
}
.is-user > .border.border-muted,
.is-assistant > .border.border-muted::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.4 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cdefs%3E%3CradialGradient id='b' cx='70%25' cy='70%25' r='55%25'%3E%3Cstop offset='0%25' stop-color='%23c49cff' stop-opacity='0.06'%3E%3Canimate attributeName='stop-opacity' values='0.06;0.11;0.06' dur='9s' repeatCount='indefinite'/%3E%3C/stop%3E%3Cstop offset='100%25' stop-color='transparent'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='280' cy='280' r='180' fill='url(%23b)'%3E%3Canimate attributeName='cx' values='280;260;300;280' dur='14s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='280;300;260;280' dur='11s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") !important;
  background-size: cover !important;
}

/* ===== 文本内容 (markdown) ===== */
.rili-markdown-renderer {
  color: #e4e0da !important;
  font-size: 15.5px !important;
  line-height: 2 !important;
  font-family: 'Noto Serif SC', 'Source Han Serif CN', 'PingFang SC', 'Microsoft YaHei', serif !important;
  z-index: 1 !important;
  position: relative !important;
  background: transparent !important;
}

/* ===== 顶部栏 ===== */
header.flex.justify-between {
  background: linear-gradient(180deg, #0c0e20 0%, #111430 100%) !important;
  border-bottom: 1px solid #1e2245 !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3) !important;
}
#nav-middle .group.flex.items-center {
  background: rgba(78, 205, 196, 0.06) !important;
  border: 1px solid #2a3055 !important;
  border-radius: 10px !important;
  padding: 4px 10px !important;
  transition: border-color 0.3s, background 0.3s !important;
}
#nav-middle .group.flex.items-center:hover {
  border-color: #4ecdc4 !important;
  background: rgba(78, 205, 196, 0.1) !important;
}
#nav-middle button:has(> .flex-1.truncate.text-left) .flex-1.truncate.text-left {
  color: #c8cce0 !important;
  font-weight: 600 !important;
}
#nav-middle .shrink-0.flex.items-center svg {
  color: #4ecdc4 !important;
  transition: transform 0.3s !important;
}
header.flex.justify-between.w-full.top-0 svg.lucide-clock-8 {
  color: #8890a8 !important;
  transition: color 0.3s !important;
}
header.flex.justify-between.w-full.top-0 svg.lucide-clock-8:hover {
  color: #4ecdc4 !important;
}
header.flex.justify-between.w-full.top-0 span.MuiBadge-dot.md\:hidden {
  background-color: #ff6b6b !important;
  box-shadow: 0 0 6px rgba(255, 107, 107, 0.5) !important;
}
#nav-right button {
  color: #8890a8 !important;
  transition: color 0.3s !important;
}
#nav-right button:hover {
  color: #4ecdc4 !important;
}
#nav-right button svg {
  transition: transform 0.3s !important;
}
#nav-right button:hover svg {
  transform: rotate(30deg) !important;
}

/* ===== 底部栏 ===== */
.bg-gradient-to-t {
  background: linear-gradient(to top, #0c0e20 60%, transparent 100%) !important;
}
#ai-chat-bottom-input {
  background: linear-gradient(135deg, #111430, #181c42) !important;
  border: 1px solid #252a4a !important;
  border-radius: 14px !important;
  box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.2) !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
}
#ai-chat-bottom-input:focus-within {
  border-color: #4ecdc4 !important;
  box-shadow: 0 0 20px rgba(78, 205, 196, 0.08) !important;
}
#ai-chat-input {
  background: transparent !important;
  color: #e4e0da !important;
  font-size: 15px !important;
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif !important;
  caret-color: #4ecdc4 !important;
}
#ai-chat-input::placeholder {
  color: #4a5070 !important;
  font-style: italic !important;
}
#ai-chat-input::selection {
  background: rgba(78, 205, 196, 0.25) !important;
  color: #ffffff !important;
}

/* ===== 底部按钮 ===== */
.bg-muted.rounded.flex.p-0\.5 > button.rounded-full.size-7{
  color: #6b7394 !important;
  border-radius: 8px !important;
  transition: color 0.3s, background 0.3s !important;
}
.bg-muted.rounded.flex.p-0\.5 > button.rounded-full.size-7{
  color: #4ecdc4 !important;
  background: rgba(78, 205, 196, 0.08) !important;
}
/* 模型名称 */
.flex.items-center.gap-2.text-xs.font-mono.text-muted-foreground {
  color: #4a5070 !important;
  font-size: 11px !important;
}
/* Token消耗 */
/* [Token消耗hover逻辑转换未启用]
.text-orange-500 {
  color: #ffab40 !important;
  font-size: 11px !important;
}
*/

/* ===== 加载动画 (自定义环形) ===== */
.flex.items-center.justify-center.size-6 > .flex.gap-2 {
  display: none !important;
}
.flex.items-center.justify-center.size-6 {
  position: relative !important;
  width: 36px !important;
  height: 36px !important;
}
.flex.items-center.justify-center.size-6::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 28px !important;
  height: 28px !important;
  transform: translate(-50%, -50%) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Ccircle cx='14' cy='14' r='11' fill='none' stroke='%234ecdc4' stroke-width='2' stroke-dasharray='20 50' stroke-linecap='round' opacity='0.9'%3E%3CanimateTransform attributeName='transform' type='rotate' from='0 14 14' to='360 14 14' dur='1s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='14' cy='14' r='6' fill='none' stroke='%23c49cff' stroke-width='1.5' stroke-dasharray='12 30' stroke-linecap='round' opacity='0.7'%3E%3CanimateTransform attributeName='transform' type='rotate' from='360 14 14' to='0 14 14' dur='1.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='14' cy='14' r='2' fill='%234ecdc4' opacity='0.6'%3E%3Canimate attributeName='opacity' values='0.6;1;0.6' dur='1.2s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2;2.8;2' dur='1.2s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
}
.flex.items-center.justify-center.size-6::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 36px !important;
  height: 36px !important;
  transform: translate(-50%, -50%) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='16' fill='none' stroke='%234ecdc4' stroke-width='0.5' opacity='0.2'%3E%3Canimate attributeName='r' values='16;17;16' dur='2s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0.2;0.35;0.2' dur='2s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
}

/* ===== 开场白选择器 ===== */
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"] {
  background: linear-gradient(135deg, #151838, #1a1d45) !important;
  border: 1px solid #2a3055 !important;
  border-radius: 10px !important;
  transition: border-color 0.3s, box-shadow 0.3s !important;
}
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"]:hover {
  border-color: #4ecdc4 !important;
  box-shadow: 0 0 10px rgba(78, 205, 196, 0.08) !important;
}
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="SlidersH"] {
  color: #4ecdc4 !important;
}
div.flex.items-center.h-9.cursor-pointer.group svgbutton:has(> .flex-1.truncate.text-left) svg {
  color: #6b7394 !important;
}

/* ===== 按钮栏 (ai-mod-button2) ===== */
#ai-mod-button2 {
  background: transparent !important;
}
#ai-mod-button2 button.MuiButton-root {
  background: linear-gradient(135deg, #171a3a, #1e2250) !important;
  border: 1px solid #2a3055 !important;
  border-radius: 10px !important;
  color: #bfc4d8 !important;
  font-size: 13px !important;
  transition: all 0.3s !important;
}
#ai-mod-button2 button.MuiButton-root:hover {
  border-color: #4ecdc4 !important;
  color: #4ecdc4 !important;
  background: linear-gradient(135deg, #1a1f45, #222860) !important;
  box-shadow: 0 0 12px rgba(78, 205, 196, 0.1) !important;
}
#ai-mod-button2 button.MuiButton-root svg {
  color: inherit !important;
  transition: transform 0.3s !important;
}
#ai-mod-button2 button.MuiButton-root:hover svg {
  transform: scale(1.15) !important;
}

/* ===== 分页栏 (Pagination) ===== */
.MuiPaginationItem-root {
  color: #6b7394 !important;
  border-color: #2a3055 !important;
  background: rgba(17, 20, 48, 0.6) !important;
  transition: all 0.3s !important;
}
.MuiPaginationItem-root:hover {
  color: #4ecdc4 !important;
  border-color: #4ecdc4 !important;
  background: rgba(78, 205, 196, 0.08) !important;
}
.MuiPaginationItem-root.Mui-selected {
  color: #0e1025 !important;
  background: linear-gradient(135deg, #4ecdc4, #3ab8b0) !important;
  border-color: #4ecdc4 !important;
  font-weight: 700 !important;
  box-shadow: 0 0 10px rgba(78, 205, 196, 0.25) !important;
}
.MuiPaginationItem-root.Mui-disabled {
  color: #2e3348 !important;
  border-color: #1e2245 !important;
  opacity: 0.5 !important;
}
.MuiPaginationItem-icon {
  color: inherit !important;
}
.flex.w-full.items-center.justify-between.gap-2.px-2.css-1uwir8f {
  background: transparent !important;
}
.flex.w-full.items-center.justify-between.gap-2.px-2.css-1uwir8f .MuiBox-root {
  color: #6b7394 !important;
  font-size: 13px !important;
}
.MuiInputBase-input {
  color: #e4e0da !important;
  background: rgba(17, 20, 48, 0.6) !important;
  border: 1px solid #2a3055 !important;
  border-radius: 6px !important;
  transition: border-color 0.3s !important;
}
.MuiInputBase-input:focus {
  border-color: #4ecdc4 !important;
}

/* ===== 评论区 ===== */
div[class*="w-full"][class*="bg-white"][class*="bottom-0"] {
  background: linear-gradient(180deg, #0e1025, #111430) !important;
}
div.text-lg.font-bold {
  color: #d8cebc !important;
  letter-spacing: 0.5px !important;
}
p.MuiTypography-body1.text-grey-600 {
  color: #6b7394 !important;
}
span.MuiRating-iconEmpty svg {
  color: #2e3348 !important;
}
span.MuiRating-iconFilled svg {
  color: #f5d778 !important;
  filter: drop-shadow(0 0 4px rgba(245, 215, 120, 0.3)) !important;
}
/* [Token消耗hover逻辑转换未启用]
span.text-orange-500 {
  color: #f5d778 !important;
  font-weight: 600 !important;
}
*/
div.flex.flex-col.border-gray-200 {
  border-color: #252a4a !important;
}
textarea.rc-textarea {
  background: rgba(17, 20, 48, 0.8) !important;
  color: #e4e0da !important;
  border: 1px solid #252a4a !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif !important;
  caret-color: #4ecdc4 !important;
  transition: border-color 0.3s !important;
}
textarea.rc-textarea:focus {
  border-color: #4ecdc4 !important;
  box-shadow: 0 0 12px rgba(78, 205, 196, 0.06) !important;
}
div.bg-gray-100.text-gray-500 {
  color: #4a5070 !important;
  background: transparent !important;
}
div.cursor-pointer.group.flex.items-center.justify-center {
  transition: transform 0.3s !important;
}
div.cursor-pointer.group.flex.items-center.justify-center:hover {
  transform: scale(1.1) !important;
}
div[data-state="closed"] svg[data-icon="Send03"] {
  color: #4ecdc4 !important;
  transition: color 0.3s, filter 0.3s !important;
}
div[data-state="closed"] svg[data-icon="Send03"]:hover {
  filter: drop-shadow(0 0 6px rgba(78, 205, 196, 0.4)) !important;
}
div.style_divider__mW0YX {
  background: linear-gradient(90deg, transparent, #2e3348, transparent) !important;
  height: 1px !important;
}

/* 排序按钮 */
button.MuiButton-containedPrimary,
button.MuiButton-outlinedPrimary {
  border-radius: 8px !important;
  font-size: 12px !important;
  transition: all 0.3s !important;
}
button.MuiButton-containedPrimary {
  background: linear-gradient(135deg, #4ecdc4, #3ab8b0) !important;
  color: #0e1025 !important;
  font-weight: 700 !important;
  border: none !important;
  box-shadow: 0 0 8px rgba(78, 205, 196, 0.2) !important;
}
button.MuiButton-outlinedPrimary {
  background: transparent !important;
  color: #6b7394 !important;
  border: 1px solid #2a3055 !important;
}
button.MuiButton-outlinedPrimary:hover {
  color: #4ecdc4 !important;
  border-color: #4ecdc4 !important;
  background: rgba(78, 205, 196, 0.06) !important;
}

/* 评论列表 */
div.p-3.overflow-y-auto {
  scrollbar-width: thin !important;
  scrollbar-color: #2a3055 transparent !important;
}
div.group.ml-0 {
  border-bottom: 1px solid #1a1e3a !important;
  transition: background 0.3s !important;
}
div.group.ml-0:hover {
  background: rgba(78, 205, 196, 0.02) !important;
}
div.group img.rounded-full {
  border: 2px solid #252a4a !important;
  transition: border-color 0.3s !important;
}
div.group.ml-0:hover img.rounded-full {
  border-color: #4ecdc4 !important;
}
div.text-sm.text-grey-600 span.font-bold {
  color: #d8cebc !important;
}
span.text-\[10px\] {
  color: #4ecdc4 !important;
  font-weight: 600 !important;
}
div.break-all {
  color: #bfc4d8 !important;
  line-height: 1.75 !important;
}
div.text-xs.text-grey-600 {
  color: #4a5070 !important;
}
button.text-gray-400 {
  color: #4a5070 !important;
  transition: color 0.3s !important;
}
button.text-gray-400:hover {
  color: #ff6b6b !important;
}
button.text-gray-400 svg {
  transition: transform 0.3s !important;
}
button.text-gray-400:hover svg {
  transform: scale(1.2) !important;
}
span.cursor-pointer {
  color: #6b7394 !important;
  transition: color 0.3s !important;
}
span.cursor-pointer:hover {
  color: #4ecdc4 !important;
}
div.ml-8.border-l {
  border-color: #252a4a !important;
}

/* ===== 移动端适配 ===== */
@media (max-width: 480px) {
  .is-user > .border.border-muted,
.is-assistant > .border.border-muted {
    border-radius: 12px !important;
  }
  .rili-markdown-renderer {
    font-size: 14.5px !important;
    line-height: 1.9 !important;
  }
  .flex.items-center.justify-center.size-6 {
    width: 30px !important;
    height: 30px !important;
  }
  .flex.items-center.justify-center.size-6::before {
    width: 22px !important;
    height: 22px !important;
  }
  .flex.items-center.justify-center.size-6::after {
    width: 30px !important;
    height: 30px !important;
  }
  #ai-chat-bottom-input {
    border-radius: 10px !important;
  }
}

/* ===== 低动效模式 ===== */
@media (prefers-reduced-motion: reduce) {
  .is-user > .border.border-muted,
.is-assistant > .border.border-muted::before,
  .is-user > .border.border-muted,
.is-assistant > .border.border-muted::after {
    opacity: 0.25 !important;
  }
  .is-user > .border.border-muted,
.is-assistant > .border.border-muted:hover {
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.35) !important;
  }
}