/* ========== 隐藏区 ========== */
.cot,
.foreshadow,
think,
memory-check {
  display: none;
}

/* ========== 主容器 ========== */
.ctn {
  background-color: #faf7f3;
  background-image:
    repeating-linear-gradient(
      0deg,
      transparent,
      transparent 3px,
      rgba(193,168,137,0.016) 3px,
      rgba(193,168,137,0.016) 4px
    ),
    repeating-linear-gradient(
      90deg,
      transparent,
      transparent 3px,
      rgba(193,168,137,0.013) 3px,
      rgba(193,168,137,0.013) 4px
    );
  color: #4a3f35;
  padding: 22px 18px 18px;
  border-radius: 14px;
  line-height: 1.88;
  border: 1px solid rgba(193,168,137,0.18);
  box-shadow:
    0 2px 12px rgba(160,140,110,0.07),
    0 0 0 1px rgba(255,255,255,0.5) inset;
  position: relative;
  overflow: hidden;
}

.ctn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(193,168,137,0.15) 15%,
    rgba(193,168,137,0.35) 30%,
    rgba(201,168,124,0.45) 50%,
    rgba(193,168,137,0.35) 70%,
    rgba(193,168,137,0.15) 85%,
    transparent 100%
  );
  border-radius: 14px 14px 0 0;
}

.ctn::after {
  content: '✿';
  position: absolute;
  bottom: 6px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.6em;
  color: rgba(193,168,137,0.22);
  letter-spacing: 12px;
}

/* ========== 对话标签 ========== */
.ctn q {
  color: #4a5c6e;
  font-style: italic;
}

.ctn q::before {
  content: '\201c';
  color: #7a96a8;
  margin-right: 1px;
  font-size: 1.1em;
}

.ctn q::after {
  content: '\201d';
  color: #7a96a8;
  margin-left: 1px;
  font-size: 1.1em;
}


/* ========== 场景信息头 ========== */
.ctn scene-header {
  display: block;
  padding: 10px 16px 14px;
  margin-bottom: 18px;
  text-align: center;
  font-size: 0.82em;
  color: #9a8e82;
  line-height: 1.75;
  background: linear-gradient(
    180deg,
    rgba(193,168,137,0.04) 0%,
    rgba(193,168,137,0.02) 100%
  );
  border-radius: 10px;
  border: 1px solid rgba(193,168,137,0.09);
  position: relative;
}

.ctn scene-header::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 20%;
  right: 20%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(193,168,137,0.2) 30%,
    rgba(193,168,137,0.25) 50%,
    rgba(193,168,137,0.2) 70%,
    transparent
  );
}

.ctn scene-header p {
  margin: 0;
  letter-spacing: 0.02em;
}

/* ========== 正文区域 ========== */
.ctn text {
  display: block;
  line-height: 1.92;
  padding: 4px 2px 20px;
  margin-bottom: 16px;
  border-bottom: none;
  position: relative;
}

.ctn text::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(193,168,137,0.18) 25%,
    rgba(193,168,137,0.22) 50%,
    rgba(193,168,137,0.18) 75%,
    transparent
  );
}

.ctn text p {
  margin: 0 0 0.85em 0;
  text-indent: 2em;
}

.ctn text p:last-child {
  margin-bottom: 0;
}

/* ========== 折叠面板（状态栏） ========== */
.ctn details {
  margin: 7px 0;
  border: 1px solid rgba(193,168,137,0.14);
  border-radius: 10px;
  overflow: hidden;
  font-size: 0.9em;
  line-height: 1.68;
  color: #544a40;
  background: rgba(255,253,250,0.5);
  transition: box-shadow 0.4s ease, border-color 0.4s ease;
}

.ctn details:hover {
  border-color: rgba(193,168,137,0.25);
  box-shadow: 0 1px 6px rgba(160,140,110,0.06);
}

.ctn details[open] {
  padding-bottom: 6px;
  background: rgba(255,253,250,0.7);
}

.ctn summary {
  padding: 10px 16px;
  cursor: pointer;
  font-weight: 600;
  color: #4a3f35;
  background: linear-gradient(
    180deg,
    rgba(193,168,137,0.05) 0%,
    rgba(193,168,137,0.02) 100%
  );
  transition: background 0.4s ease;
  list-style: none;
  letter-spacing: 0.03em;
  position: relative;
}

