/* 设计理念：轻量，安静，干净 */
/* PaperSu-Code v1.0 - Fixed */

/* 圆角层级设计 card > block > inline */
/* --radius-card: 12px; --radius-block: 8px; --radius-inline: 4px; */

/* Light主题下的代码样式 */
/* Light主题 - 代码颜色 */
:root {
  --code-bg: #f5f5f5;
  --code-border: #ebebeb;
  --code-inline-bg: #f8f8f8;
  --code-text: #333;
  --code-muted: #444;
  --code-blue: #4f6fdc;
  --code-green: #4f9b6a;
  --code-yellow: #d6a65a;
  --code-red: #d46a6a;
  --code-pink: #d36b8c;
}

/* Dark主题 - 代码颜色 */
[data-theme="dark"],
.dark,
:root.dark {
  --code-bg: #2e2e2e;
  --code-border: #363a3c;
  --code-inline-bg: #262a2b;
  --code-text: #c1bcb4;
  --code-muted: #bdb7af;
  --code-blue: #8fa2e0;
  --code-green: #8fcfa8;
  --code-yellow: #e0c98a;
  --code-red: #e0a8a8;
  --code-pink: #e0a8c0;
}

/* 代码块本体 */
pre {
    padding: 12px 16px;
    margin: 1.2em 0;
    background: var(--code-bg);
    border: 1px solid var(--code-border);
    border-radius: 8px;
    overflow: auto;
    font-family: ui-monospace, JetBrains Mono, SFMono-Regular, Menlo, Monaco, Consolas, Andale Mono, Liberation Mono, Ubuntu Mono, Courier New, monospace;
    font-size: 0.92em;
    word-wrap: break-word;
    position: relative;
    max-height: 750px;
}

pre>code,
pre>code:hover {
    padding: 0;
    border-radius: 0;
    border: 0;
    margin: 0;
}

/* 代码文本 */
pre code.hljs {
    display: block;
    background: transparent;
    padding: 0.75em 1em;

    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    line-height: 1.7;

    color: var(--code-text);
}

/* 行内代码 */
:not(pre)>code,
:not(pre)>code.hljs {
    background: var(--code-inline-bg);
    border: 1px solid var(--code-border);

    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.92em;

    border-radius: 0.4rem;
    color: var(--code-text);
    white-space: nowrap;
}

/* 高亮设计 */

/* 默认 */
.hljs {
    color: var(--code-text);
}

/* 注释 */
.hljs-comment,
.hljs-quote {
    color: var(--code-muted);
    opacity: 0.65;
}

/* 结构词*/
.hljs-keyword,
.hljs-selector-tag,
.hljs-title.function_,
.hljs-title.class_,
.hljs-built_in {
    color: var(--code-blue);
}

/* 字符串*/
.hljs-string,
.hljs-attr,
.hljs-attribute {
    color: var(--code-green);
}

/* 数值：确定的东西 */
.hljs-number,
.hljs-literal {
    color: var(--code-yellow);
}

/* 类型 / 标签 / 抽象名 */
.hljs-type,
.hljs-tag,
.hljs-name,
.hljs-selector-class,
.hljs-selector-id,
.hljs-variable,
.hljs-template-variable,
.hljs-regexp {
    color: var(--code-red);
}

.hljs-meta,
.hljs-doctag {
    color: var(--code-pink);
}

/* 强调 */
.hljs-emphasis {
    font-style: italic;
}

.hljs-strong {
    font-weight: 650;
}

/* 滚动条 */
pre code.hljs::-webkit-scrollbar {
    height: 10px;
}

pre code.hljs::-webkit-scrollbar-thumb {
    background: var(--code-border);
    border-radius: 999px;
}

@media screen and (-ms-high-contrast:active) {
    .hljs {
        color: windowText;
    }

    .hljs-keyword,
    .hljs-selector-tag {
        font-weight: 700;
    }
}
