WorldView,info,secret,ActorAge {display:none;}
sysmsg {
    display: block;
    text-align: center;
    font-size: 12px;
    color: #999;
    padding: 8px 15px;
    margin: 5px 0;
    line-height: 1.4;
}

wechat {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 375px;
    height: 667px;
    max-height: 90vh;
    margin: 20px auto;
    background-color: #EDEDED;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
                 "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(0,0,0,0.2);
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    wechat {
        height: 100vh;
        max-height: 100vh;
    }
}

chatname {
    display: block;
    background-color: #F7F7F7;
    text-align: center;
    padding: 15px;
    font-size: 16px;
    color: #000;
    font-weight: 500;
    border-bottom: 1px solid #D9D9D9;
    flex-shrink: 0;
    z-index: 10;
}

msg {
    display: block;
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding-bottom: 10px;
}

msg::-webkit-scrollbar {
    width: 4px;
}

msg::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

msg::-webkit-scrollbar-track {
    background-color: transparent;
}

UIB {
    display: flex;
    flex-direction: row-reverse;
    padding: 10px 15px;
    margin: 8px 0;
    align-items: flex-start;
}

UIA {
    display: grid;
    grid-template-columns: 42px 1fr;
    grid-template-rows: auto auto;
    column-gap: 10px;
    row-gap: 5px;
    padding: 10px 15px;
    margin: 8px 0;
    align-items: start;
}

f {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    min-width: 42px;
    border-radius: 5px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    font-size: 20px;
    font-weight: 500;
    user-select: none;
}

UIB f {
    background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
    margin-left: 10px;
}