.ctn details[open] > summary {
  border-bottom: 1px solid rgba(193,168,137,0.1);
}

.ctn summary::-webkit-details-marker {
  display: none;
}

.ctn summary::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  border-right: 1.5px solid #b09a80;
  border-bottom: 1.5px solid #b09a80;
  transform: rotate(-45deg);
  margin-right: 10px;
  margin-bottom: 1px;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
  vertical-align: middle;
}

.ctn details[open] > summary::before {
  transform: rotate(45deg);
  margin-bottom: 3px;
}

.ctn summary:hover {
  background: linear-gradient(
    180deg,
    rgba(193,168,137,0.09) 0%,
    rgba(193,168,137,0.04) 100%
  );
}

.ctn summary::after {
  content: '·  ·  ·';
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.65em;
  color: rgba(176,148,120,0.25);
  letter-spacing: 1px;
}

/* ========== 状态栏内容美化 ========== */
.ctn details > p {
  margin: 4px 16px;
  padding: 3px 0 3px 14px;
  border-left: 2px solid rgba(193,168,137,0.15);
  transition: border-color 0.3s ease;
}

.ctn details > p:hover {
  border-left-color: rgba(193,168,137,0.35);
}

.ctn details em {
  color: #a09486;
  font-style: normal;
  letter-spacing: 0.04em;
  font-size: 0.92em;
}

.ctn details strong {
  color: #4a3f35;
  font-weight: 600;
  font-size: 1.02em;
}

/* ========== 分隔虚线 ========== */
.ctn details hr {
  border: none;
  border-top: 1px dashed rgba(193,168,137,0.18);
  border-bottom: none;
  height: 0;
  background: transparent;
  box-shadow: none;
  margin: 8px 16px;
}

/* ========== 可选行动美化 ========== */
.ctn .act > p {
  margin: 6px 12px;
  padding: 9px 14px;
  border-radius: 8px;
  border: 1px solid rgba(193,168,137,0.1);
  border-left: 3px solid rgba(168,180,160,0.35);
  background: linear-gradient(
    135deg,
    rgba(250,247,243,0.6) 0%,
    rgba(245,241,236,0.4) 100%
  );
  transition:
    background 0.4s ease,
    border-color 0.4s ease,
    transform 0.25s ease,
    box-shadow 0.4s ease;
}

.ctn .act > p:hover {
  background: linear-gradient(
    135deg,
    rgba(245,241,236,0.8) 0%,
    rgba(240,235,228,0.6) 100%
  );
  border-left-color: rgba(168,196,184,0.55);
  transform: translateX(3px);
  box-shadow: 0 1px 5px rgba(160,140,110,0.06);
}

.ctn .act em {
  color: #8aaa9c;
  font-weight: 700;
  font-style: normal;
  margin-right: 4px;
  font-size: 0.95em;
}

/* ========== 群聊气泡 ========== */
.ctn details p.ml,
.ctn details p.mr {
  position: relative;
  display: block;
  max-width: 78%;
  padding: 8px 12px;
  margin: 6px 14px;
  border-left: none;
  line-height: 1.55;
  word-break: break-word;
  transition: box-shadow 0.3s ease;
}

.ctn details p.ml {
  background: rgba(245,241,236,0.95);
  border: 1px solid rgba(193,168,137,0.1);
  border-radius: 12px 12px 12px 4px;
  margin-right: auto;
  box-shadow: 0 1px 3px rgba(160,140,110,0.05);
}

.ctn details p.ml:hover {
  box-shadow: 0 2px 6px rgba(160,140,110,0.09);
}

.ctn details p.mr {
  background: rgba(200,216,208,0.3);
  border: 1px solid rgba(168,196,184,0.15);
  border-radius: 12px 12px 4px 12px;
  margin-left: auto;
  text-align: right;
  box-shadow: 0 1px 3px rgba(140,160,150,0.05);
}

.ctn details p.mr:hover {
  box-shadow: 0 2px 6px rgba(140,160,150,0.09);
}

.ctn details p.ml > b,
.ctn details p.mr > b {
  display: block;
  font-size: 0.76em;
  font-weight: 600;
  margin-bottom: 3px;
  letter-spacing: 0.03em;
}

.ctn details p.ml > b {
  color: #a09486;
  text-align: left;
}

.ctn details p.mr > b {
  color: #8aaa9c;
  text-align: right;
}

