/* ====== 黑黑页漫风格 - 全局合并版 ====== */

/* 1. 隐藏默认顶部颜色条 */
[class*="bg-[#F1CBCB]"], [class*="bg-[#c9e1e9]"] {
    display: none !important;
}

/* 2. 聊天框主容器 - 漫画气泡 */
.bg-gray-100\/90.relative.inline-block {
    position: relative !important;
    isolation: isolate !important;
    margin: 1em 0 !important;
    padding: 1.25em 1em 0.75em !important;
    border-radius: 0 !important;
    background-color: #ffffff !important;
    background-image: radial-gradient(circle at 25% 25%, rgba(0,0,0,0.05) 1px, transparent 1px), radial-gradient(circle at 75% 75%, rgba(0,0,0,0.05) 1px, transparent 1px) !important;
    background-size: 20px 20px !important;
    border: 3px solid #000000 !important;
    box-shadow: 5px 5px 0px rgba(0, 0, 0, 0.2), inset 0 0 15px rgba(0, 0, 0, 0.05) !important;
}

.bg-gray-100\/90.relative.inline-block::before {
    content: '' !important;
    position: absolute !important;
    width: 20px !important;
    height: 20px !important;
    background: #ffffff !important;
    border: 3px solid #000000 !important;
    border-top: none !important;
    border-left: none !important;
    transform: rotate(45deg) !important;
    z-index: -1 !important;
}

/* 输出气泡尾巴在左侧 —— 修正：保留 border-bottom 和 border-left，使尖角左上和左下有黑边 */
.chat-answer-container .bg-gray-100\/90.relative.inline-block::before {
    left: -12px !important;
    top: 20px !important;
    transform: rotate(45deg) !important;
    border: 3px solid #000000 !important;
    border-bottom: 3px solid #000000 !important;
    border-left: 3px solid #000000 !important;
    border-top: none !important;
    border-right: none !important;
}

/* 输入气泡尾巴在右侧 —— 修正：保留 border-bottom 和 border-right，使尖角右上和右下有黑边 */
.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90)::before {
    right: -12px !important;
    top: 20px !important;
    transform: rotate(-45deg) !important;
    border: 3px solid #000000 !important;
    border-bottom: 3px solid #000000 !important;
    border-right: 3px solid #000000 !important;
    border-top: none !important;
    border-left: none !important;
}

/* 聊天框文本样式 */
.bg-gray-100\/90.relative.inline-block .markdown-body {
    color: #000000 !important;
    background: transparent !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica Neue', Arial, sans-serif !important;
    font-size: 0.95em !important;
    line-height: 1.5 !important;
    position: relative !important;
    z-index: 1 !important;
    text-shadow: none !important;
}

/* 聊天框底部元素 */
.bg-gray-100\/90.relative.inline-block .MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary,
.bg-gray-100\/90.relative.inline-block .MuiTypography-root.MuiTypography-body2.css-6c0gf2,
.bg-gray-100\/90.relative.inline-block .text-orange-500 {
    color: #333333 !important;
    font-size: 0.8em !important;
    transition: all 0.2s ease !important;
}

.bg-gray-100\/90.relative.inline-block .MuiButtonBase-root.MuiButton-root.MuiButton-text.MuiButton-textPrimary:hover {
    color: #000000 !important;
    transform: translateY(1px) !important;
    text-decoration: underline !important;
}

/* 自定义加载动画 */
.style_dot-flashing__8L91Q.style_text__zGhNq {
    display: none !important;
}

.flex.items-center.justify-center.w-6.h-5 {
    position: relative !important;
    width: 60px !important;
    height: 24px !important;
}

.flex.items-center.justify-center.w-6.h-5::before {
    content: 'LOADING' !important;
    position: absolute !important;
    font-family: 'Courier New', Courier, monospace !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    color: #000000 !important;
    animation: comicLoading 1.5s steps(2, start) infinite !important;
}

