

/* Markdown CSS Styles */
.code_box {
    background-color: #2d2d2d;
    border: 1px solid #404040;
    border-radius: 4px;
    padding: 16px;
    margin: 8px 0;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 14px;
    line-height: 2.16;
    overflow-x: auto;
    color: #e8e8e8;
    width: 100%;
    display: block;
    box-sizing: border-box;
}

.code_box h1, .code_box h2, .code_box h3, .code_box h4, .code_box h5, .code_box h6 {
    margin-top: 3px;
    margin-bottom: 1px;
    font-weight: 600;
    color: #ffffff;
}

.code_box h1 { font-size: 1.5em; }
.code_box h2 { font-size: 1.3em; }
.code_box h3 { font-size: 1.2em; }
.code_box h4 { font-size: 1.1em; }
.code_box h5 { font-size: 1em; }
.code_box h6 { font-size: 0.9em; }

.code_box p {
    margin: 2px 0;
    line-height: 1.584;
}

/* 减少列表与前面段落的距离 */
.code_box p + ul,
.code_box p + ol,
.code_box h1 + ul,
.code_box h1 + ol,
.code_box h2 + ul,
.code_box h2 + ol,
.code_box h3 + ul,
.code_box h3 + ol,
.code_box h4 + ul,
.code_box h4 + ol,
.code_box h5 + ul,
.code_box h5 + ol,
.code_box h6 + ul,
.code_box h6 + ol {
    margin-top: 2px;
}

.code_box ul, .code_box ol {
    margin: -2px 0;
    padding-left: 16px;
}

/* 默认列表项样式 */
.code_box li {
    margin: 0 0;
    line-height: 0.75;
}

/* 1级列表项 - 行高为当前的2倍 */
.code_box > ul > li,
.code_box > ol > li {
    line-height: 1.2 !important;
    margin-bottom: -8px !important;
    padding-bottom: 0 !important;
}

/* 1级列表项之间的间距调整 - 设置为与2级列表相同 */
pre.code_box > ul > li + li,
pre.code_box > ol > li + li {
    margin-top: -6px !important;
}

/* 最高优先级：确保第1级列表项间距生效 */
.code_box > ul > li:first-child + li,
.code_box > ol > li:first-child + li,
.code_box > ul > li:nth-child(2),
.code_box > ol > li:nth-child(2) {
    margin-top: -6px !important;
}

/* 2级列表项 - 行高为当前的一半 */
.code_box ul ul li,
.code_box ol ol li,
.code_box ul ol li,
.code_box ol ul li {
    line-height: 1.125 !important;
}

/* 2级列表项之间的间距控制 - 覆盖通用规则 */
.code_box ul ul li + li,
.code_box ol ol li + li,
.code_box ul ol li + li,
.code_box ol ul li + li {
    margin-top: -6px !important;
}

/* 减少嵌套列表的间距 - 降为现在的2% */
.code_box ul ul, .code_box ol ol,
.code_box ul ol, .code_box ol ul {
    margin: -12px 0 !important;
    padding-left: 12px;
}


/* 1级列表项与2级列表项之间的间距控制 - 增高到1.6倍 */
.code_box > ul > li + ul,
.code_box > ol > li + ol,
.code_box > ul > li + ol,
.code_box > ol > li + ul {
    margin-top: -6px !important;
}

/* 减少列表与前面元素的间距 */
.code_box * + ul,
.code_box * + ol {
    margin-top: -4px;
}

/* 减少列表与后面元素的间距 */
.code_box ul + *,
.code_box ol + * {
    margin-top: -4px;
}

/* 确保所有列表样式在浏览器中正确渲染 - 全局兼容性 */
@media screen and (max-width: 1920px) {
    .code_box > ul > li + ul,
    .code_box > ol > li + ol,
    .code_box > ul > li + ol,
    .code_box > ol > li + ul {
        margin-top: -6px !important;
    }

    pre.code_box > ul > li + li,
    pre.code_box > ol > li + li,
    .code_box > ul > li:first-child + li,
    .code_box > ol > li:first-child + li,
    .code_box > ul > li:nth-child(2),
    .code_box > ol > li:nth-child(2) {
        margin-top: -6px !important;
    }
}

/* 确保在所有浏览器中强制应用列表样式 */
.code_box > ul > li:nth-child(n+2),
.code_box > ol > li:nth-child(n+2) {
    margin-top: -6px !important;
}

.code_box > ul > li > ul,
.code_box > ol > li > ol,
.code_box > ul > li > ol,
.code_box > ol > li > ul {
    margin-top: -6px !important;
}

/* 强制确保2级列表间距不变 */
.code_box ul ul li + li,
.code_box ol ol li + li,
.code_box ul ol li + li,
.code_box ol ul li + li {
    margin-top: -6px !important;
}

/* 超高优先级规则 - 确保在所有情况下都生效 */
body .code_box > ul > li + ul,
body .code_box > ol > li + ol,
body .code_box > ul > li + ol,
body .code_box > ol > li + ul {
    margin-top: -6px !important;
}

body .code_box > ul > li + li,
body .code_box > ol > li + li {
    margin-top: -6px !important;
}