.ctn details p.ml + p.ml,
.ctn details p.mr + p.ml,
.ctn details p.ml + p.mr,
.ctn details p.mr + p.mr {
  margin-top: 4px;
}

/* ========== 记忆滚动区 ========== */
.ctn .scroll-box {
  max-height: 200px;
  overflow-y: auto;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 4px;
}

.ctn .scroll-box::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

.ctn .scroll-box::-webkit-scrollbar-track {
  background: transparent;
}

.ctn .scroll-box::-webkit-scrollbar-thumb {
  background: rgba(193,168,137,0.18);
  border-radius: 4px;
}

.ctn .scroll-box::-webkit-scrollbar-thumb:hover {
  background: rgba(193,168,137,0.35);
}

/* ========== 表格 ========== */
.ctn table {
  min-width: 520px;
  width: 100%;
  border-collapse: collapse;
  font-size: 0.88em;
  line-height: 1.55;
  color: #544a40;
}

.ctn thead tr {
  background: linear-gradient(
    180deg,
    rgba(193,168,137,0.08) 0%,
    rgba(193,168,137,0.03) 100%
  );
}

.ctn th {
  padding: 7px 10px;
  font-weight: 600;
  font-size: 0.88em;
  text-align: left;
  color: #9a8e82;
  border-bottom: 1px solid rgba(193,168,137,0.14);
  white-space: nowrap;
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8f5f1;
  letter-spacing: 0.03em;
}

.ctn td {
  padding: 6px 10px;
  border-bottom: 1px solid rgba(193,168,137,0.06);
  vertical-align: top;
}

.ctn td:first-child {
  white-space: nowrap;
  width: 32px;
  text-align: center;
  color: #b0a498;
}

.ctn td:nth-child(2) {
  white-space: nowrap;
  min-width: 85px;
  font-size: 0.93em;
}

.ctn td:nth-child(3) {
  white-space: nowrap;
  min-width: 70px;
  font-size: 0.93em;
}

.ctn td:last-child {
  min-width: 180px;
  word-break: break-word;
}

.ctn tbody tr:nth-child(even) td {
  background: rgba(193,168,137,0.03);
}

.ctn tbody tr:hover td {
  background: rgba(193,168,137,0.07);
  transition: background 0.3s ease;
}

/* ========== 移动端微调 ========== */
@media (max-width: 480px) {
  .ctn {
    padding: 18px 13px 14px;
    border-radius: 10px;
  }

  .ctn scene-header {
    font-size: 0.8em;
    padding: 8px 12px 12px;
  }

  .ctn details > p {
    margin: 4px 12px;
    padding-left: 12px;
  }

  .ctn details hr {
    margin: 6px 12px;
  }

  .ctn .act > p {
    margin: 5px 8px;
    padding: 7px 11px;
  }

  .ctn summary {
    padding: 9px 13px;
    font-size: 0.95em;
  }

  .ctn summary::after {
    right: 13px;
  }

  .ctn details p.ml,
  .ctn details p.mr {
    max-width: 84%;
    padding: 7px 10px;
    margin: 5px 10px;
  }

  .ctn details p.ml > b,
  .ctn details p.mr > b {
    font-size: 0.74em;
  }
}





































/* ========================================
   【暖象牙·家庭】页面主题
   色彩体系：
   - 底色：#faf7f3（暖白）/ #f5f1ec（象牙）
   - 次底色：#efe9e0（暖灰白）
   - 文字主色：#4a3f35（深栗棕）
   - 文字次色：#8a7e73（暖灰棕）
   - 点缀/边框：#c9a87c（暖杏金）
   - 交互高亮：#b09478（杏棕）
   - 柔粉点缀：#c4a09a（玫瑰灰）
   ======================================== */

/* --- 隐藏顶部颜色装饰条 --- */
[class*="bg-[#F1CBCB]"],
[class*="bg-[#c9e9]"] {
    display: none !important;
}

