/* ===========================================================
   大明人生 · 青花月白样式 v1.1（字号微调版）
   基调：月白笺 + 青花瓷 + 墨色题跋 + 朱砂印章
   平台：RLI (RisuAI)
   字体：楷体 / 仿宋
   =========================================================== */


/* ============ 〇、AI 回复外层卡片（月白笺 + 青花缠枝） ============ */

[class*="is-assistant"],
[class*="group-\\[\\.is-assistant\\]"],
div[class*="bg-card"] {
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120'><path d='M10 60 Q10 40 30 40 Q40 25 60 30 Q80 20 90 40 Q110 45 105 65 Q115 80 95 85 Q80 100 60 90 Q40 100 30 85 Q10 80 10 60 Z' fill='none' stroke='%232b4c7c' stroke-width='1' opacity='0.08'/></svg>") no-repeat right -20px top -20px / 180px,
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'><path d='M20 120 Q40 90 30 60 Q50 50 45 30 M30 60 Q10 55 15 35 M45 30 Q60 40 80 30 Q95 45 90 65' fill='none' stroke='%231e3a5f' stroke-width='1.2' opacity='0.07' stroke-linecap='round'/><circle cx='30' cy='60' r='3' fill='%232b4c7c' opacity='0.1'/><circle cx='45' cy='30' r='2.5' fill='%232b4c7c' opacity='0.1'/><circle cx='80' cy='30' r='3' fill='%232b4c7c' opacity='0.1'/></svg>") no-repeat left -15px bottom -15px / 200px,
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><path d='M0 40 L60 55 L100 30 L160 50 L200 35 M0 90 L50 105 L110 85 L170 100 L200 90 M0 150 L70 160 L130 140 L200 155 M40 0 L55 60 L45 100 L60 160 L50 200 M120 0 L110 55 L130 110 L115 165 L125 200' stroke='%234a6fa5' stroke-width='0.5' fill='none' opacity='0.05'/></svg>") repeat,
    linear-gradient(172deg, #f5f7fa 0%, #eef2f7 50%, #e3ebf3 100%) !important;
  border: 1px solid #4a6fa5 !important;
  border-radius: 4px !important;
  box-shadow:
    inset 0 0 0 1px rgba(245, 247, 250, 0.6),
    inset 0 0 40px rgba(43, 76, 124, 0.06),
    0 3px 14px rgba(30, 58, 95, 0.15) !important;
  color: #1a2332 !important;
  padding: 22px 26px !important;
  position: relative;
  font-family: "STKaiti", "KaiTi", "FangSong", "STFangsong", serif !important;
}

[class*="is-user"],
[class*="group-\\[\\.is-user\\]"],
[class*="bg-secondary"] {
  background:
    linear-gradient(180deg, #dfe8f2 0%, #c5d4e5 100%) !important;
  border: 1px solid #2b4c7c !important;
  border-radius: 4px !important;
  color: #14202f !important;
  box-shadow: 0 1px 4px rgba(30, 58, 95, 0.18) !important;
  font-family: "STKaiti", "KaiTi", "FangSong", serif !important;
}

[class*="is-assistant"] div,
[class*="is-assistant"] p,
[class*="bg-card"] div,
[class*="bg-card"] p {
  background-color: transparent !important;
}


/* ============ 一、top / bottom 容器 ============ */

top, bottom {
  display: block;
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
  box-shadow: none;
  color: #1a2332;
  font-family: "STKaiti", "KaiTi", "FangSong", "STFangsong", serif;
  line-height: 1.95;
}


/* ============ 二、正文区 text（水纹笺 + 朱砂"明"印） ============ */

text {
  display: block;
  margin: 20px 0;
  padding: 28px 32px;
  background:
    repeating-linear-gradient(
      90deg,
      transparent 0,
      transparent 39px,
      rgba(43, 76, 124, 0.05) 39px,
      rgba(43, 76, 124, 0.05) 40px
    ),
    linear-gradient(180deg, #fafcfe 0%, #eef3f8 100%);
  border-top: 2px solid #2b4c7c;
  border-bottom: 2px solid #2b4c7c;
  border-left: 1px solid rgba(43, 76, 124, 0.35);
  border-right: 1px solid rgba(43, 76, 124, 0.35);
  box-shadow:
    inset 0 0 24px rgba(43, 76, 124, 0.06),
    0 2px 8px rgba(30, 58, 95, 0.1);
  font-family: "STKaiti", "KaiTi", "FangSong", "STFangsong", serif;
  color: #1a2332;
  font-size: 18px;
  line-height: 2.1;
  letter-spacing: 0.06em;
  text-align: justify;
  position: relative;
}

text::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 24px;
  width: 60px;
  height: 20px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 20'><path d='M2 18 Q8 8 16 12 Q22 4 30 10 Q38 4 44 12 Q52 8 58 18' stroke='%232b4c7c' stroke-width='1.5' fill='none' stroke-linecap='round'/><circle cx='16' cy='12' r='1.5' fill='%232b4c7c'/><circle cx='30' cy='10' r='1.5' fill='%232b4c7c'/><circle cx='44' cy='12' r='1.5' fill='%232b4c7c'/></svg>") no-repeat center / contain;
  opacity: 0.8;
}

text::after {
  content: "明";
  position: absolute;
  top: 16px;
  right: 20px;
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #a83232 0%, #7a1e1e 100%);
  color: #f5f7fa;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 24px;
  font-weight: bold;
  border-radius: 3px;
  box-shadow:
    0 0 0 2px #a83232,
    inset 0 0 4px rgba(255, 255, 255, 0.2),
    2px 2px 5px rgba(0, 0, 0, 0.3);
  transform: rotate(-4deg);
  opacity: 0.92;
  z-index: 2;
}


/* ============ 三、details 折叠区（每块独立方框，青花描边） ============ */

details {
  margin: 12px 0;
  padding: 0;
  background:
    linear-gradient(180deg, rgba(250, 252, 254, 0.7) 0%, rgba(238, 243, 248, 0.5) 100%);
  border: 1px solid #4a6fa5;
  border-radius: 3px;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.5),
    0 1px 3px rgba(30, 58, 95, 0.08);
  position: relative;
  overflow: hidden;
}

details::before,
details::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><path d='M1 1 L1 8 L5 8 L5 5 L8 5 L8 1 Z' stroke='%232b4c7c' stroke-width='1' fill='none'/></svg>") no-repeat center / contain;
  opacity: 0.7;
  pointer-events: none;
}
details::before { top: 4px; left: 4px; }
details::after  { top: 4px; right: 4px; transform: scaleX(-1); }

