{"id":"6f05408b-e403-441a-a471-9f5250d2299e","authorId":"NN5f3iHYlTRtNZ4yBkm4iXHnJ7zukSQD","title":"命运骰塔","description":"全局美化，美化不好看进来差评，不玩也可以参考下同款全局美化mod，安装后这里的全局美化就能带走了。\n肉鸽roll天赋，根据不同身份背景设定会生成对应的世界观背景，每次都是全新的世界规则体验。\n可以把姓名、身份与过去交给概率，每次点击都会生成一段全新的角色命运，适用于奇幻、都市、悬疑与跨世界角色扮演。","background":"ii0a2xwz8zz0bti6owdyk9yw.webp","backgroundWidth":1536,"backgroundHeight":2688,"cover":"vsnynuuj4m86ux7rxgjuchst.webp","coverWidth":1536,"coverHeight":2688,"introPage":"sdxmkd3qci4x73g2n8m9n9ay.html","changelog":"","createdAt":"2026-08-07T12:09:00.684Z","updatedAt":"2026-08-08T03:22:27.115Z","initPublicAt":"2026-08-07T12:13:15.997Z","renderTemplate":null,"assistantRegexReplace":null,"enableMemorySchema":false,"memorySchema":null,"injectStyles":"ai{\n--bg:#090713;\n--panel:rgba(22,18,45,.88);\n--panel2:rgba(31,24,61,.68);\n--line:rgba(191,168,255,.2);\n--line2:rgba(99,230,255,.18);\n--text:#f5f1ff;\n--soft:#d8d0e8;\n--muted:#aca4c3;\n--dim:#7e768f;\n--purple:#9b72ff;\n--pink:#ff6fb5;\n--cyan:#63e6ff;\n--gold:#ffd76a;\n--danger:#ff7187;\n--green:#8dffcb;\nposition:relative;\nisolation:isolate;\ndisplay:block;\nbox-sizing:border-box;\nwidth:100%;\nmax-width:900px;\nmargin:8px auto;\noverflow:hidden;\nborder:1px solid var(--line);\nborder-radius:22px;\ncolor:var(--text);\nbackground:\nradial-gradient(circle at 8% 0%,rgba(155,114,255,.2),transparent 28%),\nradial-gradient(circle at 96% 14%,rgba(255,111,181,.12),transparent 25%),\nradial-gradient(circle at 48% 100%,rgba(99,230,255,.07),transparent 34%),\nlinear-gradient(155deg,rgba(25,19,50,.96),rgba(8,6,20,.97));\nbox-shadow:0 22px 65px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.05);\nfont:14px/1.75 \"Noto Sans SC\",\"Microsoft YaHei\",system-ui,sans-serif;\nletter-spacing:.015em;\n}\nai::before{\ncontent:\"\";\nposition:absolute;\nz-index:-2;\ninset:0;\npointer-events:none;\nopacity:.48;\nbackground-image:\nlinear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),\nlinear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),\nradial-gradient(circle,rgba(255,255,255,.7) 0 1px,transparent 1.5px);\nbackground-size:38px 38px,38px 38px,97px 83px;\n-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.75) 55%,transparent 100%);\nmask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.75) 55%,transparent 100%);\n}\nai::after{\ncontent:\"\";\nposition:absolute;\nz-index:-1;\nwidth:270px;\nheight:270px;\nright:-145px;\ntop:-150px;\npointer-events:none;\nborder:1px solid rgba(196,173,255,.16);\nborder-radius:50%;\nbox-shadow:\n0 0 0 30px rgba(155,114,255,.035),\n0 0 0 61px rgba(255,111,181,.025),\n0 0 65px rgba(155,114,255,.12);\nanimation:aiOrbit 12s ease-in-out infinite alternate;\n}\nai hd,ai article,ai ev,ai details,ai ft,ai section,ai p,ai q,ai d,ai f{\nbox-sizing:border-box;\n}\nai hd{\nposition:relative;\ndisplay:grid;\ngrid-template-columns:auto 1fr;\nalign-items:center;\ngap:2px 12px;\nmin-height:68px;\npadding:13px 17px;\noverflow:hidden;\nborder-bottom:1px solid var(--line);\nbackground:\nlinear-gradient(110deg,rgba(155,114,255,.13),rgba(255,111,181,.055) 55%,rgba(99,230,255,.055)),\nrgba(5,4,15,.25);\n}\nai hd::before{\ncontent:\"\";\nposition:absolute;\nleft:0;\nbottom:0;\nwidth:42%;\nheight:1px;\nbackground:linear-gradient(90deg,var(--purple),var(--pink),transparent);\nbox-shadow:0 0 12px rgba(155,114,255,.8);\nanimation:aiScan 5s ease-in-out infinite alternate;\n}\nai hd::after{\ncontent:\"✦\";\nposition:absolute;\nright:17px;\ntop:50%;\ncolor:rgba(99,230,255,.5);\nfont-size:18px;\ntext-shadow:0 0 14px var(--cyan);\ntransform:translateY(-50%);\nanimation:aiPulse 2.4s ease-in-out infinite;\n}\nai hd b{\ndisplay:flex;\nalign-items:center;\ngap:7px;\nmin-width:0;\ncolor:transparent;\nbackground:linear-gradient(100deg,#fff 5%,#cbb7ff 42%,#ff94c9 82%,#88efff);\n-webkit-background-clip:text;\nbackground-clip:text;\nfont-size:15px;\nfont-weight:900;\nletter-spacing:.08em;\n}\nai hd i{\njustify-self:start;\npadding:2px 8px;\nborder:1px solid rgba(99,230,255,.18);\nborder-radius:999px;\ncolor:var(--cyan);\nbackground:rgba(99,230,255,.055);\nfont:700 9px/1.7 ui-monospace,\"SFMono-Regular\",Consolas,monospace;\nletter-spacing:.1em;\n}\nai hd d{\ngrid-column:1/-1;\ndisplay:block;\npadding-right:26px;\noverflow:hidden;\ncolor:var(--muted);\nfont-size:11px;\ntext-overflow:ellipsis;\nwhite-space:nowrap;\n}\nai article{\nposition:relative;\ndisplay:block;\npadding:20px clamp(16px,3.5vw,29px) 13px;\n}\nai article h2{\nposition:relative;\nmargin:0 0 13px;\npadding:0 0 11px 17px;\ncolor:#fff;\nfont-size:clamp(18px,4.8vw,23px);\nline-height:1.35;\nletter-spacing:.025em;\n}\nai article h2::before{\ncontent:\"\";\nposition:absolute;\nleft:0;\ntop:.12em;\nwidth:4px;\nheight:1.05em;\nborder-radius:9px;\nbackground:linear-gradient(to bottom,var(--cyan),var(--purple),var(--pink));\nbox-shadow:0 0 14px rgba(155,114,255,.72);\n}\nai article h2::after{\ncontent:\"CHAPTER · DESTINY\";\ndisplay:block;\nmargin-top:4px;\ncolor:var(--dim);\nfont:800 8px/1.4 ui-monospace,Consolas,monospace;\nletter-spacing:.22em;\n}\nai article>em{\nposition:relative;\ndisplay:block;\nmargin:0 0 17px;\npadding:9px 12px 9px 29px;\nborder-top:1px solid rgba(99,230,255,.12);\nborder-bottom:1px solid rgba(99,230,255,.12);\ncolor:#bfeefa;\nbackground:linear-gradient(90deg,rgba(99,230,255,.075),transparent);\nfont-size:12px;\nfont-style:normal;\nline-height:1.65;\n}\nai article>em::before{\ncontent:\"✧\";\nposition:absolute;\nleft:10px;\ntop:9px;\ncolor:var(--cyan);\ntext-shadow:0 0 10px var(--cyan);\n}\nai article p{\nposition:relative;\nmargin:0;\npadding:7px 3px;\ncolor:var(--soft);\nfont-size:14px;\nline-height:1.92;\ntext-align:justify;\ntransition:color .2s ease,background .2s ease;\n}\nai article p:hover{\ncolor:#f4efff;\nbackground:linear-gradient(90deg,rgba(155,114,255,.035),transparent 75%);\n}\nai article q{\nquotes:none;\nposition:relative;\ndisplay:block;\nmargin:11px 0;\npadding:11px 13px 11px 16px;\noverflow:hidden;\nborder-left:2px solid var(--purple);\nborder-radius:0 11px 11px 0;\ncolor:#efeaff;\nbackground:\nlinear-gradient(100deg,rgba(155,114,255,.13),rgba(155,114,255,.035) 72%,transparent);\nbox-shadow:inset 0 1px 0 rgba(255,255,255,.025);\nline-height:1.8;\ntransition:transform .2s ease,border-color .2s ease,background .2s ease;\n}\nai article q::before{\ncontent:\"“\";\nposition:absolute;\nright:11px;\ntop:-9px;\ncolor:rgba(196,173,255,.11);\nfont:700 48px/1 Georgia,serif;\n}\nai article q:hover{\ntransform:translateX(3px);\nborder-color:var(--cyan);\nbackground:linear-gradient(100deg,rgba(155,114,255,.18),rgba(99,230,255,.035) 75%,transparent);\n}\nai article q[t=\"n\"]{\nborder-left-color:var(--pink);\nbackground:linear-gradient(100deg,rgba(255,111,181,.115),rgba(255,111,181,.025) 75%,transparent);\n}\nai article q[t=\"n\"]:hover{\nborder-left-color:var(--gold);\nbackground:linear-gradient(100deg,rgba(255,111,181,.16),rgba(255,215,106,.025) 75%,transparent);\n}\nai q f{\nposition:relative;\nz-index:1;\ndisplay:inline-flex;\nalign-items:center;\nmargin-right:8px;\npadding:1px 8px;\nborder:1px solid rgba(196,173,255,.2);\nborder-radius:999px;\ncolor:#d9c9ff;\nbackground:rgba(155,114,255,.11);\nfont-size:11px;\nfont-weight:900;\nfont-style:normal;\nvertical-align:1px;\n}\nai q[t=\"n\"] f{\nborder-color:rgba(255,111,181,.23);\ncolor:#ffabd3;\nbackground:rgba(255,111,181,.1);\n}\nai ev{\nposition:relative;\ndisplay:grid;\ngrid-template-columns:auto 1fr;\ngap:4px 12px;\nmargin:9px clamp(13px,3vw,23px);\npadding:13px 15px 13px 18px;\noverflow:hidden;\nborder:1px solid rgba(99,230,255,.19);\nborder-radius:14px;\nbackground:\nradial-gradient(circle at 100% 0%,rgba(99,230,255,.095),transparent 40%),\nlinear-gradient(115deg,rgba(99,230,255,.075),rgba(155,114,255,.075),rgba(4,3,13,.28));\nbox-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 8px 24px rgba(0,0,0,.13);\nanimation:aiEventIn .5s ease both;\n}\nai ev::before{\ncontent:\"\";\nposition:absolute;\nleft:0;\ntop:12%;\nwidth:2px;\nheight:76%;\nborder-radius:8px;\nbackground:linear-gradient(var(--cyan),var(--purple));\nbox-shadow:0 0 12px var(--cyan);\n}\nai ev::after{\ncontent:\"◇\";\nposition:absolute;\nright:13px;\ntop:8px;\ncolor:rgba(99,230,255,.22);\nfont-size:29px;\nline-height:1;\nanimation:aiSpin 10s linear infinite;\n}\nai ev>b{\nposition:relative;\nz-index:1;\ncolor:var(--cyan);\nfont-size:12px;\nfont-weight:900;\nletter-spacing:.08em;\n}\nai ev>i{\nposition:relative;\nz-index:1;\nalign-self:center;\njustify-self:end;\npadding-right:27px;\ncolor:#b9afcb;\nfont-size:10px;\nfont-style:normal;\n}\nai ev>d{\nposition:relative;\nz-index:1;\ngrid-column:1/-1;\ndisplay:block;\ncolor:#f1edfa;\nfont:700 12px/1.7 ui-monospace,Consolas,monospace;\n}\nai ev>p{\nposition:relative;\nz-index:1;\ngrid-column:1/-1;\nmargin:1px 0 0;\ncolor:var(--muted);\nfont-size:12px;\nline-height:1.7;\n}\nai ev[t=\"fate\"]{\ngrid-template-columns:1fr;\nborder-color:rgba(255,215,106,.2);\nbackground:\nradial-gradient(circle at 100% 0%,rgba(255,215,106,.1),transparent 42%),\nlinear-gradient(115deg,rgba(255,215,106,.07),rgba(255,111,181,.06),rgba(4,3,13,.3));\n}\nai ev[t=\"fate\"]::before{\nbackground:linear-gradient(var(--gold),var(--pink));\nbox-shadow:0 0 13px rgba(255,215,106,.72);\n}\nai ev[t=\"fate\"]::after{\ncontent:\"✦\";\ncolor:rgba(255,215,106,.28);\nanimation:aiPulse 2.2s ease-in-out infinite;\n}\nai ev[t=\"fate\"]>b{\ncolor:var(--gold);\n}\nai ev[t=\"fate\"]>d{\ngrid-column:auto;\npadding-right:24px;\ncolor:#e9dfc2;\nfont-family:inherit;\nfont-weight:400;\n}\nai details{\nposition:relative;\ndisplay:block;\nmargin:17px clamp(10px,2.6vw,20px) 13px;\noverflow:hidden;\nborder:1px solid var(--line);\nborder-radius:16px;\nbackground:linear-gradient(145deg,rgba(20,15,42,.76),rgba(6,5,17,.63));\nbox-shadow:inset 0 1px 0 rgba(255,255,255,.035);\n}\nai details>summary{\nposition:relative;\ndisplay:flex;\nalign-items:center;\nmin-height:48px;\npadding:10px 42px 10px 15px;\ncolor:#eee8fa;\nbackground:\nlinear-gradient(100deg,rgba(155,114,255,.13),rgba(255,111,181,.045),transparent);\nfont-size:13px;\nfont-weight:900;\nletter-spacing:.06em;\ncursor:pointer;\nlist-style:none;\ntransition:background .2s ease,color .2s ease;\n}\nai details>summary::-webkit-details-marker{\ndisplay:none;\n}\nai details>summary::before{\ncontent:\"◈\";\nmargin-right:9px;\ncolor:var(--purple);\ntext-shadow:0 0 12px var(--purple);\n}\nai details>summary::after{\ncontent:\"＋\";\nposition:absolute;\nright:15px;\ntop:50%;\ncolor:var(--cyan);\nfont-size:18px;\nfont-weight:400;\ntransform:translateY(-50%);\ntransition:transform .25s ease;\n}\nai details[open]>summary::after{\ntransform:translateY(-50%) rotate(45deg);\n}\nai details>summary:hover{\ncolor:#fff;\nbackground:linear-gradient(100deg,rgba(155,114,255,.2),rgba(255,111,181,.07),transparent);\n}\nai details>summary i{\nmargin-left:auto;\npadding:2px 8px;\nborder:1px solid rgba(99,230,255,.17);\nborder-radius:999px;\ncolor:var(--cyan);\nbackground:rgba(99,230,255,.055);\nfont-size:9px;\nfont-style:normal;\nletter-spacing:.04em;\n}\nai details>section{\ndisplay:block;\npadding:7px 14px 13px;\nborder-top:1px solid rgba(196,173,255,.1);\nanimation:aiOpen .32s ease both;\n}\nai details h3{\nposition:relative;\nmargin:9px 0 3px;\npadding:7px 9px 6px 15px;\nborder-bottom:1px solid rgba(196,173,255,.09);\ncolor:#c9b9ef;\nfont-size:11px;\nfont-weight:900;\nletter-spacing:.11em;\n}\nai details h3::before{\ncontent:\"\";\nposition:absolute;\nleft:1px;\ntop:50%;\nwidth:6px;\nheight:6px;\nborder:1px solid var(--purple);\ntransform:translateY(-50%) rotate(45deg);\nbox-shadow:0 0 8px rgba(155,114,255,.5);\n}\nai details section>p{\nposition:relative;\ndisplay:grid;\ngrid-template-columns:repeat(2,minmax(0,1fr));\ngap:0 13px;\nmargin:0;\npadding:7px 9px 7px 13px;\noverflow:hidden;\nborder-left:2px solid rgba(155,114,255,.48);\nborder-radius:0 9px 9px 0;\nbackground:linear-gradient(90deg,rgba(155,114,255,.045),transparent 72%);\ntransition:background .2s ease,border-color .2s ease,transform .2s ease;\n}\nai details section>p:hover{\nborder-left-color:var(--cyan);\nbackground:linear-gradient(90deg,rgba(99,230,255,.07),transparent 78%);\ntransform:translateX(2px);\n}\nai details p>d{\nposition:relative;\ndisplay:block;\nmin-width:0;\npadding:3px 1px;\ncolor:#b9b1c8;\nfont-size:12px;\nline-height:1.62;\noverflow-wrap:anywhere;\n}\nai details p>d::before{\ncontent:\"\";\ndisplay:inline-block;\nwidth:3px;\nheight:3px;\nmargin-right:7px;\nborder-radius:50%;\nbackground:currentColor;\nvertical-align:3px;\nopacity:.42;\n}\nai details p>f{\ngrid-column:1/-1;\ndisplay:block;\nmargin:1px 0 4px;\ncolor:#e0d3ff;\nfont-size:13px;\nfont-weight:900;\n}\nai details p[t=\"hero\"]{\nborder-left-color:var(--purple);\nbackground:linear-gradient(90deg,rgba(155,114,255,.075),rgba(255,111,181,.025),transparent);\n}\nai details p[t=\"hero\"]>f{\ncolor:transparent;\nbackground:linear-gradient(90deg,#fff,#c8afff,#ff9bcb);\n-webkit-background-clip:text;\nbackground-clip:text;\n}\nai details p[t=\"vital\"]{\nborder-left-color:var(--green);\nbackground:linear-gradient(90deg,rgba(141,255,203,.055),transparent);\n}\nai details p[t=\"vital\"]>d:first-child{\ncolor:#b9f8d9;\n}\nai details p[t=\"power\"]{\nborder-left-color:var(--gold);\nbackground:linear-gradient(90deg,rgba(255,215,106,.07),rgba(155,114,255,.025),transparent);\n}\nai details p[t=\"power\"]>f{\ncolor:var(--gold);\ntext-shadow:0 0 12px rgba(255,215,106,.2);\n}\nai details p[t=\"bag\"]{\nborder-left-color:#a99dbd;\n}\nai details p[t=\"npc\"]{\nborder-left-color:var(--cyan);\nbackground:linear-gradient(90deg,rgba(99,230,255,.055),transparent);\n}\nai details p[t=\"npc\"]>d:first-child{\ngrid-column:1/-1;\n}\nai details p[t=\"npc\"] f{\ndisplay:inline;\ncolor:var(--cyan);\nfont-weight:900;\n}\nai details p[t=\"quest\"]{\ngrid-template-columns:1fr;\nborder-left-color:var(--pink);\nbackground:linear-gradient(90deg,rgba(255,111,181,.065),transparent);\n}\nai details p[t=\"quest\"]>f{\ncolor:#ff9fce;\n}\nai details p[t=\"clue\"]{\ngrid-template-columns:1fr;\nborder-left-color:var(--cyan);\nbackground:linear-gradient(90deg,rgba(99,230,255,.055),transparent);\n}\nai details p[t=\"clue\"]>d{\ncolor:#badde6;\n}\nai details p[t=\"clue\"]>d::before{\ndisplay:none;\n}\nai details p[t=\"world\"]{\nborder-left-color:var(--purple);\nbackground:linear-gradient(90deg,rgba(155,114,255,.06),transparent);\n}\nai details p[t=\"memory\"]{\ngrid-template-columns:1fr;\nborder-left-color:#d79cff;\nbackground:linear-gradient(90deg,rgba(215,156,255,.055),rgba(255,111,181,.018),transparent);\n}\nai details p[t=\"memory\"]>d{\ncolor:#c8bdd7;\nfont-style:italic;\n}\nai details p[t=\"act\"]{\ngrid-template-columns:repeat(2,minmax(0,1fr));\ngap:6px;\npadding:8px;\nborder-left-color:var(--gold);\nbackground:linear-gradient(90deg,rgba(255,215,106,.045),transparent);\n}\nai details p[t=\"act\"]>d{\nposition:relative;\npadding:7px 9px;\nborder:1px solid rgba(196,173,255,.11);\nborder-radius:8px;\ncolor:#cfc6dd;\nbackground:rgba(255,255,255,.025);\ncursor:pointer;\ntransition:color .2s ease,border-color .2s ease,background .2s ease,transform .2s ease;\n}\nai details p[t=\"act\"]>d::before{\ndisplay:none;\n}\nai details p[t=\"act\"]>d:hover{\ncolor:#fff;\nborder-color:rgba(99,230,255,.3);\nbackground:linear-gradient(100deg,rgba(155,114,255,.13),rgba(99,230,255,.06));\ntransform:translateX(3px);\n}\nai ft{\nposition:relative;\ndisplay:flex;\nalign-items:center;\njustify-content:space-between;\ngap:13px;\nmin-height:45px;\npadding:10px 17px;\nborder-top:1px solid var(--line);\ncolor:var(--dim);\nbackground:rgba(3,2,11,.26);\n}\nai ft::before{\ncontent:\"\";\nposition:absolute;\nleft:50%;\ntop:0;\nwidth:35%;\nheight:1px;\nbackground:linear-gradient(90deg,transparent,var(--pink),transparent);\ntransform:translateX(-50%);\nbox-shadow:0 0 9px rgba(255,111,181,.5);\n}\nai ft i{\nflex:0 0 auto;\ncolor:#82778f;\nfont:800 8px/1.5 ui-monospace,Consolas,monospace;\nletter-spacing:.14em;\n}\nai ft b{\nmin-width:0;\ncolor:#a79db6;\nfont-size:10px;\nfont-weight:500;\nfont-style:italic;\ntext-align:right;\n}\nai ::selection{\ncolor:#fff;\nbackground:rgba(155,114,255,.55);\n}\n@keyframes aiOrbit{\n0%{transform:translate(0,0) scale(.96);opacity:.6}\n100%{transform:translate(-18px,17px) scale(1.06);opacity:1}\n}\n@keyframes aiScan{\n0%{width:18%;opacity:.45}\n100%{width:68%;opacity:1}\n}\n@keyframes aiPulse{\n0%,100%{opacity:.4;filter:brightness(.85);transform:translateY(-50%) scale(.88)}\n50%{opacity:1;filter:brightness(1.35);transform:translateY(-50%) scale(1.08)}\n}\n@keyframes aiSpin{\nto{transform:rotate(360deg)}\n}\n@keyframes aiEventIn{\n0%{opacity:0;transform:translateY(7px);filter:brightness(1.5)}\n100%{opacity:1;transform:translateY(0);filter:brightness(1)}\n}\n@keyframes aiOpen{\n0%{opacity:0;transform:translateY(-5px)}\n100%{opacity:1;transform:translateY(0)}\n}\n@media(max-width:600px){\nai{\nmargin:4px auto;\nborder-radius:17px;\nfont-size:14px;\n}\nai hd{\nmin-height:63px;\npadding:11px 13px;\ngap:2px 8px;\n}\nai hd::after{\nright:12px;\n}\nai hd b{\nfont-size:14px;\n}\nai hd i{\nfont-size:8px;\n}\nai hd d{\npadding-right:22px;\nfont-size:10px;\n}\nai article{\npadding:17px 14px 10px;\n}\nai article h2{\nmargin-bottom:10px;\nfont-size:19px;\n}\nai article p{\npadding:6px 1px;\nfont-size:14px;\nline-height:1.85;\ntext-align:left;\n}\nai article q{\nmargin:9px 0;\npadding:10px 10px 10px 13px;\n}\nai ev{\ngrid-template-columns:1fr;\nmargin:8px 10px;\npadding:12px 13px 12px 16px;\n}\nai ev>i{\njustify-self:start;\npadding-right:0;\n}\nai ev>d,ai ev>p{\ngrid-column:auto;\n}\nai details{\nmargin:14px 8px 11px;\nborder-radius:13px;\n}\nai details>summary{\npadding-left:12px;\n}\nai details>section{\npadding:6px 9px 10px;\n}\nai details h3{\nmargin-top:7px;\n}\nai details section>p,ai details p[t=\"act\"]{\ngrid-template-columns:1fr;\n}\nai details p[t=\"npc\"]>d:first-child{\ngrid-column:auto;\n}\nai details p>d{\nfont-size:12px;\n}\nai ft{\nalign-items:flex-start;\nflex-direction:column;\ngap:3px;\npadding:9px 13px;\n}\nai ft b{\ntext-align:left;\n}\n}\n@media(max-width:380px){\nai hd{\ngrid-template-columns:1fr;\n}\nai hd i{\ndisplay:none;\n}\nai article{\npadding-right:12px;\npadding-left:12px;\n}\nai article>em{\npadding-right:9px;\n}\nai details>summary i{\nmax-width:82px;\noverflow:hidden;\ntext-overflow:ellipsis;\nwhite-space:nowrap;\n}\n}\n@media(prefers-reduced-motion:reduce){\nai::after,ai hd::before,ai hd::after,ai ev::after{\nanimation:none;\n}\nai ev,ai details>section{\nanimation:none;\n}\nai article q,ai details section>p,ai details p[t=\"act\"]>d,ai details>summary{\ntransition:none;\n}\n}\n\n/* =========================================================\n   紫晶星穹 · 全局界面增强\n   建议追加在原 CSS 末尾，兼容常规网页及多数 AI 聊天界面\n   ========================================================= */\n\n:root{\n  --ai-bg:#090713;\n  --ai-bg-deep:#05030d;\n  --ai-panel:rgba(22,18,45,.88);\n  --ai-panel-solid:#17122f;\n  --ai-panel-2:rgba(31,24,61,.72);\n  --ai-panel-hover:rgba(42,32,80,.78);\n\n  --ai-line:rgba(191,168,255,.20);\n  --ai-line-bright:rgba(191,168,255,.42);\n  --ai-line-cyan:rgba(99,230,255,.28);\n\n  --ai-text:#f5f1ff;\n  --ai-soft:#d8d0e8;\n  --ai-muted:#aca4c3;\n  --ai-dim:#7e768f;\n\n  --ai-purple:#9b72ff;\n  --ai-purple-light:#cbb7ff;\n  --ai-pink:#ff6fb5;\n  --ai-cyan:#63e6ff;\n  --ai-gold:#ffd76a;\n  --ai-green:#8dffcb;\n  --ai-danger:#ff7187;\n\n  --ai-radius-sm:9px;\n  --ai-radius:14px;\n  --ai-radius-lg:20px;\n\n  --ai-shadow:\n    0 16px 45px rgba(0,0,0,.30),\n    inset 0 1px 0 rgba(255,255,255,.045);\n\n  --ai-glow:\n    0 0 0 1px rgba(155,114,255,.06),\n    0 0 22px rgba(155,114,255,.12);\n\n  --ai-ease:cubic-bezier(.2,.8,.2,1);\n}\n\n\n/* =========================================================\n   页面背景与基础字体\n   ========================================================= */\n\nhtml{\n  color-scheme:dark;\n  background:var(--ai-bg-deep);\n}\n\nbody{\n  color:var(--ai-text);\n  background:\n    radial-gradient(circle at 8% 0%,rgba(155,114,255,.18),transparent 29rem),\n    radial-gradient(circle at 96% 12%,rgba(255,111,181,.11),transparent 27rem),\n    radial-gradient(circle at 50% 100%,rgba(99,230,255,.07),transparent 35rem),\n    linear-gradient(155deg,#100b24 0%,#090713 48%,#05030d 100%);\n  background-attachment:fixed;\n  font-family:\"Noto Sans SC\",\"Microsoft YaHei\",system-ui,-apple-system,sans-serif;\n  accent-color:var(--ai-purple);\n}\n\nbody::before{\n  content:\"\";\n  position:fixed;\n  z-index:-1;\n  inset:0;\n  pointer-events:none;\n  opacity:.42;\n  background-image:\n    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),\n    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),\n    radial-gradient(circle,rgba(255,255,255,.48) 0 1px,transparent 1.5px);\n  background-size:38px 38px,38px 38px,101px 89px;\n  -webkit-mask-image:linear-gradient(to bottom,#000,rgba(0,0,0,.55) 60%,transparent);\n  mask-image:linear-gradient(to bottom,#000,rgba(0,0,0,.55) 60%,transparent);\n}\n\n::selection{\n  color:#fff;\n  background:rgba(155,114,255,.58);\n}\n\n\n/* =========================================================\n   页面主容器、面板、卡片\n   ========================================================= */\n\n:is(\n  .panel,\n  .card,\n  .modal-content,\n  .dialog-content,\n  .drawer-content,\n  .settings-panel,\n  .character-panel,\n  .world-panel,\n  .preview-panel,\n  .form-panel,\n  .chat-panel\n){\n  position:relative;\n  isolation:isolate;\n  overflow:hidden;\n  border:1px solid var(--ai-line);\n  border-radius:var(--ai-radius-lg);\n  color:var(--ai-text);\n  background:\n    radial-gradient(circle at 100% 0%,rgba(155,114,255,.10),transparent 38%),\n    linear-gradient(145deg,rgba(28,22,56,.90),rgba(9,7,22,.88));\n  box-shadow:var(--ai-shadow);\n  -webkit-backdrop-filter:blur(18px) saturate(1.12);\n  backdrop-filter:blur(18px) saturate(1.12);\n}\n\n:is(\n  .panel,\n  .card,\n  .modal-content,\n  .dialog-content,\n  .drawer-content,\n  .preview-panel\n)::before{\n  content:\"\";\n  position:absolute;\n  z-index:-1;\n  inset:0;\n  pointer-events:none;\n  background:\n    linear-gradient(\n      115deg,\n      transparent 0 32%,\n      rgba(255,255,255,.025) 42%,\n      rgba(99,230,255,.045) 49%,\n      rgba(155,114,255,.04) 55%,\n      transparent 68%\n    );\n  transform:translateX(-110%);\n  transition:transform .9s var(--ai-ease);\n}\n\n:is(\n  .panel,\n  .card,\n  .preview-panel\n):hover::before{\n  transform:translateX(110%);\n}\n\n\n/* =========================================================\n   标签导航\n   ========================================================= */\n\n:is(\n  .tabs,\n  .tab-list,\n  [role=\"tablist\"],\n  .nav-tabs\n){\n  display:flex;\n  align-items:center;\n  gap:6px;\n  max-width:100%;\n  padding:5px;\n  overflow-x:auto;\n  border:1px solid var(--ai-line);\n  border-radius:14px;\n  background:\n    linear-gradient(145deg,rgba(24,18,49,.80),rgba(8,6,20,.78));\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.035),\n    0 8px 24px rgba(0,0,0,.15);\n  scrollbar-width:none;\n}\n\n:is(.tabs,.tab-list,[role=\"tablist\"],.nav-tabs)::-webkit-scrollbar{\n  display:none;\n}\n\n:is(\n  .tab,\n  .tab-button,\n  [role=\"tab\"],\n  .nav-tabs &gt; li &gt; a\n){\n  position:relative;\n  isolation:isolate;\n  flex:0 0 auto;\n  min-height:38px;\n  padding:8px 15px;\n  overflow:hidden;\n  border:1px solid transparent;\n  border-radius:10px;\n  color:var(--ai-muted);\n  background:transparent;\n  font:800 12px/1.4 inherit;\n  letter-spacing:.045em;\n  text-decoration:none;\n  cursor:pointer;\n  transition:\n    color .22s ease,\n    border-color .22s ease,\n    background .22s ease,\n    transform .22s var(--ai-ease),\n    box-shadow .22s ease;\n}\n\n:is(\n  .tab,\n  .tab-button,\n  [role=\"tab\"],\n  .nav-tabs &gt; li &gt; a\n)::before{\n  content:\"\";\n  position:absolute;\n  z-index:-1;\n  inset:0;\n  opacity:0;\n  background:\n    linear-gradient(\n      110deg,\n      rgba(155,114,255,.18),\n      rgba(255,111,181,.08) 56%,\n      rgba(99,230,255,.11)\n    );\n  transition:opacity .22s ease;\n}\n\n:is(\n  .tab,\n  .tab-button,\n  [role=\"tab\"],\n  .nav-tabs &gt; li &gt; a\n):hover{\n  color:#fff;\n  border-color:rgba(191,168,255,.20);\n  background:rgba(155,114,255,.07);\n  transform:translateY(-1px);\n}\n\n:is(\n  .tab.active,\n  .tab-button.active,\n  [role=\"tab\"][aria-selected=\"true\"],\n  .nav-tabs &gt; li.active &gt; a\n){\n  color:#fff;\n  border-color:rgba(155,114,255,.40);\n  background:rgba(155,114,255,.15);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.07),\n    0 0 18px rgba(155,114,255,.16);\n}\n\n:is(\n  .tab.active,\n  .tab-button.active,\n  [role=\"tab\"][aria-selected=\"true\"],\n  .nav-tabs &gt; li.active &gt; a\n)::before{\n  opacity:1;\n}\n\n:is(\n  .tab.active,\n  .tab-button.active,\n  [role=\"tab\"][aria-selected=\"true\"]\n)::after{\n  content:\"\";\n  position:absolute;\n  left:16%;\n  right:16%;\n  bottom:0;\n  height:2px;\n  border-radius:10px;\n  background:linear-gradient(90deg,var(--ai-purple),var(--ai-pink),var(--ai-cyan));\n  box-shadow:\n    0 0 8px var(--ai-purple),\n    0 0 14px rgba(99,230,255,.42);\n}\n\n\n/* =========================================================\n   通用按钮：悬停扫光、按压波纹、聚焦反馈\n   ========================================================= */\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n){\n  position:relative;\n  isolation:isolate;\n  box-sizing:border-box;\n  min-height:38px;\n  padding:8px 15px;\n  overflow:hidden;\n  border:1px solid rgba(191,168,255,.25);\n  border-radius:11px;\n  color:var(--ai-text);\n  background:\n    linear-gradient(\n      115deg,\n      rgba(155,114,255,.19),\n      rgba(255,111,181,.08) 60%,\n      rgba(99,230,255,.08)\n    ),\n    rgba(18,14,39,.86);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.065),\n    0 7px 18px rgba(0,0,0,.18);\n  font-weight:800;\n  letter-spacing:.025em;\n  cursor:pointer;\n  -webkit-tap-highlight-color:transparent;\n  transition:\n    color .2s ease,\n    border-color .2s ease,\n    background .2s ease,\n    box-shadow .2s ease,\n    transform .16s var(--ai-ease),\n    filter .2s ease;\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n)::before{\n  content:\"\";\n  position:absolute;\n  z-index:-1;\n  top:-45%;\n  bottom:-45%;\n  left:-70%;\n  width:42%;\n  pointer-events:none;\n  opacity:0;\n  background:linear-gradient(\n    90deg,\n    transparent,\n    rgba(255,255,255,.12),\n    rgba(99,230,255,.30),\n    rgba(255,255,255,.16),\n    transparent\n  );\n  filter:blur(.2px);\n  transform:skewX(-22deg);\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n)::after{\n  content:\"\";\n  position:absolute;\n  z-index:-1;\n  left:50%;\n  top:50%;\n  width:12px;\n  height:12px;\n  pointer-events:none;\n  border-radius:50%;\n  opacity:0;\n  background:\n    radial-gradient(\n      circle,\n      rgba(255,255,255,.55) 0,\n      rgba(155,114,255,.25) 36%,\n      transparent 70%\n    );\n  transform:translate(-50%,-50%) scale(0);\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n):hover{\n  color:#fff;\n  border-color:rgba(99,230,255,.43);\n  background:\n    linear-gradient(\n      115deg,\n      rgba(155,114,255,.27),\n      rgba(255,111,181,.12) 58%,\n      rgba(99,230,255,.15)\n    ),\n    rgba(20,15,45,.92);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.11),\n    0 0 0 1px rgba(155,114,255,.06),\n    0 8px 24px rgba(0,0,0,.24),\n    0 0 20px rgba(155,114,255,.18);\n  transform:translateY(-2px);\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n):hover::before{\n  opacity:1;\n  animation:aiUiButtonShine .78s var(--ai-ease) forwards;\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n):active{\n  filter:brightness(1.18);\n  transform:translateY(0) scale(.965);\n  box-shadow:\n    inset 0 2px 8px rgba(0,0,0,.25),\n    0 0 18px rgba(99,230,255,.20);\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable,\n  .right_menu_button,\n  .drawer-toggle,\n  .inline-drawer-toggle\n):active::after{\n  opacity:1;\n  animation:aiUiClickWave .45s ease-out both;\n}\n\n:is(\n  button,\n  .button,\n  .btn,\n  [role=\"button\"],\n  .menu_button,\n  .interactable\n):focus-visible{\n  outline:2px solid rgba(99,230,255,.78);\n  outline-offset:3px;\n  border-color:var(--ai-cyan);\n  box-shadow:\n    0 0 0 4px rgba(99,230,255,.10),\n    0 0 22px rgba(99,230,255,.22);\n}\n\n:is(button,.button,.btn,[role=\"button\"]):disabled,\n:is(button,.button,.btn,[role=\"button\"])[aria-disabled=\"true\"]{\n  opacity:.42;\n  cursor:not-allowed;\n  filter:saturate(.55);\n  transform:none;\n  box-shadow:none;\n}\n\n\n/* 主要按钮 */\n\n:is(\n  .primary,\n  .btn-primary,\n  button[type=\"submit\"],\n  #send_but,\n  .send-button\n){\n  border-color:rgba(155,114,255,.55);\n  color:#fff;\n  background:\n    linear-gradient(110deg,#704de0,#a657db 52%,#d957a4 100%);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.20),\n    0 8px 24px rgba(95,47,190,.30),\n    0 0 18px rgba(155,114,255,.18);\n}\n\n:is(\n  .primary,\n  .btn-primary,\n  button[type=\"submit\"],\n  #send_but,\n  .send-button\n):hover{\n  border-color:rgba(99,230,255,.65);\n  background:\n    linear-gradient(110deg,#815eff,#bb61e9 50%,#f461af 100%);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.25),\n    0 10px 30px rgba(103,54,205,.38),\n    0 0 24px rgba(255,111,181,.23);\n}\n\n\n/* 危险按钮 */\n\n:is(.danger,.btn-danger,.delete-button,[data-action=\"delete\"]){\n  border-color:rgba(255,113,135,.38);\n  color:#ffdbe1;\n  background:\n    linear-gradient(115deg,rgba(255,113,135,.22),rgba(255,111,181,.10)),\n    rgba(31,12,27,.88);\n}\n\n:is(.danger,.btn-danger,.delete-button,[data-action=\"delete\"]):hover{\n  border-color:rgba(255,113,135,.65);\n  color:#fff;\n  box-shadow:\n    0 8px 24px rgba(0,0,0,.25),\n    0 0 22px rgba(255,113,135,.24);\n}\n\n\n/* 复制按钮与成功状态 */\n\n:is(.copy-button,.copy-btn,[data-action=\"copy\"]){\n  border-color:rgba(99,230,255,.28);\n  color:#c8f7ff;\n  background:\n    linear-gradient(110deg,rgba(99,230,255,.13),rgba(155,114,255,.13)),\n    rgba(10,15,30,.86);\n}\n\n:is(\n  .copy-button.copied,\n  .copy-btn.copied,\n  [data-action=\"copy\"][data-copied=\"true\"],\n  [data-action=\"copy\"].success\n){\n  border-color:rgba(141,255,203,.58);\n  color:#d8ffec;\n  background:\n    linear-gradient(110deg,rgba(141,255,203,.20),rgba(99,230,255,.12)),\n    rgba(9,30,25,.88);\n  box-shadow:\n    0 0 0 1px rgba(141,255,203,.08),\n    0 0 22px rgba(141,255,203,.18);\n  animation:aiUiSuccess .48s var(--ai-ease);\n}\n\n\n/* =========================================================\n   表单、角色配置输入区\n   ========================================================= */\n\n:is(\n  input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"range\"]),\n  textarea,\n  select,\n  .form-control,\n  [contenteditable=\"true\"]\n){\n  box-sizing:border-box;\n  width:100%;\n  min-height:42px;\n  border:1px solid rgba(191,168,255,.20);\n  border-radius:11px;\n  outline:none;\n  color:var(--ai-text);\n  background:\n    linear-gradient(135deg,rgba(155,114,255,.055),rgba(99,230,255,.025)),\n    rgba(7,5,18,.72);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.025),\n    inset 0 2px 12px rgba(0,0,0,.16);\n  font:inherit;\n  caret-color:var(--ai-cyan);\n  transition:\n    border-color .22s ease,\n    background .22s ease,\n    box-shadow .22s ease,\n    transform .22s ease;\n}\n\n:is(\n  input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"range\"]),\n  textarea,\n  select,\n  .form-control\n){\n  padding:10px 12px;\n}\n\ntextarea{\n  min-height:108px;\n  line-height:1.72;\n  resize:vertical;\n}\n\n:is(\n  input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"range\"]),\n  textarea,\n  select,\n  .form-control,\n  [contenteditable=\"true\"]\n):hover{\n  border-color:rgba(191,168,255,.34);\n  background:\n    linear-gradient(135deg,rgba(155,114,255,.08),rgba(99,230,255,.035)),\n    rgba(9,7,23,.80);\n}\n\n:is(\n  input:not([type=\"checkbox\"]):not([type=\"radio\"]):not([type=\"range\"]),\n  textarea,\n  select,\n  .form-control,\n  [contenteditable=\"true\"]\n):focus{\n  border-color:rgba(99,230,255,.62);\n  background:\n    linear-gradient(135deg,rgba(155,114,255,.10),rgba(99,230,255,.055)),\n    rgba(10,8,26,.92);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.04),\n    0 0 0 3px rgba(99,230,255,.075),\n    0 0 22px rgba(99,230,255,.12),\n    0 8px 24px rgba(0,0,0,.16);\n}\n\n::placeholder{\n  color:var(--ai-dim);\n  opacity:.82;\n}\n\nlabel,\n.form-label{\n  display:inline-flex;\n  align-items:center;\n  gap:7px;\n  margin-bottom:6px;\n  color:#d9cfee;\n  font-size:12px;\n  font-weight:800;\n  letter-spacing:.035em;\n}\n\nlabel::before,\n.form-label::before{\n  content:\"\";\n  width:5px;\n  height:5px;\n  flex:0 0 auto;\n  border:1px solid var(--ai-purple);\n  transform:rotate(45deg);\n  box-shadow:0 0 7px rgba(155,114,255,.55);\n}\n\n\n/* 开关与复选框 */\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"]{\n  width:17px;\n  height:17px;\n  accent-color:var(--ai-purple);\n  filter:drop-shadow(0 0 5px rgba(155,114,255,.36));\n  cursor:pointer;\n}\n\ninput[type=\"range\"]{\n  accent-color:var(--ai-purple);\n}\n\n\n/* =========================================================\n   聊天主区域\n   ========================================================= */\n\n:is(\n  #chat,\n  .chat,\n  .chat-container,\n  .messages,\n  .message-list,\n  .conversation\n){\n  position:relative;\n  box-sizing:border-box;\n  color:var(--ai-text);\n  background:\n    radial-gradient(circle at 8% 0%,rgba(155,114,255,.09),transparent 28%),\n    radial-gradient(circle at 100% 34%,rgba(99,230,255,.045),transparent 25%),\n    rgba(5,4,14,.40);\n}\n\n\n/* 单条消息 */\n\n:is(\n  .message,\n  .mes,\n  .chat-message,\n  [data-role=\"message\"]\n){\n  position:relative;\n  isolation:isolate;\n  box-sizing:border-box;\n  margin:10px 8px;\n  padding:14px 16px;\n  overflow:hidden;\n  border:1px solid rgba(191,168,255,.16);\n  border-radius:15px;\n  color:var(--ai-soft);\n  background:\n    radial-gradient(circle at 100% 0%,rgba(155,114,255,.075),transparent 38%),\n    linear-gradient(135deg,rgba(26,20,51,.75),rgba(10,8,24,.72));\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.035),\n    0 8px 25px rgba(0,0,0,.15);\n  transition:\n    border-color .24s ease,\n    background .24s ease,\n    box-shadow .24s ease,\n    transform .24s var(--ai-ease);\n}\n\n:is(\n  .message,\n  .mes,\n  .chat-message,\n  [data-role=\"message\"]\n)::before{\n  content:\"\";\n  position:absolute;\n  z-index:-1;\n  top:0;\n  bottom:0;\n  left:-45%;\n  width:30%;\n  pointer-events:none;\n  opacity:0;\n  background:linear-gradient(\n    90deg,\n    transparent,\n    rgba(155,114,255,.07),\n    rgba(99,230,255,.10),\n    transparent\n  );\n  transform:skewX(-18deg);\n}\n\n:is(\n  .message,\n  .mes,\n  .chat-message,\n  [data-role=\"message\"]\n)::after{\n  content:\"\";\n  position:absolute;\n  left:0;\n  top:15%;\n  width:2px;\n  height:70%;\n  border-radius:10px;\n  background:linear-gradient(var(--ai-cyan),var(--ai-purple),var(--ai-pink));\n  box-shadow:0 0 11px rgba(155,114,255,.58);\n  opacity:.72;\n}\n\n:is(\n  .message,\n  .mes,\n  .chat-message,\n  [data-role=\"message\"]\n):hover{\n  border-color:rgba(191,168,255,.30);\n  background:\n    radial-gradient(circle at 100% 0%,rgba(155,114,255,.11),transparent 42%),\n    linear-gradient(135deg,rgba(31,24,61,.82),rgba(11,9,27,.80));\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.05),\n    0 10px 30px rgba(0,0,0,.20),\n    0 0 22px rgba(155,114,255,.08);\n  transform:translateY(-1px);\n}\n\n:is(\n  .message,\n  .mes,\n  .chat-message,\n  [data-role=\"message\"]\n):hover::before{\n  opacity:1;\n  animation:aiUiMessageShine 1.05s var(--ai-ease) forwards;\n}\n\n\n/* 用户消息 */\n\n:is(\n  .message.user,\n  .chat-message.user,\n  .mes[is_user=\"true\"],\n  [data-role=\"message\"][data-author=\"user\"]\n){\n  margin-left:clamp(22px,7vw,74px);\n  border-color:rgba(255,111,181,.20);\n  background:\n    radial-gradient(circle at 100% 0%,rgba(255,111,181,.10),transparent 42%),\n    linear-gradient(135deg,rgba(52,24,61,.76),rgba(18,10,31,.76));\n}\n\n:is(\n  .message.user,\n  .chat-message.user,\n  .mes[is_user=\"true\"],\n  [data-role=\"message\"][data-author=\"user\"]\n)::after{\n  left:auto;\n  right:0;\n  background:linear-gradient(var(--ai-pink),var(--ai-purple));\n  box-shadow:0 0 12px rgba(255,111,181,.65);\n}\n\n\n/* AI 消息 */\n\n:is(\n  .message.assistant,\n  .message.ai,\n  .chat-message.assistant,\n  .mes[is_user=\"false\"],\n  [data-role=\"message\"][data-author=\"assistant\"]\n){\n  margin-right:clamp(12px,4vw,44px);\n  border-color:rgba(99,230,255,.18);\n  background:\n    radial-gradient(circle at 0 0,rgba(99,230,255,.07),transparent 35%),\n    radial-gradient(circle at 100% 0%,rgba(155,114,255,.09),transparent 42%),\n    linear-gradient(135deg,rgba(20,25,52,.76),rgba(10,8,25,.78));\n}\n\n\n/* 名称、时间、正文 */\n\n:is(\n  .message-name,\n  .mes .name_text,\n  .chat-message .author,\n  .message .author\n){\n  color:transparent;\n  background:linear-gradient(90deg,#fff,var(--ai-purple-light),#ff9dce,var(--ai-cyan));\n  -webkit-background-clip:text;\n  background-clip:text;\n  font-size:13px;\n  font-weight:900;\n  letter-spacing:.055em;\n}\n\n:is(\n  .message-time,\n  .mes .timestamp,\n  .chat-message time,\n  .message time\n){\n  color:var(--ai-dim);\n  font:700 9px/1.4 ui-monospace,Consolas,monospace;\n  letter-spacing:.055em;\n}\n\n:is(\n  .message-content,\n  .mes_text,\n  .chat-message-content\n){\n  color:var(--ai-soft);\n  line-height:1.85;\n  overflow-wrap:anywhere;\n}\n\n:is(\n  .message-content,\n  .mes_text,\n  .chat-message-content\n) a{\n  color:var(--ai-cyan);\n  text-decoration-color:rgba(99,230,255,.35);\n  text-underline-offset:3px;\n}\n\n:is(\n  .message-content,\n  .mes_text,\n  .chat-message-content\n) blockquote{\n  margin:10px 0;\n  padding:10px 14px;\n  border-left:2px solid var(--ai-purple);\n  border-radius:0 10px 10px 0;\n  color:#eee9fa;\n  background:linear-gradient(90deg,rgba(155,114,255,.12),transparent);\n}\n\n:is(\n  .message-content,\n  .mes_text,\n  .chat-message-content\n) code{\n  padding:.15em .42em;\n  border:1px solid rgba(99,230,255,.15);\n  border-radius:6px;\n  color:#bff5ff;\n  background:rgba(4,10,20,.65);\n  font-family:ui-monospace,\"SFMono-Regular\",Consolas,monospace;\n}\n\n:is(\n  .message-content,\n  .mes_text,\n  .chat-message-content\n) pre{\n  position:relative;\n  padding:14px;\n  overflow:auto;\n  border:1px solid rgba(99,230,255,.17);\n  border-radius:12px;\n  background:\n    linear-gradient(135deg,rgba(99,230,255,.035),rgba(155,114,255,.04)),\n    rgba(3,4,13,.78);\n  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);\n}\n\n\n/* 头像 */\n\n:is(.avatar,.message-avatar,.mesAvatarWrapper){\n  position:relative;\n  border:1px solid rgba(191,168,255,.30);\n  border-radius:13px;\n  background:rgba(15,11,31,.85);\n  box-shadow:\n    0 0 0 3px rgba(155,114,255,.055),\n    0 0 18px rgba(155,114,255,.15);\n}\n\n:is(.avatar,.message-avatar,.mesAvatarWrapper) img{\n  border-radius:inherit;\n}\n\n\n/* =========================================================\n   底部聊天输入框\n   ========================================================= */\n\n:is(\n  #send_form,\n  .chat-input,\n  .chat-input-container,\n  .composer,\n  .message-composer,\n  .input-area\n){\n  position:relative;\n  isolation:isolate;\n  display:flex;\n  align-items:flex-end;\n  gap:8px;\n  box-sizing:border-box;\n  padding:9px;\n  border:1px solid rgba(191,168,255,.22);\n  border-radius:16px;\n  background:\n    radial-gradient(circle at 0 100%,rgba(155,114,255,.09),transparent 40%),\n    linear-gradient(135deg,rgba(25,19,50,.92),rgba(8,6,20,.94));\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.05),\n    0 12px 35px rgba(0,0,0,.28),\n    0 0 24px rgba(155,114,255,.07);\n  -webkit-backdrop-filter:blur(18px);\n  backdrop-filter:blur(18px);\n  transition:\n    border-color .22s ease,\n    box-shadow .22s ease,\n    transform .22s ease;\n}\n\n:is(\n  #send_form,\n  .chat-input,\n  .chat-input-container,\n  .composer,\n  .message-composer,\n  .input-area\n)::before{\n  content:\"\";\n  position:absolute;\n  left:12%;\n  right:12%;\n  top:-1px;\n  height:1px;\n  pointer-events:none;\n  opacity:.68;\n  background:linear-gradient(\n    90deg,\n    transparent,\n    var(--ai-purple),\n    var(--ai-pink),\n    var(--ai-cyan),\n    transparent\n  );\n  box-shadow:0 0 12px rgba(155,114,255,.48);\n  animation:aiUiComposerLine 4.8s ease-in-out infinite alternate;\n}\n\n:is(\n  #send_form,\n  .chat-input,\n  .chat-input-container,\n  .composer,\n  .message-composer,\n  .input-area\n):focus-within{\n  border-color:rgba(99,230,255,.40);\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.06),\n    0 0 0 3px rgba(99,230,255,.055),\n    0 14px 38px rgba(0,0,0,.32),\n    0 0 28px rgba(99,230,255,.10);\n}\n\n:is(\n  #send_textarea,\n  .chat-input textarea,\n  .composer textarea,\n  .message-composer textarea\n){\n  flex:1 1 auto;\n  min-width:0;\n  min-height:44px;\n  max-height:240px;\n  margin:0;\n  border-color:transparent;\n  background:rgba(5,4,15,.35);\n  box-shadow:none;\n  resize:none;\n}\n\n:is(\n  #send_textarea,\n  .chat-input textarea,\n  .composer textarea,\n  .message-composer textarea\n):focus{\n  border-color:rgba(99,230,255,.20);\n  box-shadow:inset 0 0 18px rgba(99,230,255,.025);\n}\n\n:is(#send_but,.send-button,.composer-send){\n  flex:0 0 auto;\n  width:44px;\n  min-width:44px;\n  height:44px;\n  min-height:44px;\n  padding:0;\n  border-radius:12px;\n}\n\n\n/* =========================================================\n   实时预览区\n   ========================================================= */\n\n:is(.preview,.live-preview,.preview-panel){\n  position:relative;\n  min-height:120px;\n  padding:16px;\n  border-color:rgba(99,230,255,.19);\n  background:\n    radial-gradient(circle at 100% 0%,rgba(99,230,255,.08),transparent 38%),\n    radial-gradient(circle at 0 100%,rgba(155,114,255,.08),transparent 42%),\n    linear-gradient(145deg,rgba(20,18,47,.83),rgba(7,6,18,.88));\n}\n\n:is(.preview,.live-preview,.preview-panel)::after{\n  content:\"LIVE PREVIEW\";\n  position:absolute;\n  right:13px;\n  top:10px;\n  color:rgba(99,230,255,.42);\n  font:800 8px/1.4 ui-monospace,Consolas,monospace;\n  letter-spacing:.14em;\n}\n\n\n/* =========================================================\n   提示、成功、警告、错误\n   ========================================================= */\n\n:is(.notice,.alert,.toast,.notification){\n  position:relative;\n  overflow:hidden;\n  padding:11px 14px 11px 17px;\n  border:1px solid var(--ai-line);\n  border-radius:12px;\n  color:var(--ai-soft);\n  background:\n    linear-gradient(110deg,rgba(155,114,255,.12),rgba(99,230,255,.045)),\n    rgba(10,8,25,.92);\n  box-shadow:var(--ai-shadow);\n  animation:aiUiToastIn .36s var(--ai-ease) both;\n}\n\n:is(.notice,.alert,.toast,.notification)::before{\n  content:\"\";\n  position:absolute;\n  left:0;\n  top:14%;\n  width:2px;\n  height:72%;\n  border-radius:8px;\n  background:linear-gradient(var(--ai-cyan),var(--ai-purple));\n  box-shadow:0 0 10px var(--ai-cyan);\n}\n\n:is(.success,.alert-success,.toast-success){\n  border-color:rgba(141,255,203,.28);\n  color:#d8ffec;\n  background:\n    linear-gradient(110deg,rgba(141,255,203,.12),rgba(99,230,255,.045)),\n    rgba(7,24,21,.92);\n}\n\n:is(.warning,.alert-warning,.toast-warning){\n  border-color:rgba(255,215,106,.30);\n  color:#fff0bd;\n  background:\n    linear-gradient(110deg,rgba(255,215,106,.12),rgba(255,111,181,.04)),\n    rgba(27,21,8,.92);\n}\n\n:is(.error,.alert-danger,.toast-error){\n  border-color:rgba(255,113,135,.32);\n  color:#ffd7de;\n  background:\n    linear-gradient(110deg,rgba(255,113,135,.14),rgba(255,111,181,.045)),\n    rgba(29,8,18,.92);\n}\n\n\n/* =========================================================\n   滚动条\n   ========================================================= */\n\n*{\n  scrollbar-width:thin;\n  scrollbar-color:rgba(155,114,255,.52) rgba(8,6,20,.36);\n}\n\n*::-webkit-scrollbar{\n  width:8px;\n  height:8px;\n}\n\n*::-webkit-scrollbar-track{\n  border-radius:999px;\n  background:rgba(8,6,20,.42);\n}\n\n*::-webkit-scrollbar-thumb{\n  border:2px solid rgba(8,6,20,.65);\n  border-radius:999px;\n  background:\n    linear-gradient(\n      to bottom,\n      rgba(99,230,255,.72),\n      rgba(155,114,255,.76),\n      rgba(255,111,181,.65)\n    );\n}\n\n*::-webkit-scrollbar-thumb:hover{\n  background:\n    linear-gradient(\n      to bottom,\n      var(--ai-cyan),\n      var(--ai-purple),\n      var(--ai-pink)\n    );\n}\n\n\n/* =========================================================\n   动画\n   ========================================================= */\n\n@keyframes aiUiButtonShine{\n  0%{\n    left:-70%;\n    opacity:0;\n  }\n  18%{\n    opacity:.85;\n  }\n  100%{\n    left:132%;\n    opacity:0;\n  }\n}\n\n@keyframes aiUiClickWave{\n  0%{\n    opacity:.9;\n    transform:translate(-50%,-50%) scale(0);\n  }\n  100%{\n    opacity:0;\n    transform:translate(-50%,-50%) scale(14);\n  }\n}\n\n@keyframes aiUiMessageShine{\n  0%{\n    left:-45%;\n    opacity:0;\n  }\n  18%{\n    opacity:1;\n  }\n  100%{\n    left:120%;\n    opacity:0;\n  }\n}\n\n@keyframes aiUiComposerLine{\n  0%{\n    left:6%;\n    right:48%;\n    opacity:.42;\n  }\n  100%{\n    left:42%;\n    right:7%;\n    opacity:1;\n  }\n}\n\n@keyframes aiUiSuccess{\n  0%{\n    filter:brightness(1);\n    transform:scale(1);\n  }\n  45%{\n    filter:brightness(1.4);\n    transform:scale(1.035);\n  }\n  100%{\n    filter:brightness(1);\n    transform:scale(1);\n  }\n}\n\n@keyframes aiUiToastIn{\n  from{\n    opacity:0;\n    filter:brightness(1.35);\n    transform:translateY(8px) scale(.985);\n  }\n  to{\n    opacity:1;\n    filter:brightness(1);\n    transform:translateY(0) scale(1);\n  }\n}\n\n\n/* =========================================================\n   移动端\n   ========================================================= */\n\n@media(max-width:600px){\n  :is(\n    .panel,\n    .card,\n    .modal-content,\n    .dialog-content,\n    .drawer-content,\n    .settings-panel,\n    .character-panel,\n    .world-panel,\n    .preview-panel,\n    .form-panel,\n    .chat-panel\n  ){\n    border-radius:15px;\n  }\n\n  :is(\n    .tabs,\n    .tab-list,\n    [role=\"tablist\"],\n    .nav-tabs\n  ){\n    justify-content:flex-start;\n    padding:4px;\n  }\n\n  :is(\n    .tab,\n    .tab-button,\n    [role=\"tab\"],\n    .nav-tabs &gt; li &gt; a\n  ){\n    min-height:36px;\n    padding:7px 12px;\n    font-size:11px;\n  }\n\n  :is(\n    .message,\n    .mes,\n    .chat-message,\n    [data-role=\"message\"]\n  ){\n    margin:8px 4px;\n    padding:12px 13px;\n    border-radius:13px;\n  }\n\n  :is(\n    .message.user,\n    .chat-message.user,\n    .mes[is_user=\"true\"],\n    [data-role=\"message\"][data-author=\"user\"]\n  ){\n    margin-left:14px;\n  }\n\n  :is(\n    .message.assistant,\n    .message.ai,\n    .chat-message.assistant,\n    .mes[is_user=\"false\"],\n    [data-role=\"message\"][data-author=\"assistant\"]\n  ){\n    margin-right:8px;\n  }\n\n  :is(\n    #send_form,\n    .chat-input,\n    .chat-input-container,\n    .composer,\n    .message-composer,\n    .input-area\n  ){\n    gap:6px;\n    padding:7px;\n    border-radius:14px;\n  }\n\n  :is(#send_but,.send-button,.composer-send){\n    width:42px;\n    min-width:42px;\n    height:42px;\n    min-height:42px;\n  }\n\n  :is(\n    button,\n    .button,\n    .btn,\n    [role=\"button\"]\n  ){\n    min-height:40px;\n  }\n}\n\n\n/* =========================================================\n   减少动态效果\n   ========================================================= */\n\n@media(prefers-reduced-motion:reduce){\n  *,\n  *::before,\n  *::after{\n    scroll-behavior:auto !important;\n    animation-duration:.001ms !important;\n    animation-iteration-count:1 !important;\n    transition-duration:.001ms !important;\n  }\n\n  :is(\n    button,\n    .button,\n    .btn,\n    [role=\"button\"]\n  ):hover{\n    transform:none;\n  }\n\n  :is(\n    .message,\n    .mes,\n    .chat-message,\n    [data-role=\"message\"]\n  ):hover{\n    transform:none;\n  }\n}","options":null,"language":"zh","containsNSFW":false,"publicAccess":true,"deletedAt":null,"isAnonymous":true,"enableSafeguard":false,"defaultModelSettings":{"model":"mango_gemini_vertex/gemini-2.5-flash-thinking-128","contextWindow":4},"totalConversations":4,"totalMessages":4,"totalCreditsUsed":89,"totalTokensUsed":12330,"totalPlayedUsers":4,"deeplyPlayed":0,"fixedPromptLength":2207,"lorebookLength":0,"author":{"id":"NN5f3iHYlTRtNZ4yBkm4iXHnJ7zukSQD","name":"485059025","displayUsername":"2787087494","username":"2787087494"},"cardsTags":[{"tag":{"name":"自定义角色","cardsCount":307}},{"tag":{"name":"各种玩法","cardsCount":148}},{"tag":{"name":"肉鸽","cardsCount":7}},{"tag":{"name":"已破甲","cardsCount":2489}},{"tag":{"name":"全局美化","cardsCount":1}},{"tag":{"name":"超低消耗","cardsCount":550}},{"tag":{"name":"ROLL天赋","cardsCount":39}},{"tag":{"name":"自由探索","cardsCount":1280}}],"cardsVoices":[],"prompt":null,"promptSizeBytes":null}