/* ——— 聊天框：象牙底·亚麻质感 ——— */
.bg-gray-100\/90.relative.inline-block {
    background:
        radial-gradient(ellipse at 20% 30%, rgba(201,168,124,0.05) 0%, transparent 55%),
        radial-gradient(ellipse at 75% 75%, rgba(201,168,124,0.04) 0%, transparent 50%),
        repeating-linear-gradient(
            0deg,
            transparent,
            transparent 3px,
            rgba(193,168,137,0.013) 3px,
            rgba(193,168,137,0.013) 4px
        ),
        repeating-linear-gradient(
            90deg,
            transparent,
            transparent 3px,
            rgba(193,168,137,0.01) 3px,
            rgba(193,168,137,0.01) 4px
        ),
        linear-gradient(180deg, #faf7f3 0%, #f5f1ec 50%, #f2ede6 100%) !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 12px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.6),
        0 2px 10px rgba(160,140,110,0.08) !important;
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
}

/* 聊天框 ::before — 极淡暖色噪点质感 */
.bg-gray-100\/90.relative.inline-block::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: 0.18 !important;
    mix-blend-mode: multiply !important;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cdefs%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3C/defs%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.18'/%3E%3C/svg%3E") !important;
    background-size: 150px 150px !important;
}

/* 聊天框 ::after — 底部柔光装饰 */
.bg-gray-100\/90.relative.inline-block::after {
    content: "" !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 40% !important;
    z-index: 0 !important;
    pointer-events: none !important;
    opacity: 1 !important;
    background: linear-gradient(
        180deg,
        transparent 0%,
        rgba(193,168,137,0.02) 60%,
        rgba(193,168,137,0.04) 100%
    ) !important;
}

/* --- 文本内容 --- */
.markdown-body {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    font-size: 15px !important;
    line-height: 1.78 !important;
    letter-spacing: 0.02em !important;
    position: relative !important;
    z-index: 1 !important;
    background: transparent !important;
    text-shadow: none !important;
}

.markdown-body strong,
.markdown-body b {
    font-weight: bold !important;
    color: #3a3228 !important;
}

.markdown-body em,
.markdown-body i {
    color: #5a5046 !important;
}

.markdown-body blockquote {
    border-left: 3px solid rgba(193,168,137,0.35) !important;
    background: rgba(193,168,137,0.06) !important;
    color: #4a3f35 !important;
    padding: 8px 14px !important;
    margin: 10px 0 !important;
    border-radius: 4px !important;
}

.markdown-body code {
    background: rgba(193,168,137,0.1) !important;
    color: #4a3f35 !important;
    border: 1px solid rgba(193,168,137,0.15) !important;
    border-radius: 4px !important;
    padding: 1px 5px !important;
    font-family: "Courier New", monospace !important;
}

.markdown-body pre {
    background: rgba(193,168,137,0.06) !important;
    border: 1px solid rgba(193,168,137,0.14) !important;
    border-radius: 6px !important;
    padding: 12px !important;
}

.markdown-body pre code {
    background: transparent !important;
    border: none !important;
}

.markdown-body a {
    color: #9a7a60 !important;
    text-decoration: underline !important;
    text-decoration-style: dotted !important;
    text-underline-offset: 3px !important;
    transition: color 0.3s ease !important;
}

.markdown-body a:hover {
    color: #7a5c42 !important;
}

/* --- 底部按钮 --- */
.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary {
    color: #9a8e82 !important;
    font-size: 12px !important;
    transition: color 0.3s ease !important;
}

.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary:hover {
    color: #6a5e52 !important;
}

.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary svg {
    fill: #a09486 !important;
    opacity: 0.7 !important;
    transition: opacity 0.3s ease !important;
}

.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary:hover svg {
    opacity: 1 !important;
}

.MuiTypography-root.MuiTypography-body2.css-6c0gf2 {
    color: #a09486 !important;
    font-size: 11px !important;
    letter-spacing: 0.04em !important;
    opacity: 0.7 !important;
}

.text-orange-500 {
    color: #b09478 !important;
    font-size: 11px !important;
    opacity: 0.7 !important;
}

/* ==============================
   加载动画：温暖的呼吸光点
============================== */
.style_dot-flashing__8L91Q.style_text__zGhNq {
    display: none !important;
}

.flex.items-center.justify-center.w-6.h-5 {
    position: relative !important;
    width: 48px !important;
    height: 32px !important;
    overflow: visible !important;
}