details summary {
  padding: 12px 16px 12px 40px;
  background:
    linear-gradient(180deg, rgba(43, 76, 124, 0.08) 0%, rgba(43, 76, 124, 0.02) 100%);
  border-bottom: 1px solid rgba(43, 76, 124, 0.25);
  color: #1e3a5f;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.18em;
  cursor: pointer;
  list-style: none;
  user-select: none;
  position: relative;
  transition: color 0.25s ease, letter-spacing 0.25s ease;
}

details summary::-webkit-details-marker { display: none; }
details summary::marker { content: ""; }

details summary::before {
  content: "";
  position: absolute;
  left: 14px;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><g fill='%232b4c7c'><circle cx='10' cy='4' r='2.5'/><circle cx='16' cy='8' r='2.5'/><circle cx='14' cy='15' r='2.5'/><circle cx='6' cy='15' r='2.5'/><circle cx='4' cy='8' r='2.5'/><circle cx='10' cy='10' r='1.5' fill='%23a83232'/></g></svg>") no-repeat center / contain;
  transition: transform 0.4s ease;
}

details[open] summary::before {
  transform: translateY(-50%) rotate(72deg);
}

details summary:hover {
  color: #a83232;
  letter-spacing: 0.22em;
}

details > *:not(summary) {
  padding: 14px 18px 16px 20px;
  color: #1a2332;
  font-size: 16px;
  line-height: 2;
  font-family: "STKaiti", "KaiTi", "FangSong", serif;
}


