darkings_Obsidian-MonokaiSy.../theme.css

2228 lines
91 KiB
CSS
Raw Normal View History

/*!
* Monokai Syntax
* 作者lat3ncy
* 许可证MIT
*/
2026-05-15 09:28:05 +00:00
@charset "UTF-8";
:root {
--font-text-theme: Inter, Segoe UI, Helvetica Neue, Arial, sans-serif;
--font-monospace-theme: Fira Code, Cascadia Code, Consolas, monospace;
--line-height-normal: 1.6;
--radius-s: 4px;
--radius-m: 6px;
--monokai-highlight-text: var(--text-normal);
}
.theme-dark {
--background-primary: #272822;
--background-secondary: #1e1f1c;
--background-secondary-alt: #1e1f1c;
--background-modifier-hover: #3e3d32;
--background-modifier-active-hover: #414339;
--text-normal: #f8f8f2;
--text-muted: #c1c1bd;
--text-faint: #8f908a;
--background-modifier-border: #3e3d32;
--text-accent: #f92672;
--monokai-default-accent: #f92672;
--monokai-default-link: #66d9ef;
--monokai-default-success: #a6e22e;
--monokai-default-warning: rgb(230 219 116 / 28%);
--monokai-default-code-background: #1e1f1c;
--text-accent-hover: #ff6188;
--interactive-accent: #f92672;
--interactive-accent-hover: #ff6188;
--h1-color: #f92672;
--h2-color: #fd971f;
--h3-color: #e6db74;
--h4-color: #a6e22e;
--h5-color: #66d9ef;
--h6-color: #ae81ff;
--text-a: #66d9ef;
--text-a-hover: #78dce8;
--link-color: #66d9ef;
--link-color-hover: #78dce8;
--link-external-color: #66d9ef;
--link-external-color-hover: #78dce8;
--icon-color: #c1c1bd;
--icon-color-hover: #f8f8f2;
--icon-color-active: #66d9ef;
--metadata-label-text-color: #fd971f;
--text-highlight-bg: rgb(230 219 116 / 28%);
--blockquote-border-color: #a6e22e;
--monokai-checkbox-unchecked-color: #e6db74;
--monokai-checkbox-checked-color: #a6e22e;
--checkbox-color: #e6db74;
--checkbox-color-hover: #ffd866;
--checkbox-marker-color: #272822;
--checkbox-color-checked: #a6e22e;
--list-marker-color: #ae81ff;
--code-normal: #f8f8f2;
--code-background: #1e1f1c;
--code-comment: #72736f;
--code-function: #a9dc76;
--code-important: #ff6188;
--code-keyword: #ff6188;
--code-operator: #fc9867;
--code-property: #78dce8;
2026-05-15 09:28:05 +00:00
--code-punctuation: #c1c1bd;
--code-string: #ffd866;
--code-tag: #ff6188;
--code-value: #ab9df2;
2026-05-15 09:28:05 +00:00
--ribbon-background: #1e1f1c;
--nav-item-background-hover: #3e3d32;
--nav-item-background-active: #414339;
--nav-item-color: #c1c1bd;
--nav-item-color-hover: #f8f8f2;
--nav-item-color-active: #f8f8f2;
--metadata-input-background: transparent;
--metadata-input-background-active: transparent;
--metadata-label-text-color-hover: #fc9867;
}
.theme-light {
--background-primary: #fdf9f3;
--background-secondary: #f5f0e6;
--background-secondary-alt: #f5f0e6;
--background-modifier-hover: #eee6d8;
--background-modifier-active-hover: #e5dccd;
--text-normal: #3d3d3d;
--text-muted: #666666;
--text-faint: #7a7369;
--background-modifier-border: #d8d0c2;
--text-accent: #e14775;
--monokai-default-accent: #e14775;
--monokai-default-link: #14748a;
--monokai-default-success: #269d69;
--monokai-default-warning: rgb(232 179 10 / 24%);
--monokai-default-code-background: #f5f0e6;
--text-accent-hover: #f63d77;
--interactive-accent: #e14775;
--interactive-accent-hover: #f63d77;
--h1-color: #e14775;
--h2-color: #e16032;
--h3-color: #cc7a0a;
--h4-color: #269d69;
--h5-color: #14748a;
--h6-color: #7058be;
--text-a: #14748a;
--text-a-hover: #1ba5bf;
--link-color: #14748a;
--link-color-hover: #1ba5bf;
--link-external-color: #14748a;
--link-external-color-hover: #1ba5bf;
--icon-color: #666666;
--icon-color-hover: #3d3d3d;
--icon-color-active: #14748a;
--metadata-label-text-color: #e16032;
--text-highlight-bg: rgb(232 179 10 / 24%);
--blockquote-border-color: #269d69;
--monokai-checkbox-unchecked-color: #cc7a0a;
--monokai-checkbox-checked-color: #269d69;
--checkbox-color: #cc7a0a;
--checkbox-color-hover: #e8b30a;
--checkbox-marker-color: #fdf9f3;
--checkbox-color-checked: #269d69;
--list-marker-color: #7058be;
--code-normal: #3d3d3d;
--code-background: #f5f0e6;
--code-comment: #7a7369;
--code-function: #269d69;
--code-important: #e14775;
--code-keyword: #e14775;
--code-operator: #f63d77;
--code-property: #14748a;
--code-punctuation: #666666;
--code-string: #cc7a0a;
--code-tag: #e14775;
--code-value: #7058be;
--ribbon-background: #f5f0e6;
--nav-item-background-hover: #eee6d8;
--nav-item-background-active: #e5dccd;
--nav-item-color: #666666;
--nav-item-color-hover: #3d3d3d;
--nav-item-color-active: #3d3d3d;
--metadata-input-background: transparent;
--metadata-input-background-active: transparent;
--metadata-label-text-color-hover: #fb6214;
}
.workspace,
.workspace-split,
.workspace-leaf,
.workspace-leaf-content,
.workspace-tabs {
background-color: var(--background-primary);
}
.nav-file-title,
.nav-folder-title {
align-items: center;
color: var(--nav-item-color);
border-radius: var(--radius-s);
}
.nav-file-title:hover,
.nav-folder-title:hover {
color: var(--nav-item-color-hover);
background-color: var(--nav-item-background-hover);
}
.nav-file-title.is-active {
color: var(--nav-item-color-active);
background-color: var(--nav-item-background-active);
}
.nav-folder-collapse-indicator,
.tree-item-icon {
color: var(--icon-color);
}
input[type=checkbox]:not(:checked) {
background-color: transparent;
border-color: var(--monokai-checkbox-unchecked-color);
}
input[type=checkbox]:checked {
background-color: var(--monokai-checkbox-checked-color);
border-color: var(--monokai-checkbox-checked-color);
}
.metadata-property-key {
color: var(--metadata-label-text-color);
}
.metadata-property-key:hover {
color: var(--metadata-label-text-color-hover);
}
.metadata-property-value {
color: var(--text-normal);
border-radius: var(--radius-s);
}
.metadata-property-value:focus-within {
outline: 1px solid var(--background-modifier-border);
outline-offset: 2px;
}
.workspace-leaf-content[data-type=terminal] {
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
padding: var(--spacing-3);
}
.workspace-leaf-content[data-type=terminal] .view-content,
.terminal {
background-color: var(--background-primary);
border-radius: var(--radius-s);
padding: var(--spacing-3);
}
.search-result-file-match,
.backlink-pane .tree-item-self,
.outgoing-link-pane .tree-item-self,
.tag-pane-tag,
.bookmark {
color: var(--text-muted);
border-radius: var(--radius-s);
}
.search-result-file-match:hover,
.backlink-pane .tree-item-self:hover,
.outgoing-link-pane .tree-item-self:hover,
.tag-pane-tag:hover,
.bookmark:hover {
color: var(--text-normal);
background-color: var(--background-modifier-hover);
}
.search-result-file-matched-text {
color: var(--monokai-highlight-text);
background-color: var(--text-highlight-bg);
border-radius: var(--radius-s);
}
.tree-item-self.is-clickable.is-active,
.tag-pane-tag.is-active,
.bookmark.is-active {
color: var(--text-normal);
background-color: var(--nav-item-background-active);
}
.tag {
color: var(--monokai-tag-color, var(--link-color));
background-color: var(--monokai-tag-background, var(--background-secondary));
border: 1px solid var(--monokai-tag-border-color, var(--background-modifier-border));
border-radius: var(--monokai-tag-radius, var(--radius-s));
2026-05-15 09:28:05 +00:00
}
.tag:hover {
color: var(--link-color-hover);
background-color: var(--background-modifier-hover);
}
.markdown-source-view,
.markdown-preview-view {
--bold-color: var(--text-normal);
--bold-weight: 900;
--italic-color: var(--text-normal);
--heading-spacing: 1rem;
--monokai-heading-gap-h1: 1.25rem;
--monokai-heading-gap-h2: 1.1rem;
--monokai-heading-gap-h3: 0.95rem;
--monokai-heading-gap-h4: 0.8rem;
--monokai-heading-gap-h5: 0.7rem;
--monokai-heading-gap-h6: 0.6rem;
2026-05-15 09:28:05 +00:00
--monokai-heading-weight: 600;
--monokai-inline-code-color: #a6e22e;
--monokai-inline-code-background: var(--code-background);
--monokai-inline-code-padding: 0.1em 0.3em;
--monokai-formatting-marker-color: var(--text-faint);
--monokai-strikethrough-color: var(--text-muted);
--monokai-highlight-radius: var(--radius-s);
--monokai-highlight-padding-inline: 0.12em;
--monokai-hr-color: var(--background-modifier-border);
--monokai-hr-thickness: 1px;
--monokai-hr-spacing: 1.25rem;
--monokai-footnote-color: var(--link-color);
--monokai-footnote-marker-color: var(--text-faint);
--monokai-footnote-font-size: 0.85em;
--monokai-media-radius: var(--radius-m);
--monokai-media-border-color: var(--background-modifier-border);
--monokai-media-background: var(--background-secondary);
--monokai-embed-padding: 0.75rem;
--monokai-tag-color: var(--link-color);
--monokai-tag-background: var(--background-secondary);
--monokai-tag-border-color: var(--background-modifier-border);
--monokai-tag-radius: var(--radius-s);
--monokai-link-decoration-color: var(--link-color);
--monokai-link-decoration-thickness: 1px;
--monokai-paragraph-line-height: var(--line-height-normal);
--monokai-paragraph-spacing: 0.75rem;
--monokai-table-source-background: var(--background-secondary);
--monokai-table-source-font-family: var(--font-monospace-theme);
--monokai-table-source-separator-color: var(--text-faint);
--monokai-codeblock-border-color: var(--background-modifier-border);
--monokai-codeblock-radius: var(--radius-m);
--monokai-codeblock-padding: 1rem;
--monokai-codeblock-padding-inline: 1rem;
2026-05-15 09:28:05 +00:00
--callout-blend-mode: normal;
--callout-icon-size: 1.25em;
--p-spacing: var(--monokai-paragraph-spacing);
2026-05-15 09:28:05 +00:00
-webkit-font-smoothing: antialiased;
text-rendering: optimizelegibility;
}
body.theme-dark {
--monokai-heading-weight: 600;
--blockquote-border-color: #e6db74;
--monokai-blockquote-border: #e6db74;
--monokai-callout-note-bg: rgb(102 217 239 / 12%);
--monokai-callout-note-border: #66d9ef;
--monokai-callout-abstract-bg: rgb(174 129 255 / 12%);
--monokai-callout-abstract-border: #ae81ff;
--monokai-callout-info-bg: rgb(102 217 239 / 12%);
--monokai-callout-info-border: #66d9ef;
--monokai-callout-todo-bg: rgb(230 219 116 / 12%);
--monokai-callout-todo-border: #e6db74;
--monokai-callout-tip-bg: rgb(166 226 46 / 12%);
--monokai-callout-tip-border: #a6e22e;
--monokai-callout-question-bg: rgb(174 129 255 / 12%);
--monokai-callout-question-border: #ae81ff;
--monokai-callout-warning-bg: rgb(253 151 31 / 12%);
--monokai-callout-warning-border: #fd971f;
--monokai-callout-error-bg: rgb(249 38 114 / 12%);
--monokai-callout-error-border: #f92672;
--monokai-callout-failure-bg: rgb(249 38 114 / 12%);
--monokai-callout-failure-border: #f92672;
--monokai-callout-bug-bg: rgb(249 38 114 / 12%);
--monokai-callout-bug-border: #f92672;
--monokai-callout-success-bg: rgb(166 226 46 / 12%);
--monokai-callout-success-border: #a6e22e;
--monokai-callout-example-bg: rgb(253 151 31 / 12%);
--monokai-callout-example-border: #fd971f;
--monokai-callout-quote-bg: rgb(248 248 242 / 8%);
--monokai-callout-quote-border: #8f908a;
--monokai-inline-code-color: #a6e22e;
--monokai-inline-code-background: var(--code-background);
--monokai-table-border: rgb(248 248 242 / 18%);
--monokai-table-header-background: rgb(248 248 242 / 6%);
2026-05-15 09:28:05 +00:00
--monokai-task-done-color: rgb(248 248 242 / 68%);
--monokai-task-forward-color: var(--text-accent);
--monokai-task-cancelled-color: var(--text-faint);
--monokai-task-question-color: var(--link-color);
--monokai-modal-shadow: 0 18px 50px rgb(0 0 0 / 35%);
--monokai-selection-ring: rgb(249 38 114 / 28%);
2026-05-15 09:28:05 +00:00
}
body.theme-light {
--monokai-heading-weight: 700;
--blockquote-border-color: #cc7a0a;
--monokai-blockquote-border: #cc7a0a;
--monokai-callout-note-bg: rgb(20 116 138 / 14%);
--monokai-callout-note-border: #14748a;
--monokai-callout-abstract-bg: rgb(107 83 148 / 13%);
--monokai-callout-abstract-border: #6b5394;
--monokai-callout-info-bg: rgb(20 116 138 / 14%);
--monokai-callout-info-border: #14748a;
--monokai-callout-todo-bg: rgb(151 116 0 / 14%);
--monokai-callout-todo-border: #977400;
--monokai-callout-tip-bg: rgb(38 157 105 / 14%);
--monokai-callout-tip-border: #269d69;
--monokai-callout-question-bg: rgb(107 83 148 / 13%);
--monokai-callout-question-border: #6b5394;
--monokai-callout-warning-bg: rgb(225 96 50 / 14%);
--monokai-callout-warning-border: #e16032;
--monokai-callout-error-bg: rgb(225 71 117 / 14%);
--monokai-callout-error-border: #e14775;
--monokai-callout-failure-bg: rgb(225 71 117 / 14%);
--monokai-callout-failure-border: #e14775;
--monokai-callout-bug-bg: rgb(225 71 117 / 14%);
--monokai-callout-bug-border: #e14775;
--monokai-callout-success-bg: rgb(38 157 105 / 14%);
--monokai-callout-success-border: #269d69;
--monokai-callout-example-bg: rgb(225 96 50 / 14%);
--monokai-callout-example-border: #e16032;
--monokai-callout-quote-bg: rgb(61 61 61 / 8%);
--monokai-callout-quote-border: #6f6f6f;
--monokai-inline-code-color: #269d69;
--monokai-inline-code-background: var(--code-background);
--monokai-table-border: rgb(61 61 61 / 18%);
--monokai-table-header-background: rgb(61 61 61 / 6%);
2026-05-15 09:28:05 +00:00
--monokai-task-done-color: rgb(61 61 61 / 66%);
--monokai-task-forward-color: var(--text-accent);
--monokai-task-cancelled-color: var(--text-faint);
--monokai-task-question-color: var(--link-color);
--monokai-modal-shadow: 0 16px 36px rgb(61 61 61 / 16%);
--monokai-selection-ring: rgb(200 63 103 / 22%);
2026-05-15 09:28:05 +00:00
}
.markdown-source-view.mod-cm6 .inline-title {
display: none;
}
.markdown-rendered h1,
.markdown-rendered h2,
.markdown-rendered h3,
.markdown-rendered h4,
.markdown-rendered h5,
.markdown-rendered h6 {
2026-05-15 09:28:05 +00:00
font-weight: var(--monokai-heading-weight);
letter-spacing: 0;
margin-block-start: calc(var(--heading-spacing) * 1.5);
}
.markdown-rendered h1 {
margin-block-end: var(--monokai-heading-gap-h1);
}
.markdown-rendered h2 {
margin-block-end: var(--monokai-heading-gap-h2);
}
.markdown-rendered h3 {
margin-block-end: var(--monokai-heading-gap-h3);
}
.markdown-rendered h4 {
color: var(--h4-color);
margin-block-end: var(--monokai-heading-gap-h4);
}
.markdown-rendered h5 {
color: var(--h5-color);
margin-block-end: var(--monokai-heading-gap-h5);
}
.markdown-rendered h6 {
color: var(--h6-color);
margin-block-end: var(--monokai-heading-gap-h6);
}
.markdown-rendered p {
line-height: var(--monokai-paragraph-line-height);
margin-block: 0 var(--monokai-paragraph-spacing);
2026-05-15 09:28:05 +00:00
}
.markdown-rendered strong {
color: var(--bold-color);
font-weight: var(--bold-weight);
}
.markdown-rendered em {
color: var(--italic-color);
}
.markdown-rendered del,
.markdown-rendered s {
color: var(--monokai-strikethrough-color);
text-decoration-color: var(--monokai-strikethrough-color);
}
2026-05-15 09:28:05 +00:00
.markdown-rendered mark {
color: var(--monokai-highlight-text);
background-color: var(--text-highlight-bg);
border-radius: var(--monokai-highlight-radius);
padding-inline: var(--monokai-highlight-padding-inline);
2026-05-15 09:28:05 +00:00
}
.markdown-rendered ul > li::marker,
.markdown-rendered ol > li::marker {
color: var(--list-marker-color);
}
.markdown-rendered .task-list-item.is-checked {
color: var(--monokai-task-done-color);
}
.markdown-rendered .task-list-item.is-checked > p {
color: var(--monokai-task-done-color);
}
.markdown-rendered .task-list-item[data-task=">"] {
color: var(--monokai-task-forward-color);
}
.markdown-rendered .task-list-item[data-task="-"] {
color: var(--monokai-task-cancelled-color);
text-decoration-line: line-through;
}
.markdown-rendered .task-list-item[data-task="?"] {
color: var(--monokai-task-question-color);
}
2026-05-15 09:28:05 +00:00
.markdown-rendered table {
border: 1px solid var(--monokai-table-border);
}
.markdown-rendered th,
.markdown-rendered td {
border: 1px solid var(--monokai-table-border);
}
.markdown-rendered th {
color: var(--text-normal);
background-color: var(--monokai-table-header-background);
font-weight: 700;
}
2026-05-15 09:28:05 +00:00
.markdown-rendered code {
color: var(--monokai-inline-code-color);
background-color: var(--monokai-inline-code-background);
border: 0;
border-radius: var(--radius-s);
box-shadow: none;
padding: var(--monokai-inline-code-padding);
2026-05-15 09:28:05 +00:00
}
.markdown-rendered pre {
background-color: var(--code-background);
border: 1px solid var(--monokai-codeblock-border-color);
border-radius: var(--monokai-codeblock-radius);
2026-05-15 09:28:05 +00:00
font-family: var(--font-monospace-theme);
padding: var(--monokai-codeblock-padding);
2026-05-15 09:28:05 +00:00
}
.markdown-rendered pre code {
background-color: transparent;
border: 0;
box-shadow: none;
padding: 0;
}
.markdown-rendered hr {
border: 0;
border-top: var(--monokai-hr-thickness) solid var(--monokai-hr-color);
margin-block: var(--monokai-hr-spacing);
}
.markdown-rendered .footnote-ref,
.markdown-rendered .footnote-link {
color: var(--monokai-footnote-color);
font-size: var(--monokai-footnote-font-size);
}
.markdown-rendered .footnote-backref {
color: var(--monokai-footnote-marker-color);
}
.markdown-rendered img,
.markdown-rendered .image-embed {
max-width: 100%;
background-color: var(--monokai-media-background);
border: 1px solid var(--monokai-media-border-color);
border-radius: var(--monokai-media-radius);
}
.markdown-rendered .file-embed,
.markdown-rendered .pdf-embed,
.markdown-rendered .audio-embed,
.markdown-rendered .video-embed,
.markdown-rendered .internal-embed {
background-color: var(--monokai-media-background);
border: 1px solid var(--monokai-media-border-color);
border-radius: var(--monokai-media-radius);
padding: var(--monokai-embed-padding);
}
2026-05-15 09:28:05 +00:00
.markdown-source-view.mod-cm6 {
/* stylelint-disable selector-class-pattern -- Obsidian/CodeMirror 内部类名。 */
}
.markdown-source-view.mod-cm6 .HyperMD-header-1 {
padding-block-end: var(--monokai-heading-gap-h1);
}
.markdown-source-view.mod-cm6 .HyperMD-header-2 {
padding-block-end: var(--monokai-heading-gap-h2);
}
.markdown-source-view.mod-cm6 .HyperMD-header-3 {
padding-block-end: var(--monokai-heading-gap-h3);
}
.markdown-source-view.mod-cm6 .HyperMD-header-4 {
padding-block-end: var(--monokai-heading-gap-h4);
}
.markdown-source-view.mod-cm6 .HyperMD-header-5 {
padding-block-end: var(--monokai-heading-gap-h5);
}
.markdown-source-view.mod-cm6 .HyperMD-header-6 {
padding-block-end: var(--monokai-heading-gap-h6);
}
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task=x],
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task=X] {
color: var(--monokai-task-done-color);
}
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task=">"] {
color: var(--monokai-task-forward-color);
}
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task="-"] {
color: var(--monokai-task-cancelled-color);
text-decoration-line: line-through;
}
.markdown-source-view.mod-cm6 .HyperMD-task-line[data-task="?"] {
color: var(--monokai-task-question-color);
}
.markdown-source-view.mod-cm6 .HyperMD-codeblock {
background-color: var(--code-background);
font-family: var(--font-monospace-theme);
padding-inline: var(--monokai-codeblock-padding-inline);
}
.markdown-source-view.mod-cm6 .HyperMD-hr {
color: var(--monokai-formatting-marker-color);
padding-block: calc(var(--monokai-hr-spacing) / 2);
}
.markdown-source-view.mod-cm6 .HyperMD-paragraph {
padding-block-end: calc(var(--monokai-paragraph-spacing) / 3);
}
.markdown-source-view.mod-cm6 .HyperMD-table-row {
font-family: var(--monokai-table-source-font-family);
background-color: var(--monokai-table-source-background);
}
.markdown-source-view.mod-cm6 {
/* stylelint-enable selector-class-pattern */
}
2026-05-15 09:28:05 +00:00
.markdown-source-view.mod-cm6 .cm-header-1 {
color: var(--h1-color);
font-weight: var(--monokai-heading-weight);
}
.markdown-source-view.mod-cm6 .cm-header-2 {
color: var(--h2-color);
font-weight: var(--monokai-heading-weight);
}
.markdown-source-view.mod-cm6 .cm-header-3 {
color: var(--h3-color);
font-weight: var(--monokai-heading-weight);
}
.markdown-source-view.mod-cm6 .cm-header-4 {
color: var(--h4-color);
font-weight: var(--monokai-heading-weight);
}
.markdown-source-view.mod-cm6 .cm-header-5 {
color: var(--h5-color);
font-weight: var(--monokai-heading-weight);
}
.markdown-source-view.mod-cm6 .cm-header-6 {
color: var(--h6-color);
font-weight: var(--monokai-heading-weight);
}
2026-05-15 09:28:05 +00:00
.markdown-source-view.mod-cm6 .cm-strong {
color: var(--bold-color);
font-weight: var(--bold-weight);
}
.markdown-source-view.mod-cm6 .cm-em {
color: var(--italic-color);
}
.markdown-source-view.mod-cm6 .cm-strikethrough {
color: var(--monokai-strikethrough-color);
text-decoration-color: var(--monokai-strikethrough-color);
}
2026-05-15 09:28:05 +00:00
.markdown-source-view.mod-cm6 .cm-link,
.markdown-source-view.mod-cm6 .cm-url {
color: var(--link-color);
}
.markdown-source-view.mod-cm6 .cm-formatting-link {
color: var(--monokai-formatting-marker-color);
}
.markdown-source-view.mod-cm6 .cm-hmd-table-sep,
.markdown-source-view.mod-cm6 .cm-hmd-table-align,
.markdown-source-view.mod-cm6 .cm-formatting-table {
color: var(--monokai-table-source-separator-color);
}
.markdown-source-view.mod-cm6 .cm-formatting-code-block,
.markdown-source-view.mod-cm6 .cm-hmd-codeblock-begin,
.markdown-source-view.mod-cm6 .cm-hmd-codeblock-end {
color: var(--monokai-formatting-marker-color);
}
.markdown-source-view.mod-cm6 .cm-table {
color: var(--text-normal);
}
.markdown-source-view.mod-cm6 .cm-formatting-list {
color: var(--list-marker-color);
}
.markdown-source-view.mod-cm6 .cm-formatting-strong,
.markdown-source-view.mod-cm6 .cm-formatting-em,
.markdown-source-view.mod-cm6 .cm-formatting-strikethrough,
.markdown-source-view.mod-cm6 .cm-formatting-code,
.markdown-source-view.mod-cm6 .cm-formatting-highlight {
color: var(--monokai-formatting-marker-color);
2026-05-15 09:28:05 +00:00
}
.markdown-source-view.mod-cm6 .cm-highlight {
color: var(--monokai-highlight-text);
background-color: var(--text-highlight-bg);
border-radius: var(--monokai-highlight-radius);
padding-inline: var(--monokai-highlight-padding-inline);
}
.markdown-source-view.mod-cm6 .cm-hr {
color: var(--monokai-hr-color);
}
.markdown-source-view.mod-cm6 .cm-footref {
color: var(--monokai-footnote-color);
font-size: var(--monokai-footnote-font-size);
}
.markdown-source-view.mod-cm6 .cm-formatting-footref {
color: var(--monokai-footnote-marker-color);
}
.markdown-source-view.mod-cm6 .image-embed,
.markdown-source-view.mod-cm6 .cm-embed-block {
max-width: 100%;
background-color: var(--monokai-media-background);
border: 1px solid var(--monokai-media-border-color);
border-radius: var(--monokai-media-radius);
}
.markdown-source-view.mod-cm6 .file-embed,
.markdown-source-view.mod-cm6 .pdf-embed,
.markdown-source-view.mod-cm6 .audio-embed,
.markdown-source-view.mod-cm6 .video-embed,
.markdown-source-view.mod-cm6 .internal-embed,
.markdown-source-view.mod-cm6 .cm-embed-block {
background-color: var(--monokai-media-background);
border: 1px solid var(--monokai-media-border-color);
border-radius: var(--monokai-media-radius);
padding: var(--monokai-embed-padding);
}
.markdown-source-view.mod-cm6 .cm-hashtag {
color: var(--monokai-tag-color);
background-color: var(--monokai-tag-background);
border: 1px solid var(--monokai-tag-border-color);
border-radius: var(--monokai-tag-radius);
padding-inline: 0.25em;
}
.markdown-source-view.mod-cm6 .cm-line {
line-height: var(--monokai-paragraph-line-height);
2026-05-15 09:28:05 +00:00
}
.markdown-source-view.mod-cm6 .cm-inline-code {
color: var(--monokai-inline-code-color);
background-color: var(--monokai-inline-code-background);
border: 0;
border-radius: var(--radius-s);
box-shadow: none;
padding: var(--monokai-inline-code-padding);
2026-05-15 09:28:05 +00:00
}
.cm-s-obsidian span.cm-comment {
color: var(--code-comment);
}
.cm-s-obsidian span.cm-string {
color: var(--code-string);
}
.cm-s-obsidian span.cm-keyword {
color: var(--code-keyword);
}
.cm-s-obsidian span.cm-def,
.cm-s-obsidian span.cm-variable-2 {
color: var(--code-function);
}
.cm-s-obsidian span.cm-number,
.cm-s-obsidian span.cm-atom {
color: var(--code-value);
}
.cm-s-obsidian span.cm-property {
color: var(--code-property);
}
.cm-s-obsidian span.cm-operator {
color: var(--code-operator);
}
a,
.markdown-rendered a,
.cm-hmd-internal-link,
.cm-link,
.cm-url {
2026-05-15 09:28:05 +00:00
color: var(--link-color);
text-decoration-color: var(--monokai-link-decoration-color);
text-decoration-thickness: var(--monokai-link-decoration-thickness);
2026-05-15 09:28:05 +00:00
}
a:hover,
.markdown-rendered a:hover,
.cm-hmd-internal-link:hover {
color: var(--link-color-hover);
}
a:focus-visible,
.markdown-rendered a:focus-visible,
.cm-hmd-internal-link:focus-visible {
outline: 2px solid var(--interactive-accent);
outline-offset: 2px;
border-radius: var(--radius-s);
}
2026-05-15 09:28:05 +00:00
/* stylelint-disable */
/*
* 此文件由 `npm run generate:icons` 自动生成
* 请修改 `scripts/generate-icon-theme.js` `icons/` 源资产不要手写编辑本文件
*/
@font-face {
font-family: "monokai-pro-icons";
src: url("data:font/woff;base64,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
font-display: block;
font-style: normal;
font-weight: 400;
}
.nav-file-title::before {
display: inline-flex;
align-items: center;
justify-content: center;
width: var(--monokai-file-tree-slot-size);
min-width: var(--monokai-file-tree-slot-size);
height: var(--monokai-file-tree-glyph-size);
margin-inline-end: calc(-1 * var(--monokai-file-tree-slot-size));
transform: translateX(calc(-1 * (var(--monokai-file-tree-slot-size) + var(--monokai-file-tree-icon-gap))));
2026-05-15 09:41:28 +00:00
--monokai-file-icon-color: #ffd866;
2026-05-15 09:28:05 +00:00
color: var(--monokai-file-icon-color, var(--icon-color));
2026-05-15 09:41:28 +00:00
content: "\e658";
2026-05-15 09:28:05 +00:00
font-family: "monokai-pro-icons";
font-size: var(--monokai-file-tree-glyph-size);
2026-05-15 09:28:05 +00:00
font-style: normal;
font-variant: normal;
font-weight: 400;
line-height: 1;
pointer-events: none;
2026-05-15 09:28:05 +00:00
speak: never;
text-align: center;
text-rendering: auto;
}
.nav-file-title[data-path$=".7z"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e666";
}
.nav-file-title[data-path$=".astro"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e662";
}
.nav-file-title[data-path$=".bash"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e615";
}
.nav-file-title[data-path$=".bmp"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e638";
}
.nav-file-title[data-path$=".c"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e65d";
}
.nav-file-title[data-path$=".canvas"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e624";
}
.nav-file-title[data-path$=".cjs"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e642";
}
.nav-file-title[data-path$=".cpp"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e65b";
}
.nav-file-title[data-path$=".cs"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e65e";
}
.nav-file-title[data-path$=".css"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e65a";
}
.nav-file-title[data-path$=".csv"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e656";
}
.nav-file-title[data-path$=".dart"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e657";
}
.nav-file-title[data-path$=".dockerfile"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e64f";
}
.nav-file-title[data-path$=".env"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e655";
}
.nav-file-title[data-path$=".gif"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e638";
}
.nav-file-title[data-path$=".go"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e64b";
}
.nav-file-title[data-path$=".gql"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e64c";
}
.nav-file-title[data-path$=".graphql"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e64c";
}
.nav-file-title[data-path$=".h"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e65d";
}
.nav-file-title[data-path$=".hpp"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e65b";
}
.nav-file-title[data-path$=".html"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e601";
}
.nav-file-title[data-path$=".jpeg"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e638";
}
.nav-file-title[data-path$=".jpg"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e638";
}
.nav-file-title[data-path$=".js"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e642";
}
.nav-file-title[data-path$=".json"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e624";
}
.nav-file-title[data-path$=".jsx"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e614";
}
.nav-file-title[data-path$=".kt"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e63b";
}
.nav-file-title[data-path$=".less"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e63f";
}
.nav-file-title[data-path$=".lua"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e629";
}
.nav-file-title[data-path$=".md"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e637";
}
.nav-file-title[data-path$=".mdx"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e63d";
}
.nav-file-title[data-path$=".mjs"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e642";
}
.nav-file-title[data-path$=".png"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e638";
}
.nav-file-title[data-path$=".py"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e627";
}
.nav-file-title[data-path$=".rb"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e617";
}
.nav-file-title[data-path$=".rs"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e61e";
}
.nav-file-title[data-path$=".sass"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e611";
}
.nav-file-title[data-path$=".scss"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e611";
}
.nav-file-title[data-path$=".sh"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e615";
}
.nav-file-title[data-path$=".sql"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e61b";
}
.nav-file-title[data-path$=".svelte"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e608";
}
.nav-file-title[data-path$=".svg"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e605";
}
.nav-file-title[data-path$=".swift"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e612";
}
.nav-file-title[data-path$=".tex"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e60c";
}
.nav-file-title[data-path$=".toml"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\e613";
}
.nav-file-title[data-path$=".ts"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e60d";
}
.nav-file-title[data-path$=".tsx"]::before {
--monokai-file-icon-color: #78dce8;
content: "\e614";
}
.nav-file-title[data-path$=".vue"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e60f";
}
.nav-file-title[data-path$=".yaml"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e60b";
}
.nav-file-title[data-path$=".yml"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e60b";
}
.nav-file-title[data-path$=".zip"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e666";
}
.nav-file-title[data-path="agents.md"]::before,
.nav-file-title[data-path$="/agents.md"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\eba8";
}
.nav-file-title[data-path="AGENTS.md"]::before,
.nav-file-title[data-path$="/AGENTS.md"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\eba8";
}
.nav-file-title[data-path="api.md"]::before,
.nav-file-title[data-path$="/api.md"]::before {
--monokai-file-icon-color: #78dce8;
content: "\eab5";
}
.nav-file-title[data-path="API.md"]::before,
.nav-file-title[data-path$="/API.md"]::before {
--monokai-file-icon-color: #78dce8;
content: "\eab5";
}
.nav-file-title[data-path="changelog.md"]::before,
.nav-file-title[data-path$="/changelog.md"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e67b";
}
.nav-file-title[data-path="CHANGELOG.md"]::before,
.nav-file-title[data-path$="/CHANGELOG.md"]::before {
--monokai-file-icon-color: #fc9867;
content: "\e67b";
}
.nav-file-title[data-path="claude.md"]::before,
.nav-file-title[data-path$="/claude.md"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\eba8";
}
.nav-file-title[data-path="CLAUDE.md"]::before,
.nav-file-title[data-path$="/CLAUDE.md"]::before {
--monokai-file-icon-color: #ab9df2;
content: "\eba8";
}
.nav-file-title[data-path="cursor.md"]::before,
.nav-file-title[data-path$="/cursor.md"]::before {
--monokai-file-icon-color: #66d9ef;
content: "\e67d";
}
.nav-file-title[data-path="CURSOR.md"]::before,
.nav-file-title[data-path$="/CURSOR.md"]::before {
--monokai-file-icon-color: #66d9ef;
content: "\e67d";
}
.nav-file-title[data-path="package.json"]::before,
.nav-file-title[data-path$="/package.json"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e62b";
}
.nav-file-title[data-path="prompts.md"]::before,
.nav-file-title[data-path$="/prompts.md"]::before {
--monokai-file-icon-color: #e6db74;
content: "\e940";
}
.nav-file-title[data-path="PROMPTS.md"]::before,
.nav-file-title[data-path$="/PROMPTS.md"]::before {
--monokai-file-icon-color: #e6db74;
content: "\e940";
}
.nav-file-title[data-path="readme.md"]::before,
.nav-file-title[data-path$="/readme.md"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e695";
}
.nav-file-title[data-path="README.md"]::before,
.nav-file-title[data-path$="/README.md"]::before {
--monokai-file-icon-color: #a9dc76;
content: "\e695";
}
.nav-file-title[data-path="todo.md"]::before,
.nav-file-title[data-path$="/todo.md"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e679";
}
.nav-file-title[data-path="TODO.md"]::before,
.nav-file-title[data-path$="/TODO.md"]::before {
--monokai-file-icon-color: #ffd866;
content: "\e679";
}
.nav-file-title[data-path^=Bug_][data-path$=".md"]::before,
.nav-file-title[data-path*="/Bug_"][data-path$=".md"]::before {
--monokai-file-icon-color: #ff6188;
content: "\e8e8";
}
.nav-file-title,
.nav-folder-title {
--monokai-file-tree-slot-size: 1rem;
--monokai-file-tree-icon-gap: 0.35rem;
--monokai-file-tree-glyph-size: 0.8125rem;
--monokai-file-tree-toggle-size: 9px;
--monokai-file-tree-toggle-stroke-width: 1.75;
overflow: visible;
position: relative;
}
.nav-folder-title .nav-folder-collapse-indicator,
.nav-folder-title .collapse-icon {
flex: 0 0 var(--monokai-file-tree-slot-size);
width: var(--monokai-file-tree-slot-size);
min-width: var(--monokai-file-tree-slot-size);
margin-inline-end: var(--monokai-file-tree-icon-gap);
}
.nav-folder-title .nav-folder-collapse-indicator svg,
.nav-folder-title .collapse-icon svg {
width: var(--monokai-file-tree-toggle-size);
height: var(--monokai-file-tree-toggle-size);
font-size: var(--monokai-file-tree-toggle-size);
stroke-width: var(--monokai-file-tree-toggle-stroke-width);
}
.nav-folder-title .nav-folder-collapse-indicator,
.nav-folder-title .collapse-icon {
display: inline-flex;
align-items: center;
justify-content: center;
2026-05-15 09:28:05 +00:00
}
2026-05-15 09:28:05 +00:00
.nav-folder-title[data-path*="/"] .nav-folder-collapse-indicator::before,
.nav-folder-title[data-path*="/"] .collapse-icon::before,
.nav-folder[data-path*="/"] > .nav-folder-title .nav-folder-collapse-indicator::before,
.nav-folder[data-path*="/"] > .nav-folder-title .collapse-icon::before,
.nav-folder-children .nav-folder-children .nav-folder-title .nav-folder-collapse-indicator::before,
.nav-folder-children .nav-folder-children .nav-folder-title .collapse-icon::before {
content: "\e64d";
display: inline-block;
color: var(--icon-color);
font-family: monokai-pro-icons, monospace;
font-size: var(--monokai-file-tree-glyph-size);
2026-05-15 09:28:05 +00:00
font-style: normal;
font-weight: 400;
line-height: 1;
text-align: center;
text-rendering: auto;
}
.nav-folder-title[data-path*="/"] .nav-folder-collapse-indicator svg,
.nav-folder-title[data-path*="/"] .collapse-icon svg,
.nav-folder[data-path*="/"] > .nav-folder-title .nav-folder-collapse-indicator svg,
.nav-folder[data-path*="/"] > .nav-folder-title .collapse-icon svg,
.nav-folder-children .nav-folder-children .nav-folder-title .nav-folder-collapse-indicator svg,
.nav-folder-children .nav-folder-children .nav-folder-title .collapse-icon svg {
display: none;
}
body.monokai-syntax-hide-file-tree-icons .nav-file-title::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder-title[data-path*="/"] .nav-folder-collapse-indicator::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder-title[data-path*="/"] .collapse-icon::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder[data-path*="/"] > .nav-folder-title .nav-folder-collapse-indicator::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder[data-path*="/"] > .nav-folder-title .collapse-icon::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder-children .nav-folder-children .nav-folder-title .nav-folder-collapse-indicator::before,
body.monokai-syntax-hide-file-tree-icons .nav-folder-children .nav-folder-children .nav-folder-title .collapse-icon::before {
display: none;
}
body.monokai-syntax-hide-file-tree-icons .nav-folder-title[data-path*="/"] .nav-folder-collapse-indicator svg,
body.monokai-syntax-hide-file-tree-icons .nav-folder-title[data-path*="/"] .collapse-icon svg,
body.monokai-syntax-hide-file-tree-icons .nav-folder[data-path*="/"] > .nav-folder-title .nav-folder-collapse-indicator svg,
body.monokai-syntax-hide-file-tree-icons .nav-folder[data-path*="/"] > .nav-folder-title .collapse-icon svg,
body.monokai-syntax-hide-file-tree-icons .nav-folder-children .nav-folder-children .nav-folder-title .nav-folder-collapse-indicator svg,
body.monokai-syntax-hide-file-tree-icons .nav-folder-children .nav-folder-children .nav-folder-title .collapse-icon svg {
display: initial;
}
body.monokai-syntax-monochrome-icons .nav-file-title::before {
--monokai-file-icon-color: var(--icon-color);
}
body.monokai-syntax-monochrome-icons .nav-file-title:hover::before {
--monokai-file-icon-color: var(--icon-color-hover);
}
body.monokai-syntax-monochrome-icons .nav-file-title.is-active::before {
--monokai-file-icon-color: var(--icon-color-active);
}
.workspace-ribbon {
background-color: var(--ribbon-background);
border-inline-end: 1px solid var(--background-modifier-border);
}
.side-dock-ribbon-action,
.workspace-ribbon-collapse-btn {
border-radius: var(--radius-s);
color: var(--icon-color);
margin-block: 2px;
}
.side-dock-ribbon-action:hover,
.workspace-ribbon-collapse-btn:hover {
color: var(--icon-color-hover);
background-color: var(--background-modifier-hover);
}
.side-dock-ribbon-action.is-active {
color: var(--icon-color-active);
background-color: var(--background-modifier-hover);
box-shadow: inset 2px 0 0 var(--icon-color-active);
}
body.is-mobile .workspace-ribbon {
border-inline-end: 0;
}
.workspace-tab-header-container,
.workspace-sidedock-vault-profile,
.workspace-sidedock-empty-state {
background-color: var(--background-secondary);
border-color: var(--background-modifier-border);
}
.workspace-tab-header {
color: var(--text-muted);
background-color: transparent;
border-radius: var(--radius-s) var(--radius-s) 0 0;
transition: color 140ms ease, background-color 140ms ease, box-shadow 140ms ease;
2026-05-15 09:28:05 +00:00
}
.workspace-tab-header:hover {
color: var(--text-normal);
background-color: var(--background-modifier-hover);
}
.workspace-tab-header.is-active {
color: var(--text-normal);
background-color: var(--background-primary);
box-shadow: inset 0 -2px 0 var(--interactive-accent);
}
.workspace-tab-header-inner-title {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.modal,
.prompt,
.suggestion-container {
color: var(--text-normal);
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: var(--monokai-modal-shadow);
2026-05-15 09:28:05 +00:00
}
.modal-title,
.prompt-title {
color: var(--text-normal);
}
.prompt-input,
.modal input[type=text],
.modal input[type=search],
.modal textarea {
color: var(--text-normal);
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 0.45rem 0.6rem;
transition: border-color 140ms ease, box-shadow 140ms ease;
2026-05-15 09:28:05 +00:00
}
.prompt-input:focus,
.modal input[type=text]:focus,
.modal input[type=search]:focus,
.modal textarea:focus {
outline: 2px solid var(--interactive-accent);
outline-offset: 2px;
}
.suggestion-item {
color: var(--text-muted);
border-radius: var(--radius-s);
}
.suggestion-item.is-selected,
.suggestion-item.mod-complex.is-selected {
color: var(--text-normal);
background-color: var(--nav-item-background-active);
}
.suggestion-highlight {
color: var(--text-accent);
}
.graph-view {
--graph-line: var(--monokai-graph-line);
--graph-node: var(--monokai-graph-node);
--graph-node-focused: var(--monokai-graph-focused);
--graph-node-tag: var(--monokai-graph-node-tag);
--graph-node-attachment: var(--monokai-graph-node-attachment);
--graph-node-unresolved: var(--monokai-graph-node-unresolved);
--graph-arrow: var(--monokai-graph-line);
--graph-line-highlight: var(--link-color);
--graph-node-highlight-fill: var(--interactive-accent);
--graph-node-highlight-line: var(--link-color);
background-color: var(--monokai-graph-background);
transition: color 140ms ease, background-color 180ms ease;
}
@keyframes monokai-graph-tap {
0% {
transform: translateX(0);
}
35% {
transform: translateX(1px);
}
70% {
transform: translateX(-1px);
}
100% {
transform: translateX(0);
}
}
2026-05-15 09:41:28 +00:00
.theme-dark .graph-view {
2026-05-15 09:28:05 +00:00
--monokai-graph-background: #1e1f1c;
--monokai-graph-panel: #2b2c26;
--monokai-graph-line: rgb(120 220 232 / 42%);
--monokai-graph-node: #c1c1bd;
--monokai-graph-focused: #ff6188;
--monokai-graph-node-tag: #ab9df2;
--monokai-graph-node-attachment: #a9dc76;
--monokai-graph-node-unresolved: #72736f;
--monokai-graph-ring: rgb(102 217 239 / 28%);
}
2026-05-15 09:41:28 +00:00
.theme-light .graph-view {
2026-05-15 09:28:05 +00:00
--monokai-graph-background: #f5f0e6;
--monokai-graph-panel: #f2ead8;
--monokai-graph-line: rgb(20 116 138 / 42%);
--monokai-graph-node: #4f5a55;
--monokai-graph-focused: #c83f67;
--monokai-graph-node-tag: #7058be;
--monokai-graph-node-attachment: #269d69;
--monokai-graph-node-unresolved: #a39a8d;
--monokai-graph-ring: rgb(20 116 138 / 18%);
}
.graph-controls {
color: var(--text-muted);
background-color: var(--monokai-graph-panel);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
transition: border-color 140ms ease, box-shadow 180ms ease;
}
.graph-controls-button {
color: var(--icon-color);
border-radius: var(--radius-s);
transition: color 140ms ease, background-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}
.graph-controls-button:hover {
color: var(--icon-color-hover);
background-color: var(--background-modifier-hover);
transform: translateY(-1px);
}
.graph-controls-button:active {
animation: monokai-graph-tap 160ms ease-out;
transform: translateY(0);
}
.graph-controls-button.mod-active {
color: var(--icon-color-active);
background-color: var(--nav-item-background-active);
box-shadow: inset 2px 0 0 var(--icon-color-active);
}
.graph-view.color-fill,
.graph-view.color-fill-focused,
.graph-view.color-fill-tag,
.graph-view.color-fill-attachment,
.graph-view.color-fill-unresolved {
color: var(--graph-node);
}
.graph-view.color-line,
.graph-view.color-arrow {
color: var(--graph-line);
}
.graph-view.color-fill-highlight,
.graph-view.color-line-highlight {
color: var(--graph-line-highlight);
}
.graph-view.color-fill-focused {
color: var(--graph-node-focused);
}
.graph-view.color-fill-tag {
color: var(--graph-node-tag);
}
.graph-view.color-fill-attachment {
color: var(--graph-node-attachment);
}
.graph-view.color-fill-unresolved {
color: var(--graph-node-unresolved);
}
.graph-view.color-line-highlight {
color: var(--graph-node-highlight-line);
}
.graph-view.color-fill-highlight {
color: var(--graph-node-highlight-fill);
}
.workspace-leaf-content[data-type=graph],
.workspace-leaf-content[data-type=localgraph] {
background-color: var(--monokai-graph-background);
transition: box-shadow 180ms ease, background-color 180ms ease;
}
.workspace-leaf-content[data-type=graph] .view-content,
.workspace-leaf-content[data-type=localgraph] .view-content {
background: var(--monokai-graph-background);
overflow: hidden;
position: relative;
}
.workspace-leaf-content[data-type=graph]:focus-within,
.workspace-leaf-content[data-type=localgraph]:focus-within {
box-shadow: inset 0 0 0 1px var(--monokai-graph-ring);
}
@media (prefers-reduced-motion: reduce) {
.graph-view,
.graph-controls,
.graph-controls-button,
.workspace-leaf-content[data-type=graph],
.workspace-leaf-content[data-type=localgraph] {
transition: none;
}
.graph-controls-button:hover,
.graph-controls-button:active {
animation: none;
transform: none;
}
}
.canvas-wrapper {
--canvas-background: var(--background-primary);
--canvas-card-label-color: var(--text-muted);
--canvas-color-1: var(--text-accent);
--canvas-color-2: var(--h2-color);
--canvas-color-3: var(--h3-color);
--canvas-color-4: var(--h4-color);
--canvas-color-5: var(--link-color);
--canvas-color-6: var(--h6-color);
background-color: var(--canvas-background);
}
.canvas-node {
border-color: var(--background-modifier-border);
border-radius: var(--radius-m);
}
.canvas-node-content {
color: var(--text-normal);
background-color: var(--background-secondary);
border-radius: var(--radius-m);
}
.canvas-node.is-focused,
.canvas-node.is-selected {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--monokai-selection-ring);
2026-05-15 09:28:05 +00:00
}
.canvas-node-label {
color: var(--canvas-card-label-color);
}
.canvas-path {
stroke: var(--text-faint);
}
.canvas-path.is-focused,
.canvas-path.is-selected {
stroke: var(--link-color);
}
.canvas-node-container {
--color-red: var(--canvas-color-1);
--color-orange: var(--canvas-color-2);
--color-yellow: var(--canvas-color-3);
--color-green: var(--canvas-color-4);
--color-cyan: var(--canvas-color-5);
--color-purple: var(--canvas-color-6);
}
body.monokai-syntax-filter-classic {
--monokai-filter-name: "classic";
}
body.monokai-syntax-filter-machine {
--background-primary: #222421;
--background-secondary: #191b19;
--text-accent: #ff4f8b;
--interactive-accent: #ff4f8b;
--monokai-filter-name: "machine";
}
body.monokai-syntax-filter-octagon {
--background-primary: #28252f;
--background-secondary: #1f1d26;
--text-accent: #ff6188;
--interactive-accent: #ff6188;
--link-color: #78dce8;
--monokai-filter-name: "octagon";
}
body.monokai-syntax-filter-ristretto {
--background-primary: #2b241f;
--background-secondary: #211b18;
--text-accent: #ff6188;
--interactive-accent: #ff6188;
--link-color: #fc9867;
--monokai-filter-name: "ristretto";
}
body.monokai-syntax-filter-spectrum {
--background-primary: #262933;
--background-secondary: #1c1f28;
--text-accent: #ab9df2;
--interactive-accent: #ab9df2;
--link-color: #78dce8;
--monokai-filter-name: "spectrum";
}
body.monokai-syntax-compact {
--monokai-nav-font-size: 13px;
--nav-item-size: 22px;
--ribbon-item-size: 32px;
--input-height: 28px;
--callout-padding: 0.9rem;
--callout-content-padding: var(--spacing-3) 0 0 0;
2026-05-15 09:28:05 +00:00
}
body.monokai-syntax-compact .nav-files-container {
font-size: var(--monokai-nav-font-size);
}
body.monokai-syntax-compact .nav-file-title,
body.monokai-syntax-compact .nav-folder-title {
--monokai-file-tree-slot-size: 13px;
--monokai-file-tree-icon-gap: 4px;
--monokai-file-tree-glyph-size: 12px;
--monokai-file-tree-toggle-size: 8px;
2026-05-15 09:28:05 +00:00
min-height: var(--nav-item-size);
line-height: var(--nav-item-size);
padding: 0 6px;
}
body.monokai-syntax-compact .nav-file-title-content,
body.monokai-syntax-compact .nav-folder-title-content {
font-size: var(--monokai-nav-font-size);
line-height: var(--nav-item-size);
}
body.monokai-syntax-compact .side-dock-ribbon-action {
height: var(--ribbon-item-size);
padding: 4px;
}
body.monokai-syntax-compact .markdown-rendered pre {
padding: 0.75rem;
}
body.monokai-syntax-compact .markdown-rendered th,
body.monokai-syntax-compact .markdown-rendered td {
padding: 0.35rem 0.5rem;
}
2026-05-15 09:28:05 +00:00
body.monokai-syntax-monochrome-icons {
--icon-color: var(--text-muted);
--icon-color-hover: var(--text-normal);
--icon-color-active: var(--text-normal);
}
body {
--file-line-width: var(--monokai-readable-line-width, 48rem);
--text-accent: var(--monokai-accent-color, var(--monokai-default-accent));
--interactive-accent: var(--monokai-accent-color, var(--monokai-default-accent));
--link-color: var(--monokai-link-color, var(--monokai-default-link));
--link-external-color: var(--monokai-link-color, var(--monokai-default-link));
--blockquote-border-color: var(--monokai-success-color, var(--monokai-default-success));
--monokai-blockquote-border: var(--monokai-success-color, var(--monokai-default-success));
2026-05-15 09:28:05 +00:00
--checkbox-color-checked: var(--monokai-success-color, var(--monokai-default-success));
--text-highlight-bg: var(--monokai-warning-color, var(--monokai-default-warning));
--code-background: var(--monokai-code-background, var(--monokai-default-code-background));
}
/* stylelint-disable selector-class-pattern -- Obsidian 内部类名,不能改成 kebab-case。 */
2026-05-15 09:41:28 +00:00
body:is(.theme-dark, .theme-light) {
2026-05-15 09:28:05 +00:00
--blockquote-background-color: transparent;
--blockquote-border-thickness: 2px;
--callout-padding: 1.25rem;
--callout-content-padding: var(--spacing-4) 0 0 0;
--callout-border-width: 0;
--callout-radius: var(--radius-s);
--monokai-blockquote-content-gap: 1.25rem;
--monokai-blockquote-nested-gap: 0.75rem;
--monokai-callout-title-gap: var(--spacing-2);
--monokai-callout-source-marker-color: var(--text-faint);
2026-05-15 09:28:05 +00:00
}
/* ===== 块引用(阅读 + 编辑统一) ===== */
body .markdown-preview-view.markdown-rendered blockquote,
body .markdown-rendered blockquote {
background-color: transparent;
border-inline-start: 2px solid var(--monokai-blockquote-border);
border-radius: 0 var(--radius-s) var(--radius-s) 0;
color: var(--text-normal);
padding: 0.75rem 0.75rem 0.75rem var(--monokai-blockquote-content-gap);
}
body .markdown-rendered blockquote blockquote {
margin-block: var(--monokai-blockquote-nested-gap);
2026-05-15 09:28:05 +00:00
}
body .markdown-source-view.mod-cm6 .cm-line.HyperMD-quote,
body .markdown-source-view.mod-cm6 .HyperMD-quote {
background-color: transparent;
border-inline-start: 2px solid var(--monokai-blockquote-border);
border-radius: 0 var(--radius-s) var(--radius-s) 0;
}
body .markdown-source-view.mod-cm6 .cm-line.HyperMD-quote + .cm-line.HyperMD-quote,
body .markdown-source-view.mod-cm6 .HyperMD-quote + .HyperMD-quote {
border-start-start-radius: 0;
border-end-start-radius: 0;
}
2026-05-15 09:28:05 +00:00
body .markdown-source-view.mod-cm6 .cm-line.HyperMD-quote .cm-quote,
body .markdown-source-view.mod-cm6 .HyperMD-quote .cm-quote {
color: var(--text-normal);
border-inline-start: 0;
margin-left: var(--monokai-blockquote-content-gap);
2026-05-15 09:28:05 +00:00
padding-inline-start: 0;
}
body .markdown-source-view.mod-cm6 .cm-quote-2,
body .markdown-source-view.mod-cm6 .cm-quote-3 {
color: var(--text-normal);
}
2026-05-15 09:28:05 +00:00
body .markdown-source-view.mod-cm6 .cm-line.HyperMD-quote .cm-formatting-quote,
body .markdown-source-view.mod-cm6 .HyperMD-quote .cm-formatting-quote {
display: none;
}
/* ===== Callout 组件(阅读 + 编辑统一:背景 + 竖线 + 内间距) ===== */
body .markdown-preview-view.markdown-rendered .callout,
body .markdown-rendered .callout,
body .markdown-source-view.mod-cm6 .callout {
background-color: var(--callout-background, transparent);
border: 0;
border-inline-start: 2px solid var(--callout-border, var(--monokai-callout-note-border));
border-radius: 0 var(--radius-s) var(--radius-s) 0;
box-shadow: none;
padding: var(--callout-padding);
}
body .markdown-source-view.mod-cm6 .cm-callout {
background-color: transparent;
border: 0;
border-radius: 0 var(--radius-s) var(--radius-s) 0;
padding: 0;
}
body .markdown-preview-view.markdown-rendered .callout-title,
body .markdown-rendered .callout-title,
body .markdown-source-view.mod-cm6 .callout-title,
body .markdown-source-view.mod-cm6 .cm-callout-title {
color: var(--callout-border, var(--monokai-callout-note-border));
font-weight: 700;
gap: var(--monokai-callout-title-gap);
2026-05-15 09:28:05 +00:00
padding-inline-start: 0;
}
body .markdown-preview-view.markdown-rendered .callout-content,
body .markdown-rendered .callout-content,
body .markdown-source-view.mod-cm6 .callout-content,
body .markdown-source-view.mod-cm6 .cm-callout-content {
background-color: transparent;
border-radius: 0;
margin-block-start: var(--spacing-4);
padding: var(--callout-content-padding);
padding-inline-start: 0;
}
body .markdown-source-view.mod-cm6 .cm-callout-content {
color: var(--text-normal);
}
body .markdown-source-view.mod-cm6 .cm-formatting-callout,
body .markdown-source-view.mod-cm6 .cm-callout .cm-formatting {
color: var(--monokai-callout-source-marker-color);
}
2026-05-15 09:28:05 +00:00
/* ===== Callout 语义色分组映射 ===== */
body .markdown-preview-view.markdown-rendered .callout[data-callout=note],
body .markdown-rendered .callout[data-callout=note],
body .markdown-source-view.mod-cm6 .callout[data-callout=note] {
--callout-background: var(--monokai-callout-note-bg);
--callout-border: var(--monokai-callout-note-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=abstract],
body .markdown-rendered .callout[data-callout=abstract],
body .markdown-source-view.mod-cm6 .callout[data-callout=abstract],
body .markdown-preview-view.markdown-rendered .callout[data-callout=summary],
body .markdown-rendered .callout[data-callout=summary],
body .markdown-source-view.mod-cm6 .callout[data-callout=summary],
body .markdown-preview-view.markdown-rendered .callout[data-callout=tldr],
body .markdown-rendered .callout[data-callout=tldr],
body .markdown-source-view.mod-cm6 .callout[data-callout=tldr] {
--callout-background: var(--monokai-callout-abstract-bg);
--callout-border: var(--monokai-callout-abstract-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=info],
body .markdown-rendered .callout[data-callout=info],
body .markdown-source-view.mod-cm6 .callout[data-callout=info] {
--callout-background: var(--monokai-callout-info-bg);
--callout-border: var(--monokai-callout-info-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=todo],
body .markdown-rendered .callout[data-callout=todo],
body .markdown-source-view.mod-cm6 .callout[data-callout=todo] {
--callout-background: var(--monokai-callout-todo-bg);
--callout-border: var(--monokai-callout-todo-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=tip],
body .markdown-rendered .callout[data-callout=tip],
body .markdown-source-view.mod-cm6 .callout[data-callout=tip],
body .markdown-preview-view.markdown-rendered .callout[data-callout=hint],
body .markdown-rendered .callout[data-callout=hint],
body .markdown-source-view.mod-cm6 .callout[data-callout=hint],
body .markdown-preview-view.markdown-rendered .callout[data-callout=important],
body .markdown-rendered .callout[data-callout=important],
body .markdown-source-view.mod-cm6 .callout[data-callout=important] {
--callout-background: var(--monokai-callout-tip-bg);
--callout-border: var(--monokai-callout-tip-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=question],
body .markdown-rendered .callout[data-callout=question],
body .markdown-source-view.mod-cm6 .callout[data-callout=question],
body .markdown-preview-view.markdown-rendered .callout[data-callout=help],
body .markdown-rendered .callout[data-callout=help],
body .markdown-source-view.mod-cm6 .callout[data-callout=help],
body .markdown-preview-view.markdown-rendered .callout[data-callout=faq],
body .markdown-rendered .callout[data-callout=faq],
body .markdown-source-view.mod-cm6 .callout[data-callout=faq] {
--callout-background: var(--monokai-callout-question-bg);
--callout-border: var(--monokai-callout-question-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=warning],
body .markdown-rendered .callout[data-callout=warning],
body .markdown-source-view.mod-cm6 .callout[data-callout=warning],
body .markdown-preview-view.markdown-rendered .callout[data-callout=caution],
body .markdown-rendered .callout[data-callout=caution],
body .markdown-source-view.mod-cm6 .callout[data-callout=caution],
body .markdown-preview-view.markdown-rendered .callout[data-callout=attention],
body .markdown-rendered .callout[data-callout=attention],
body .markdown-source-view.mod-cm6 .callout[data-callout=attention] {
--callout-background: var(--monokai-callout-warning-bg);
--callout-border: var(--monokai-callout-warning-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=error],
body .markdown-rendered .callout[data-callout=error],
body .markdown-source-view.mod-cm6 .callout[data-callout=error],
body .markdown-preview-view.markdown-rendered .callout[data-callout=danger],
body .markdown-rendered .callout[data-callout=danger],
body .markdown-source-view.mod-cm6 .callout[data-callout=danger] {
--callout-background: var(--monokai-callout-error-bg);
--callout-border: var(--monokai-callout-error-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=failure],
body .markdown-rendered .callout[data-callout=failure],
body .markdown-source-view.mod-cm6 .callout[data-callout=failure],
body .markdown-preview-view.markdown-rendered .callout[data-callout=fail],
body .markdown-rendered .callout[data-callout=fail],
body .markdown-source-view.mod-cm6 .callout[data-callout=fail],
body .markdown-preview-view.markdown-rendered .callout[data-callout=missing],
body .markdown-rendered .callout[data-callout=missing],
body .markdown-source-view.mod-cm6 .callout[data-callout=missing] {
--callout-background: var(--monokai-callout-failure-bg);
--callout-border: var(--monokai-callout-failure-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=bug],
body .markdown-rendered .callout[data-callout=bug],
body .markdown-source-view.mod-cm6 .callout[data-callout=bug] {
--callout-background: var(--monokai-callout-bug-bg);
--callout-border: var(--monokai-callout-bug-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=success],
body .markdown-rendered .callout[data-callout=success],
body .markdown-source-view.mod-cm6 .callout[data-callout=success],
body .markdown-preview-view.markdown-rendered .callout[data-callout=check],
body .markdown-rendered .callout[data-callout=check],
body .markdown-source-view.mod-cm6 .callout[data-callout=check],
body .markdown-preview-view.markdown-rendered .callout[data-callout=done],
body .markdown-rendered .callout[data-callout=done],
body .markdown-source-view.mod-cm6 .callout[data-callout=done] {
--callout-background: var(--monokai-callout-success-bg);
--callout-border: var(--monokai-callout-success-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=example],
body .markdown-rendered .callout[data-callout=example],
body .markdown-source-view.mod-cm6 .callout[data-callout=example] {
--callout-background: var(--monokai-callout-example-bg);
--callout-border: var(--monokai-callout-example-border);
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=quote],
body .markdown-rendered .callout[data-callout=quote],
body .markdown-source-view.mod-cm6 .callout[data-callout=quote],
body .markdown-preview-view.markdown-rendered .callout[data-callout=cite],
body .markdown-rendered .callout[data-callout=cite],
body .markdown-source-view.mod-cm6 .callout[data-callout=cite] {
--callout-background: var(--monokai-callout-quote-bg);
--callout-border: var(--monokai-callout-quote-border);
}
/* ===== Callout 图标 ===== */
body .markdown-preview-view.markdown-rendered .callout-icon,
body .markdown-rendered .callout-icon,
body .markdown-source-view.mod-cm6 .callout-icon,
body .markdown-source-view.mod-cm6 .cm-callout-icon {
flex-shrink: 0;
display: inline-flex;
align-items: center;
justify-content: center;
overflow: visible;
margin-right: 0.35em;
min-width: var(--callout-icon-size);
}
body .markdown-preview-view.markdown-rendered .callout-icon svg,
body .markdown-rendered .callout-icon svg,
body .markdown-source-view.mod-cm6 .callout-icon svg,
body .markdown-source-view.mod-cm6 .cm-callout-icon svg {
display: none;
}
body .markdown-preview-view.markdown-rendered .callout-icon::before,
body .markdown-rendered .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout-icon::before,
body .markdown-source-view.mod-cm6 .cm-callout-icon::before {
display: inline-block;
font-family: monokai-pro-icons, monospace;
font-size: var(--callout-icon-size);
font-style: normal;
font-weight: 400;
line-height: 1;
color: var(--callout-border, var(--monokai-callout-note-border));
-webkit-font-smoothing: antialiased;
speak: never;
text-rendering: auto;
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=note] .callout-icon::before,
body .markdown-rendered .callout[data-callout=note] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=note] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=note] .cm-callout-icon::before {
content: "\e66d";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=info] .callout-icon::before,
body .markdown-rendered .callout[data-callout=info] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=info] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=info] .cm-callout-icon::before {
content: "\e66f";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=abstract] .callout-icon::before,
body .markdown-rendered .callout[data-callout=abstract] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=abstract] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=abstract] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=summary] .callout-icon::before,
body .markdown-rendered .callout[data-callout=summary] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=summary] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=summary] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=tldr] .callout-icon::before,
body .markdown-rendered .callout[data-callout=tldr] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=tldr] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=tldr] .cm-callout-icon::before {
content: "\e668";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=warning] .callout-icon::before,
body .markdown-rendered .callout[data-callout=warning] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=warning] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=warning] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=caution] .callout-icon::before,
body .markdown-rendered .callout[data-callout=caution] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=caution] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=caution] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=attention] .callout-icon::before,
body .markdown-rendered .callout[data-callout=attention] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=attention] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=attention] .cm-callout-icon::before {
content: "\e671";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=error] .callout-icon::before,
body .markdown-rendered .callout[data-callout=error] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=error] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=error] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=danger] .callout-icon::before,
body .markdown-rendered .callout[data-callout=danger] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=danger] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=danger] .cm-callout-icon::before {
content: "\e676";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=failure] .callout-icon::before,
body .markdown-rendered .callout[data-callout=failure] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=failure] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=failure] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=fail] .callout-icon::before,
body .markdown-rendered .callout[data-callout=fail] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=fail] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=fail] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=missing] .callout-icon::before,
body .markdown-rendered .callout[data-callout=missing] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=missing] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=missing] .cm-callout-icon::before {
content: "\e66a";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=bug] .callout-icon::before,
body .markdown-rendered .callout[data-callout=bug] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=bug] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=bug] .cm-callout-icon::before {
content: "\e675";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=success] .callout-icon::before,
body .markdown-rendered .callout[data-callout=success] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=success] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=success] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=check] .callout-icon::before,
body .markdown-rendered .callout[data-callout=check] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=check] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=check] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=done] .callout-icon::before,
body .markdown-rendered .callout[data-callout=done] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=done] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=done] .cm-callout-icon::before {
content: "\e66b";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=question] .callout-icon::before,
body .markdown-rendered .callout[data-callout=question] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=question] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=question] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=help] .callout-icon::before,
body .markdown-rendered .callout[data-callout=help] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=help] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=help] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=faq] .callout-icon::before,
body .markdown-rendered .callout[data-callout=faq] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=faq] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=faq] .cm-callout-icon::before {
content: "\e66c";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=tip] .callout-icon::before,
body .markdown-rendered .callout[data-callout=tip] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=tip] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=tip] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=hint] .callout-icon::before,
body .markdown-rendered .callout[data-callout=hint] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=hint] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=hint] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=important] .callout-icon::before,
body .markdown-rendered .callout[data-callout=important] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=important] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=important] .cm-callout-icon::before {
content: "\e66e";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=todo] .callout-icon::before,
body .markdown-rendered .callout[data-callout=todo] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=todo] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=todo] .cm-callout-icon::before {
content: "\e670";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=quote] .callout-icon::before,
body .markdown-rendered .callout[data-callout=quote] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=quote] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=quote] .cm-callout-icon::before,
body .markdown-preview-view.markdown-rendered .callout[data-callout=cite] .callout-icon::before,
body .markdown-rendered .callout[data-callout=cite] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=cite] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=cite] .cm-callout-icon::before {
content: "\e672";
}
body .markdown-preview-view.markdown-rendered .callout[data-callout=example] .callout-icon::before,
body .markdown-rendered .callout[data-callout=example] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=example] .callout-icon::before,
body .markdown-source-view.mod-cm6 .callout[data-callout=example] .cm-callout-icon::before {
content: "\e674";
}
/* stylelint-enable selector-class-pattern */
/*
@settings
name: Monokai Syntax
id: monokai-syntax
settings:
-
id: monokai-syntax-info
title: Monokai Syntax
description: Monokai Syntax 主题设置
type: heading
level: 1
*/
/*
@settings
name: Monokai Syntax 调色板
id: monokai-syntax-palette
settings:
-
id: monokai-syntax-filter
title: 调色板滤镜
type: class-select
allowEmpty: false
default: monokai-syntax-filter-classic
options:
-
label: Classic
value: monokai-syntax-filter-classic
-
label: Machine
value: monokai-syntax-filter-machine
-
label: Octagon
value: monokai-syntax-filter-octagon
-
label: Ristretto
value: monokai-syntax-filter-ristretto
-
label: Spectrum
value: monokai-syntax-filter-spectrum
*/
/*
@settings
name: Monokai Syntax 密度
id: monokai-syntax-density
settings:
-
id: monokai-syntax-compact
title: 紧凑模式
type: class-toggle
default: false
*/
/*
@settings
name: Monokai Syntax 图标
id: monokai-syntax-icons
settings:
-
id: monokai-syntax-monochrome-icons
title: 单色图标
type: class-toggle
default: false
2026-05-15 09:13:25 +00:00
-
id: monokai-syntax-hide-file-tree-icons
title: 关闭文档树图标
type: class-toggle
default: false
*/
/*
@settings
name: Monokai Syntax 排版
id: monokai-syntax-typography
settings:
-
id: monokai-readable-line-width
title: 可读行宽
type: variable-number-slider
default: 48
min: 40
max: 75
step: 1
format: rem
*/
/*
@settings
name: Monokai Syntax 强调色
id: monokai-syntax-accents
settings:
-
id: monokai-accent-color
title: 强调色
type: variable-color
opacity: true
format: hex
default: '#f92672'
-
id: monokai-link-color
title: 链接色
type: variable-color
opacity: true
format: hex
default: '#66d9ef'
-
id: monokai-success-color
title: 成功色
type: variable-color
opacity: true
format: hex
default: '#a6e22e'
-
id: monokai-warning-color
title: 高亮色
type: variable-color
opacity: true
format: rgb
default: 'rgb(230 219 116 / 28%)'
-
id: monokai-code-background
title: 代码背景
type: variable-color
opacity: true
format: hex
default: '#1e1f1c'
*/