.flex.items-center.justify-center.w-6.h-5::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 48px !important;
    height: 28px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='28' viewBox='0 0 48 28'%3E%3Ccircle cx='10' cy='14' r='3.5' fill='%23c9a87c'%3E%3Canimate attributeName='opacity' values='0.25;0.85;0.25' dur='1.6s' repeatCount='indefinite' begin='0s'/%3E%3Canimate attributeName='r' values='3;4;3' dur='1.6s' repeatCount='indefinite' begin='0s'/%3E%3C/circle%3E%3Ccircle cx='24' cy='14' r='3.5' fill='%23b09478'%3E%3Canimate attributeName='opacity' values='0.25;0.85;0.25' dur='1.6s' repeatCount='indefinite' begin='0.3s'/%3E%3Canimate attributeName='r' values='3;4;3' dur='1.6s' repeatCount='indefinite' begin='0.3s'/%3E%3C/circle%3E%3Ccircle cx='38' cy='14' r='3.5' fill='%23c4a09a'%3E%3Canimate attributeName='opacity' values='0.25;0.85;0.25' dur='1.6s' repeatCount='indefinite' begin='0.6s'/%3E%3Canimate attributeName='r' values='3;4;3' dur='1.6s' repeatCount='indefinite' begin='0.6s'/%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.w-6.h-5::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 48px !important;
    height: 28px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='28' viewBox='0 0 48 28'%3E%3Ccircle cx='7' cy='9' r='1' fill='%23c9a87c' opacity='0.3'%3E%3Canimate attributeName='opacity' values='0;0.45;0' dur='2.2s' repeatCount='indefinite' begin='0.4s'/%3E%3Canimate attributeName='cy' values='8;18;8' dur='2.2s' repeatCount='indefinite' begin='0.4s'/%3E%3C/circle%3E%3Ccircle cx='28' cy='6' r='0.8' fill='%23b09478' opacity='0.25'%3E%3Canimate attributeName='opacity' values='0;0.4;0' dur='2.6s' repeatCount='indefinite' begin='0.9s'/%3E%3Canimate attributeName='cy' values='5;20;5' dur='2.6s' repeatCount='indefinite' begin='0.9s'/%3E%3C/circle%3E%3Ccircle cx='42' cy='7' r='1.1' fill='%23c4a09a' opacity='0.28'%3E%3Canimate attributeName='opacity' values='0;0.42;0' dur='2s' repeatCount='indefinite' begin='0.6s'/%3E%3Canimate attributeName='cy' values='6;19;6' dur='2s' repeatCount='indefinite' begin='0.6s'/%3E%3C/circle%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}

/* ==============================
   顶部栏：象牙暖檐
============================== */
.sticky.w-full.top-0.flex.items-center {
    background: linear-gradient(
        180deg,
        #f5f1ec 0%,
        #faf7f3 40%,
        #f5f1ec 100%
    ) !important;
    border-bottom: 1px solid rgba(193,168,137,0.2) !important;
    box-shadow:
        0 1px 0 0 rgba(193,168,137,0.08),
        0 2px 8px -2px rgba(160,140,110,0.1) !important;
    position: relative !important;
}

.sticky.w-full.top-0.flex.items-center::after {
    content: '' !important;
    position: absolute !important;
    bottom: -1px !important;
    left: 10% !important;
    width: 80% !important;
    height: 1px !important;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(193,168,137,0.18) 20%,
        rgba(193,168,137,0.25) 50%,
        rgba(193,168,137,0.18) 80%,
        transparent 100%
    ) !important;
}

/* 模型选择器 */
#ai-model-selector .group.flex.items-center {
    background: linear-gradient(135deg, #faf7f3 0%, #f2ede6 100%) !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 8px !important;
    padding: 4px 10px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.5),
        0 1px 3px rgba(160,140,110,0.08) !important;
    transition: all 0.3s ease !important;
}

#ai-model-selector .group.flex.items-center:hover {
    background: linear-gradient(135deg, #f2ede6 0%, #ebe5db 100%) !important;
    border-color: rgba(193,168,137,0.32) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.4),
        0 2px 6px rgba(160,140,110,0.12) !important;
}

#ai-model-selector .truncate.text-\[13px\] {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.4px !important;
}

#ai-model-selector .shrink-0.flex.items-center svg {
    color: #b09478 !important;
    opacity: 0.7 !important;
    transition: transform 0.3s ease, opacity 0.3s ease !important;
}

#ai-model-selector .group.flex.items-center:hover svg {
    opacity: 1 !important;
    transform: translateY(1px) !important;
}

/* 顶部栏图标 */
.sticky.w-full.top-0 svg.lucide-clock-8 {
    color: #b09478 !important;
    transition: color 0.3s ease !important;
}

.sticky.w-full.top-0 svg.lucide-clock-8:hover {
    color: #8a7060 !important;
}