@keyframes comicLoading {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

/* 聊天框角落拟声词 */
.bg-gray-100\/90.relative.inline-block::after {
    content: 'POW!' !important;
    position: absolute !important;
    top: -8px !important;
    right: 10px !important;
    font-family: 'Impact', 'Arial Black', sans-serif !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    color: #000000 !important;
    transform: rotate(10deg) !important;
    opacity: 0.7 !important;
    z-index: 2 !important;
}

.bg-gray-100\/90.relative.inline-block:not(.chat-answer-container .bg-gray-100\/90)::after {
    content: 'BANG!' !important;
    left: 10px !important;
    right: auto !important;
    transform: rotate(-5deg) !important;
}

/* 3. 代码块根容器 */
.markdown-body pre,
.markdown-body pre > div {
    background-color: #f8f8f8 !important;
    background-image: linear-gradient(rgba(0, 0, 0, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 0, 0, 0.05) 1px, transparent 1px) !important;
    background-size: 20px 20px !important;
    border: 3px solid #000000 !important;
    border-radius: 0 !important;
    box-shadow: 4px 4px 0px rgba(0, 0, 0, 0.15) !important;
    overflow: hidden !important;
    margin: 1.5em 0 !important;
    position: relative !important;
}

.markdown-body pre > div {
    padding: 0 !important;
}

/* 代码块头部栏 */
.markdown-body pre > div > div.flex.justify-between.h-8.items-center.p-1.pl-3.border-b,
.markdown-body pre > div > div.border-b {
    background-color: #222222 !important;
    border-bottom: 3px solid #000000 !important;
    min-height: 32px !important;
    padding: 0 12px !important;
}

/* 代码块语言标签 */
.markdown-body pre > div > div.flex.justify-between > div.text-\[13px\].text-gray-500.font-normal {
    color: #ffffff !important;
    font-family: 'Courier New', monospace !important;
    font-weight: bold !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
}

/* 代码块复制按钮 */
.markdown-body pre div[data-tooltip-id^="copy-tooltip-"],
.markdown-body pre .box-border.cursor-pointer.bg-white {
    background: #ffffff !important;
    border: 2px solid #000000 !important;
    border-radius: 0 !important;
    padding: 2px !important;
    transition: all 0.1s ease !important;
}

.markdown-body pre div[data-tooltip-id^="copy-tooltip-"]:hover {
    background-color: #eeeeee !important;
    transform: translate(1px, 1px) !important;
    box-shadow: 2px 2px 0px rgba(0, 0, 0, 0.2) !important;
}

/* 代码内容区 */
.markdown-body pre > div > div[node],
.markdown-body pre > div > div:last-child {
    display: block !important;
    overflow-x: auto !important;
    background: #ffffff !important;
    color: #222222 !important;
    padding: 1em 1em 1em 1.5em !important;
    border-top: 2px dashed #aaa !important;
}

/* 代码语法高亮 */
.markdown-body pre code[class^="language-"],
.markdown-body pre > div > div[node] > code {
    white-space: pre-wrap !important;  /* 修改：pre 改为 pre-wrap 实现自动换行 */
    word-wrap: break-word !important;  /* 新增：长单词换行 */
    font-family: 'SFMono-Regular', 'Consolas', 'Liberation Mono', 'Menlo', monospace !important;
    font-size: 0.9em !important;
    background: transparent !important;
}

/* 语法颜色覆盖 */
.markdown-body pre code[class^="language-"] span[style*="color:rgb(200,0,0)"],
.markdown-body pre code[class^="language-"] span[style*="color: #c92a2a"] {
    color: #990000 !important; 
}
.markdown-body pre code[class^="language-"] span[style*="color:rgb(0,100,0)"],
.markdown-body pre code[class^="language-"] span[style*="color: #2b8a3e"] {
    color: #006600 !important; 
}
.markdown-body pre code[class^="language-"] span[style*="color:rgb(0,0,200)"],
.markdown-body pre code[class^="language-"] span[style*="color: #1971c2"] {
    color: #0000aa !important; 
}

/* 纯代码块 */
.markdown-body pre > code[node],
.markdown-body pre > code:only-child {
    display: block !important;
    padding: 1em !important;
    background: #ffffff !important;
    border: 3px solid #000000 !important;
    border-radius: 0 !important;
    font-family: 'Courier New', monospace !important;
    color: #000000 !important;
    overflow-x: auto !important;
    box-shadow: 4px 4px 0px rgba(0, 0, 0, 0.15) !important;
    white-space: pre-wrap !important;  /* 新增：确保纯代码块也换行 */
    word-wrap: break-word !important;   /* 新增 */
}

/* 代码块右上角标签 */
.markdown-body pre > div::before {
    content: 'CODE' !important;
    position: absolute !important;
    top: -12px !important;
    right: 10px !important;
    background: #000000 !important;
    color: #ffffff !important;
    font-family: 'Impact', sans-serif !important;
    font-size: 10px !important;
    padding: 2px 6px !important;
    letter-spacing: 1px !important;
    z-index: 5 !important;
}

/* 4. 顶部栏 */
.sticky.w-full.top-0.flex.items-center {
    background-color: #ffffff !important;
    background-image: radial-gradient(circle at 10% 20%, rgba(0,0,0,0.03) 1px, transparent 1px), radial-gradient(circle at 90% 80%, rgba(0,0,0,0.03) 1px, transparent 1px) !important;
    background-size: 30px 30px !important;
    border-bottom: 4px solid #000000 !important;
    padding: 8px 16px !important;
    box-shadow: 0 5px 10px rgba(0,0,0,0.1) !important;
}

/* 模型选择器 */
#ai-model-selector .group.flex.items-center {
    border: 2px solid #000000 !important;
    background-color: #f0f0f0 !important;
    padding: 4px 10px !important;
    border-radius: 0 !important;
    font-weight: bold !important;
}