/* ============ 四、内嵌 strong 前的 SVG 图标（替代 emoji） ============ */

details p strong,
details div strong {
  position: relative;
  padding-left: 20px;
  color: #1e3a5f !important;
  font-weight: 700;
}

details p strong::before,
details div strong::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 14px;
  height: 14px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'><circle cx='7' cy='7' r='5.5' stroke='%232b4c7c' stroke-width='1.2' fill='none'/><circle cx='7' cy='7' r='2' fill='%232b4c7c'/></svg>") no-repeat center / contain;
  opacity: 0.85;
}

details ul,
details ol {
  padding-left: 4px;
  list-style: none;
}

details ul li,
details ol li {
  position: relative;
  padding-left: 22px;
  margin: 4px 0;
  line-height: 1.9;
}

details ul li::before,
details ol li::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 0.7em;
  width: 10px;
  height: 10px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'><path d='M5 1 L6.2 3.8 L9 4 L7 6.2 L7.5 9 L5 7.5 L2.5 9 L3 6.2 L1 4 L3.8 3.8 Z' fill='%234a6fa5' opacity='0.75'/></svg>") no-repeat center / contain;
}


/* ============ 五、表格（青花栏目） ============ */

details table {
  width: 100%;
  border-collapse: collapse;
  margin: 12px 0 6px;
  background: rgba(250, 252, 254, 0.6);
  border-top: 2px solid #2b4c7c;
  border-bottom: 2px solid #2b4c7c;
  font-family: "STKaiti", "KaiTi", "FangSong", serif;
  font-size: 15px;
}

details table thead tr {
  background: linear-gradient(180deg, rgba(43, 76, 124, 0.14) 0%, rgba(43, 76, 124, 0.06) 100%);
  border-bottom: 1px solid #2b4c7c;
}

details table th {
  padding: 10px 10px;
  text-align: left;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: #1e3a5f;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 15.5px;
  border-right: 1px dashed rgba(43, 76, 124, 0.3);
}

details table th:last-child { border-right: none; }

details table td {
  padding: 8px 10px;
  border-top: 1px dotted rgba(43, 76, 124, 0.22);
  border-right: 1px dashed rgba(43, 76, 124, 0.15);
  color: #1a2332;
}

details table td:last-child { border-right: none; }

details table tbody tr:hover {
  background: rgba(43, 76, 124, 0.05);
}


/* ============ 六、文风状态标签（青花小牌） ============ */

hb-status, cq-status, fy-status {
  display: inline-block;
  padding: 3px 12px 3px 26px;
  margin: 0 3px;
  border-radius: 2px;
  font-family: "STKaiti", "KaiTi", serif;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.1em;
  border: 1px solid;
  position: relative;
  transition: all 0.25s ease;
}

hb-status::before,
cq-status::before,
fy-status::before {
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 12px;
  height: 12px;
  transform: translateY(-50%);
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><path d='M2 9 Q6 2 10 9 M4 6.5 L8 6.5' stroke='currentColor' stroke-width='1.3' fill='none' stroke-linecap='round'/></svg>") no-repeat center / contain;
}