.sticky.w-full.top-0 span.MuiBadge-dot.md\:hidden {
    background-color: #c4a09a !important;
    box-shadow: 0 0 0 2px #faf7f3 !important;
}

.sticky.w-full.top-0 svg:has(use[href="#icon-icon-set"]) {
    color: #b09478 !important;
    transition: color 0.3s ease !important;
}

#header-setting-button {
    color: #b09478 !important;
    transition: all 0.3s ease !important;
}

#header-setting-button:hover {
    color: #8a7060 !important;
}

#header-setting-button svg {
    transition: transform 0.4s ease !important;
}

#header-setting-button:hover svg {
    transform: rotate(60deg) !important;
}

/* ——— 开场白选择器 ——— */
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"] {
    background: linear-gradient(180deg, #faf7f3 0%, #f2ede6 100%) !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 8px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.5),
        0 1px 3px rgba(160,140,110,0.06) !important;
    transition: all 0.3s ease !important;
    color: #4a3f35 !important;
}

div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"]:hover {
    background: linear-gradient(180deg, #f2ede6 0%, #ebe5db 100%) !important;
    border-color: rgba(193,168,137,0.32) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.3),
        0 2px 5px rgba(160,140,110,0.1) !important;
}

div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="SlidersH"],
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="ChevronDown"] {
    color: #b09478 !important;
    transition: color 0.3s ease !important;
}

div.flex.items-center.h-9.cursor-pointer.group:hover svg[data-icon="SlidersH"],
div.flex.items-center.h-9.cursor-pointer.group:hover svg[data-icon="ChevronDown"] {
    color: #8a7060 !important;
}

/* ——— 按钮栏 ——— */
#ai-mod-button2 {
    background: transparent !important;
}

#ai-mod-button2 button.MuiButton-root {
    background: linear-gradient(180deg, #faf7f3 0%, #f2ede6 100%) !important;
    color: #4a3f35 !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 8px !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.3px !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.5),
        0 1px 3px rgba(160,140,110,0.08) !important;
    transition: all 0.25s ease !important;
}

#ai-mod-button2 button.MuiButton-root:hover {
    background: linear-gradient(180deg, #f2ede6 0%, #ebe5db 100%) !important;
    border-color: rgba(193,168,137,0.32) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.3),
        0 2px 5px rgba(160,140,110,0.12) !important;
    transform: translateY(-1px) !important;
}

#ai-mod-button2 button.MuiButton-root:active {
    transform: translateY(0px) !important;
    box-shadow:
        inset 0 2px 4px rgba(160,140,110,0.12),
        0 0 1px rgba(160,140,110,0.1) !important;
    background: linear-gradient(180deg, #ebe5db 0%, #e5dfd4 100%) !important;
}

#ai-mod-button2 button.MuiButton-root svg {
    color: #b09478 !important;
    transition: color 0.25s ease !important;
}

#ai-mod-button2 button.MuiButton-root:hover svg {
    color: #8a7060 !important;
}

/* ——— 底部栏 ——— */
.bg-gradient-to-t {
    background: linear-gradient(
        to top,
        #f5f1ec 0%,
        #faf7f3 60%,
        transparent 100%
    ) !important;
}

#ai-chat-bottom-input {
    background: linear-gradient(180deg, #faf7f3 0%, #f5f1ec 100%) !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 10px !important;
    box-shadow:
        inset 0 1px 2px rgba(160,140,110,0.05),
        0 2px 6px rgba(160,140,110,0.07) !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
}

#ai-chat-bottom-input:focus-within {
    border-color: rgba(193,168,137,0.35) !important;
    box-shadow:
        inset 0 1px 2px rgba(160,140,110,0.06),
        0 2px 8px rgba(160,140,110,0.1),
        0 0 0 3px rgba(193,168,137,0.08) !important;
}

#ai-chat-input {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    caret-color: #b09478 !important;
    background: transparent !important;
}

#ai-chat-input::placeholder {
    color: #a09486 !important;
    font-style: italic !important;
    opacity: 0.65 !important;
}

#ai-chat-input::selection {
    background: rgba(193,168,137,0.2) !important;
    color: #3a3228 !important;
}

/* ——— 分页栏 ——— */
.MuiPaginationItem-root {
    color: #6a5e52 !important;
    border-color: rgba(193,168,137,0.2) !important;
    background: #faf7f3 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    transition: all 0.25s ease !important;
    border-radius: 6px !important;
}