#ai-model-selector .truncate.text-\[13px\] {
    color: #000000 !important;
    font-family: 'Arial Black', 'Impact', sans-serif !important;
}

/* 设置按钮 */
#header-setting-button {
    border: 2px solid #000000 !important;
    background: #ffffff !important;
    border-radius: 50% !important;
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#header-setting-button:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* 开场白选择器 */
div.flex.items-center.h-9.bg-white.rounded-md.cursor-pointer.group[class*="border-gray"] {
    border: 3px dashed #666 !important;
    background-color: #fafafa !important;
    border-radius: 0 !important;
    padding: 0 12px !important;
    font-style: italic !important;
}

div.flex.items-center.h-9.cursor-pointer.group svg[data-icon="SlidersH"] path {
    stroke: #000000 !important;
    stroke-width: 2 !important;
}

/* 按钮栏 */
#ai-mod-button2 button.MuiButton-root {
    border: 2px solid #000000 !important;
    background-color: #ffffff !important;
    color: #000000 !important;
    border-radius: 0 !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.15s ease !important;
    margin: 0 4px !important;
}

#ai-mod-button2 button.MuiButton-root:hover {
    background-color: #000000 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 3px 3px 0px rgba(0,0,0,0.2) !important;
}

/* 底部输入栏 */
#ai-chat-bottom-input {
    background-color: #ffffff !important;
    border-top: 4px solid #000000 !important;
    padding: 12px 16px !important;
}

#ai-chat-input {
    background-color: #f8f8f8 !important;
    border: 3px solid #000000 !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif !important;
    color: #000000 !important;
    font-size: 1em !important;
    box-shadow: inset 2px 2px 5px rgba(0,0,0,0.05) !important;
}

#ai-chat-input::placeholder {
    color: #888888 !important;
    font-style: italic !important;
}

#ai-chat-input::selection {
    background-color: #000000 !important;
    color: #ffffff !important;
}

/* 分页栏 */
.MuiPaginationItem-root {
    border: 2px solid #000000 !important;
    color: #000000 !important;
    background-color: #ffffff !important;
    border-radius: 0 !important;
    min-width: 32px !important;
    height: 32px !important;
    font-weight: bold !important;
}