hb-status[status="on"],
cq-status[status="on"],
fy-status[status="on"] {
  background: linear-gradient(135deg, #2b4c7c 0%, #1e3a5f 100%);
  color: #f5f7fa;
  border-color: #14263f;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

hb-status[status="off"],
cq-status[status="off"],
fy-status[status="off"] {
  background: transparent;
  color: #4a6fa5;
  border-color: #7a94b8;
  border-style: dashed;
  opacity: 0.75;
}


/* ============ 七、顶部导航栏（青花描金） ============ */

.app-header,
header[class*="header"],
nav[class*="nav"],
[class*="top-bar"],
[class*="navbar"] {
  background:
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 20'><path d='M0 18 Q5 10 10 15 Q15 8 20 15 Q25 10 30 15 Q35 8 40 15' stroke='%23c5d4e5' stroke-width='0.8' fill='none' opacity='0.3'/></svg>") repeat-x bottom / 40px 20px,
    linear-gradient(180deg, #1e3a5f 0%, #2b4c7c 50%, #1e3a5f 100%) !important;
  border-bottom: 2px solid #4a6fa5 !important;
  box-shadow:
    0 1px 0 rgba(245, 247, 250, 0.25) inset,
    0 2px 8px rgba(0, 0, 0, 0.22) !important;
  color: #f5f7fa !important;
}

.app-header *,
header[class*="header"] *,
[class*="navbar"] * {
  color: #f5f7fa !important;
  font-family: "STKaiti", "KaiTi", serif !important;
  letter-spacing: 0.08em;
}


/* ============ 八、底部输入栏 ============ */

.input-container,
.chat-input-area,
[class*="input-bar"],
[class*="footer-input"],
[class*="chat-footer"] {
  background:
    linear-gradient(180deg, #f5f7fa 0%, #e3ebf3 100%) !important;
  border-top: 2px solid #2b4c7c !important;
  box-shadow: 0 -2px 8px rgba(30, 58, 95, 0.12) !important;
  padding: 10px 12px !important;
}

textarea,
input[type="text"],
[class*="chat-input"] textarea {
  background: rgba(250, 252, 254, 0.9) !important;
  border: 1px solid #4a6fa5 !important;
  border-radius: 3px !important;
  color: #1a2332 !important;
  font-family: "STKaiti", "KaiTi", "FangSong", serif !important;
  font-size: 16px !important;
  line-height: 1.85 !important;
  padding: 9px 13px !important;
  box-shadow: inset 0 1px 3px rgba(43, 76, 124, 0.1) !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease !important;
}

textarea:focus,
input[type="text"]:focus {
  border-color: #1e3a5f !important;
  box-shadow:
    inset 0 1px 3px rgba(43, 76, 124, 0.1),
    0 0 0 2px rgba(43, 76, 124, 0.18) !important;
  outline: none !important;
}


/* ============ 九、按钮（青花常驻显示） ============ */

button,
[class*="btn"],
[class*="button"] {
  background: linear-gradient(180deg, #eef3f8 0%, #c5d4e5 100%) !important;
  border: 1px solid #4a6fa5 !important;
  border-radius: 3px !important;
  color: #1e3a5f !important;
  font-family: "STKaiti", "KaiTi", serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  padding: 6px 14px !important;
  cursor: pointer;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 1px 2px rgba(30, 58, 95, 0.18) !important;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease !important;
}

button:hover,
[class*="btn"]:hover,
[class*="button"]:hover {
  background: linear-gradient(180deg, #dfe8f2 0%, #a8c0d6 100%) !important;
  border-color: #1e3a5f !important;
  color: #14263f !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 3px 6px rgba(30, 58, 95, 0.22) !important;
}

button:active,
[class*="btn"]:active {
  box-shadow: inset 0 1px 3px rgba(30, 58, 95, 0.25) !important;
}

button[type="submit"],
[class*="send-btn"],
[class*="submit"],
[class*="primary"] {
  background: linear-gradient(180deg, #2b4c7c 0%, #1e3a5f 100%) !important;
  border-color: #14263f !important;
  color: #f5f7fa !important;
}

button[type="submit"]:hover,
[class*="send-btn"]:hover,
[class*="primary"]:hover {
  background: linear-gradient(180deg, #3a5a8c 0%, #2b4c7c 100%) !important;
  color: #ffffff !important;
}

[class*="refresh"],
[class*="regenerate"],
[class*="reroll"],
[class*="edit"],
[class*="continue"],
[class*="retry"],
[class*="delete-msg"],
[class*="copy-msg"],
[class*="action-btn"],
[class*="msg-action"],
[class*="message-action"],
[class*="assistant-action"],
.message-toolbar button,
.message-actions button {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  display: inline-flex !important;
  transform: none !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}

[class*="message-toolbar"],
[class*="msg-toolbar"],
[class*="chat-toolbar"],
[class*="action-bar"] {
  opacity: 1 !important;
  visibility: visible !important;
  display: flex !important;
}


/* ============ 十、页码 ============ */

[class*="pagination"],
[class*="page-nav"] {
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 12px 0 !important;
  background: transparent !important;
}

[class*="pagination"] button,
[class*="pagination"] a,
[class*="page-item"] {
  min-width: 32px !important;
  height: 32px !important;
  padding: 0 10px !important;
  background: linear-gradient(180deg, #f5f7fa 0%, #dfe8f2 100%) !important;
  border: 1px solid #7a94b8 !important;
  color: #1e3a5f !important;
  font-family: "STKaiti", "KaiTi", serif !important;
  font-size: 14px !important;
  border-radius: 2px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

[class*="pagination"] [class*="active"],
[class*="page-item"][class*="active"] {
  background: linear-gradient(180deg, #2b4c7c 0%, #1e3a5f 100%) !important;
  border-color: #14263f !important;
  color: #f5f7fa !important;
  font-weight: 700;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.22) !important;
}


/* ============ 十一、评论区 ============ */

[class*="comment"],
[class*="comments-area"] {
  background:
    linear-gradient(180deg, rgba(245, 247, 250, 0.75) 0%, rgba(227, 235, 243, 0.55) 100%) !important;
  border: 1px solid #7a94b8 !important;
  border-radius: 3px !important;
  padding: 14px 16px !important;
  margin: 10px 0 !important;
  font-family: "STKaiti", "KaiTi", "FangSong", serif !important;
}

[class*="comment-item"],
[class*="comment-card"] {
  background: rgba(250, 252, 254, 0.6) !important;
  border-bottom: 1px dashed rgba(43, 76, 124, 0.28) !important;
  padding: 10px 4px !important;
  color: #1a2332 !important;
}

[class*="comment-item"]:last-child { border-bottom: none !important; }

[class*="comment"] [class*="username"],
[class*="comment"] [class*="author"] {
  color: #1e3a5f !important;
  font-family: "STKaiti", "KaiTi", serif !important;
  font-weight: 700;
  letter-spacing: 0.08em;
}

[class*="comment"] [class*="time"],
[class*="comment"] [class*="date"] {
  color: #4a6fa5 !important;
  font-size: 12px !important;
  font-family: "FangSong", serif !important;
}


/* ============ 十二、消息内嵌强调 ============ */

[class*="message"] strong,
[class*="msg-item"] strong,
[class*="is-assistant"] strong {
  color: #1e3a5f !important;
  font-weight: 700;
  letter-spacing: 0.04em;
}


/* ============ 十三、加载动画（水墨青花） ============ */

[class*="loading"],
[class*="spinner"],
[class*="loader"] {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 44px;
  background: transparent !important;
  position: relative;
}

[class*="loading"]::before,
[class*="spinner"]::before,
[class*="loader"]::before {
  content: "";
  display: inline-block;
  width: 28px;
  height: 28px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><g fill='none' stroke='%232b4c7c' stroke-width='1.8' stroke-linecap='round'><path d='M20 4 L20 10 M20 30 L20 36 M4 20 L10 20 M30 20 L36 20 M8.5 8.5 L12.7 12.7 M27.3 27.3 L31.5 31.5 M8.5 31.5 L12.7 27.3 M27.3 12.7 L31.5 8.5'/></g><circle cx='20' cy='20' r='4' fill='%232b4c7c'/><circle cx='20' cy='20' r='7' stroke='%234a6fa5' stroke-width='1' fill='none' opacity='0.5'/></svg>") no-repeat center / contain;
  animation: ming-rotate 2.4s linear infinite;
}

[class*="loading"]::after,
[class*="spinner"]::after,
[class*="loader"]::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background: radial-gradient(circle at 35% 30%, #4a6fa5 0%, #1e3a5f 70%);
  border-radius: 50%;
  animation: ming-ink 1.4s ease-in-out infinite;
  box-shadow:
    18px 0 0 0 rgba(43, 76, 124, 0.85),
    36px 0 0 0 rgba(43, 76, 124, 0.85);
}

@keyframes ming-rotate {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

@keyframes ming-ink {
  0%, 80%, 100% {
    transform: scale(0.55);
    opacity: 0.35;
    box-shadow:
      18px 0 0 0 rgba(43, 76, 124, 0.35),
      36px 0 0 0 rgba(43, 76, 124, 0.35);
  }
  40% {
    transform: scale(1);
    opacity: 1;
    box-shadow:
      18px 0 0 0 rgba(74, 111, 165, 1),
      36px 0 0 0 rgba(74, 111, 165, 0.7);
  }
}

[class*="streaming"]::after,
[class*="typing-cursor"] {
  content: "▌";
  display: inline-block;
  color: #2b4c7c;
  font-weight: bold;
  animation: brush-blink 1s steps(2) infinite;
  margin-left: 2px;
}

@keyframes brush-blink {
  0%, 50% { opacity: 1; }
  51%, 100% { opacity: 0; }
}


/* ============ 十四、滚动条 ============ */

::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: rgba(227, 235, 243, 0.4);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #7a94b8 0%, #4a6fa5 100%);
  border-radius: 4px;
  border: 1px solid rgba(30, 58, 95, 0.2);
}

::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #2b4c7c 0%, #1e3a5f 100%);
}


/* ============ 十五、标签页 ============ */

[class*="tab-item"],
[class*="tabs"] [class*="item"] {
  background: linear-gradient(180deg, #dfe8f2 0%, #a8c0d6 100%) !important;
  border: 1px solid #7a94b8 !important;
  border-bottom: none !important;
  border-radius: 4px 4px 0 0 !important;
  color: #1e3a5f !important;
  font-family: "STKaiti", "KaiTi", serif !important;
  padding: 8px 16px !important;
  letter-spacing: 0.1em;
}

[class*="tab-item"][class*="active"],
[class*="tabs"] [class*="active"] {
  background: linear-gradient(180deg, #2b4c7c 0%, #1e3a5f 100%) !important;
  color: #f5f7fa !important;
  border-color: #14263f !important;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.22) !important;
}


/* ============ 十六、分隔线（水墨横云） ============ */

hr {
  border: none;
  height: 14px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 14'><path d='M10 8 Q30 2 50 8 T90 8 M100 6 L100 6 Q120 2 140 8 T180 8' stroke='%232b4c7c' stroke-width='1' fill='none' stroke-linecap='round' opacity='0.55'/><circle cx='95' cy='7' r='2' fill='%23a83232' opacity='0.7'/></svg>") no-repeat center / auto 12px;
  margin: 14px 0;
}


/* ============ 十七、移动端适配 ============ */

@media (max-width: 768px) {
  [class*="is-assistant"],
  [class*="bg-card"] {
    padding: 14px 14px !important;
    background-size: 140px, 160px, 200px 200px, auto !important;
  }

  text {
    padding: 22px 18px;
    font-size: 16.5px;
    line-height: 2;
  }

  text::after {
    width: 34px;
    height: 34px;
    font-size: 20px;
    top: 12px;
    right: 12px;
  }

  text::before {
    left: 14px;
    width: 46px;
  }

  details summary {
    font-size: 16px;
    padding: 10px 14px 10px 36px;
    letter-spacing: 0.14em;
  }

  details summary::before {
    left: 12px;
    width: 16px;
    height: 16px;
  }

  details > *:not(summary) {
    padding: 12px 12px 14px 14px;
    font-size: 15px;
  }

  details table {
    font-size: 14px;
  }

  details table th,
  details table td {
    padding: 6px 7px;
  }

  details table th {
    font-size: 14.5px;
  }

  [class*="loading"]::before,
  [class*="spinner"]::before {
    width: 24px;
    height: 24px;
  }
}
/* ============ 十八、PC 端正文字号放大（仅桌面端生效） ============ */

@media (min-width: 769px) {
  text {
    font-size: 23px;
    line-height: 1.95;
  }
}