.MuiPaginationItem-root:hover {
    background: #f2ede6 !important;
    border-color: rgba(193,168,137,0.32) !important;
    color: #4a3f35 !important;
}

.MuiPaginationItem-root.Mui-selected {
    background: #b09478 !important;
    color: #faf7f3 !important;
    border-color: #9a7e62 !important;
    font-weight: 700 !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.1) !important;
}

.MuiPaginationItem-root.Mui-disabled {
    color: #c4b8aa !important;
    opacity: 0.5 !important;
    background: #faf7f3 !important;
}

.MuiPaginationItem-icon {
    color: #b09478 !important;
}

.MuiStack-root.css-1uwir8f {
    color: #6a5e52 !important;
}

.MuiStack-root.css-1uwir8f .MuiBox-root {
    color: #6a5e52 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
}

.MuiInputBase-input {
    color: #4a3f35 !important;
    border-color: rgba(193,168,137,0.2) !important;
    background: #faf7f3 !important;
}

/* ==============================
   评论区
============================== */
div[class*="w-full"][class*="bg-white"][class*="bottom-0"] {
    background: linear-gradient(
        180deg,
        #faf7f3 0%,
        #f5f1ec 50%,
        #f2ede6 100%
    ) !important;
    border-top: 1px solid rgba(193,168,137,0.18) !important;
}

div.text-lg.font-bold {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    letter-spacing: 0.8px !important;
    position: relative !important;
}

div.text-lg.font-bold::after {
    content: '' !important;
    position: absolute !important;
    bottom: -4px !important;
    left: 0 !important;
    width: 100% !important;
    height: 1px !important;
    background: linear-gradient(
        90deg,
        rgba(193,168,137,0.3) 0%,
        rgba(193,168,137,0.15) 60%,
        transparent 100%
    ) !important;
}

p.MuiTypography-body1.text-grey-600 {
    color: #6a5e52 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
}

span.MuiRating-iconEmpty svg {
    color: #ddd5c8 !important;
}

span.MuiRating-iconFilled svg {
    color: #c9a87c !important;
    filter: drop-shadow(0 1px 1px rgba(193,168,137,0.3)) !important;
}

span.text-orange-500 {
    color: #b09478 !important;
    font-weight: 700 !important;
}

div.flex.flex-col.border-gray-200 {
    border-color: rgba(193,168,137,0.18) !important;
}

textarea.rc-textarea {
    background: #faf7f3 !important;
    color: #4a3f35 !important;
    border: 1px solid rgba(193,168,137,0.2) !important;
    border-radius: 8px !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
}

textarea.rc-textarea:focus {
    border-color: rgba(193,168,137,0.35) !important;
    box-shadow:
        inset 0 1px 2px rgba(160,140,110,0.05),
        0 0 0 3px rgba(193,168,137,0.08) !important;
    outline: none !important;
}

div.bg-gray-100.text-gray-500 {
    background: #f2ede6 !important;
    color: #9a8e82 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
}

div.cursor-pointer.group.flex.items-center.justify-center {
    transition: all 0.3s ease !important;
}

div.cursor-pointer.group.flex.items-center.justify-center:hover {
    transform: scale(1.06) !important;
}

div[data-state="closed"] svg[data-icon="Send03"] {
    color: #b09478 !important;
    transition: color 0.3s ease !important;
}

div.cursor-pointer.group.flex.items-center.justify-center:hover svg[data-icon="Send03"] {
    color: #8a7060 !important;
}

div.style_divider__mW0YX {
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(193,168,137,0.2) 15%,
        rgba(193,168,137,0.25) 50%,
        rgba(193,168,137,0.2) 85%,
        transparent 100%
    ) !important;
    opacity: 0.7 !important;
}

/* 排序按钮 */
button.MuiButton-containedPrimary {
    background: #b09478 !important;
    color: #faf7f3 !important;
    border: 1px solid #9a7e62 !important;
    border-radius: 6px !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.08) !important;
    transition: all 0.25s ease !important;
}

button.MuiButton-containedPrimary:hover {
    background: #a0846a !important;
}

button.MuiButton-outlinedPrimary {
    background: #faf7f3 !important;
    color: #6a5e52 !important;
    border: 1px solid rgba(193,168,137,0.25) !important;
    border-radius: 6px !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    transition: all 0.25s ease !important;
}