.MuiPaginationItem-root.Mui-selected {
    background-color: #000000 !important;
    color: #ffffff !important;
}

.MuiPaginationItem-root.Mui-disabled {
    border-color: #cccccc !important;
    color: #cccccc !important;
}

.MuiPaginationItem-icon {
    color: #000000 !important;
}

.MuiPaginationItem-root:hover:not(.Mui-disabled) {
    background-color: #eeeeee !important;
}

/* 评论区 */
div[class*="w-full"][class*="bg-white"][class*="bottom-0"] {
    background-color: #f5f5f5 !important;
    background-image: repeating-linear-gradient(0deg, transparent, transparent 19px, rgba(0,0,0,0.03) 20px) !important;
    border-top: 4px solid #000000 !important;
    padding: 16px !important;
}

div.text-lg.font-bold {
    color: #000000 !important;
    font-family: 'Impact', 'Arial Black', sans-serif !important;
    font-size: 1.3em !important;
    border-bottom: 3px double #000000 !important;
    padding-bottom: 8px !important;
    margin-bottom: 16px !important;
}

p.MuiTypography-body1.text-grey-600 {
    color: #444444 !important;
}

span.MuiRating-iconEmpty svg {
    fill: #cccccc !important;
    stroke: #000000 !important;
    stroke-width: 1 !important;
}

span.MuiRating-iconFilled svg {
    fill: #000000 !important;
}

span.text-orange-500 {
    color: #000000 !important;
    font-weight: bold !important;
}

textarea.rc-textarea {
    border: 3px solid #000000 !important;
    background-color: #ffffff !important;
    border-radius: 0 !important;
    padding: 12px !important;
    font-family: inherit !important;
    color: #000000 !important;
}

div.bg-gray-100.text-gray-500 {
    background-color: #eeeeee !important;
    color: #666666 !important;
    border-top: 2px solid #000000 !important;
}

div.cursor-pointer.group.flex.items-center.justify-center {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 2px solid #000000 !important;
    padding: 8px 20px !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

div.cursor-pointer.group.flex.items-center.justify-center:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
}

div.style_divider__mW0YX {
    border-color: #000000 !important;
    border-width: 2px !important;
    opacity: 0.5 !important;
}

button.MuiButton-containedPrimary {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: 2px solid #000000 !important;
    border-radius: 0 !important;
    font-weight: bold !important;
}

button.MuiButton-outlinedPrimary {
    background-color: transparent !important;
    color: #000000 !important;
    border: 2px solid #000000 !important;
    border-radius: 0 !important;
    font-weight: bold !important;
}

div.p-3.overflow-y-auto { }
div.group.ml-0 {
    background-color: #ffffff !important;
    border: 2px solid #000000 !important;
    padding: 12px !important;
    margin-bottom: 12px !important;
    border-radius: 0 !important;
    position: relative !important;
}

div.group img.rounded-full {
    border: 2px solid #000000 !important;
    padding: 2px !important;
    background-color: #ffffff !important;
}

div.text-sm.text-grey-600 span.font-bold {
    color: #000000 !important;
    font-family: 'Arial Black', sans-serif !important;
}

span.text-\[10px\] {
    background-color: #000000 !important;
    color: #ffffff !important;
    padding: 1px 4px !important;
    margin-left: 4px !important;
    border-radius: 2px !important;
}

div.break-all {
    color: #222222 !important;
    line-height: 1.5 !important;
    margin: 8px 0 !important;
}

div.text-xs.text-grey-600 {
    color: #666666 !important;
    font-style: italic !important;
}

button.text-gray-400 {
    color: #888888 !important;
    border: 1px solid #cccccc !important;
    padding: 2px 6px !important;
    border-radius: 0 !important;
}

button.text-gray-400:hover {
    color: #000000 !important;
    border-color: #000000 !important;
    background-color: #f0f0f0 !important;
}

span.cursor-pointer {
    color: #000000 !important;
    font-weight: bold !important;
    text-decoration: underline !important;
}