/**
 * 《原来她们才是主角》· 古卷漆木 Reply UI · v5.6
 * MUFY「CSS 美化」栏 · 写法对齐 escape/prompts/teo-reply.css
 * 要点：ASCII 变量名、直写 hex、裸标签+class 双选择器、禁止 @import
 */

:root {
  --fy-paper: #f2e8d5;
  --fy-paper-light: #faf4e8;
  --fy-paper-deep: #e8dcc4;
  --fy-ink: #4a3728;
  --fy-ink-soft: #6b5344;
  --fy-ink-muted: #8a7968;
  --fy-cinnabar: #8b4513;
  --fy-cinnabar-bright: #a0522d;
  --fy-lacquer-top: #a68b67;
  --fy-lacquer-bot: #705a40;
  --fy-lacquer-edge: #4a3728;
  --fy-lacquer-shadow: rgba(74, 55, 40, 0.35);
  --fy-jade: #5a7a6a;
  --fy-jade-light: #7a9a88;
  --fy-gold: #c9a86c;
  --fy-border: #5c4636;
  --fy-font: "SimSun", "Songti SC", "Noto Serif SC", serif;
  --fy-font-display: "KaiTi", "STKaiti", "Ma Shan Zheng", serif;
}

img[src="/chat-star.png"],
img[src*="chat-star.png"] {
  display: none !important;
}

/* ========== MUFY 气泡：透明壳，样式写在内部区块 ========== */
.mufy_ai_message_bubble {
  color: #4a3728 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 2px 0 !important;
  font-family: "SimSun", "Songti SC", serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}

.mufy_ai_message_bubble::before,
.mufy_ai_message_bubble::after {
  display: none !important;
  content: none !important;
}

.mufy_ai_message_bubble * {
  box-sizing: border-box;
}

