{"id":"8493c6e6-a9f1-4eb1-9838-67e3dec07690","authorId":"LIUEhcIub1rvX4oIYTTCUBh7M7evM25W","title":"🎵少女乐队模拟器✨","description":"（讨论群：1098131943）【内含BGM】【mygo】【gbc】【孤独摇滚】等🎵 在这个融合了众多音乐番的真实世界里，你将穿梭于Live House的喧嚣与排练室的静谧之间。亲手抚平主唱颤抖的脊背，聆听吉他手压抑的哭泣。每一次琴弦的震动都伴随着少女的心跳，是守护那份易碎的光芒，还是将其揉碎重塑？✨","background":"xc2e6v3jfohinvzr4n0irqjm.webp","backgroundWidth":2400,"backgroundHeight":1800,"cover":"o5pcbxemp09nd6urwf46fb80.webp","coverWidth":2400,"coverHeight":1800,"introPage":"knw2ghsku52vczsspna7l6my.html","changelog":"","createdAt":"2026-04-13T13:53:27.102Z","updatedAt":"2026-07-27T03:58:31.425Z","initPublicAt":"2026-04-13T14:01:37.507Z","renderTemplate":null,"assistantRegexReplace":null,"enableMemorySchema":false,"memorySchema":null,"injectStyles":"/* ========================================\n   🌸 少女乐队 · 桜テーマ v1.0 — 全局模块化整合\n   GIRL BAND × SAKURA BLOSSOM UI\n\n   核心色彩 (柔粉樱花):\n   - 背景: #FFF5F8 (樱雾白 — 柔和底色)\n   - 面板: #FFFAFC (花瓣白 — 近白暖粉)\n   - 主色调: #D4739A (樱瓣粉 — 核心视觉)\n   - 强调色: #A8456E (玫瑰紫 — 醒目点缀)\n   - 装饰色: #F0C6D8 (浅樱边 — 柔和边界)\n   - 文本: #3D1F33 (深梅紫 — 确保高可读性)\n   - 列表文本: #4A2545 (暗葡萄 — 物品/装备专用)\n   - 危险: #C62828 (警报赤红)\n   - 辅助蓝: #7BA7CC (天空蓝 — 信息提示)\n   - 辅助绿: #7BAF7B (嫩叶绿 — 成功/活力)\n   ======================================== */\n\n/* =============================================\n * 1. 主题与全局定义 (Theme & Globals)\n * ============================================= */\n\n/* --- 1.1. 核心动画 (Keyframes) --- */\n@keyframes float-gentle {\n  0%, 100% { transform: translateY(0) scale(1); opacity: 0.95; }\n  50% { transform: translateY(-3px) scale(1.01); opacity: 1; }\n}\n@keyframes petal-drift {\n  0% { background-position: 0% 0%; }\n  100% { background-position: 0% 100%; }\n}\n@keyframes sakura-pulse {\n  0%, 100% { box-shadow: 0 0 8px rgba(212, 115, 154, 0.25); }\n  50% { box-shadow: 0 0 16px rgba(212, 115, 154, 0.55), 0 0 24px rgba(212, 115, 154, 0.3); }\n}\n@keyframes bloom-glow {\n  0%, 100% { text-shadow: 0 0 4px #D4739A, 0 0 8px rgba(212, 115, 154, 0.4); }\n  50% { text-shadow: 0 0 8px #D4739A, 0 0 16px rgba(212, 115, 154, 0.7), 0 0 20px rgba(212, 115, 154, 0.3); }\n}\n@keyframes note-spin {\n  0% { transform: rotate(0deg); }\n  100% { transform: rotate(360deg); }\n}\n@keyframes petal-fall {\n  0%, 100% { opacity: 0.12; }\n  50% { opacity: 0.28; }\n}\n@keyframes scroll-reveal {\n  0% { transform: scaleY(0.94); opacity: 0; }\n  100% { transform: scaleY(1); opacity: 1; }\n}\n@keyframes gauge-shimmer {\n  0%, 100% { opacity: 0.75; text-shadow: 0 0 6px rgba(212, 115, 154, 0.3); }\n  50% { opacity: 1; text-shadow: 0 0 12px rgba(212, 115, 154, 0.6); }\n}\n@keyframes ribbon-breathe {\n  0%, 100% { opacity: 0.7; }\n  50% { opacity: 1; }\n}\n@keyframes cot-text-vanish {\n  0% { opacity: 1; }\n  70% { opacity: 0; }\n  100% { opacity: 0; visibility: hidden; height: 0; margin: 0; padding: 0; overflow: hidden; pointer-events: none; }\n}\n@keyframes petal-twirl {\n  0% { transform: rotate(0deg); }\n  100% { transform: rotate(360deg); }\n}\n@keyframes star-flash {\n  0%, 50%, 100% { opacity: 1; }\n  25%, 75% { opacity: 0.5; }\n}\n@keyframes petal-rise {\n  0% { transform: translateY(0); opacity: 0.8; }\n  100% { transform: translateY(-35px); opacity: 0; }\n}\n@keyframes bloom-shimmer {\n  0%, 100% { box-shadow: 0 0 10px rgba(212, 115, 154, 0.2), inset 0 0 8px rgba(212, 115, 154, 0.1); }\n  50% { box-shadow: 0 0 20px rgba(212, 115, 154, 0.45), inset 0 0 14px rgba(212, 115, 154, 0.2); }\n}\n@keyframes panel-light-sweep {\n  0% { transform: translateX(-100%) skewX(-25deg); }\n  100% { transform: translateX(200%) skewX(-25deg); }\n}\n@keyframes header-flow-line {\n  0% { background-position: 100% 0; }\n  100% { background-position: -100% 0; }\n}\n@keyframes loading-text-breathe {\n  0%, 100% { opacity: 0.6; text-shadow: 0 0 6px rgba(168, 69, 110, 0.4); }\n  50% { opacity: 1; text-shadow: 0 0 14px rgba(168, 69, 110, 0.75); }\n}\n@keyframes k-petal-spin {\n  0% { transform: translateY(-50%) rotate(0deg); }\n  100% { transform: translateY(-50%) rotate(360deg); }\n}\n@keyframes k-bar-shimmer {\n  0% { left: -100%; }\n  100% { left: 100%; }\n}\n@keyframes k-danger-pulse {\n  0%, 100% { border-color: rgba(198, 40, 40, 0.25) !important; box-shadow: inset 0 0 0 rgba(198, 40, 40, 0) !important; }\n  50% { border-color: rgba(198, 40, 40, 0.6) !important; box-shadow: inset 0 0 15px rgba(198, 40, 40, 0.15), 0 0 10px rgba(198, 40, 40, 0.2) !important; }\n}\n@keyframes k-fortune-pulse {\n  0%, 100% { border-color: rgba(240, 198, 216, 0.3) !important; box-shadow: inset 0 0 0 rgba(240, 198, 216, 0) !important; }\n  50% { border-color: rgba(212, 115, 154, 0.7) !important; box-shadow: inset 0 0 15px rgba(212, 115, 154, 0.2), 0 0 12px rgba(212, 115, 154, 0.25) !important; }\n}\n@keyframes star-twinkle {\n  0%, 100% { opacity: 0.6; transform: translate(-50%, -50%) scale(0.8); }\n  50% { opacity: 1; transform: translate(-50%, -50%) scale(1.2); }\n}\n@keyframes inv-item-glow {\n  0%, 100% { box-shadow: 0 0 6px rgba(198, 40, 40, 0.3) !important; }\n  50% { box-shadow: 0 0 12px rgba(198, 40, 40, 0.5), 0 0 20px rgba(198, 40, 40, 0.2) !important; }\n}\n@keyframes user-petal-flicker {\n  0%, 100% { opacity: 0.8; transform: scale(1) translateY(0); }\n  25% { opacity: 0.9; transform: scale(1.05) translateY(-1px); }\n  50% { opacity: 0.75; transform: scale(0.98) translateY(1px); }\n  75% { opacity: 0.85; transform: scale(1.02) translateY(-0.5px); }\n}\n@keyframes user-ribbon-pulse {\n  0%, 100% { opacity: 0.65; transform: translateX(0) translateY(0); }\n  50% { opacity: 0.75; transform: translateX(3px) translateY(-2px); }\n}\n@keyframes sakura-fall-bg {\n  0%   { transform: translateY(-10%) rotate(0deg); opacity: 0; }\n  10%  { opacity: 0.15; }\n  90%  { opacity: 0.15; }\n  100% { transform: translateY(110%) rotate(720deg); opacity: 0; }\n}\n@keyframes chuanqi-song-glow {\n  0%, 100% { box-shadow: 0 0 6px rgba(212,115,154,0.25); }\n  50%       { box-shadow: 0 0 14px rgba(212,115,154,0.55), 0 0 24px rgba(212,115,154,0.20); }\n}\n/* --- 1.2. 品质颜色变量 --- */\n* {\n  --color-rumen:     #7A6080;\n  --color-zhongduan: #6B8E5A;\n  --color-gaoduan:   #5E8DB8;\n  --color-zhuanye:   #9B59A8;\n  --color-chuanqi:   #D4739A;\n}\n\n/* =============================================\n * 2. 系统核心界面 (System Core UI)\n * ============================================= */\n\n/* --- 2.1. CoT 思维助手 --- */\ncot {\n  display: block; position: relative; width: 100%; aspect-ratio: 3/1;\n  overflow: hidden; box-sizing: border-box; contain: size layout paint;\n  font-size: 0; line-height: 0; letter-spacing: 0;\n}\ncot * { display: none !important; }\ncot::before {\n  content: \"\"; display: block; width: 100%; height: 100%;\n  pointer-events: none; background-repeat: no-repeat;\n  background-position: center; background-size: cover;\n  animation: float-gentle 7s ease-in-out infinite;\n  background-image: url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 200'><defs><linearGradient id='paperGrad' x1='0' y1='0' x2='0' y2='1'><stop offset='0' stop-color='%23FFF5F8'/><stop offset='1' stop-color='%23FFE8F0'/></linearGradient><linearGradient id='bG' x1='0' y1='0' x2='1' y2='1'><stop offset='0%25' stop-color='%23F0C6D8'/><stop offset='50%25' stop-color='%23D4739A'/><stop offset='100%25' stop-color='%23A8456E'/></linearGradient><style>.txt-main{font-family:Georgia,serif;font-weight:bold;font-size:22px;fill:%23A8456E;text-anchor:middle;letter-spacing:6px}.txt-sub{font-family:Courier New,monospace;font-size:10px;fill:%233D1F33;text-anchor:middle;letter-spacing:2px}.txt-gauge{font-family:Courier New,monospace;font-size:7px;fill:%23D4739A;text-anchor:middle}</style></defs><rect width='600' height='200' fill='url(%23paperGrad)'/><rect x='0' y='12' width='600' height='4' rx='2' fill='%23F0C6D8' opacity='0.5'/><rect x='0' y='184' width='600' height='4' rx='2' fill='%23F0C6D8' opacity='0.5'/><circle cx='100' cy='14' r='4' fill='%23D4739A' opacity='0.3'/><circle cx='200' cy='14' r='3' fill='%23F0C6D8' opacity='0.4'/><circle cx='300' cy='14' r='5' fill='%23D4739A' opacity='0.25'/><circle cx='400' cy='14' r='3' fill='%23F0C6D8' opacity='0.4'/><circle cx='500' cy='14' r='4' fill='%23D4739A' opacity='0.3'/><g opacity='0.2' transform='translate(80,100)'><animateTransform attributeName='transform' type='rotate' from='0 80 100' to='360 80 100' dur='30s' repeatCount='indefinite'/><path d='M0,-30 C8,-20 8,-10 0,0 C-8,-10 -8,-20 0,-30' fill='%23D4739A'/><path d='M0,-30 C8,-20 8,-10 0,0 C-8,-10 -8,-20 0,-30' fill='%23D4739A' transform='rotate(72)'/><path d='M0,-30 C8,-20 8,-10 0,0 C-8,-10 -8,-20 0,-30' fill='%23D4739A' transform='rotate(144)'/><path d='M0,-30 C8,-20 8,-10 0,0 C-8,-10 -8,-20 0,-30' fill='%23D4739A' transform='rotate(216)'/><path d='M0,-30 C8,-20 8,-10 0,0 C-8,-10 -8,-20 0,-30' fill='%23D4739A' transform='rotate(288)'/><circle r='6' fill='%23F0C6D8'/></g><g opacity='0.2' transform='translate(520,100)'><animateTransform attributeName='transform' type='rotate' from='360 520 100' to='0 520 100' dur='25s' repeatCount='indefinite'/><path d='M0,-28 C7,-18 7,-9 0,0 C-7,-9 -7,-18 0,-28' fill='%23F0C6D8'/><path d='M0,-28 C7,-18 7,-9 0,0 C-7,-9 -7,-18 0,-28' fill='%23F0C6D8' transform='rotate(72)'/><path d='M0,-28 C7,-18 7,-9 0,0 C-7,-9 -7,-18 0,-28' fill='%23F0C6D8' transform='rotate(144)'/><path d='M0,-28 C7,-18 7,-9 0,0 C-7,-9 -7,-18 0,-28' fill='%23F0C6D8' transform='rotate(216)'/><path d='M0,-28 C7,-18 7,-9 0,0 C-7,-9 -7,-18 0,-28' fill='%23F0C6D8' transform='rotate(288)'/><circle r='5' fill='%23D4739A'/></g><text x='180' y='80' font-size='18' fill='%23D4739A' opacity='0.15'>♪</text><text x='420' y='130' font-size='22' fill='%23A8456E' opacity='0.12'>♫</text><text x='250' y='150' font-size='14' fill='%23F0C6D8' opacity='0.2'>♩</text><text x='370' y='70' font-size='16' fill='%23D4739A' opacity='0.15'>♬</text><text x='300' y='88' class='txt-main'><tspan>🌸 編曲推演中 🌸</tspan><animate attributeName='opacity' values='0.6;1;0.6' dur='3s' repeatCount='indefinite'/></text><text x='300' y='116' class='txt-sub'><tspan>[ COMPOSING IN PROGRESS ]</tspan></text><rect x='218' y='130' width='164' height='7' rx='3.5' fill='none' stroke='%23F0C6D8' stroke-width='0.8' opacity='0.5'/><rect x='220' y='131.5' width='160' height='4' rx='2' fill='%23FFE8F0' opacity='0.5'/><rect x='220' y='131.5' height='4' rx='2' fill='url(%23bG)' opacity='0.6'><animate attributeName='width' values='0;160;0' dur='4s' repeatCount='indefinite'/></rect><text x='205' y='138' class='txt-gauge'>0</text><text x='395' y='138' class='txt-gauge'>MAX</text><circle cx='24' cy='14' r='3' fill='%23D4739A' opacity='0.25'/><circle cx='576' cy='14' r='3' fill='%23D4739A' opacity='0.25'/><circle cx='24' cy='186' r='3' fill='%23F0C6D8' opacity='0.25'/><circle cx='576' cy='186' r='3' fill='%23F0C6D8' opacity='0.25'/></svg>\");\n}\ncot:has(postition[stop]), cot:has(+ postition[stop]), cot:has(~ postition[stop]) {\n  animation: cot-text-vanish 800ms ease forwards;\n}\ncot:has(postition[stop])::before, cot:has(+ postition[stop])::before, cot:has(~ postition[stop])::before {\n  animation-play-state: paused !important; opacity: 0;\n  transition: opacity 0.6s ease; content: none !important; background: none !important;\n}\n\n/* --- 2.2. 载入动画 --- */\n.style_dot-flashing__8L91Q { display: none !important; }\ndiv:has(> .style_dot-flashing__8L91Q.style_text__zGhNq) {\n  width: 100% !important; height: auto !important; min-height: 140px !important;\n  display: flex !important; flex-direction: column !important;\n  justify-content: center !important; align-items: center !important;\n  background: radial-gradient(circle, rgba(255,250,252,0.95) 0%, rgba(255,245,248,0.9) 100%) !important;\n  border: 1px solid rgba(212, 115, 154, 0.2) !important;\n  border-radius: 16px !important;\n  backdrop-filter: blur(12px) !important;\n  box-shadow: 0 6px 20px rgba(61,31,51,0.06), inset 0 0 30px rgba(255,255,255,0.7) !important;\n  position: relative !important; overflow: hidden !important;\n}\ndiv:has(> .style_dot-flashing__8L91Q.style_text__zGhNq)::before {\n  content: '' !important; position: absolute !important;\n  top: 50% !important; left: 50% !important;\n  transform: translate(-50%, -55%) !important;\n  width: 90px !important; height: 90px !important;\n  background-image: url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><defs><linearGradient id='sG' x1='0' y1='0' x2='1' y2='1'><stop offset='0%25' stop-color='%23F0C6D8'/><stop offset='50%25' stop-color='%23D4739A'/><stop offset='100%25' stop-color='%23A8456E'/></linearGradient></defs><g opacity='0.6'><animateTransform attributeName='transform' type='rotate' from='0 50 50' to='360 50 50' dur='8s' repeatCount='indefinite'/><path d='M50,15 C58,30 58,40 50,50 C42,40 42,30 50,15' fill='url(%23sG)' opacity='0.7'/><path d='M50,15 C58,30 58,40 50,50 C42,40 42,30 50,15' fill='url(%23sG)' opacity='0.7' transform='rotate(72 50 50)'/><path d='M50,15 C58,30 58,40 50,50 C42,40 42,30 50,15' fill='url(%23sG)' opacity='0.7' transform='rotate(144 50 50)'/><path d='M50,15 C58,30 58,40 50,50 C42,40 42,30 50,15' fill='url(%23sG)' opacity='0.7' transform='rotate(216 50 50)'/><path d='M50,15 C58,30 58,40 50,50 C42,40 42,30 50,15' fill='url(%23sG)' opacity='0.7' transform='rotate(288 50 50)'/></g><circle cx='50' cy='50' r='8' fill='%23D4739A' opacity='0.4'><animate attributeName='r' values='6;10;6' dur='2s' repeatCount='indefinite'/></circle><circle cx='50' cy='50' r='4' fill='%23F0C6D8' opacity='0.9'/></svg>\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  background-position: center !important;\n}\ndiv:has(> .style_dot-flashing__8L91Q.style_text__zGhNq)::after {\n  content: '🌸 編曲推演中...' !important;\n  position: absolute !important; bottom: 18px !important;\n  left: 50% !important; transform: translateX(-50%) !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  font-size: 13px !important; font-weight: 700 !important;\n  color: #A8456E !important; letter-spacing: 0.25em !important;\n  animation: loading-text-breathe 2.5s ease-in-out infinite !important;\n  text-shadow: 0 0 8px rgba(168,69,110,0.4) !important;\n}\n\n/* --- 2.3. 顶部导航栏 — 樱花飘落版 --- */\n.sticky.w-full.top-0.flex.items-center {\n  background: linear-gradient(180deg,\n    rgba(255,253,254,0.97) 0%,\n    rgba(255,248,251,0.95) 50%,\n    rgba(255,240,245,0.93) 100%) !important;\n  border-bottom: none !important;\n  box-shadow:\n    0 1px 0 rgba(212,115,154,0.15),\n    0 4px 24px rgba(212,115,154,0.08) !important;\n  backdrop-filter: blur(20px) saturate(1.2) !important;\n  -webkit-backdrop-filter: blur(20px) saturate(1.2) !important;\n  z-index: 19 !important; position: relative !important; overflow: hidden !important;\n  min-height: 52px !important;\n}\n\n/* ── 樱花飘落粒子层 — 8枚花瓣 SVG 随风飘荡 ── */\n.sticky.w-full.top-0.flex.items-center::before {\n  content: '' !important;\n  position: absolute !important; top: 0 !important; left: 0 !important;\n  width: 100% !important; height: 100% !important;\n  pointer-events: none !important; z-index: 1 !important; opacity: 1 !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 56' preserveAspectRatio='xMidYMid slice'%3E%3Cdefs%3E%3CradialGradient id='p1'%3E%3Cstop offset='0%25' stop-color='%23D4739A' stop-opacity='0.85'/%3E%3Cstop offset='70%25' stop-color='%23F0C6D8' stop-opacity='0.5'/%3E%3Cstop offset='100%25' stop-color='%23F0C6D8' stop-opacity='0'/%3E%3C/radialGradient%3E%3CradialGradient id='p2'%3E%3Cstop offset='0%25' stop-color='%23F0C6D8' stop-opacity='0.9'/%3E%3Cstop offset='60%25' stop-color='%23FFD6E8' stop-opacity='0.4'/%3E%3Cstop offset='100%25' stop-color='%23FFD6E8' stop-opacity='0'/%3E%3C/radialGradient%3E%3CradialGradient id='p3'%3E%3Cstop offset='0%25' stop-color='%23E8A0BE' stop-opacity='0.7'/%3E%3Cstop offset='100%25' stop-color='%23E8A0BE' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='5' ry='3.2' fill='url(%23p1)'/%3E%3CanimateMotion dur='7s' repeatCount='indefinite' path='M80,-8 C95,10 115,25 90,50 C85,58 70,62 65,65'/%3E%3Canimate attributeName='opacity' values='0;0.7;0.5;0' dur='7s' repeatCount='indefinite'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='0;80;160;240;360' dur='7s' repeatCount='indefinite'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='4.5' ry='2.8' fill='url(%23p2)'/%3E%3CanimateMotion dur='9s' repeatCount='indefinite' path='M220,-12 C240,8 260,22 235,48 C225,55 210,60 200,65' begin='1.5s'/%3E%3Canimate attributeName='opacity' values='0;0.65;0.4;0' dur='9s' repeatCount='indefinite' begin='1.5s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='20;100;200;300;380' dur='9s' repeatCount='indefinite' begin='1.5s'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='5.5' ry='3.5' fill='url(%23p1)'/%3E%3CanimateMotion dur='8s' repeatCount='indefinite' path='M400,-10 C380,12 410,30 385,52 C375,58 360,62 355,65' begin='0.8s'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.45;0' dur='8s' repeatCount='indefinite' begin='0.8s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='40;130;220;310;400' dur='8s' repeatCount='indefinite' begin='0.8s'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='4' ry='2.5' fill='url(%23p3)'/%3E%3CanimateMotion dur='10s' repeatCount='indefinite' path='M560,-6 C575,10 590,28 570,48 C560,55 545,60 540,65' begin='3s'/%3E%3Canimate attributeName='opacity' values='0;0.55;0.35;0' dur='10s' repeatCount='indefinite' begin='3s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='-30;60;150;240;330' dur='10s' repeatCount='indefinite' begin='3s'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='4.8' ry='3' fill='url(%23p2)'/%3E%3CanimateMotion dur='8.5s' repeatCount='indefinite' path='M700,-10 C720,6 710,24 690,46 C680,54 665,58 660,62' begin='2s'/%3E%3Canimate attributeName='opacity' values='0;0.6;0.4;0' dur='8.5s' repeatCount='indefinite' begin='2s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='60;150;240;330;420' dur='8.5s' repeatCount='indefinite' begin='2s'/%3E%3C/g%3E%3Cg opacity='0.2'%3E%3Cellipse cx='0' cy='0' rx='8' ry='5' fill='%23F0C6D8'/%3E%3CanimateMotion dur='14s' repeatCount='indefinite' path='M150,-15 C180,8 160,30 140,52 C130,60 120,65 110,70' begin='4s'/%3E%3Canimate attributeName='opacity' values='0;0.2;0.15;0' dur='14s' repeatCount='indefinite' begin='4s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='0;45;90;135;180' dur='14s' repeatCount='indefinite' begin='4s'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='3' ry='1.8' fill='url(%23p1)'/%3E%3CanimateMotion dur='5s' repeatCount='indefinite' path='M480,-5 C500,12 510,28 490,50 C485,56 475,60 470,62' begin='5s'/%3E%3Canimate attributeName='opacity' values='0;0.75;0.5;0' dur='5s' repeatCount='indefinite' begin='5s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='0;120;240;360' dur='5s' repeatCount='indefinite' begin='5s'/%3E%3C/g%3E%3Cg%3E%3Cellipse cx='0' cy='0' rx='4.2' ry='2.6' fill='url(%23p3)'/%3E%3CanimateMotion dur='11s' repeatCount='indefinite' path='M750,-8 C770,6 760,22 740,44 C730,52 720,58 710,62' begin='6.5s'/%3E%3Canimate attributeName='opacity' values='0;0.5;0.3;0' dur='11s' repeatCount='indefinite' begin='6.5s'/%3E%3CanimateTransform attributeName='transform' type='rotate' values='20;110;200;290;380' dur='11s' repeatCount='indefinite' begin='6.5s'/%3E%3C/g%3E%3Ctext x='45' y='38' font-size='11' fill='%23D4739A' opacity='0.12' font-family='Georgia'%3E%E2%99%AA%3C/text%3E%3Ctext x='755' y='20' font-size='9' fill='%23F0C6D8' opacity='0.15' font-family='Georgia'%3E%E2%99%AB%3C/text%3E%3C/svg%3E\") !important;\n  background-size: 100% 100% !important;\n  background-repeat: no-repeat !important;\n}\n\n/* 底部樱色流光线 — 双层 */\n.sticky.w-full.top-0.flex.items-center::after {\n  content: '' !important; position: absolute !important;\n  bottom: 0 !important; left: 0 !important; right: 0 !important; height: 2px !important;\n  background: linear-gradient(90deg,\n    transparent 0%, rgba(240,198,216,0.4) 10%,\n    rgba(212,115,154,0.65) 25%, rgba(240,198,216,0.8) 40%,\n    rgba(168,69,110,0.5) 50%, rgba(240,198,216,0.8) 60%,\n    rgba(212,115,154,0.65) 75%, rgba(240,198,216,0.4) 90%,\n    transparent 100%) !important;\n  background-size: 200% 100% !important;\n  animation: header-flow-line 6s linear infinite !important;\n  z-index: 10 !important;\n  box-shadow: 0 0 6px rgba(212,115,154,0.3), 0 0 12px rgba(240,198,216,0.2) !important;\n}\n\n.sticky.w-full.top-0.flex.items-center > * {\n  position: relative !important; z-index: 50 !important;\n}\n\n/* 模型选择器 */\n#ai-model-selector .group {\n  background: rgba(255,255,255,0.8) !important;\n  border: 1px solid rgba(212,115,154,0.2) !important;\n  border-left: 2px solid #D4739A !important;\n  border-radius: 12px !important;\n  padding: 0 12px !important; height: 2.0rem !important;\n  transition: all 0.4s ease !important;\n  box-shadow: 0 1px 6px rgba(212,115,154,0.08) !important;\n  margin: 0 8px !important;\n}\n#ai-model-selector .group:hover {\n  border-color: #A8456E !important;\n  background: rgba(255,255,255,0.98) !important;\n  box-shadow: 0 2px 12px rgba(168,69,110,0.18) !important;\n}\n#ai-model-selector .truncate {\n  font-size: 13px !important; font-weight: 700 !important;\n  color: #A8456E !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  letter-spacing: 1.2px !important; transition: color 0.4s ease !important;\n}\n#ai-model-selector .group:hover .truncate { color: #D4739A !important; }\n#ai-model-selector svg { color: #F0C6D8 !important; transition: all 0.4s ease !important; }\n#ai-model-selector .group:hover svg { color: #A8456E !important; transform: rotate(180deg) !important; }\n\n/* 标签按钮 */\n.sticky.w-full.top-0.flex.items-center .inline-flex.items-center {\n  background: rgba(255,255,255,0.7) !important;\n  color: #A8456E !important;\n  border: 1px solid rgba(212,115,154,0.2) !important;\n  font-size: 0.75rem !important; font-weight: 700 !important;\n  letter-spacing: 0.1em !important;\n  border-radius: 12px !important;\n  padding: 4px 10px !important;\n  box-shadow: 0 1px 4px rgba(212,115,154,0.08) !important;\n  transition: all 0.4s ease !important;\n  position: relative !important; overflow: hidden !important;\n}\n.sticky.w-full.top-0.flex.items-center .inline-flex.items-center::before {\n  content: '' !important; position: absolute !important;\n  top: 0 !important; left: -100% !important;\n  width: 100% !important; height: 100% !important;\n  background: linear-gradient(90deg, transparent, rgba(240,198,216,0.25), transparent) !important;\n  transition: left 0.7s ease !important;\n}\n.sticky.w-full.top-0.flex.items-center .inline-flex.items-center:hover {\n  background: rgba(255,255,255,0.95) !important;\n  border-color: #D4739A !important; color: #D4739A !important;\n  text-shadow: 0 0 8px rgba(212,115,154,0.3) !important;\n  box-shadow: 0 2px 10px rgba(212,115,154,0.2) !important;\n}\n.sticky.w-full.top-0.flex.items-center .inline-flex.items-center:hover::before { left: 100% !important; }\n\n/* 设置按钮 */\n#header-setting-button {\n  border-radius: 50% !important;\n  background: rgba(255,255,255,0.8) !important;\n  border: 1px solid rgba(168,69,110,0.25) !important;\n  transition: all 0.4s ease !important;\n  box-shadow: none !important;\n}\n#header-setting-button:hover {\n  border-color: #D4739A !important;\n  background: rgba(212,115,154,0.1) !important;\n  box-shadow: 0 0 15px rgba(212,115,154,0.25) !important;\n}\n#header-setting-button svg { color: #A8456E !important; transition: all 0.7s ease !important; }\n#header-setting-button:hover svg { color: #D4739A !important; transform: rotate(90deg) !important; }\n\n/* --- 2.4. 输入框与底部按钮 --- */\n/* ============================================================\n * 输入框容器 & 输入区 — 原样保留，仅重设计发送按钮\n * ============================================================ */\n\n.p-\\[5\\.5px\\].max-h-\\[150px\\] {\n  background: rgba(255,255,255,0.95) !important;\n  border: 1px solid rgba(212,115,154,0.2) !important;\n  border-radius: 16px !important;\n  box-shadow: 0 -4px 15px rgba(61,31,51,0.06);\n  padding: 8px !important;\n  backdrop-filter: blur(15px) !important;\n  -webkit-backdrop-filter: blur(15px) !important;\n  width: 100% !important; max-width: 100% !important; margin: 0 !important;\n}\n\n#ai-chat-input {\n  background: #FFFAFC !important;\n  border-radius: 12px !important;\n  border: 1px solid rgba(212,115,154,0.25) !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  font-size: 15px !important; line-height: 1.5 !important;\n  color: #3D1F33 !important; caret-color: #D4739A !important;\n  padding: 10px 50px 10px 12px !important;\n  height: auto !important; max-height: 150px !important;\n  resize: none !important; outline: none !important;\n  transition: all 0.4s ease;\n  field-sizing: content !important;\n  overflow-y: auto !important;\n  -webkit-overflow-scrolling: touch !important;\n  -webkit-appearance: none !important; appearance: none !important;\n  -webkit-text-size-adjust: 100% !important;\n  white-space: pre-wrap !important; word-break: break-word !important;\n  box-shadow: inset 0 2px 8px rgba(212,115,154,0.04);\n}\n#ai-chat-input::placeholder { color: #F0C6D8 !important; opacity: 0.8; }\n#ai-chat-input:focus {\n  border-color: #D4739A !important;\n  box-shadow: 0 0 10px rgba(212,115,154,0.2), inset 0 2px 8px rgba(212,115,154,0.04) !important;\n  background: #FFFFFF !important;\n}\n\n.p-\\[5\\.5px\\].max-h-\\[150px\\] .flex.items-center.px-1 {\n  background: rgba(212,115,154,0.08) !important; color: #A8456E !important;\n  border-radius: 8px !important; border: 1px solid rgba(212,115,154,0.2) !important;\n}\n.p-\\[5\\.5px\\].max-h-\\[150px\\] .mx-1 { background: rgba(212,115,154,0.15) !important; }\n\n/* ============================================================\n * 🎶 音符发送按钮\n * ============================================================ */\n\n/* 动画 */\n@keyframes note-btn-idle {\n  0%, 100% { transform: translateY(0) rotate(-3deg); }\n  40%       { transform: translateY(-3px) rotate(3deg); }\n  70%       { transform: translateY(-1px) rotate(-1deg); }\n}\n@keyframes note-btn-hover {\n  0%   { transform: scale(1.08) rotate(-3deg); }\n  50%  { transform: scale(1.13) rotate(5deg); }\n  100% { transform: scale(1.08) rotate(-3deg); }\n}\n@keyframes note-btn-press {\n  0%   { transform: scale(1.08); }\n  35%  { transform: scale(0.88); }\n  75%  { transform: scale(1.05); }\n  100% { transform: scale(1); }\n}\n@keyframes note-btn-ripple {\n  0%   { transform: translate(-50%,-50%) scale(0); opacity: 0.55; }\n  100% { transform: translate(-50%,-50%) scale(3); opacity: 0; }\n}\n@keyframes note-glow-pulse {\n  0%, 100% {\n    box-shadow:\n      0 3px 14px rgba(212,115,154,0.38),\n      0 0 0 3px rgba(212,115,154,0.08),\n      inset 0 1px 0 rgba(255,255,255,0.35);\n  }\n  50% {\n    box-shadow:\n      0 5px 22px rgba(168,69,110,0.5),\n      0 0 0 5px rgba(212,115,154,0.13),\n      inset 0 1px 0 rgba(255,255,255,0.4);\n  }\n}\n\n/* ── 按钮外壳 ── */\n#ai-send-button {\n  border-radius: 50% !important;\n  width: 38px !important;\n  height: 38px !important;\n  padding: 0 !important;\n  flex-shrink: 0 !important;\n  position: relative !important;\n  overflow: visible !important;\n\n  /* 樱花渐变底盘 */\n  background: linear-gradient(145deg,\n    #F0C6D8 0%,\n    #D4739A 50%,\n    #A8456E 100%) !important;\n\n  border: 2px solid rgba(255,255,255,0.55) !important;\n\n  box-shadow:\n    0 3px 14px rgba(212,115,154,0.38),\n    0 0 0 3px rgba(212,115,154,0.08),\n    inset 0 1px 0 rgba(255,255,255,0.35) !important;\n\n  /* 空闲时上下飘动 */\n  animation:\n    note-btn-idle   3.6s ease-in-out infinite,\n    note-glow-pulse 3.6s ease-in-out infinite !important;\n\n  transition: border-color 0.3s ease !important;\n  color: transparent !important;\n  cursor: pointer !important;\n}\n\n/* 隐藏原 SVG */\n#ai-send-button svg {\n  opacity: 0 !important;\n  pointer-events: none !important;\n}\n\n/* ── ::before — 双音符 SVG ── */\n/*\n  音符造型说明：\n  左：四分音符（实心符头 + 竖杆 + 小旗）\n  右：八分音符（实心符头 + 竖杆 + 连接横梁）\n  两者共用连接横梁，形成 𝅘𝅥𝅮𝅘𝅥𝅯 双连音外观\n*/\n#ai-send-button::before {\n  content: '' !important;\n  position: absolute !important;\n  top: 50% !important;\n  left: 50% !important;\n  transform: translate(-50%, -50%) !important;\n  width: 20px !important;\n  height: 20px !important;\n  pointer-events: none !important;\n  z-index: 2 !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cg fill='%23fff' opacity='0.96'%3E%3C!-- 左音符头 --%3E%3Cellipse cx='5.2' cy='15' rx='3' ry='2.1' transform='rotate(-15 5.2 15)'/%3E%3C!-- 左竖杆 --%3E%3Crect x='7.8' y='5.2' width='1.4' height='9.8' rx='0.7'/%3E%3C!-- 右音符头 --%3E%3Cellipse cx='13.2' cy='13.2' rx='3' ry='2.1' transform='rotate(-15 13.2 13.2)'/%3E%3C!-- 右竖杆 --%3E%3Crect x='15.8' y='3.4' width='1.4' height='9.8' rx='0.7'/%3E%3C!-- 连接横梁（上） --%3E%3Crect x='7.8' y='5.2' width='9.4' height='1.55' rx='0.75'/%3E%3C!-- 连接横梁（下，间距） --%3E%3Crect x='7.8' y='7.7' width='9.4' height='1.45' rx='0.72'/%3E%3C/g%3E%3C/svg%3E\") !important;\n  background-size: contain !important;\n  background-repeat: no-repeat !important;\n  background-position: center !important;\n  transition: transform 0.3s ease, filter 0.3s ease !important;\n  filter: drop-shadow(0 1px 2px rgba(100,30,55,0.25)) !important;\n}\n\n/* ── ::after — 涟漪层 ── */\n#ai-send-button::after {\n  content: '' !important;\n  position: absolute !important;\n  top: 50% !important;\n  left: 50% !important;\n  width: 38px !important;\n  height: 38px !important;\n  border-radius: 50% !important;\n  background: radial-gradient(circle,\n    rgba(255,255,255,0.55) 0%,\n    rgba(212,115,154,0.3) 50%,\n    transparent 70%) !important;\n  transform: translate(-50%,-50%) scale(0) !important;\n  opacity: 0 !important;\n  pointer-events: none !important;\n  z-index: 1 !important;\n  transition: none !important;\n}\n\n/* ── Hover ── */\n#ai-send-button:hover {\n  background: linear-gradient(145deg,\n    #E899B8 0%,\n    #C9608A 45%,\n    #963D62 100%) !important;\n  border-color: rgba(255,255,255,0.75) !important;\n  box-shadow:\n    0 6px 22px rgba(168,69,110,0.52),\n    0 0 0 5px rgba(212,115,154,0.16),\n    inset 0 1px 0 rgba(255,255,255,0.45) !important;\n  animation: note-btn-hover 1s ease-in-out infinite !important;\n}\n#ai-send-button:hover::before {\n  transform: translate(-50%,-50%) scale(1.15) !important;\n  filter: drop-shadow(0 2px 4px rgba(80,20,40,0.3)) brightness(1.05) !important;\n}\n\n/* ── Active (点击) ── */\n#ai-send-button:active {\n  animation: note-btn-press 0.38s cubic-bezier(0.36,0.07,0.19,0.97) forwards !important;\n  background: linear-gradient(145deg,\n    #D4739A 0%,\n    #A8456E 50%,\n    #7B3355 100%) !important;\n  box-shadow:\n    0 1px 6px rgba(168,69,110,0.5),\n    0 0 0 6px rgba(212,115,154,0.2),\n    inset 0 2px 5px rgba(80,20,40,0.2) !important;\n}\n#ai-send-button:active::after {\n  animation: note-btn-ripple 0.48s ease-out forwards !important;\n}\n\n/* ── 减弱动效 ── */\n@media (prefers-reduced-motion: reduce) {\n  #ai-send-button          { animation: none !important; }\n  #ai-send-button:hover    { animation: none !important; transform: scale(1.08) !important; }\n  #ai-send-button:active   { animation: none !important; transform: scale(0.94) !important; }\n  #ai-send-button:active::after { animation: none !important; }\n}\n\n/* ── 手机端 ── */\n@media (max-width: 768px) {\n  #ai-send-button {\n    width: 36px !important;\n    height: 36px !important;\n    animation: none !important;\n    box-shadow:\n      0 2px 10px rgba(212,115,154,0.35),\n      inset 0 1px 0 rgba(255,255,255,0.3) !important;\n  }\n  #ai-send-button::before {\n    width: 18px !important;\n    height: 18px !important;\n  }\n  #ai-send-button:hover    { animation: none !important; transform: none !important; }\n  #ai-send-button:active::after { animation: none !important; }\n}\n\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] {\n  background: linear-gradient(180deg, rgba(255,255,255,0.85) 0%, rgba(255,240,245,0.98) 100%);\n  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);\n  border-top: 1px solid rgba(212,115,154,0.2);\n  box-shadow: 0 -4px 15px rgba(61,31,51,0.06); color: #3D1F33;\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"]::before {\n  content: \"\"; position: absolute; left: 0; right: 0; top: -2px; height: 2px;\n  background: linear-gradient(90deg, transparent, rgba(212,115,154,0.4), transparent);\n  animation: panel-light-sweep 7s ease-in-out infinite; animation-delay: 1.5s; opacity: 0.6;\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"]::after {\n  content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0;\n  background-image: url(\"data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3Cpattern id='dotGrid' width='20' height='20' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='10' cy='10' r='0.8' fill='%23D4739A' opacity='0.05'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='60' height='60' fill='url(%23dotGrid)'/%3E%3C/svg%3E\");\n  animation: petal-drift 100s linear infinite; opacity: 0.5;\n  pointer-events: none; z-index: -1;\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]) {\n  background: #FFFAFC; border: 1px solid rgba(212,115,154,0.25);\n  border-radius: 12px; color: #3D1F33;\n  font-family: 'Georgia', 'Noto Serif SC', serif;\n  font-weight: 600; font-size: 14px; text-shadow: none;\n  box-shadow: 0 2px 8px rgba(61,31,51,0.06);\n  transition: all 0.3s ease; position: relative; overflow: hidden;\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"])::before {\n  content: ''; position: absolute; top: -15%; left: -170%; width: 50%; height: 130%;\n  background: linear-gradient(90deg, transparent, rgba(240,198,216,0.25), transparent);\n  transform: skewX(-30deg); transition: left 0.8s ease-in-out;\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]):hover {\n  transform: translateY(-2px); color: #A8456E;\n  background: #FFFFFF; border-color: #D4739A;\n  box-shadow: 0 4px 12px rgba(212,115,154,0.15), 0 0 8px rgba(240,198,216,0.25);\n}\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]):hover::before { left: 170%; }\ndiv[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]):active {\n  transform: translateY(0); background: #FFE8F0; border-color: #D4739A;\n  box-shadow: inset 0 0 6px rgba(212,115,154,0.15), 0 2px 6px rgba(61,31,51,0.06);\n  transition-duration: 0.15s;\n}\n\n/* =============================================\n * 3. 通用 UI 模块\n * ============================================= */\n\n/* --- 3.1. 聊天容器与气泡 --- */\n.chat {\n  display: flex; flex-direction: column; gap: 14px; padding: 16px 12px;\n  background: #FFF5F8;\n  border: 1px solid rgba(212,115,154,0.15);\n  border-left: 3px solid #D4739A; border-right: 3px solid #A8456E;\n  border-radius: 16px; margin: 16px 0; position: relative;\n  font-family: 'Georgia', 'Noto Serif SC', serif;\n  box-shadow: 0 3px 15px rgba(61,31,51,0.04), inset 0 0 20px rgba(255,250,252,0.9);\n  overflow: hidden;\n}\n.chat::before {\n  content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0;\n  background-image: url(\"data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cdefs%3E%3Cpattern id='petalBg' width='80' height='80' patternUnits='userSpaceOnUse'%3E%3Ccircle cx='40' cy='40' r='1.5' fill='%23D4739A' opacity='0.04'/%3E%3Ccircle cx='10' cy='10' r='1' fill='%23F0C6D8' opacity='0.05'/%3E%3Ccircle cx='70' cy='20' r='1' fill='%23F0C6D8' opacity='0.04'/%3E%3C/pattern%3E%3C/defs%3E%3Crect width='80' height='80' fill='url(%23petalBg)'/%3E%3C/svg%3E\");\n  animation: petal-drift 30s linear infinite; opacity: 0.5;\n  pointer-events: none; z-index: 0; will-change: background-position;\n}\n.chat::after { display: none !important; }\n.chat > * { position: relative; z-index: 1; }\n\n.bubble {\n  max-width: 90%; padding: 10px 14px; position: relative; line-height: 1.6;\n  word-wrap: break-word; border-radius: 16px;\n  box-shadow: 0 2px 8px rgba(61,31,51,0.06);\n  transition: transform 0.4s ease, box-shadow 0.4s ease; overflow: visible;\n}\n.bubble:hover { transform: translateY(-2px); box-shadow: 0 4px 12px rgba(61,31,51,0.1); }\n\n.bubble.npc {\n  background: rgba(255,255,255,0.95);\n  border: 1px solid rgba(212,115,154,0.2);\n  border-left: 3px solid #D4739A; color: #3D1F33; align-self: flex-start;\n  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);\n}\n.bubble.npc::after {\n  content: '🌸'; position: absolute; top: 6px; right: 8px;\n  font-size: 10px; animation: ribbon-breathe 3s ease-in-out infinite; z-index: 2;\n}\n.bubble.npc .name { color: #A8456E; }\n.bubble.npc .name::before { color: #D4739A; animation: star-flash 3.5s steps(1, end) infinite; }\n.bubble.npc .msg { color: #3D1F33; }\n\n.bubble.user {\n  background: rgba(255,255,255,0.95);\n  border: 1px solid rgba(168,69,110,0.2);\n  border-right: 3px solid #A8456E; color: #3D1F33; align-self: flex-end;\n  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);\n}\n.bubble.user::after {\n  content: '♪'; position: absolute; top: 6px; left: 8px;\n  font-size: 11px; color: #A8456E;\n  animation: ribbon-breathe 3s ease-in-out infinite; z-index: 2;\n}\n.bubble.user .name { color: #A8456E; }\n.bubble.user .name::before { color: #A8456E; animation: star-flash 3.5s steps(1, end) infinite 0.3s; }\n.bubble.user .msg { color: #3D1F33; }\n\n.bubble .name {\n  font-size: 0.8em; font-weight: 700; letter-spacing: 1px;\n  text-transform: uppercase; margin-bottom: 6px; display: block;\n  position: relative; padding-left: 16px; z-index: 1;\n  font-family: 'Georgia', 'Noto Serif SC', serif;\n}\n.bubble .name::before {\n  content: '♪'; position: absolute; left: 0; font-size: 1.1em; display: inline-block;\n}\n.bubble .msg { margin: 0; font-size: 0.95em; font-weight: 500; position: relative; z-index: 1; }\n\n/* --- 3.2. 通用内容容器 --- */\n.styled-prose-container {\n  font-family: 'Georgia', 'Noto Serif SC', serif;\n  position: relative; z-index: 1; color: #3D1F33;\n}\n.styled-prose-container br { line-height: 1.4; }\n\n/* =============================================\n * 气泡装饰补丁 — 樱花主题\n * ============================================= */\n.bg-gray-100\\/90.relative.inline-block {\n  position: relative !important; isolation: isolate !important; overflow: visible !important;\n}\n\n/* AI回答气泡 */\n.chat-answer-container .bg-gray-100\\/90.relative.inline-block {\n  background: rgba(255,250,252,0.95) !important;\n  color: #3D1F33 !important; border-radius: 16px !important;\n  border: 1px solid rgba(212,115,154,0.15) !important;\n  box-shadow: 0 8px 25px -10px rgba(61,31,51,0.08) !important;\n  backdrop-filter: blur(15px) !important; -webkit-backdrop-filter: blur(15px) !important;\n}\n.chat-answer-container .bg-gray-100\\/90.relative.inline-block::before,\n.chat-answer-container .bg-gray-100\\/90.relative.inline-block::after {\n  content: none !important;\n}\n\n/* 用户消息气泡 */\n.bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90) {\n  background: linear-gradient(145deg,\n    rgba(255,255,255,0.98) 0%,\n    rgba(255,250,252,0.95) 50%,\n    rgba(255,255,255,0.98) 100%) !important;\n  border: 1px solid rgba(168,69,110,0.15) !important;\n  box-shadow:\n    0 6px 24px rgba(168,69,110,0.08),\n    0 0 40px rgba(240,198,216,0.08),\n    inset 0 1px 0 rgba(255,255,255,0.95),\n    inset 0 -1px 0 rgba(212,115,154,0.04) !important;\n  border-radius: 16px !important; color: #3D1F33 !important;\n  backdrop-filter: blur(15px) !important; -webkit-backdrop-filter: blur(15px) !important;\n}\n\n/* 用户气泡 — 右上角音符+花瓣装饰 */\n.bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::before {\n  content: '' !important; position: absolute !important;\n  top: -6px !important; right: -6px !important;\n  width: 28px !important; height: 28px !important;\n  pointer-events: none !important; z-index: 100 !important;\n  background-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'><defs><linearGradient id='eG' x1='0%25' y1='100%25' x2='100%25' y2='0%25'><stop offset='0%25' stop-color='%23D4739A' stop-opacity='0.8'/><stop offset='100%25' stop-color='%23F0C6D8' stop-opacity='0.5'/></linearGradient></defs><g><animateTransform attributeName='transform' type='rotate' from='0 14 14' to='360 14 14' dur='20s' repeatCount='indefinite'/><path d='M14,4 C16,9 16,12 14,14 C12,12 12,9 14,4' fill='url(%23eG)' opacity='0.7'/><path d='M14,4 C16,9 16,12 14,14 C12,12 12,9 14,4' fill='url(%23eG)' opacity='0.7' transform='rotate(72 14 14)'/><path d='M14,4 C16,9 16,12 14,14 C12,12 12,9 14,4' fill='url(%23eG)' opacity='0.7' transform='rotate(144 14 14)'/><path d='M14,4 C16,9 16,12 14,14 C12,12 12,9 14,4' fill='url(%23eG)' opacity='0.7' transform='rotate(216 14 14)'/><path d='M14,4 C16,9 16,12 14,14 C12,12 12,9 14,4' fill='url(%23eG)' opacity='0.7' transform='rotate(288 14 14)'/></g><circle cx='14' cy='14' r='2.5' fill='%23D4739A' opacity='0.6'><animate attributeName='r' values='2;3;2' dur='2s' repeatCount='indefinite'/></circle></svg>\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  opacity: 0.85 !important; animation: user-petal-flicker 3s ease-in-out infinite !important;\n}\n\n/* 用户气泡 — 左下角丝带装饰 */\n.bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::after {\n  content: '' !important; position: absolute !important;\n  bottom: -8px !important; left: -8px !important;\n  width: 70px !important; height: 70px !important;\n  pointer-events: none !important; z-index: 100 !important;\n  background-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 70'><defs><linearGradient id='rG' x1='0%25' y1='0%25' x2='100%25' y2='100%25'><stop offset='0%25' stop-color='%23F0C6D8' stop-opacity='0.4'/><stop offset='100%25' stop-color='%23D4739A' stop-opacity='0.2'/></linearGradient></defs><text x='10' y='55' font-size='18' fill='%23D4739A' opacity='0.3' font-family='Georgia'>♪</text><text x='30' y='40' font-size='12' fill='%23F0C6D8' opacity='0.25' font-family='Georgia'>♫</text><circle cx='50' cy='25' r='3' fill='%23D4739A' opacity='0.15'><animate attributeName='cy' values='25;20;25' dur='3s' repeatCount='indefinite'/><animate attributeName='opacity' values='0.15;0.08;0.15' dur='3s' repeatCount='indefinite'/></circle><circle cx='45' cy='15' r='2' fill='%23F0C6D8' opacity='0.2'><animate attributeName='cy' values='15;10;15' dur='2.5s' repeatCount='indefinite'/></circle></svg>\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  opacity: 0.7 !important; animation: user-ribbon-pulse 12s ease-in-out infinite !important;\n}\n\ndiv.group.relative > div.relative.inline-block.bg-gray-100\\/90 > * {\n  position: relative !important; z-index: 1 !important;\n}\n\n/* --- 3.3. 折叠面板 (Details) --- */\n.styled-prose-container details {\n  background: #FFFAFC; border-radius: 12px; margin: 12px 0; overflow: visible;\n  position: relative; border: 1px solid rgba(212,115,154,0.12);\n  box-shadow: 0 4px 12px rgba(61,31,51,0.04);\n  transition: all 0.4s ease; font-size: 15px; line-height: 1.6;\n  padding: 0 16px 12px 16px;\n}\n.styled-prose-container details:hover {\n  transform: translateY(-2px);\n  box-shadow: 0 6px 18px rgba(61,31,51,0.07);\n  border-color: rgba(212,115,154,0.25);\n}\n.styled-prose-container details:has(T:hover) { z-index: 100; }\n.styled-prose-container details summary {\n  background: transparent; padding: 12px 40px 12px 16px; margin: 0 -16px;\n  font-weight: 700; font-size: 16px; cursor: pointer; color: #3D1F33;\n  letter-spacing: 1.2px; position: relative; list-style: none;\n  border-bottom: 1px solid rgba(212,115,154,0.08);\n  transition: all 0.4s ease; font-family: 'Georgia', 'Noto Serif SC', serif;\n}\n.styled-prose-container details summary::-webkit-details-marker { display: none; }\n.styled-prose-container details summary::before {\n  content: ''; position: absolute; right: 16px; top: 50%; width: 8px; height: 8px;\n  border-right: 2px solid #D4739A; border-bottom: 2px solid #D4739A;\n  transform: translateY(-70%) rotate(45deg);\n  transition: transform 0.4s ease, border-color 0.4s ease;\n}\n.styled-prose-container details summary:hover::before { border-color: #A8456E; }\n.styled-prose-container details[open] > summary {\n  background: rgba(240,198,216,0.1);\n  border-bottom-color: rgba(212,115,154,0.15);\n  color: #A8456E; padding-top: 12px; margin-bottom: 12px;\n  animation: scroll-reveal 0.5s ease-out;\n}\n.styled-prose-container details[open] > summary::before { transform: translateY(-50%) rotate(225deg); }\n.styled-prose-container details > *:not(summary) {\n  padding: 0; line-height: inherit; font-size: inherit; color: inherit; background: transparent;\n}\n.styled-prose-container details > summary {\n  text-align: center !important; justify-content: center !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  font-weight: 700 !important; letter-spacing: 3px !important;\n}\n.styled-prose-container details > summary::before {\n  position: absolute !important; left: 16px !important; right: auto !important;\n}\n\n/* --- 3.4. Tooltip 标签 (T & Ti) --- */\n.styled-prose-container T {\n  position: static !important; display: inline-block;\n  margin-bottom: 4px; margin-right: 6px; cursor: help;\n  color: #4A2545 !important; font-weight: 600; text-decoration: none;\n  border-bottom: 1px dashed rgba(212,115,154,0.35);\n  padding: 2px 8px; background: rgba(212,115,154,0.05);\n  border-radius: 6px; transition: all 0.4s ease;\n}\n.styled-prose-container T::before { content: \"\"; }\n.styled-prose-container T:hover {\n  background: rgba(212,115,154,0.12); color: #A8456E !important;\n  border-bottom-style: solid; z-index: 100;\n}\n.styled-prose-container T Ti {\n  display: block !important; visibility: hidden; opacity: 0;\n  left: 0 !important; right: 0 !important; margin: 0 auto !important;\n  width: max-content !important; max-width: 90% !important;\n  top: auto !important; bottom: auto !important;\n  transform: translateY(-100%) translateY(-10px) !important;\n  white-space: normal; text-align: left;\n  background: rgba(255,255,255,0.98); color: #3D1F33;\n  border-radius: 12px !important;\n  border: 1px solid rgba(212,115,154,0.3);\n  border-left: 3px solid #D4739A;\n  padding: 12px 16px; font-size: 0.85em; font-weight: 500;\n  line-height: 1.6; font-family: 'Georgia', 'Noto Serif SC', serif;\n  box-shadow: 0 8px 25px rgba(61,31,51,0.12), inset 0 0 15px rgba(255,245,248,0.5);\n  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);\n  transition: opacity 0.3s ease, transform 0.3s ease;\n  pointer-events: none; position: absolute; z-index: 99999;\n  background-image: linear-gradient(90deg, rgba(212,115,154,0.3) 0%, transparent 50%);\n  background-size: 100% 1px; background-repeat: no-repeat; background-position: top left;\n}\n.styled-prose-container T Ti::before {\n  content: '🌸 档案节点 //'; display: block; font-size: 0.75em;\n  color: #A8456E; margin-bottom: 8px; padding-bottom: 6px;\n  border-bottom: 1px solid rgba(168,69,110,0.2);\n  letter-spacing: 2px; font-weight: 700;\n  font-family: 'Georgia', 'Noto Serif SC', serif;\n}\n.styled-prose-container T:hover Ti {\n  visibility: visible; opacity: 1;\n  transform: translateY(-100%) translateY(-10px) !important;\n}\n.styled-prose-container T Ti > span {\n  display: inline-block; color: #A8456E; font-weight: 700; margin-right: 8px;\n}\n\n/* --- 3.5. 列表与卡片品质着色 --- */\n.styled-prose-container [class*=card-body-] {\n  margin: 2px 0; padding: 0; border-radius: 6px;\n  background-color: transparent; border: none; transition: all 0.4s ease;\n}\n/* 曲目品质 T 着色 */\n.styled-prose-container item_list [class*=card-body-rumen] T,\n.styled-prose-container spell_card_list [class*=card-body-rumen] T { color: var(--color-rumen) !important; display: inline-block; }\n.styled-prose-container item_list [class*=card-body-zhongduan] T,\n.styled-prose-container spell_card_list [class*=card-body-zhongduan] T { color: var(--color-zhongduan) !important; display: inline-block; }\n.styled-prose-container item_list [class*=card-body-gaoduan] T,\n.styled-prose-container spell_card_list [class*=card-body-gaoduan] T { color: var(--color-gaoduan) !important; display: inline-block; }\n.styled-prose-container item_list [class*=card-body-zhuanye] T,\n.styled-prose-container spell_card_list [class*=card-body-zhuanye] T { color: var(--color-zhuanye) !important; display: inline-block; }\n.styled-prose-container item_list [class*=card-body-chuanqi] T,\n.styled-prose-container spell_card_list [class*=card-body-chuanqi] T { color: var(--color-chuanqi) !important; display: inline-block; }\n\n/* 曲目品质 Ti 边框 */\n.styled-prose-container [class*=card-body-rumen] T Ti     { border-color: rgba(122,96,128,0.30); }\n.styled-prose-container [class*=card-body-zhongduan] T Ti  { border-color: rgba(107,142,90,0.35); }\n.styled-prose-container [class*=card-body-gaoduan] T Ti    { border-color: rgba(94,141,184,0.35); }\n.styled-prose-container [class*=card-body-zhuanye] T Ti    { border-color: rgba(155,89,168,0.35); }\n.styled-prose-container [class*=card-body-chuanqi] T Ti    { border-color: rgba(212,115,154,0.40); box-shadow: 0 0 10px rgba(212,115,154,0.18), 0 8px 30px rgba(61,31,51,0.12); }\n\n/* 曲目品质 Ti span 首色 */\n.styled-prose-container [class*=card-body-rumen] T Ti span:first-child     { color: var(--color-rumen) !important; }\n.styled-prose-container [class*=card-body-zhongduan] T Ti span:first-child  { color: var(--color-zhongduan) !important; }\n.styled-prose-container [class*=card-body-gaoduan] T Ti span:first-child    { color: var(--color-gaoduan) !important; }\n.styled-prose-container [class*=card-body-zhuanye] T Ti span:first-child    { color: var(--color-zhuanye) !important; }\n.styled-prose-container [class*=card-body-chuanqi] T Ti span:first-child    { color: var(--color-chuanqi) !important; }\n\n/* =============================================\n * 4. 特殊内容模块\n * ============================================= */\n\n/* --- 4.1. 侧边栏定位修正 --- */\n#ai-chat-answer:last-of-type:has(.env-sidebar, .u, .n, .p, .ship, .m) .chat,\n#ai-chat-answer:last-of-type:has(.env-sidebar, .u, .n, .p, .ship, .m) .bubble,\n#ai-chat-answer:last-of-type:has(.env-sidebar, .u, .n, .p, .ship, .m) div.group.relative > div.relative.inline-block.bg-gray-100\\/90 {\n  transform: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n}\n\n/* --- 4.2. 顶部信息 --- */\n.top-info {\n  display: flex !important; flex-direction: column !important; gap: 0 !important;\n  margin: 16px 0 !important; padding: 0 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  background: linear-gradient(180deg, rgba(255,253,254,0.98) 0%, rgba(255,250,252,0.95) 100%) !important;\n  border: 1px solid rgba(212,115,154,0.12) !important;\n  border-radius: 16px !important;\n  box-shadow: 0 4px 15px rgba(61,31,51,0.04), inset 0 0 30px rgba(255,255,255,0.5) !important;\n  position: relative !important; overflow: hidden !important;\n}\n.top-info::before {\n  content: '' !important; position: absolute !important;\n  top: 0 !important; left: 0 !important; right: 0 !important; height: 2px !important;\n  background: linear-gradient(90deg, transparent 5%, #F0C6D8 25%, #D4739A 50%, #A8456E 75%, transparent 95%) !important;\n  pointer-events: none !important;\n}\n.top-info > time, .top-info > position, .top-info > env {\n  display: block !important; position: relative !important;\n  padding: 12px 16px 12px 70px !important;\n  font-size: 14px !important; font-weight: 600 !important; color: #3D1F33 !important;\n  line-height: 1.7 !important; letter-spacing: 1.5px !important;\n  background: transparent !important;\n  border-bottom: 1px dashed rgba(212,115,154,0.1) !important;\n  transition: all 0.3s ease !important;\n}\n.top-info > *:last-child { border-bottom: none !important; }\n.top-info > *:hover { background: rgba(212,115,154,0.02) !important; }\n.top-info > *::before {\n  position: absolute !important; left: 14px !important; top: 50% !important;\n  transform: translateY(-50%) !important;\n  font-size: 12px !important; font-weight: 700 !important; color: #fff !important;\n  letter-spacing: 1px !important; padding: 4px 8px !important;\n  border-radius: 8px !important;\n  text-shadow: 0 1px 2px rgba(0,0,0,0.1) !important; white-space: nowrap !important;\n}\n.top-info > time::before {\n  content: '時刻' !important;\n  background: linear-gradient(135deg, #D4739A, #E08AAE) !important;\n  box-shadow: 0 2px 6px rgba(212,115,154,0.3) !important;\n}\n.top-info > position::before {\n  content: '方位' !important;\n  background: linear-gradient(135deg, #A8456E, #C06088) !important;\n  box-shadow: 0 2px 6px rgba(168,69,110,0.3) !important;\n}\n.top-info > env::before {\n  content: '場景' !important;\n  background: linear-gradient(135deg, #7BAF7B, #8EC08E) !important;\n  box-shadow: 0 2px 6px rgba(123,175,123,0.3) !important;\n}\n\n/* --- 4.3. 侧边栏模块 --- */\n@keyframes sidebar-tab-glow {\n  0%, 100% { box-shadow: -2px 2px 12px rgba(212,115,154,0.25); }\n  50%  { box-shadow: -2px 2px 20px rgba(212,115,154,0.5), inset 0 0 20px rgba(255,255,255,0.08); }\n}\n@keyframes sidebar-tab-glow-green {\n  0%, 100% { box-shadow: -2px 2px 12px rgba(123,175,123,0.25); }\n  50%  { box-shadow: -2px 2px 20px rgba(123,175,123,0.5), inset 0 0 20px rgba(255,255,255,0.08); }\n}\n@keyframes sidebar-tab-glow-blue {\n  0%, 100% { box-shadow: -2px 2px 12px rgba(94,141,184,0.25); }\n  50%  { box-shadow: -2px 2px 20px rgba(94,141,184,0.5), inset 0 0 20px rgba(255,255,255,0.08); }\n}\n\n.styled-prose-container .env-sidebar,\n.styled-prose-container .u,\n.styled-prose-container .n,\n.styled-prose-container details.p,\n.styled-prose-container details.ship,\n.styled-prose-container details.m {\n  position: relative !important; width: 100% !important;\n  margin: 16px 0 !important; padding: 0 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  background: radial-gradient(circle, rgba(255,255,255,0.95) 0%, rgba(255,240,245,0.9) 100%) !important;\n  border: 2px solid rgba(212,115,154,0.25) !important;\n  border-radius: 12px !important; overflow: hidden !important;\n  transition: all 0.35s ease !important; box-shadow: none !important;\n}\n/* 差异色: ship绿色, m蓝色 */\n.styled-prose-container details.ship {\n  background: radial-gradient(circle, rgba(255,255,255,0.95) 0%, rgba(240,255,245,0.9) 100%) !important;\n  border-color: rgba(123,175,123,0.25) !important; border-left: 3px solid #7BAF7B !important;\n}\n.styled-prose-container details.m {\n  background: radial-gradient(circle, rgba(255,255,255,0.95) 0%, rgba(240,245,255,0.9) 100%) !important;\n  border-color: rgba(94,141,184,0.25) !important; border-left: 3px solid #7BA7CC !important;\n}\n.styled-prose-container details.p { border-left: 3px solid #D4739A !important; }\n.styled-prose-container details.n { border-left: 3px solid #D4739A !important; }\n\n.styled-prose-container .env-sidebar > summary,\n.styled-prose-container .u > summary,\n.styled-prose-container .n > summary,\n.styled-prose-container details.p > summary,\n.styled-prose-container details.ship > summary,\n.styled-prose-container details.m > summary {\n  padding: 12px 16px !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.08), rgba(240,198,216,0.12), rgba(212,115,154,0.08)) !important;\n  color: #3D1F33 !important; font-weight: 700 !important; font-size: 14px !important;\n  cursor: pointer !important; list-style: none !important; outline: none !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  margin: 0 !important; border-bottom: 1px solid rgba(212,115,154,0.15) !important;\n  box-shadow: none !important; letter-spacing: 2px !important;\n  writing-mode: horizontal-tb !important; text-orientation: mixed;\n}\n.styled-prose-container details.ship > summary {\n  background: linear-gradient(90deg, rgba(123,175,123,0.08), rgba(180,220,180,0.12), rgba(123,175,123,0.08)) !important;\n  color: #2D5A2D !important; border-bottom-color: rgba(123,175,123,0.15) !important;\n}\n.styled-prose-container details.m > summary {\n  background: linear-gradient(90deg, rgba(94,141,184,0.08), rgba(160,195,220,0.12), rgba(94,141,184,0.08)) !important;\n  color: #2A4A6A !important; border-bottom-color: rgba(94,141,184,0.15) !important;\n}\n.styled-prose-container .env-sidebar > summary::-webkit-details-marker,\n.styled-prose-container .u > summary::-webkit-details-marker,\n.styled-prose-container .n > summary::-webkit-details-marker,\n.styled-prose-container details.p > summary::-webkit-details-marker,\n.styled-prose-container details.ship > summary::-webkit-details-marker,\n.styled-prose-container details.m > summary::-webkit-details-marker { display: none !important; }\n.styled-prose-container .env-sidebar > summary:hover,\n.styled-prose-container .u > summary:hover,\n.styled-prose-container .n > summary:hover,\n.styled-prose-container details.p > summary:hover {\n  background: linear-gradient(90deg, rgba(212,115,154,0.15), rgba(240,198,216,0.2), rgba(212,115,154,0.15)) !important;\n  color: #A8456E !important;\n}\n.styled-prose-container details.ship > summary:hover {\n  background: linear-gradient(90deg, rgba(123,175,123,0.15), rgba(180,220,180,0.2), rgba(123,175,123,0.15)) !important;\n  color: #3D7A3D !important;\n}\n.styled-prose-container details.m > summary:hover {\n  background: linear-gradient(90deg, rgba(94,141,184,0.15), rgba(160,195,220,0.2), rgba(94,141,184,0.15)) !important;\n  color: #3A6A9A !important;\n}\n\n/* 最新消息中侧边栏悬浮 */\n#ai-chat-answer:last-of-type .env-sidebar,\n#ai-chat-answer:last-of-type .u,\n#ai-chat-answer:last-of-type .n,\n#ai-chat-answer:last-of-type details.p,\n#ai-chat-answer:last-of-type details.ship,\n#ai-chat-answer:last-of-type details.m {\n  position: fixed !important; right: 0 !important; z-index: 9999 !important;\n  width: auto !important; background: transparent !important; border: none !important;\n  box-shadow: none !important; margin: 0 !important; padding: 0 !important;\n  overflow: visible !important;\n  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;\n  transform: none !important; filter: none !important;\n  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n}\n#ai-chat-answer:last-of-type .env-sidebar { top: 60px !important; }\n#ai-chat-answer:last-of-type .u { top: 175px !important; }\n#ai-chat-answer:last-of-type details.p  { top: 60px !important; }\n#ai-chat-answer:last-of-type details.n  { top: 170px !important; }\n#ai-chat-answer:last-of-type .n         { top: 170px !important; }\n#ai-chat-answer:last-of-type details.ship { top: 280px !important; }\n#ai-chat-answer:last-of-type details.m  { top: 395px !important; }\n\n/* ── 折叠标签 — 精美差异化 ── */\n\n/* 通用标签内半透明花瓣纹理层 */\n#ai-chat-answer:last-of-type .env-sidebar:not([open]) > summary,\n#ai-chat-answer:last-of-type .u:not([open]) > summary,\n#ai-chat-answer:last-of-type .n:not([open]) > summary,\n#ai-chat-answer:last-of-type details.p:not([open]) > summary,\n#ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n#ai-chat-answer:last-of-type details.m:not([open]) > summary {\n  width: 38px !important; padding: 0 !important; margin: 0 !important;\n  color: #fff !important; border-radius: 14px 0 0 14px !important;\n  border-right: none !important;\n  writing-mode: vertical-rl !important; text-orientation: upright !important;\n  letter-spacing: 3px !important; text-align: center !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  height: auto !important; font-size: 13px !important;\n  position: relative !important; overflow: hidden !important;\n  background-image:\n    url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 200'%3E%3Cdefs%3E%3CradialGradient id='tg'%3E%3Cstop offset='0%25' stop-color='%23fff' stop-opacity='0.15'/%3E%3Cstop offset='100%25' stop-color='%23fff' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cellipse cx='19' cy='50' rx='6' ry='4' fill='url(%23tg)' transform='rotate(20 19 50)'%3E%3Canimate attributeName='cy' values='50;55;50' dur='4s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0.3;0.6;0.3' dur='4s' repeatCount='indefinite'/%3E%3C/ellipse%3E%3Cellipse cx='25' cy='120' rx='5' ry='3' fill='url(%23tg)' transform='rotate(-15 25 120)'%3E%3Canimate attributeName='cy' values='120;126;120' dur='5s' repeatCount='indefinite' begin='1s'/%3E%3Canimate attributeName='opacity' values='0.2;0.5;0.2' dur='5s' repeatCount='indefinite' begin='1s'/%3E%3C/ellipse%3E%3Cellipse cx='14' cy='170' rx='4' ry='2.5' fill='url(%23tg)' transform='rotate(35 14 170)'%3E%3Canimate attributeName='cy' values='170;175;170' dur='3.5s' repeatCount='indefinite' begin='2s'/%3E%3Canimate attributeName='opacity' values='0.25;0.55;0.25' dur='3.5s' repeatCount='indefinite' begin='2s'/%3E%3C/ellipse%3E%3C/svg%3E\") !important;\n  background-size: 100% 100% !important; background-repeat: no-repeat !important;\n}\n\n/* .p 主角状态 — 樱瓣粉渐变 + 五瓣花装饰 */\n#ai-chat-answer:last-of-type details.p:not([open]) > summary {\n  background-color: transparent !important;\n  background: linear-gradient(180deg, #E899B8, #D4739A, #A8456E) !important;\n  border: 1px solid rgba(240,198,216,0.5) !important; border-right: none !important;\n  text-shadow: 0 1px 3px rgba(120,40,70,0.4) !important;\n  animation: sidebar-tab-glow 4s ease-in-out infinite !important;\n  min-height: 95px !important;\n}\n#ai-chat-answer:last-of-type details.p:not([open]) > summary::before {\n  content: '' !important; position: absolute !important;\n  top: 8px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 20px !important; height: 20px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cg opacity='0.85'%3E%3Cpath d='M10,2 C11.5,5 11.5,8 10,10 C8.5,8 8.5,5 10,2' fill='%23fff' opacity='0.9'/%3E%3Cpath d='M10,2 C11.5,5 11.5,8 10,10 C8.5,8 8.5,5 10,2' fill='%23fff' opacity='0.9' transform='rotate(72 10 10)'/%3E%3Cpath d='M10,2 C11.5,5 11.5,8 10,10 C8.5,8 8.5,5 10,2' fill='%23fff' opacity='0.9' transform='rotate(144 10 10)'/%3E%3Cpath d='M10,2 C11.5,5 11.5,8 10,10 C8.5,8 8.5,5 10,2' fill='%23fff' opacity='0.9' transform='rotate(216 10 10)'/%3E%3Cpath d='M10,2 C11.5,5 11.5,8 10,10 C8.5,8 8.5,5 10,2' fill='%23fff' opacity='0.9' transform='rotate(288 10 10)'/%3E%3Ccircle cx='10' cy='10' r='2' fill='%23FFD6E8' opacity='0.9'/%3E%3C/g%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important; border-radius: 0 !important;\n}\n#ai-chat-answer:last-of-type details.p:not([open]) > summary::after {\n  content: '' !important; position: absolute !important;\n  bottom: 8px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 16px !important; height: 16px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ctext x='2' y='13' font-size='12' fill='rgba(255,255,255,0.6)' font-family='Georgia'%3E%E2%99%AA%3C/text%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important;\n}\n\n/* .n NPC信息 — 樱瓣粉渐变 + 人物图标 */\n#ai-chat-answer:last-of-type .n:not([open]) > summary,\n#ai-chat-answer:last-of-type details.n:not([open]) > summary {\n  background-color: transparent !important;\n  background: linear-gradient(180deg, #E899B8, #D4739A, #A8456E) !important;\n  border: 1px solid rgba(240,198,216,0.5) !important; border-right: none !important;\n  text-shadow: 0 1px 3px rgba(120,40,70,0.4) !important;\n  animation: sidebar-tab-glow 4s ease-in-out infinite !important;\n  min-height: 80px !important;\n}\n#ai-chat-answer:last-of-type .n:not([open]) > summary::before,\n#ai-chat-answer:last-of-type details.n:not([open]) > summary::before {\n  content: '' !important; position: absolute !important;\n  top: 8px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 18px !important; height: 18px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Ccircle cx='9' cy='6' r='3.5' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='1.2'/%3E%3Cpath d='M3,16 C3,12 5.5,9.5 9,9.5 C12.5,9.5 15,12 15,16' fill='none' stroke='rgba(255,255,255,0.5)' stroke-width='1.2'/%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important; border-radius: 0 !important;\n}\n\n/* .ship 乐队总览 — 嫩叶绿渐变 + 音符装饰 */\n#ai-chat-answer:last-of-type details.ship:not([open]) > summary {\n  background-color: transparent !important;\n  background: linear-gradient(180deg, #A4D4A4, #7BAF7B, #4D8A4D) !important;\n  border: 1px solid rgba(180,220,180,0.5) !important; border-right: none !important;\n  text-shadow: 0 1px 3px rgba(40,80,40,0.4) !important;\n  animation: sidebar-tab-glow-green 4s ease-in-out infinite !important;\n  min-height: 100px !important;\n}\n#ai-chat-answer:last-of-type details.ship:not([open]) > summary::before {\n  content: '' !important; position: absolute !important;\n  top: 8px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 18px !important; height: 18px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Ctext x='1' y='15' font-size='14' fill='rgba(255,255,255,0.7)' font-family='Georgia'%3E%E2%99%AB%3C/text%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important; border-radius: 0 !important;\n}\n#ai-chat-answer:last-of-type details.ship:not([open]) > summary::after {\n  content: '' !important; position: absolute !important;\n  bottom: 10px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 14px !important; height: 14px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Ccircle cx='7' cy='7' r='5' fill='none' stroke='rgba(255,255,255,0.35)' stroke-width='1' stroke-dasharray='2 2'/%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important;\n}\n\n/* .m 过往记忆 — 天空蓝渐变 + 书本装饰 */\n#ai-chat-answer:last-of-type details.m:not([open]) > summary {\n  background-color: transparent !important;\n  background: linear-gradient(180deg, #A0C3DC, #7BA7CC, #5080A0) !important;\n  border: 1px solid rgba(160,195,220,0.5) !important; border-right: none !important;\n  text-shadow: 0 1px 3px rgba(30,55,80,0.4) !important;\n  animation: sidebar-tab-glow-blue 4s ease-in-out infinite !important;\n  min-height: 80px !important;\n  font-size: 0 !important;\n  line-height: 0 !important;\n  color: transparent !important;\n  gap: 0 !important;\n  padding-top: 8px !important;\n  padding-bottom: 8px !important;\n}\n#ai-chat-answer:last-of-type details.m:not([open]) > summary::before {\n  content: '' !important; position: absolute !important;\n  top: 10px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 18px !important; height: 18px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Crect x='3' y='3' width='12' height='12' rx='1.5' fill='none' stroke='rgba(255,255,255,0.55)' stroke-width='1.2'/%3E%3Cline x1='6' y1='6' x2='12' y2='6' stroke='rgba(255,255,255,0.4)' stroke-width='0.8'/%3E%3Cline x1='6' y1='9' x2='12' y2='9' stroke='rgba(255,255,255,0.35)' stroke-width='0.8'/%3E%3Cline x1='6' y1='12' x2='10' y2='12' stroke='rgba(255,255,255,0.3)' stroke-width='0.8'/%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important; border-radius: 0 !important;\n  margin-bottom: 2px !important;\n}\n#ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n  content: '过往记忆' !important;\n  display: block !important;\n  font-size: 13px !important;\n  line-height: 1 !important;\n  color: #fff !important;\n  writing-mode: vertical-rl !important;\n  text-orientation: upright !important;\n  letter-spacing: 3px !important;\n  font-weight: 700 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  text-shadow: 0 1px 3px rgba(30,50,80,0.4) !important;\n  position: absolute !important;\n  top: 32px !important;\n  left: 50% !important;\n  transform: translateX(-50%) !important;\n  width: auto !important;\n  height: auto !important;\n  background: none !important;\n  border: none !important;\n  border-radius: 0 !important;\n  box-shadow: none !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  pointer-events: none !important;\n}\n\n/* env-sidebar / .u 保持原有粉色 */\n#ai-chat-answer:last-of-type .env-sidebar:not([open]) > summary,\n#ai-chat-answer:last-of-type .u:not([open]) > summary {\n  background-color: transparent !important;\n  background: linear-gradient(180deg, #D4739A, #A8456E) !important;\n  border: 1px solid rgba(240,198,216,0.4) !important; border-right: none !important;\n  box-shadow: -2px 2px 15px rgba(61,31,51,0.2) !important;\n  text-shadow: 0 0 5px rgba(240,198,216,0.5) !important;\n}\n\n/* ── 展开面板 ── */\n#ai-chat-answer:last-of-type .env-sidebar[open],\n#ai-chat-answer:last-of-type .u[open],\n#ai-chat-answer:last-of-type .n[open],\n#ai-chat-answer:last-of-type details.p[open],\n#ai-chat-answer:last-of-type details.n[open] {\n  top: 60px !important; width: 370px !important; max-height: 60vh !important;\n  right: 35px !important; background: rgba(255,255,255,0.98) !important;\n  border: 2px solid #D4739A !important; border-right: none !important;\n  border-radius: 14px 0 0 14px !important;\n  box-shadow: -4px 4px 30px rgba(168,69,110,0.2), 0 0 60px rgba(240,198,216,0.15) !important;\n  overflow-y: auto !important; overflow-x: hidden !important;\n  backdrop-filter: blur(14px) !important; -webkit-backdrop-filter: blur(14px) !important;\n}\n#ai-chat-answer:last-of-type details.ship[open] {\n  top: 60px !important; width: 380px !important; max-height: 65vh !important;\n  right: 35px !important; background: rgba(255,255,255,0.98) !important;\n  border: 2px solid #7BAF7B !important; border-right: none !important;\n  border-radius: 14px 0 0 14px !important;\n  box-shadow: -4px 4px 30px rgba(77,138,77,0.2), 0 0 60px rgba(180,220,180,0.12) !important;\n  overflow-y: auto !important; overflow-x: hidden !important;\n  backdrop-filter: blur(14px) !important; -webkit-backdrop-filter: blur(14px) !important;\n}\n#ai-chat-answer:last-of-type details.m[open] {\n  top: 60px !important; width: 380px !important; max-height: 60vh !important;\n  right: 35px !important; background: rgba(255,255,255,0.98) !important;\n  border: 2px solid #7BA7CC !important; border-right: none !important;\n  border-radius: 14px 0 0 14px !important;\n  box-shadow: -4px 4px 30px rgba(80,128,160,0.2) !important;\n  overflow-y: auto !important; overflow-x: hidden !important;\n}\n\n/* 展开面板头部 — 粉色系 */\n#ai-chat-answer:last-of-type .env-sidebar[open] > summary,\n#ai-chat-answer:last-of-type .u[open] > summary,\n#ai-chat-answer:last-of-type .n[open] > summary,\n#ai-chat-answer:last-of-type details.p[open] > summary,\n#ai-chat-answer:last-of-type details.n[open] > summary {\n  writing-mode: horizontal-tb !important; padding: 14px 50px 14px 18px !important;\n  background: linear-gradient(135deg, #E899B8, #D4739A, #A8456E) !important;\n  color: #fff !important; border-bottom: 2px solid rgba(255,255,255,0.2) !important;\n  border-radius: 12px 0 0 0 !important; margin-bottom: 0 !important; box-shadow: none !important;\n  position: sticky !important; top: 0 !important; z-index: 100 !important;\n  text-align: left !important; display: flex !important; justify-content: flex-start !important;\n  font-size: 15px !important; letter-spacing: 2.5px !important;\n  text-shadow: 0 1px 4px rgba(100,30,55,0.3) !important;\n  animation: none !important; min-height: 0 !important;\n}\n/* 展开面板头部 — 绿色系 */\n#ai-chat-answer:last-of-type details.ship[open] > summary {\n  writing-mode: horizontal-tb !important; padding: 14px 50px 14px 18px !important;\n  background: linear-gradient(135deg, #A4D4A4, #7BAF7B, #4D8A4D) !important;\n  color: #fff !important; border-bottom: 2px solid rgba(255,255,255,0.2) !important;\n  border-radius: 12px 0 0 0 !important; margin-bottom: 0 !important; box-shadow: none !important;\n  position: sticky !important; top: 0 !important; z-index: 100 !important;\n  text-align: left !important; display: flex !important; justify-content: flex-start !important;\n  font-size: 15px !important; letter-spacing: 2.5px !important;\n  text-shadow: 0 1px 4px rgba(30,60,30,0.3) !important;\n  animation: none !important; min-height: 0 !important;\n}\n/* 展开面板头部 — 蓝色系 */\n#ai-chat-answer:last-of-type details.m[open] > summary {\n  writing-mode: horizontal-tb !important; padding: 14px 50px 14px 18px !important;\n  background: linear-gradient(135deg, #A0C3DC, #7BA7CC, #5080A0) !important;\n  color: #fff !important; border-bottom: 2px solid rgba(255,255,255,0.2) !important;\n  border-radius: 12px 0 0 0 !important; margin-bottom: 0 !important; box-shadow: none !important;\n  position: sticky !important; top: 0 !important; z-index: 100 !important;\n  text-align: left !important; display: flex !important; justify-content: flex-start !important;\n  font-size: 15px !important; letter-spacing: 2.5px !important;\n  text-shadow: 0 1px 4px rgba(30,50,80,0.3) !important;\n  animation: none !important; min-height: 0 !important;\n}\n\n/* 展开标题前缀图标 */\n#ai-chat-answer:last-of-type details.p[open] > summary::before {\n  content: '🌸' !important; margin-right: 8px !important; font-size: 14px !important;\n  position: static !important; transform: none !important;\n  border: none !important; width: auto !important; height: auto !important;\n  background: none !important;\n}\n#ai-chat-answer:last-of-type .n[open] > summary::before,\n#ai-chat-answer:last-of-type details.n[open] > summary::before {\n  content: '👤' !important; margin-right: 8px !important; font-size: 14px !important;\n  position: static !important; transform: none !important;\n  border: none !important; width: auto !important; height: auto !important;\n  background: none !important;\n}\n#ai-chat-answer:last-of-type details.ship[open] > summary::before {\n  content: '♪' !important; margin-right: 8px !important; font-size: 15px !important;\n  position: static !important; transform: none !important;\n  border: none !important; width: auto !important; height: auto !important;\n  background: none !important;\n}\n#ai-chat-answer:last-of-type details.m[open] > summary::before {\n  content: '📖' !important; margin-right: 8px !important; font-size: 14px !important;\n  position: static !important; transform: none !important;\n  border: none !important; width: auto !important; height: auto !important;\n  background: none !important;\n}\n\n/* 关闭按钮 × */\n#ai-chat-answer:last-of-type .env-sidebar[open] > summary::after,\n#ai-chat-answer:last-of-type .u[open] > summary::after,\n#ai-chat-answer:last-of-type .n[open] > summary::after,\n#ai-chat-answer:last-of-type details.p[open] > summary::after,\n#ai-chat-answer:last-of-type details.n[open] > summary::after,\n#ai-chat-answer:last-of-type details.ship[open] > summary::after,\n#ai-chat-answer:last-of-type details.m[open] > summary::after {\n  content: '×' !important; position: absolute !important; right: 14px; top: 50%;\n  transform: translateY(-50%); font-size: 22px !important; line-height: 0.8 !important;\n  color: rgba(255,255,255,0.7) !important; text-shadow: none !important;\n  font-weight: 300 !important;\n}\n\n/* 滚动条 */\n#ai-chat-answer:last-of-type .env-sidebar[open]::-webkit-scrollbar,\n#ai-chat-answer:last-of-type .u[open]::-webkit-scrollbar,\n#ai-chat-answer:last-of-type .n[open]::-webkit-scrollbar,\n#ai-chat-answer:last-of-type details.p[open]::-webkit-scrollbar,\n#ai-chat-answer:last-of-type details.n[open]::-webkit-scrollbar { width: 5px; }\n#ai-chat-answer:last-of-type .env-sidebar[open]::-webkit-scrollbar-track,\n#ai-chat-answer:last-of-type .u[open]::-webkit-scrollbar-track,\n#ai-chat-answer:last-of-type .n[open]::-webkit-scrollbar-track,\n#ai-chat-answer:last-of-type details.p[open]::-webkit-scrollbar-track,\n#ai-chat-answer:last-of-type details.n[open]::-webkit-scrollbar-track { background: rgba(212,115,154,0.06); border-radius: 3px; }\n#ai-chat-answer:last-of-type .env-sidebar[open]::-webkit-scrollbar-thumb,\n#ai-chat-answer:last-of-type .u[open]::-webkit-scrollbar-thumb,\n#ai-chat-answer:last-of-type .n[open]::-webkit-scrollbar-thumb,\n#ai-chat-answer:last-of-type details.p[open]::-webkit-scrollbar-thumb,\n#ai-chat-answer:last-of-type details.n[open]::-webkit-scrollbar-thumb {\n  background: linear-gradient(180deg, rgba(212,115,154,0.4), rgba(168,69,110,0.3));\n  border-radius: 3px;\n}\n#ai-chat-answer:last-of-type details.ship[open]::-webkit-scrollbar { width: 5px; }\n#ai-chat-answer:last-of-type details.ship[open]::-webkit-scrollbar-track { background: rgba(123,175,123,0.06); }\n#ai-chat-answer:last-of-type details.ship[open]::-webkit-scrollbar-thumb {\n  background: linear-gradient(180deg, rgba(123,175,123,0.35), rgba(77,138,77,0.25)); border-radius: 3px;\n}\n#ai-chat-answer:last-of-type details.m[open]::-webkit-scrollbar { width: 5px; }\n#ai-chat-answer:last-of-type details.m[open]::-webkit-scrollbar-track { background: rgba(94,141,184,0.06); }\n#ai-chat-answer:last-of-type details.m[open]::-webkit-scrollbar-thumb {\n  background: linear-gradient(180deg, rgba(94,141,184,0.35), rgba(80,128,160,0.25)); border-radius: 3px;\n}\n\n/* 侧边栏面板内NPC卡片 */\n#ai-chat-answer:last-of-type .u[open] > .classUI-npc-card,\n#ai-chat-answer:last-of-type .n[open] > .classUI-npc-card,\n#ai-chat-answer:last-of-type details.n[open] > .classUI-npc-card,\n#ai-chat-answer:last-of-type details.ship[open] > .classUI-npc-card {\n  background: transparent !important; border: none !important; box-shadow: none !important;\n  padding-top: 14px !important; padding-bottom: 14px !important;\n  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n}\n\n/* --- 4.5. 背包 --- */\ndetails[inv] {\n  --grid-size: 56px; --gap: 6px; --panel-h: 1120px;\n  --bg-panel: rgba(255,250,252,0.98); --bg-item: rgba(255,255,255,0.9);\n  --text-main: #3D1F33; --text-sub: #A8456E;\n  --border: rgba(212,115,154,0.2); --accent: #D4739A;\n  --q-yiban: #4A2545; --q-youzhi: #6B8E5A; --q-jingliang: #5E8DB8;\n  --q-shishi: #9B59A8; --q-chuanshuo: #D4739A; --q-yuangu: #C62828;\n  display: block !important; margin: 12px 0 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  position: relative !important;\n}\ndetails[inv] > summary {\n  cursor: pointer !important; list-style: none !important; user-select: none !important;\n  display: flex !important; align-items: center !important; gap: 10px !important;\n  font-weight: 700 !important; font-size: 14px !important; color: var(--accent) !important;\n  padding: 10px 14px 10px 36px !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.06), rgba(240,198,216,0.04), rgba(212,115,154,0.06)) !important;\n  border: 1px solid var(--border) !important; border-left: 3px solid var(--accent) !important;\n  border-radius: 8px !important; transition: all 0.3s ease !important;\n  letter-spacing: 1.5px !important; position: relative !important; z-index: 10 !important;\n}\ndetails[inv][open] > summary {\n  border-radius: 0 0 8px 8px !important; border-top: none !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.1), rgba(240,198,216,0.06), rgba(212,115,154,0.1)) !important;\n}\ndetails[inv] > summary::-webkit-details-marker, details[inv] > summary::marker { display: none !important; content: '' !important; }\ndetails[inv] > summary::before {\n  content: '🎒' !important; position: absolute !important; left: 10px !important;\n  top: 50% !important; transform: translateY(-50%) !important;\n  font-size: 16px !important; transition: all 0.3s ease !important;\n}\ndetails[inv] > summary::after {\n  content: '' !important; position: absolute !important; right: 14px !important; top: 50% !important;\n  width: 8px !important; height: 8px !important;\n  border-right: 2px solid var(--accent) !important; border-top: 2px solid var(--accent) !important;\n  transform: translateY(-50%) rotate(-45deg) !important; transition: all 0.3s ease !important;\n}\ndetails[inv][open] > summary::after { transform: translateY(-50%) rotate(135deg) !important; border-color: #A8456E !important; }\ndetails[inv] > summary:hover {\n  background: linear-gradient(90deg, rgba(212,115,154,0.12), rgba(240,198,216,0.08), rgba(212,115,154,0.12)) !important;\n  border-color: var(--accent) !important;\n}\ndetails[inv] > summary > i {\n  font-style: normal !important; background: rgba(212,115,154,0.08) !important;\n  padding: 3px 10px !important; border-radius: 8px !important; font-size: 12px !important;\n  color: var(--text-sub) !important; border: 1px solid rgba(212,115,154,0.15) !important;\n  margin-left: auto !important; margin-right: 20px !important;\n}\ndetails[inv] > panel {\n  display: grid !important;\n  grid-template-columns: repeat(auto-fill, minmax(var(--grid-size), 1fr)) !important;\n  gap: var(--gap) !important; padding: 36px 12px 12px 12px !important;\n  background: var(--bg-panel) !important; border: 1px solid var(--border) !important;\n  border-bottom: none !important; border-left: 3px solid var(--accent) !important;\n  border-radius: 12px 12px 0 0 !important; max-height: var(--panel-h) !important;\n  overflow: visible !important;\n  box-shadow: 0 -4px 20px rgba(61,31,51,0.12), inset 0 0 20px rgba(255,245,248,0.5) !important;\n  box-sizing: border-box !important; position: absolute !important;\n  left: 0 !important; right: 0 !important; bottom: calc(100% - 1px) !important; z-index: 100 !important;\n}\ndetails[inv] > panel::before {\n  content: '🌸 随身物品' !important; position: absolute !important;\n  top: 0 !important; left: 0 !important; right: 0 !important; height: 28px !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.1), rgba(240,198,216,0.08), rgba(212,115,154,0.1)) !important;\n  border-bottom: 1px solid rgba(212,115,154,0.15) !important;\n  border-radius: 12px 12px 0 0 !important; font-size: 11px !important;\n  font-weight: 700 !important; color: var(--accent) !important; letter-spacing: 3px !important;\n}\ndetails[inv] > panel::after {\n  content: '' !important; position: absolute !important; bottom: 0 !important;\n  left: 10% !important; right: 10% !important; height: 1px !important;\n  background: linear-gradient(90deg, transparent, rgba(240,198,216,0.5), transparent) !important;\n}\ndetails[inv] > panel > b {\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  aspect-ratio: 1 / 1 !important; background: var(--bg-item) !important;\n  border: 1px solid var(--border) !important; color: var(--text-main) !important;\n  font-weight: 600 !important; font-size: 11px !important; text-align: center !important;\n  cursor: help !important; position: static !important; transition: all 0.25s ease !important;\n  overflow: visible !important; border-radius: 8px !important; padding: 4px !important;\n  word-break: break-all !important; line-height: 1.3 !important;\n  box-shadow: 0 1px 3px rgba(61,31,51,0.06) !important;\n}\ndetails[inv] > panel > b:hover {\n  z-index: 10 !important; transform: scale(1.08) !important;\n  box-shadow: 0 4px 15px rgba(212,115,154,0.2) !important; background: #FFFFFF !important;\n}\ndetails[inv] > panel > b > i {\n  position: fixed !important; top: 50% !important; left: 50% !important;\n  transform: translate(-50%, -50%) !important;\n  width: 135px !important; max-width: 45vw !important; max-height: 65vh !important;\n  overflow-y: auto !important; background: rgba(255,255,255,0.99) !important;\n  border: 1px solid rgba(212,115,154,0.35) !important;\n  border-left: 3px solid var(--accent) !important;\n  padding: 12px 10px !important; border-radius: 12px !important;\n  box-shadow: 0 8px 30px rgba(61,31,51,0.3) !important;\n  opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;\n  transition: opacity 0.15s ease, visibility 0.15s ease !important;\n  font-style: normal !important; text-align: left !important;\n  white-space: normal !important; font-size: 11px !important;\n  line-height: 1.7 !important; color: var(--text-main) !important;\n  z-index: 2147483647 !important;\n  backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important;\n}\ndetails[inv] > panel > b > i::before {\n  content: '🌸 物品档案' !important; display: block !important;\n  font-size: 10px !important; font-weight: 700 !important; color: #A8456E !important;\n  letter-spacing: 1px !important; margin-bottom: 6px !important;\n  padding-bottom: 6px !important; border-bottom: 1px solid rgba(212,115,154,0.2) !important;\n}\ndetails[inv] > panel > b:hover > i { opacity: 1 !important; visibility: visible !important; }\ndetails[inv] > panel > b > i > b {\n  display: block !important; margin-top: 8px !important; padding-top: 6px !important;\n  border-top: 1px dashed rgba(212,115,154,0.2) !important;\n  text-align: right !important; color: #A8456E !important;\n  font-weight: 700 !important; font-size: 10px !important;\n}\ndetails[inv] > panel > b[e] {\n  border-color: #F0C6D8 !important;\n  box-shadow: inset 0 0 0 1px #F0C6D8, 0 0 8px rgba(240,198,216,0.3) !important;\n  background: linear-gradient(135deg, rgba(240,198,216,0.1), rgba(255,255,255,0.9)) !important;\n  position: relative !important;\n}\ndetails[inv] > panel > b[e]::after {\n  content: '♪' !important; position: absolute !important; top: 0 !important; left: 0 !important;\n  background: linear-gradient(135deg, #F0C6D8, #D4739A) !important;\n  color: #fff !important; font-size: 8px !important; font-weight: 700 !important;\n  padding: 1px 3px !important; line-height: 1.2 !important; border-radius: 0 0 6px 0 !important;\n}\ndetails[inv] > panel > b[q=\"yiban\"] { color: var(--q-yiban) !important; border-color: var(--q-yiban) !important; }\ndetails[inv] > panel > b[q=\"youzhi\"] { color: var(--q-youzhi) !important; border-color: var(--q-youzhi) !important; }\ndetails[inv] > panel > b[q=\"jingliang\"] { color: var(--q-jingliang) !important; border-color: var(--q-jingliang) !important; }\ndetails[inv] > panel > b[q=\"shishi\"] { color: var(--q-shishi) !important; border-color: var(--q-shishi) !important; }\ndetails[inv] > panel > b[q=\"chuanshuo\"] { color: var(--q-chuanshuo) !important; border-color: var(--q-chuanshuo) !important; box-shadow: 0 0 6px rgba(212,115,154,0.3) !important; }\ndetails[inv] > panel > b[q=\"yuangu\"] { color: var(--q-yuangu) !important; border-color: var(--q-yuangu) !important; box-shadow: 0 0 8px rgba(198,40,40,0.3) !important; animation: inv-item-glow 2.5s ease-in-out infinite !important; }\ndetails[inv] > panel > b[q=\"yiban\"] > i { border-left-color: var(--q-yiban) !important; }\ndetails[inv] > panel > b[q=\"youzhi\"] > i { border-left-color: var(--q-youzhi) !important; }\ndetails[inv] > panel > b[q=\"jingliang\"] > i { border-left-color: var(--q-jingliang) !important; }\ndetails[inv] > panel > b[q=\"shishi\"] > i { border-left-color: var(--q-shishi) !important; }\ndetails[inv] > panel > b[q=\"chuanshuo\"] > i { border-left-color: var(--q-chuanshuo) !important; }\ndetails[inv] > panel > b[q=\"yuangu\"] > i { border-left-color: var(--q-yuangu) !important; }\n.styled-prose-container wealth_info, .styled-prose-container wealth_info *,\n.styled-prose-container details:has(wealth_info),\n.styled-prose-container details:has(wealth_info) > *,\ndetails[inv], details[inv] > panel { overflow: visible !important; }\n\n/* --- 4.6. 因果命盘 / 追踪器 --- */\n.k-track {\n  border: 1px solid rgba(212,115,154,0.2) !important;\n  background: linear-gradient(180deg, rgba(255,250,252,0.98) 0%, rgba(255,240,245,0.95) 100%) !important;\n  margin: 14px 0 !important; border-radius: 16px !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  overflow: hidden !important; position: relative !important;\n}\n.k-track::before {\n  content: '' !important; position: absolute !important; top: 0 !important;\n  left: 0 !important; right: 0 !important; height: 2px !important;\n  background: linear-gradient(90deg, transparent, #F0C6D8, #D4739A, #C62828, transparent) !important;\n  opacity: 0.5 !important;\n}\n.k-head {\n  background: linear-gradient(90deg, rgba(212,115,154,0.06) 0%, rgba(240,198,216,0.08) 25%, rgba(255,255,255,0.9) 50%, rgba(198,40,40,0.04) 75%, rgba(212,115,154,0.06) 100%) !important;\n  padding: 12px 16px 12px 42px !important; font-size: 14px !important;\n  color: #3D1F33 !important; font-weight: 700 !important;\n  border-bottom: 1px solid rgba(212,115,154,0.12) !important;\n  display: flex !important; justify-content: space-between !important;\n  align-items: center !important; cursor: pointer !important;\n  letter-spacing: 2px !important; list-style: none !important;\n  position: relative !important; transition: all 0.3s ease !important;\n}\n.k-head::-webkit-details-marker { display: none !important; }\n.k-head::before {\n  content: '🌸' !important; position: absolute !important; left: 14px !important;\n  top: 50% !important; transform: translateY(-50%) !important; font-size: 16px !important;\n  animation: k-petal-spin 12s linear infinite !important;\n}\n.k-head::after {\n  content: '' !important; position: absolute !important; right: 16px !important;\n  top: 50% !important; width: 7px !important; height: 7px !important;\n  border-right: 2px solid #D4739A !important; border-bottom: 2px solid #D4739A !important;\n  transform: translateY(-70%) rotate(45deg) !important; transition: all 0.3s ease !important;\n}\n.k-track[open] > .k-head::after { transform: translateY(-30%) rotate(-135deg) !important; }\n.k-sum {\n  font-weight: 700 !important; font-size: 11px !important; letter-spacing: 1px !important;\n  padding: 4px 10px !important; border-radius: 10px !important;\n  background: rgba(255,255,255,0.7) !important;\n  border: 1px solid rgba(212,115,154,0.15) !important;\n  margin-right: 20px !important; color: #3D1F33 !important;\n}\n.k-body { padding: 14px !important; background: rgba(255,255,255,0.5) !important; position: relative !important; }\n.k-quote {\n  position: relative !important; z-index: 1 !important; text-align: center !important;\n  font-size: 11px !important; color: #A8456E !important; letter-spacing: 2px !important;\n  padding: 10px 12px !important; margin-bottom: 14px !important;\n  background: linear-gradient(90deg, transparent, rgba(212,115,154,0.04), transparent) !important;\n  border-top: 1px dashed rgba(212,115,154,0.15) !important;\n  border-bottom: 1px dashed rgba(212,115,154,0.15) !important;\n  font-weight: 600 !important;\n}\n.k-row {\n  position: relative !important; z-index: 1 !important; margin-bottom: 12px !important;\n  padding: 10px 12px 10px 48px !important; border-left: 3px solid var(--k-color) !important;\n  background: var(--k-bg) !important; border-radius: 0 12px 12px 0 !important;\n  transition: all 0.35s ease !important; overflow: hidden !important;\n  display: flex !important; align-items: flex-start !important;\n}\n.k-row:last-child { margin-bottom: 0 !important; }\n.k-row::before {\n  content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important;\n  width: 100% !important; height: 100% !important;\n  background: linear-gradient(90deg, var(--k-glow) 0%, transparent 60%) !important;\n  opacity: 0 !important; transition: opacity 0.35s ease !important; pointer-events: none !important;\n}\n.k-row:hover { transform: translateX(4px) !important; }\n.k-row:hover::before { opacity: 1 !important; }\n.k-tag {\n  position: absolute !important; left: 10px !important; top: 50% !important;\n  transform: translateY(-50%) !important; width: 28px !important; height: 28px !important;\n  border-radius: 50% !important; display: flex !important; align-items: center !important;\n  justify-content: center !important; font-size: 13px !important; font-weight: 900 !important;\n  color: #fff !important; text-shadow: 0 1px 2px rgba(0,0,0,0.2) !important;\n  z-index: 2 !important; box-shadow: 0 2px 6px var(--k-tag-shadow) !important;\n  background: var(--k-tag-bg) !important; border: 2px solid rgba(255,255,255,0.5) !important;\n}\n.k-main { flex: 1 !important; min-width: 0 !important; }\n.k-row.g {\n  --k-color: #D4739A !important;\n  --k-bg: linear-gradient(90deg, rgba(255,240,245,0.9) 0%, rgba(255,255,255,0.85) 100%) !important;\n  --k-glow: rgba(212,115,154,0.2) !important;\n  --k-bar-color: linear-gradient(90deg, #D4739A, #A8456E) !important;\n  --k-tag-bg: linear-gradient(135deg, #D4739A, #A8456E) !important;\n  --k-tag-shadow: rgba(168,69,110,0.4) !important;\n  border: 1px solid rgba(212,115,154,0.25) !important;\n  border-left: 3px solid #D4739A !important;\n}\n.k-row.e {\n  --k-color: #C62828 !important;\n  --k-bg: linear-gradient(90deg, rgba(255,235,238,0.9) 0%, rgba(255,255,255,0.85) 100%) !important;\n  --k-glow: rgba(198,40,40,0.15) !important;\n  --k-bar-color: linear-gradient(90deg, #C62828, #E53935) !important;\n  --k-tag-bg: linear-gradient(135deg, #C62828, #8B0000) !important;\n  --k-tag-shadow: rgba(139,0,0,0.4) !important;\n  border: 1px solid rgba(198,40,40,0.2) !important;\n  border-left: 3px solid #C62828 !important;\n}\n.k-txt { display: flex !important; flex-direction: column !important; margin-bottom: 8px !important; position: relative !important; z-index: 1 !important; }\n.k-txt b { font-size: 13px !important; font-weight: 700 !important; letter-spacing: 1.5px !important; margin-bottom: 3px !important; }\n.k-row.g .k-txt b { color: #A8456E !important; }\n.k-row.e .k-txt b { color: #8B0000 !important; }\n.k-txt i { color: #5D4037 !important; font-size: 11px !important; font-style: normal !important; opacity: 0.9 !important; line-height: 1.5 !important; }\n.k-bar {\n  height: 12px !important; background: rgba(212,115,154,0.06) !important;\n  border-radius: 6px !important; position: relative !important;\n  overflow: hidden !important; border: 1px solid rgba(212,115,154,0.1) !important; z-index: 1 !important;\n}\n.k-bar::after {\n  content: '' !important; position: absolute !important; top: 1px !important;\n  left: 1px !important; bottom: 1px !important;\n  width: calc(var(--p) - 2px) !important; background: var(--k-bar-color) !important;\n  border-radius: 5px !important; transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1) !important;\n}\n.k-bar::before {\n  content: '' !important; position: absolute !important; top: 0 !important; left: -100% !important;\n  width: 100% !important; height: 100% !important;\n  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent) !important;\n  animation: k-bar-shimmer 2.5s ease-in-out infinite !important; z-index: 2 !important;\n}\n.k-bar span {\n  position: absolute !important; width: 100% !important; text-align: center !important;\n  font-size: 9px !important; line-height: 12px !important; color: #3D1F33 !important;\n  font-weight: 700 !important; z-index: 3 !important; letter-spacing: 1px !important;\n  text-shadow: 0 0 3px rgba(255,255,255,0.8) !important;\n}\n.k-row.e.pulse { animation: k-danger-pulse 1.2s ease-in-out infinite !important; }\n.k-row.g.pulse { animation: k-fortune-pulse 2s ease-in-out infinite !important; }\n.k-foot {\n  text-align: center !important; padding: 10px 12px !important;\n  border-top: 1px solid rgba(212,115,154,0.08) !important;\n  background: linear-gradient(90deg, rgba(240,198,216,0.04), rgba(255,245,248,0.5), rgba(198,40,40,0.02)) !important;\n  font-size: 10px !important; color: #A8456E !important;\n  font-weight: 600 !important; letter-spacing: 3px !important;\n}\n.k-foot::before { content: '🌸' !important; margin-right: 8px !important; font-size: 8px !important; }\n.k-foot::after { content: '♪' !important; margin-left: 8px !important; color: #D4739A !important; font-size: 8px !important; }\n.k-none {\n  text-align: center !important; color: #A8456E !important; font-size: 13px !important;\n  padding: 24px 14px !important; font-weight: 600 !important;\n  letter-spacing: 2px !important; opacity: 0.8 !important;\n}\n.k-none::before {\n  content: '🌸' !important; display: block !important; font-size: 28px !important;\n  margin-bottom: 10px !important; animation: k-petal-spin 10s linear infinite !important;\n}\n\n/* --- 4.9. 选项按钮 --- */\n.markdown-body { counter-reset: option-counter; }\npre {\n  position: relative !important; margin: 8px 0 !important; overflow: hidden !important;\n  border-radius: 12px !important; background: transparent !important;\n  border: none !important; box-shadow: none !important; padding: 0 !important;\n  min-height: 55px;\n}\npre div[class*=\"border-b\"] {\n  position: absolute !important; top: 0 !important; left: 0 !important;\n  width: 100% !important; height: 100% !important; border: none !important;\n  background: transparent !important; padding: 0 !important; margin: 0 !important;\n  z-index: 2; pointer-events: none;\n}\npre div[class*=\"border-b\"] > div:first-child { display: none !important; }\npre div[data-tooltip-id] {\n  position: absolute !important; top: 0; left: 0; width: 100% !important;\n  height: 100% !important; margin: 0 !important; padding: 0 !important;\n  display: block !important; cursor: pointer !important; background: transparent !important;\n  border: none !important; pointer-events: auto; z-index: 3;\n}\npre div[data-tooltip-id] .style_copyIcon__GJL9e { display: none !important; }\npre div[node=\"[object Object]\"] {\n  position: relative; z-index: 1; display: block !important; pointer-events: none;\n  background: rgba(255,250,252,0.95) !important;\n  border: 1px solid rgba(212,115,154,0.2) !important;\n  border-left: 3px solid #D4739A !important;\n  box-shadow: 0 4px 15px rgba(61,31,51,0.06) !important;\n  color: #3D1F33 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  font-size: 1.05em !important; padding: 14px 20px 14px 60px !important;\n  margin: 0 !important; border-radius: 12px !important; min-height: 55px;\n  white-space: pre-wrap; word-break: break-word; transition: all 0.3s ease;\n  counter-increment: option-counter;\n  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);\n}\npre div[node=\"[object Object]\"]::before {\n  content: counter(option-counter); display: flex; align-items: center;\n  justify-content: center; position: absolute; left: 16px; top: 50%;\n  transform: translateY(-50%); width: 28px; height: 28px;\n  background: linear-gradient(135deg, #D4739A, #A8456E) !important;\n  color: #fff; border-radius: 50%; font-size: 0.95em; font-weight: 700;\n  border: 2px solid rgba(240,198,216,0.4);\n  box-shadow: 0 2px 8px rgba(212,115,154,0.35); z-index: 2;\n}\npre div[node=\"[object Object]\"] code {\n  display: block; color: inherit !important; background: transparent !important;\n  padding: 0 !important; margin: 0 !important;\n  font-family: inherit !important; font-size: inherit !important; white-space: pre-wrap;\n}\npre div[data-tooltip-id]::before {\n  content: '選択'; position: absolute; top: 50%; right: 18px;\n  transform: translateY(-50%) scale(0.9);\n  background: linear-gradient(135deg, #D4739A, #A8456E);\n  color: #ffffff; font-size: 0.85em; font-weight: 700;\n  font-family: 'Georgia', serif; padding: 6px 14px; border-radius: 10px;\n  letter-spacing: 2px; opacity: 0; visibility: hidden;\n  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);\n  pointer-events: none; z-index: 5;\n  box-shadow: 0 4px 12px rgba(212,115,154,0.3);\n  border: 1px solid rgba(240,198,216,0.3);\n}\npre:hover div[data-tooltip-id]::before { opacity: 1; visibility: visible; transform: translateY(-50%) scale(1); }\npre:hover div[node=\"[object Object]\"] {\n  transform: translateY(-3px);\n  box-shadow: 0 8px 25px rgba(61,31,51,0.12) !important;\n  background: rgba(255,255,255,0.98) !important; border-color: #D4739A !important;\n}\npre:active div[node=\"[object Object]\"] {\n  transform: translateY(1px) !important;\n  background: rgba(255,240,245,0.95) !important; border-color: #A8456E !important;\n}\npre:active div[data-tooltip-id]::before {\n  content: '選択完了 ✓'; background: linear-gradient(135deg, #A8456E, #7B3355);\n}\n\n/* --- 4.10. 其他UI组件 --- */\n.doc {\n  background: #FFFAFC; border: 1px solid rgba(212,115,154,0.15);\n  border-left: 3px solid #D4739A; border-radius: 12px;\n  padding: 16px 20px; margin: 16px 0; position: relative;\n  font-family: 'Georgia', serif; box-shadow: 0 3px 12px rgba(61,31,51,0.04);\n  overflow: hidden;\n}\n.doc::before {\n  content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%;\n  background: repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(212,115,154,0.02) 1px, rgba(212,115,154,0.02) 2px);\n  pointer-events: none; z-index: 0;\n}\n.doc::after {\n  content: '🌸 通信 //'; position: absolute; top: 10px; right: 15px;\n  font-size: 0.65em; color: #A8456E; letter-spacing: 3px; font-weight: 700;\n  animation: bloom-glow 4s ease-in-out infinite; z-index: 2;\n}\n.doc > * { position: relative; z-index: 1; }\n.doc .title {\n  color: #A8456E; font-size: 1.3em; font-weight: 700; margin: 0 0 14px 0;\n  padding-bottom: 10px; border-bottom: 1px solid rgba(212,115,154,0.15);\n  letter-spacing: 2px; font-family: 'Georgia', serif;\n}\n.doc .title::before { content: '♪'; margin-right: 12px; color: #D4739A; display: inline-block; }\n.doc .content { color: #3D1F33; font-size: 0.95em; line-height: 1.7; }\n.doc .content p { margin: 0 0 0.8em 0; text-align: justify; }\n.doc .content p:last-child { margin-bottom: 0; }\n\n/* 进度条 */\n.progress-bar-container {\n  position: relative; width: 100%; height: 20px;\n  background: rgba(240,198,216,0.15);\n  border: 1px solid rgba(212,115,154,0.15);\n  border-radius: 10px; margin: 8px 0; overflow: hidden;\n  box-shadow: inset 0 1px 4px rgba(61,31,51,0.04);\n}\n.progress-bar-container.hp { border-color: rgba(212,115,154,0.25); }\n.progress-bar-container.sp { border-color: rgba(94,141,184,0.25); }\n.progress-bar-container.armor { border-color: rgba(155,89,168,0.25); }\n.progress-bar-fill {\n  position: absolute; left: 0; top: 0; height: 100%;\n  transition: width 0.7s ease-out;\n  box-shadow: inset 0 0 8px rgba(255,255,255,0.4);\n}\n.progress-bar-container.hp .progress-bar-fill { background: linear-gradient(90deg, #D4739A 0%, #E08AAE 100%); }\n.progress-bar-container.sp .progress-bar-fill { background: linear-gradient(90deg, #5E8DB8 0%, #7BA7CC 100%); }\n.progress-bar-container.armor .progress-bar-fill { background: linear-gradient(90deg, #9B59A8 0%, #B87CC0 100%); }\n.progress-bar-label {\n  position: absolute; left: 8px; top: 50%; transform: translateY(-50%);\n  font-weight: 700; font-size: 0.75em; color: #fff;\n  text-shadow: 0 0 3px rgba(61,31,51,0.5); z-index: 2; font-family: 'Georgia', serif;\n}\n.progress-bar-value {\n  position: absolute; right: 8px; top: 50%; transform: translateY(-50%);\n  font-weight: 700; font-size: 0.75em; color: #3D1F33;\n  text-shadow: 0 1px 2px rgba(255,255,255,0.8); z-index: 2; font-family: 'Consolas', monospace;\n}\n\n.classUI-story {\n  background: rgba(255,255,255,0.7);\n  border: 1px solid rgba(212,115,154,0.12);\n  border-radius: 12px; padding: 16px 20px; margin: 16px 0;\n  color: #3D1F33; font-size: 16px; line-height: 1.8;\n  box-shadow: 0 4px 12px rgba(61,31,51,0.04);\n  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);\n  position: relative; letter-spacing: 0.5px;\n}\n.classUI-story::before, .classUI-story::after {\n  content: ''; position: absolute; width: 14px; height: 14px;\n  border-color: rgba(212,115,154,0.25); border-style: solid; transition: all 0.4s ease;\n}\n.classUI-story::before { top: 8px; left: 8px; border-width: 2px 0 0 2px; border-radius: 4px 0 0 0; }\n.classUI-story::after { bottom: 8px; right: 8px; border-width: 0 2px 2px 0; border-radius: 0 0 4px 0; }\n.classUI-story:hover::before, .classUI-story:hover::after { border-color: #D4739A; }\n\n.classUI-subsection {\n  font-weight: 700; color: #A8456E; margin: 16px 0 10px 0;\n  padding-bottom: 8px; border-bottom: 1px solid rgba(212,115,154,0.15);\n  font-size: 15px; letter-spacing: 1.2px; font-family: 'Georgia', serif;\n}\n.classUI-npc-card {\n  background: rgba(255,255,255,0.8); border: 1px solid rgba(212,115,154,0.08);\n  border-radius: 12px; padding: 14px; margin: 12px 0;\n  box-shadow: 0 2px 8px rgba(61,31,51,0.04);\n  backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px);\n  transition: all 0.4s ease;\n}\n.classUI-npc-card:hover { background: rgba(255,255,255,0.95); border-color: rgba(212,115,154,0.2); }\n.classUI-npc-name {\n  font-size: 17px; font-weight: 700; color: #3D1F33;\n  margin-bottom: 12px; padding-bottom: 10px;\n  border-bottom: 1px solid rgba(212,115,154,0.15);\n  letter-spacing: 1.2px; font-family: 'Georgia', serif;\n}\n.classUI-memory { background: transparent; border-color: rgba(212,115,154,0.08); padding-bottom: 0; }\n.classUI-memory-section { margin: 0 0 16px 0; padding: 0; background: transparent; border: none; }\n\n.classUI-table {\n  width: 100%; border-collapse: collapse; margin-top: 10px;\n  border-radius: 12px; overflow: hidden; border: 1px solid rgba(212,115,154,0.15);\n}\n.classUI-table thead th {\n  background: #FFE8F0; color: #3D1F33; padding: 10px; font-weight: 700;\n  font-size: 14px; text-align: center; border-bottom: 2px solid #D4739A;\n  font-family: 'Georgia', serif;\n}\n.classUI-table tbody td {\n  padding: 10px; border-bottom: 1px solid rgba(212,115,154,0.08);\n  background: #FFFAFC; font-size: 14px; color: #3D1F33;\n  vertical-align: middle; transition: background-color 0.4s ease;\n  font-family: 'Consolas', monospace;\n}\n.classUI-table tbody tr:last-child td { border-bottom: none; }\n.classUI-table tbody tr:hover td { background: #FFF5F8; }\n\n.classUI-actions {\n  background: rgba(255,255,255,0.85); border: 1px solid rgba(212,115,154,0.15);\n  border-radius: 12px; padding: 16px 20px; margin-top: 16px;\n  color: #3D1F33; font-weight: 600; font-size: 16px; line-height: 1.8;\n  box-shadow: 0 4px 12px rgba(61,31,51,0.04);\n  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); letter-spacing: 0.5px;\n}\n.styled-prose-container wealth_info,\n.styled-prose-container item_list,\n.styled-prose-container spell_card_list {\n  display: block; margin: 12px 0; padding: 12px 16px;\n  background: #FFFAFC; border: 1px solid rgba(212,115,154,0.12);\n  border-left: 3px solid #D4739A; border-radius: 12px;\n  font-family: 'Georgia', serif; line-height: 1.8;\n  box-shadow: inset 0 0 10px rgba(255,245,248,0.8);\n  transition: all 0.4s ease; position: relative; overflow: visible;\n}\n.styled-prose-container wealth_info:hover,\n.styled-prose-container item_list:hover,\n.styled-prose-container spell_card_list:hover { background: #FFFFFF; border-color: rgba(212,115,154,0.25); }\n.styled-prose-container wealth_info > span,\n.styled-prose-container item_list > span,\n.styled-prose-container spell_card_list > span {\n  display: block; color: #A8456E; font-weight: 700; margin-bottom: 8px;\n  font-size: 14px; font-family: 'Georgia', serif; letter-spacing: 1.2px;\n}\n.styled-prose-container spell_card_list info {\n  display: inline-block; color: #C62828; font-weight: 600;\n  font-size: 14px; margin-right: 6px; font-family: 'Georgia', serif;\n}\n.tip-r {\n  display: block; color: #C62828 !important;\n  background: rgba(198,40,40,0.06); border: 1px solid rgba(198,40,40,0.25);\n  border-radius: 8px; padding: 8px 12px; margin-bottom: 12px;\n  font-weight: 700; font-size: 14px; text-align: center;\n  animation: ribbon-breathe 3.5s infinite ease-in-out; font-family: 'Georgia', serif;\n}\n\n/* 通讯模块 */\n/* ── news: 社交媒体 Timeline — 仿 Twitter/X 精致版 ── */\n.styled-prose-container news {\n  display: block !important; margin: 20px 0 !important; padding: 0 !important;\n  background: #FFFFFF !important;\n  border: 1px solid rgba(207,217,222,0.7) !important;\n  border-radius: 16px !important;\n  position: relative !important; overflow: hidden !important;\n  box-shadow: 0 1px 3px rgba(0,0,0,0.04) !important;\n  font-family: -apple-system, 'Helvetica Neue', 'Segoe UI', 'Hiragino Sans', 'Noto Sans JP', sans-serif !important;\n}\n\n/* 顶栏 — 毛玻璃标题 */\n.styled-prose-container news h3 {\n  font-size: 16px !important; font-weight: 800 !important;\n  margin: 0 !important; padding: 14px 16px !important;\n  background: rgba(255,255,255,0.85) !important;\n  backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important;\n  color: #0F1419 !important; letter-spacing: 0 !important;\n  font-family: -apple-system, 'Helvetica Neue', 'Segoe UI', 'Hiragino Sans', 'Noto Sans JP', sans-serif !important;\n  border-bottom: 1px solid rgba(207,217,222,0.6) !important;\n  position: sticky !important; top: 0 !important; z-index: 10 !important;\n  line-height: 1.3 !important;\n}\n.styled-prose-container news h3::before {\n  content: none !important;\n}\n\n/* ── 帖子卡片 ── */\n.styled-prose-container news item {\n  display: grid !important;\n  grid-template-columns: 40px 1fr !important;\n  grid-template-rows: auto auto auto !important;\n  gap: 0 12px !important;\n  margin: 0 !important;\n  padding: 14px 16px !important;\n  background: #FFFFFF !important;\n  border-radius: 0 !important; border-left: none !important;\n  border-bottom: 1px solid rgba(207,217,222,0.5) !important;\n  position: relative !important;\n  line-height: 1.5 !important; font-size: 15px !important;\n  color: #0F1419 !important;\n  transition: background 0.15s ease !important;\n}\n.styled-prose-container news item:last-child { border-bottom: none !important; }\n.styled-prose-container news item:hover {\n  background: rgba(0,0,0,0.015) !important; transform: none !important;\n}\n\n/* 头像 — label 变成圆形头像 */\n.styled-prose-container news item label {\n  grid-column: 1 !important; grid-row: 1 / -1 !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  width: 40px !important; height: 40px !important; min-width: 40px !important;\n  border-radius: 50% !important;\n  margin: 0 !important; padding: 0 !important;\n  font-size: 10.5px !important; font-weight: 700 !important;\n  letter-spacing: 0 !important; line-height: 1.15 !important;\n  text-align: center !important; overflow: hidden !important;\n  color: #fff !important;\n  box-shadow: none !important;\n  position: relative !important; flex-shrink: 0 !important;\n  border: none !important;\n  transition: transform 0.2s ease !important;\n}\n.styled-prose-container news item label:hover { transform: scale(1.05) !important; }\n\n/* .h 帖子 — 热门/官方 (玫瑰红头像) */\n.styled-prose-container news item.h { border-left: none !important; }\n.styled-prose-container news item.h label {\n  background: linear-gradient(135deg, #FF6B81 0%, #E84057 100%) !important;\n}\n/* .h 底部互动栏 */\n.styled-prose-container news item.h::after {\n  content: '♡ · 💬 · ↻' !important;\n  grid-column: 2 !important;\n  display: flex !important; gap: 0 !important;\n  margin-top: 10px !important;\n  font-size: 13px !important; color: #536471 !important;\n  letter-spacing: 8px !important;\n  position: static !important; transform: none !important;\n  width: auto !important; height: auto !important;\n  background: none !important; border-radius: 0 !important;\n  box-shadow: none !important;\n  pointer-events: auto !important;\n}\n\n/* .e 帖子 — 圈内动态 (紫蓝头像) */\n.styled-prose-container news item.e { border-left: none !important; }\n.styled-prose-container news item.e label {\n  background: linear-gradient(135deg, #9B72CF 0%, #7B5EAE 100%) !important;\n}\n.styled-prose-container news item.e::after {\n  content: '♡ · 💬 · ↻' !important;\n  grid-column: 2 !important;\n  display: flex !important; margin-top: 10px !important;\n  font-size: 13px !important; color: #536471 !important;\n  letter-spacing: 8px !important;\n  position: static !important; transform: none !important;\n  width: auto !important; height: auto !important;\n  background: none !important; border-radius: 0 !important;\n  box-shadow: none !important;\n}\n\n/* .t 帖子 — 传闻/八卦 (薄荷绿头像) */\n.styled-prose-container news item.t { border-left: none !important; }\n.styled-prose-container news item.t label {\n  background: linear-gradient(135deg, #5BC0A0 0%, #3DA882 100%) !important;\n}\n.styled-prose-container news item.t::after {\n  content: '♡ · 💬 · ↻' !important;\n  grid-column: 2 !important;\n  display: flex !important; margin-top: 10px !important;\n  font-size: 13px !important; color: #536471 !important;\n  letter-spacing: 8px !important;\n  position: static !important; transform: none !important;\n  width: auto !important; height: auto !important;\n  background: none !important; border-radius: 0 !important;\n  box-shadow: none !important;\n}\n\n/* .m 帖子 — 备用 (天蓝头像) */\n.styled-prose-container news item.m { border-left: none !important; }\n.styled-prose-container news item.m label {\n  background: linear-gradient(135deg, #5B9BD5 0%, #4A88C0 100%) !important;\n}\n.styled-prose-container news item.m::after {\n  content: '♡ · 💬 · ↻' !important;\n  grid-column: 2 !important;\n  display: flex !important; margin-top: 10px !important;\n  font-size: 13px !important; color: #536471 !important;\n  letter-spacing: 8px !important;\n  position: static !important; transform: none !important;\n  width: auto !important; height: auto !important;\n  background: none !important; border-radius: 0 !important;\n  box-shadow: none !important;\n}\n\n/* ── 帖子左侧蓝色认证点 (热门帖子) ── */\n.styled-prose-container news item.h label::after {\n  content: '✓' !important; position: absolute !important;\n  bottom: -2px !important; right: -2px !important;\n  width: 16px !important; height: 16px !important;\n  background: #1D9BF0 !important; border-radius: 50% !important;\n  border: 2px solid #fff !important;\n  font-size: 8px !important; color: #fff !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  line-height: 1 !important;\n}\n\n/* ═══════════════════════════════════════════════\n * board: 私信通讯 — 樱花风格版\n * ═══════════════════════════════════════════════ */\n.styled-prose-container board {\n  display: block !important; margin: 20px 0 !important; padding: 0 !important;\n  background: linear-gradient(180deg, #FFF5F8 0%, #FFE8F0 50%, #FFF0F5 100%) !important;\n  background-image:\n    url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400'%3E%3Cdefs%3E%3CradialGradient id='sb1'%3E%3Cstop offset='0%25' stop-color='%23D4739A' stop-opacity='0.06'/%3E%3Cstop offset='100%25' stop-color='%23D4739A' stop-opacity='0'/%3E%3C/radialGradient%3E%3CradialGradient id='sb2'%3E%3Cstop offset='0%25' stop-color='%23F0C6D8' stop-opacity='0.08'/%3E%3Cstop offset='100%25' stop-color='%23F0C6D8' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='80' cy='120' r='60' fill='url(%23sb1)'/%3E%3Ccircle cx='320' cy='80' r='45' fill='url(%23sb2)'/%3E%3Ccircle cx='200' cy='300' r='70' fill='url(%23sb1)'/%3E%3Ccircle cx='350' cy='350' r='40' fill='url(%23sb2)'/%3E%3Cg opacity='0.04'%3E%3Ctext x='50' y='200' font-size='24' fill='%23D4739A' font-family='Georgia'%3E%E2%99%AA%3C/text%3E%3Ctext x='300' y='150' font-size='18' fill='%23A8456E' font-family='Georgia'%3E%E2%99%AB%3C/text%3E%3Ctext x='150' y='350' font-size='20' fill='%23F0C6D8' font-family='Georgia'%3E%E2%99%A9%3C/text%3E%3C/g%3E%3C/svg%3E\"),\n    linear-gradient(180deg, #FFF5F8 0%, #FFE8F0 50%, #FFF0F5 100%) !important;\n  border: 1px solid rgba(212,115,154,0.2) !important; border-radius: 16px !important;\n  position: relative !important; overflow: hidden !important;\n  box-shadow: 0 4px 20px rgba(61,31,51,0.06) !important;\n  font-family: -apple-system, 'Helvetica Neue', 'Hiragino Sans', 'Noto Sans JP', sans-serif !important;\n}\n\n/* 顶栏 — 樱花渐变 */\n.styled-prose-container board h3 {\n  font-size: 16px !important; font-weight: 700 !important;\n  margin: 0 !important; padding: 14px 50px !important;\n  background: linear-gradient(135deg,\n    rgba(212,115,154,0.95) 0%,\n    rgba(168,69,110,0.9) 100%) !important;\n  backdrop-filter: blur(16px) !important; -webkit-backdrop-filter: blur(16px) !important;\n  color: #fff !important; letter-spacing: 1.5px !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  border-bottom: 1px solid rgba(168,69,110,0.3) !important;\n  text-align: center !important;\n  position: relative !important;\n  text-shadow: 0 1px 3px rgba(100,30,55,0.3) !important;\n}\n.styled-prose-container board h3::before {\n  content: '🌸' !important; margin-right: 0 !important;\n  font-size: 16px !important; font-weight: 300 !important;\n  position: absolute !important; left: 16px !important; top: 50% !important;\n  transform: translateY(-50%) !important;\n  opacity: 0.85 !important;\n}\n.styled-prose-container board h3::after {\n  content: '♪' !important; position: absolute !important;\n  right: 16px !important; top: 50% !important; transform: translateY(-50%) !important;\n  font-size: 16px !important; color: rgba(255,255,255,0.6) !important;\n  font-family: 'Georgia', serif !important;\n  width: auto !important; height: auto !important;\n  background-image: none !important;\n}\n\n/* ── 聊天气泡区 ── */\n.styled-prose-container board item {\n  display: grid !important;\n  grid-template-columns: 40px 1fr !important;\n  gap: 0 10px !important;\n  margin: 0 !important; padding: 8px 14px !important;\n  background: transparent !important;\n  border-radius: 0 !important; border-left: none !important;\n  position: relative !important; line-height: 1.55 !important;\n  font-size: 14px !important; color: #3D1F33 !important;\n  transition: none !important;\n  align-items: start !important;\n}\n.styled-prose-container board item:first-of-type { padding-top: 14px !important; }\n.styled-prose-container board item:last-of-type { padding-bottom: 16px !important; }\n.styled-prose-container board item:hover {\n  background: transparent !important; transform: none !important;\n}\n\n/* 头像 */\n.styled-prose-container board item label {\n  grid-column: 1 !important; grid-row: 1 / -1 !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  width: 40px !important; height: 40px !important; min-width: 40px !important;\n  border-radius: 50% !important;\n  margin: 0 !important; padding: 0 !important;\n  font-size: 10px !important; font-weight: 700 !important;\n  letter-spacing: 0 !important; line-height: 1.15 !important;\n  text-align: center !important; overflow: hidden !important;\n  color: #fff !important;\n  box-shadow: 0 2px 8px rgba(61,31,51,0.1) !important;\n  position: relative !important; flex-shrink: 0 !important;\n  border: 2px solid rgba(255,255,255,0.8) !important;\n  align-self: start !important; margin-top: 2px !important;\n  transition: transform 0.2s ease !important;\n}\n.styled-prose-container board item label:hover { transform: scale(1.05) !important; }\n\n/* 队友 — 樱瓣粉 */\n.styled-prose-container board item.c label {\n  background: linear-gradient(135deg, #D4739A 0%, #A8456E 100%) !important;\n}\n/* 其他角色 — 薰衣草紫 */\n.styled-prose-container board item.r label {\n  background: linear-gradient(135deg, #B07CC6 0%, #9060A8 100%) !important;\n}\n/* 公告 — 暖橙 */\n.styled-prose-container board item.w label {\n  background: linear-gradient(135deg, #E8A87C 0%, #D4956A 100%) !important;\n}\n/* .m 备用 — 天空蓝 */\n.styled-prose-container board item.m label {\n  background: linear-gradient(135deg, #7BA7CC 0%, #5E8DB8 100%) !important;\n}\n\n/* ── 气泡样式 — 白色卡片 + 清晰文字 ── */\n.styled-prose-container board item.c,\n.styled-prose-container board item.r,\n.styled-prose-container board item.m {\n  grid-template-rows: auto !important;\n}\n\n/* 所有非公告消息添加白色气泡背景 */\n.styled-prose-container board item:not(.w)::before {\n  content: '' !important;\n  position: absolute !important;\n  top: 6px !important; left: 58px !important; right: 14px !important; bottom: 6px !important;\n  background: rgba(255,255,255,0.92) !important;\n  border-radius: 4px 16px 16px 16px !important;\n  border: 1px solid rgba(212,115,154,0.1) !important;\n  box-shadow: 0 1px 4px rgba(61,31,51,0.05) !important;\n  z-index: 0 !important;\n  pointer-events: none !important;\n}\n\n/* 气泡内文字确保在白色背景之上 */\n.styled-prose-container board item > *:not(label) {\n  position: relative !important;\n  z-index: 1 !important;\n}\n\n/* 气泡三角 — 左侧小尖角（白色） */\n.styled-prose-container board item::after {\n  content: '' !important;\n  position: absolute !important;\n  left: 53px !important; top: 18px !important;\n  width: 0 !important; height: 0 !important;\n  border-top: 6px solid transparent !important;\n  border-bottom: 6px solid transparent !important;\n  border-right: 7px solid rgba(255,255,255,0.92) !important;\n  background: none !important; transform: none !important;\n  box-shadow: none !important; border-radius: 0 !important;\n  z-index: 1 !important; pointer-events: none !important;\n  margin-top: 0 !important;\n}\n.styled-prose-container board item:first-of-type::after { top: 24px !important; }\n\n/* 文字颜色确保清晰 */\n.styled-prose-container board item:not(.w) {\n  color: #3D1F33 !important;\n  font-size: 14px !important;\n  font-weight: 500 !important;\n}\n\n/* ── 公告消息 — 居中系统通知 ── */\n.styled-prose-container board item.w {\n  display: flex !important; justify-content: center !important;\n  text-align: center !important;\n  padding: 4px 14px !important;\n}\n.styled-prose-container board item.w::before { display: none !important; }\n.styled-prose-container board item.w label {\n  width: auto !important; height: auto !important; min-width: 0 !important;\n  border-radius: 14px !important; padding: 4px 14px !important;\n  font-size: 11px !important; font-weight: 500 !important;\n  background: rgba(168,69,110,0.12) !important;\n  color: #A8456E !important; border: 1px solid rgba(212,115,154,0.2) !important;\n  box-shadow: none !important;\n  grid-column: auto !important; grid-row: auto !important;\n}\n.styled-prose-container board item.w::after { display: none !important; }\n\n/* ── 未读标记 — 小樱花代替红点 ── */\n.styled-prose-container board item.c label::after,\n.styled-prose-container board item.r label::after {\n  content: '🌸' !important; position: absolute !important;\n  top: -4px !important; right: -4px !important;\n  width: auto !important; height: auto !important;\n  font-size: 10px !important;\n  background: none !important; border-radius: 0 !important;\n  border: none !important;\n  box-shadow: none !important;\n}\n\n/* ── 消息分隔 ── */\n.styled-prose-container board item.c + item.c,\n.styled-prose-container board item.r + item.r,\n.styled-prose-container board item.c + item.r,\n.styled-prose-container board item.r + item.c {\n  margin-top: 2px !important;\n}\n\n/* ── 底部输入栏装饰 — 樱花风格 ── */\n.styled-prose-container board::after {\n  content: '' !important;\n  display: block !important;\n  height: 44px !important;\n  background: linear-gradient(180deg, rgba(255,240,245,0.95) 0%, rgba(255,232,240,0.98) 100%) !important;\n  border-top: 1px solid rgba(212,115,154,0.15) !important;\n  position: relative !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 44'%3E%3Crect x='12' y='8' width='240' height='28' rx='14' fill='%23fff' stroke='%23F0C6D8' stroke-width='1'/%3E%3Ctext x='26' y='27' font-size='13' fill='%23D4739A' font-family='Georgia'%3EAa%3C/text%3E%3Ccircle cx='280' cy='22' r='14' fill='%23D4739A'/%3E%3Cpath d='M274,22 L278,26 L286,18' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ctext x='300' y='27' font-size='12' fill='%23F0C6D8' font-family='Georgia'%3E%E2%99%AA%3C/text%3E%3C/svg%3E\") !important;\n  background-size: 100% 100% !important; background-repeat: no-repeat !important;\n  background-position: center !important;\n}\n\n/* =============================================\n * 5. 系统覆盖\n * ============================================= */\n.group.ml-0 > .flex.items-start.gap-2 {\n  font-family: 'Georgia', serif !important;\n  background-color: #FFFAFC !important; border-radius: 12px !important;\n  padding: 12px 16px !important; width: 100% !important;\n  box-shadow: 0 3px 10px rgba(61,31,51,0.04) !important;\n  border: 1px solid rgba(212,115,154,0.1) !important;\n  transition: all 0.4s ease !important;\n}\n.group.ml-0 > .flex.items-start.gap-2:hover {\n  transform: translateY(-2px) !important;\n  box-shadow: 0 6px 18px rgba(61,31,51,0.08) !important;\n  background-color: #FFFFFF !important;\n  border-color: rgba(212,115,154,0.25) !important;\n}\n.group.ml-0 .break-all { white-space: pre-wrap !important; line-height: 1.6 !important; color: #3D1F33 !important; }\n.group.ml-0 > .flex.items-start.gap-2 .text-grey-600,\n.group.ml-0 > .flex.items-start.gap-2 .text-gray-500,\n.group.ml-0 > .flex.items-start.gap-2 .text-gray-400,\n.group.ml-0 > .flex.items-start.gap-2 .font-bold { color: #3D1F33 !important; }\ndiv.style_divider__mW0YX.style_horizontal__UvaHt {\n  margin-top: 10px !important; margin-bottom: 10px !important;\n  border-top: 1px solid rgba(212,115,154,0.15) !important; background: none !important;\n}\n.MuiButtonBase-root.MuiButton-root.css-1t7rg57,\n.MuiButtonBase-root.MuiButton-root {\n  font-family: 'Georgia', serif !important; font-weight: 700 !important;\n  font-size: 13px !important; letter-spacing: 1.2px !important;\n  color: #A8456E !important; background: transparent !important;\n  border: 1px solid rgba(212,115,154,0.3) !important;\n  padding: 4px 12px !important; border-radius: 12px !important;\n  transition: all 0.4s ease !important; position: relative !important; overflow: hidden !important;\n}\n.MuiButtonBase-root.MuiButton-root:hover {\n  color: #D4739A !important; background: rgba(212,115,154,0.08) !important;\n  border-color: #D4739A !important; transform: translateY(-2px);\n}\n\n/* 隐藏元素 */\nthink { display: none !important; }\n.mb-2 .shrink-0 { display: none; }\n[class*=\"bg-[#F1CBCB]\"], [class*=\"bg-[#c9e1e9]\"] { display: none; }\n\n/* =============================================\n * 6. 响应式 (Responsive)\n * ============================================= */\n@media (max-width: 768px) {\n  * { transition: none !important; }\n  .bubble:hover, .group.ml-0 > .flex.items-start.gap-2:hover,\n  .styled-prose-container details:hover,\n  pre:hover div[node=\"[object Object]\"] { transform: none !important; }\n\n  .bubble.npc, .bubble.user, .classUI-story, .classUI-npc-card, .classUI-actions,\n  div.group.relative > div.relative.inline-block.bg-gray-100\\/90,\n  .styled-prose-container T Ti, .sticky.w-full.top-0.flex.items-center,\n  .p-\\[5\\.5px\\].max-h-\\[150px\\],\n  div:has(> .style_dot-flashing__8L91Q.style_text__zGhNq),\n  div[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]),\n  div[class*=\"absolute\"][class*=\"bottom-0\"],\n  pre div[node=\"[object Object]\"],\n  #ai-chat-answer:last-of-type .env-sidebar[open],\n  #ai-chat-answer:last-of-type .u[open],\n  #ai-chat-answer:last-of-type .n[open],\n  #ai-chat-answer:last-of-type details.p[open],\n  #ai-chat-answer:last-of-type details.n[open],\n  #ai-chat-answer:last-of-type details.ship[open],\n  #ai-chat-answer:last-of-type details.m[open],\n  #ai-chat-answer:last-of-type details.e[open],\n  .chat-answer-container .bg-gray-100\\/90.relative.inline-block,\n  .bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90) {\n    backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n  }\n\n  .bubble.npc, .bubble.user { background: #FFFAFC; }\n  .classUI-story, div.group.relative > div.relative.inline-block.bg-gray-100\\/90 { background: #FFFFFF; }\n  div[class*=\"absolute\"][class*=\"bottom-0\"] { background: #FFF5F8; }\n\n  .chat, .bubble, .doc, .styled-prose-container details, .classUI-story,\n  .classUI-npc-card, .classUI-table, .classUI-actions,\n  .sticky.w-full.top-0.flex.items-center, .p-\\[5\\.5px\\].max-h-\\[150px\\],\n  #ai-chat-input, #ai-send-button,\n  div:has(> .style_dot-flashing__8L91Q.style_text__zGhNq),\n  .styled-prose-container T Ti, div[class*=\"absolute\"][class*=\"bottom-0\"],\n  div[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]),\n  #ai-chat-answer:last-of-type .env-sidebar[open],\n  #ai-chat-answer:last-of-type .u[open],\n  #ai-chat-answer:last-of-type .n[open],\n  #ai-chat-answer:last-of-type details.p[open],\n  #ai-chat-answer:last-of-type details.n[open],\n  #ai-chat-answer:last-of-type details.ship[open],\n  #ai-chat-answer:last-of-type details.m[open],\n  #ai-chat-answer:last-of-type details.e[open] { box-shadow: none !important; }\n\n  .bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::before {\n    width: 22px !important; height: 22px !important; top: -4px !important; right: -4px !important;\n  }\n  .bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::after {\n    width: 50px !important; height: 50px !important; bottom: -5px !important; left: -5px !important;\n  }\n\n  #ai-chat-answer:last-of-type .env-sidebar[open],\n  #ai-chat-answer:last-of-type .u[open],\n  #ai-chat-answer:last-of-type .n[open],\n  #ai-chat-answer:last-of-type details.p[open],\n  #ai-chat-answer:last-of-type details.n[open],\n  #ai-chat-answer:last-of-type details.ship[open],\n  #ai-chat-answer:last-of-type details.m[open] { width: 300px !important; }\n  #ai-chat-answer:last-of-type .env-sidebar:not([open]) > summary,\n  #ai-chat-answer:last-of-type .u:not([open]) > summary,\n  #ai-chat-answer:last-of-type .n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary {\n    width: 32px !important; min-height: 70px !important; font-size: 11px !important; letter-spacing: 2px !important;\n  }\n\n  /* 手机位置调整 */\n  #ai-chat-answer:last-of-type details.p  { top: 55px !important; }\n  #ai-chat-answer:last-of-type details.n,\n  #ai-chat-answer:last-of-type .n         { top: 140px !important; }\n  #ai-chat-answer:last-of-type details.ship { top: 225px !important; }\n  #ai-chat-answer:last-of-type details.m  { top: 320px !important; }\n\n  /* 手机上减弱标签装饰 */\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary::before,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary::before,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary::before,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary::before {\n    width: 14px !important; height: 14px !important; top: 5px !important;\n  }\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary::after,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary::after {\n    width: 12px !important; height: 12px !important; bottom: 5px !important;\n  }\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary { transition: none !important; }\n\n  details[inv] { --grid-size: 50px !important; --gap: 5px !important; --panel-h: 960px !important; }\n  details[inv] > summary { font-size: 13px !important; padding: 8px 12px 8px 32px !important; }\n  details[inv] > panel { padding: 32px 10px 10px 10px !important; }\n  details[inv] > panel > b { font-size: 10px !important; }\n  details[inv] > panel > b > i { width: 125px !important; max-width: 50vw !important; font-size: 10px !important; }\n\n  .k-track { margin: 10px 0 !important; }\n  .k-head { padding: 10px 14px 10px 38px !important; font-size: 13px !important; }\n  .k-row { padding: 8px 10px 8px 44px !important; }\n  .k-tag { width: 24px !important; height: 24px !important; font-size: 11px !important; }\n\n  pre div[node=\"[object Object]\"] {\n    padding: 12px 16px 12px 52px !important; font-size: 1em !important;\n    background: #FFFAFC !important;\n  }\n  pre div[node=\"[object Object]\"]::before { width: 24px; height: 24px; font-size: 0.85em; left: 14px; }\n  pre div[data-tooltip-id]::before { display: none !important; }\n\n  .top-info { margin: 12px 0 !important; background: #FFFAFC !important; }\n  .top-info > * { padding: 10px 12px 10px 60px !important; font-size: 13px !important; }\n  .top-info > *::before { left: 10px !important; font-size: 11px !important; padding: 3px 6px !important; }\n\n  /* news & board 手机适配 */\n  .styled-prose-container news { border-radius: 12px !important; }\n  .styled-prose-container news h3 {\n    font-size: 15px !important; padding: 12px 14px !important;\n    backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n  }\n  .styled-prose-container news item {\n    padding: 12px 14px !important; font-size: 14px !important;\n    grid-template-columns: 34px 1fr !important;\n  }\n  .styled-prose-container news item label {\n    width: 34px !important; height: 34px !important; min-width: 34px !important;\n    font-size: 9px !important;\n  }\n  .styled-prose-container news item label:hover { transform: none !important; }\n  .styled-prose-container news item:hover { background: #fff !important; }\n\n  .styled-prose-container board { border-radius: 12px !important; }\n  .styled-prose-container board h3 {\n    font-size: 15px !important; padding: 12px 44px !important;\n    backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n  }\n  .styled-prose-container board item {\n    grid-template-columns: 36px 1fr !important; padding: 7px 12px !important;\n  }\n  .styled-prose-container board item label {\n    width: 36px !important; height: 36px !important; min-width: 36px !important;\n    font-size: 9px !important;\n  }\n  .styled-prose-container board item label:hover { transform: none !important; }\n  .styled-prose-container board item:not(.w)::before {\n    left: 52px !important;\n  }\n  .styled-prose-container board item::after {\n    left: 47px !important;\n  }\n  .styled-prose-container board::after { height: 38px !important; }\n  \n  #ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n    font-size: 11px !important;\n    letter-spacing: 2px !important;\n    top: 28px !important;\n  }\n}\n\n@media (max-width: 480px) {\n  #ai-chat-answer:last-of-type .env-sidebar[open],\n  #ai-chat-answer:last-of-type .u[open],\n  #ai-chat-answer:last-of-type .n[open],\n  #ai-chat-answer:last-of-type details.p[open],\n  #ai-chat-answer:last-of-type details.n[open],\n  #ai-chat-answer:last-of-type details.ship[open],\n  #ai-chat-answer:last-of-type details.m[open] { width: 270px !important; }\n  #ai-chat-answer:last-of-type .env-sidebar:not([open]) > summary,\n  #ai-chat-answer:last-of-type .u:not([open]) > summary,\n  #ai-chat-answer:last-of-type .n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary {\n    width: 28px !important; min-height: 60px !important; font-size: 10px !important; letter-spacing: 1.5px !important;\n  }\n\n  #ai-chat-answer:last-of-type details.p  { top: 50px !important; }\n  #ai-chat-answer:last-of-type details.n,\n  #ai-chat-answer:last-of-type .n         { top: 120px !important; }\n  #ai-chat-answer:last-of-type details.ship { top: 190px !important; }\n  #ai-chat-answer:last-of-type details.m  { top: 265px !important; }\n\n  details[inv] { --grid-size: 44px !important; --gap: 4px !important; }\n  details[inv] > summary { font-size: 12px !important; padding: 6px 10px 6px 28px !important; }\n  details[inv] > panel > b { font-size: 9px !important; }\n  details[inv] > panel > b > i { width: 115px !important; font-size: 9px !important; }\n\n  .top-info > * { padding: 8px 10px 8px 55px !important; font-size: 12px !important; }\n  .top-info > *::before { left: 8px !important; font-size: 10px !important; }\n\n  .styled-prose-container news item { grid-template-columns: 30px 1fr !important; gap: 0 8px !important; }\n  .styled-prose-container news item label { width: 30px !important; height: 30px !important; min-width: 30px !important; }\n\n  /* Sakura board 手机适配 */\n  .styled-prose-container board item { grid-template-columns: 34px 1fr !important; gap: 0 8px !important; padding: 6px 10px !important; }\n  .styled-prose-container board item label { width: 34px !important; height: 34px !important; min-width: 34px !important; font-size: 9px !important; }\n  .styled-prose-container board item:not(.w)::before {\n    left: 48px !important; right: 10px !important;\n  }\n  .styled-prose-container board item::after {\n    left: 43px !important;\n  }\n  .styled-prose-container board::after { height: 34px !important; }\n  .styled-prose-container board item:hover { transform: none !important; }\n  \n  .styled-prose-container news item:hover { transform: none !important; }\n\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n    font-size: 10px !important;\n    letter-spacing: 1.5px !important;\n    top: 26px !important;\n  }\n}\n\n@media (prefers-reduced-motion: reduce) {\n  * { animation: none !important; }\n  .k-row.e.pulse, .k-row.g.pulse, .k-bar::before, .k-head::before,\n  .k-none::before, details[inv] > panel > b[q=\"yuangu\"] { animation: none !important; }\n  .k-bar::after { transition: none !important; }\n  .k-row:hover, details[inv] > panel > b:hover { transform: none !important; }\n  .chat-answer-container .bg-gray-100\\/90.relative.inline-block::before,\n  .chat-answer-container .bg-gray-100\\/90.relative.inline-block::after,\n  .bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::before,\n  .bg-gray-100\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\/90)::after { animation: none !important; }\n  .sticky.w-full.top-0.flex.items-center::before,\n  .sticky.w-full.top-0.flex.items-center::after { animation: none !important; }\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary { animation: none !important; }\n}\n\n/* =============================================\n * PATCH: details.p / details.n / details.ship / details.m — 少女乐队专用\n * (侧边栏化已在 §4.3 统一处理, 此处仅保留兜底)\n * ============================================= */\n\n/* =============================================\n * PATCH: details.e (第四侧边栏) — 樱花版 (v2 统一风格)\n * ============================================= */\n@keyframes sidebar-tab-glow-red {\n  0%, 100% { box-shadow: -2px 2px 12px rgba(198,96,96,0.25); }\n  50%  { box-shadow: -2px 2px 20px rgba(198,96,96,0.5), inset 0 0 20px rgba(255,255,255,0.08); }\n}\n\n.styled-prose-container details.e {\n  position: relative !important; width: 100% !important;\n  margin: 16px 0 !important; padding: 0 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  background: radial-gradient(circle, rgba(255,255,255,0.95) 0%, rgba(255,240,240,0.9) 100%) !important;\n  border: 2px solid rgba(198,96,96,0.25) !important;\n  border-left: 3px solid #C66060 !important;\n  border-radius: 12px !important; overflow: hidden !important;\n  transition: all 0.35s ease !important; box-shadow: none !important;\n}\n.styled-prose-container details.e > summary {\n  padding: 12px 16px !important;\n  background: linear-gradient(90deg, rgba(198,96,96,0.08), rgba(230,160,160,0.12), rgba(198,96,96,0.08)) !important;\n  color: #5A2020 !important; font-weight: 700 !important; font-size: 14px !important;\n  cursor: pointer !important; list-style: none !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  margin: 0 !important; border-bottom: 1px solid rgba(198,96,96,0.15) !important;\n  letter-spacing: 2px !important;\n}\n.styled-prose-container details.e > summary::-webkit-details-marker { display: none !important; }\n\n#ai-chat-answer:last-of-type:has(details.e) .chat,\n#ai-chat-answer:last-of-type:has(details.e) .bubble,\n#ai-chat-answer:last-of-type:has(details.e) div.group.relative > div.relative.inline-block.bg-gray-100\\/90 {\n  transform: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important;\n}\n\n#ai-chat-answer:last-of-type details.e {\n  position: fixed !important; right: 0 !important; z-index: 9998 !important;\n  width: auto !important; background: transparent !important; border: none !important;\n  box-shadow: none !important; margin: 0 !important; padding: 0 !important;\n  overflow: visible !important; top: 510px !important;\n  transform: none !important; backdrop-filter: none !important;\n}\n\n/* 折叠标签 — 暖红调 + SVG纹理 + 呼吸光晕 */\n#ai-chat-answer:last-of-type details.e:not([open]) > summary {\n  width: 38px !important; padding: 0 !important; margin: 0 !important;\n  background: linear-gradient(180deg, #E89898, #C66060, #A04040) !important;\n  color: #fff !important; border-radius: 14px 0 0 14px !important;\n  border: 1px solid rgba(230,160,160,0.5) !important; border-right: none !important;\n  writing-mode: vertical-rl !important; text-orientation: upright !important;\n  letter-spacing: 3px !important; text-align: center !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  height: auto !important; font-size: 13px !important;\n  text-shadow: 0 1px 3px rgba(100,30,30,0.4) !important;\n  animation: sidebar-tab-glow-red 4s ease-in-out infinite !important;\n  min-height: 80px !important;\n  position: relative !important; overflow: hidden !important;\n  /* 半透明花瓣纹理 */\n  background-image:\n    url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 38 200'%3E%3Cdefs%3E%3CradialGradient id='tg'%3E%3Cstop offset='0%25' stop-color='%23fff' stop-opacity='0.15'/%3E%3Cstop offset='100%25' stop-color='%23fff' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Cellipse cx='19' cy='50' rx='6' ry='4' fill='url(%23tg)' transform='rotate(20 19 50)'%3E%3Canimate attributeName='cy' values='50;55;50' dur='4s' repeatCount='indefinite'/%3E%3Canimate attributeName='opacity' values='0.3;0.6;0.3' dur='4s' repeatCount='indefinite'/%3E%3C/ellipse%3E%3Cellipse cx='25' cy='120' rx='5' ry='3' fill='url(%23tg)' transform='rotate(-15 25 120)'%3E%3Canimate attributeName='cy' values='120;126;120' dur='5s' repeatCount='indefinite' begin='1s'/%3E%3Canimate attributeName='opacity' values='0.2;0.5;0.2' dur='5s' repeatCount='indefinite' begin='1s'/%3E%3C/ellipse%3E%3C/svg%3E\") !important;\n  background-size: 100% 100% !important; background-repeat: no-repeat !important;\n}\n#ai-chat-answer:last-of-type details.e:not([open]) > summary::before {\n  content: '' !important; position: absolute !important;\n  top: 8px !important; left: 50% !important; transform: translateX(-50%) !important;\n  width: 16px !important; height: 16px !important;\n  background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8,2 L10,6 L14,6.5 L11,9.5 L12,14 L8,11.5 L4,14 L5,9.5 L2,6.5 L6,6 Z' fill='none' stroke='rgba(255,255,255,0.55)' stroke-width='1'/%3E%3C/svg%3E\") !important;\n  background-size: contain !important; background-repeat: no-repeat !important;\n  border: none !important; border-radius: 0 !important;\n}\n\n/* 展开面板 */\n#ai-chat-answer:last-of-type details.e[open] {\n  top: 60px !important; width: 350px !important; max-height: 70vh !important;\n  right: 35px !important; background: rgba(255,255,255,0.98) !important;\n  border: 2px solid #C66060 !important; border-right: none !important;\n  border-radius: 14px 0 0 14px !important;\n  box-shadow: -4px 4px 30px rgba(160,64,64,0.2), 0 0 60px rgba(230,160,160,0.12) !important;\n  overflow-y: auto !important; overflow-x: hidden !important;\n}\n#ai-chat-answer:last-of-type details.e[open] > summary {\n  writing-mode: horizontal-tb !important; padding: 14px 50px 14px 18px !important;\n  background: linear-gradient(135deg, #E89898, #C66060, #A04040) !important;\n  color: #fff !important; border-bottom: 2px solid rgba(255,255,255,0.2) !important;\n  border-radius: 12px 0 0 0 !important; margin-bottom: 0 !important;\n  position: sticky !important; top: 0 !important; z-index: 100 !important;\n  text-align: left !important; display: flex !important; justify-content: flex-start !important;\n  font-size: 15px !important; letter-spacing: 2.5px !important;\n  text-shadow: 0 1px 4px rgba(80,20,20,0.3) !important;\n  animation: none !important; min-height: 0 !important; box-shadow: none !important;\n}\n#ai-chat-answer:last-of-type details.e[open] > summary::before {\n  content: '⚡' !important; margin-right: 8px !important; font-size: 14px !important;\n  position: static !important; transform: none !important;\n  border: none !important; width: auto !important; height: auto !important;\n  background: none !important;\n}\n#ai-chat-answer:last-of-type details.e[open] > summary::after {\n  content: '×' !important; position: absolute !important; right: 14px; top: 50%;\n  transform: translateY(-50%); font-size: 22px !important;\n  color: rgba(255,255,255,0.7) !important; font-weight: 300 !important;\n}\n#ai-chat-answer:last-of-type details.e[open]::-webkit-scrollbar { width: 5px; }\n#ai-chat-answer:last-of-type details.e[open]::-webkit-scrollbar-track { background: rgba(198,96,96,0.06); }\n#ai-chat-answer:last-of-type details.e[open]::-webkit-scrollbar-thumb {\n  background: linear-gradient(180deg, rgba(198,96,96,0.35), rgba(160,64,64,0.25)); border-radius: 3px;\n}\n\n.ei-h {\n  display: flex !important; justify-content: space-between !important;\n  align-items: center !important; padding: 10px 14px !important;\n  margin: 14px 0 10px 0 !important;\n  background: linear-gradient(90deg, rgba(198,40,40,0.04), rgba(255,255,255,0.8), rgba(198,40,40,0.04)) !important;\n  border: 1px solid rgba(198,40,40,0.12) !important; border-radius: 8px !important;\n  font-size: 12px !important; color: #5D4037 !important; letter-spacing: 1px !important;\n}\n.ei-h > span:first-child::before { content: '🌸 ' !important; }\n.ei-h > span:last-child {\n  padding: 2px 10px !important; border-radius: 8px !important;\n  font-weight: 700 !important; font-size: 11px !important;\n  background: rgba(198,40,40,0.06) !important;\n  border: 1px solid rgba(198,40,40,0.15) !important; color: #C62828 !important;\n}\n.ei {\n  position: relative !important; margin: 10px 0 !important; padding: 12px 14px !important;\n  background: linear-gradient(135deg, rgba(255,255,255,0.9) 0%, rgba(255,250,252,0.85) 100%) !important;\n  border: 1px solid rgba(198,40,40,0.12) !important;\n  border-left: 3px solid #C62828 !important; border-radius: 0 12px 12px 0 !important;\n  transition: all 0.3s ease !important;\n}\n.ei:hover { background: rgba(255,255,255,0.98) !important; transform: translateX(3px) !important; }\n.ei-n {\n  display: flex !important; justify-content: space-between !important;\n  font-size: 14px !important; font-weight: 700 !important; color: #3D1F33 !important;\n  margin-bottom: 8px !important; padding-bottom: 8px !important;\n  border-bottom: 1px dashed rgba(198,40,40,0.15) !important;\n}\n.ei-t {\n  font-size: 11px !important; font-weight: 700 !important; padding: 3px 10px !important;\n  border-radius: 8px !important; background: rgba(198,40,40,0.06) !important;\n  border: 1px solid rgba(198,40,40,0.2) !important; color: #C62828 !important;\n}\n.ei > p { font-size: 13px !important; line-height: 1.7 !important; color: #4E3B2A !important; margin: 0 !important; }\n.ei-s {\n  margin: 14px 0 8px 0 !important; padding: 12px 14px !important;\n  background: linear-gradient(135deg, rgba(212,115,154,0.03), rgba(198,40,40,0.03)) !important;\n  border: 1px solid rgba(212,115,154,0.15) !important; border-radius: 12px !important;\n}\n.ei-s .classUI-subsection { color: #C62828 !important; border-bottom-color: rgba(198,40,40,0.15) !important; margin-top: 0 !important; }\n.ei-s > p { font-size: 13px !important; line-height: 1.7 !important; color: #3D1F33 !important; margin: 0 !important; }\n\n/* =============================================\n * 据点仓库 details[depot] — 樱花版\n * ============================================= */\ndetails[depot] {\n  --grid-size: 56px; --gap: 6px; --panel-h: 1120px;\n  --bg-panel: rgba(255,250,252,0.98); --bg-item: rgba(255,255,255,0.9);\n  --text-main: #3D1F33; --text-sub: #A8456E;\n  --border: rgba(212,115,154,0.2); --accent: #D4739A;\n  --q-yiban: #4A2545; --q-youzhi: #6B8E5A; --q-jingliang: #5E8DB8;\n  --q-shishi: #9B59A8; --q-chuanshuo: #D4739A; --q-yuangu: #C62828;\n  display: block !important; margin: 12px 0 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important; position: relative !important;\n}\ndetails[depot] > summary {\n  cursor: pointer !important; list-style: none !important; display: flex !important;\n  align-items: center !important; gap: 10px !important; font-weight: 700 !important;\n  font-size: 14px !important; color: var(--accent) !important;\n  padding: 10px 14px 10px 36px !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.06), rgba(240,198,216,0.04), rgba(212,115,154,0.06)) !important;\n  border: 1px solid var(--border) !important; border-left: 3px solid var(--accent) !important;\n  border-radius: 8px !important; position: relative !important; z-index: 10 !important;\n}\ndetails[depot] > summary::before {\n  content: '🏠' !important; position: absolute !important; left: 10px !important;\n  top: 50% !important; transform: translateY(-50%) !important; font-size: 16px !important;\n}\ndetails[depot] > summary::after {\n  content: '' !important; position: absolute !important; right: 14px !important; top: 50% !important;\n  width: 8px !important; height: 8px !important;\n  border-right: 2px solid var(--accent) !important; border-top: 2px solid var(--accent) !important;\n  transform: translateY(-50%) rotate(-45deg) !important;\n}\ndetails[depot][open] > summary::after { transform: translateY(-50%) rotate(135deg) !important; border-color: #A8456E !important; }\ndetails[depot] > panel {\n  display: grid !important;\n  grid-template-columns: repeat(auto-fill, minmax(var(--grid-size), 1fr)) !important;\n  gap: var(--gap) !important; padding: 36px 12px 12px 12px !important;\n  background: var(--bg-panel) !important; border: 1px solid var(--border) !important;\n  border-bottom: none !important; border-left: 3px solid var(--accent) !important;\n  border-radius: 12px 12px 0 0 !important; max-height: var(--panel-h) !important;\n  overflow: visible !important;\n  box-shadow: 0 -4px 20px rgba(61,31,51,0.12) !important;\n  position: absolute !important; left: 0 !important; right: 0 !important;\n  bottom: calc(100% - 1px) !important; z-index: 100 !important;\n}\ndetails[depot] > panel::before {\n  content: '🏠 据点仓库' !important; position: absolute !important;\n  top: 0 !important; left: 0 !important; right: 0 !important; height: 28px !important;\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  background: linear-gradient(90deg, rgba(212,115,154,0.08), rgba(240,198,216,0.06), rgba(212,115,154,0.08)) !important;\n  border-bottom: 1px solid rgba(212,115,154,0.15) !important;\n  font-size: 11px !important; font-weight: 700 !important; color: #A8456E !important; letter-spacing: 3px !important;\n}\ndetails[depot] > panel > b {\n  display: flex !important; align-items: center !important; justify-content: center !important;\n  aspect-ratio: 1/1 !important; background: var(--bg-item) !important;\n  border: 1px solid var(--border) !important; color: var(--text-main) !important;\n  font-weight: 600 !important; font-size: 11px !important; cursor: help !important;\n  position: static !important; border-radius: 8px !important; padding: 4px !important;\n  word-break: break-all !important; line-height: 1.3 !important; overflow: visible !important;\n}\ndetails[depot] > panel > b:hover { z-index: 10 !important; transform: scale(1.08) !important; background: #FFFFFF !important; }\ndetails[depot] > panel > b > i {\n  position: fixed !important; top: 50% !important; left: 50% !important;\n  transform: translate(-50%, -50%) !important;\n  width: 90px !important; max-width: 45vw !important; max-height: 85vh !important;\n  overflow-y: auto !important; background: rgba(255,255,255,0.99) !important;\n  border: 1px solid rgba(212,115,154,0.35) !important;\n  border-left: 3px solid #A8456E !important;\n  padding: 12px 10px !important; border-radius: 12px !important;\n  box-shadow: 0 8px 30px rgba(61,31,51,0.3) !important;\n  opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;\n  font-style: normal !important; font-size: 11px !important; line-height: 1.7 !important;\n  color: var(--text-main) !important; z-index: 2147483647 !important;\n}\ndetails[depot] > panel > b > i::before {\n  content: '🏠 据点存档' !important; display: block !important;\n  font-size: 10px !important; font-weight: 700 !important; color: #A8456E !important;\n  margin-bottom: 6px !important; padding-bottom: 6px !important;\n  border-bottom: 1px solid rgba(168,69,110,0.2) !important;\n}\ndetails[depot] > panel > b:hover > i { opacity: 1 !important; visibility: visible !important; }\ndetails[depot] > panel > b[q=\"yiban\"] { color: var(--q-yiban) !important; border-color: var(--q-yiban) !important; }\ndetails[depot] > panel > b[q=\"youzhi\"] { color: var(--q-youzhi) !important; border-color: var(--q-youzhi) !important; }\ndetails[depot] > panel > b[q=\"jingliang\"] { color: var(--q-jingliang) !important; border-color: var(--q-jingliang) !important; }\ndetails[depot] > panel > b[q=\"shishi\"] { color: var(--q-shishi) !important; border-color: var(--q-shishi) !important; }\ndetails[depot] > panel > b[q=\"chuanshuo\"] { color: var(--q-chuanshuo) !important; border-color: var(--q-chuanshuo) !important; }\ndetails[depot] > panel > b[q=\"yuangu\"] { color: var(--q-yuangu) !important; border-color: var(--q-yuangu) !important; animation: inv-item-glow 2.5s ease-in-out infinite !important; }\ndetails[depot], details[depot] > panel { overflow: visible !important; }\n\n/* =============================================\n * 交易终端 — 樱花版\n * ============================================= */\n@keyframes sp-blink-dot { 0%, 100% { opacity: 1; } 50% { opacity: 0.2; } }\n@keyframes sp-cmd-cursor { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }\n@keyframes sp-header-pipe { 0% { background-position: 0% 0; } 100% { background-position: 200% 0; } }\n@keyframes sp-yuangu-pulse { 0%, 100% { box-shadow: inset 3px 0 0 var(--color-yuangu), 0 0 6px rgba(198,40,40,0.2); } 50% { box-shadow: inset 3px 0 0 var(--color-yuangu), 0 0 14px rgba(198,40,40,0.4); } }\n@keyframes sp-balance-shimmer { 0%, 100% { text-shadow: 0 0 4px rgba(212,115,154,0.3); } 50% { text-shadow: 0 0 10px rgba(212,115,154,0.6); } }\n\n.sp-vendor-ui {\n  position: relative; width: 100%; margin: 20px 0;\n  font-family: 'Georgia', 'Noto Serif SC', serif; color: #3D1F33;\n  background: linear-gradient(180deg, rgba(255,253,254,0.98) 0%, rgba(255,250,252,0.96) 30%, rgba(255,240,245,0.94) 100%);\n  border: 2px solid rgba(212,115,154,0.3); border-radius: 16px;\n  box-shadow: 0 6px 24px rgba(61,31,51,0.08); overflow: hidden;\n}\n.sp-vendor-ui::before {\n  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;\n  background: linear-gradient(90deg, transparent 0%, #F0C6D8 15%, #D4739A 35%, #A8456E 50%, #D4739A 65%, #F0C6D8 85%, transparent 100%);\n  background-size: 200% 100%; animation: sp-header-pipe 5s linear infinite; z-index: 5;\n}\n.sp-vendor-ui::after {\n  content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px;\n  background: linear-gradient(90deg, transparent 0%, rgba(212,115,154,0.4) 20%, rgba(240,198,216,0.6) 50%, rgba(212,115,154,0.4) 80%, transparent 100%);\n  z-index: 5;\n}\n.sp-header {\n  display: flex; align-items: center; justify-content: space-between;\n  flex-wrap: wrap; gap: 8px; padding: 14px 18px 12px;\n  background: linear-gradient(135deg, rgba(212,115,154,0.08) 0%, rgba(240,198,216,0.1) 40%, rgba(255,255,255,0.85) 70%, rgba(212,115,154,0.06) 100%);\n  border-bottom: 1px solid rgba(212,115,154,0.2); position: relative;\n}\n.sp-header > * { position: relative; z-index: 1; }\n.sp-title-box { display: flex; align-items: center; gap: 10px; }\n.sp-icon {\n  display: inline-flex; align-items: center; justify-content: center;\n  width: 30px; height: 30px; background: linear-gradient(135deg, #D4739A, #A8456E);\n  color: #fff; border-radius: 50%; font-size: 16px;\n  border: 2px solid rgba(240,198,216,0.5); box-shadow: 0 2px 8px rgba(212,115,154,0.3);\n}\n.sp-vendor-name { margin: 0; font-size: 16px; font-weight: 700; color: #3D1F33; letter-spacing: 1.5px; }\n.sp-sub { font-size: 13px; font-weight: 600; color: #A8456E; letter-spacing: 1px; }\n.sp-connection {\n  display: flex; align-items: center; gap: 6px;\n  font-size: 11px; font-weight: 700; color: #A8456E;\n  padding: 4px 12px; background: rgba(255,255,255,0.7);\n  border: 1px solid rgba(212,115,154,0.15); border-radius: 8px;\n}\n.sp-blink { color: #7BAF7B; font-size: 10px; animation: sp-blink-dot 1.6s ease-in-out infinite; }\n.sp-balance-bar {\n  display: flex; align-items: center; justify-content: space-between;\n  flex-wrap: wrap; gap: 8px; padding: 10px 18px;\n  background: linear-gradient(90deg, rgba(240,198,216,0.1) 0%, rgba(255,255,255,0.9) 50%, rgba(240,198,216,0.1) 100%);\n  border-bottom: 1px solid rgba(212,115,154,0.1);\n}\n.sp-bal-label { font-size: 12px; font-weight: 600; color: #A8456E; letter-spacing: 2px; }\n.sp-bal-value { font-size: 15px; font-weight: 700; color: #D4739A; animation: sp-balance-shimmer 3.5s ease-in-out infinite; }\n.sp-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; }\n.sp-col { padding: 14px 16px; border-right: 1px dashed rgba(212,115,154,0.1); border-bottom: 1px dashed rgba(212,115,154,0.1); }\n.sp-col:nth-child(2n) { border-right: none; }\n.sp-col.sp-full-width { grid-column: 1 / -1; border-right: none; border-bottom: none; }\n.sp-cat-title {\n  margin: 0 0 12px; padding: 8px 12px; font-size: 13px; font-weight: 700;\n  letter-spacing: 2px; color: #3D1F33; border-bottom: 2px solid rgba(212,115,154,0.2);\n  position: relative;\n}\n.sp-cat-title::before { content: ''; position: absolute; bottom: -2px; left: 0; width: 40px; height: 2px; }\n.sp-cat-title[data-type=\"core\"]::before { background: #D4739A; }\n.sp-cat-title[data-type=\"consumable\"]::before { background: #7BAF7B; }\n.sp-cat-title[data-type=\"special\"]::before { background: #9B59A8; }\n.sp-item-list { list-style: none; margin: 0; padding: 0; }\n.sp-item-list.sp-horizontal { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; }\n.sp-item {\n  position: relative; margin: 0 0 10px; padding: 10px 14px;\n  background: linear-gradient(135deg, rgba(255,255,255,0.92) 0%, rgba(255,250,252,0.88) 100%);\n  border: 1px solid rgba(212,115,154,0.12); border-left: 3px solid #D4739A;\n  border-radius: 0 12px 12px 0; transition: all 0.3s ease; overflow: hidden;\n}\n.sp-item:last-child { margin-bottom: 0; }\n.sp-item:hover { transform: translateX(4px); background: rgba(255,255,255,0.98); box-shadow: 0 3px 12px rgba(61,31,51,0.08); }\n.sp-item::after {\n  content: ''; position: absolute; top: 0; left: -100%; bottom: 0; width: 60%;\n  background: linear-gradient(90deg, transparent, rgba(240,198,216,0.12), transparent);\n  transition: left 0.6s ease; pointer-events: none;\n}\n.sp-item:hover::after { left: 120%; }\n.sp-item.tier-yiban { border-left-color: var(--color-yiban); }\n.sp-item.tier-youzhi { border-left-color: var(--color-youzhi); }\n.sp-item.tier-jingliang { border-left-color: var(--color-jingliang); }\n.sp-item.tier-shishi { border-left-color: var(--color-shishi); }\n.sp-item.tier-chuanshuo { border-left-color: var(--color-chuanshuo); }\n.sp-item.tier-yuangu { border-left-color: var(--color-yuangu); animation: sp-yuangu-pulse 2.5s ease-in-out infinite; }\n.sp-item.tier-yiban .sp-i-name { color: var(--color-yiban); }\n.sp-item.tier-youzhi .sp-i-name { color: var(--color-youzhi); }\n.sp-item.tier-jingliang .sp-i-name { color: var(--color-jingliang); }\n.sp-item.tier-shishi .sp-i-name { color: var(--color-shishi); }\n.sp-item.tier-chuanshuo .sp-i-name { color: var(--color-chuanshuo); }\n.sp-item.tier-yuangu .sp-i-name { color: var(--color-yuangu); }\n.sp-i-name::before { display: inline-block; margin-right: 6px; font-size: 0.85em; }\n.sp-item.tier-yiban .sp-i-name::before { content: '·'; }\n.sp-item.tier-youzhi .sp-i-name::before { content: '◆'; color: var(--color-youzhi); }\n.sp-item.tier-jingliang .sp-i-name::before { content: '◆'; color: var(--color-jingliang); }\n.sp-item.tier-shishi .sp-i-name::before { content: '◈'; color: var(--color-shishi); }\n.sp-item.tier-chuanshuo .sp-i-name::before { content: '♪'; color: var(--color-chuanshuo); }\n.sp-item.tier-yuangu .sp-i-name::before { content: '✦'; color: var(--color-yuangu); }\n.sp-i-top { display: flex; align-items: baseline; justify-content: space-between; flex-wrap: wrap; gap: 8px; margin-bottom: 6px; }\n.sp-i-name { font-size: 14px; font-weight: 700; letter-spacing: 0.8px; }\n.sp-i-price {\n  font-size: 13px; font-weight: 700; color: #A8456E; white-space: nowrap;\n  padding: 2px 10px; background: rgba(212,115,154,0.05);\n  border: 1px solid rgba(212,115,154,0.15); border-radius: 8px;\n}\n.sp-i-desc { font-size: 12px; line-height: 1.65; color: #5D4037; text-align: justify; }\n.sp-footer {\n  padding: 14px 18px;\n  background: linear-gradient(180deg, rgba(255,240,245,0.6) 0%, rgba(255,250,252,0.95) 100%);\n  border-top: 1px solid rgba(212,115,154,0.15); position: relative;\n}\n.sp-footer::before {\n  content: ''; position: absolute; top: -1px; left: 10%; right: 10%; height: 1px;\n  background: linear-gradient(90deg, transparent, rgba(240,198,216,0.5), transparent);\n}\n.sp-cmd { margin: 0 0 10px; font-size: 12px; font-weight: 700; color: #A8456E; letter-spacing: 1.5px; }\n.sp-cmd::after { content: '▮'; display: inline-block; margin-left: 2px; color: #D4739A; animation: sp-cmd-cursor 1s steps(1) infinite; }\n.sp-quote {\n  margin: 0; font-size: 13px; line-height: 1.7; color: #4E3B2A; font-style: normal; /* 修复斜体问题 */\n  padding: 10px 14px; background: rgba(255,255,255,0.6);\n  border-left: 3px solid #F0C6D8; border-radius: 0 12px 12px 0;\n}\n.sp-npc-tag { font-style: normal; font-weight: 700; color: #A8456E; }\n\n@media (max-width: 768px) {\n  .sp-vendor-ui { margin: 14px 0; }\n  .sp-grid { grid-template-columns: 1fr; }\n  .sp-col { border-right: none; }\n  .sp-header { flex-direction: column; align-items: flex-start; padding: 12px 14px; }\n  .sp-item:hover { transform: none; }\n  .sp-item::after { display: none; }\n  .sp-item-list.sp-horizontal { grid-template-columns: 1fr; }\n\n  .styled-prose-container details.e { transition: none !important; }\n  #ai-chat-answer:last-of-type details.e[open] { width: 300px !important; box-shadow: none !important; }\n  #ai-chat-answer:last-of-type details.e:not([open]) > summary {\n    width: 32px !important; min-height: 65px !important; font-size: 11px !important; letter-spacing: 2px !important;\n  }\n  #ai-chat-answer:last-of-type details.e { top: 410px !important; }\n  .ei:hover { transform: none !important; }\n\n  details[depot] { --grid-size: 50px !important; --gap: 5px !important; }\n  details[depot] > summary { font-size: 13px !important; }\n  details[depot] > panel > b { font-size: 10px !important; }\n}\n@media (max-width: 480px) {\n  #ai-chat-answer:last-of-type details.e[open] { width: 270px !important; }\n  #ai-chat-answer:last-of-type details.e:not([open]) > summary {\n    width: 28px !important; min-height: 55px !important; font-size: 10px !important; letter-spacing: 1.5px !important;\n  }\n  #ai-chat-answer:last-of-type details.e { top: 340px !important; }\n  details[depot] { --grid-size: 44px !important; --gap: 4px !important; }\n}\n@media (prefers-reduced-motion: reduce) {\n  .sp-vendor-ui::before, .sp-item.tier-yuangu, .sp-blink, .sp-cmd::after, .sp-bal-value { animation: none !important; }\n  .sp-item:hover { transform: none !important; }\n  .ei:hover { transform: none !important; }\n  details[depot] > panel > b[q=\"yuangu\"] { animation: none !important; }\n  #ai-chat-answer:last-of-type details.e:not([open]) > summary { animation: none !important; }\n.styled-prose-container [class*=card-body-chuanqi] { animation: none; }\n}\n\n/* =============================================\n * PATCH v3: 过往记忆 (.m) 折叠标签 — 文字修正 + 间距收紧\n * ============================================= */\n\n/* ── 折叠态：隐藏 summary 原始文字 ── */\n#ai-chat-answer:last-of-type details.m:not([open]) > summary {\n  font-size: 0 !important;\n  line-height: 0 !important;\n  color: transparent !important;\n  gap: 0 !important;\n  padding-top: 8px !important;\n  padding-bottom: 8px !important;\n}\n\n/* ── 折叠态：书本图标位置下移，紧贴文字 ── */\n#ai-chat-answer:last-of-type details.m:not([open]) > summary::before {\n  top: 10px !important;\n  margin-bottom: 2px !important;\n}\n\n/* ── 折叠态：用 ::after 重绘纯净标题 ── */\n#ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n  content: '过往记忆' !important;\n  display: block !important;\n  font-size: 13px !important;\n  line-height: 1 !important;\n  color: #fff !important;\n  writing-mode: vertical-rl !important;\n  text-orientation: upright !important;\n  letter-spacing: 3px !important;\n  font-weight: 700 !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  text-shadow: 0 1px 3px rgba(30,50,80,0.4) !important;\n  position: absolute !important;\n  top: 32px !important;\n  left: 50% !important;\n  transform: translateX(-50%) !important;\n  width: auto !important;\n  height: auto !important;\n  background: none !important;\n  border: none !important;\n  border-radius: 0 !important;\n  box-shadow: none !important;\n  margin: 0 !important;\n  padding: 0 !important;\n  pointer-events: none !important;\n}\n\n/* ── 手机端 ── */\n@media (max-width: 768px) {\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n    font-size: 11px !important;\n    letter-spacing: 2px !important;\n    top: 28px !important;\n  }\n}\n@media (max-width: 480px) {\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary::after {\n    font-size: 10px !important;\n    letter-spacing: 1.5px !important;\n    top: 26px !important;\n  }\n}\n\n/* 🎤 演唱歌词 · 樱花明亮版 */\n@keyframes lyr-glow {\n  0%,100% { text-shadow: 0 0 6px rgba(168,69,110,0.3); }\n  50% { text-shadow: 0 0 14px rgba(168,69,110,0.6), 0 0 28px rgba(212,115,154,0.25); }\n}\n@keyframes lyr-border {\n  0%,100% { border-color: rgba(212,115,154,0.25); }\n  50% { border-color: rgba(212,115,154,0.5); }\n}\n.styled-prose-container lyrics {\n  display: block; position: relative; margin: 20px 0; padding: 28px 24px;\n  background:\n    radial-gradient(ellipse at 30% 30%, rgba(212,115,154,0.08) 0%, transparent 60%),\n    radial-gradient(ellipse at 70% 70%, rgba(240,198,216,0.1) 0%, transparent 50%),\n    linear-gradient(160deg, #FFF5F8 0%, #FFE8F0 40%, #FFFAFC 100%);\n  border: 2px solid rgba(212,115,154,0.25); border-radius: 16px;\n  text-align: center; font-family: 'Georgia', 'Noto Serif SC', serif;\n  line-height: 2.4; color: #A8456E; font-size: 15px;\n  letter-spacing: 2px; overflow: hidden;\n  animation: lyr-border 4s ease-in-out infinite;\n  box-shadow: 0 4px 20px rgba(212,115,154,0.1), inset 0 0 30px rgba(255,255,255,0.6);\n}\n.styled-prose-container lyrics em {\n  display: block; font-style: normal; font-size: 19px; font-weight: 900;\n  color: #D4739A; letter-spacing: 4px; padding: 10px 0;\n  animation: lyr-glow 2.5s ease-in-out infinite;\n}\n@media (max-width: 768px) {\n  .styled-prose-container lyrics { padding: 20px 16px; font-size: 13px; }\n  .styled-prose-container lyrics em { font-size: 16px; }\n}\n@media (prefers-reduced-motion: reduce) {\n  .styled-prose-container lyrics, .styled-prose-container lyrics em { animation: none; }\n}\n\n/* 全局防斜体机制 */\n.styled-prose-container em,\n.styled-prose-container i:not([class]) {\n  font-style: normal !important;\n}\n/* 修复 LINE/私信 气泡文字被背景遮挡的问题 */\n.styled-prose-container board item msg {\n  display: inline-block !important;\n  position: relative !important;\n  z-index: 2 !important; /* 强制提升层级，盖过白色背景 */\n  color: #3D1F33 !important; /* 确保字体为深色 */\n  font-size: 14px !important;\n  font-weight: 500 !important;\n  word-break: break-word !important;\n  align-self: center !important;\n  margin-top: 1px !important;\n}\n/* =============================================\n * 🎵 BGM播放器 — 少女乐队·桜テーマ\n * 仅作用于 audio.classUI-audio-player\n * ============================================= */\n\n@keyframes bgm-glow-pulse {\n  0%, 100% { box-shadow: 0 3px 16px rgba(212,115,154,0.18); }\n  50%       { box-shadow: 0 5px 24px rgba(212,115,154,0.38), 0 0 0 3px rgba(212,115,154,0.07); }\n}\n@keyframes bgm-border-flow {\n  0%   { border-color: rgba(212,115,154,0.30); }\n  50%  { border-color: rgba(168, 69,110,0.55); }\n  100% { border-color: rgba(212,115,154,0.30); }\n}\n\naudio.classUI-audio-player {\n  display: block !important;\n  width: 100% !important;\n  height: 44px !important;\n  margin: 8px 0 !important;\n  border-radius: 22px !important;\n  outline: none !important;\n  cursor: pointer !important;\n\n  /* 背景 */\n  background: linear-gradient(135deg,\n    rgba(255,250,252,0.98) 0%,\n    rgba(255,240,248,0.95) 50%,\n    rgba(255,250,252,0.98) 100%) !important;\n\n  /* 边框 + 光晕 */\n  border: 1.5px solid rgba(212,115,154,0.30) !important;\n  box-shadow: 0 3px 16px rgba(212,115,154,0.18) !important;\n\n  /* 动画 */\n  animation:\n    bgm-glow-pulse 4s ease-in-out infinite,\n    bgm-border-flow 4s ease-in-out infinite !important;\n\n  /* 进度条/按钮跟主色走 */\n  accent-color: #D4739A !important;\n  color-scheme: light !important;\n\n  transition: border-color 0.3s ease, box-shadow 0.3s ease !important;\n}\n\naudio.classUI-audio-player:hover {\n  box-shadow:\n    0 5px 24px rgba(212,115,154,0.30),\n    0 0 0 3px rgba(212,115,154,0.08) !important;\n  border-color: rgba(168,69,110,0.50) !important;\n}\n\n/* 减弱动效模式 */\n@media (prefers-reduced-motion: reduce) {\n  audio.classUI-audio-player {\n    animation: none !important;\n    box-shadow: 0 2px 8px rgba(212,115,154,0.15) !important;\n  }\n}\n\n/* 手机端收窄 */\n@media (max-width: 768px) {\n  audio.classUI-audio-player {\n    height: 40px !important;\n    border-radius: 20px !important;\n    animation: none !important;\n    box-shadow: 0 2px 8px rgba(212,115,154,0.12) !important;\n  }\n}\n/* --- 功能状态栏 (Function Bar) — 樱花版 --- */\n.styled-prose-container fbar {\n  display: block !important;\n  text-align: center !important;\n  font-size: 11px !important;\n  font-weight: 700 !important;\n  color: #A8456E !important;\n  letter-spacing: 1.5px !important;\n  padding: 8px 14px !important;\n  margin: 8px 0 0 0 !important;\n  border-top: 1px dashed rgba(212,115,154,0.2) !important;\n  font-family: 'Georgia', 'Noto Serif SC', serif !important;\n  line-height: 1.8 !important;\n}\n\n/* =============================================\n * MOBILE PERFORMANCE OPTIMIZATION\n * P0-1: backdrop-filter removal\n * P0-2: infinite animation disable\n * P1:   multi-layer box-shadow simplification\n * ============================================= */\n@media (max-width: 768px) {\n\n  /* ========== P0-1: backdrop-filter ========== */\n  *,\n  *::before,\n  *::after {\n    backdrop-filter: none !important;\n    -webkit-backdrop-filter: none !important;\n  }\n\n  .sticky.w-full.top-0.flex.items-center {\n    background: rgba(255, 250, 252, 0.97) !important;\n  }\n  .chat {\n    background: rgba(255, 252, 254, 0.98) !important;\n  }\n  .bubble.npc {\n    background: rgba(255, 252, 254, 0.96) !important;\n  }\n  .bubble.user {\n    background: rgba(255, 248, 251, 0.96) !important;\n  }\n  #ai-chat-input {\n    background: rgba(255, 252, 254, 0.97) !important;\n  }\n  .p-\\\\[5\\\\.5px\\\\].max-h-\\\\[150px\\\\] {\n    background: rgba(255, 252, 254, 0.97) !important;\n  }\n  div[class*=\"absolute\"][class*=\"bottom-0\"] {\n    background: rgba(255, 250, 252, 0.97) !important;\n  }\n  div:has(> .style_dot-flashing__8L91Q.style_text__zGhNq) {\n    background: rgba(255, 252, 254, 0.97) !important;\n  }\n\n  /* ========== P0-2: infinite ========== */\n  cot::before,\n  div:has(> .style_dot-flashing__8L91Q.style_text__zGhNq)::after,\n  .sticky.w-full.top-0.flex.items-center::after,\n  #ai-send-button:hover,\n  div[class*=\"absolute\"][class*=\"bottom-0\"]::before,\n  div[class*=\"absolute\"][class*=\"bottom-0\"]::after,\n  .chat::before,\n  .bubble.npc::after,\n  .bubble.npc .name::before,\n  .bubble.user::after,\n  .bubble.user .name::before,\n  .bg-gray-100\\\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\\\/90)::before,\n  .bg-gray-100\\\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\\\/90)::after,\n  #ai-chat-answer:last-of-type details.p:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.n:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.ship:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.m:not([open]) > summary,\n  #ai-chat-answer:last-of-type details.e:not([open]) > summary,\n  details[inv] > panel > b[q=\"yuangu\"],\n  .k-head::before,\n  .k-bar::before,\n  .k-row.e.pulse,\n  .k-row.g.pulse,\n  .k-none::before,\n  .doc::after,\n  .tip-r,\n  details[depot] > panel > b[q=\"yuangu\"],\n  .sp-vendor-ui::before,\n  .sp-blink,\n  .sp-bal-value,\n  .sp-item.tier-yuangu,\n  .sp-cmd::after,\n  .styled-prose-container lyrics,\n  .styled-prose-container lyrics em,\n  audio.classUI-audio-player {\n    animation: none !important;\n  }\n\n  /* 移除纯装饰伪元素 */\n  .chat::before,\n  div[class*=\"absolute\"][class*=\"bottom-0\"]::before,\n  div[class*=\"absolute\"][class*=\"bottom-0\"]::after,\n  .sticky.w-full.top-0.flex.items-center::after {\n    display: none !important;\n  }\n\n  /* ========== P1: box-shadow ========== */\n\n  /* --- 顶栏 --- */\n  .sticky.w-full.top-0.flex.items-center {\n    box-shadow: 0 2px 12px rgba(212, 115, 154, 0.08) !important;\n  }\n  .sticky.w-full.top-0.flex.items-center .inline-flex.items-center {\n    box-shadow: 0 1px 4px rgba(212, 115, 154, 0.08) !important;\n  }\n  .sticky.w-full.top-0.flex.items-center .inline-flex.items-center:hover {\n    box-shadow: 0 2px 8px rgba(212, 115, 154, 0.15) !important;\n  }\n  #ai-model-selector .group {\n    box-shadow: 0 1px 6px rgba(212, 115, 154, 0.08) !important;\n  }\n  #ai-model-selector .group:hover {\n    box-shadow: 0 2px 10px rgba(168, 69, 110, 0.14) !important;\n  }\n  #header-setting-button:hover {\n    box-shadow: 0 2px 8px rgba(212, 115, 154, 0.2) !important;\n  }\n\n  /* --- 聊天区 --- */\n  .chat {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n  .bubble {\n    box-shadow: 0 2px 8px rgba(61, 31, 51, 0.06) !important;\n  }\n\n  /* --- 消息容器 --- */\n  .chat-answer-container .bg-gray-100\\\\/90.relative.inline-block {\n    box-shadow: 0 4px 14px rgba(61, 31, 51, 0.06) !important;\n  }\n  .bg-gray-100\\\\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\\\\/90) {\n    box-shadow: 0 3px 14px rgba(168, 69, 110, 0.06) !important;\n  }\n  div:has(> .style_dot-flashing__8L91Q.style_text__zGhNq) {\n    box-shadow: 0 3px 14px rgba(61, 31, 51, 0.05) !important;\n  }\n\n  /* --- 输入区 --- */\n  .p-\\\\[5\\\\.5px\\\\].max-h-\\\\[150px\\\\] {\n    box-shadow: 0 -2px 10px rgba(61, 31, 51, 0.05) !important;\n  }\n  #ai-chat-input {\n    box-shadow: inset 0 1px 4px rgba(212, 115, 154, 0.04) !important;\n  }\n  #ai-chat-input:focus {\n    box-shadow: 0 0 8px rgba(212, 115, 154, 0.15) !important;\n  }\n  #ai-send-button {\n    box-shadow: 0 2px 10px rgba(212, 115, 154, 0.25) !important;\n  }\n  #ai-send-button:hover {\n    box-shadow: 0 3px 14px rgba(168, 69, 110, 0.35) !important;\n  }\n  #ai-send-button:active {\n    box-shadow: 0 1px 6px rgba(168, 69, 110, 0.3) !important;\n  }\n\n  /* --- 底部按钮 --- */\n  div[class*=\"absolute\"][class*=\"bottom-0\"] {\n    box-shadow: 0 -2px 10px rgba(61, 31, 51, 0.05) !important;\n  }\n  div[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]) {\n    box-shadow: 0 1px 6px rgba(61, 31, 51, 0.05) !important;\n  }\n  div[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]):hover {\n    box-shadow: 0 2px 10px rgba(212, 115, 154, 0.12) !important;\n  }\n  div[class*=\"absolute\"][class*=\"bottom-0\"] button:not([id=\"ai-send-button\"]):active {\n    box-shadow: 0 1px 4px rgba(61, 31, 51, 0.05) !important;\n  }\n\n  /* --- details 面板 --- */\n  .styled-prose-container details {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n  .styled-prose-container details:hover {\n    box-shadow: 0 3px 14px rgba(61, 31, 51, 0.06) !important;\n  }\n  #ai-chat-answer:last-of-type .u:not([open]) > summary {\n    box-shadow: -1px 1px 8px rgba(61, 31, 51, 0.12) !important;\n  }\n  #ai-chat-answer:last-of-type details.n[open] {\n    box-shadow: -2px 2px 16px rgba(168, 69, 110, 0.12) !important;\n  }\n  #ai-chat-answer:last-of-type details.ship[open] {\n    box-shadow: -2px 2px 16px rgba(77, 138, 77, 0.12) !important;\n  }\n  #ai-chat-answer:last-of-type details.m[open] {\n    box-shadow: -2px 2px 16px rgba(80, 128, 160, 0.12) !important;\n  }\n  #ai-chat-answer:last-of-type details.e[open] {\n    box-shadow: -2px 2px 16px rgba(160, 64, 64, 0.12) !important;\n  }\n\n  /* --- 背包面板 inv --- */\n  details[inv] > panel {\n    box-shadow: 0 -2px 12px rgba(61, 31, 51, 0.08) !important;\n  }\n  details[inv] > panel > b {\n    box-shadow: 0 1px 3px rgba(61, 31, 51, 0.05) !important;\n  }\n  details[inv] > panel > b:hover {\n    box-shadow: 0 2px 8px rgba(212, 115, 154, 0.12) !important;\n  }\n  details[inv] > panel > b > i {\n    box-shadow: 0 4px 16px rgba(61, 31, 51, 0.2) !important;\n  }\n  details[inv] > panel > b[e] {\n    box-shadow: 0 0 6px rgba(240, 198, 216, 0.2) !important;\n  }\n  details[inv] > panel > b[e]::after {\n    box-shadow: 0 0 4px rgba(212, 115, 154, 0.2) !important;\n  }\n\n  /* --- 仓库面板 depot --- */\n  details[depot] > panel {\n    box-shadow: 0 -2px 12px rgba(61, 31, 51, 0.08) !important;\n  }\n  details[depot] > panel > b > i {\n    box-shadow: 0 4px 16px rgba(61, 31, 51, 0.2) !important;\n  }\n  details[depot] > panel > b > i::before {\n    box-shadow: none !important;\n  }\n\n  /* --- 操作按钮 pre --- */\n  pre div[node=\"[object Object]\"] {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.05) !important;\n  }\n  pre div[node=\"[object Object]\"]::before {\n    box-shadow: 0 1px 6px rgba(212, 115, 154, 0.25) !important;\n  }\n  pre div[data-tooltip-id]::before {\n    box-shadow: 0 2px 8px rgba(212, 115, 154, 0.2) !important;\n  }\n  pre:hover div[node=\"[object Object]\"] {\n    box-shadow: 0 4px 14px rgba(61, 31, 51, 0.08) !important;\n  }\n\n  /* --- 文档/卡片 --- */\n  .doc {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n  .styled-prose-container T Ti {\n    box-shadow: 0 4px 14px rgba(61, 31, 51, 0.08) !important;\n  }\n  .styled-prose-container [class*=card-body-] {\n    box-shadow: 0 4px 14px rgba(61, 31, 51, 0.08) !important;\n  }\n\n  /* --- top-info --- */\n  .top-info {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n  .top-info > time::before {\n    box-shadow: 0 1px 4px rgba(212, 115, 154, 0.2) !important;\n  }\n  .top-info > position::before {\n    box-shadow: 0 1px 4px rgba(168, 69, 110, 0.2) !important;\n  }\n  .top-info > env::before {\n    box-shadow: 0 1px 4px rgba(123, 175, 123, 0.2) !important;\n  }\n\n  /* --- classUI --- */\n  .classUI-story {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n  .classUI-npc-card {\n    box-shadow: 0 1px 6px rgba(61, 31, 51, 0.04) !important;\n  }\n  .classUI-actions {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.04) !important;\n  }\n\n  /* --- 进度条 --- */\n  .progress-bar-container {\n    box-shadow: none !important;\n  }\n  .progress-bar-fill {\n    box-shadow: none !important;\n  }\n\n  /* --- 商店 --- */\n  .sp-vendor-ui {\n    box-shadow: 0 3px 14px rgba(61, 31, 51, 0.06) !important;\n  }\n  .sp-icon {\n    box-shadow: 0 1px 6px rgba(212, 115, 154, 0.2) !important;\n  }\n  .sp-item {\n    box-shadow: 0 2px 8px rgba(61, 31, 51, 0.06) !important;\n  }\n\n  /* --- 歌词/公告/棋盘 --- */\n  .styled-prose-container lyrics {\n    box-shadow: 0 2px 10px rgba(212, 115, 154, 0.08) !important;\n  }\n  .styled-prose-container spell_card_list {\n    box-shadow: none !important;\n  }\n  .styled-prose-container news {\n    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;\n  }\n  .styled-prose-container board {\n    box-shadow: 0 2px 10px rgba(61, 31, 51, 0.05) !important;\n  }\n  .styled-prose-container board item label {\n    box-shadow: 0 1px 6px rgba(61, 31, 51, 0.06) !important;\n  }\n  .styled-prose-container board item:not(.w)::before {\n    box-shadow: none !important;\n  }\n\n  /* --- 侧栏历史 --- */\n  .group.ml-0 > .flex.items-start.gap-2 {\n    box-shadow: 0 2px 8px rgba(61, 31, 51, 0.04) !important;\n  }\n  .group.ml-0 > .flex.items-start.gap-2:hover {\n    box-shadow: 0 3px 12px rgba(61, 31, 51, 0.06) !important;\n  }\n\n  /* --- 音频播放器 --- */\n  audio.classUI-audio-player {\n    box-shadow: 0 2px 10px rgba(212, 115, 154, 0.12) !important;\n  }\n  audio.classUI-audio-player:hover {\n    box-shadow: 0 3px 14px rgba(212, 115, 154, 0.2) !important;\n  }\n}\n\n/* prefers-reduced-motion */\n@media (prefers-reduced-motion: reduce) {\n  *, *::before, *::after {\n    animation: none !important;\n    transition: none !important;\n    backdrop-filter: none !important;\n    -webkit-backdrop-filter: none !important;\n  }\n}\n/* ── 特定角色头像 — MyGO!!!!! ── */\n.styled-prose-container board item.anon label,\n.styled-prose-container news item.anon label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/750a1f26cffc1e173161970c0c90f603728de951.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.taki label,\n.styled-prose-container news item.taki label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/81e6dea98226cffca4f4a48fff014a90f703ea51.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.tomo label,\n.styled-prose-container news item.tomo label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/dd672a4543a98226761f301acc82b9014b90eb51.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.mutsu label,\n.styled-prose-container news item.mutsu label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/86f265198618367a1d5764e068738bd4b21ce551.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.rana label,\n.styled-prose-container news item.rana label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/ceba1b18367adab4820e007ecdd4b31c8601e451.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.sakiko label,\n.styled-prose-container news item.sakiko label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/00d947b44aed2e7341379d11c101a18b86d6fa51.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.soyo label,\n.styled-prose-container news item.soyo label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/070e56ef76094b369c1d03d0e5cc7cd98c109da7.jpg\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n/* ── 特定角色头像 — Ave Mujica ── */\n.styled-prose-container board item.nyamu label,\n.styled-prose-container news item.nyamu label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/700e74f619b3304aa380ab5627af471935433498.png@176w_176h_1c_1s.avif\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.hatsuka label,\n.styled-prose-container news item.hatsuka label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/246d5760dae792e6f7a1c322ec78ddd035433498.png@1042w_1028h.webp\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n.styled-prose-container board item.umiri label,\n.styled-prose-container news item.umiri label {\n  background: none !important;\n  background-image: url(\"https://tweark.dpdns.org/6a19f136b8aa293afc106bfcf2c0c3db35433498.png@996w_996h.webp\") !important;\n  background-size: cover !important;\n  background-position: center !important;\n  font-size: 0 !important;\n  color: transparent !important;\n}\n/* === 過往記憶存档区 === */\n.styled-prose-container .s{padding:0!important;font-size:15px!important;line-height:1.8!important;color:#3D1F33!important}\n.styled-prose-container .s>.t{font-size:17px!important;font-weight:700!important;color:#A8456E!important;letter-spacing:3px!important;padding:6px 0!important;margin:0!important;text-align:center!important;font-family:'Georgia','Noto Serif SC',serif!important;position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:14px!important;text-shadow:0 0 10px rgba(212,115,154,.3)!important}\n.styled-prose-container .s>.t::before,.styled-prose-container .s>.t::after{content:''!important;flex:1!important;height:1px!important;max-width:90px!important;background:linear-gradient(90deg,transparent,#D4739A)!important}\n.styled-prose-container .s>.t::after{background:linear-gradient(90deg,#D4739A,transparent)!important}\n.styled-prose-container .s>strong{display:block!important;text-align:right!important;font-size:11px!important;font-weight:600!important;color:#A8456E!important;letter-spacing:.5px!important;margin:4px 0 8px 0!important;padding:3px 10px!important;background:rgba(212,115,154,.05)!important;border-radius:8px!important;font-family:'Consolas','SF Mono',monospace!important;border-right:2px solid rgba(212,115,154,.25)!important;opacity:.7!important}\n.styled-prose-container .s>hr{border:none!important;height:1px!important;margin:14px 0 4px 0!important;background:linear-gradient(90deg,transparent 5%,rgba(240,198,216,.2) 30%,rgba(212,115,154,.35) 50%,rgba(240,198,216,.2) 70%,transparent 95%)!important}\n@media(max-width:768px){\n.styled-prose-container .s>.t{font-size:15px!important;letter-spacing:2px!important;padding:4px 0!important;gap:10px!important}\n.styled-prose-container .s>.t::before,.styled-prose-container .s>.t::after{max-width:60px!important}\n.styled-prose-container .s>strong{font-size:10px!important;margin:3px 0 6px 0!important}\n.styled-prose-container .s>hr{margin:10px 0 2px 0!important}\n}\n@media(max-width:480px){\n.styled-prose-container .s>.t{font-size:13px!important;letter-spacing:1.5px!important;padding:3px 0!important;gap:8px!important}\n.styled-prose-container .s>.t::before,.styled-prose-container .s>.t::after{max-width:40px!important}\n.styled-prose-container .s>strong{font-size:9px!important;padding:2px 8px!important}\n.styled-prose-container .s>hr{margin:8px 0 2px 0!important}\n}\n","options":{"items":[{"order":0,"label":"存档","type":"SET-INPUT","value":"乐队归档"},{"order":1,"label":"评价系统","type":"SET-INPUT","value":"（评价系统启动）+好评，如xxxx描写的不错/差评，xxxx我不喜欢。+下一轮的回复"},{"order":2,"label":"角色锚定","type":"SET-INPUT","value":"锁定角色xxx（xxx为npc姓名）"},{"order":3,"label":"修格式","type":"SET-INPUT","value":"世界校准"},{"order":4,"label":"live音乐","type":"SET-INPUT","value":"激活动态背景音乐协议"}]},"language":"zh","containsNSFW":false,"publicAccess":true,"deletedAt":null,"isAnonymous":false,"enableSafeguard":true,"defaultModelSettings":null,"totalConversations":503,"totalMessages":10045,"totalCreditsUsed":28420809,"totalTokensUsed":564342682,"totalPlayedUsers":231,"deeplyPlayed":122,"fixedPromptLength":10702,"lorebookLength":168543,"author":{"id":"LIUEhcIub1rvX4oIYTTCUBh7M7evM25W","name":"Feast宴","displayUsername":"fuan0720","username":"fuan0720"},"cardsTags":[{"tag":{"name":"轻音少女","cardsCount":2}},{"tag":{"name":"mygo","cardsCount":1}},{"tag":{"name":"已破甲","cardsCount":2205}},{"tag":{"name":"GBC","cardsCount":2}},{"tag":{"name":"可剧情可涩涩","cardsCount":2459}},{"tag":{"name":"少女乐队","cardsCount":7}}],"cardsVoices":[],"prompt":null,"promptSizeBytes":null}