/* ============ 全局容器与基调 ============ */
ai {
  display: block;
  max-width: 100%;
  padding: 14px 10px;
  background:
    radial-gradient(ellipse at top left, rgba(168,50,50,0.04), transparent 60%),
    radial-gradient(ellipse at bottom right, rgba(139,115,85,0.06), transparent 60%),
    repeating-linear-gradient(90deg, transparent 0 2px, rgba(139,115,85,0.015) 2px 3px),
    linear-gradient(180deg, #f4ecd8, #ede2c8);
  color: #2c2418;
  font-family: "Songti SC", "STSong", "SimSun", Georgia, serif;
  font-size: 14px;
  line-height: 1.7;
  border: 1px solid #c9b896;
  border-radius: 2px;
  box-shadow: 
    inset 0 0 40px rgba(139,115,85,0.08),
    0 2px 8px rgba(44,36,24,0.12);
  position: relative;
  overflow: hidden;
}

ai::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; height: 4px;
  background: linear-gradient(90deg, #a83232 0%, #8b2828 50%, #a83232 100%);
  z-index: 2;
}

/* ============ 抬头 ============ */
ai hd {
  display: block;
  padding: 10px 12px 12px;
  margin-bottom: 12px;
  background: linear-gradient(180deg, rgba(255,255,255,0.4), transparent);
  border-bottom: 2px double #a83232;
  position: relative;
}

ai hd row {
  display: block;
  font-size: 13px;
  color: #5c4a32;
  letter-spacing: 0.5px;
  margin-bottom: 3px;
}

ai hd cal {
  display: inline-block;
  margin-right: 6px;
}

ai vw {
  display: inline-block;
  margin-top: 6px;
  padding: 3px 12px;
  background: #2c2418;
  color: #f4ecd8;
  font-size: 11px;
  letter-spacing: 2px;
  border-radius: 1px;
  font-family: "Courier New", monospace;
}

ai hd stamp {
  position: absolute;
  top: 8px;
  right: 10px;
  padding: 4px 10px;
  border: 1.5px solid #a83232;
  color: #a83232;
  font-size: 11px;
  font-family: "Courier New", monospace;
  letter-spacing: 1px;
  transform: rotate(3deg);
  opacity: 0.75;
}

/* ============ 正文 ============ */
ai text {
  display: block;
  padding: 12px 14px;
  margin: 0 4px 14px;
  background: 
    repeating-linear-gradient(180deg, transparent 0 27px, rgba(168,50,50,0.08) 27px 28px),
    linear-gradient(180deg, #fdf8eb, #faf2dc);
  border-left: 3px solid #a83232;
  border-right: 1px solid #d4c4a0;
  box-shadow: inset 0 0 20px rgba(139,115,85,0.04);
}

ai text p {
  margin: 0 0 8px;
  text-indent: 2em;
  font-size: 14.5px;
  line-height: 1.85;
  color: #2c2418;
}

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

/* ============ 视角切换 ============ */
ai[view="debt"] [view="vip"] { display: none !important; }
ai[view="vip"] [view="debt"] { display: none !important; }
ai[view="debt"] details[view="vip"] { display: none !important; }
ai[view="vip"] details[view="debt"] { display: none !important; }

/* ============ ⭐ 错落网格布局 - 核心改动 ============ */
ai details[type="iou"],
ai details[type="quest"],
ai details[type="warn"],
ai details[type="psych"],
ai details[type="love"],
ai details[type="choice"] {
  display: inline-block;
  vertical-align: top;
  margin: 6px 4px;
}

ai details[type="iou"] { width: calc(58% - 12px); }
ai details[type="quest"] { width: calc(42% - 12px); }
ai details[type="warn"] { width: calc(45% - 12px); }
ai details[type="psych"] { width: calc(55% - 12px); }
ai details[type="love"] { width: calc(100% - 12px); }
ai details[type="choice"] { width: calc(100% - 12px); }

ai details[type="idcard"],
ai details[type="report"],
ai details[type="live"],
ai details[type="vipcard"],
ai details[type="sticky"],
ai details[type="scroll"] {
  display: block;
  margin: 10px 4px;
}

/* ============ Details 通用基础 ============ */
ai details {
  position: relative;
  transition: all 0.3s ease;
}

ai details summary {
  list-style: none;
  cursor: pointer;
  user-select: none;
  padding: 8px 12px;
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
  position: relative;
  transition: all 0.25s;
}

ai details summary::-webkit-details-marker { display: none; }
ai details summary::marker { content: ""; }

ai summary ico {
  font-size: 16px;
  filter: drop-shadow(0 1px 0 rgba(0,0,0,0.15));
}

ai summary tag {
  margin-left: auto;
  font-size: 10px;
  padding: 2px 7px;
  font-family: "Courier New", monospace;
  letter-spacing: 1px;
  font-weight: normal;
  border-radius: 1px;
}

/* ===================================================
   【1】角色档案 - 横置宽卡 + 真人立绘
   =================================================== */
ai details[type="idcard"] {
  background: linear-gradient(135deg, #fefcf5, #f5ecd5);
  border: 1px solid #8b7355;
  border-radius: 4px;
  box-shadow: 
    0 1px 0 #fff inset,
    0 3px 8px rgba(44,36,24,0.15);
}

ai details[type="idcard"] summary {
  background: linear-gradient(90deg, #2c4a6b, #3a5d80);
  color: #f4ecd8;
  border-radius: 3px 3px 0 0;
}

ai details[type="idcard"] summary tag {
  background: #f4ecd8;
  color: #2c4a6b;
}

ai details[type="idcard"] summary::after {
  content: "▼";
  position: absolute;
  right: 70px;
  font-size: 10px;
  transition: transform 0.3s;
}

ai details[type="idcard"][open] summary::after { transform: rotate(180deg); }

ai idcard {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 14px;
  padding: 14px 14px 16px;
  position: relative;
  animation: slideDown 0.4s ease;
  min-height: 200px;
}

/* ⭐ 真人立绘图片 - 优化移动端显示 */
ai idcard photo {
  display: block;
  width: 130px;
  height: 200px;
  background-image: url('https://iili.io/C3KbSgs.png');
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  background-color: #e8dcc0;
  border: 2px solid #8b7355;
  border-radius: 2px;
  box-shadow: 
    inset 0 0 8px rgba(0,0,0,0.2),
    0 2px 4px rgba(0,0,0,0.15);
  font-size: 0;
  position: relative;
  flex-shrink: 0;
}

ai idcard photo::after {
  content: "证件照";
  position: absolute;
  bottom: -16px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 10px;
  color: #8b7355;
  letter-spacing: 2px;
  white-space: nowrap;
}

ai idcard info {
  display: block;
  font-size: 13px;
  padding-right: 50px;
  min-width: 0;
}

ai idcard info d {
  display: flex;
  padding: 4px 0;
  border-bottom: 1px dotted #c9b896;
}

ai idcard info d::before {
  content: attr(k);
  display: inline-block;
  min-width: 65px;
  color: #8b7355;
  font-size: 12px;
  flex-shrink: 0;
}

ai idcard hr {
  border: none;
  border-top: 1px dashed #a83232;
  margin: 4px 0;
}

ai idcard chop {
  position: absolute;
  bottom: 14px;
  right: 14px;
  width: 48px;
  height: 48px;
  border: 2.5px solid #a83232;
  color: #a83232;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: bold;
  font-family: "STKaiti", "KaiTi", serif;
  transform: rotate(-12deg);
  opacity: 0.85;
  border-radius: 2px;
  background: rgba(255,255,255,0.3);
}

/* ===================================================
   【2】着装报告 - 双栏图鉴式
   =================================================== */
ai details[type="report"] {
  background: #fdfaf0;
  border: 1px solid #c9b896;
  border-left: 4px solid #6b8e6b;
}

ai details[type="report"] summary {
  background: linear-gradient(180deg, #f0e8d0, #e5dabb);
  color: #2c4a2c;
  border-bottom: 1px dashed #8b7355;
}

ai details[type="report"] summary tag {
  background: #6b8e6b;
  color: #fdfaf0;
}

ai details[type="report"] summary::after {
  content: "📋";
  margin-left: 6px;
  transition: transform 0.3s;
}

ai details[type="report"][open] summary::after { transform: rotate(15deg); }

ai report {
  display: block;
  padding: 10px 12px;
  animation: unfurl 0.4s ease;
  transform-origin: top;
}

ai rhead {
  display: block;
  text-align: center;
  font-size: 13px;
  letter-spacing: 4px;
  color: #6b8e6b;
  padding-bottom: 6px;
  margin-bottom: 8px;
  border-bottom: 1.5px solid #6b8e6b;
  font-weight: bold;
}

ai report sec {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 12px;
}

ai report sec hr {
  grid-column: 1 / -1;
}

ai report row {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 6px;
  padding: 4px 4px;
  border-bottom: 1px dotted #d4c4a0;
  font-size: 12px;
  align-items: start;
}

ai report row[note] {
  grid-column: 1 / -1;
  background: linear-gradient(90deg, rgba(168,50,50,0.05), transparent);
  border-left: 2px solid #a83232;
  padding-left: 8px;
  margin-top: 4px;
  grid-template-columns: 80px 1fr;
}

ai report row lbl {
  color: #5c4a32;
  font-weight: bold;
  font-size: 11px;
  padding-top: 1px;
}

ai report row val { color: #2c2418; font-size: 12px; }

ai report row[note] lbl {
  font-size: 12px;
}

ai report row[note] val {
  font-family: "STKaiti", "KaiTi", cursive;
  color: #8b2828;
  font-style: italic;
  font-size: 13px;
}

ai val[expose="low"] { color: #5c7c5c; }
ai val[expose="mid"] { color: #c97a3a; font-weight: 500; }
ai val[expose="high"] { color: #a83232; font-weight: bold; }

ai val[arouse] { font-weight: 500; }
ai val[arouse="0"], ai val[arouse="10"], ai val[arouse="20"] { color: #5c5c5c; }
ai val[arouse="30"], ai val[arouse="40"], ai val[arouse="50"] { color: #c97a3a; }
ai val[arouse="60"], ai val[arouse="70"] { color: #d44a4a; }
ai val[arouse="80"], ai val[arouse="90"], ai val[arouse="100"] { color: #a83232; text-shadow: 0 0 4px rgba(168,50,50,0.3); }

ai report hr {
  border: none;
  border-top: 1px dashed #a83232;
  margin: 6px 0;
}

/* ===================================================
   【3】欠条 - 方形票据
   =================================================== */
ai details[type="iou"] {
  background:
    radial-gradient(ellipse at 50% 0%, rgba(168,50,50,0.06), transparent 60%),
    linear-gradient(180deg, #f0e2c0, #e8d4a8);
  border: 1px solid #a08555;
  box-shadow: 
    inset 0 0 30px rgba(139,90,40,0.15),
    0 2px 6px rgba(44,36,24,0.2);
  transform: rotate(-0.5deg);
}

ai details[type="iou"] summary {
  background: linear-gradient(90deg, #8b2828, #a83232 50%, #8b2828);
  color: #f4ecd8;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
  font-size: 13px;
}

ai details[type="iou"] summary tag {
  background: #f4ecd8;
  color: #a83232;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 14px;
  padding: 1px 8px;
  border: 1px solid #a83232;
}

ai details[type="iou"] summary::after {
  content: "📜";
  transition: transform 0.5s;
}

ai details[type="iou"][open] summary::after { transform: rotate(-180deg) scale(1.2); }

ai iou {
  display: block;
  padding: 12px 14px 50px;
  position: relative;
  animation: paperUnfold 0.5s ease;
}

ai ihead {
  display: block;
  text-align: center;
  font-size: 18px;
  letter-spacing: 12px;
  font-weight: bold;
  font-family: "STKaiti", "KaiTi", serif;
  color: #2c2418;
  padding-bottom: 6px;
  margin-bottom: 8px;
  border-bottom: 2px solid #8b2828;
  text-indent: 12px;
}

ai itxt {
  display: block;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 12px;
  line-height: 1.9;
  text-indent: 2em;
  margin-bottom: 6px;
}

ai itxt u {
  text-decoration: none;
  border-bottom: 1.5px solid #2c2418;
  padding: 0 4px;
  font-weight: bold;
}

ai bignum {
  display: block;
  text-align: center;
  margin: 8px 0;
  padding: 6px;
  background: rgba(168,50,50,0.05);
  border-top: 1px dashed #a83232;
  border-bottom: 1px dashed #a83232;
}

ai bignum b {
  display: block;
  font-size: 22px;
  color: #8b2828;
  font-weight: bold;
  letter-spacing: 1px;
  font-family: Georgia, serif;
  text-shadow: 1px 1px 0 rgba(255,255,255,0.5);
}

ai bignum cn {
  display: block;
  font-family: "STKaiti", "KaiTi", serif;
  color: #5c4a32;
  font-size: 11px;
  margin-top: 2px;
  letter-spacing: 1px;
}

ai iou irow {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  margin: 6px 0;
}

ai iou icell {
  display: flex;
  justify-content: space-between;
  padding: 4px 8px;
  background: rgba(255,255,255,0.3);
  border-left: 2px solid #8b7355;
  font-size: 11px;
}

ai iou icell k {
  color: #8b7355;
  font-size: 11px;
}

ai iou icell v {
  color: #2c2418;
  font-weight: bold;
}

ai iou bar[type="iou"] {
  display: block;
  height: 12px;
  background: rgba(139,40,40,0.1);
  border: 1px solid #8b2828;
  margin: 8px 0;
  position: relative;
  font-size: 0;
}

ai iou bar[type="iou"] b {
  display: block;
  height: 100%;
  background: 
    repeating-linear-gradient(45deg, #a83232 0 6px, #8b2828 6px 12px);
  transition: width 0.6s;
}

ai iou bar[type="iou"] pt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 10px;
  color: #f4ecd8;
  font-weight: bold;
  font-family: "Courier New", monospace;
  text-shadow: 1px 1px 0 rgba(0,0,0,0.5);
}

ai press {
  display: block;
  margin-top: 8px;
  padding: 5px 8px;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 12px;
  border-left: 3px solid #a83232;
}

ai press[lv="low"] { background: rgba(107,142,107,0.1); border-left-color: #6b8e6b; color: #2c4a2c; }
ai press[lv="mid"] { background: rgba(201,122,58,0.1); border-left-color: #c97a3a; color: #8b4a1a; }
ai press[lv="high"] { background: rgba(212,74,74,0.12); border-left-color: #d44a4a; color: #8b2828; }
ai press[lv="critical"] { 
  background: rgba(168,50,50,0.18); 
  border-left-color: #a83232; 
  color: #5c0000; 
  font-weight: bold;
  animation: pulseWarn 1.5s infinite;
}

ai iou seal {
  position: absolute;
  bottom: 10px;
  right: 14px;
  width: 52px;
  height: 52px;
  border: 3px solid #a83232;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: bold;
  font-family: "STKaiti", "KaiTi", serif;
  color: #a83232;
  transform: rotate(-18deg);
  opacity: 0.8;
  background: rgba(255,255,255,0.2);
  box-shadow: inset 0 0 4px rgba(168,50,50,0.4);
}

ai iou fp {
  position: absolute;
  bottom: 14px;
  left: 16px;
  font-size: 20px;
  opacity: 0.7;
}
/* ===================================================
   【4】直播间 - 手机竖屏比例
   =================================================== */
ai details[type="live"] {
  background: #0a0a14;
  border: 1px solid #1a1a2e;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 
    0 0 0 2px #2a2a3e,
    0 0 20px rgba(255,32,128,0.1);
}

ai details[type="live"] summary {
  background: linear-gradient(180deg, #1a1a2e, #0f0f1c);
  color: #ff2080;
  text-shadow: 0 0 8px rgba(255,32,128,0.6);
  border-bottom: 1px solid #2a2a3e;
}

ai details[type="live"] summary tag {
  background: transparent;
  color: #ff3030;
  border: 1px solid #ff3030;
  animation: blink 1.2s infinite;
}

ai details[type="live"] summary::after {
  content: "📺";
  filter: drop-shadow(0 0 4px rgba(255,32,128,0.5));
}

ai live {
  display: block;
  padding: 10px;
  animation: screenOn 0.4s ease;
  transform-origin: center;
}

ai lhead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 4px 8px;
  margin-bottom: 8px;
  border-bottom: 1px dashed #2a2a3e;
}

ai live-on {
  display: inline-block;
  padding: 2px 8px;
  background: #ff2030;
  color: white;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 1px;
  border-radius: 2px;
  font-family: Arial, sans-serif;
  animation: livePulse 1.5s infinite;
}

ai rtime {
  color: #80a0c0;
  font-size: 11px;
  font-family: "Courier New", monospace;
}

ai live stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 4px;
  margin-bottom: 10px;
  padding: 8px 4px;
  background: linear-gradient(180deg, rgba(255,32,128,0.05), rgba(32,128,255,0.05));
  border-radius: 3px;
}

ai stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
}

ai stat n {
  display: block;
  color: #ff80b0;
  font-size: 15px;
  font-weight: bold;
  font-family: "Courier New", monospace;
  text-shadow: 0 0 6px rgba(255,128,176,0.4);
}

ai stat l {
  display: block;
  color: #6080a0;
  font-size: 10px;
  margin-top: 1px;
  letter-spacing: 1px;
}

ai stat c {
  display: block;
  font-size: 9px;
  margin-top: 1px;
  font-family: "Courier New", monospace;
}

ai stat c[chg="up"] { color: #50ff80; }
ai stat c[chg="up"]::before { content: "▲ "; }
ai stat c[chg="down"] { color: #ff5050; }
ai stat c[chg="down"]::before { content: "▼ "; }

ai dmlist {
  display: block;
  background: rgba(0,0,0,0.4);
  padding: 6px;
  max-height: 240px;
  overflow: hidden;
  border-radius: 3px;
  border: 1px solid #1a1a2e;
  position: relative;
}

ai dmlist::before {
  content: "💬 弹幕";
  display: block;
  font-size: 10px;
  color: #4a6080;
  margin-bottom: 4px;
  letter-spacing: 2px;
  border-bottom: 1px dashed #2a2a3e;
  padding-bottom: 3px;
}

ai dm {
  display: block;
  padding: 4px 6px;
  margin: 3px 0;
  font-size: 12px;
  border-radius: 12px;
  background: rgba(255,255,255,0.05);
  animation: dmSlide 0.3s ease;
  color: #c0d0e0;
  line-height: 1.4;
}

ai dm u {
  color: #80c0ff;
  font-weight: bold;
  margin-right: 6px;
  font-size: 11px;
}

ai dm u::after { content: "："; color: #4a6080; }

ai dm[lv="1"] u { color: #80c0ff; }
ai dm[lv="2"] u { color: #c080ff; }
ai dm[lv="3"] u { color: #ffc040; text-shadow: 0 0 4px rgba(255,192,64,0.5); }

ai dm[gift] {
  background: linear-gradient(90deg, rgba(255,192,64,0.15), rgba(255,32,128,0.15));
  border: 1px solid rgba(255,192,64,0.3);
  color: #ffd080;
}

ai dm[gift]::before {
  content: "🎁 ";
  filter: drop-shadow(0 0 3px rgba(255,192,64,0.6));
}

ai dm[gift] u { color: #ffc040; }

ai dm[vip] {
  background: linear-gradient(90deg, rgba(255,215,0,0.2), rgba(255,140,0,0.15));
  border: 1px solid #ffd700;
  box-shadow: 0 0 8px rgba(255,215,0,0.3);
  color: #fff0a0;
  font-weight: 500;
}

ai dm[vip]::before {
  content: "👑 ";
}

ai dm[vip] u { 
  color: #ffe060;
  text-shadow: 0 0 6px rgba(255,224,96,0.8);
}

ai dm[warn] {
  background: rgba(255,48,48,0.15);
  border-left: 2px solid #ff3030;
  color: #ff8080;
}

ai dm[warn]::before { content: "⚠ "; }

/* ===================================================
   【5】任务委托 - 短款羊皮卷
   =================================================== */
ai details[type="quest"] {
  background: 
    radial-gradient(ellipse at top, rgba(168,50,50,0.05), transparent 70%),
    linear-gradient(180deg, #f5e8c8, #ead5a5);
  border: 1px solid #8b7355;
  border-radius: 0;
  position: relative;
  box-shadow: 0 2px 6px rgba(44,36,24,0.15);
}

ai details[type="quest"]::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; height: 6px;
  background: 
    repeating-linear-gradient(45deg, #8b7355 0 6px, #6b5535 6px 12px);
  opacity: 0.3;
}

ai details[type="quest"] summary {
  background: linear-gradient(180deg, #d4b878, #b89858);
  color: #2c2418;
  border-bottom: 1px solid #8b7355;
  padding-left: 18px;
  font-size: 13px;
}

ai details[type="quest"] summary tag {
  background: #2c2418;
  color: #d4b878;
  letter-spacing: 2px;
}

ai details[type="quest"] summary::after {
  content: "🔓";
  transition: all 0.4s;
}

ai details[type="quest"][open] summary::after { 
  content: "🔒";
  transform: rotate(15deg);
}

ai quest {
  display: block;
  padding: 12px 10px 40px;
  position: relative;
  animation: waxBreak 0.5s ease;
}

ai qhead {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 6px;
  margin-bottom: 6px;
  border-bottom: 1.5px dashed #8b7355;
  flex-wrap: wrap;
}

ai qlv {
  display: inline-block;
  padding: 2px 8px;
  font-size: 11px;
  font-weight: bold;
  font-family: "Courier New", monospace;
  color: white;
  letter-spacing: 1px;
  border-radius: 2px;
}

ai quest[lv="1"] qlv { background: linear-gradient(135deg, #6b8e6b, #4a6b4a); }
ai quest[lv="2"] qlv { background: linear-gradient(135deg, #c97a3a, #8b4a1a); }
ai quest[lv="3"] qlv { background: linear-gradient(135deg, #d44a4a, #8b2828); }
ai quest[lv="4"] qlv { 
  background: linear-gradient(135deg, #6b1a1a, #2c0a0a); 
  box-shadow: 0 0 8px rgba(168,50,50,0.6);
  animation: dangerGlow 2s infinite;
}

ai qname {
  font-size: 13px;
  font-weight: bold;
  color: #2c2418;
  font-family: "STKaiti", "KaiTi", serif;
}

ai qbody {
  display: block;
  padding: 6px 10px;
  margin-bottom: 6px;
  background: rgba(255,255,255,0.3);
  border-left: 3px solid #8b7355;
  font-size: 12px;
  line-height: 1.6;
  font-family: "STKaiti", "KaiTi", serif;
}

ai qrow {
  display: grid;
  grid-template-columns: 1fr;
  gap: 4px;
  margin-bottom: 4px;
}

ai qcell {
  display: flex;
  padding: 3px 8px;
  background: rgba(139,115,85,0.1);
  font-size: 11px;
  align-items: center;
  gap: 6px;
}

ai qcell k { color: #5c4a32; font-weight: bold; min-width: 40px; }
ai qcell v { color: #2c2418; }

ai qreward {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  margin: 3px 0;
  font-size: 11px;
  border-radius: 2px;
}

ai qreward[good] {
  background: linear-gradient(90deg, rgba(107,142,107,0.2), transparent);
  border-left: 3px solid #6b8e6b;
  color: #2c4a2c;
}

ai qreward[bad] {
  background: linear-gradient(90deg, rgba(212,74,74,0.15), transparent);
  border-left: 3px solid #d44a4a;
  color: #8b2828;
}

ai qreward k { font-weight: bold; min-width: 50px; }

ai qview {
  display: flex;
  margin-top: 6px;
  padding: 4px 8px;
  background: linear-gradient(90deg, rgba(255,215,0,0.15), transparent);
  border-left: 3px solid #ffd700;
  font-size: 11px;
  gap: 6px;
}

ai qview k { font-weight: bold; color: #8b6f00; }

ai quest wax {
  position: absolute;
  bottom: 6px;
  right: 10px;
  width: 44px;
  height: 44px;
  background: 
    radial-gradient(circle at 35% 35%, #d44a4a, #8b2828 60%, #5c0a0a);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f4ecd8;
  font-size: 11px;
  font-weight: bold;
  font-family: "STKaiti", "KaiTi", serif;
  box-shadow: 
    inset -3px -3px 6px rgba(0,0,0,0.4),
    inset 3px 3px 4px rgba(255,255,255,0.15),
    0 2px 4px rgba(0,0,0,0.3);
  transform: rotate(-8deg);
}
/* ===================================================
   【6】VIP黑卡 - 标准银行卡比例
   =================================================== */
ai details[type="vipcard"] {
  background: 
    linear-gradient(135deg, #1a1a1a 0%, #2c2c2c 40%, #1a1a1a 100%);
  border: 1px solid #d4af37;
  border-radius: 8px;
  box-shadow: 
    0 0 0 1px rgba(212,175,55,0.3),
    0 4px 12px rgba(0,0,0,0.4),
    inset 0 1px 0 rgba(255,255,255,0.1);
  overflow: hidden;
  position: relative;
  max-width: 380px;
  aspect-ratio: auto;
}

ai details[type="vipcard"]::before {
  content: "";
  position: absolute;
  inset: 0;
  background: 
    repeating-linear-gradient(135deg, transparent 0 20px, rgba(212,175,55,0.04) 20px 21px);
  pointer-events: none;
}

ai details[type="vipcard"] summary {
  background: linear-gradient(90deg, #000, #2a2a2a 50%, #000);
  color: #d4af37;
  text-shadow: 0 0 6px rgba(212,175,55,0.4);
  border-bottom: 1px solid #d4af37;
}

ai details[type="vipcard"] summary tag {
  background: linear-gradient(135deg, #d4af37, #b8941f);
  color: #1a1a1a;
  font-weight: bold;
  letter-spacing: 2px;
}

ai details[type="vipcard"] summary::after {
  content: "💳";
  transition: transform 0.6s;
}

ai details[type="vipcard"][open] summary::after { transform: rotateY(360deg); }

ai vipcard {
  display: block;
  padding: 14px;
  position: relative;
  animation: cardFlip 0.6s ease;
}

ai vhead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(212,175,55,0.3);
  margin-bottom: 10px;
}

ai vlogo {
  color: #d4af37;
  font-size: 14px;
  font-weight: bold;
  font-family: Georgia, serif;
  letter-spacing: 2px;
  text-shadow: 0 0 4px rgba(212,175,55,0.5);
}

ai vlv {
  padding: 2px 10px;
  background: linear-gradient(135deg, #d4af37, #b8941f);
  color: #1a1a1a;
  font-size: 11px;
  font-weight: bold;
  border-radius: 2px;
  letter-spacing: 1px;
}

ai vid {
  display: block;
  color: #c0c0c0;
  font-family: "Courier New", monospace;
  font-size: 13px;
  letter-spacing: 3px;
  padding: 6px 0;
  margin-bottom: 8px;
}

ai vtotal {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 12px;
  background: linear-gradient(90deg, rgba(212,175,55,0.1), transparent);
  border-left: 3px solid #d4af37;
  margin-bottom: 8px;
}

ai vtotal k {
  color: #a0a0a0;
  font-size: 12px;
  letter-spacing: 1px;
}

ai vtotal b {
  color: #ffd700;
  font-size: 20px;
  font-weight: bold;
  font-family: Georgia, serif;
  text-shadow: 0 0 8px rgba(255,215,0,0.4);
  letter-spacing: 1px;
}

ai vrank {
  display: block;
  color: #c0c0c0;
  font-size: 12px;
  padding: 4px 0;
  margin-bottom: 8px;
}

ai vrank rk {
  color: #d4af37;
  font-weight: bold;
  font-size: 13px;
}

ai vlog {
  display: block;
  background: rgba(0,0,0,0.3);
  padding: 8px 10px;
  border-radius: 3px;
  border: 1px solid rgba(212,175,55,0.2);
  margin-bottom: 8px;
}

ai vlog lh {
  display: block;
  color: #d4af37;
  font-size: 11px;
  letter-spacing: 2px;
  margin-bottom: 6px;
  padding-bottom: 4px;
  border-bottom: 1px dashed rgba(212,175,55,0.3);
}

ai vlog li {
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 8px;
  padding: 3px 0;
  font-size: 12px;
  color: #c0c0c0;
  border-bottom: 1px dotted rgba(255,255,255,0.05);
  list-style: none;
}

ai vlog dt { color: #d4af37; font-family: "Courier New", monospace; font-size: 11px; }
ai vlog ev { color: #d0d0d0; }

ai vatt {
  display: block;
  padding: 6px 0;
  color: #a0a0a0;
  font-size: 12px;
}

ai vatt att {
  display: inline-block;
  padding: 2px 10px;
  margin-left: 6px;
  border-radius: 12px;
  font-size: 11px;
  font-weight: bold;
}

ai att[tone="warm"] { background: rgba(255,140,90,0.2); color: #ffaa80; border: 1px solid #ff8c5a; }
ai att[tone="cold"] { background: rgba(90,140,200,0.2); color: #80b0e0; border: 1px solid #5a8cc8; }
ai att[tone="wary"] { background: rgba(200,180,90,0.2); color: #e0c880; border: 1px solid #c8b45a; }
ai att[tone="fond"] { background: rgba(255,100,150,0.2); color: #ffa0c0; border: 1px solid #ff6496; }

ai vipcard chip {
  position: absolute;
  top: 70px;
  right: 14px;
  width: 36px;
  height: 26px;
  background: 
    linear-gradient(135deg, #d4af37, #f4e88a 50%, #b8941f);
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 8px;
  font-weight: bold;
  color: #5c4a00;
  font-family: Arial, sans-serif;
  letter-spacing: 0.5px;
  box-shadow: 
    inset 0 0 4px rgba(0,0,0,0.3),
    0 1px 2px rgba(0,0,0,0.4);
}

ai vipcard chip::before {
  content: "";
  position: absolute;
  inset: 4px;
  background: 
    linear-gradient(90deg, transparent 30%, rgba(0,0,0,0.2) 30%, rgba(0,0,0,0.2) 32%, transparent 32%),
    linear-gradient(90deg, transparent 60%, rgba(0,0,0,0.2) 60%, rgba(0,0,0,0.2) 62%, transparent 62%);
}

/* ===================================================
   【7】关系数值 - 信笺
   =================================================== */
ai details[type="love"] {
  background: 
    radial-gradient(ellipse at top right, rgba(255,182,193,0.3), transparent 60%),
    linear-gradient(180deg, #fff0f3, #ffe0e8);
  border: 1px solid #d4a0b0;
  border-radius: 4px;
  box-shadow: 0 2px 6px rgba(212,160,176,0.3);
  position: relative;
}

ai details[type="love"]::before {
  content: "♡ ♡ ♡";
  position: absolute;
  top: 50%;
  right: 8px;
  transform: translateY(-50%) rotate(90deg);
  color: rgba(212,80,120,0.15);
  font-size: 14px;
  letter-spacing: 4px;
}

ai details[type="love"] summary {
  background: linear-gradient(90deg, #d4708a, #c85878 50%, #d4708a);
  color: #fff;
  text-shadow: 0 1px 2px rgba(139,40,80,0.4);
  border-radius: 3px 3px 0 0;
}

ai details[type="love"] summary tag {
  background: white;
  color: #c85878;
  font-size: 13px;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

ai details[type="love"] summary::after {
  content: "💌";
  transition: transform 0.4s;
}

ai details[type="love"][open] summary::after { transform: rotate(-15deg) scale(1.1); }

ai love {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  padding: 12px;
  animation: letterOpen 0.5s ease;
}

ai love rel {
  display: block;
  margin-bottom: 0;
  padding: 6px 8px;
  background: rgba(255,255,255,0.5);
  border-radius: 3px;
}

ai love lock { grid-column: 1 / -1; margin-top: 4px; }
ai love emo { grid-column: 1 / -1; }

ai love lbl {
  display: flex;
  align-items: center;
  font-size: 12px;
  color: #8b3858;
  margin-bottom: 4px;
  font-weight: bold;
}

ai love lbl num {
  display: inline-block;
  padding: 0 6px;
  margin: 0 2px;
  color: #c85878;
  font-size: 14px;
  font-family: Georgia, serif;
}

ai bar[type="heart"] {
  display: block;
  height: 12px;
  background: rgba(212,160,176,0.2);
  border-radius: 6px;
  position: relative;
  overflow: hidden;
  font-size: 0;
}

ai bar[type="heart"] b {
  display: block;
  height: 100%;
  background: 
    linear-gradient(90deg, #ff6b9d, #ff4080 50%, #d4287a);
  border-radius: 6px;
  transition: width 0.6s;
  box-shadow: 0 0 6px rgba(255,64,128,0.5);
  position: relative;
}

ai bar[type="heart"] b::after {
  content: "♥";
  position: absolute;
  right: 4px;
  top: 50%;
  transform: translateY(-50%);
  color: white;
  font-size: 10px;
  text-shadow: 0 0 3px rgba(212,40,122,0.8);
}

ai bar[type="chain"] {
  display: block;
  height: 12px;
  background: rgba(139,115,85,0.2);
  border-radius: 1px;
  position: relative;
  overflow: hidden;
  font-size: 0;
  border: 1px solid #8b7355;
}

ai bar[type="chain"] b {
  display: block;
  height: 100%;
  background: 
    repeating-linear-gradient(90deg, #5c4a32 0 4px, #8b7355 4px 8px);
  transition: width 0.6s;
}

ai love note {
  display: block;
  font-size: 11px;
  color: #8b3858;
  font-style: italic;
  margin-top: 4px;
  font-family: "STKaiti", "KaiTi", cursive;
}

ai lock {
  display: block;
  background: rgba(255,255,255,0.6);
  padding: 8px 10px;
  border-radius: 3px;
  border: 1px dashed #d4a0b0;
}

ai lock lh {
  display: block;
  font-size: 11px;
  color: #8b3858;
  letter-spacing: 2px;
  margin-bottom: 6px;
  font-weight: bold;
}

ai lock li {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 8px;
  padding: 3px 0;
  font-size: 11px;
  align-items: center;
  list-style: none;
  border-bottom: 1px dotted rgba(212,160,176,0.4);
}

ai lock li n { color: #8b3858; font-weight: bold; }
ai lock li c { color: #b08090; font-size: 10px; font-family: "Courier New", monospace; }

ai lock li::before {
  content: "🔒";
  position: absolute;
  margin-left: -22px;
  font-size: 11px;
  filter: grayscale(0.5);
}

ai lock li[ok] { color: #c85878; }
ai lock li[ok]::before { content: "🔓"; filter: none; }
ai lock li[ok] n { color: #c85878; }

ai emo {
  display: block;
  text-align: center;
  padding: 6px;
  font-size: 12px;
  color: #8b3858;
  border-top: 1px dashed #d4a0b0;
  margin-top: 6px;
}

ai emo em {
  display: inline-block;
  margin-left: 6px;
  padding: 2px 10px;
  font-weight: bold;
  border-radius: 12px;
  font-size: 11px;
}

ai em[tone="grateful"] { background: #d4f0d4; color: #2c6b2c; }
ai em[tone="dependent"] { background: #ffe0c0; color: #8b4a1a; }
ai em[tone="love"] { background: #ffc0d0; color: #c8285a; }
ai em[tone="disgust"] { background: #d0d0c0; color: #5c5c2c; }
ai em[tone="fear"] { background: #c0c0d0; color: #2c2c5c; }
ai em[tone="mixed"] { background: linear-gradient(90deg, #ffc0d0, #c0c0d0); color: #5c2c5c; }

/* ===================================================
   【8】风险警示 - 警戒标牌（已删除平台警告样式）
   =================================================== */
ai details[type="warn"] {
  background: #fff8e0;
  border: 2px solid #2c2418;
  border-radius: 0;
  position: relative;
  box-shadow: 0 2px 8px rgba(212,180,40,0.3);
}

ai details[type="warn"]::before,
ai details[type="warn"]::after {
  content: "";
  position: absolute;
  left: 0; right: 0;
  height: 8px;
  background: 
    repeating-linear-gradient(135deg, #2c2418 0 12px, #ffd040 12px 24px);
}

ai details[type="warn"]::before { top: 0; }
ai details[type="warn"]::after { bottom: 0; }

ai details[type="warn"] summary {
  background: #2c2418;
  color: #ffd040;
  margin-top: 8px;
  letter-spacing: 1px;
  font-weight: bold;
  font-size: 13px;
}

ai details[type="warn"] summary tag[warn] {
  background: #ff3030;
  color: white;
  animation: blink 1s infinite;
  letter-spacing: 2px;
  font-weight: bold;
}

ai details[type="warn"] summary::after {
  content: "⚠";
  font-size: 18px;
  color: #ff3030;
  margin-left: auto;
  margin-right: 4px;
}

ai warn {
  display: block;
  padding: 10px 12px 16px;
  animation: warnSlide 0.4s ease;
}

ai wlv {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  margin-bottom: 8px;
  background: rgba(255,208,64,0.15);
  border: 1px dashed #8b6f00;
}

ai wcircle {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 12px;
  color: white;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  border: 3px solid white;
  box-shadow: 0 0 0 2px currentColor;
}

ai warn[lv="low"] wcircle { background: #6b8e6b; color: #6b8e6b; }
ai warn[lv="mid"] wcircle { background: #c97a3a; color: #c97a3a; }
ai warn[lv="high"] wcircle { background: #d44a4a; color: #d44a4a; }
ai warn[lv="critical"] wcircle { 
  background: #8b0000; 
  color: #8b0000;
  animation: dangerPulse 1s infinite;
}

ai wlv wcircle {
  color: white;
}

ai wtxt {
  font-size: 13px;
  font-weight: bold;
  color: #2c2418;
  letter-spacing: 2px;
}

ai wrow {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 6px;
  padding: 5px 8px;
  margin-bottom: 3px;
  background: rgba(255,255,255,0.5);
  border-left: 3px solid #8b6f00;
  font-size: 11px;
  align-items: center;
}

ai wrow k { color: #5c4a00; font-weight: bold; font-size: 10px; }
ai wrow v { color: #2c2418; }

ai v[risk] { font-weight: bold; font-family: "Courier New", monospace; }
ai v[risk="0"], ai v[risk="10"], ai v[risk="20"] { color: #2c6b2c; }
ai v[risk="30"], ai v[risk="40"], ai v[risk="50"] { color: #8b4a1a; }
ai v[risk="60"], ai v[risk="70"], ai v[risk="80"] { color: #8b2828; }
ai v[risk="90"], ai v[risk="100"] { 
  color: #ff0000; 
  text-shadow: 0 0 4px rgba(255,0,0,0.4);
  animation: blink 0.8s infinite;
}

/* ===================================================
   【9】心理状态 - 量表（新增堕落值双向光谱）
   =================================================== */
ai details[type="psych"] {
  background: linear-gradient(180deg, #f5f3ee, #ebe6d8);
  border: 1px solid #8b7355;
  border-top: 3px solid #5a4a7a;
  border-radius: 2px;
}

ai details[type="psych"] summary {
  background: linear-gradient(180deg, #5a4a7a, #4a3a6a);
  color: #f4ecd8;
  border-bottom: 1px dashed #8b7355;
  font-size: 13px;
}

ai details[type="psych"] summary tag {
  background: #f4ecd8;
  color: #5a4a7a;
  font-weight: bold;
  letter-spacing: 2px;
}

ai details[type="psych"] summary::after {
  content: "🧠";
  transition: transform 0.4s;
}

ai details[type="psych"][open] summary::after { transform: scale(1.2); }

ai psych {
  display: block;
  padding: 10px;
}

ai psych rel {
  display: block;
  margin-bottom: 8px;
  padding: 6px 8px;
  background: white;
  border: 1px solid #d0c5a5;
  border-left: 4px solid #5a4a7a;
}

ai psych rel[type="shame"] { border-left-color: #c85878; }
ai psych rel[type="numb"] { border-left-color: #6c7a8b; }
ai psych rel[type="fall"] { border-left-color: #8b008b; }

ai psych lbl {
  display: flex;
  align-items: center;
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 4px;
  color: #2c2418;
}

ai psych lbl num {
  margin: 0 4px;
  padding: 0 6px;
  background: #2c2418;
  color: #f4ecd8;
  font-family: "Courier New", monospace;
  font-size: 11px;
  border-radius: 2px;
}

ai bar[type="psych"] {
  display: flex;
  height: 12px;
  background: #f0ebe0;
  border: 1px solid #8b7355;
  padding: 0;
  font-size: 0;
  position: relative;
}

ai bar[type="psych"] b {
  display: block;
  height: 100%;
  transition: width 0.6s;
}

ai rel[type="shame"] bar b {
  background: 
    repeating-linear-gradient(90deg, #c85878 0 6px, #d4708a 6px 12px);
}

ai rel[type="numb"] bar b {
  background: 
    repeating-linear-gradient(90deg, #6c7a8b 0 6px, #8090a0 6px 12px);
}

ai bar[type="psych"]::after {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0 9px, rgba(0,0,0,0.15) 9px 10px);
  pointer-events: none;
}

/* ⭐ 堕落值 - 双向光谱进度条（-100纯爱 ~ +100深渊） */
ai bar[type="fall"] {
  display: block;
  height: 14px;
  background: linear-gradient(90deg, 
    #ff69b4 0%,
    #ffd0e4 25%,
    #e8e8e8 50%,
    #b088c4 75%,
    #4b0082 100%);
  border: 1px solid #5a4a7a;
  border-radius: 7px;
  padding: 0;
  font-size: 0;
  position: relative;
  overflow: visible;
}

/* 中线标记（0点） */
ai bar[type="fall"]::before {
  content: "";
  position: absolute;
  left: 50%;
  top: -2px;
  bottom: -2px;
  width: 2px;
  background: #2c2418;
  transform: translateX(-50%);
  z-index: 2;
}

/* 当前位置指针 b 的 left 用百分比定位，由AI计算 (数值+100)/200*100% */
ai bar[type="fall"] b {
  display: block;
  position: absolute;
  top: 50%;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #fff, #8b008b 70%);
  border: 2px solid #2c2418;
  transform: translate(-50%, -50%);
  transition: left 0.6s;
  box-shadow: 0 0 6px rgba(139,0,139,0.5);
  z-index: 3;
}

ai psych rel[type="fall"] note[tone="pure"] {
  color: #d4287a;
  border-left-color: #ff69b4;
  background: rgba(255,105,180,0.08);
}

ai psych rel[type="fall"] note[tone="neutral"] {
  color: #6c7a8b;
  border-left-color: #a0a0a0;
}

ai psych rel[type="fall"] note[tone="dark"] {
  color: #8b008b;
  border-left-color: #4b0082;
  background: rgba(75,0,130,0.08);
}

ai psych note {
  display: block;
  font-size: 10px;
  font-style: italic;
  color: #5c4a32;
  margin-top: 3px;
  padding: 3px 5px;
  background: rgba(139,115,85,0.06);
  border-left: 2px solid #8b7355;
}

/* ===================================================
   【10】便利贴 - 2列网格瀑布流
   =================================================== */
ai details[type="sticky"] {
  background: transparent;
  border: none;
  padding: 0;
}

ai details[type="sticky"] summary {
  background: linear-gradient(135deg, #fff4a8, #ffe880);
  color: #5c4a00;
  border: 1px dashed #c9a648;
  border-radius: 3px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.15);
  transform: rotate(-0.5deg);
  margin-bottom: 8px;
}

ai details[type="sticky"] summary tag {
  background: #5c4a00;
  color: #fff4a8;
}

ai details[type="sticky"] summary::after {
  content: "📌";
  margin-left: auto;
  transform: rotate(15deg);
}

ai notes {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 10px;
  padding: 10px 4px;
  align-items: start;
}

ai stm {
  display: block;
  padding: 14px 10px 10px;
  position: relative;
  font-size: 12px;
  line-height: 1.55;
  box-shadow: 
    0 1px 2px rgba(0,0,0,0.1),
    0 3px 8px rgba(0,0,0,0.18);
  border-radius: 1px;
  animation: stickyDrop 0.4s ease;
}

ai stm[c="1"] { background: linear-gradient(135deg, #fff8b0, #ffe880); transform: rotate(-2.5deg); margin-top: 0; }
ai stm[c="2"] { background: linear-gradient(135deg, #ffd0d0, #ffb0b8); transform: rotate(1.8deg); margin-top: 14px; }
ai stm[c="3"] { background: linear-gradient(135deg, #c8e8d0, #a0d4b0); transform: rotate(-1.2deg); margin-top: 0; }
ai stm[c="4"] { background: linear-gradient(135deg, #d0e0f0, #b0c8e0); transform: rotate(2.2deg); margin-top: 18px; }
ai stm[c="5"] { background: linear-gradient(135deg, #f0d0e8, #e0b0d8); transform: rotate(-1.8deg); margin-top: 0; }
ai stm[c="6"] { background: linear-gradient(135deg, #ffd8b0, #ffc080); transform: rotate(1.5deg); margin-top: 10px; }

ai stm tape {
  position: absolute;
  top: -7px;
  left: 50%;
  transform: translateX(-50%) rotate(-3deg);
  width: 48px;
  height: 14px;
  background: 
    linear-gradient(90deg, rgba(255,255,255,0.7), rgba(255,255,255,0.4) 50%, rgba(255,255,255,0.7));
  border-left: 1px dashed rgba(0,0,0,0.1);
  border-right: 1px dashed rgba(0,0,0,0.1);
  box-shadow: 0 1px 2px rgba(0,0,0,0.15);
}

ai stm sh {
  display: block;
  font-size: 10px;
  color: #5c4a32;
  padding-bottom: 4px;
  margin-bottom: 4px;
  border-bottom: 1px dashed rgba(92,74,50,0.3);
  font-weight: bold;
  line-height: 1.4;
}

ai stm se {
  display: block;
  color: #2c2418;
  margin-bottom: 4px;
  font-family: "STKaiti", "KaiTi", cursive;
  line-height: 1.6;
  font-size: 12px;
}

ai stm sd {
  display: block;
  font-size: 10px;
  color: #5c4a32;
  padding-top: 3px;
  border-top: 1px dotted rgba(92,74,50,0.2);
  line-height: 1.4;
}

ai stm ss {
  display: block;
  text-align: right;
  margin-top: 3px;
  font-size: 10px;
  color: #c97a3a;
  letter-spacing: 1px;
}

/* ===================================================
   【11】古籍卷轴 - 横向展开
   =================================================== */
ai details[type="scroll"] {
  background: 
    linear-gradient(90deg, #8b5a2b 0 8px, transparent 8px),
    linear-gradient(-90deg, #8b5a2b 0 8px, transparent 8px),
    repeating-linear-gradient(90deg, #f0d8a8 0 2px, #e8cc98 2px 4px);
  border: none;
  padding: 0 8px;
  position: relative;
  box-shadow: 0 2px 8px rgba(44,36,24,0.3);
}

ai details[type="scroll"]::before,
ai details[type="scroll"]::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 8px;
  background: linear-gradient(180deg, #5c3a1a, #8b5a2b 20%, #5c3a1a 50%, #8b5a2b 80%, #5c3a1a);
  box-shadow: inset -1px 0 2px rgba(0,0,0,0.4), inset 1px 0 2px rgba(255,255,255,0.2);
}

ai details[type="scroll"]::before { left: 0; }
ai details[type="scroll"]::after { right: 0; }

ai details[type="scroll"] summary {
  background: linear-gradient(180deg, #d4b878, #b89858);
  color: #2c2418;
  border-bottom: 1px solid #8b5a2b;
  font-family: "STKaiti", "KaiTi", serif;
  letter-spacing: 2px;
}

ai details[type="scroll"] summary tag {
  background: #5c3a1a;
  color: #f4ecd8;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 12px;
}

ai details[type="scroll"] summary::after {
  content: "📜";
  transition: transform 0.5s;
}

ai details[type="scroll"][open] summary::after { transform: rotate(360deg); }

ai scroll {
  display: block;
  padding: 14px 10px;
  animation: scrollOpen 0.6s ease;
}

ai axis {
  display: block;
  text-align: center;
  margin: 12px 0 8px;
  padding: 4px 0;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 14px;
  font-weight: bold;
  color: #5c3a1a;
  letter-spacing: 4px;
  border-top: 1px solid #8b5a2b;
  border-bottom: 1px solid #8b5a2b;
  background: rgba(255,255,255,0.2);
}

ai axis:first-child { margin-top: 0; }

ai mem {
  display: block;
  padding: 8px 12px;
  margin: 6px 0;
  background: rgba(255,255,255,0.4);
  border-left: 3px solid #8b5a2b;
  position: relative;
}

ai mem[type="main"] { border-left-color: #8b2828; }
ai mem[type="rel"] { border-left-color: #c85878; }
ai mem[type="hint"] { border-left-color: #5a4a7a; background: rgba(90,74,122,0.08); }

ai mtime {
  display: inline-block;
  padding: 1px 8px;
  background: #5c3a1a;
  color: #f4ecd8;
  font-size: 10px;
  font-family: "Courier New", monospace;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

ai mnpc {
  display: block;
  font-size: 11px;
  color: #5c4a32;
  margin-bottom: 4px;
  padding: 2px 0;
  border-bottom: 1px dotted rgba(92,58,26,0.3);
}

ai mtxt {
  display: block;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 13px;
  line-height: 1.8;
  color: #2c2418;
  text-indent: 2em;
}

ai mstat {
  display: inline-block;
  margin-top: 4px;
  padding: 1px 8px;
  font-size: 10px;
  font-family: "Courier New", monospace;
  border-radius: 2px;
}

ai mem[status="unfin"] mstat { background: #c97a3a; color: white; animation: blink 2s infinite; }
ai mem[status="fin"] mstat { background: #6b8e6b; color: white; }

/* ===================================================
   【12】行动推荐 - 答题卡
   =================================================== */
ai details[type="choice"] {
  background: linear-gradient(180deg, #ffffff, #f0ebe0);
  border: 2px solid #2c2418;
  border-radius: 2px;
  box-shadow: 0 3px 8px rgba(0,0,0,0.2);
}

ai details[type="choice"] summary {
  background: linear-gradient(180deg, #2c2418, #1a1410);
  color: #ffd040;
  letter-spacing: 2px;
  font-weight: bold;
}

ai details[type="choice"] summary tag {
  background: #ffd040;
  color: #2c2418;
  font-weight: bold;
}

ai details[type="choice"] summary::after {
  content: "✎";
  font-size: 14px;
  transition: transform 0.3s;
}

ai details[type="choice"][open] summary::after { transform: rotate(45deg); }

ai acts {
  display: block;
  padding: 12px 10px;
}

ai acts a {
  display: grid;
  grid-template-columns: 36px 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 8px 10px;
  margin-bottom: 6px;
  background: white;
  border: 1.5px solid #c9b896;
  border-radius: 2px;
  cursor: pointer;
  transition: all 0.25s;
  position: relative;
  overflow: hidden;
}

ai acts a::before {
  content: "";
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,208,64,0.2), transparent);
  transition: left 0.5s;
  pointer-events: none;
}

ai acts a:hover::before { left: 100%; }

ai acts a:hover {
  background: linear-gradient(90deg, #fff8e0, white);
  border-color: #2c2418;
  transform: translateX(4px);
  box-shadow: -3px 0 0 #ffd040;
}

ai acts a opt {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: white;
  border: 2px solid #2c2418;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 13px;
  color: #2c2418;
  font-family: Georgia, serif;
  transition: all 0.25s;
}

ai acts a:hover opt { background: #2c2418; color: #ffd040; transform: rotate(360deg); transition: transform 0.5s, background 0.25s, color 0.25s; }

ai acts a txt { font-size: 13px; color: #2c2418; line-height: 1.5; }

ai acts a risk {
  padding: 2px 8px;
  font-size: 10px;
  font-weight: bold;
  border-radius: 10px;
  letter-spacing: 1px;
  white-space: nowrap;
}

ai risk[lv="low"] { background: #d4f0d4; color: #2c6b2c; border: 1px solid #6b8e6b; }
ai risk[lv="mid"] { background: #ffe0c0; color: #8b4a1a; border: 1px solid #c97a3a; }
ai risk[lv="high"] { background: #ffd0d0; color: #8b2828; border: 1px solid #d44a4a; animation: highRiskPulse 2s ease-in-out infinite; }

ai acts a:active { transform: translateX(2px) scale(0.99); }

/* ===================================================
   动画
   =================================================== */
@keyframes slideDown { from { opacity: 0; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes unfurl { from { opacity: 0; transform: scaleY(0); } to { opacity: 1; transform: scaleY(1); } }
@keyframes paperUnfold { from { opacity: 0; transform: rotateX(-90deg); } to { opacity: 1; transform: rotateX(0); } }
@keyframes screenOn { 0% { opacity: 0; transform: scaleY(0); filter: brightness(3); } 50% { opacity: 1; transform: scaleY(1); filter: brightness(2); } 100% { opacity: 1; transform: scaleY(1); filter: brightness(1); } }
@keyframes waxBreak { from { opacity: 0; transform: translateY(-15px); } to { opacity: 1; transform: translateY(0); } }
@keyframes cardFlip { from { opacity: 0; transform: rotateY(-90deg); } to { opacity: 1; transform: rotateY(0); } }
@keyframes letterOpen { from { opacity: 0; transform: scale(0.9); } to { opacity: 1; transform: scale(1); } }
@keyframes warnSlide { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes stickyDrop { from { opacity: 0; transform: translateY(-8px) rotate(0deg); } }
@keyframes scrollOpen { from { opacity: 0; max-width: 0; } to { opacity: 1; max-width: 100%; } }
@keyframes blink { 0%, 50% { opacity: 1; } 51%, 100% { opacity: 0.4; } }
@keyframes livePulse { 0%, 100% { box-shadow: 0 0 4px rgba(255,32,48,0.6); } 50% { box-shadow: 0 0 12px rgba(255,32,48,1); } }
@keyframes dmSlide { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes pulseWarn { 0%, 100% { background-color: rgba(168,50,50,0.18); } 50% { background-color: rgba(168,50,50,0.3); } }
@keyframes dangerGlow { 0%, 100% { box-shadow: 0 0 8px rgba(168,50,50,0.6); } 50% { box-shadow: 0 0 16px rgba(168,50,50,1); } }
@keyframes dangerPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.08); } }
@keyframes goldBreathe { 0%, 100% { text-shadow: 0 0 8px rgba(255,215,0,0.4); } 50% { text-shadow: 0 0 16px rgba(255,215,0,0.7), 0 0 24px rgba(255,215,0,0.3); } }
@keyframes barFlow { to { left: 200%; } }
@keyframes highRiskPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(212,74,74,0.4); } 50% { box-shadow: 0 0 0 4px rgba(212,74,74,0); } }
@keyframes exposeGlow { 0%, 100% { text-shadow: none; } 50% { text-shadow: 0 0 6px rgba(168,50,50,0.4); } }
@keyframes arouseHot { 0%, 100% { text-shadow: 0 0 4px rgba(168,50,50,0.3); } 50% { text-shadow: 0 0 10px rgba(168,50,50,0.6), 0 0 16px rgba(168,50,50,0.3); } }

/* ============ 正文首字 ============ */
ai text p:first-of-type::first-letter {
  font-size: 1.6em;
  font-weight: bold;
  color: #8b2828;
  font-family: "STKaiti", "KaiTi", serif;
  float: left;
  line-height: 1;
  margin: 4px 6px 0 0;
  padding: 2px 4px;
  background: linear-gradient(135deg, rgba(168,50,50,0.08), transparent);
}

/* ============ 滚动条 ============ */
ai dmlist::-webkit-scrollbar { width: 4px; }
ai dmlist::-webkit-scrollbar-track { background: rgba(0,0,0,0.3); }
ai dmlist::-webkit-scrollbar-thumb { background: linear-gradient(180deg, #ff2080, #c0185c); border-radius: 2px; }

/* ============ 质感互动增强 ============ */
ai details { filter: drop-shadow(0 1px 2px rgba(44,36,24,0.08)); transition: filter 0.3s, transform 0.3s; }
ai details:hover { filter: drop-shadow(0 3px 8px rgba(44,36,24,0.18)); }
ai details[open] { filter: drop-shadow(0 2px 6px rgba(44,36,24,0.15)); transform: translateY(-1px); }
ai details[open] summary { box-shadow: 0 1px 0 rgba(0,0,0,0.1); }

ai details summary { overflow: hidden; }
ai details summary::before {
  content: "";
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left 0.5s ease;
  pointer-events: none;
  z-index: 1;
}
ai details summary:hover::before { left: 100%; }
ai details summary:hover { filter: brightness(1.1); }
ai details summary:active { transform: scale(0.98); }

ai idcard photo { transition: transform 0.4s cubic-bezier(0.4,0,0.2,1), box-shadow 0.4s; cursor: zoom-in; }
ai idcard photo:hover { transform: scale(1.04) translateY(-2px); box-shadow: inset 0 0 8px rgba(0,0,0,0.2), 0 6px 16px rgba(0,0,0,0.3), 0 0 0 1px rgba(168,50,50,0.4); z-index: 10; }
ai idcard chop { transition: transform 0.5s cubic-bezier(0.34,1.56,0.64,1); }
ai details[type="idcard"]:hover idcard chop { transform: rotate(-25deg) scale(1.1); }

ai details[type="iou"]:hover { transform: rotate(0deg) translateY(-2px); box-shadow: inset 0 0 30px rgba(139,90,40,0.15), 0 8px 16px rgba(44,36,24,0.25); }
ai iou seal { transition: all 0.3s; }
ai details[type="iou"]:hover iou seal { opacity: 1; transform: rotate(-22deg) scale(1.08); box-shadow: inset 0 0 6px rgba(168,50,50,0.6), 0 0 8px rgba(168,50,50,0.4); }

ai dm { transition: all 0.2s; }
ai dm:hover { background: rgba(255,255,255,0.12); transform: translateX(3px); padding-left: 9px; }
ai dm[vip]:hover { box-shadow: 0 0 16px rgba(255,215,0,0.6); transform: translateX(3px) scale(1.02); }
ai stat n { transition: all 0.25s; }
ai stat:hover n { text-shadow: 0 0 12px rgba(255,128,176,0.8); transform: scale(1.1); display: inline-block; }

ai quest wax { transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.4s; cursor: pointer; }
ai quest wax:hover { transform: rotate(-15deg) scale(1.15); box-shadow: inset -3px -3px 6px rgba(0,0,0,0.4), inset 3px 3px 4px rgba(255,255,255,0.2), 0 4px 12px rgba(139,40,40,0.5); }

ai details[type="vipcard"]::after {
  content: "";
  position: absolute;
  top: 0; left: -150%;
  width: 80%; height: 100%;
  background: linear-gradient(115deg, transparent 0%, transparent 40%, rgba(212,175,55,0.15) 48%, rgba(255,235,150,0.35) 50%, rgba(212,175,55,0.15) 52%, transparent 60%, transparent 100%);
  pointer-events: none;
  transition: left 1.2s cubic-bezier(0.4,0,0.2,1);
  z-index: 5;
}
ai details[type="vipcard"]:hover::after { left: 150%; }
ai vtotal b { animation: goldBreathe 3s ease-in-out infinite; }

ai bar[type="heart"] b::before {
  content: "";
  position: absolute;
  top: 0; left: -100%;
  width: 60%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.5), transparent);
  animation: barFlow 2.5s infinite;
}

ai psych rel { transition: transform 0.25s, box-shadow 0.25s; }
ai psych rel:hover { transform: translateX(3px); box-shadow: 0 2px 6px rgba(90,74,122,0.2), -3px 0 0 currentColor; }

ai stm { transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.35s; cursor: pointer; transform-origin: center top; }
ai stm[c="1"]:hover { transform: rotate(-1deg) translateY(-5px) scale(1.04); z-index: 20; }
ai stm[c="2"]:hover { transform: rotate(0.5deg) translateY(-5px) scale(1.04); z-index: 20; }
ai stm[c="3"]:hover { transform: rotate(0deg) translateY(-5px) scale(1.04); z-index: 20; }
ai stm[c="4"]:hover { transform: rotate(1deg) translateY(-5px) scale(1.04); z-index: 20; }
ai stm[c="5"]:hover { transform: rotate(-0.5deg) translateY(-5px) scale(1.04); z-index: 20; }
ai stm[c="6"]:hover { transform: rotate(0.5deg) translateY(-5px) scale(1.04); z-index: 20; }

ai mem { transition: background 0.3s, transform 0.3s; }
ai mem:hover { background: rgba(255,255,255,0.6); transform: translateX(4px); }
ai mem[type="hint"]:hover { background: rgba(90,74,122,0.15); }

ai val[expose="high"] { animation: exposeGlow 2.5s ease-in-out infinite; }
ai val[arouse="80"], ai val[arouse="90"], ai val[arouse="100"] { animation: arouseHot 1.5s ease-in-out infinite; }

ai details[type="warn"]::before, ai details[type="warn"]::after { background-size: 24px 24px; animation: warningStripes 3s linear infinite; }
@keyframes warningStripes { to { background-position: 24px 0; } }
ai wcircle { transition: transform 0.3s; }
ai warn:hover wcircle { transform: scale(1.1) rotate(10deg); }

/* 堕落值指针呼吸 */
ai bar[type="fall"] b { animation: fallPulse 3s ease-in-out infinite; }
@keyframes fallPulse { 0%, 100% { box-shadow: 0 0 6px rgba(139,0,139,0.5); } 50% { box-shadow: 0 0 12px rgba(139,0,139,0.8); } }

/* ============ 移动端适配（重点优化照片区域） ============ */
@media (max-width: 480px) {
  ai { padding: 10px 6px; font-size: 13px; }
  ai text { padding: 10px; }
  ai text p { font-size: 14px; }

  ai details[type="iou"],
  ai details[type="quest"],
  ai details[type="warn"],
  ai details[type="psych"] {
    display: block;
    width: calc(100% - 8px);
  }

  ai details summary { padding: 7px 10px; font-size: 13px; }

  /* ⭐ 移动端照片优化：缩小列宽+居中显示，避免info被挤压 */
  ai idcard {
    grid-template-columns: 96px 1fr;
    gap: 10px;
    min-height: 0;
    padding: 12px 10px 20px;
  }
  ai idcard photo {
    width: 96px;
    height: 144px;
    background-position: center top;
  }
  ai idcard info {
    padding-right: 0;
    font-size: 12px;
  }
  ai idcard info d::before { min-width: 52px; font-size: 11px; }
  ai idcard chop {
    width: 38px;
    height: 38px;
    font-size: 16px;
    bottom: 4px;
    right: 8px;
  }

  ai bignum b { font-size: 18px; }
  ai live stats { grid-template-columns: repeat(2, 1fr); }
  ai love { grid-template-columns: 1fr !important; }
  ai report sec { grid-template-columns: 1fr; }
  ai notes { grid-template-columns: 1fr; gap: 12px; }
  ai stm { transform: none !important; margin-top: 0 !important; }
  ai acts a { grid-template-columns: 28px 1fr auto; padding: 6px 8px; }
  ai acts a opt { width: 24px; height: 24px; font-size: 11px; }
}

/* ⭐ 超窄屏（360px以下）照片进一步降级为顶部横向 */
@media (max-width: 360px) {
  ai idcard {
    grid-template-columns: 80px 1fr;
    gap: 8px;
  }
  ai idcard photo { width: 80px; height: 120px; }
  ai idcard info { padding-right: 0; }
  ai idcard info d { flex-wrap: wrap; }
}
/* ===================================================
   🎬 LIVE ROOM 直播间主题 · 界面美化独立版
   =================================================== */

/* ░░░░░ PART 1 · 顶部栏 ░░░░░ */
.sticky.w-full.top-0.flex.items-center {
  background: linear-gradient(180deg, #0a0a14 0%, #14142a 100%) !important;
  border-bottom: 1px solid rgba(255,32,128,0.3) !important;
  box-shadow: 0 0 20px rgba(255,32,128,0.1), 0 2px 12px rgba(0,0,0,0.5) !important;
  backdrop-filter: blur(10px) !important;
}
.sticky.w-full.top-0.flex.items-center::after {
  content: "" !important;
  position: absolute !important;
  bottom: -1px !important; left: 0 !important; right: 0 !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent 0%, #ff2080 20%, #20d4ff 50%, #ffd040 80%, transparent 100%) !important;
  filter: blur(0.5px) !important;
  animation: topNeonScan 4s ease-in-out infinite !important;
  pointer-events: none !important;
}
@keyframes topNeonScan { 0%, 100% { opacity: 0.5; } 50% { opacity: 1; } }

#ai-model-selector .group.flex.items-center {
  background: linear-gradient(90deg, rgba(255,32,128,0.1), rgba(255,32,128,0.04)) !important;
  border: 1px solid rgba(255,32,128,0.3) !important;
  border-radius: 4px !important;
  padding: 2px 10px !important;
  transition: all 0.3s !important;
}
#ai-model-selector .group.flex.items-center:hover {
  background: linear-gradient(90deg, rgba(255,32,128,0.2), rgba(255,32,128,0.08)) !important;
  border-color: #ff2080 !important;
  box-shadow: 0 0 12px rgba(255,32,128,0.4) !important;
  transform: translateY(-1px) !important;
}
#ai-model-selector .truncate.text-\[13px\] {
  color: #ff80b0 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
  text-shadow: 0 0 6px rgba(255,32,128,0.5) !important;
}
#ai-model-selector .shrink-0.flex.items-center svg {
  color: #ff2080 !important;
  filter: drop-shadow(0 0 3px rgba(255,32,128,0.6)) !important;
  transition: transform 0.3s !important;
}
#ai-model-selector .group.flex.items-center:hover svg { transform: translateY(2px) !important; }

.sticky.w-full.top-0 svg.lucide-clock-8 {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 4px rgba(32,212,255,0.6)) !important;
  transition: all 0.3s !important;
}
.sticky.w-full.top-0 svg.lucide-clock-8:hover {
  transform: rotate(15deg) scale(1.15) !important;
  filter: drop-shadow(0 0 8px rgba(32,212,255,0.9)) !important;
}
.sticky.w-full.top-0 span.MuiBadge-dot.md\:hidden {
  background: #ff2030 !important;
  box-shadow: 0 0 6px rgba(255,32,48,0.9), 0 0 12px rgba(255,32,48,0.5) !important;
  animation: dotPulse 1.2s infinite !important;
}
@keyframes dotPulse { 0%, 100% { transform: scale(1); opacity: 1; } 50% { transform: scale(1.4); opacity: 0.6; } }

.sticky.w-full.top-0 button.MuiIconButton-root:has(svg.lucide-music-2) {
  background: rgba(255,208,64,0.06) !important;
  border: 1px solid rgba(255,208,64,0.25) !important;
  border-radius: 50% !important;
  transition: all 0.3s !important;
}
.sticky.w-full.top-0 button.MuiIconButton-root:has(svg.lucide-music-2):hover {
  background: rgba(255,208,64,0.18) !important;
  border-color: #ffd040 !important;
  box-shadow: 0 0 10px rgba(255,208,64,0.5) !important;
}
.sticky.w-full.top-0 button.MuiIconButton-root svg.lucide-music-2 {
  color: #ffd040 !important;
  filter: drop-shadow(0 0 4px rgba(255,208,64,0.6)) !important;
}
.sticky.w-full.top-0 svg:has(use[href="#icon-icon-set"]) {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 4px rgba(32,212,255,0.6)) !important;
  transition: all 0.3s !important;
}
.sticky.w-full.top-0 svg:has(use[href="#icon-icon-set"]):hover {
  transform: rotate(90deg) !important;
  filter: drop-shadow(0 0 8px rgba(32,212,255,0.9)) !important;
}
#header-setting-button {
  background: rgba(32,212,255,0.08) !important;
  border: 1px solid rgba(32,212,255,0.3) !important;
  transition: all 0.4s !important;
}
#header-setting-button:hover {
  background: rgba(32,212,255,0.2) !important;
  border-color: #20d4ff !important;
  box-shadow: 0 0 12px rgba(32,212,255,0.5) !important;
}
#header-setting-button:hover svg { transform: rotate(90deg) !important; }
#header-setting-button svg {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 3px rgba(32,212,255,0.6)) !important;
  transition: transform 0.4s !important;
}

/* ░░░░░ PART 2 · 开场白选择器 ░░░░░ */
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"] {
  background: linear-gradient(90deg, #12122a, #1a1a3a, #12122a) !important;
  border: 1px solid #ff2080 !important;
  color: #ff80b0 !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.2), 0 2px 10px rgba(255,32,128,0.15), inset 0 1px 0 rgba(255,255,255,0.05) !important;
  transition: all 0.3s !important;
  position: relative !important;
}
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"]:hover {
  box-shadow: 0 0 0 1px #ff2080, 0 0 18px rgba(255,32,128,0.5), inset 0 1px 0 rgba(255,255,255,0.1) !important;
  transform: translateY(-1px) !important;
}
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="SlidersH"] {
  color: #ff2080 !important;
  filter: drop-shadow(0 0 4px rgba(255,32,128,0.6)) !important;
}
div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="ChevronDown"] {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 3px rgba(32,212,255,0.6)) !important;
  transition: transform 0.3s !important;
}
div.flex.items-center.h-9.cursor-pointer.group:hover svg[data-icon="ChevronDown"] { transform: translateY(2px) !important; }

/* ░░░░░ PART 3 · 按钮栏 ░░░░░ */
#ai-mod-button2 button.MuiButton-root {
  background: linear-gradient(135deg, #14142a, #1a1a3a) !important;
  border: 1px solid rgba(32,212,255,0.35) !important;
  color: #20d4ff !important;
  border-radius: 6px !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-size: 12px !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
  text-shadow: 0 0 4px rgba(32,212,255,0.5) !important;
  transition: all 0.3s !important;
  position: relative !important;
  overflow: hidden !important;
}
#ai-mod-button2 button.MuiButton-root::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important; left: -100% !important;
  width: 100% !important; height: 100% !important;
  background: linear-gradient(90deg, transparent, rgba(32,212,255,0.3), transparent) !important;
  transition: left 0.6s !important;
  pointer-events: none !important;
}
#ai-mod-button2 button.MuiButton-root:hover {
  border-color: #20d4ff !important;
  background: linear-gradient(135deg, #1a1a3a, #20204a) !important;
  box-shadow: 0 0 0 1px rgba(32,212,255,0.4), 0 0 14px rgba(32,212,255,0.5) !important;
  transform: translateY(-2px) !important;
}
#ai-mod-button2 button.MuiButton-root:hover::before { left: 100% !important; }
#ai-mod-button2 button.MuiButton-root:active { transform: translateY(0) scale(0.97) !important; }
#ai-mod-button2 button.MuiButton-root svg {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 3px rgba(32,212,255,0.6)) !important;
}

/* ░░░░░ PART 4 · 底部输入栏 ░░░░░ */
.bg-gradient-to-t {
  background: linear-gradient(180deg, transparent 0%, rgba(10,10,20,0.5) 30%, rgba(10,10,20,0.9) 70%, rgba(10,10,20,0.98) 100%) !important;
}
#ai-chat-bottom-input {
  background: linear-gradient(180deg, #14142a, #0a0a14) !important;
  border: 2px solid #ff2080 !important;
  border-radius: 14px !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.3), 0 0 24px rgba(255,32,128,0.25), 0 6px 20px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.05) !important;
  position: relative !important;
  transition: all 0.3s !important;
}
#ai-chat-bottom-input:focus-within {
  border-color: #ff2080 !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.5), 0 0 32px rgba(255,32,128,0.4), 0 6px 20px rgba(0,0,0,0.6) !important;
}
#ai-chat-bottom-input::before {
  content: "" !important;
  position: absolute !important;
  top: -6px !important; left: 50% !important;
  transform: translateX(-50%) !important;
  width: 90px !important; height: 4px !important;
  background: linear-gradient(90deg, transparent, #ff2080 25%, #ffd040 50%, #20d4ff 75%, transparent) !important;
  border-radius: 2px !important;
  filter: blur(1px) !important;
  animation: ledFlow 3s ease-in-out infinite !important;
  pointer-events: none !important;
}
@keyframes ledFlow {
  0%, 100% { opacity: 0.6; transform: translateX(-50%) scaleX(1); }
  50% { opacity: 1; transform: translateX(-50%) scaleX(1.15); }
}
#ai-chat-input {
  color: #e8ecf5 !important;
  font-family: "PingFang SC", system-ui, sans-serif !important;
  font-size: 14.5px !important;
  caret-color: #ff2080 !important;
  background: transparent !important;
}
#ai-chat-input::placeholder {
  color: rgba(255,128,176,0.4) !important;
  font-style: italic !important;
  letter-spacing: 1px !important;
}
#ai-chat-input::selection {
  background: rgba(255,32,128,0.4) !important;
  color: #ffffff !important;
}

/* ░░░░░ PART 5 · 分页栏 ░░░░░ */
.MuiPaginationItem-root {
  color: #80b0e0 !important;
  background: rgba(32,212,255,0.06) !important;
  border: 1px solid rgba(32,212,255,0.2) !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-weight: bold !important;
  transition: all 0.3s !important;
}
.MuiPaginationItem-root:hover {
  background: rgba(255,32,128,0.15) !important;
  color: #ff80b0 !important;
  border-color: #ff2080 !important;
  box-shadow: 0 0 10px rgba(255,32,128,0.4) !important;
}
.MuiPaginationItem-root.Mui-selected {
  background: linear-gradient(135deg, #ff2080, #c0185c) !important;
  color: #ffffff !important;
  border-color: #ff2080 !important;
  text-shadow: 0 0 6px rgba(255,255,255,0.5) !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.5), 0 0 16px rgba(255,32,128,0.6), inset 0 1px 0 rgba(255,255,255,0.2) !important;
  animation: selectedPulse 2s ease-in-out infinite !important;
}
@keyframes selectedPulse {
  0%, 100% { box-shadow: 0 0 0 1px rgba(255,32,128,0.5), 0 0 16px rgba(255,32,128,0.6), inset 0 1px 0 rgba(255,255,255,0.2); }
  50% { box-shadow: 0 0 0 1px rgba(255,32,128,0.7), 0 0 24px rgba(255,32,128,0.9), inset 0 1px 0 rgba(255,255,255,0.3); }
}
.MuiPaginationItem-root.Mui-disabled {
  color: #4a5a7a !important;
  background: rgba(74,90,122,0.08) !important;
  border-color: rgba(74,90,122,0.2) !important;
  opacity: 0.5 !important;
}
.MuiPaginationItem-icon {
  color: #20d4ff !important;
  filter: drop-shadow(0 0 2px rgba(32,212,255,0.5)) !important;
}
.MuiStack-root.css-1uwir8f .MuiBox-root {
  color: #80b0e0 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
}
.MuiInputBase-input {
  color: #ff80b0 !important;
  background: rgba(255,32,128,0.08) !important;
  border: 1px solid rgba(255,32,128,0.3) !important;
  border-radius: 3px !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-weight: bold !important;
  text-align: center !important;
}

/* ░░░░░ PART 6 · 评论区 ░░░░░ */
div[class*="w-full"][class*="bg-white"][class*="bottom-0"] {
  background: linear-gradient(180deg, #0a0a14 0%, #14142a 50%, #0a0a14 100%) !important;
  border-top: 2px solid #ff2080 !important;
  box-shadow: 0 -2px 20px rgba(255,32,128,0.2), inset 0 1px 0 rgba(255,255,255,0.05) !important;
  color: #e8ecf5 !important;
}
div.text-lg.font-bold {
  color: #ff80b0 !important;
  text-shadow: 0 0 8px rgba(255,32,128,0.5) !important;
  font-family: "Courier New", "Consolas", monospace !important;
  letter-spacing: 2px !important;
  position: relative !important;
  padding-left: 24px !important;
}
div.text-lg.font-bold::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important; top: 50% !important;
  transform: translateY(-50%) !important;
  width: 16px !important; height: 16px !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><circle cx='8' cy='8' r='5' fill='%23ff2030'><animate attributeName='r' values='5;6.5;5' dur='1.2s' repeatCount='indefinite'/><animate attributeName='opacity' values='1;0.5;1' dur='1.2s' repeatCount='indefinite'/></circle><circle cx='8' cy='8' r='2.5' fill='%23ffffff'/></svg>") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}
p.MuiTypography-body1.text-grey-600 {
  color: #80b0e0 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  letter-spacing: 1px !important;
  text-shadow: 0 0 4px rgba(128,176,224,0.3) !important;
}
span.MuiRating-root { filter: drop-shadow(0 0 4px rgba(255,208,64,0.5)) !important; }
span.MuiRating-iconEmpty svg { color: rgba(255,208,64,0.2) !important; }
span.MuiRating-iconFilled svg {
  color: #ffd040 !important;
  filter: drop-shadow(0 0 6px rgba(255,208,64,0.8)) !important;
  animation: starGlow 2s ease-in-out infinite !important;
}
@keyframes starGlow {
  0%, 100% { filter: drop-shadow(0 0 6px rgba(255,208,64,0.8)); }
  50% { filter: drop-shadow(0 0 12px rgba(255,208,64,1)); }
}
span.text-orange-500 {
  color: #ffd040 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-weight: bold !important;
  text-shadow: 0 0 6px rgba(255,208,64,0.6) !important;
}
div.flex.flex-col.border-gray-200 {
  background: linear-gradient(180deg, #14142a, #0f0f24) !important;
  border: 1px solid #20d4ff !important;
  border-radius: 8px !important;
  box-shadow: 0 0 0 1px rgba(32,212,255,0.2), 0 0 16px rgba(32,212,255,0.12), inset 0 1px 0 rgba(255,255,255,0.05) !important;
  transition: all 0.3s !important;
}
div.flex.flex-col.border-gray-200:focus-within {
  border-color: #ff2080 !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.4), 0 0 24px rgba(255,32,128,0.3) !important;
}
textarea.rc-textarea {
  background: transparent !important;
  color: #e8ecf5 !important;
  font-family: "PingFang SC", system-ui, sans-serif !important;
  caret-color: #ff2080 !important;
}
textarea.rc-textarea::placeholder {
  color: rgba(128,176,224,0.4) !important;
  font-style: italic !important;
}
div.bg-gray-100.text-gray-500 {
  background: rgba(32,212,255,0.08) !important;
  color: #80b0e0 !important;
  border: 1px solid rgba(32,212,255,0.2) !important;
  border-radius: 10px !important;
  font-family: "Courier New", "Consolas", monospace !important;
  font-size: 11px !important;
}
div.cursor-pointer.group.flex.items-center.justify-center {
  background: linear-gradient(135deg, #ff2080, #c0185c) !important;
  border: 1px solid #ff2080 !important;
  border-radius: 50% !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.4), 0 0 16px rgba(255,32,128,0.5), inset 0 1px 0 rgba(255,255,255,0.2) !important;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}
div.cursor-pointer.group.flex.items-center.justify-center:hover {
  transform: scale(1.15) rotate(-15deg) !important;
  box-shadow: 0 0 0 1px #ff2080, 0 0 24px rgba(255,32,128,0.8), inset 0 1px 0 rgba(255,255,255,0.3) !important;
}
div.cursor-pointer.group.flex.items-center.justify-center:active { transform: scale(0.95) !important; }
div[data-state="closed"] svg[data-icon="Send03"] {
  color: #ffffff !important;
  filter: drop-shadow(0 0 4px rgba(255,255,255,0.6)) !important;
}
div.style_divider__mW0YX {
  background: linear-gradient(90deg, transparent, rgba(255,32,128,0.4) 30%, rgba(32,212,255,0.4) 50%, rgba(255,208,64,0.4) 70%, transparent) !important;
  height: 1px !important;
  border: none !important;
  box-shadow: 0 0 8px rgba(255,32,128,0.3) !important;
}
button.MuiButton-outlinedPrimary {
  background: rgba(32,212,255,0.06) !important;
  border: 1px solid rgba(32,212,255,0.3) !important;
  color: #80b0e0 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  letter-spacing: 1px !important;
  transition: all 0.3s !important;
}
button.MuiButton-outlinedPrimary:hover {
  background: rgba(32,212,255,0.15) !important;
  border-color: #20d4ff !important;
  color: #20d4ff !important;
  box-shadow: 0 0 10px rgba(32,212,255,0.4) !important;
}
button.MuiButton-containedPrimary {
  background: linear-gradient(135deg, #ff2080, #c0185c) !important;
  border: 1px solid #ff2080 !important;
  color: #ffffff !important;
  font-family: "Courier New", "Consolas", monospace !important;
  letter-spacing: 1px !important;
  font-weight: bold !important;
  text-shadow: 0 0 4px rgba(255,255,255,0.5) !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.4), 0 0 12px rgba(255,32,128,0.5) !important;
}
button.MuiButton-containedPrimary:hover {
  box-shadow: 0 0 0 1px #ff2080, 0 0 20px rgba(255,32,128,0.7) !important;
  transform: translateY(-1px) !important;
}
div.p-3.overflow-y-auto::-webkit-scrollbar { width: 5px !important; }
div.p-3.overflow-y-auto::-webkit-scrollbar-track { background: rgba(0,0,0,0.3) !important; }
div.p-3.overflow-y-auto::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #ff2080, #20d4ff) !important;
  border-radius: 3px !important;
  box-shadow: 0 0 4px rgba(255,32,128,0.5) !important;
}
div.group.ml-0 {
  background: linear-gradient(90deg, rgba(32,212,255,0.04), rgba(20,20,42,0.4) 50%, rgba(255,32,128,0.04)) !important;
  border-left: 2px solid rgba(32,212,255,0.4) !important;
  border-radius: 0 6px 6px 0 !important;
  transition: all 0.3s !important;
}
div.group.ml-0:hover {
  background: linear-gradient(90deg, rgba(255,32,128,0.1), rgba(20,20,42,0.5) 50%, rgba(255,32,128,0.1)) !important;
  border-left-color: #ff2080 !important;
  box-shadow: -3px 0 12px rgba(255,32,128,0.3), 0 2px 8px rgba(0,0,0,0.3) !important;
}
div.group img.rounded-full {
  border: 2px solid #ff2080 !important;
  box-shadow: 0 0 0 1px rgba(255,32,128,0.4), 0 0 10px rgba(255,32,128,0.5) !important;
  transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}
div.group:hover img.rounded-full {
  transform: scale(1.1) rotate(5deg) !important;
  box-shadow: 0 0 0 1px #ff2080, 0 0 18px rgba(255,32,128,0.8) !important;
}
div.text-sm.text-grey-600 span.font-bold {
  color: #ff80b0 !important;
  text-shadow: 0 0 6px rgba(255,32,128,0.4) !important;
  font-weight: bold !important;
  letter-spacing: 0.5px !important;
}
div.text-sm.text-grey-600 { color: #80b0e0 !important; }
span.text-\[10px\] {
  background: linear-gradient(135deg, #ffd040, #ff8000) !important;
  color: #1a1410 !important;
  font-weight: bold !important;
  padding: 1px 6px !important;
  border-radius: 8px !important;
  letter-spacing: 1px !important;
  box-shadow: 0 0 6px rgba(255,208,64,0.7) !important;
  text-shadow: none !important;
  animation: vipBlink 2s ease-in-out infinite !important;
}
@keyframes vipBlink {
  0%, 100% { box-shadow: 0 0 6px rgba(255,208,64,0.7); }
  50% { box-shadow: 0 0 14px rgba(255,208,64,1); }
}
div.break-all { color: #e8ecf5 !important; line-height: 1.7 !important; letter-spacing: 0.3px !important; }
div.text-xs.text-grey-600 {
  color: #5a7090 !important;
  font-family: "Courier New", "Consolas", monospace !important;
  letter-spacing: 1px !important;
}
button.text-gray-400 {
  color: #80b0e0 !important;
  background: rgba(32,212,255,0.06) !important;
  border: 1px solid rgba(32,212,255,0.2) !important;
  border-radius: 12px !important;
  transition: all 0.3s !important;
}
button.text-gray-400:hover {
  color: #ff80b0 !important;
  background: rgba(255,32,128,0.15) !important;
  border-color: #ff2080 !important;
  box-shadow: 0 0 10px rgba(255,32,128,0.4) !important;
}
button.text-gray-400 svg {
  color: inherit !important;
  filter: drop-shadow(0 0 2px currentColor) !important;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}
button.text-gray-400:hover svg { transform: scale(1.2) rotate(-10deg) !important; }
span.cursor-pointer {
  color: #20d4ff !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
  text-shadow: 0 0 4px rgba(32,212,255,0.4) !important;
  transition: all 0.3s !important;
}
span.cursor-pointer:hover {
  color: #ff80b0 !important;
  text-shadow: 0 0 8px rgba(255,32,128,0.6) !important;
}
div.ml-8.border-l {
  border-left: 1px dashed rgba(255,32,128,0.3) !important;
  background: linear-gradient(90deg, rgba(255,32,128,0.04), transparent) !important;
}

/* ░░░░░ 移动端适配 ░░░░░ */
@media (max-width: 480px) {
  #ai-chat-bottom-input::before { width: 60px !important; height: 3px !important; }
  div.text-lg.font-bold { padding-left: 20px !important; letter-spacing: 1.5px !important; }
}

/* ===================================================
   📜 宣纸雅韵 · 聊天框独立美化版
   =================================================== */

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

/* 1. 聊天框主体 - 宣纸卷轴 */
.bg-gray-100\/90.relative.inline-block {
  background:
    radial-gradient(ellipse at 20% 30%, rgba(180,140,90,0.05) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 70%, rgba(160,120,80,0.04) 0%, transparent 50%),
    radial-gradient(ellipse at 50% 50%, rgba(200,170,130,0.03) 0%, transparent 70%),
    linear-gradient(180deg, #f7efde 0%, #f2e7cc 50%, #ede0bf 100%) !important;
  border: 1px solid #c9b48a !important;
  border-radius: 4px !important;
  box-shadow: inset 0 0 30px rgba(140,100,60,0.08), inset 0 0 8px rgba(140,100,60,0.05), 0 2px 8px rgba(80,60,40,0.12), 0 6px 20px rgba(80,60,40,0.08) !important;
  position: relative !important;
  isolation: isolate;
  overflow: hidden !important;
  padding: 22px 24px 18px 24px !important;
}
.bg-gray-100\/90.relative.inline-block::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background-image:
    repeating-linear-gradient(90deg, transparent 0px, transparent 38px, rgba(140,100,60,0.025) 39px, transparent 40px),
    repeating-linear-gradient(180deg, transparent 0px, transparent 18px, rgba(140,100,60,0.015) 19px, transparent 20px) !important;
  pointer-events: none !important;
  z-index: 0 !important;
  opacity: 0.8 !important;
}
.bg-gray-100\/90.relative.inline-block::after {
  content: "" !important;
  position: absolute !important;
  top: 10px !important; right: 12px !important;
  width: 36px !important; height: 36px !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'><defs><filter id='ink'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' seed='3'/><feDisplacementMap in='SourceGraphic' scale='1.2'/></filter></defs><rect x='3' y='3' width='30' height='30' rx='2' fill='%23b03020' filter='url(%23ink)' opacity='0.88'/><text x='18' y='14' font-family='SimSun,serif' font-size='10' font-weight='bold' fill='%23faf0e0' text-anchor='middle'>对</text><text x='18' y='26' font-family='SimSun,serif' font-size='10' font-weight='bold' fill='%23faf0e0' text-anchor='middle'>话</text></svg>") !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  z-index: 4 !important;
  pointer-events: none !important;
  opacity: 0.92 !important;
  transform: rotate(-4deg) !important;
  filter: drop-shadow(0 1px 2px rgba(120,40,20,0.3)) !important;
}

/* 2. 输入聊天框 - 笔录册页 */
.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90) {
  background:
    radial-gradient(ellipse at 30% 40%, rgba(180,150,100,0.04) 0%, transparent 50%),
    linear-gradient(180deg, #faf3e2 0%, #f5ebd2 50%, #f0e3c4 100%) !important;
  border: 1px solid #b89e6e !important;
  box-shadow: inset 0 0 25px rgba(140,100,60,0.07), 0 2px 6px rgba(80,60,40,0.1) !important;
}
.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90)::after {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'><rect x='6' y='6' width='24' height='24' rx='2' fill='%2380605a' opacity='0.85'/><text x='18' y='22' font-family='SimSun,serif' font-size='13' font-weight='bold' fill='%23faf0e0' text-anchor='middle'>笔</text></svg>") !important;
  width: 28px !important; height: 28px !important;
  transform: rotate(3deg) !important;
}

/* 3. 文本内容 */
.markdown-body {
  color: #3a2818 !important;
  font-family: "LXGW WenKai", "霞鹜文楷", "Source Han Serif SC", "Noto Serif SC", "FangSong", "STKaiti", "KaiTi", serif !important;
  font-size: 15px !important;
  line-height: 1.95 !important;
  letter-spacing: 0.5px !important;
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
  text-shadow: 0 0 1px rgba(58,40,24,0.05) !important;
}

/* 4. 底部按钮栏 */
.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary {
  color: #6b4f30 !important;
  background: linear-gradient(180deg, rgba(250,243,226,0.6), rgba(235,220,190,0.5)) !important;
  border: 1px solid rgba(140,100,60,0.3) !important;
  border-radius: 2px !important;
  font-size: 12px !important;
  padding: 2px 12px !important;
  margin: 0 3px !important;
  letter-spacing: 2px !important;
  font-family: "LXGW WenKai", "FangSong", "STKaiti", "KaiTi", serif !important;
  transition: all 0.4s ease !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 1px 2px rgba(80,60,40,0.08) !important;
}
.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary:hover {
  color: #a83020 !important;
  background: linear-gradient(180deg, rgba(252,236,220,0.9), rgba(245,220,205,0.8)) !important;
  border-color: #b03020 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.5), 0 2px 5px rgba(176,48,32,0.2) !important;
  transform: translateY(-1px) !important;
}
.MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary:active {
  transform: translateY(0) !important;
  box-shadow: inset 0 1px 3px rgba(80,60,40,0.15) !important;
}
.MuiTypography-root.MuiTypography-body2.css-6c0gf2 {
  color: #5a4030 !important;
  font-family: "LXGW WenKai", "STKaiti", "KaiTi", "FangSong", serif !important;
  font-size: 12px !important;
  letter-spacing: 2px !important;
  font-style: italic !important;
  opacity: 0.85 !important;
}
.text-orange-500 {
  color: #b03020 !important;
  font-family: "LXGW WenKai", "STKaiti", "KaiTi", serif !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
}

/* 5. 加载动画 - 墨滴 */
.style_dot-flashing__8L91Q.style_text__zGhNq { display: none !important; }
.flex.items-center.justify-center.w-6.h-5 {
  position: relative !important;
  min-height: 24px !important;
  min-width: 70px !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: 70px !important; height: 24px !important;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 24'><defs><radialGradient id='ink' cx='50%25' cy='50%25'><stop offset='0%25' stop-color='%231a1410' stop-opacity='1'/><stop offset='70%25' stop-color='%23402810' stop-opacity='0.5'/><stop offset='100%25' stop-color='%23402810' stop-opacity='0'/></radialGradient></defs><circle cx='14' cy='12' r='5' fill='url(%23ink)'><animate attributeName='r' values='3;6;3' dur='1.4s' begin='0s' repeatCount='indefinite'/><animate attributeName='opacity' values='0.3;1;0.3' dur='1.4s' begin='0s' repeatCount='indefinite'/></circle><circle cx='35' cy='12' r='5' fill='url(%23ink)'><animate attributeName='r' values='3;6;3' dur='1.4s' begin='0.45s' repeatCount='indefinite'/><animate attributeName='opacity' values='0.3;1;0.3' dur='1.4s' begin='0.45s' repeatCount='indefinite'/></circle><circle cx='56' cy='12' r='5' fill='url(%23ink)'><animate attributeName='r' values='3;6;3' dur='1.4s' begin='0.9s' repeatCount='indefinite'/><animate attributeName='opacity' values='0.3;1;0.3' dur='1.4s' begin='0.9s' repeatCount='indefinite'/></circle></svg>") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
}

/* 6. 选中文字 */
.markdown-body ::selection {
  background: rgba(176,48,32,0.25) !important;
  color: #1a0a05 !important;
}

/* 7. 移动端适配 */
@media (max-width: 480px) {
  .bg-gray-100\/90.relative.inline-block { padding: 16px 18px 14px 18px !important; border-radius: 3px !important; }
  .bg-gray-100\/90.relative.inline-block::after { width: 28px !important; height: 28px !important; top: 6px !important; right: 8px !important; }
  .bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90)::after { width: 22px !important; height: 22px !important; }
  .markdown-body { font-size: 14.5px !important; line-height: 1.85 !important; }
  .flex.items-center.justify-center.w-6.h-5::before { width: 60px !important; height: 20px !important; }
}

/* ===================================================
   🔧 输入框文字可见性修复 v2（深字·不跟背景较劲）
   =================================================== */
#ai-chat-bottom-input,
#ai-chat-bottom-input *,
#ai-chat-input,
#ai-chat-bottom-input textarea,
#ai-chat-bottom-input input,
#ai-chat-bottom-input [contenteditable],
#ai-chat-bottom-input .rc-textarea {
  color: #2c2418 !important;
  -webkit-text-fill-color: #2c2418 !important;
  caret-color: #ff2080 !important;
}
#ai-chat-input::placeholder,
#ai-chat-bottom-input textarea::placeholder,
#ai-chat-bottom-input [contenteditable]::placeholder,
#ai-chat-bottom-input .rc-textarea::placeholder {
  color: rgba(44,36,24,0.45) !important;
  -webkit-text-fill-color: rgba(44,36,24,0.45) !important;
}