/* 思维链：只隐藏 .thinking-body，勿对 redacted_thinking 本身 display:none（防闭合标签解析失败时误吞正文） */
redacted_thinking,
.mufy_ai_message_bubble redacted_thinking {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.thinking-body,
redacted_thinking .thinking-body,
.mufy_ai_message_bubble redacted_thinking .thinking-body,
.mufy_ai_message_bubble .thinking-body {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* 兼容旧输出：无 thinking-body 包裹时仍隐藏整段思维链 */
redacted_thinking:not(:has(.thinking-body)),
.mufy_ai_message_bubble redacted_thinking:not(:has(.thinking-body)) {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

think,
.thinking,
reasoning,
[thinking] {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* —— 折叠三角（对齐 escape，不用全局 background 重置） —— */
status-bottom details > summary,
.status-bottom details > summary,
memory-zone details > summary,
.memory-zone details > summary,
.mufy_ai_message_bubble status-bottom details > summary,
.mufy_ai_message_bubble memory-zone details > summary {
  list-style: none;
}

status-bottom details > summary::-webkit-details-marker,
.memory-zone details > summary::-webkit-details-marker,
.mufy_ai_message_bubble status-bottom details > summary::-webkit-details-marker,
.mufy_ai_message_bubble memory-zone details > summary::-webkit-details-marker {
  display: none !important;
}

/* —— 卷轴边线 —— */
fy-scroll,
.fy-scroll,
.mufy_ai_message_bubble .fy-scroll,
.mufy_ai_message_bubble status-top.fy-scroll,
.mufy_ai_message_bubble status-top.fy-status-top,
.mufy_ai_message_bubble status-bottom.fy-scroll,
.mufy_ai_message_bubble memory-zone.fy-scroll {
  position: relative;
  display: block !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  background-color: #f2e8d5 !important;
  background-image: linear-gradient(180deg, #faf4e8 0%, #f2e8d5 50%, #e8dcc4 100%) !important;
}

fy-scroll::before,
fy-scroll::after,
.fy-scroll::before,
.fy-scroll::after,
.mufy_ai_message_bubble .fy-scroll::before,
.mufy_ai_message_bubble .fy-scroll::after,
.mufy_ai_message_bubble status-top.fy-scroll::before,
.mufy_ai_message_bubble status-top.fy-scroll::after,
.mufy_ai_message_bubble status-top.fy-status-top::before,
.mufy_ai_message_bubble status-top.fy-status-top::after,
.mufy_ai_message_bubble status-bottom.fy-scroll::before,
.mufy_ai_message_bubble status-bottom.fy-scroll::after,
.mufy_ai_message_bubble memory-zone.fy-scroll::before,
.mufy_ai_message_bubble memory-zone.fy-scroll::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, #5c4636 8%, #5c4636 92%, transparent);
  pointer-events: none;
  z-index: 2;
}

fy-scroll::before,
.fy-scroll::before,
.mufy_ai_message_bubble .fy-scroll::before,
.mufy_ai_message_bubble status-top.fy-scroll::before,
.mufy_ai_message_bubble status-top.fy-status-top::before { left: 6px; }

fy-scroll::after,
.fy-scroll::after,
.mufy_ai_message_bubble .fy-scroll::after,
.mufy_ai_message_bubble status-top.fy-scroll::after,
.mufy_ai_message_bubble status-top.fy-status-top::after { right: 6px; }

/* —— 菱形界 —— */
divider,
.fy-divider,
.mufy_ai_message_bubble divider,
.mufy_ai_message_bubble .fy-divider {
  display: block !important;
  position: relative;
  height: 28px;
  margin: 4px 0 16px !important;
}

divider::before,
.fy-divider::before,
.mufy_ai_message_bubble divider::before {
  content: "";
  position: absolute;
  left: 10%;
  right: 10%;
  top: 50%;
  height: 1px;
  background: linear-gradient(90deg, transparent, #5c4636 15%, #5c4636 85%, transparent);
}

divider::after,
.fy-divider::after,
.mufy_ai_message_bubble divider::after {
  content: "◆";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 10px;
  color: #a68b67;
  background: #f2e8d5;
  padding: 0 10px;
}

/* —— 天时札记 / 天命卷宗 · 共用卷头 —— */
status-top,
.fy-status-top,
.mufy_ai_message_bubble status-top,
.mufy_ai_message_bubble .fy-status-top {
  position: relative;
  display: block !important;
  margin: 0 0 12px !important;
  padding: 18px 18px 14px !important;
  background-color: #f2e8d5 !important;
  border: 1px solid #5c4636 !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 12px rgba(74, 55, 40, 0.35) !important;
}

.st-seal,
.mem-seal,
span.st-seal,
span.mem-seal,
.mufy_ai_message_bubble .st-seal,
.mufy_ai_message_bubble .mem-seal {
  position: absolute;
  top: 14px;
  right: 16px;
  z-index: 3;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  font-family: "KaiTi", serif;
  font-size: 15px;
  color: #ffffff;
  background: #8b4513;
  border: 1px solid #4a3728;
  transform: rotate(5deg);
}

.st-head,
.mem-head,
div.st-head,
div.mem-head,
mem-head,
.mufy_ai_message_bubble .st-head,
.mufy_ai_message_bubble .mem-head,
.mufy_ai_message_bubble mem-head {
  display: block !important;
  margin: 0 0 12px !important;
  padding: 0 36px 10px 0 !important;
  border-bottom: 1px solid rgba(92, 70, 54, 0.3) !important;
  text-align: center;
}

.st-title,
.mem-title,
p.st-title,
p.mem-title,
mem-title,
.mufy_ai_message_bubble .st-title,
.mufy_ai_message_bubble .mem-title,
.mufy_ai_message_bubble mem-title {
  margin: 0 !important;
  font-family: "KaiTi", serif !important;
  font-size: 1.3rem !important;
  letter-spacing: 0.2em !important;
  color: #4a3728 !important;
}

.st-meta,
.mem-meta,
div.st-meta,
div.mem-meta,
mem-meta,
.mufy_ai_message_bubble .st-meta,
.mufy_ai_message_bubble .mem-meta,
.mufy_ai_message_bubble mem-meta {
  display: block !important;
  margin-top: 6px !important;
  font-size: 12px !important;
  color: #8a7968 !important;
  letter-spacing: 0.12em;
}

.st-day,
.st-scene,
mem-day,
mem-phase,
.mufy_ai_message_bubble .st-day,
.mufy_ai_message_bubble .st-scene,
.mufy_ai_message_bubble mem-day,
.mufy_ai_message_bubble mem-phase {
  display: inline-block;
  margin: 0 8px;
}

.st-strip,
.mufy_ai_message_bubble .st-strip {
  display: block !important;
  padding: 4px 8px 0 !important;
  text-align: center;
}

.st-line,
p.st-line,
.mufy_ai_message_bubble .st-line {
  display: block !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  font-size: 12.5px !important;
  line-height: 1.75 !important;
  letter-spacing: 0.06em;
  color: #6b5344 !important;
}

.st-line:last-child,
.mufy_ai_message_bubble .st-line:last-child {
  margin-bottom: 0 !important;
}

.st-line--system,
.st-line--system system,
.mufy_ai_message_bubble .st-line--system,
.mufy_ai_message_bubble .st-line--system system {
  color: #8b4513 !important;
  font-weight: 600;
}

.st-line--fate,
.st-line--fate fate,
.mufy_ai_message_bubble .st-line--fate,
.mufy_ai_message_bubble .st-line--fate fate {
  color: #5a7a6a !important;
  font-weight: 600;
}

.st-line--quest,
.st-line--quest quest,
.mufy_ai_message_bubble .st-line--quest,
.mufy_ai_message_bubble .st-line--quest quest {
  color: #705a40 !important;
  font-weight: 600;
}

status-top time,
status-top location,
status-top weather,
.mufy_ai_message_bubble status-top time,
.mufy_ai_message_bubble status-top location,
.mufy_ai_message_bubble status-top weather {
  color: inherit !important;
}

/* —— 正文绢帛（左对齐，对齐 escape text-indent） —— */
text,
.fy-text,
.mufy_ai_message_bubble text,
.mufy_ai_message_bubble .fy-text {
  display: block !important;
  margin: 0 0 16px !important;
  padding: 28px 24px 32px !important;
  text-align: left !important;
  font-size: 15px !important;
  line-height: 2.05 !important;
  color: #4a3728 !important;
  background-color: #f2e8d5 !important;
  background-image: linear-gradient(180deg, #faf4e8, #f2e8d5 40%, #e8dcc4) !important;
  border: 1px solid rgba(92, 70, 54, 0.35) !important;
  border-radius: 4px !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}

text p,
.fy-text p,
.mufy_ai_message_bubble text p,
.mufy_ai_message_bubble .fy-text p {
  margin: 0 0 1.15em !important;
  text-indent: 2em !important;
  text-align: left !important;
  color: #4a3728 !important;
  background: transparent !important;
}

text p:last-of-type,
.fy-text p:last-of-type,
.mufy_ai_message_bubble .fy-text p:last-child,
.mufy_ai_message_bubble text p:last-of-type {
  margin-bottom: 0 !important;
  color: #8b4513 !important;
  font-weight: 500;
}

text em,
.fy-text em,
.mufy_ai_message_bubble .fy-text em {
  color: #a0522d !important;
  font-style: normal;
  font-weight: 500;
}

/* —— 底栏容器 —— */
status-bottom,
.status-bottom,
.mufy_ai_message_bubble status-bottom {
  display: block !important;
  padding: 16px 18px 20px !important;
  margin: 0 !important;
  background-color: #f2e8d5 !important;
  border: 1px solid #5c4636 !important;
  border-top: none !important;
  box-shadow: 0 8px 24px rgba(74, 55, 40, 0.35) !important;
}

status-bottom details,
.status-bottom details,
.mufy_ai_message_bubble status-bottom details {
  display: block !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

/* —— 漆木签 summary —— */
summary.fy-tab,
.mufy_ai_message_bubble summary.fy-tab,
status-bottom details > summary.fy-tab,
.mufy_ai_message_bubble status-bottom details > summary.fy-tab {
  position: relative;
  display: block !important;
  cursor: pointer;
  list-style: none !important;
  padding: 13px 16px !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  background-color: #705a40 !important;
  background-image: linear-gradient(180deg, #a68b67 0%, #705a40 100%) !important;
  border: 1px solid #4a3728 !important;
  border-radius: 4px !important;
  box-shadow: 0 4px 10px rgba(74, 55, 40, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
}

summary.fy-tab::after,
.mufy_ai_message_bubble summary.fy-tab::after {
  content: "▾";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 11px;
  opacity: 0.75;
}

details[open] > summary.fy-tab::after,
.mufy_ai_message_bubble details[open] > summary.fy-tab::after {
  content: "▴";
}

details[open] > summary.fy-tab,
.mufy_ai_message_bubble details[open] > summary.fy-tab {
  border-radius: 4px 4px 0 0 !important;
}

summary.fy-subtab,
.mufy_ai_message_bubble summary.fy-subtab {
  display: block !important;
  cursor: pointer;
  list-style: none !important;
  margin: 10px 0 0 !important;
  padding: 9px 14px !important;
  text-align: center !important;
  font-size: 12.5px !important;
  letter-spacing: 0.14em !important;
  color: #ffffff !important;
  background-color: #5c4a38 !important;
  background-image: linear-gradient(180deg, #8a7358 0%, #5c4a38 100%) !important;
  border: 1px solid #4a3728 !important;
  border-radius: 3px !important;
  box-shadow: 0 3px 8px rgba(74, 55, 40, 0.25) !important;
}

details[open] > summary.fy-subtab,
.mufy_ai_message_bubble details[open] > summary.fy-subtab {
  border-radius: 3px 3px 0 0 !important;
}

summary.fy-memtab,
.mufy_ai_message_bubble summary.fy-memtab,
memory-zone details > summary.fy-memtab,
.mufy_ai_message_bubble memory-zone details > summary.fy-memtab {
  display: block !important;
  cursor: pointer;
  list-style: none !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  text-align: center !important;
  font-size: 12.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
  background-color: #705a40 !important;
  background-image: linear-gradient(180deg, #a68b67 0%, #705a40 100%) !important;
  border: 1px solid #4a3728 !important;
  border-radius: 3px !important;
  box-shadow: 0 3px 8px rgba(74, 55, 40, 0.25) !important;
}

details[open] > summary.fy-memtab,
.mufy_ai_message_bubble details[open] > summary.fy-memtab {
  border-radius: 3px 3px 0 0 !important;
  box-shadow: 0 2px 6px rgba(74, 55, 40, 0.2) !important;
}

fy-panel__body,
.fy-panel__body,
.mufy_ai_message_bubble .fy-panel__body,
.mufy_ai_message_bubble fy-panel__body {
  display: block !important;
  padding: 14px 12px 16px !important;
  text-align: left !important;
  background-color: #f2e8d5 !important;
  border: 1px solid #5c4636 !important;
  border-top: none !important;
  border-radius: 0 0 4px 4px !important;
  box-shadow: inset 0 2px 8px rgba(74, 55, 40, 0.06) !important;
}

details.fy-panel,
.mufy_ai_message_bubble details.fy-panel {
  display: block !important;
  margin: 0 0 12px !important;
}

details.fy-subpanel,
.mufy_ai_message_bubble details.fy-subpanel {
  display: block !important;
  margin: 0 !important;
}

details.fy-subpanel .fy-panel__body,
.mufy_ai_message_bubble details.fy-subpanel .fy-panel__body {
  border-top: none !important;
  border-radius: 0 0 3px 3px !important;
}

details.fy-panel--system > summary.fy-tab,
.mufy_ai_message_bubble details.fy-panel--system > summary.fy-tab {
  background-color: #4a2820 !important;
  background-image: linear-gradient(180deg, #7a4a42 0%, #4a2820 100%) !important;
  border-color: #3a1810 !important;
}

/* 女主面板签条：与其它 fy-tab 同色（不再用绿灰渐变） */
details.fy-panel--heroine > summary.fy-tab,
.mufy_ai_message_bubble details.fy-panel--heroine > summary.fy-tab {
  background-color: #705a40 !important;
  background-image: linear-gradient(180deg, #a68b67 0%, #705a40 100%) !important;
  border-color: #4a3728 !important;
}

/* —— item 签谱行 —— */
item,
.item,
.mufy_ai_message_bubble item {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px 8px !important;
  margin: 4px 0 !important;
  padding: 8px 4px !important;
  text-align: left !important;
  border-bottom: 1px dotted rgba(92, 70, 54, 0.35) !important;
  line-height: 1.65 !important;
}

item:last-child,
.mufy_ai_message_bubble item:last-child {
  border-bottom: none !important;
}

item label,
.item label,
.mufy_ai_message_bubble item label {
  flex-shrink: 0;
  min-width: 5em;
  color: #8b4513 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-align: right !important;
}

item value,
.item value,
.mufy_ai_message_bubble item value {
  flex: 1;
  min-width: 0;
  color: #4a3728 !important;
  font-size: 13.5px !important;
  text-align: left !important;
}

item:has(bar-container),
.mufy_ai_message_bubble item:has(bar-container) {
  display: block !important;
}

item:has(bar-container) label,
.mufy_ai_message_bubble item:has(bar-container) label {
  display: block !important;
  text-align: left !important;
  margin-bottom: 6px !important;
}

/* —— 女主立绘卡：左半立绘 / 右半信息 —— */
.hero-card,
div.hero-card,
hero-card,
.mufy_ai_message_bubble .hero-card,
.mufy_ai_message_bubble hero-card {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  grid-template-rows: auto auto !important;
  gap: 0 16px !important;
  margin: 8px 0 4px !important;
  padding: 14px !important;
  text-align: left !important;
  background: linear-gradient(145deg, #faf4e8, #e8dcc4) !important;
  border: 1px solid #5c4636 !important;
  border-radius: 4px !important;
  box-shadow: 0 6px 16px rgba(74, 55, 40, 0.35) !important;
}

.hero-card__frame,
figure.hero-card__frame,
hero-card__frame,
.mufy_ai_message_bubble .hero-card__frame,
.mufy_ai_message_bubble hero-card__frame {
  grid-column: 1 !important;
  grid-row: 1 / -1 !important;
  align-self: stretch !important;
  position: relative;
  margin: 0 !important;
  padding: 5px;
  background: #faf4e8;
  border: 2px solid #5c4636;
}

.hero-card__portrait,
.hero-card__frame img,
hero-card__portrait,
hero-card__frame img,
.mufy_ai_message_bubble .hero-card__portrait,
.mufy_ai_message_bubble hero-card__portrait {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 220px !important;
  aspect-ratio: 3/5;
  object-fit: cover;
  object-position: center top;
}

.hero-card__seal,
span.hero-card__seal,
hero-card__seal,
.mufy_ai_message_bubble .hero-card__seal,
.mufy_ai_message_bubble hero-card__seal {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
  width: 24px;
  height: 24px;
  line-height: 24px;
  text-align: center;
  font-family: "KaiTi", serif;
  font-size: 12px;
  color: #ffffff;
  background: #8b4513;
  border: 1px solid #4a3728;
  transform: rotate(-6deg);
}

.hero-card__head,
div.hero-card__head,
hero-card__head,
.mufy_ai_message_bubble .hero-card__head,
.mufy_ai_message_bubble hero-card__head {
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: start !important;
  min-width: 0 !important;
  text-align: left !important;
}

.hero-card__title,
p.hero-card__title,
.hero-card__title strong,
hero-card__title,
.mufy_ai_message_bubble .hero-card__title,
.mufy_ai_message_bubble hero-card__title {
  margin: 0 0 6px !important;
  font-family: "KaiTi", serif !important;
  font-size: 1.35rem !important;
  color: #4a3728 !important;
  text-align: left !important;
}

.hero-card__head item,
.hero-card__head .item,
.mufy_ai_message_bubble .hero-card__head item {
  display: flex !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
}

.hero-card__body,
div.hero-card__body,
hero-card__body,
.mufy_ai_message_bubble .hero-card__body,
.mufy_ai_message_bubble hero-card__body {
  grid-column: 2 !important;
  grid-row: 2 !important;
  min-width: 0 !important;
  padding-top: 8px;
  margin-top: 4px;
  border-top: 1px solid rgba(92, 70, 54, 0.25);
  text-align: left !important;
}

/* —— 进度条 —— */
bar-container,
.bar-container,
.mufy_ai_message_bubble bar-container {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 12px !important;
  margin: 4px 0 6px !important;
  padding: 2px !important;
  background: linear-gradient(180deg, #3a2a20, #2a1a10) !important;
  border: 1px solid #4a3728 !important;
  border-radius: 2px !important;
  box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.45) !important;
  overflow: hidden !important;
}

bar-fill,
.bar-fill,
.mufy_ai_message_bubble bar-fill {
  display: block !important;
  height: 100% !important;
  min-width: 2% !important;
  font-size: 0 !important;
  line-height: 12px !important;
  transition: width 0.5s ease;
  background: linear-gradient(90deg, #5a7a6a, #7a9a88) !important;
}

bar-container.fate-zero bar-fill,
.bar-container.fate-zero bar-fill,
.mufy_ai_message_bubble bar-container.fate-zero bar-fill {
  width: 0 !important;
  min-width: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

bar-container.fate-zero::after,
.bar-container.fate-zero::after,
.mufy_ai_message_bubble bar-container.fate-zero::after {
  content: "无相 · 零";
  display: block;
  margin-top: -12px;
  text-align: center;
  font-family: "KaiTi", serif;
  font-size: 10px;
  letter-spacing: 0.3em;
  color: #8a7968;
  line-height: 12px;
}

bar-fill.fate-neg-deep,
.bar-fill.fate-neg-deep,
.mufy_ai_message_bubble bar-fill.fate-neg-deep {
  background: linear-gradient(90deg, #000000, #151010) !important;
}

bar-fill.fate-neg-mid,
.bar-fill.fate-neg-mid,
.mufy_ai_message_bubble bar-fill.fate-neg-mid {
  background: linear-gradient(90deg, #2a2828, #4a4444) !important;
}

bar-fill.fate-neg-light,
.bar-fill.fate-neg-light,
.mufy_ai_message_bubble bar-fill.fate-neg-light {
  background: linear-gradient(90deg, #5a5555, #7a7575) !important;
}

bar-fill.fate-pos-1,
.bar-fill.fate-pos-1,
.mufy_ai_message_bubble bar-fill.fate-pos-1 {
  background: linear-gradient(90deg, #888888, #d8d4cc) !important;
}

bar-fill.fate-pos-2,
.bar-fill.fate-pos-2,
.mufy_ai_message_bubble bar-fill.fate-pos-2 {
  background: linear-gradient(90deg, #a68b67, #c9a86c) !important;
}

bar-fill.fate-pos-3,
.bar-fill.fate-pos-3,
.mufy_ai_message_bubble bar-fill.fate-pos-3 {
  background: linear-gradient(90deg, #8a6530, #c9a86c, #e8c880) !important;
}

bar-fill.fate-pos-4,
.bar-fill.fate-pos-4,
.mufy_ai_message_bubble bar-fill.fate-pos-4 {
  background: linear-gradient(90deg, #a87828, #f0cc7a) !important;
}

bar-fill.fate-pos-5,
.bar-fill.fate-pos-5,
.mufy_ai_message_bubble bar-fill.fate-pos-5 {
  background: linear-gradient(90deg, #6a5090, #c9a86c, #a888c8) !important;
}

bar-fill.favor,
.bar-fill.favor,
.mufy_ai_message_bubble bar-fill.favor {
  background: linear-gradient(90deg, #5a7a6a, #7a9a88) !important;
}

bar-fill.jealous,
.bar-fill.jealous,
.mufy_ai_message_bubble bar-fill.jealous {
  background: linear-gradient(90deg, #8a6530, #d4a855) !important;
}

bar-fill.dark,
.bar-fill.dark,
.mufy_ai_message_bubble bar-fill.dark {
  background: linear-gradient(90deg, #4a2038, #8b4513) !important;
}

tip,
.tip,
.mufy_ai_message_bubble tip {
  display: block !important;
  font-size: 11px !important;
  color: #8a7968 !important;
  margin: 2px 0 8px !important;
}

trend,
.trend,
.mufy_ai_message_bubble trend {
  display: block !important;
  margin: 8px 0 !important;
  padding: 10px 14px !important;
  font-size: 13px !important;
  line-height: 1.75 !important;
  color: #6b5344 !important;
  background: #faf4e8 !important;
  border: 1px solid rgba(92, 70, 54, 0.25) !important;
  border-left: 3px solid #5a7a6a !important;
}

suggest,
.suggest,
.mufy_ai_message_bubble suggest {
  display: block !important;
  margin: 10px 0 !important;
  padding: 12px 14px !important;
  background: #faf4e8 !important;
  border: 1px solid #5c4636 !important;
  border-radius: 3px !important;
}

suggest option,
.suggest option,
.mufy_ai_message_bubble suggest option {
  display: inline-block !important;
  margin-bottom: 8px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.1em !important;
  color: #ffffff !important;
  background: linear-gradient(180deg, #a68b67, #705a40) !important;
  border: 1px solid #4a3728 !important;
  border-radius: 3px !important;
  box-shadow: 0 3px 8px rgba(74, 55, 40, 0.35) !important;
}

desc,
.suggest desc,
.mufy_ai_message_bubble suggest desc {
  display: block !important;
  font-size: 12px !important;
  color: #6b5344 !important;
  line-height: 1.65 !important;
}

/* —— 天命卷宗 —— */
memory-zone,
.fy-memory,
.mufy_ai_message_bubble memory-zone,
.mufy_ai_message_bubble .fy-memory {
  display: block !important;
  position: relative;
  padding: 18px !important;
  background-color: #f2e8d5 !important;
  border: 1px solid #5c4636 !important;
  border-top: none !important;
  box-shadow: 0 8px 24px rgba(74, 55, 40, 0.35) !important;
}

memory-zone details.mem-section,
.mufy_ai_message_bubble memory-zone details.mem-section {
  display: block !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}

.mem-list,
.mufy_ai_message_bubble .mem-list {
  display: block !important;
  padding: 10px 8px !important;
  background: #faf4e8 !important;
  border: 1px solid rgba(92, 70, 54, 0.25) !important;
  border-top: none !important;
  border-radius: 0 0 3px 3px !important;
}

memory-zone .mem-list tip,
.mufy_ai_message_bubble memory-zone .mem-list + tip,
.mufy_ai_message_bubble memory-zone details.mem-section > tip {
  display: block !important;
  margin: -6px 0 10px !important;
  padding: 0 8px 6px !important;
  font-size: 10px !important;
  color: #8a7968 !important;
  text-align: right;
  letter-spacing: 0.08em;
}

.mem-item,
div.mem-item,
mem-item,
.mufy_ai_message_bubble .mem-item,
.mufy_ai_message_bubble mem-item {
  display: block !important;
  margin: 0 0 8px !important;
  padding: 8px 10px !important;
  text-align: left !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  color: #4a3728 !important;
  background: #faf4e8 !important;
  border-left: 3px solid #5a7a6a !important;
}

.mem-item:last-child,
.mufy_ai_message_bubble .mem-item:last-child {
  margin-bottom: 0 !important;
}

.mem-bond,
div.mem-bond,
mem-bond,
.mufy_ai_message_bubble .mem-bond,
.mufy_ai_message_bubble mem-bond {
  display: block !important;
  margin: 0 0 6px !important;
  padding: 8px 10px !important;
  text-align: left !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  color: #4a3728 !important;
  background: #faf4e8 !important;
  border-left: 3px solid #c9a86c !important;
}

.mem-thread,
div.mem-thread,
mem-thread,
.mufy_ai_message_bubble .mem-thread,
.mufy_ai_message_bubble mem-thread {
  display: block !important;
  padding: 8px 10px !important;
  text-align: left !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  color: #4a3728 !important;
  background: #faf4e8 !important;
  border: 1px dashed rgba(92, 70, 54, 0.35) !important;
}

@media (max-width: 560px) {
  .hero-card,
  div.hero-card,
  .mufy_ai_message_bubble .hero-card {
    grid-template-columns: 1fr 1fr !important;
    gap: 0 10px !important;
    padding: 10px !important;
  }

  .hero-card__portrait,
  .hero-card__frame img,
  .mufy_ai_message_bubble .hero-card__portrait {
    min-height: 180px !important;
  }
}