/* 直接使用内联样式级别的优先级 */
.code_box > ul > li:nth-child(n+2),
.code_box > ol > li:nth-child(n+2) {
    margin-top: -6px !important;
}

.code_box > ul > li > ul,
.code_box > ol > li > ol,
.code_box > ul > li > ol,
.code_box > ol > li > ul {
    margin-top: -6px !important;
}

/* 确保列表内部的元素间距也为0 */
.code_box li p,
.code_box li h1,
.code_box li h2,
.code_box li h3,
.code_box li h4,
.code_box li h5,
.code_box li h6 {
    margin-top: 0;
    margin-bottom: 0;
}

.code_box blockquote {
    border-left: 4px solid #555;
    margin: 2px 0;
    padding-left: 16px;
    color: #bbb;
    font-style: italic;
}

.code_box code {
    background-color: #1e1e1e;
    padding: 2px 4px;
    border-radius: 3px;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 3em;
    color: #f8f8f2;
}

.code_box pre {
    background-color: #1e1e1e;
    padding: 12px;
    border-radius: 4px;
    overflow-x: auto;
    margin: 2px 0;
    color: #f8f8f2;
    font-size: 1.08em !important;
}

/* 确保pre内部的code标签也使用相同的字体大小 */
.code_box pre code {
    background-color: transparent;
    padding: 0;
    font-size: 1.08em !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

/* Python关键字高亮样式 */
.code_box .keyword-python { color: #ff79c6; font-weight: bold; }
.code_box .python-file { color: #50fa7b; font-weight: bold; text-decoration: underline; }
.code_box .equals-sign { color: #ff5555; font-weight: bold; }
.code_box .double-dash { color: #8be9fd; font-weight: bold; }
.code_box .keyword-import { color: #ff79c6; }
.code_box .keyword-def { color: #ff79c6; font-weight: bold; }
.code_box .keyword-class { color: #ff79c6; font-weight: bold; }
.code_box .keyword-if { color: #ff79c6; font-weight: bold; }
.code_box .keyword-for { color: #ff79c6; font-weight: bold; }
.code_box .keyword-while { color: #ff79c6; font-weight: bold; }
.code_box .keyword-return { color: #ff79c6; font-weight: bold; }
.code_box .keyword-try { color: #ff79c6; font-weight: bold; }
.code_box .keyword-except { color: #ff79c6; font-weight: bold; }
.code_box .keyword-else { color: #ff79c6; font-weight: bold; }
.code_box .keyword-elif { color: #ff79c6; font-weight: bold; }

/* 其他语法元素高亮样式 */
.code_box .string { color: #f1fa8c; }
.code_box .comment { color: #6272a4; font-style: italic; }
.code_box .number { color: #bd93f9; }
.code_box .function { color: #50fa7b; }

/* 使用内联样式进行语法高亮，避免显示class属性 */
.code_box code .keyword-python,
.code_box pre .keyword-python { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-import,
.code_box pre .keyword-import { color: #ff79c6; }
.code_box code .keyword-def,
.code_box pre .keyword-def { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-class,
.code_box pre .keyword-class { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-if,
.code_box pre .keyword-if { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-for,
.code_box pre .keyword-for { color: #ff79c6 !important; font-weight: bold !important; }
.code_box code .keyword-in,
.code_box pre .keyword-in { color: #ff79c6 !important; font-weight: bold !important; }
.code_box code .keyword-while,
.code_box pre .keyword-while { color: #ff79c6; font-weight: bold; }

/* 强制所有关键字高亮样式生效 */
.code_box code span[style*="color: #ff79c6"],
.code_box pre span[style*="color: #ff79c6"] {
    font-weight: bold !important;
    color: #ff79c6 !important;
}
.code_box code .keyword-return,
.code_box pre .keyword-return { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-try,
.code_box pre .keyword-try { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-except,
.code_box pre .keyword-except { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-else,
.code_box pre .keyword-else { color: #ff79c6; font-weight: bold; }
.code_box code .keyword-elif,
.code_box pre .keyword-elif { color: #ff79c6; font-weight: bold; }
.code_box code .string,
.code_box pre .string { color: #f1fa8c; }
.code_box code .comment,
.code_box pre .comment { color: #6272a4; font-style: italic; }
.code_box code .number,
.code_box pre .number { color: #bd93f9; }
.code_box code .function,
.code_box pre .function { color: #50fa7b; }
.code_box code .python-file,
.code_box pre .python-file { color: #50fa7b; font-weight: bold; text-decoration: underline; }
.code_box code .equals-sign,
.code_box pre .equals-sign { color: #ff5555; font-weight: bold; }
.code_box code .double-dash,
.code_box pre .double-dash { color: #8be9fd; font-weight: bold; }

/* ===== 关键修复：pre.code_box 渲染 Markdown 后的表格样式 ===== */
/* 当 pre.code_box 包含表格时，需要覆盖 pre 的默认样式 */
pre.code_box {
    /* 保持原有样式，但允许内容正常渲染 */
    white-space: pre-wrap !important;
}

/* pre.code_box 内的表格样式 - 使用更高优先级选择器 */
pre.code_box table,
.code_box > table {
    border-collapse: collapse !important;
    width: 100% !important;
    margin: 12px 0 !important;
    display: table !important;
}

pre.code_box thead,
.code_box > thead {
    display: table-header-group !important;
}

pre.code_box tbody,
.code_box > tbody {
    display: table-row-group !important;
}

pre.code_box tr,
.code_box > tr {
    display: table-row !important;
}

pre.code_box th,
pre.code_box td,
.code_box > th,
.code_box > td {
    border: 1px solid #555 !important;
    padding: 8px 12px !important;
    text-align: left !important;
    display: table-cell !important;
    white-space: normal !important;
    line-height: 1.5 !important;
}

pre.code_box th,
.code_box > th {
    background-color: #1e1e1e !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace !important;
}

pre.code_box td,
.code_box > td {
    color: #e8e8e8 !important;
}

/* 通用表格样式（非 pre 内的） */
.code_box table {
    border-collapse: collapse;
    width: 100%;
    margin: 12px 0;
    display: table;
}

.code_box thead {
    display: table-header-group;
}

.code_box tbody {
    display: table-row-group;
}

.code_box tr {
    display: table-row;
}

.code_box th, .code_box td {
    border: 1px solid #555;
    padding: 8px 12px;
    text-align: left;
    display: table-cell;
    white-space: normal;
    line-height: 1.5;
}

.code_box th {
    background-color: #1e1e1e;
    font-weight: 600;
    color: #ffffff;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

.code_box td {
    color: #e8e8e8;
}

.code_box a {
    color: #4da6ff;
    text-decoration: none;
}

.code_box a:hover {
    text-decoration: underline;
}

.code_box strong {
    font-weight: 600;
}

.code_box em {
    font-style: italic;
}

.code_box hr {
    border: none;
    border-top: 1px solid #555;
    margin: 16px 0;
}

.code_box img {
    max-width: 100%;
    height: auto;
    margin: 8px 0;
}

/* ===== .note 类样式 ===== */
.note {
    background-color: #2d2d2d;
    border: 1px solid #404040;
    border-radius: 4px;
    padding: 16px;
    margin: 8px 0;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 14px;
    line-height: 1.584;
    overflow-x: auto;
    color: #e8e8e8;
    width: 100%;
    display: block;
    box-sizing: border-box;
}

/* .note 内的标题样式 */
.note h1, .note h2, .note h3, .note h4, .note h5, .note h6 {
    margin-top: 3px;
    margin-bottom: 1px;
    font-weight: 600;
    color: #ffffff;
}

.note h1 { font-size: 1.5em; }
.note h2 { font-size: 1.3em; }
.note h3 { font-size: 1.2em; }
.note h4 { font-size: 1.1em; }
.note h5 { font-size: 1em; }
.note h6 { font-size: 0.9em; }

/* .note 内的段落样式 */
.note p {
    margin: 2px 0;
    line-height: 1.584;
}

/* .note 内的列表样式 */
.note p + ul, .note p + ol,
.note h1 + ul, .note h1 + ol,
.note h2 + ul, .note h2 + ol,
.note h3 + ul, .note h3 + ol,
.note h4 + ul, .note h4 + ol,
.note h5 + ul, .note h5 + ol,
.note h6 + ul, .note h6 + ol {
    margin-top: 2px;
}

.note ul, .note ol {
    margin: -2px 0;
    padding-left: 16px;
}

.note li {
    margin: 0 0;
    line-height: 1.2;
    margin-bottom: -8px;
    padding-bottom: 0;
}

.note > ul > li, .note > ol > li {
    line-height: 1.2 !important;
    margin-bottom: -8px !important;
    padding-bottom: 0 !important;
}

.note > ul > li + li, .note > ol > li + li {
    margin-top: -6px !important;
}

.note > ul > li:first-child + li, .note > ol > li:first-child + li,
.note > ul > li:nth-child(2), .note > ol > li:nth-child(2) {
    margin-top: -6px !important;
}

.note ul ul li, .note ol ol li,
.note ul ol li, .note ol ul li {
    line-height: 1.125 !important;
}

.note ul ul li + li, .note ol ol li + li,
.note ul ol li + li, .note ol ul li + li {
    margin-top: -6px !important;
}

.note ul ul, .note ol ol,
.note ul ol, .note ol ul {
    margin: -12px 0 !important;
    padding-left: 12px;
}

.note > ul > li + ul, .note > ol > li + ol,
.note > ul > li + ol, .note > ol > li + ul {
    margin-top: -6px !important;
}

.note * + ul, .note * + ol {
    margin-top: -4px;
}

.note ul + *, .note ol + * {
    margin-top: -4px;
}

.note li p, .note li h1, .note li h2, .note li h3,
.note li h4, .note li h5, .note li h6 {
    margin-top: 0;
    margin-bottom: 0;
}

/* .note 内的代码块样式 */
.note code {
    background-color: #1e1e1e;
    padding: 2px 4px;
    border-radius: 3px;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 0.9em;
    color: #f8f8f2;
}

.note pre {
    background-color: #1e1e1e;
    padding: 12px;
    border-radius: 4px;
    overflow-x: auto;
    margin: 2px 0;
    color: #f8f8f2;
    font-size: 1.08em !important;
}

.note pre code {
    background-color: transparent;
    padding: 0;
    font-size: 1.08em !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

/* .note 内的关键字高亮样式（不显示class，直接应用颜色） */
.note .keyword-python { color: #ff79c6; font-weight: bold; }
.note .python-file { color: #50fa7b; font-weight: bold; text-decoration: underline; }
.note .equals-sign { color: #ff5555; font-weight: bold; }
.note .double-dash { color: #8be9fd; font-weight: bold; }
.note .keyword-import { color: #ff79c6; }
.note .keyword-def { color: #ff79c6; font-weight: bold; }
.note .keyword-class { color: #ff79c6; font-weight: bold; }
.note .keyword-if { color: #ff79c6; font-weight: bold; }
.note .keyword-for { color: #ff79c6; font-weight: bold; }
.note .keyword-while { color: #ff79c6; font-weight: bold; }
.note .keyword-return { color: #ff79c6; font-weight: bold; }
.note .keyword-try { color: #ff79c6; font-weight: bold; }
.note .keyword-except { color: #ff79c6; font-weight: bold; }
.note .keyword-else { color: #ff79c6; font-weight: bold; }
.note .keyword-elif { color: #ff79c6; font-weight: bold; }
.note .string { color: #f1fa8c; }
.note .comment { color: #6272a4; font-style: italic; }
.note .number { color: #bd93f9; }
.note .function { color: #50fa7b; }

/* .note 内的代码块中的关键字高亮 */
.note code .keyword-python, .note pre .keyword-python { color: #ff79c6; font-weight: bold; }
.note code .keyword-import, .note pre .keyword-import { color: #ff79c6; }
.note code .keyword-def, .note pre .keyword-def { color: #ff79c6; font-weight: bold; }
.note code .keyword-class, .note pre .keyword-class { color: #ff79c6; font-weight: bold; }
.note code .keyword-if, .note pre .keyword-if { color: #ff79c6; font-weight: bold; }
.note code .keyword-for, .note pre .keyword-for { color: #ff79c6 !important; font-weight: bold !important; }
.note code .keyword-in, .note pre .keyword-in { color: #ff79c6 !important; font-weight: bold !important; }
.note code .keyword-while, .note pre .keyword-while { color: #ff79c6; font-weight: bold; }
.note code .keyword-return, .note pre .keyword-return { color: #ff79c6; font-weight: bold; }
.note code .keyword-try, .note pre .keyword-try { color: #ff79c6; font-weight: bold; }
.note code .keyword-except, .note pre .keyword-except { color: #ff79c6; font-weight: bold; }
.note code .keyword-else, .note pre .keyword-else { color: #ff79c6; font-weight: bold; }
.note code .keyword-elif, .note pre .keyword-elif { color: #ff79c6; font-weight: bold; }
.note code .string, .note pre .string { color: #f1fa8c; }
.note code .comment, .note pre .comment { color: #6272a4; font-style: italic; }
.note code .number, .note pre .number { color: #bd93f9; }
.note code .function, .note pre .function { color: #50fa7b; }
.note code .python-file, .note pre .python-file { color: #50fa7b; font-weight: bold; text-decoration: underline; }
.note code .equals-sign, .note pre .equals-sign { color: #ff5555; font-weight: bold; }
.note code .double-dash, .note pre .double-dash { color: #8be9fd; font-weight: bold; }

/* .note 内的表格样式 */
.note table {
    border-collapse: collapse;
    width: 100%;
    margin: 12px 0;
}

.note thead {
    display: table-header-group;
}

.note tbody {
    display: table-row-group;
}

.note tr {
    display: table-row;
}

.note th, .note td {
    border: 1px solid #555;
    padding: 8px 12px;
    text-align: left;
    display: table-cell;
    white-space: normal;
    line-height: 1.5;
}

.note th {
    background-color: #1e1e1e;
    font-weight: 600;
    color: #ffffff;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
}

.note td {
    color: #e8e8e8;
}

/* .note 内的链接样式 */
.note a {
    color: #4da6ff;
    text-decoration: none;
}

.note a:hover {
    text-decoration: underline;
}

/* .note 内的强调样式 */
.note strong {
    font-weight: 600;
}

.note em {
    font-style: italic;
}

/* .note 内的分隔线样式 */
.note hr {
    border: none;
    border-top: 1px solid #555;
    margin: 16px 0;
}

/* .note 内的图片样式 */
.note img {
    max-width: 100%;
    height: auto;
    margin: 8px 0;
}

/* .note 内的引用样式 */
.note blockquote {
    border-left: 4px solid #555;
    margin: 2px 0;
    padding-left: 16px;
    color: #bbb;
    font-style: italic;
}

/* ===== .mkdown 数学公式样式 ===== */
/* 确保 .mkdown 容器本身的基础样式 */
.mkdown {
    background-color: #2d2d2d;
    border: 1px solid #404040;
    border-radius: 8px;
    padding: 18px;
    margin: 12px 0;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Microsoft YaHei', 'PingFang SC', 'Hiragino Sans GB', 'Noto Sans CJK SC', -apple-system, sans-serif;
    font-size: 0.9em;
    line-height: 1.7;
    overflow-x: auto;
    color: #e8e8e8;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

/* .mkdown 标题样式 - 使用高优先级选择器 */
.mkdown h1,
.mkdown h2,
.mkdown h3,
.mkdown h4,
.mkdown h5,
.mkdown h6 {
    margin-top: 14px !important;
    margin-bottom: 10px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    line-height: 1.4 !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}

.mkdown h1 {
    font-size: 1.6em !important;
    border-bottom: 2px solid #4da6ff !important;
    padding-bottom: 8px !important;
    margin-top: 20px !important;
}

.mkdown h2 {
    font-size: 1.4em !important;
    border-bottom: 1px solid #3a8ccf !important;
    padding-bottom: 6px !important;
    margin-top: 18px !important;
}

.mkdown h3 { font-size: 1.25em !important; color: #7eb8ff !important; }
.mkdown h4 { font-size: 1.15em !important; color: #a3d3ff !important; }
.mkdown h5 { font-size: 1.05em !important; color: #c7e1ff !important; }
.mkdown h6 { font-size: 0.95em !important; color: #dbeaff !important; }

/* .mkdown 段落样式 */
.mkdown p {
    margin: 10px 0 !important;
    line-height: 1.7 !important;
    text-align: justify !important;
    color: #e8e8e8 !important;
}

/* .mkdown 列表样式 - 高优先级覆盖全局样式 */
.mkdown ul,
.mkdown ol {
    margin: 8px 0 !important;
    padding-left: 20px !important;
    list-style: disc outside !important;
    color: #e8e8e8 !important;
}

.mkdown ul {
    list-style-type: disc !important;
    list-style-position: outside !important;
}

.mkdown ol {
    list-style-type: decimal !important;
    list-style-position: outside !important;
}

.mkdown li {
    margin: 4px 0 !important;
    line-height: 1.5 !important;
    padding-left: 2px !important;
    list-style-position: outside !important;
    display: list-item !important;
    color: #e8e8e8 !important;
}

/* .mkdown 嵌套列表样式 */
.mkdown ul ul {
    list-style-type: circle !important;
    margin: 4px 0 !important;
    padding-left: 20px !important;
}

.mkdown ul ul ul {
    list-style-type: square !important;
    padding-left: 20px !important;
}

.mkdown ol ol {
    list-style-type: lower-alpha !important;
    margin: 4px 0 !important;
    padding-left: 20px !important;
}

.mkdown ul ol,
.mkdown ol ul {
    margin: 4px 0 !important;
    padding-left: 20px !important;
}

/* .mkdown 代码块样式 */
.mkdown pre {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%) !important;
    border: 1px solid #4a9eff !important;
    border-radius: 10px !important;
    padding: 18px !important;
    margin: 16px 0 !important;
    overflow-x: auto !important;
    font-size: 1.248em !important;
    line-height: 1.7 !important;
    box-shadow: 0 4px 15px rgba(74, 158, 255, 0.15), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', monospace !important;
    color: #e8e8e8 !important;
}

.mkdown pre code {
    background-color: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: 1em !important;
    color: #e8e8e8 !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', monospace !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4) !important;
    display: block !important;
    white-space: pre !important;
}

/* .mkdown 内联代码样式 */
.mkdown > code,
.mkdown p > code,
.mkdown li > code,
.mkdown td > code,
.mkdown th > code {
    background: linear-gradient(135deg, #1a1a2e 0%, #1e3a5f 100%) !important;
    border: 1px solid #4a9eff !important;
    padding: 4px 10px !important;
    border-radius: 8px !important;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', monospace !important;
    font-size: 0.81em !important;
    color: #e8e8e8 !important;
    box-shadow: 0 3px 8px rgba(74, 158, 255, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.4) !important;
    display: inline !important;
    white-space: nowrap !important;
}

/* 确保 pre 内部的 code 不应用行内代码样式 */
.mkdown pre code {
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
    white-space: pre !important;
    font-size: 1em !important;
}

/* .mkdown 引用样式 */
.mkdown blockquote {
    border-left: 4px solid #4da6ff !important;
    margin: 12px 0 !important;
    padding: 8px 16px !important;
    background-color: rgba(77, 166, 255, 0.05) !important;
    color: #bbb !important;
    font-style: italic !important;
}

.mkdown blockquote p {
    margin: 4px 0 !important;
}

/* .mkdown 表格样式 */
.mkdown table {
    border-collapse: collapse !important;
    width: 100% !important;
    margin: 12px 0 !important;
    font-size: 0.95em !important;
}

.mkdown th,
.mkdown td {
    border: 1px solid #555 !important;
    padding: 8px 12px !important;
    text-align: left !important;
}

.mkdown th {
    background-color: #1e1e1e !important;
    font-weight: 600 !important;
    color: #ffffff !important;
}

.mkdown td {
    color: #e8e8e8 !important;
}

.mkdown tr:hover {
    background-color: rgba(255, 255, 255, 0.03) !important;
}

/* .mkdown 链接样式 */
.mkdown a {
    color: #4da6ff !important;
    text-decoration: none !important;
    border-bottom: 1px dotted #4da6ff !important;
}

.mkdown a:hover {
    color: #6bb8ff !important;
    border-bottom-style: solid !important;
}

/* .mkdown 加粗和斜体 */
.mkdown strong {
    font-weight: 600 !important;
    color: #f8f8f2 !important;
}

.mkdown em {
    font-style: italic !important;
    color: #e8e8e8 !important;
}

/* .mkdown 分隔线 */
.mkdown hr {
    border: none !important;
    border-top: 1px solid #555 !important;
    margin: 16px 0 !important;
}

/* .mkdown 图片样式 */
.mkdown img {
    max-width: 100% !important;
    height: auto !important;
    margin: 12px 0 !important;
    border-radius: 4px !important;
}

/* ===== KaTeX 数学公式样式 - 为 .mkdown 容器优化 ===== */
/* 使用更高优先级的选择器确保样式覆盖 */

/* 行内数学公式 (.katex) - 高优先级 */
body .mkdown .katex,
.mkdown .katex {
    font: 1.15em KaTeX_Main, Times New Roman, 'Microsoft YaHei', 'PingFang SC', serif !important;
    line-height: 1.25 !important;
    text-indent: 0 !important;
    text-rendering: auto !important;
    display: inline-block !important;
    margin: 0 4px !important;
    color: #f5f5f5 !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

/* 行内数学公式在段落中的特殊处理 - 最高优先级 */
body .mkdown p .katex,
.mkdown p .katex {
    margin: 0 3px !important;
    vertical-align: baseline !important;
}

/* 行内数学公式在标题中的特殊处理 */
body .mkdown h1 .katex,
body .mkdown h2 .katex,
body .mkdown h3 .katex,
body .mkdown h4 .katex,
body .mkdown h5 .katex,
body .mkdown h6 .katex {
    font-size: 1em !important;
    color: #ffffff !important;
    margin: 0 4px !important;
}

/* 行内数学公式在代码中的特殊处理 */
body .mkdown code .katex,
body .mkdown pre .katex,
.mkdown code .katex,
.mkdown pre .katex {
    font-family: KaTeX_Main, Times New Roman, 'Microsoft YaHei', serif !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    box-shadow: none !important;
    color: #f5f5f5 !important;
}

/* 块级数学公式 (.katex-display) - 高优先级 */
body .mkdown .katex-display,
.mkdown .katex-display {
    display: block !important;
    margin: 18px 0 !important;
    padding: 16px 12px !important;
    background: linear-gradient(135deg, rgba(0, 0, 0, 0.35) 0%, rgba(0, 0, 0, 0.25) 100%) !important;
    border-radius: 8px !important;
    border: 1px solid rgba(77, 166, 255, 0.3) !important;
    border-left: 4px solid #4da6ff !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    text-align: center !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2) !important;
}

/* .katex-display 内的 .katex 元素 - 高优先级 */
body .mkdown .katex-display > .katex,
.mkdown .katex-display > .katex {
    display: block !important;
    margin: 0 auto !important;
    text-align: center !important;
    font-size: 1.15em !important;
    color: #f8f8f8 !important;
}

/* 数学公式的字体样式 - 高优先级 */
body .mkdown .katex-mathml,
.mkdown .katex-mathml {
    position: absolute !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    padding: 0 !important;
    border: 0 !important;
    height: 1px !important;
    width: 1px !important;
    overflow: hidden !important;
}

body .mkdown .katex-html,
.mkdown .katex-html {
    color: #f5f5f5 !important;
    white-space: nowrap !important;
}

/* 数学公式的主要样式 - 高优先级 */
body .mkdown .katex .base,
.mkdown .katex .base {
    position: relative !important;
    display: inline-block !important;
    white-space: nowrap !important;
    width: -moz-min-content !important;
    width: min-content !important;
}

body .mkdown .katex .strut,
.mkdown .katex .strut {
    display: inline-block !important;
}

/* 数学公式文本样式 - 高优先级 */
body .mkdown .katex .textbf,
.mkdown .katex .textbf {
    font-weight: 700 !important;
    color: #ffffff !important;
}

body .mkdown .katex .textit,
.mkdown .katex .textit {
    font-style: italic !important;
}

body .mkdown .katex .textrm,
.mkdown .katex .textrm {
    font-family: KaTeX_Main, 'Microsoft YaHei', 'PingFang SC', serif !important;
}

body .mkdown .katex .textsf,
.mkdown .katex .textsf {
    font-family: KaTeX_SansSerif, 'Microsoft YaHei', 'PingFang SC', sans-serif !important;
}

body .mkdown .katex .texttt,
.mkdown .katex .texttt {
    font-family: KaTeX_Typewriter, monospace !important;
}

/* 数学公式数学字体 - 高优先级 */
body .mkdown .katex .mathnormal,
.mkdown .katex .mathnormal {
    font-family: KaTeX_Math, Times New Roman, serif !important;
    font-style: italic !important;
    color: #f5f5f5 !important;
}

body .mkdown .katex .mathit,
.mkdown .katex .mathit {
    font-family: KaTeX_Main, Times New Roman, serif !important;
    font-style: italic !important;
}

body .mkdown .katex .mathrm,
.mkdown .katex .mathrm {
    font-style: normal !important;
}

body .mkdown .katex .mathbf,
.mkdown .katex .mathbf {
    font-family: KaTeX_Main, 'Microsoft YaHei', serif !important;
    font-weight: 700 !important;
}

body .mkdown .katex .boldsymbol,
.mkdown .katex .boldsymbol {
    font-family: KaTeX_Math, Times New Roman, serif !important;
    font-weight: 700 !important;
    font-style: italic !important;
}

/* 数学公式特殊符号 - 高优先级 */
body .mkdown .katex .amsrm,
body .mkdown .katex .mathbb,
body .mkdown .katex .textbb,
.mkdown .katex .amsrm,
.mkdown .katex .mathbb,
.mkdown .katex .textbb {
    font-family: KaTeX_AMS, 'Microsoft YaHei', serif !important;
}

body .mkdown .katex .mathcal,
.mkdown .katex .mathcal {
    font-family: KaTeX_Caligraphic !important;
}

body .mkdown .katex .mathfrak,
body .mkdown .katex .textfrak,
.mkdown .katex .mathfrak,
.mkdown .katex .textfrak {
    font-family: KaTeX_Fraktur !important;
}

body .mkdown .katex .mathboldfrak,
body .mkdown .katex .textboldfrak,
.mkdown .katex .mathboldfrak,
.mkdown .katex .textboldfrak {
    font-family: KaTeX_Fraktur !important;
    font-weight: 700 !important;
}

body .mkdown .katex .mathtt,
.mkdown .katex .mathtt {
    font-family: KaTeX_Typewriter, monospace !important;
}

body .mkdown .katex .mathscr,
body .mkdown .katex .textscr,
.mkdown .katex .mathscr,
.mkdown .katex .textscr {
    font-family: KaTeX_Script !important;
}

body .mkdown .katex .mathsf,
body .mkdown .katex .textsf,
.mkdown .katex .mathsf,
.mkdown .katex .textsf {
    font-family: KaTeX_SansSerif, 'Microsoft YaHei', sans-serif !important;
}

body .mkdown .katex .mathboldsf,
body .mkdown .katex .textboldsf,
.mkdown .katex .mathboldsf,
.mkdown .katex .textboldsf {
    font-family: KaTeX_SansSerif, 'Microsoft YaHei', sans-serif !important;
    font-weight: 700 !important;
}

body .mkdown .katex .mathsfit,
body .mkdown .katex .textitsfit,
.mkdown .katex .mathsfit,
.mkdown .katex .textitsfit {
    font-family: KaTeX_SansSerif, 'Microsoft YaHei', sans-serif !important;
    font-style: italic !important;
}

body .mkdown .katex .mainit,
.mkdown .katex .mainit {
    font-family: KaTeX_Main, Times New Roman, serif !important;
    font-style: italic !important;
}

body .mkdown .katex .mainrm,
.mkdown .katex .mainrm {
    font-family: KaTeX_Main, Times New Roman, serif !important;
    font-style: normal !important;
}

/* 数学公式大小 - 高优先级 */
body .mkdown .katex .tiny,
.mkdown .katex .tiny {
    font-size: 50% !important;
}

body .mkdown .katex .scriptsize,
.mkdown .katex .scriptsize {
    font-size: 70% !important;
}

body .mkdown .katex .footnotesize,
.mkdown .katex .footnotesize {
    font-size: 80% !important;
}

body .mkdown .katex .small,
.mkdown .katex .small {
    font-size: 85% !important;
}

body .mkdown .katex .normalsize,
.mkdown .katex .normalsize {
    font-size: 100% !important;
}

body .mkdown .katex .large,
.mkdown .katex .large {
    font-size: 115% !important;
}

body .mkdown .katex .Large,
.mkdown .katex .Large {
    font-size: 130% !important;
}

body .mkdown .katex .LARGE,
.mkdown .katex .LARGE {
    font-size: 145% !important;
}

body .mkdown .katex .huge,
.mkdown .katex .huge {
    font-size: 175% !important;
}

body .mkdown .katex .Huge,
.mkdown .katex .Huge {
    font-size: 200% !important;
}

/* 数学公式颜色支持 - 高优先级 */
body .mkdown .katex .style-wrap,
.mkdown .katex .style-wrap {
    position: relative !important;
}

body .mkdown .katex .op-symbol,
.mkdown .katex .op-symbol {
    position: relative !important;
}

body .mkdown .katex .mord,
.mkdown .katex .mord {
    color: #f5f5f5 !important;
}

body .mkdown .katex .mop,
.mkdown .katex .mop {
    color: #e8e8e8 !important;
}

body .mkdown .katex .mbin,
.mkdown .katex .mbin {
    color: #f5f5f5 !important;
}

body .mkdown .katex .mrel,
.mkdown .katex .mrel {
    color: #5ab0ff !important;
}

body .mkdown .katex .minner,
.mkdown .katex .minner {
    color: #f5f5f5 !important;
}

body .mkdown .katex .mpunct,
.mkdown .katex .mpunct {
    color: #e8e8e8 !important;
}

body .mkdown .katex .mopen,
.mkdown .katex .mopen {
    color: #f5f5f5 !important;
}

body .mkdown .katex .mclose,
.mkdown .katex .mclose {
    color: #f5f5f5 !important;
}

/* 数学公式括号和定界符 - 高优先级 */
body .mkdown .katex .delimsizing,
.mkdown .katex .delimsizing {
    display: inline-block !important;
}

body .mkdown .katex .delim-size1,
.mkdown .katex .delim-size1 {
    font-size: 1em !important;
}

body .mkdown .katex .delim-size2,
.mkdown .katex .delim-size2 {
    font-size: 1.2em !important;
}

body .mkdown .katex .delim-size3,
.mkdown .katex .delim-size3 {
    font-size: 1.4em !important;
}

body .mkdown .katex .delim-size4,
.mkdown .katex .delim-size4 {
    font-size: 1.7em !important;
}

/* 数学公式分数 - 高优先级 */
body .mkdown .katex .mfrac,
.mkdown .katex .mfrac {
    display: inline-block !important;
    vertical-align: middle !important;
    text-align: center !important;
}

body .mkdown .katex .mfrac > span,
.mkdown .katex .mfrac > span {
    display: block !important;
}

body .mkdown .katex .mfrac .frac-line,
.mkdown .katex .mfrac .frac-line {
    border-bottom: 1px solid #5ab0ff !important;
    margin: 0.1em 0 !important;
}

/* 数学公式根号 - 高优先级 */
body .mkdown .katex .sqrt > .root,
.mkdown .katex .sqrt > .root {
    margin-left: 0.27em !important;
    margin-right: -0.55em !important;
}

body .mkdown .katex .sqrt > .sqrt-sign,
.mkdown .katex .sqrt > .sqrt-sign {
    color: #5ab0ff !important;
}

/* 数学公式上下标 - 高优先级 */
body .mkdown .katex .msupsub,
.mkdown .katex .msupsub {
    display: inline-block !important;
    vertical-align: middle !important;
}

body .mkdown .katex .msup,
.mkdown .katex .msup {
    display: inline-block !important;
    vertical-align: middle !important;
}

body .mkdown .katex .msub,
.mkdown .katex .msub {
    display: inline-block !important;
    vertical-align: middle !important;
}

/* 数学公式矩阵 - 高优先级 */
body .mkdown .katex .mtable,
.mkdown .katex .mtable {
    display: inline-table !important;
    vertical-align: middle !important;
}

body .mkdown .katex .mtable .col-align-c,
.mkdown .katex .mtable .col-align-c {
    text-align: center !important;
}

body .mkdown .katex .mtable .col-align-l,
.mkdown .katex .mtable .col-align-l {
    text-align: left !important;
}

body .mkdown .katex .mtable .col-align-r,
.mkdown .katex .mtable .col-align-r {
    text-align: right !important;
}

body .mkdown .katex .arraycolsep,
.mkdown .katex .arraycolsep {
    display: inline-block !important;
    width: 0.5em !important;
}

/* 确保数学公式在不同元素中正确显示 - 高优先级 */
body .mkdown h1 .katex,
body .mkdown h2 .katex,
body .mkdown h3 .katex,
body .mkdown h4 .katex,
body .mkdown h5 .katex,
body .mkdown h6 .katex,
.mkdown h1 .katex,
.mkdown h2 .katex,
.mkdown h3 .katex,
.mkdown h4 .katex,
.mkdown h5 .katex,
.mkdown h6 .katex {
    color: #ffffff !important;
}

body .mkdown strong .katex,
body .mkdown b .katex,
.mkdown strong .katex,
.mkdown b .katex {
    color: #ffffff !important;
}

body .mkdown em .katex,
body .mkdown i .katex,
.mkdown em .katex,
.mkdown i .katex {
    font-style: italic !important;
}

body .mkdown a .katex,
.mkdown a .katex {
    color: #5ab0ff !important;
}

/* 修复数学公式在列表中的显示 - 高优先级 */
body .mkdown li .katex,
.mkdown li .katex {
    display: inline-block !important;
    vertical-align: baseline !important;
}

body .mkdown td .katex,
body .mkdown th .katex,
.mkdown td .katex,
.mkdown th .katex {
    display: inline-block !important;
    vertical-align: middle !important;
}

/* 修复数学公式在代码块中的显示 - 高优先级 */
body .mkdown pre .katex,
body .mkdown code .katex,
.mkdown pre .katex,
.mkdown code .katex {
    color: #f5f5f5 !important;
    font-family: KaTeX_Main, Times New Roman, 'Microsoft YaHei', serif !important;
}

/* 确保数学公式的换行正确处理 - 高优先级 */
body .mkdown .katex-display,
.mkdown .katex-display {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
}

body .mkdown .katex,
.mkdown .katex {
    white-space: nowrap !important;
}

/* 适配响应式设计 */
@media (max-width: 768px) {
    .mkdown {
        padding: 12px !important;
        font-size: 0.85em !important;
    }

    .mkdown .katex-display {
        padding: 8px !important;
        margin: 12px 0 !important;
        font-size: 0.95em !important;
        overflow-x: auto !important;
    }

    .mkdown .katex {
        font-size: 1em !important;
    }
}

/* 打印样式优化 */
@media print {
    .mkdown .katex,
    .mkdown .katex-display {
        color: #000000 !important;
        background-color: transparent !important;
        border-color: #000000 !important;
    }

    .mkdown .katex-display {
        border-left: 3px solid #000000 !important;
        background-color: transparent !important;
    }
}