UIA f {
    background: linear-gradient(135deg, #fa709a 0%, #fee140 100%);
    grid-row: 1 / 3;
    grid-column: 1;
}

UIA::before {
    content: attr(name);
    display: block;
    font-size: 12px;
    color: #999;
    grid-column: 2;
    grid-row: 1;
    align-self: start;
}

UIB span, UIA span {
    max-width: 100%;
    padding: 10px 13px;
    border-radius: 8px;
    font-size: 15px;
    line-height: 1.6;
    word-wrap: break-word;
    word-break: break-word;
    position: relative;
}

UIB span {
    background-color: #95EC69;
    color: #000;
    margin-right: 5px;
}

UIA span {
    background-color: #FFFFFF;
    color: #000;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    max-width: calc(100% - 20px);
}

UIB span::after {
    content: '';
    position: absolute;
    right: -6px;
    top: 13px;
    width: 0;
    height: 0;
    border-left: 6px solid #95EC69;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
}

UIA span::before {
    content: '';
    position: absolute;
    left: -6px;
    top: 13px;
    width: 0;
    height: 0;
    border-right: 6px solid #FFFFFF;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
}

/* 底部输入栏：用 wechat::after 替代 <hr> */
wechat::after {
    content: '';
    display: flex;
    align-items: center;
    height: 55px;
    min-height: 55px;
    background-color: #F7F7F7;
    border-top: 1px solid #D9D9D9;
    flex-shrink: 0;
    padding: 0 10px;
    box-sizing: border-box;
    background-image:
        /* 语音按钮 */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M12 14c1.66 0 3-1.34 3-3V5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3z'/%3E%3Cpath d='M17 11c0 2.76-2.24 5-5 5s-5-2.24-5-5H5c0 3.53 2.61 6.43 6 6.92V21h2v-3.08c3.39-.49 6-3.39 6-6.92h-2z'/%3E%3C/svg%3E"),
        /* 输入框 */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='230' height='36'%3E%3Crect x='0.5' y='0.5' width='229' height='35' rx='6' ry='6' fill='%23FFFFFF' stroke='%23D9D9D9' stroke-width='1'/%3E%3C/svg%3E"),
        /* 表情按钮 */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Ccircle cx='15.5' cy='9.5' r='1.5'/%3E%3Ccircle cx='8.5' cy='9.5' r='1.5'/%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm0-4c-2.2 0-4-1.8-4-4h1.5c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5H16c0 2.2-1.8 4-4 4z'/%3E%3C/svg%3E"),
        /* 加号按钮 */
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23666'%3E%3Cpath d='M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z'/%3E%3C/svg%3E");
    background-size: 18px 18px, calc(100% - 120px) 36px, 24px 24px, 24px 24px;
    background-position: 12px center, 48px center, right 48px center, right 12px center;
    background-repeat: no-repeat;
}

UIA[id="1"] f {
    background: linear-gradient(135deg, #7f1d1d 0%, #7c2d12 100%);
}
UIA[id="2"] f {
    background: linear-gradient(135deg, #0a0f2c 0%, #103e9a 100%);
}
UIA[id="3"] f {
    background: linear-gradient(135deg, #0b3d02 0%, #0e7c3b 100%);
}
UIA[id="4"] f {
    background: linear-gradient(135deg, #4c1d95 0%, #6b21a8 100%);
}
UIA[id="5"] f {
    background: linear-gradient(135deg, #5a1a01 0%, #7c2d12 100%);
}
UIA[id="6"] f {
    background: linear-gradient(135deg, #134e4a 0%, #0f766e 100%);
}
UIA[id="7"] f {
    background: linear-gradient(135deg, #86198f 0%, #9f1239 100%);
}
UIA[id="8"] f {
    background: linear-gradient(135deg, #365314 0%, #1a2e05 100%);
}
UIA[id="9"] f {
    background: linear-gradient(135deg, #0f4c5c 0%, #1b4965 100%);
}
UIA[id="10"] f {
    background: linear-gradient(135deg, #3a0d12 0%, #701a1a 100%);
}
UIA[id="11"] f {
    background: linear-gradient(135deg, #3730a3 0%, #1e1b4b 100%);
}
UIA[id="12"] f {
    background: linear-gradient(135deg, #065f46 0%, #064e3b 100%);
}
UIA[id="13"] f {
    background: linear-gradient(135deg, #5d3400 0%, #7a3e00 100%);
}
UIA[id="14"] f {
    background: linear-gradient(135deg, #0b132b 0%, #1b2a41 100%);
}
UIA[id="15"] f {
    background: linear-gradient(135deg, #701a75 0%, #9d174d 100%);
}
UIA[id="16"] f {
    background: linear-gradient(135deg, #052e16 0%, #14532d 100%);
}
UIA[id="17"] f {
    background: linear-gradient(135deg, #0d3b66 0%, #125d75 100%);
}
UIA[id="18"] f {
    background: linear-gradient(135deg, #3d0711 0%, #6a1b1a 100%);
}
UIA[id="19"] f {
    background: linear-gradient(135deg, #1e3a8a 0%, #1e2f6f 100%);
}
UIA[id="20"] f {
    background: linear-gradient(135deg, #0b3d3d 0%, #115e59 100%);
}
UIA[id="21"] f {
    background: linear-gradient(135deg, #6a2e12 0%, #8a3b12 100%);
}
UIA[id="22"] f {
    background: linear-gradient(135deg, #0a2472 0%, #103e9a 100%);
}
UIA[id="23"] f {
    background: linear-gradient(135deg, #124c4c 0%, #166a5d 100%);
}
UIA[id="24"] f {
    background: linear-gradient(135deg, #4c1d95 0%, #831843 100%);
}
UIA[id="25"] f {
    background: linear-gradient(135deg, #0b2447 0%, #19376d 100%);
}
UIA[id="26"] f {
    background: linear-gradient(135deg, #600000 0%, #a30000 100%);
}
UIA[id="27"] f {
    background: linear-gradient(135deg, #065f46 0%, #0f766e 100%);
}
UIA[id="28"] f {
    background: linear-gradient(135deg, #3b0764 0%, #1e1b4b 100%);
}
UIA[id="29"] f {
    background: linear-gradient(135deg, #4d2600 0%, #7a3e00 100%);
}
UIA[id="30"] f {
    background: linear-gradient(135deg, #003554 0%, #001219 100%);
}
.group.is-assistant > .border.border-muted:has(.flex.gap-2.w-full.h-full.items-center.justify-center) .prose-sm {
    min-height: 80px !important;
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    background: transparent !important;
    opacity: 1 !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* e) 确保伪元素本身也不受继承的 opacity/filter 影响 */
.flex.gap-2.w-full.h-full.items-center.justify-center::before,
.flex.gap-2.w-full.h-full.items-center.justify-center::after {
    opacity: 1 !important;
    filter: none !important;
}





/* 原: .bg-gray-100\/90.relative.inline-block → 统一聊天框 */
.group > .border.border-muted {
    background-color: transparent !important;
}

.group.is-user > .border.border-muted {
    background-color: #95EC69 !important;
    color: #000 !important;
    padding: 10px 13px !important;
    border-radius: 8px !important;
    position: relative !important;
    box-shadow: none !important;
}


.is-assistant.w-fit {
  width: 100% !important;
}

/* 第三层：assistant 内的卡片容器 */
.is-assistant.w-fit > .flex.w-fit.max-w-full.min-w-0.flex-col.gap-2 {
  width: 100% !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* 第四层：.space-y-3 内容区 */
.is-assistant .space-y-3.max-w-\[100dvw\] {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* ===== 核心：loading 动画本体 ===== */
.flex.items-center.justify-center.size-6 {
  position: relative;
  width: auto !important;
  height: 80px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  opacity: 1 !important;
}

/* 隐藏原生三圆点 */
.flex.items-center.justify-center.size-6 > .flex.gap-2 {
  display: none !important;
}

/* 消息气泡 SVG */
.flex.items-center.justify-center.size-6::before {
  content: "";
  width: 80px;
  height: 50px;
  background-image: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODAiIGhlaWdodD0iNTAiIHZpZXdCb3g9IjAgMCA4MCA1MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8IS0tIOa2iOaBr+awlOazoiAtLT4KICA8ZGVmcz4KICAgIDxmaWx0ZXIgaWQ9InNoYWRvdyIgeD0iLTUwJSIgeT0iLTUwJSIgd2lkdGg9IjIwMCUiIGhlaWdodD0iMjAwJSI+CiAgICAgIDxmZUdhdXNzaWFuQmx1ciBpbj0iU291cmNlQWxwaGEiIHN0ZERldmlhdGlvbj0iMiIvPgogICAgICA8ZmVPZmZzZXQgZHg9IjAiIGR5PSIyIiByZXN1bHQ9Im9mZnNldGJsdXIiLz4KICAgICAgPGZlRmxvb2QgZmxvb2QtY29sb3I9IiMwMDAwMDAiIGZsb29kLW9wYWNpdHk9IjAuMSIvPgogICAgICA8ZmVDb21wb3NpdGUgaW4yPSJvZmZzZXRibHVyIiBvcGVyYXRvcj0iaW4iLz4KICAgICAgPGZlTWVyZ2U+CiAgICAgICAgPGZlTWVyZ2VOb2RlLz4KICAgICAgICA8ZmVNZXJnZU5vZGUgaW49IlNvdXJjZUdyYXBoaWMiLz4KICAgICAgPC9mZU1lcmdlPgogICAgPC9maWx0ZXI+CiAgPC9kZWZzPgogIAogIDwhLS0g5rGf5aSp6IOM5pmvIC0tPgogIDxyZWN0IHg9IjEwIiB5PSI1IiB3aWR0aD0iNjAiIGhlaWdodD0iMzUiIHJ4PSI4IiBmaWxsPSIjOTVFQzY5IiBmaWx0ZXI9InVybCgjc2hhZG93KSIvPgogIDwhLS0g5bCP5bC+5be0IC0tPgogIDxwYXRoIGQ9Ik0gMTAgMjUgTCA1IDMwIEwgMTAgMzAiIGZpbGw9IiM5NUVDNjkiLz4KICAKICA8IS0tIOaJk+Wtl+WKqOeUuyAtLT4KICA8Y2lyY2xlIGN4PSIyNSIgY3k9IjIyLjUiIHI9IjQiIGZpbGw9IiNmZmZmZmYiPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0ib3BhY2l0eSIgdmFsdWVzPSIwLjM7MTswLjM7MC4zIiBkdXI9IjEuNHMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+CiAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJjeSIgdmFsdWVzPSIyMi41OzE4OzIyLjU7MjIuNSIgZHVyPSIxLjRzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIvPgogIDwvY2lyY2xlPgogIAogIDxjaXJjbGUgY3g9IjQwIiBjeT0iMjIuNSIgcj0iNCIgZmlsbD0iI2ZmZmZmZiI+CiAgICA8YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJvcGFjaXR5IiB2YWx1ZXM9IjAuMzswLjM7MTswLjMiIGR1cj0iMS40cyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiLz4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9ImN5IiB2YWx1ZXM9IjIyLjU7MjIuNTsxODsyMi41IiBkdXI9IjEuNHMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIi8+CiAgPC9jaXJjbGU+CiAgCiAgPGNpcmNsZSBjeD0iNTUiIGN5PSIyMi41IiByPSI0IiBmaWxsPSIjZmZmZmZmIj4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9Im9wYWNpdHkiIHZhbHVlcz0iMC4zOzAuMzswLjM7MSIgZHVyPSIxLjRzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIvPgogICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iY3kiIHZhbHVlcz0iMjIuNTsyMi41OzIyLjU7MTgiIGR1cj0iMS40cyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiLz4KICA8L2NpcmNsZT4KPC9zdmc+');
  background-size: contain;
  background-repeat: no-repeat;
  animation: bubbleFadeIn 0.3s ease-out;
}

/* 提示文字 */
.flex.items-center.justify-center.size-6::after {
  content: "正在构思回复......";
  font-size: 13px;
  color: #999;
  font-weight: normal;
  white-space: nowrap;
  animation: textFadeIn 0.5s ease-out 0.2s both;
}


/* ============================================================
   🎞️ 动画关键帧（原样保留）
   ============================================================ */

@keyframes bubbleFadeIn {
    from {
        opacity: 0;
        transform: scale(0.8) translateY(10px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

@keyframes textFadeIn {
    from {
        opacity: 0;
        transform: translateY(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

#prompt-input [data-slot="input-group"] {
  background-color: #F7F7F7;
  border: none;
  border-top: 1px solid #D9D9D9;
  border-radius: 0;
  box-shadow: none;
  padding: 7px 10px;
  box-sizing: border-box;
  gap: 8px;
  align-items: flex-end;
}

#prompt-input textarea {
  background-color: #FFFFFF;
  border: 1px solid #D9D9D9;
  border-radius: 6px;
  color: #181818;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
               "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  font-size: 16px;
  line-height: 22px;
  padding: 7px 10px;
  min-height: 36px;
  box-shadow: none;
  box-sizing: border-box;
}

#prompt-input textarea::placeholder {
  color: #B2B2B2;
}

#prompt-input-footer button:has(svg.lucide-corner-down-left) {
  background-color: #07C160;
  color: #FFFFFF;
  border: none;
  border-radius: 6px;
  padding: 0 14px;
  min-height: 32px;
  font-size: 15px;
  font-weight: 500;
  box-shadow: none;
}

#prompt-input-footer button:has(svg.lucide-corner-down-left):hover {
  background-color: #06AD56;
}

#prompt-input-footer button:has(svg.lucide-corner-down-left) svg.lucide-corner-down-left {
  color: #FFFFFF;
  stroke: #FFFFFF;
}

#prompt-input-header {
  background-color: transparent;
  border: none;
  padding: 0;
  gap: 6px;
}

#prompt-input-footer {
  background-color: transparent;
  border: none;
  padding: 0;
  margin-top: 6px;
}
