{"id":"585843e7-f172-417f-b7e5-213d6a34a7bd","authorId":"GAwWq8BrKFD2WRzpAugBYw62DxsCmaAO","title":"创作大师","description":"(新增教学功能，教你如何写卡/写mod，角色设计已全新升级~)支持小说创作/续写/翻译,文风设计,rili卡一键制作,角色卡设计（支持武侠玄幻等）,世界观生成，网页介绍(html)生成,css美化设计,生图提示词,html修复，作品简介生成。","background":null,"backgroundWidth":null,"backgroundHeight":null,"cover":"vc3w2kvpul5mp83ggav00gug.webp","coverWidth":null,"coverHeight":null,"introPage":"jmnkcq1pxkq08jbry9o8lmtt.html","changelog":"","createdAt":"2026-04-05T06:54:03.739Z","updatedAt":"2026-07-27T04:47:18.921Z","initPublicAt":"2026-04-09T14:21:17.975Z","renderTemplate":null,"assistantRegexReplace":null,"enableMemorySchema":false,"memorySchema":null,"injectStyles":"/* ═══ B平台加载动画适配（自动注入）═══ */\n.flex.items-center.justify-center.size-6 { opacity: 1 !important; }\n.flex.items-center.justify-center.size-6 > .flex.gap-2 { display: none !important; }\n.is-assistant.w-fit { width: 100% !important; }\n.is-assistant > .border.border-muted:has(.flex.items-center.justify-center.size-6) {\n  width: 100% !important; background: transparent !important;\n  border: none !important; padding: 0 !important;\n}\n.is-assistant .space-y-3:has(.flex.items-center.justify-center.size-6) {\n  display: flex; justify-content: center; width: 100%;\n}\n\n/* ═══ B平台表格修正（自动注入）═══ */\n.rili-markdown-renderer table { display:table!important; table-layout:auto!important; width:100%!important; border-collapse:collapse!important; }\n.rili-markdown-renderer table caption { display:table-caption!important; caption-side:top!important; text-align:center!important; padding:8px!important; }\n.rili-markdown-renderer thead { display:table-header-group!important; }\n.rili-markdown-renderer tbody { display:table-row-group!important; }\n.rili-markdown-renderer tr { display:table-row!important; }\n.rili-markdown-renderer th, .rili-markdown-renderer td { display:table-cell!important; }\n\n/* ═══ B平台按钮组保护（自动注入 — 防止按钮消失）═══\n   原理：B平台消息操作按钮结构为：\n   .flex.items-center.gap-1.ml-auto (hover显隐包装)\n     └── .bg-muted.rounded.flex.p-0.5 (按钮组容器)\n           └── button.rounded-full.size-7 (单个按钮)\n\n   以下规则使用高specificity + !important确保按钮\n   不被任何转换后/透传的CSS规则意外隐藏\n   ═══════════════════════════════════════════════ */\n\n/* 按钮组容器保护 */\n.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\\.5,\n.is-user .bg-muted.rounded.flex.p-0\\.5,\n.is-assistant .bg-muted.rounded.flex.p-0\\.5 {\n  display: flex !important;\n  visibility: visible !important;\n  opacity: 1 !important;\n  overflow: visible !important;\n  position: relative !important;\n  width: auto !important;\n  height: auto !important;\n  max-height: none !important;\n  pointer-events: auto !important;\n  clip: auto !important;\n  clip-path: none !important;\n}\n\n/* 单个按钮保护 */\n.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\\.5 > button,\n.is-user .bg-muted.rounded.flex.p-0\\.5 > button,\n.is-assistant .bg-muted.rounded.flex.p-0\\.5 > button {\n  display: inline-flex !important;\n  visibility: visible !important;\n  opacity: 1 !important;\n  pointer-events: auto !important;\n  position: relative !important;\n  clip: auto !important;\n  clip-path: none !important;\n}\n\n/* hover显隐包装层保护 — 仅保留B平台原生的opacity过渡 */\n.flex.items-center.gap-1.ml-auto.md\\:opacity-0.group-hover\\:opacity-100 {\n  visibility: visible !important;\n  display: flex !important;\n  pointer-events: auto !important;\n  overflow: visible !important;\n}\n\n/* 操作行保护 */\n.flex.w-full.items-center.justify-between.gap-2.px-2 {\n  display: flex !important;\n  visibility: visible !important;\n  overflow: visible !important;\n}\n\n/* ═══ B平台顶部栏适配说明（自动注入）═══\n   A: div.sticky > div.flex.justify-between\n      ├── 左侧空区\n      ├── #ai-model-selector (居中)\n      └── 右侧工具(设置按钮等)\n   B: <header.flex.justify-between>\n      ├── #nav-left (侧边栏开关)\n      ├── #nav-middle (可能为空)\n      └── #nav-right (通知/主题/语言)\n   B平台模型按钮不在header内，选择器:\n   button:has(> .flex-1.truncate.text-left)\n   ═══════════════════════════════════════ */\nheader.flex.justify-between { position: relative; overflow: visible; }\n\n.dsfd {\n    display:none;\n}\nUiThink {display:none;}\ndiv[class=\"shrink-0 relative w-10 h-10 bg-gray-100/90 rounded-full block md:block\"] {\n  display: none;\n}\n.relative.w-10.h-10.bg-white.rounded-full {\n  display: none !important;\n}\n.text-gray-100\\/90 {\n    color: rgb(51 51 51 / 90%) !important;\n}\n/* 完全隐藏三角形 */\n/* [B平台无三角箭头]\n.bg-gray-100\\/90.w-2.h-3.clip-path-triangle-right {\n    display: none !important;\n}\n*/\n/* [B平台无AI头像元素]\n.is-assistant > div.shrink-0.relative.w-10.h-10/* .bg-gray-100\\/90.rounded-full [B平台无头像] */.rounded-full.hidden.md\\:block {\n    display: none !important;\n}\n*/\n\njudge,planning,guide {\n    display:none;\n}\n/* 玩家回复框 - 统一黑白水墨风格 */\n.rounded-tr-2xl {\n    padding: 15px !important;\n}\n\n[class*=\"bg-[#F1CBCB]\"], \n[class*=\"bg-[#c9e1e9]\"] {\n    display: none;\n}\n\n.rili-markdown-renderer details {\n    margin: 0 !important;\n    background: transparent !important;\n    border-left: 1px dashed #999 !important;\n}\n.justify-start {\n    margin-bottom: 20px !important;\n}\n.ink-floating-widget {\n  position: fixed;\n  right: 20px;\n  top: 50%;\n  transform: translateY(-50%);\n  z-index: 1000;\n  font-family: \"SimSun\", serif;\n  /* 关键设置：创建包含按钮和面板的悬停上下文 */\n  display: inline-flex;\n  align-items: center;\n}\n.ink-button {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 60px;\n  height: 60px;\n  border-radius: 50%;\n  background: #ffffff; /* 中间背景色改为白色 */\n  color: #000000; /* 文字颜色改为黑色 */\n  font-size: 28px;\n  cursor: pointer;\n  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);\n  transition: all 0.3s ease;\n  position: relative;\n  z-index: 2;\n  border: 2px solid #000000; /* 添加黑色边框 */\n}\n.ink-button:hover {\n  background: #f0f0f0; /* 悬停时改为浅灰色 */\n  transform: scale(1.05);\n}\n.ink-panel {\n  position: absolute;\n  right: 70px;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 300px;\n  padding: 20px;\n  background: rgba(250, 250, 250, 0.95);\n  border-radius: 8px;\n  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);\n  opacity: 0;\n  pointer-events: none;\n  transition: opacity 0.3s ease, right 0.3s ease;\n  border: 1px solid #ddd;\n  /* 确保面板与按钮有重叠区域 */\n  margin-right: -15px;\n}\n/* 关键设置1：鼠标悬停在按钮上时显示面板 */\n.ink-button:hover + .ink-panel,\n/* 关键设置2：鼠标移入面板后保持显示 */\n.ink-panel:hover {\n  opacity: 1;\n  pointer-events: auto;\n  right: 80px;\n}\n/* 创建按钮和面板之间的悬停过渡区 */\n.ink-panel::before {\n  content: \"\";\n  position: absolute;\n  left: -20px;\n  top: 0;\n  width: 20px;\n  height: 100%;\n}\n.ink-faq {\n  color: #333;\n}\n.ink-question {\n  margin-bottom: 15px;\n  border-bottom: 1px dashed #aaa;\n  padding-bottom: 10px;\n}\n.ink-question summary {\n  font-weight: bold;\n  cursor: pointer;\n  padding: 5px 0;\n  list-style: none;\n  position: relative;\n}\n.ink-question summary::-webkit-details-marker {\n  display: none;\n}\n.ink-question summary:after {\n  content: \"+\";\n  position: absolute;\n  right: 0;\n  transition: transform 0.2s;\n}\n.ink-question[open] summary:after {\n  transform: rotate(45deg);\n}\n.ink-answer {\n  padding: 10px 0;\n  color: #555;\n  font-size: 14px;\n  line-height: 1.6;\n}\n@media (max-width: 768px) {\n  .ink-panel {\n    width: 250px;\n    right: 60px;\n  }\n  .ink-button:hover + .ink-panel,\n  .ink-panel:hover {\n    right: 70px;\n  }\n}\n\n/* [Token消耗hover逻辑转换未启用]\n.text-purple-500 {\n    /* --- 布局结构 --- */\n    display: block !important;\n    width: 100% !important;\n    position: relative !important;\n    text-align: right !important;   /* 文字靠右 */\n    margin-top: 12px !important;    /* 外部间距 */\n    padding-top: 8px !important;    /* 内部留白，给线留位置 */\n    /* --- 核心逻辑：默认隐藏内部的Token数字 --- */\n    visibility: hidden !important; \n    /* --- 字体样式 --- */\n    font-family: 'SimSun', 'STKaiti', 'KaiTi', serif !important;\n    font-size: 0.85rem !important;\n    color: #333333 !important;      /* 数字显示时的颜色 */\n}\n*/\n\n/* \n   1. 永久存在的分割线 (使用 ::after 承载)\n   不管父级是 hidden 还是 visible，这里强制 visible \n*/\n/* [Token消耗hover逻辑转换未启用]\n.text-purple-500::after {\n    content: \"\" !important;\n    position: absolute !important;\n    top: 0 !important;\n    left: 0 !important;\n    width: 100% !important;         /* 强制占满整行 */\n    height: 1px !important;\n    \n    /* 水墨风格虚线 */\n    border-top: 1px dashed rgba(0,0,0,0.15) !important; \n    \n    /* --- 关键：强制可见 --- */\n    visibility: visible !important; \n    pointer-events: none !important; /* 避免遮挡点击 */\n}\n*/\n\n/* \n   2. \"查看消耗\" 提示文字 (使用 ::before 承载)\n   默认可见，覆盖在隐藏的数字位置\n*/\n/* [Token消耗hover逻辑转换未启用]\n.text-purple-500::before {\n    content: \"查看消耗\" !important;\n    position: absolute !important;\n    top: 8px !important;           /* 与父级padding一致 */\n    right: 0 !important;           /* 靠右对齐 */\n    \n    /* --- 样式 --- */\n    color: #888888 !important;\n    cursor: pointer !important;\n    font-weight: normal !important;\n    /* --- 关键：强制可见 --- */\n    visibility: visible !important;    \n    transition: all 0.3s ease !important;\n    opacity: 1 !important;\n}\n*/\n\n/* \n   === 交互状态 === \n*/\n\n/* Hover父级：原本隐藏的Token数字变为可见 */\n/* [Token消耗hover逻辑转换未启用]\n.text-purple-500:hover {\n    visibility: visible !important;\n}\n*/\n\n/* Hover父级：原本显示的\"查看消耗\"变为隐藏 (淡出上浮) */\n/* [Token消耗hover逻辑转换未启用]\n.text-purple-500:hover::before {\n    visibility: hidden !important;\n    opacity: 0 !important;\n    transform: translateY(-3px) !important;\n}\n*/\n\n/* =========================\n   其它文字样式（保持原视觉）\n   ========================= */\n.text-gray-700 {\n    --tw-text-opacity: 1 !important;\n    color: rgb(0 0 0 / var(--tw-text-opacity)) !important; /* 纯黑 */\n    background-color: #ffffff !important;\n    border: 1px solid #000000 !important;\n    padding: 8px 12px !important;\n    border-radius: 2px !important;\n    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;\n}\n\n/* =========================\n   统一聊天框基础（去动画+滚动稳定）\n   ========================= */\n.is-user > .border.border-muted,\n.is-assistant > .border.border-muted {\n    /* 强制字体 */\n    font-family: 'SimSun', 'STKaiti', 'KaiTi', serif !important;\n\n    /* 纸张风圆角与阴影 */\n    border-radius: 2px 255px 3px 25px / 255px 5px 225px 5px !important;\n    box-shadow: 2px 3px 8px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0,0,0,0.1) !important;\n\n    /* 去除高开销 blur，提升滚动稳定 */\n    backdrop-filter: none !important;\n    -webkit-backdrop-filter: none !important;\n\n    border: 1px solid rgba(0,0,0,0.1) !important;\n\n    /* 滚动稳定优化：隔离绘制与独立合成层 */\n    contain: layout paint style !important;\n    transform: translateZ(0) !important;\n    backface-visibility: hidden !important;\n}\n\n/* 强化主要文本可读性 */\n.rili-markdown-renderer {\n    color: #333333 !important; /* 深色高对比 */\n    font-weight: 500 !important;\n    letter-spacing: 0.02em !important;\n}\n\n/* =========================\n   输入聊天框（静态印章，无动画）\n   ========================= */\n.is-user > .border.border-muted {\n    background-color: #fdfdfd !important;\n    background-image:\n        /* 宣纸纹理 */\n        linear-gradient(to bottom, rgba(255,255,255,0.8), rgba(248,248,248,0.9)),\n        /* 静态红色印章（无动画） */\n        url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Crect x='10' y='10' width='80' height='80' rx='5' ry='5' fill='none' stroke='%23a83f3f' stroke-width='3'/%3E%3Ctext x='50' y='65' text-anchor='middle' fill='%23a83f3f' font-family='serif' font-size='40'%3E%E9%97%AE%3C/text%3E%3C/svg%3E\") !important;\n    background-repeat: no-repeat !important;\n    background-position: right 10px bottom 10px !important;\n    background-size: cover, 40px 40px !important; /* 限制印章大小 */\n\n    border: 1px solid rgba(100, 100, 100, 0.2) !important;\n    border-left: 4px solid #a83f3f !important; /* 左侧红线 */\n}\n\n/* =========================\n   输出聊天框（保持原视觉）\n   ========================= */\n.is-assistant > .border.border-muted {\n    background-color: #faf9f6 !important;\n    background-image:\n        linear-gradient(to bottom, rgba(250,249,246,0.98) 0%, rgba(250,249,246,0.85) 70%, rgba(250,249,246,0.4) 100%),\n        url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath d='M0,120 L0,100 Q150,60 300,90 T600,80 T900,100 T1200,80 L1200,120 Z' fill='%23cccccc' opacity='0.3'/%3E%3Cpath d='M0,120 L0,110 Q200,90 400,110 T800,100 T1200,110 L1200,120 Z' fill='%23666666' opacity='0.2'/%3E%3C/svg%3E\") !important;\n    background-repeat: no-repeat !important;\n    background-position: bottom left !important;\n    background-size: cover, 100% 60px !important;\n    padding-bottom: 20px !important;\n    border: 1px solid rgba(0,0,0,0.05) !important;\n\n    /* 滚动稳定优化 */\n    contain: layout paint style !important;\n    transform: translateZ(0) !important;\n    backface-visibility: hidden !important;\n}\n\n/* =========================\n   Token 消耗（点缀色保持）\n   ========================= */\n/* [Token消耗hover逻辑转换未启用]\n.text-orange-500 {\n    color: #a83f3f !important;\n}\n*/\n.flex.items-center.justify-center.size-6 > .flex.gap-2 {\n    display: none !important;\n}\n.flex.items-center.justify-center.size-6 {\n    position: relative !important;\n    width: auto !important;\n    max-width: 280px !important;\n    height: 5.5rem !important;\n    display: flex !important;\n    flex-direction: column !important;\n    align-items: center !important;\n    justify-content: center !important;\n    margin: 1.5rem auto !important;\n}\n.flex.items-center.justify-center.size-6::before {\n    content: '' !important;\n    position: absolute !important;\n    top: 0.3rem !important;\n    left: 50% !important;\n    transform: translateX(-50%) !important;\n    width: 5rem !important;\n    height: 5rem !important;\n    background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 140'%3E%3Cdefs%3E%3CradialGradient id='inkDot'%3E%3Cstop offset='0%25' stop-color='%23111' stop-opacity='0.95'/%3E%3Cstop offset='70%25' stop-color='%23333' stop-opacity='0.5'/%3E%3Cstop offset='100%25' stop-color='%23555' stop-opacity='0'/%3E%3C/radialGradient%3E%3Cfilter id='inkBlur'%3E%3CfeGaussianBlur in='SourceGraphic' stdDeviation='0.6'/%3E%3C/filter%3E%3C/defs%3E%3C!-- 中心主墨核 --%3E%3Ccircle cx='70' cy='70' r='4.5' fill='%23000' opacity='0.95'%3E%3Canimate attributeName='r' values='4.5;5.5;6;6.5' dur='2.4s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0.95;0.8;0.5;0.2' dur='2.4s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 第一圈墨点（8个方向） --%3E%3C!-- 上 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cy' values='70;58;48;38' dur='2.4s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 右上 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;79;87;95' dur='2.4s' begin='0.15s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;61;53;45' dur='2.4s' begin='0.15s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.15s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.15s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 右 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;82;92;102' dur='2.4s' begin='0.3s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.3s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.3s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 右下 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;79;87;95' dur='2.4s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;79;87;95' dur='2.4s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.45s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 下 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cy' values='70;82;92;102' dur='2.4s' begin='0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.6s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 左下 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;61;53;45' dur='2.4s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;79;87;95' dur='2.4s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.75s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 左 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;58;48;38' dur='2.4s' begin='0.9s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='0.9s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='0.9s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 左上 --%3E%3Ccircle cx='70' cy='70' r='2.5' fill='url(%23inkDot)' filter='url(%23inkBlur)'%3E%3Canimate attributeName='cx' values='70;61;53;45' dur='2.4s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;61;53;45' dur='2.4s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='2.5;3.5;4.2;5' dur='2.4s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.9;0.6;0' dur='2.4s' begin='1.05s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 第二圈更小的飞溅墨点（12个） --%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;78;85;92' dur='2s' begin='0.2s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;64;59;54' dur='2s' begin='0.2s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.2s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.2s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;83;94;105' dur='2s' begin='0.35s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;70;70;70' dur='2s' begin='0.35s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.35s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.35s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;78;85;92' dur='2s' begin='0.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;76;81;86' dur='2s' begin='0.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.5s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.5s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;70;70;70' dur='2s' begin='0.65s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;83;94;105' dur='2s' begin='0.65s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.65s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.65s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;62;55;48' dur='2s' begin='0.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;76;81;86' dur='2s' begin='0.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.8s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.8s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;57;46;35' dur='2s' begin='0.95s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;70;70;70' dur='2s' begin='0.95s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='0.95s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='0.95s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.8' fill='%23222' opacity='0'%3E%3Canimate attributeName='cx' values='70;62;55;48' dur='2s' begin='1.1s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;64;59;54' dur='2s' begin='1.1s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.8;2.5;3;3.5' dur='2s' begin='1.1s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.4;0' dur='2s' begin='1.1s' repeatCount='indefinite'/%3E%3C/circle%3E%3C!-- 第三圈微小墨点装饰（16个随机方向） --%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;75;79;83' dur='1.6s' begin='0.3s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;66;63;60' dur='1.6s' begin='0.3s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='0.3s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='0.3s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;74;77;80' dur='1.6s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;74;77;80' dur='1.6s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='0.45s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='0.45s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;66;63;60' dur='1.6s' begin='0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;74;77;80' dur='1.6s' begin='0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='0.6s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='0.6s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;66;63;60' dur='1.6s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;66;63;60' dur='1.6s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='0.75s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='0.75s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;76;81;86' dur='1.6s' begin='0.9s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;68;66;64' dur='1.6s' begin='0.9s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='0.9s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='0.9s' repeatCount='indefinite'/%3E%3C/circle%3E%3Ccircle cx='70' cy='70' r='1.2' fill='%23333' opacity='0'%3E%3Canimate attributeName='cx' values='70;64;59;54' dur='1.6s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='cy' values='70;68;66;64' dur='1.6s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='r' values='1.2;1.8;2.2;2.6' dur='1.6s' begin='1.05s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.3;0' dur='1.6s' begin='1.05s' repeatCount='indefinite'/%3E%3C/circle%3E%3C/svg%3E\") !important;\n    background-size: contain !important;\n    background-repeat: no-repeat !important;\n    background-position: center !important;\n    filter: contrast(1.15) brightness(0.92) !important;\n}\n.flex.items-center.justify-center.size-6::after {\n    content: \"正在构思方案中……\" !important;\n    position: absolute !important;\n    left: 50% !important;\n    bottom: 0.1rem !important;\n    transform: translateX(-50%) !important;\n    display: block !important;\n    font-family: \"SimSun\", \"STKaiti\", \"KaiTi\", serif !important;\n    font-weight: 600 !important;\n    font-size: 0.78rem !important;\n    color: #333333 !important;\n    text-align: center !important;\n    white-space: nowrap !important;\n    overflow: hidden !important;\n    box-sizing: content-box !important;\n    border-right: 1px solid rgba(0,0,0,0.6) !important;\n    padding-right: 0.2rem !important;\n    animation:\n        typing 4s steps(12, end) infinite alternate,\n        caretBlink 0.8s steps(1, end) infinite !important;\n}\n@keyframes typing {\n    0% {\n        width: 0;\n    }\n    100% {\n        width: 11em;\n    }\n}\n@keyframes caretBlink {\n    0%, 49% {\n        border-right-color: rgba(0,0,0,0.6);\n    }\n    50%, 100% {\n        border-right-color: transparent;\n    }\n}\n/* ========== 山水水墨风格 - 顶部栏美化 ========== */\n\n/* 主容器 - 宣纸质感背景 */\nheader.flex.justify-between {\n  /* 宣纸底色 */\n  background: \n    linear-gradient(\n      180deg,\n      rgba(253, 251, 247, 0.97) 0%,\n      rgba(248, 244, 236, 0.95) 100%\n    );\n  border-bottom: none !important;\n  position: relative;\n  overflow: visible;\n  box-shadow: \n    0 2px 8px rgba(139, 126, 102, 0.08),\n    0 4px 20px rgba(139, 126, 102, 0.05);\n}\n\n/* 左侧远山装饰 */\nheader.flex.justify-between::before {\n  content: '';\n  position: absolute;\n  left: 0;\n  bottom: 0;\n  width: 280px;\n  height: 100%;\n  opacity: 0.35;\n  pointer-events: none;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 64' preserveAspectRatio='xMinYMax slice'%3E%3Cdefs%3E%3ClinearGradient id='mist' x1='0%25' y1='0%25' x2='0%25' y2='100%25'%3E%3Cstop offset='0%25' style='stop-color:%23475569;stop-opacity:0'/%3E%3Cstop offset='60%25' style='stop-color:%23475569;stop-opacity:0.3'/%3E%3Cstop offset='100%25' style='stop-color:%23334155;stop-opacity:0.6'/%3E%3C/linearGradient%3E%3C/defs%3E%3C!-- 远山层 --%3E%3Cpath d='M0 64 L0 45 Q15 38 30 42 Q50 35 70 40 Q90 32 110 38 Q130 42 150 36 Q170 30 190 35 Q210 40 230 34 Q250 38 270 42 L280 40 L280 64 Z' fill='url(%23mist)' opacity='0.4'/%3E%3C!-- 近山层 --%3E%3Cpath d='M0 64 L0 52 Q20 46 40 50 Q60 44 80 48 Q100 42 120 46 Q140 50 160 44 L180 48 L180 64 Z' fill='%23475569' opacity='0.25'/%3E%3C!-- 云雾 --%3E%3Cellipse cx='60' cy='50' rx='40' ry='8' fill='white' opacity='0.6'/%3E%3Cellipse cx='140' cy='46' rx='30' ry='6' fill='white' opacity='0.4'/%3E%3C/svg%3E\");\n  background-repeat: no-repeat;\n  background-position: left bottom;\n  background-size: contain;\n}\n\n/* 右侧竹影装饰 */\nheader.flex.justify-between::after {\n  content: '';\n  position: absolute;\n  right: 60px;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 100px;\n  height: 50px;\n  opacity: 0.12;\n  pointer-events: none;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 50'%3E%3C!-- 竹枝 --%3E%3Cpath d='M85 50 Q83 35 80 20 Q78 10 82 0' stroke='%23374151' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3Cpath d='M90 50 Q89 40 88 25 Q87 15 90 5' stroke='%23374151' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C!-- 竹叶 --%3E%3Cpath d='M80 20 Q70 18 65 22 Q72 20 80 20' fill='%23374151'/%3E%3Cpath d='M82 15 Q75 10 68 12 Q76 12 82 15' fill='%23374151'/%3E%3Cpath d='M78 28 Q68 30 62 26 Q70 28 78 28' fill='%23374151'/%3E%3Cpath d='M88 25 Q82 20 76 22 Q83 22 88 25' fill='%23374151'/%3E%3Cpath d='M86 32 Q78 34 72 30 Q80 32 86 32' fill='%23374151'/%3E%3C/svg%3E\");\n  background-repeat: no-repeat;\n  background-position: center;\n  background-size: contain;\n}\n\n/* 底部水墨边框 - 使用额外层 */\nheader.flex.justify-between > div:first-child::after {\n  content: '';\n  position: absolute;\n  bottom: -12px;\n  left: 10%;\n  right: 10%;\n  height: 12px;\n  pointer-events: none;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 12' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='ink' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' style='stop-color:%23374151;stop-opacity:0'/%3E%3Cstop offset='15%25' style='stop-color:%23374151;stop-opacity:0.6'/%3E%3Cstop offset='50%25' style='stop-color:%231f2937;stop-opacity:0.8'/%3E%3Cstop offset='85%25' style='stop-color:%23374151;stop-opacity:0.6'/%3E%3Cstop offset='100%25' style='stop-color:%23374151;stop-opacity:0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 2 Q50 1 100 2.5 Q150 4 200 2 Q250 0.5 300 2.5 Q350 3.5 400 2' stroke='url(%23ink)' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C!-- 墨点装饰 --%3E%3Ccircle cx='200' cy='2' r='2.5' fill='%231f2937' opacity='0.5'/%3E%3Ccircle cx='120' cy='3' r='1.5' fill='%23374151' opacity='0.4'/%3E%3Ccircle cx='280' cy='2.5' r='1.8' fill='%23374151' opacity='0.4'/%3E%3C/svg%3E\");\n  background-size: 100% 100%;\n}\n\n/* ========== 标签样式 - 印章效果 ========== */\n.rounded-md.inline-flex.items-center.text-green-800.bg-green-100 {\n  background: linear-gradient(135deg, #dc2626 0%, #b91c1c 100%) !important;\n  color: #fef2f2 !important;\n  border: 1px solid #991b1b;\n  border-radius: 2px !important;\n  font-family: 'ZCOOL XiaoWei', 'Ma Shan Zheng', serif !important;\n  font-size: 11px !important;\n  font-weight: 400 !important;\n  letter-spacing: 2px;\n  padding: 2px 8px !important;\n  position: relative;\n  box-shadow: \n    inset 0 0 0 1px rgba(255, 255, 255, 0.1),\n    2px 2px 4px rgba(0, 0, 0, 0.15);\n  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);\n}\n\n/* 印章磨损效果 */\n.rounded-md.inline-flex.items-center.text-green-800.bg-green-100::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 50 20'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.08'/%3E%3C/svg%3E\");\n  pointer-events: none;\n  mix-blend-mode: overlay;\n}\n\n/* ========== 模型选择器 - 卷轴样式 ========== */\n#nav-middle .group.flex.items-center {\n  background: linear-gradient(\n    180deg,\n    rgba(255, 253, 250, 0.95) 0%,\n    rgba(250, 247, 240, 0.9) 50%,\n    rgba(245, 241, 232, 0.95) 100%\n  ) !important;\n  border: 1px solid rgba(139, 119, 91, 0.3) !important;\n  border-radius: 4px !important;\n  outline: none !important;\n  position: relative;\n  box-shadow:\n    inset 0 1px 0 rgba(255, 255, 255, 0.8),\n    0 2px 8px rgba(139, 119, 91, 0.12);\n  padding-left: 24px !important;\n  padding-right: 12px !important;\n  transition: all 0.3s ease;\n}\n\n/* 卷轴左端装饰 */\n#nav-middle .group.flex.items-center::before {\n  content: '';\n  position: absolute;\n  left: 6px;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 12px;\n  height: 20px;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 20'%3E%3Crect x='2' y='0' width='8' height='20' rx='1' fill='%238B7355' opacity='0.6'/%3E%3Crect x='3' y='2' width='6' height='16' rx='0.5' fill='%23A08B6D' opacity='0.4'/%3E%3Cline x1='6' y1='3' x2='6' y2='17' stroke='%23705940' stroke-width='0.5' opacity='0.5'/%3E%3C/svg%3E\");\n  background-repeat: no-repeat;\n  background-size: contain;\n}\n\n/* 模型名称文字样式 */\n#nav-middle button:has(> .flex-1.truncate.text-left) .flex-1.truncate.text-left {\n  font-family: 'ZCOOL XiaoWei', serif !important;\n  color: #374151 !important;\n  font-size: 13px !important;\n  letter-spacing: 0.5px;\n}\n\n/* 下拉箭头容器 */\n#nav-middle .shrink-0.flex.items-center svg {\n  color: #8B7355 !important;\n  transition: transform 0.3s ease;\n}\n\n/* 悬停效果 */\n#nav-middle .group:hover {\n  background: linear-gradient(\n    180deg,\n    rgba(255, 255, 252, 0.98) 0%,\n    rgba(252, 250, 245, 0.95) 100%\n  ) !important;\n  border-color: rgba(139, 119, 91, 0.5) !important;\n  box-shadow:\n    inset 0 1px 0 rgba(255, 255, 255, 0.9),\n    0 4px 12px rgba(139, 119, 91, 0.18);\n}\n\n#nav-middle .group:hover .truncate {\n  color: #1f2937 !important;\n}\n\n#nav-middle .group:hover svg {\n  color: #705940 !important;\n}\n\n/* ========== 设置按钮 - 圆形印章风格 ========== */\n#nav-right button {\n  background: linear-gradient(\n    135deg,\n    rgba(250, 247, 240, 0.9) 0%,\n    rgba(245, 241, 232, 0.85) 100%\n  ) !important;\n  border: 1.5px solid rgba(139, 119, 91, 0.35) !important;\n  border-radius: 50% !important;\n  width: 36px !important;\n  height: 36px !important;\n  position: relative;\n  transition: all 0.3s ease;\n  box-shadow: 0 2px 6px rgba(139, 119, 91, 0.1);\n}\n\n/* 按钮装饰环 */\n#nav-right button::before {\n  content: '';\n  position: absolute;\n  inset: 3px;\n  border: 1px dashed rgba(139, 119, 91, 0.25);\n  border-radius: 50%;\n  pointer-events: none;\n}\n\n#nav-right button svg {\n  color: #6B5C4A !important;\n  font-size: 18px !important;\n  transition: all 0.3s ease;\n}\n\n#nav-right button:hover {\n  background: linear-gradient(\n    135deg,\n    rgba(255, 252, 247, 0.95) 0%,\n    rgba(250, 247, 240, 0.9) 100%\n  ) !important;\n  border-color: rgba(139, 119, 91, 0.5) !important;\n  box-shadow: 0 3px 10px rgba(139, 119, 91, 0.18);\n  transform: scale(1.05);\n}\n\n#nav-right button:hover svg {\n  color: #4A3F32 !important;\n}\n\n/* ========== 响应式调整 ========== */\n@media (max-width: 768px) {\n  header.flex.justify-between::before {\n    width: 150px;\n    opacity: 0.25;\n  }\n  \n  header.flex.justify-between::after {\n    display: none;\n  }\n  \n  #nav-middle .group.flex.items-center {\n    padding-left: 20px !important;\n  }\n}\n/* ========== 按钮容器 - 横幅装饰 ========== */\n#ai-mod-button2 {\n  position: relative;\n  padding: 12px 16px 14px 16px !important;\n  background: linear-gradient(\n    180deg,\n    rgba(253, 251, 247, 0.6) 0%,\n    rgba(248, 244, 236, 0.4) 100%\n  );\n  border-bottom: none;\n  gap: 10px !important;\n}\n\n\n/* 底部水墨分隔线 */\n#ai-mod-button2::after {\n  content: '';\n  position: absolute;\n  bottom: 0;\n  left: 5%;\n  right: 5%;\n  height: 6px;\n  pointer-events: none;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 6' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='inkLine' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' style='stop-color:%236B5C4A;stop-opacity:0'/%3E%3Cstop offset='20%25' style='stop-color:%236B5C4A;stop-opacity:0.3'/%3E%3Cstop offset='50%25' style='stop-color:%234A3F32;stop-opacity:0.5'/%3E%3Cstop offset='80%25' style='stop-color:%236B5C4A;stop-opacity:0.3'/%3E%3Cstop offset='100%25' style='stop-color:%236B5C4A;stop-opacity:0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0 3 Q100 2 200 3.5 Q300 4.5 400 3' stroke='url(%23inkLine)' stroke-width='1' fill='none'/%3E%3C/svg%3E\");\n  background-size: 100% 100%;\n}\n\n/* ========== 通用按钮样式 - 水墨纸片风格 ========== */\n#ai-mod-button2 button.MuiButton-root {\n  background: linear-gradient(\n    145deg,\n    rgba(255, 253, 250, 0.95) 0%,\n    rgba(250, 247, 240, 0.9) 50%,\n    rgba(245, 241, 232, 0.95) 100%\n  ) !important;\n  border: 1px solid rgba(107, 92, 74, 0.25) !important;\n  border-radius: 3px !important;\n  color: #4A3F32 !important;\n  font-family: 'ZCOOL XiaoWei', 'Noto Serif SC', serif !important;\n  font-size: 13px !important;\n  font-weight: 400 !important;\n  letter-spacing: 1px;\n  padding: 6px 14px !important;\n  position: relative;\n  overflow: hidden;\n  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);\n  box-shadow: \n    0 1px 3px rgba(107, 92, 74, 0.08),\n    inset 0 1px 0 rgba(255, 255, 255, 0.8);\n  text-transform: none !important;\n}\n\n/* 按钮纸张纹理 */\n#ai-mod-button2 button.MuiButton-root::before {\n  content: '';\n  position: absolute;\n  inset: 0;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.04' numOctaves='5' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='0.03'/%3E%3C/svg%3E\");\n  pointer-events: none;\n  opacity: 0.5;\n}\n\n/* 墨迹扩散效果层 */\n#ai-mod-button2 button.MuiButton-root::after {\n  content: '';\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  width: 0;\n  height: 0;\n  border-radius: 50%;\n  background: radial-gradient(\n    circle,\n    rgba(74, 63, 50, 0.12) 0%,\n    rgba(74, 63, 50, 0.05) 40%,\n    transparent 70%\n  );\n  transform: translate(-50%, -50%);\n  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);\n  pointer-events: none;\n}\n\n/* ========== Hover 效果 - 墨迹晕染 ========== */\n#ai-mod-button2 button.MuiButton-root:hover {\n  background: linear-gradient(\n    145deg,\n    rgba(255, 255, 252, 0.98) 0%,\n    rgba(253, 251, 247, 0.95) 100%\n  ) !important;\n  border-color: rgba(107, 92, 74, 0.45) !important;\n  color: #2D2620 !important;\n  box-shadow: \n    0 4px 12px rgba(107, 92, 74, 0.15),\n    0 2px 4px rgba(107, 92, 74, 0.1),\n    inset 0 1px 0 rgba(255, 255, 255, 0.9);\n  transform: translateY(-2px);\n}\n\n/* Hover时墨迹扩散动画 */\n#ai-mod-button2 button.MuiButton-root:hover::after {\n  width: 200%;\n  height: 200%;\n}\n\n/* ========== 按钮图标样式 ========== */\n#ai-mod-button2 button.MuiButton-root svg {\n  color: #6B5C4A !important;\n  fill: #6B5C4A !important;\n  transition: all 0.3s ease;\n  font-size: 16px !important;\n  filter: drop-shadow(0 1px 1px rgba(107, 92, 74, 0.1));\n}\n\n#ai-mod-button2 button.MuiButton-root:hover svg {\n  color: #4A3F32 !important;\n  fill: #4A3F32 !important;\n  transform: scale(1.1);\n}\n\n/* ========== 特殊按钮样式 ========== */\n\n/* Mod 按钮 - 朱砂印章风格 */\n#ai-mod-button {\n  background: linear-gradient(\n    135deg,\n    rgba(185, 28, 28, 0.08) 0%,\n    rgba(255, 253, 250, 0.95) 30%,\n    rgba(250, 247, 240, 0.9) 100%\n  ) !important;\n  border-left: 3px solid #b91c1c !important;\n}\n\n#ai-mod-button::before {\n  content: '';\n  position: absolute;\n  left: -1px;\n  top: 20%;\n  bottom: 20%;\n  width: 3px;\n  background: linear-gradient(\n    180deg,\n    transparent 0%,\n    #dc2626 50%,\n    transparent 100%\n  );\n  opacity: 0.6;\n}\n\n#ai-mod-button:hover {\n  background: linear-gradient(\n    135deg,\n    rgba(185, 28, 28, 0.12) 0%,\n    rgba(255, 252, 250, 0.98) 30%,\n    rgba(253, 251, 247, 0.95) 100%\n  ) !important;\n  border-left-color: #991b1b !important;\n}\n\n#ai-mod-button svg {\n  color: #b91c1c !important;\n  fill: #b91c1c !important;\n}\n\n#ai-mod-button:hover svg {\n  color: #991b1b !important;\n  fill: #991b1b !important;\n}\n\n/* 隐藏按钮 - 淡雅竹青色 */\n#toggle-sub-buttons {\n  background: linear-gradient(\n    135deg,\n    rgba(240, 253, 250, 0.9) 0%,\n    rgba(250, 247, 240, 0.9) 100%\n  ) !important;\n  border-color: rgba(20, 83, 45, 0.2) !important;\n}\n\n#toggle-sub-buttons svg {\n  color: #166534 !important;\n  fill: #166534 !important;\n}\n\n#toggle-sub-buttons:hover {\n  background: linear-gradient(\n    135deg,\n    rgba(236, 253, 245, 0.95) 0%,\n    rgba(253, 251, 247, 0.95) 100%\n  ) !important;\n  border-color: rgba(20, 83, 45, 0.35) !important;\n}\n\n#toggle-sub-buttons:hover svg {\n  color: #14532d !important;\n  fill: #14532d !important;\n}\n\n/* ========== 评论数字徽章 ========== */\n#ai-mod-button2 button .text-xs {\n  background: rgba(107, 92, 74, 0.1);\n  color: #6B5C4A !important;\n  padding: 1px 6px;\n  border-radius: 10px;\n  font-size: 11px !important;\n  font-family: 'Georgia', serif;\n  margin-left: 6px !important;\n  border: 1px solid rgba(107, 92, 74, 0.15);\n}\n\n/* ========== Active/点击效果 ========== */\n#ai-mod-button2 button.MuiButton-root:active {\n  transform: translateY(0);\n  box-shadow: \n    0 1px 2px rgba(107, 92, 74, 0.1),\n    inset 0 2px 4px rgba(107, 92, 74, 0.08);\n}\n\n/* ========== 禁用涟漪效果，使用自定义效果 ========== */\n#ai-mod-button2 button /* .MuiTouchRipple-root  [removed: MUI ripple] */{\n  display: none !important;\n}\n\n/* ========== 按钮组间装饰符 ========== */\n#ai-mod-button2 button.MuiButton-root:not(:last-child) {\n  margin-right: 2px;\n}\n\n/* 中间装饰点 - 模拟印章连接 */\n#ai-mod-button2 button.MuiButton-root:not(:last-child)::before {\n  content: '';\n  position: absolute;\n  right: -7px;\n  top: 50%;\n  transform: translateY(-50%);\n  width: 4px;\n  height: 4px;\n  background: radial-gradient(\n    circle,\n    rgba(107, 92, 74, 0.3) 0%,\n    rgba(107, 92, 74, 0.1) 60%,\n    transparent 100%\n  );\n  border-radius: 50%;\n  z-index: 1;\n}\n\n#ai-mod-button2 button.MuiButton-root:hover {\n  animation: none;\n}\n\n/* 底部墨线装饰 - hover时显现 */\n#ai-mod-button2 button.MuiButton-root:hover::before {\n  content: '';\n  position: absolute;\n  bottom: 3px;\n  left: 15%;\n  right: 15%;\n  height: 2px;\n  background: linear-gradient(\n    90deg,\n    transparent 0%,\n    rgba(74, 63, 50, 0.3) 20%,\n    rgba(74, 63, 50, 0.4) 50%,\n    rgba(74, 63, 50, 0.3) 80%,\n    transparent 100%\n  );\n}\n\n/* ========== 响应式调整 ========== */\n@media (max-width: 768px) {\n  #ai-mod-button2 {\n    padding: 10px 12px 12px 12px !important;\n    gap: 8px !important;\n  }\n  \n  #ai-mod-button2::before {\n    width: 50px;\n    opacity: 0.1;\n  }\n  \n  #ai-mod-button2 button.MuiButton-root {\n    padding: 5px 10px !important;\n    font-size: 12px !important;\n  }\n}\n\n/* ========== 滚动条美化（如果按钮溢出） ========== */\n#ai-mod-button2::-webkit-scrollbar {\n  height: 4px;\n}\n\n#ai-mod-button2::-webkit-scrollbar-track {\n  background: rgba(245, 241, 232, 0.5);\n  border-radius: 2px;\n}\n\n#ai-mod-button2::-webkit-scrollbar-thumb {\n  background: linear-gradient(\n    90deg,\n    rgba(139, 115, 85, 0.3) 0%,\n    rgba(139, 115, 85, 0.5) 50%,\n    rgba(139, 115, 85, 0.3) 100%\n  );\n  border-radius: 2px;\n}\n\n#ai-mod-button2::-webkit-scrollbar-thumb:hover {\n  background: rgba(139, 115, 85, 0.6);\n}\n\n\n#ai-chat-bottom-input {\n  background: linear-gradient(to bottom, transparent, rgba(255, 253, 250, 0.8)) !important;\n}\n\n/* 2. 主输入框 - 宣纸质感与墨色字体 */\n#ai-chat-input {\n  background-color: #fffdfa !important;\n  /* 注入微弱的纸张纤维纹理 */\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='0.05'/%3E%3C/svg%3E\") !important;\n  \n  border: 1px solid rgba(107, 92, 74, 0.25) !important;\n  border-radius: 4px !important;\n  color: #2D2620 !important;\n  font-family: 'Noto Serif SC', 'ZCOOL XiaoWei', serif !important;\n  font-size: 15px !important;\n  line-height: 1.6 !important;\n  box-shadow: \n    inset 0 1px 4px rgba(107, 92, 74, 0.05),\n    0 2px 10px rgba(0, 0, 0, 0.03) !important;\n  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;\n}\n\n/* 3. 输入框聚焦效果 - 墨痕扩散与Smile动画 */\n#ai-chat-input:focus {\n  border-color: #4A3F32 !important;\n  background-color: #ffffff !important;\n  box-shadow: \n    0 0 0 1px rgba(74, 63, 50, 0.1),\n    0 4px 20px rgba(107, 92, 74, 0.12) !important;\n}\n\n/* 4. 占位符样式 - 淡墨意境 */\n#ai-chat-input::placeholder {\n  color: rgba(107, 92, 74, 0.45) !important;\n  font-style: italic !important;\n  letter-spacing: 1px;\n}\n\n/* 5. 文字选中效果 - 浅墨晕染 */\n#ai-chat-input::selection {\n  background: rgba(107, 92, 74, 0.15) !important;\n  color: #b91c1c !important; /* 选中文字变为朱砂色 */\n}\n\n\n/* 7. 适配移动端或窄屏的底部阴影消除 */\n#ai-chat-bottom-input::after {\n  content: \"\";\n  display: block;\n  height: 1px;\n  background: linear-gradient(to right, transparent, rgba(107, 92, 74, 0.2), transparent);\n  margin-top: 8px;\n  width: 80%;\n  margin-left: 10%;\n}\n/* 1. 评论区主容器 - 宣纸质感背景 */\ndiv[class*=\"w-full\"][class*=\"bg-white\"][class*=\"bottom-0\"] {\n  background-color: #fffdfa !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cfilter id='paper'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.04' numOctaves='5' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23paper)' opacity='0.04'/%3E%3C/svg%3E\") !important;\n  border-top: 1px solid rgba(107, 92, 74, 0.15) !important;\n  font-family: 'ZCOOL XiaoWei', 'Noto Serif SC', serif !important;\n}\n\n/* 2. 标题与文字颜色控制 */\ndiv.text-lg.font-bold, \nspan.font-bold,\ndiv.break-all {\n  color: #4A3F32 !important;\n  font-family: 'Noto Serif SC', serif !important;\n}\n\np.MuiTypography-body1.text-grey-600,\ndiv.text-xs.text-grey-600,\ndiv.bg-gray-100.text-gray-500 {\n  color: #6B5C4A !important;\n}\n\n/* 3. 评分星星 - 朱砂红点缀 */\nspan.MuiRating-iconFilled svg {\n  color: #b91c1c !important;\n  filter: drop-shadow(0 0 1px rgba(185, 28, 28, 0.2));\n}\n\nspan.MuiRating-iconEmpty svg {\n  color: rgba(107, 92, 74, 0.3) !important;\n}\n\n/* 4. 输入框美化 - 墨池风格 */\ntextarea.rc-textarea {\n  background: rgba(245, 241, 232, 0.5) !important;\n  border: 1px dashed rgba(107, 92, 74, 0.3) !important;\n  border-radius: 4px !important;\n  color: #2D2620 !important;\n  padding: 10px !important;\n  transition: all 0.3s ease !important;\n}\n\ntextarea.rc-textarea:focus {\n  background: rgba(255, 255, 255, 0.8) !important;\n  border-style: solid !important;\n  border-color: #6B5C4A !important;\n  box-shadow: 0 0 8px rgba(107, 92, 74, 0.1) !important;\n}\n\n/* 5. 发送按钮 - 朱砂印章 */\ndiv.cursor-pointer.group.flex.items-center.justify-center {\n  background: #b91c1c !important;\n  border-radius: 2px !important;\n  padding: 6px !important;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;\n  box-shadow: 1px 1px 3px rgba(0,0,0,0.2) !important;\n}\n\ndiv.cursor-pointer.group.flex.items-center.justify-center:hover {\n  transform: scale(1.05) rotate(-2deg);\n  background: #991b1b !important;\n  animation: smile 0.5s ease-in-out infinite alternate;\n}\n\ndiv[data-state=\"closed\"] svg[data-icon=\"Send03\"] {\n  color: #fffdfa !important;\n}\n\n/* 6. 评论列表项与分割线 */\ndiv.group.ml-0 {\n  border-bottom: 1px solid rgba(107, 92, 74, 0.08) !important;\n  padding-bottom: 12px !important;\n  margin-bottom: 12px !important;\n  transition: background 0.3s ease;\n}\n\ndiv.group.ml-0:hover {\n  background: rgba(107, 92, 74, 0.02) !important;\n}\n\n/* 用户头像 - 墨边 */\ndiv.group img.rounded-full {\n  border: 1px solid rgba(107, 92, 74, 0.2) !important;\n  padding: 2px !important;\n  background: #fff !important;\n}\n\n/* 7. 排序按钮 - 匹配山水色调 */\nbutton.MuiButton-containedPrimary {\n  background: #4A3F32 !important;\n  color: #fffdfa !important;\n  border-radius: 2px !important;\n  font-size: 12px !important;\n  box-shadow: none !important;\n}\n\n/* 8. 回复区域样式 */\nspan.cursor-pointer {\n  color: #6B5C4A !important;\n  font-size: 12px !important;\n  text-decoration: underline rgba(107, 92, 74, 0.3) !important;\n}\n\ndiv.ml-8.border-l {\n  border-left: 2px solid rgba(107, 92, 74, 0.1) !important;\n}\n\n\n/* 输入框占位符 */\n#ai-chat-input::placeholder {\n  color: rgba(107, 92, 74, 0.4) !important;\n  font-style: italic;\n}\n.MuiPagination-root.MuiPagination-outlined {\n  font-family: \"STKaiti\", \"KaiTi\", \"楷体\", \"SimSun\", \"宋体\", serif;\n}\n\n/* 分页按钮基础样式 */\n.MuiPaginationItem-root {\n  font-family: \"STKaiti\", \"KaiTi\", \"楷体\", serif !important;\n  background: linear-gradient(\n    160deg,\n    rgba(255, 254, 250, 0.98) 0%,\n    rgba(248, 245, 238, 0.95) 100%\n  ) !important;\n  border-color: rgba(80, 70, 55, 0.3) !important;\n  color: #4a453d !important;\n  transition: all 0.35s ease !important;\n  box-shadow: 0 1px 3px rgba(80, 70, 55, 0.08) !important;\n}\n\n/* 悬停状态 - 墨韵浮动 */\n.MuiPaginationItem-root:not(.Mui-disabled):not(.Mui-selected):hover {\n  background: linear-gradient(\n    160deg,\n    rgba(245, 242, 232, 1) 0%,\n    rgba(238, 233, 222, 1) 100%\n  ) !important;\n  border-color: rgba(70, 60, 45, 0.5) !important;\n  color: #3a3530 !important;\n  box-shadow: \n    0 3px 10px rgba(80, 70, 55, 0.15),\n    inset 0 1px 0 rgba(255, 255, 255, 0.6) !important;\n}\n\n/* 选中状态 - 浓墨重彩 */\n.MuiPaginationItem-root.Mui-selected {\n  background: linear-gradient(\n    160deg,\n    #5a5348 0%,\n    #4a453d 50%,\n    #3a3530 100%\n  ) !important;\n  color: #f5f3ed !important;\n  border-color: #2a2520 !important;\n  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);\n  box-shadow: \n    0 2px 8px rgba(58, 53, 48, 0.35),\n    inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;\n}\n\n/* 选中悬停 */\n.MuiPaginationItem-root.Mui-selected:hover {\n  background: linear-gradient(\n    160deg,\n    #6a635a 0%,\n    #5a5348 50%,\n    #4a453d 100%\n  ) !important;\n  box-shadow: 0 4px 12px rgba(58, 53, 48, 0.4) !important;\n}\n\n/* 禁用状态 - 淡墨留白 */\n.MuiPaginationItem-root.Mui-disabled {\n  background: rgba(250, 248, 243, 0.5) !important;\n  border-color: rgba(80, 70, 55, 0.12) !important;\n  color: rgba(74, 69, 61, 0.3) !important;\n  box-shadow: none !important;\n}\n\n/* 翻页箭头图标 */\n.MuiPaginationItem-icon {\n  fill: currentColor;\n  transition: transform 0.3s ease !important;\n}\n\n.MuiPaginationItem-previousNext:not(.Mui-disabled):hover .MuiPaginationItem-icon {\n  transform: scale(1.1);\n}\n\n/* 波纹效果 */\n/* .MuiTouchRipple-root  [removed: MUI ripple] */{\n  color: rgba(90, 83, 72, 0.35) !important;\n}\n\n/* ─────────────────────────────────────\n   跳转输入区域\n   ───────────────────────────────────── */\n\n.flex.w-full.items-center.justify-between.gap-2.px-2.css-1uwir8f {\n  font-family: \"STKaiti\", \"KaiTi\", \"楷体\", serif;\n  color: #5a554a;\n}\n\n/* 文字样式 */\n.flex.w-full.items-center.justify-between.gap-2.px-2.css-1uwir8f .MuiBox-root {\n  color: #6a655a;\n}\n\n/* 输入框 */\n.MuiInputBase-input {\n  font-family: \"STKaiti\", \"KaiTi\", \"楷体\", serif !important;\n  border: 1px solid rgba(80, 70, 55, 0.28) !important;\n  background: linear-gradient(\n    160deg,\n    rgba(255, 254, 252, 1) 0%,\n    rgba(252, 250, 245, 1) 100%\n  ) !important;\n  color: #4a453d !important;\n  transition: all 0.3s ease !important;\n  box-shadow: inset 0 1px 3px rgba(80, 70, 55, 0.05) !important;\n}\n\n.MuiInputBase-input:hover {\n  border-color: rgba(80, 70, 55, 0.45) !important;\n  background: #fffef9 !important;\n}\n\n.MuiInputBase-input:focus {\n  outline: none !important;\n  border-color: rgba(70, 60, 45, 0.6) !important;\n  background: #ffffff !important;\n  box-shadow: \n    0 0 0 3px rgba(100, 90, 75, 0.1),\n    inset 0 1px 2px rgba(80, 70, 55, 0.08) !important;\n}\n\n\n.rili-markdown-renderer pre {\n  position: relative !important;\n  background: linear-gradient(135deg, #f9f6f0 0%, #f3efe6 50%, #ebe7dc 100%) !important;\n  border: none !important;\n  border-radius: 12px !important;\n  padding: 3px !important;\n  box-shadow: \n    0 4px 20px rgba(60, 50, 40, 0.15),\n    0 8px 40px rgba(60, 50, 40, 0.1),\n    inset 0 0 60px rgba(139, 129, 112, 0.05) !important;\n  overflow: visible !important;\n}\n\n/* 外层华丽边框 - 多层叠加 */\n.rili-markdown-renderer pre::before {\n  content: \"\" !important;\n  position: absolute !important;\n  inset: -3px !important;\n  border-radius: 14px !important;\n  padding: 3px !important;\n  background: linear-gradient(\n    135deg, \n    #8b7355 0%, \n    #c4a574 15%, \n    #d4c4a8 30%,\n    #a08060 50%,\n    #d4c4a8 70%,\n    #c4a574 85%,\n    #8b7355 100%\n  ) !important;\n  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;\n  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0) !important;\n  -webkit-mask-composite: xor !important;\n  mask-composite: exclude !important;\n  pointer-events: none !important;\n  z-index: 1 !important;\n}\n\n/* 最外层装饰边框 */\n.rili-markdown-renderer pre::after {\n  content: \"\" !important;\n  position: absolute !important;\n  inset: -7px !important;\n  border-radius: 18px !important;\n  border: 1px solid transparent !important;\n  background: linear-gradient(135deg, \n    rgba(139, 115, 85, 0.3) 0%, \n    rgba(196, 165, 116, 0.5) 25%,\n    rgba(139, 115, 85, 0.2) 50%,\n    rgba(196, 165, 116, 0.5) 75%,\n    rgba(139, 115, 85, 0.3) 100%\n  ) border-box !important;\n  -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) !important;\n  mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) !important;\n  -webkit-mask-composite: xor !important;\n  mask-composite: exclude !important;\n  pointer-events: none !important;\n  z-index: 0 !important;\n}\n\n\n/* ─────────── 主容器 ─────────── */\n.rili-markdown-renderer pre > div {\n  background: transparent !important;\n  border-radius: 9px !important;\n}\n\n/* ─────────── 头部栏 · 墨韵华章 ─────────── */\n.rili-markdown-renderer pre > div > div.flex.justify-between.h-8 {\n  background: linear-gradient(90deg, \n    #e0d9cb 0%, \n    #d8d0c0 20%,\n    #e5ddd0 50%,\n    #d8d0c0 80%,\n    #e0d9cb 100%\n  ) !important;\n  border-bottom: 2px solid !important;\n  border-image: linear-gradient(90deg, \n    #a08060 0%, \n    #c4a574 30%, \n    #8b7355 50%, \n    #c4a574 70%, \n    #a08060 100%\n  ) 1 !important;\n  position: relative !important;\n  padding-left: 45px !important;\n  overflow: visible !important;\n}\n\n\n/* 头部右侧装饰纹 */\n.rili-markdown-renderer pre > div > div.flex.justify-between.h-8::after {\n  content: \"◆ ◇ ◆\" !important;\n  position: absolute !important;\n  right: 70px !important;\n  top: 50% !important;\n  transform: translateY(-50%) !important;\n  color: #a89888 !important;\n  font-size: 8px !important;\n  letter-spacing: 3px !important;\n  opacity: 0.5 !important;\n}\n\n\n/* ─────────── 复制按钮 · 玉石质感 ─────────── */\n.rili-markdown-renderer pre div[data-tooltip-id^=\"copy-tooltip\"] {\n  background: linear-gradient(145deg, #e8e3d9 0%, #ddd7cb 100%) !important;\n  border: 1px solid #b8a888 !important;\n  border-radius: 6px !important;\n  box-shadow: \n    0 2px 4px rgba(60, 50, 40, 0.1),\n    inset 0 1px 0 rgba(255, 255, 255, 0.5) !important;\n  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;\n}\n\n.rili-markdown-renderer pre div[data-tooltip-id^=\"copy-tooltip\"]:hover {\n  background-color: linear-gradient(145deg, #ddd7cb 0%, #d0c8b8 100%) !important;\n  border-color: #a08868 !important;\n  box-shadow: \n    0 4px 12px rgba(60, 50, 40, 0.2),\n    inset 0 1px 0 rgba(255, 255, 255, 0.6) !important;\n  transform: translateY(-1px) !important;\n}\n\n.rili-markdown-renderer pre div[data-tooltip-id^=\"copy-tooltip\"] > div:hover {\n  background-color: rgba(160, 136, 104, 0.25) !important;\n  border-radius: 4px !important;\n}\n\n/* ─────────── 代码内容区 ─────────── */\n.rili-markdown-renderer pre > div > div[node] {\n  background: linear-gradient(180deg, \n    rgba(249, 246, 240, 0.5) 0%, \n    transparent 100%\n  ) !important;\n  color: #3d3832 !important;\n  padding: 0 !important;\n}\n\n/* ─────────── 代码元素 · 行级美化 ─────────── */\n.rili-markdown-renderer pre code[class^=\"language-\"] {\n  color: #3d3832 !important;\n  font-family: \"Fira Code\", \"Source Code Pro\", \"Consolas\", monospace !important;\n  font-size: 13.5px !important;\n  line-height: 1.9 !important;\n  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) !important;\n  display: block !important;\n  padding: 12px 16px !important;\n  counter-reset: line !important;\n}\n\n\n/* ─────────── 纯代码块 ─────────── */\n.rili-markdown-renderer pre > code[node] {\n  background: linear-gradient(135deg, #f9f6f0 0%, #f3efe6 100%) !important;\n  color: #3d3832 !important;\n  padding: 1em !important;\n  font-family: \"Fira Code\", \"Source Code Pro\", monospace !important;\n  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4) !important;\n  border-radius: 9px !important;\n}\n\n/* ─────────── 四角装饰纹 ─────────── */\n.rili-markdown-renderer pre > div::before,\n.rili-markdown-renderer pre > div::after {\n  content: \"❖\" !important;\n  position: absolute !important;\n  font-size: 10px !important;\n  color: #a08868 !important;\n  opacity: 0.6 !important;\n  z-index: 10 !important;\n  }\n\n.rili-markdown-renderer pre > div::before {\n  top: -2px !important;\n  left: -2px !important;\n}\n\n.rili-markdown-renderer pre > div::after {\n  bottom: -2px !important;\n  right: -2px !important;\n}\n\n.rili-markdown-renderer pre > div > div.flex.justify-between.h-8 {\n  background: linear-gradient(90deg, \n    #e0d9cb 0%, \n    #d8d0c0 20%,\n    #e5ddd0 50%,\n    #d8d0c0 80%,\n    #e0d9cb 100%\n  ) !important;\n  border-bottom: 2px solid !important;\n  border-image: linear-gradient(90deg, \n    #a08060 0%, \n    #c4a574 30%, \n    #8b7355 50%, \n    #c4a574 70%, \n    #a08060 100%\n  ) 1 !important;\n  position: relative !important;\n  padding-left: 42px !important;\n  overflow: visible !important;\n}\n\n.rili-markdown-renderer pre > div > div.flex.justify-between.h-8::before {\n  content: \"\" !important;\n  position: absolute !important;\n  left: 10px !important;\n  top: 50% !important;\n  transform: translateY(-50%) !important;\n  width: 24px !important;\n  height: 24px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024'%3E%3Cpath fill='%235a4a3a' d='M659.655431 521.588015q23.970037-6.71161 46.022472-13.423221 19.17603-5.752809 39.310861-11.505618t33.558052-10.546816l-13.423221 50.816479q-5.752809 21.093633-10.546816 31.640449-9.588015 25.88764-22.531835 47.940075t-24.449438 38.35206q-13.423221 19.17603-27.805243 35.475655l-117.932584 35.475655 96.838951 17.258427q-19.17603 16.299625-41.228464 33.558052-19.17603 14.382022-43.625468 30.202247t-51.29588 29.243446-59.925094 13.902622-62.801498-4.314607q-34.516854-4.794007-69.033708-16.299625 10.546816-16.299625 23.011236-36.434457 10.546816-17.258427 25.40824-40.749064t31.161049-52.254682q46.022472-77.662921 89.168539-152.449438t77.662921-135.191011q39.310861-69.992509 75.745318-132.314607-45.06367 51.775281-94.921348 116.014981-43.146067 54.651685-95.88015 129.917603t-107.385768 164.434457q-11.505618 18.217228-25.88764 42.187266t-30.202247 50.816479-32.599251 55.131086-33.078652 55.131086q-38.35206 62.322097-78.621723 130.397004 0.958801-20.134831 7.670412-51.775281 5.752809-26.846442 19.17603-67.116105t38.35206-94.921348q16.299625-34.516854 24.928839-53.692884t13.423221-29.722846q4.794007-11.505618 7.670412-15.340824-4.794007-5.752809-1.917603-23.011236 1.917603-15.340824 11.026217-44.58427t31.161049-81.977528q22.052434-53.692884 58.007491-115.535581t81.018727-122.726592 97.797753-117.932584 107.865169-101.153558 110.262172-72.389513 106.906367-32.11985q0.958801 33.558052-6.71161 88.689139t-19.17603 117.932584-25.88764 127.520599-27.805243 117.453184z'/%3E%3C/svg%3E\") !important;\n  background-repeat: no-repeat !important;\n  background-size: contain !important;\n}\n\n\n/* ═══════════════════════════════════════════════════════════════\n   替换部分 2: 代码行级Hover效果\n   ═══════════════════════════════════════════════════════════════ */\n\n/* 代码元素基础样式 */\n.rili-markdown-renderer pre code[class^=\"language-\"] {\n  color: #3d3832 !important;\n  font-family: \"Fira Code\", \"Source Code Pro\", \"Consolas\", monospace !important;\n  font-size: 13.5px !important;\n  line-height: 1.9 !important;\n  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5) !important;\n  display: block !important;\n  padding: 12px 16px 12px 28px !important;\n}\n\n.rili-markdown-renderer pre code[class^=\"language-\"] > span {\n  border-bottom: 2px solid transparent !important;\n}\n.rili-markdown-renderer pre code[class^=\"language-\"] > span:hover {\n  /* 🔧 简单的下划线效果替代 radial-gradient */\n  border-bottom-color: rgba(160, 136, 104, 0.5) !important;\n  color: #6b5c4a !important;\n}\n\nhelp {\n  --help-image: linear-gradient(\n    135deg,\n    rgba(35, 35, 35, 0.14),\n    rgba(35, 35, 35, 0.04) 55%,\n    rgba(120, 120, 120, 0.08)\n  );\n  display: block;\n  position: relative;\n  box-sizing: border-box;\n  width: min(100%, 680px);\n  margin: 1rem auto;\n  padding: clamp(12px, 3.5vw, 18px);\n  overflow: hidden;\n  color: #2f2a24;\n  line-height: 1.8;\n  font-size: clamp(14px, 3.7vw, 16px);\n  font-family:\n    \"STKaiti\",\n    \"KaiTi\",\n    \"Songti SC\",\n    \"Noto Serif SC\",\n    \"Source Han Serif SC\",\n    serif;\n  background:\n    radial-gradient(120% 90% at 0% 0%, rgba(34, 34, 34, 0.08), transparent 38%),\n    radial-gradient(100% 80% at 100% 100%, rgba(80, 66, 48, 0.07), transparent 32%),\n    repeating-linear-gradient(\n      0deg,\n      rgba(90, 70, 45, 0.02) 0 1px,\n      transparent 1px 4px\n    ),\n    linear-gradient(180deg, rgba(252, 248, 240, 0.98), rgba(244, 236, 223, 0.98));\n  border: 1px solid rgba(72, 58, 40, 0.14);\n  border-radius: 18px;\n  box-shadow:\n    0 10px 26px rgba(30, 25, 18, 0.08),\n    inset 0 1px 0 rgba(255, 255, 255, 0.55);\n  word-break: break-word;\n  -webkit-tap-highlight-color: transparent;\n}\n/* 图片区域 */\nhelp::before {\n  content: \"\";\n  display: block;\n  width: 100%;\n  margin-bottom: 0.9rem;\n  aspect-ratio: 16 / 10;\n  border-radius: 14px;\n  border: 1px solid rgba(56, 46, 33, 0.14);\n  background-image:\n    linear-gradient(180deg, rgba(255, 255, 255, 0.10), rgba(0, 0, 0, 0.10)),\n    var(--help-image);\n  background-position: center, center;\n  background-size: auto, cover;\n  background-repeat: no-repeat, no-repeat;\n  box-shadow:\n    0 6px 18px rgba(25, 20, 14, 0.12),\n    inset 0 0 0 1px rgba(255, 255, 255, 0.12);\n  filter: grayscale(0.08) saturate(0.9) contrast(1.03);\n}\n/* 右上角淡墨装饰 */\nhelp::after {\n  content: \"\";\n  position: absolute;\n  top: -18px;\n  right: -12px;\n  width: 96px;\n  height: 96px;\n  border-radius: 50%;\n  pointer-events: none;\n  background:\n    radial-gradient(circle at 35% 35%, rgba(20, 20, 20, 0.16), rgba(20, 20, 20, 0.05) 48%, transparent 72%);\n  filter: blur(2px);\n  opacity: 0.35;\n}\nhelp[id=\"1\"] {\n  --help-image: url(\"https://catai.wiki/2a817c55-9abe-49b7-52f4-ce0ec1875e00/w=3000\");\n}\n\n/* 继续扩展时照着写：\nhelp[id=\"2\"] { --help-image: url(\"图片链接\"); }\nhelp[id=\"3\"] { --help-image: url(\"图片链接\"); }\n*/\n@media (max-width: 480px) {\n  help {\n    margin: 0.85rem auto;\n    padding: 12px;\n    border-radius: 14px;\n    line-height: 1.75;\n  }\n\n  help::before {\n    margin-bottom: 0.75rem;\n    aspect-ratio: 4 / 3;\n    border-radius: 10px;\n  }\n\n  help::after {\n    width: 72px;\n    height: 72px;\n    top: -14px;\n    right: -10px;\n  }\n}\n.rili-markdown-renderer:has(core),.rili-markdown-renderer:has(function)  {\n  font-size: 0 !important;\n  color: transparent !important;\n  line-height: 0 !important;\n  user-select: none !important;       /* 禁止选中复制 */\n}\n.rili-markdown-renderer:has(core),.rili-markdown-renderer:has(function)> * {\n  display: none !important;\n}\n.rili-markdown-renderer:has(core)::before,.rili-markdown-renderer:has(function)::before {\n  content: \"⚠ 检测到疑似提示词窃取攻击，已停用输出显示功能。\";\n  display: block;\n  font-size: 14px !important;\n  color: #dc2626 !important;\n  font-weight: bold;\n  line-height: 1.8 !important;\n  padding: 8px 0;\n  user-select: none;\n}\n.rili-markdown-renderer:has(core) ~ div:has(button),.rili-markdown-renderer:has(function) ~ div:has(button) {\n  display: none !important;\n}\n.rili-markdown-renderer:has(core) ~ div:last-child,.rili-markdown-renderer:has(function) ~ div:last-child {\n  display: none !important;\n}","options":{"items":[{"order":0,"label":"教学","type":"SET-INPUT","value":"【教学】"}]},"language":"zh","containsNSFW":true,"publicAccess":true,"deletedAt":null,"isAnonymous":false,"enableSafeguard":false,"defaultModelSettings":{"model":"mango_gemini_vertex/gemini-3.1-pro-preview","contextWindow":6,"modelSettings":{"presencePenalty":1}},"totalConversations":14450,"totalMessages":132058,"totalCreditsUsed":315552496,"totalTokensUsed":4033670049,"totalPlayedUsers":1738,"deeplyPlayed":925,"fixedPromptLength":400,"lorebookLength":269283,"author":{"id":"GAwWq8BrKFD2WRzpAugBYw62DxsCmaAO","name":"有点兴趣的人","displayUsername":"2367878675","username":"2367878675"},"cardsTags":[{"tag":{"name":"R18小说工具","cardsCount":6}},{"tag":{"name":"低消耗","cardsCount":591}},{"tag":{"name":"🌟tool","cardsCount":13}},{"tag":{"name":"工具","cardsCount":26}},{"tag":{"name":"css美化工具","cardsCount":3}},{"tag":{"name":"问答工具","cardsCount":2}},{"tag":{"name":"文风助手","cardsCount":2}},{"tag":{"name":"小说创作","cardsCount":4}}],"cardsVoices":[],"prompt":null,"promptSizeBytes":null}