button.MuiButton-outlinedPrimary:hover {
    background: #f2ede6 !important;
    border-color: rgba(193,168,137,0.38) !important;
    color: #4a3f35 !important;
}

div.p-3.overflow-y-auto {
    scrollbar-width: thin !important;
    scrollbar-color: rgba(193,168,137,0.25) #faf7f3 !important;
}

/* 评论项 */
div.group.ml-0 {
    transition: background-color 0.3s ease !important;
    border-radius: 6px !important;
}

div.group.ml-0:hover {
    background: rgba(193,168,137,0.06) !important;
}

div.group img.rounded-full {
    border: 1.5px solid rgba(193,168,137,0.25) !important;
    box-shadow: 0 1px 3px rgba(160,140,110,0.08) !important;
    transition: border-color 0.3s ease !important;
}

div.group img.rounded-full:hover {
    border-color: rgba(193,168,137,0.45) !important;
}

div.text-sm.text-grey-600 span.font-bold {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
}

span.text-\[10px\] {
    color: #b09478 !important;
    background: rgba(176,148,120,0.1) !important;
    border-radius: 4px !important;
    padding: 0 4px !important;
}

div.break-all {
    color: #4a3f35 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    line-height: 1.72 !important;
}

div.text-xs.text-grey-600 {
    color: #a09486 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    font-style: italic !important;
}

button.text-gray-400 {
    color: #b0a498 !important;
    transition: color 0.25s ease !important;
}

button.text-gray-400:hover {
    color: #8a7e73 !important;
}

button.text-gray-400 svg {
    transition: transform 0.25s ease !important;
}

button.text-gray-400:hover svg {
    transform: scale(1.12) !important;
}

span.cursor-pointer {
    color: #9a8e82 !important;
    font-family: "Noto Serif SC", "Source Han Serif CN", Georgia, serif !important;
    transition: color 0.25s ease !important;
}

span.cursor-pointer:hover {
    color: #6a5e52 !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
}

div.ml-8.border-l {
    border-color: rgba(193,168,137,0.18) !important;
}

/* ==============================
   移动端适配
============================== */
@media (max-width: 480px) {
    .bg-gray-100\/90.relative.inline-block {
        border-radius: 10px !important;
        box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.5),
            0 1px 6px rgba(160,140,110,0.07) !important;
    }

    .markdown-body {
        font-size: 14px !important;
        line-height: 1.72 !important;
    }

    .flex.items-center.justify-center.w-6.h-5 {
        width: 40px !important;
        height: 26px !important;
    }

    .flex.items-center.justify-center.w-6.h-5::before,
    .flex.items-center.justify-center.w-6.h-5::after {
        width: 40px !important;
        height: 24px !important;
    }
}

/* ==============================
   低动效偏好
============================== */
@media (prefers-reduced-motion: reduce) {
    .flex.items-center.justify-center.w-6.h-5::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='28' viewBox='0 0 48 28'%3E%3Ccircle cx='10' cy='14' r='3.5' fill='%23c9a87c'%3E%3Canimate attributeName='opacity' values='0.4;0.8;0.4' dur='3s' repeatCount='indefinite' begin='0s'/%3E%3C/circle%3E%3Ccircle cx='24' cy='14' r='3.5' fill='%23b09478'%3E%3Canimate attributeName='opacity' values='0.4;0.8;0.4' dur='3s' repeatCount='indefinite' begin='0.5s'/%3E%3C/circle%3E%3Ccircle cx='38' cy='14' r='3.5' fill='%23c4a09a'%3E%3Canimate attributeName='opacity' values='0.4;0.8;0.4' dur='3s' repeatCount='indefinite' begin='1s'/%3E%3C/circle%3E%3C/svg%3E") !important;
    }

    .flex.items-center.justify-center.w-6.h-5::after {
        display: none !important;
    }
}

/* ==============================
   可选增强
============================== */

/* 顶部栏微纹理 */
.sticky.w-full.top-0.flex.items-center::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E") !important;
    pointer-events: none !important;
}

/* 评论项间精致分隔 */
div.group.ml-0 + div.group.ml-0::before {
    content: '' !important;
    display: block !important;
    height: 1px !important;
    margin: 2px 16px !important;
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(193,168,137,0.15) 20%,
        rgba(193,168,137,0.2) 50%,
        rgba(193,168,137,0.15) 80%,
        transparent 100%
    ) !important;
}