/* ═══ 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;
}

/* ═══════════════════════════════════════ */
/* 玄幻修仙·羊皮纸古卷风格 代码块美化    */
/* ═══════════════════════════════════════ */
/* 代码块整体容器 - 羊皮纸底色 */
.rili-markdown-renderer pre {
  background: linear-gradient(
    135deg,
    #f5e6c8 0%,
    #f0dbb5 25%,
    #e8d0a0 50%,
    #f2ddb8 75%,
    #f5e6c8 100%
  ) !important;
  border: 2px solid #c9a96e !important;
  border-radius: 12px !important;
  box-shadow:
    0 4px 16px rgba(139, 109, 56, 0.15),
    inset 0 0 30px rgba(201, 169, 110, 0.1) !important;
  position: relative !important;
  overflow: visible !important;
  margin: 16px 0 !important;
}
/* 羊皮纸边缘纹理效果 */
.rili-markdown-renderer pre::before {
  content: '◈';
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 18px;
  color: #c9a96e;
  background: linear-gradient(135deg, #f5e6c8, #f0dbb5);
  padding: 0 8px;
  z-index: 2;
}
/* 头部栏 - 卷轴标题栏样式 */
.rili-markdown-renderer pre > div > div.flex.justify-between.h-8,
.rili-markdown-renderer pre > div > div.border-b {
  background: linear-gradient(
    90deg,
    rgba(169, 130, 70, 0.15) 0%,
    rgba(201, 169, 110, 0.25) 50%,
    rgba(169, 130, 70, 0.15) 100%
  ) !important;
  border-bottom: 1px solid rgba(169, 130, 70, 0.4) !important;
  border-radius: 10px 10px 0 0 !important;
}
/* 语言标签 - 修仙卷轴标识 */
.rili-markdown-renderer pre > div > div.flex.justify-between > div.text-\[13px\],
.rili-markdown-renderer pre > div > div.flex.justify-between > div:first-child {
  color: #8b6d38 !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
  font-family: 'FangSong', 'STFangsong', serif !important;
}
/* 语言标签前添加卷轴图标 */
.rili-markdown-renderer pre > div > div.flex.justify-between > div.text-\[13px\]::before,
.rili-markdown-renderer pre > div > div.flex.justify-between > div:first-child::before {
  content: '📜 ';
  font-size: 12px;
}
/* 复制按钮图标颜色 */
.rili-markdown-renderer pre svg.lucide-copy,
.rili-markdown-renderer pre div[data-tooltip-id^="copy-tooltip"] > svg {
  color: #8b6d38 !important;
}
/* 复制按钮 hover */
.rili-markdown-renderer pre .group:hover svg.lucide-copy,
.rili-markdown-renderer pre div[data-tooltip-id^="copy-tooltip"]:hover > svg {
  color: #6b4f20 !important;
}
/* 代码内容区域 - 覆盖内联背景色 */
.rili-markdown-renderer pre > div > div[node] {
  background: transparent !important;
  color: #4a3520 !important;
  padding: 16px 16px 16px 14px !important;
}
/* 代码元素文字颜色统一 */
.rili-markdown-renderer pre code[class^="language-"] {
  color: #4a3520 !important;
  font-family: 'FangSong', 'STFangsong', 'Courier New', monospace !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}
/* 语法高亮色调统一为仙侠暖色系 */
.rili-markdown-renderer pre code[class^="language-"] > span {
  color: #5a3d1a !important;
}
/* 注释类 - 淡化处理 */
.rili-markdown-renderer pre code span[style*="color: rgb(147"] ,
.rili-markdown-renderer pre code span[style*="color: rgb(106, 115"] ,
.rili-markdown-renderer pre code span[style*="color:#6a737d"],
.rili-markdown-renderer pre code span[style*="color: rgb(149, 152"] {
  color: #a08860 !important;
  font-style: italic !important;
}
/* 关键词/标题类 - 金色强调 */
.rili-markdown-renderer pre code span[style*="color: rgb(215, 58"],
.rili-markdown-renderer pre code span[style*="color: rgb(0, 92"],
.rili-markdown-renderer pre code span[style*="color:#d73a49"],
.rili-markdown-renderer pre code span[style*="color:#005cc5"] {
  color: #8b5e14 !important;
  font-weight: bold !important;
}
/* 字符串类 - 朱砂红 */
.rili-markdown-renderer pre code span[style*="color: rgb(3, 47, 98"],
.rili-markdown-renderer pre code span[style*="color: rgb(102, 153"],
.rili-markdown-renderer pre code span[style*="color:#032f62"],
.rili-markdown-renderer pre code span[style*="color:#669"] {
  color: #a0522d !important;
}
/* 无语言标识的纯代码块 */
.rili-markdown-renderer pre > code[node] {
  background: transparent !important;
  color: #4a3520 !important;
  font-family: 'FangSong', 'STFangsong', 'Courier New', monospace !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  display: block !important;
  padding: 16px 14px !important;
}
/* 代码块底部装饰线 */
.rili-markdown-renderer pre::after {
  content: '━━━ ✦ ━━━';
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 11px;
  color: #c9a96e;
  background: linear-gradient(135deg, #f5e6c8, #f0dbb5);
  padding: 0 12px;
  letter-spacing: 2px;
}
/* ═══════════════════════════════════════ */
/* 移动端适配                              */
/* ═══════════════════════════════════════ */
@media (max-width: 768px) {
  .rili-markdown-renderer pre {
    border-radius: 8px !important;
    margin: 12px 0 !important;
  }
  .rili-markdown-renderer pre code[class^="language-"],
  .rili-markdown-renderer pre > code[node] {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }
  .rili-markdown-renderer pre::before {
    font-size: 14px;
    top: -10px;
  }
  .rili-markdown-renderer pre::after {
    font-size: 9px;
    bottom: -8px;
  }
}