/* ═══════════════════════════════════════════════════════════════════════════
   EaglePress — Shared Content Rendering CSS
   Injected into every page (admin + frontend) so that markdown-rendered
   output looks identical in Preview Mode and Published Mode regardless of
   which theme is active.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Prose content (universal markdown typography) ───────────────────────── */
.ep-prose {
  line-height: 1.75;
  word-break: break-word;
  overflow-wrap: break-word;
}
.ep-prose > * + * { margin-top: 1.1em; }
.ep-prose h1, .ep-prose h2, .ep-prose h3,
.ep-prose h4, .ep-prose h5, .ep-prose h6 {
  margin-top: 1.8em;
  margin-bottom: 0.45em;
  line-height: 1.25;
  font-weight: 700;
}
.ep-prose > h1:first-child,
.ep-prose > h2:first-child,
.ep-prose > h3:first-child { margin-top: 0; }
.ep-prose h1 { font-size: 2em; }
.ep-prose h2 { font-size: 1.5em; }
.ep-prose h3 { font-size: 1.25em; }
.ep-prose h4 { font-size: 1.1em; }
.ep-prose h5 { font-size: 1em; }
.ep-prose h6 { font-size: 0.9em; opacity: 0.7; }
.ep-prose p  { margin: 0 0 0.9em; }
.ep-prose p:last-child { margin-bottom: 0; }
.ep-prose ul, .ep-prose ol {
  margin: 0.6em 0 0.9em;
  padding-left: 1.7em;
}
.ep-prose li { margin-bottom: 0.3em; }
.ep-prose li > ul, .ep-prose li > ol { margin-top: 0.25em; margin-bottom: 0; }
.ep-prose ul { list-style-type: disc; }
.ep-prose ul ul { list-style-type: circle; }
.ep-prose ol { list-style-type: decimal; }
.ep-prose blockquote {
  margin: 1.4em 0;
  padding: 0.7em 1.1em;
  border-left: 4px solid #3b82f6;
  background: rgba(59,130,246,0.06);
  border-radius: 0 4px 4px 0;
}
.ep-prose blockquote p { margin: 0; }
.ep-prose a { color: #2563eb; text-decoration: underline; }
.ep-prose a:hover { color: #1d4ed8; }
.ep-prose strong { font-weight: 700; }
.ep-prose em { font-style: italic; }
.ep-prose hr {
  border: none;
  border-top: 2px solid #e5e7eb;
  margin: 1.8em 0;
}
.ep-prose img {
  max-width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
  margin: 1em auto;
}
/* dark-mode adjustments */
[data-theme="dark"] .ep-prose a { color: #60a5fa; }
[data-theme="dark"] .ep-prose a:hover { color: #93c5fd; }
[data-theme="dark"] .ep-prose blockquote {
  border-left-color: #3b82f6;
  background: rgba(59,130,246,0.1);
}
[data-theme="dark"] .ep-prose hr { border-top-color: #374151; }

/* ── Code blocks ─────────────────────────────────────────────────────────── */
.ep-code-block {
  --cb-bg: #ffffff;
  --cb-border: #d0d7de;
  --cb-toolbar-bg: #f6f8fa;
  --cb-toolbar-border: #d0d7de;
  --cb-lang-color: #57606a;
  --cb-select-bg: #eaeef2;
  --cb-select-text: #24292f;
  --cb-select-border: #d0d7de;
  --cb-select-arrow: %2357606a;
  --cb-select-focus: #0969da;
  --cb-code-text: #24292f;
  position: relative;
  margin: 1.5em 0;
  border-radius: 6px;
  overflow: hidden;
  background: var(--cb-bg);
  border: 1px solid var(--cb-border);
  transition: background 0.15s ease, border-color 0.15s ease;
}
.ep-code-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 7px 14px;
  background: var(--cb-toolbar-bg);
  border-bottom: 1px solid var(--cb-toolbar-border);
  transition: background 0.15s ease, border-color 0.15s ease;
}
.ep-code-toolbar-selects {
  display: flex;
  align-items: center;
  gap: 6px;
}
.ep-code-lang-name {
  color: var(--cb-lang-color);
  font-size: 11px;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  user-select: none;
}
.ep-code-lang-select,
.ep-code-theme-select {
  -webkit-appearance: none;
  appearance: none;
  background: var(--cb-select-bg);
  color: var(--cb-select-text);
  border: 1px solid var(--cb-select-border);
  border-radius: 4px;
  font-size: 11px;
  padding: 3px 22px 3px 8px;
  cursor: pointer;
  outline: none;
  background-repeat: no-repeat;
  background-position: right 6px center;
  background-size: 8px;
  transition: border-color 0.15s, color 0.15s;
}
.ep-code-lang-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238b949e'/%3E%3C/svg%3E");
}
.ep-code-theme-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%238b949e'/%3E%3C/svg%3E");
}
.ep-code-lang-select:hover, .ep-code-lang-select:focus,
.ep-code-theme-select:hover, .ep-code-theme-select:focus {
  border-color: var(--cb-select-focus);
  color: var(--cb-code-text);
}
.ep-code-wrap-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--cb-lang-color);
  font-size: 11px;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  cursor: pointer;
  user-select: none;
}
.ep-code-wrap-toggle {
  margin: 0;
  cursor: pointer;
  accent-color: #D4AF37;
}
input.ep-code-wrap-toggle:checked {
  outline: 2px solid #D4AF37;
  outline-offset: 1px;
}
/* ── Per-block light/dark mode toggle ────────────────────────────────────── */
.ep-code-mode-toggle {
  background: none;
  border: 2px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1;
  padding: 1px 4px;
  user-select: none;
  transition: border-color 0.15s, opacity 0.15s;
}
.ep-code-mode-toggle.ep-mode-light { border-color: #e6b800; }
.ep-code-mode-toggle.ep-mode-dark  { border-color: #22a85a; }
.ep-code-mode-toggle:hover         { opacity: 0.75; }
.ep-code-block.ep-code-wrap pre {
  white-space: pre-wrap;
  word-break: normal;
  overflow-wrap: break-word;
  overflow-x: hidden;
}
.ep-code-block.ep-code-wrap pre code {
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
  overflow-x: hidden;
}
.ep-code-block pre {
  margin: 0;
  padding: 1em 1.2em;
  overflow-x: auto;
  background: transparent;
  border: none;
  border-radius: 0;
  border-left: none;
}
.ep-code-block pre code {
  background: transparent !important;
  border: none;
  padding: 0;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  font-size: 13.5px;
  line-height: 1.6;
  color: var(--cb-code-text);
  border-radius: 0;
}
.ep-code-block[data-lang="markdown"] pre code { line-height: 1.85; }
.ep-code-block[data-lang="markdown"] .hljs-section {
  font-weight: 700; font-size: 1.04em; letter-spacing: 0.01em; display: inline;
}
.ep-code-block[data-lang="markdown"] .hljs-strong  { color: inherit; font-weight: 800; }
.ep-code-block[data-lang="markdown"] .hljs-emphasis { font-style: italic; }
.ep-code-block[data-lang="markdown"] .hljs-quote    { font-style: italic; opacity: 0.78; }
.ep-code-block[data-lang="markdown"] .hljs-code {
  background: rgba(110,118,129,0.18); border-radius: 3px; padding: 0.05em 0.35em; font-size: 0.88em;
}
.ep-code-block[data-lang="markdown"] .hljs-link {
  text-decoration: underline; text-underline-offset: 2px; text-decoration-thickness: 1px;
}
.ep-code-block[data-lang="markdown"] .hljs-bullet   { font-weight: 600; }
.ep-inline-code-wrap[data-lang="markdown"] .hljs-section { font-weight: 700; }
.ep-inline-code-wrap[data-lang="markdown"] .hljs-strong  { color: inherit; font-weight: 800; }
.ep-inline-code-wrap[data-lang="markdown"] .hljs-emphasis { font-style: italic; }
.ep-inline-code-wrap[data-lang="markdown"] .hljs-bullet  { font-weight: 600; }
.ep-code-block[data-inline-formatted="true"] pre code strong,
.ep-inline-code-wrap[data-inline-formatted="true"] code strong {
  color: var(--cb-code-text, #e6edf3) !important;
  font-weight: 800 !important;
}

/* ── Inline code ─────────────────────────────────────────────────────────── */
.ep-inline-code-wrap {
  position: relative;
  display: inline;
}
.ep-inline-code-wrap code {
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  font-size: 0.875em;
  background: rgba(110, 118, 129, 0.15);
  border: 1px solid rgba(110, 118, 129, 0.25);
  border-radius: 4px;
  padding: 0.1em 0.4em;
}
.ep-inline-lang-select {
  -webkit-appearance: none;
  appearance: none;
  position: absolute;
  top: -22px;
  right: -2px;
  background: #161b22;
  color: #8b949e;
  border: 1px solid #30363d;
  border-radius: 3px;
  font-size: 10px;
  padding: 1px 16px 1px 5px;
  cursor: pointer;
  outline: none;
  opacity: 0;
  pointer-events: none;
  z-index: 10;
  transition: opacity 0.15s;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%238b949e'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 4px center;
  background-size: 6px;
}
.ep-inline-code-wrap:hover .ep-inline-lang-select,
.ep-inline-lang-select:focus {
  opacity: 1;
  pointer-events: auto;
}

/* ── Tables ──────────────────────────────────────────────────────────────── */
table.ep-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5em 0;
  font-size: 0.95em;
}
table.ep-table th,
table.ep-table td {
  padding: 10px 14px;
  border: 1px solid rgba(110, 118, 129, 0.3);
  text-align: left;
  vertical-align: top;
}
table.ep-table th {
  background: rgba(110, 118, 129, 0.08);
  font-weight: 600;
}
table.ep-table tr:nth-child(even) td {
  background: rgba(110, 118, 129, 0.04);
}

/* ── Code block separator ────────────────────────────────────────────────── */
.ep-code-sep { display: block; width: 100%; margin: 6px 0; }
.ep-code-sep-line { border-top: 1px solid currentColor; opacity: 0.35; }
.ep-code-sep-dots {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 14px;
  letter-spacing: 5px;
  opacity: 0.65;
}

/* ── Dark mode overrides ─────────────────────────────────────────────────── */
[data-theme="dark"] table.ep-table th { background: rgba(255,255,255,0.06); }
[data-theme="dark"] table.ep-table th,
[data-theme="dark"] table.ep-table td { border-color: rgba(255,255,255,0.12); }
[data-theme="dark"] table.ep-table tr:nth-child(even) td { background: rgba(255,255,255,0.03); }

/* ═══════════════════════════════════════════════════════════════════════════
   Per-theme toolbar CSS variables — light and dark modes (v1.99+)
   Selector :not([data-code-mode="dark"]) covers both explicit light and the
   server-default (data-code-mode="light") so the toolbar looks right before JS.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── GitHub ──────────────────────────────────────────────────────────────── */
[data-code-theme="github"]:not([data-code-mode="dark"]) {
  --cb-bg:#ffffff; --cb-border:#d0d7de; --cb-toolbar-bg:#f6f8fa;
  --cb-toolbar-border:#d0d7de; --cb-code-text:#24292f;
  --cb-lang-color:#57606a; --cb-select-bg:#eaeef2;
  --cb-select-text:#24292f; --cb-select-border:#d0d7de; --cb-select-focus:#0969da;
}
[data-code-theme="github"][data-code-mode="dark"] {
  --cb-bg:#0d1117; --cb-border:#30363d; --cb-toolbar-bg:#161b22;
  --cb-toolbar-border:#30363d; --cb-code-text:#e6edf3;
  --cb-lang-color:#8b949e; --cb-select-bg:#21262d;
  --cb-select-text:#c9d1d9; --cb-select-border:#30363d; --cb-select-focus:#58a6ff;
}

/* ── Atom One ────────────────────────────────────────────────────────────── */
[data-code-theme="atom-one"]:not([data-code-mode="dark"]) {
  --cb-bg:#fafafa; --cb-border:#d3d3d3; --cb-toolbar-bg:#f0f0f0;
  --cb-toolbar-border:#d3d3d3; --cb-code-text:#383a42;
  --cb-lang-color:#717277; --cb-select-bg:#e8e8e8;
  --cb-select-text:#383a42; --cb-select-border:#d3d3d3; --cb-select-focus:#528bff;
}
[data-code-theme="atom-one"][data-code-mode="dark"] {
  --cb-bg:#282c34; --cb-border:#3e4451; --cb-toolbar-bg:#21252b;
  --cb-toolbar-border:#3e4451; --cb-code-text:#abb2bf;
  --cb-lang-color:#6b717d; --cb-select-bg:#2c313a;
  --cb-select-text:#abb2bf; --cb-select-border:#3e4451; --cb-select-focus:#61afef;
}

/* ── Monokai ─────────────────────────────────────────────────────────────── */
[data-code-theme="monokai"]:not([data-code-mode="dark"]) {
  --cb-bg:#fafaf6; --cb-border:#d0d0c8; --cb-toolbar-bg:#ebebeb;
  --cb-toolbar-border:#d0d0c8; --cb-code-text:#383830;
  --cb-lang-color:#75715e; --cb-select-bg:#e0e0d8;
  --cb-select-text:#383830; --cb-select-border:#d0d0c8; --cb-select-focus:#c71a85;
}
[data-code-theme="monokai"][data-code-mode="dark"] {
  --cb-bg:#272822; --cb-border:#3d3d30; --cb-toolbar-bg:#1e1e1b;
  --cb-toolbar-border:#3d3d30; --cb-code-text:#f8f8f2;
  --cb-lang-color:#75715e; --cb-select-bg:#1e1e1b;
  --cb-select-text:#f8f8f2; --cb-select-border:#3d3d30; --cb-select-focus:#a6e22e;
}

/* ── Visual Studio ───────────────────────────────────────────────────────── */
[data-code-theme="vs"]:not([data-code-mode="dark"]) {
  --cb-bg:#ffffff; --cb-border:#e0e0e0; --cb-toolbar-bg:#f3f3f3;
  --cb-toolbar-border:#e0e0e0; --cb-code-text:#000000;
  --cb-lang-color:#666666; --cb-select-bg:#e8e8e8;
  --cb-select-text:#000000; --cb-select-border:#e0e0e0; --cb-select-focus:#0078d4;
}
[data-code-theme="vs"][data-code-mode="dark"] {
  --cb-bg:#1e1e1e; --cb-border:#3c3c3c; --cb-toolbar-bg:#252526;
  --cb-toolbar-border:#3c3c3c; --cb-code-text:#d4d4d4;
  --cb-lang-color:#808080; --cb-select-bg:#2d2d2d;
  --cb-select-text:#d4d4d4; --cb-select-border:#3c3c3c; --cb-select-focus:#569cd6;
}

/* ── Nord ────────────────────────────────────────────────────────────────── */
[data-code-theme="nord"]:not([data-code-mode="dark"]) {
  --cb-bg:#eceff4; --cb-border:#d8dee9; --cb-toolbar-bg:#e5e9f0;
  --cb-toolbar-border:#d8dee9; --cb-code-text:#2e3440;
  --cb-lang-color:#616e88; --cb-select-bg:#d8dee9;
  --cb-select-text:#2e3440; --cb-select-border:#d8dee9; --cb-select-focus:#5279a3;
}
[data-code-theme="nord"][data-code-mode="dark"] {
  --cb-bg:#2e3440; --cb-border:#4c566a; --cb-toolbar-bg:#3b4252;
  --cb-toolbar-border:#4c566a; --cb-code-text:#d8dee9;
  --cb-lang-color:#7b88a1; --cb-select-bg:#3b4252;
  --cb-select-text:#d8dee9; --cb-select-border:#4c566a; --cb-select-focus:#88c0d0;
}

/* ── Agate ───────────────────────────────────────────────────────────────── */
[data-code-theme="agate"]:not([data-code-mode="dark"]) {
  --cb-bg:#f5f5f5; --cb-border:#cccccc; --cb-toolbar-bg:#e8e8e8;
  --cb-toolbar-border:#cccccc; --cb-code-text:#333333;
  --cb-lang-color:#888888; --cb-select-bg:#e0e0e0;
  --cb-select-text:#333333; --cb-select-border:#cccccc; --cb-select-focus:#23558c;
}
[data-code-theme="agate"][data-code-mode="dark"] {
  --cb-bg:#333333; --cb-border:#444444; --cb-toolbar-bg:#2a2a2a;
  --cb-toolbar-border:#444444; --cb-code-text:#aaaaaa;
  --cb-lang-color:#777777; --cb-select-bg:#2a2a2a;
  --cb-select-text:#aaaaaa; --cb-select-border:#444444; --cb-select-focus:#aaaaaa;
}

/* ── Xcode ───────────────────────────────────────────────────────────────── */
[data-code-theme="xcode"]:not([data-code-mode="dark"]) {
  --cb-bg:#ffffff; --cb-border:#dedede; --cb-toolbar-bg:#f5f5f5;
  --cb-toolbar-border:#dedede; --cb-code-text:#000000;
  --cb-lang-color:#666666; --cb-select-bg:#ebebeb;
  --cb-select-text:#000000; --cb-select-border:#dedede; --cb-select-focus:#0070c9;
}
[data-code-theme="xcode"][data-code-mode="dark"] {
  --cb-bg:#1d1f20; --cb-border:#3c3e40; --cb-toolbar-bg:#2a2c2e;
  --cb-toolbar-border:#3c3e40; --cb-code-text:#dfdfe0;
  --cb-lang-color:#6c7986; --cb-select-bg:#2a2c2e;
  --cb-select-text:#dfdfe0; --cb-select-border:#3c3e40; --cb-select-focus:#67b7a4;
}

/* ── Classic ─────────────────────────────────────────────────────────────── */
[data-code-theme="classic"]:not([data-code-mode="dark"]) {
  --cb-bg:#f8f8f8; --cb-border:#d0d0d0; --cb-toolbar-bg:#ebebeb;
  --cb-toolbar-border:#d0d0d0; --cb-code-text:#333333;
  --cb-lang-color:#666666; --cb-select-bg:#e0e0e0;
  --cb-select-text:#333333; --cb-select-border:#d0d0d0; --cb-select-focus:#333333;
}
[data-code-theme="classic"][data-code-mode="dark"] {
  --cb-bg:#1e1e1e; --cb-border:#3a3a3a; --cb-toolbar-bg:#252525;
  --cb-toolbar-border:#3a3a3a; --cb-code-text:#d4d4d4;
  --cb-lang-color:#808080; --cb-select-bg:#2d2d2d;
  --cb-select-text:#d4d4d4; --cb-select-border:#3a3a3a; --cb-select-focus:#569cd6;
}

/* ── Notepad++ ───────────────────────────────────────────────────────────── */
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) {
  --cb-bg:#ffffff; --cb-border:#d0d0d0; --cb-toolbar-bg:#f0f0f0;
  --cb-toolbar-border:#d0d0d0; --cb-code-text:#000000;
  --cb-lang-color:#808080; --cb-select-bg:#e8e8e8;
  --cb-select-text:#000000; --cb-select-border:#d0d0d0; --cb-select-focus:#000080;
}
[data-code-theme="notepadpp"][data-code-mode="dark"] {
  --cb-bg:#1e1e1e; --cb-border:#3d3d3d; --cb-toolbar-bg:#2a2a2a;
  --cb-toolbar-border:#3d3d3d; --cb-code-text:#d4d4d4;
  --cb-lang-color:#7a7a7a; --cb-select-bg:#2d2d2d;
  --cb-select-text:#d4d4d4; --cb-select-border:#3d3d3d; --cb-select-focus:#c586c0;
}

/* ── Kate ────────────────────────────────────────────────────────────────── */
[data-code-theme="kate"]:not([data-code-mode="dark"]) {
  --cb-bg:#ffffff; --cb-border:#c8c8c8; --cb-toolbar-bg:#f4f4f4;
  --cb-toolbar-border:#c8c8c8; --cb-code-text:#1f1c1b;
  --cb-lang-color:#898887; --cb-select-bg:#e8e8e8;
  --cb-select-text:#1f1c1b; --cb-select-border:#c8c8c8; --cb-select-focus:#0057ae;
}
[data-code-theme="kate"][data-code-mode="dark"] {
  --cb-bg:#232629; --cb-border:#3e4249; --cb-toolbar-bg:#2d3035;
  --cb-toolbar-border:#3e4249; --cb-code-text:#cfcfc2;
  --cb-lang-color:#7a7c7d; --cb-select-bg:#2d3035;
  --cb-select-text:#cfcfc2; --cb-select-border:#3e4249; --cb-select-focus:#3daee9;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Custom hljs colour rules — themes that have no CDN for a given mode.
   .ep-fstring marks f-strings/template-literals (set by highlight_custom_improved.js).
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Monokai light ───────────────────────────────────────────────────────── */
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs                         { background:#fafaf6; color:#383830 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-comment,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-doctag                  { color:#706e62; font-style:italic }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-keyword                 { color:#c71a85; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-literal                 { color:#7c3aed }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-number                  { color:#7c3aed }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-operator                { color:#c71a85 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-string:not(.ep-fstring) { color:#a31515 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-string.ep-fstring       { color:#c96a00; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-subst                   { color:#0d6e9a; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-template-tag            { color:#c96a00; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-template-variable       { color:#0d6e9a }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-built_in                { color:#0077aa }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-title,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-title.function_,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-title.class_            { color:#3a7a00 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-type                    { color:#006688 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-meta                    { color:#7a6000 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-variable,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-symbol                  { color:#1a6ea8 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-regexp                  { color:#c71a85 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-tag                     { color:#555555 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-name                    { color:#006688; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-attr,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-attribute               { color:#a31515 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-selector-tag            { color:#3a7a00 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-selector-class          { color:#006688 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-selector-id             { color:#c71a85 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-selector-attr,
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-selector-pseudo         { color:#006688 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-section                 { color:#006688; font-weight:bold }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-bullet                  { color:#7c3aed }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-quote                   { color:#706e62; font-style:italic }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-link                    { color:#0077aa; text-decoration:underline }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-addition                { color:#3a7a00; background:#f0fff0 }
[data-code-theme="monokai"]:not([data-code-mode="dark"]) .hljs-deletion                { color:#c71a85; background:#fff0f5 }

/* ── Nord light ──────────────────────────────────────────────────────────── */
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs                         { background:#eceff4; color:#2e3440 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-comment,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-doctag                  { color:#7b8a99; font-style:italic }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-keyword                 { color:#5279a3; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-literal                 { color:#5279a3 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-number                  { color:#7b4e8e }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-operator                { color:#7b3a40 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-string:not(.ep-fstring) { color:#ad5a2a }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-string.ep-fstring       { color:#c06d20; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-subst                   { color:#3b6996; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-template-tag            { color:#c06d20; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-template-variable       { color:#3b6996 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-built_in                { color:#3b6996 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-title,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-title.function_,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-title.class_            { color:#3e7348 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-type                    { color:#3b6996 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-meta                    { color:#3e7348 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-variable,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-symbol                  { color:#3b6996 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-regexp                  { color:#7b4e8e }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-tag                     { color:#2e3440 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-name                    { color:#3b6996; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-attr,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-attribute               { color:#ad5a2a }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-selector-tag,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-selector-class,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-selector-id,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-selector-attr,
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-selector-pseudo         { color:#3b6996 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-section                 { color:#3b6996; font-weight:bold }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-bullet                  { color:#7b4e8e }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-quote                   { color:#7b8a99; font-style:italic }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-link                    { color:#3b6996; text-decoration:underline }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-addition                { color:#3e7348; background:#f0fff4 }
[data-code-theme="nord"]:not([data-code-mode="dark"]) .hljs-deletion                { color:#7b3a40; background:#fff0f0 }

/* ── Agate light ─────────────────────────────────────────────────────────── */
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs                         { background:#f5f5f5; color:#333333 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-comment,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-doctag                  { color:#888888; font-style:italic }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-keyword                 { color:#23558c; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-literal                 { color:#23558c }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-number                  { color:#6b4fb8 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-operator                { color:#23558c }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-string:not(.ep-fstring) { color:#9c2a00 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-string.ep-fstring       { color:#a84900; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-subst                   { color:#1a6da0; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-template-tag            { color:#a84900; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-template-variable       { color:#1a6da0 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-built_in                { color:#0077aa }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-title,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-title.function_,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-title.class_            { color:#1a7a42 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-type                    { color:#235577 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-meta                    { color:#8c6200 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-variable,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-symbol                  { color:#1a6da0 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-regexp                  { color:#7a22aa }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-tag                     { color:#444444 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-name                    { color:#235577; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-attr,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-attribute               { color:#9c2a00 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-selector-tag,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-selector-class,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-selector-id,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-selector-attr,
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-selector-pseudo         { color:#23558c }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-section                 { color:#23558c; font-weight:bold }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-bullet                  { color:#6b4fb8 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-quote                   { color:#888888; font-style:italic }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-link                    { color:#0077aa; text-decoration:underline }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-addition                { color:#1a7a42; background:#f0fff4 }
[data-code-theme="agate"]:not([data-code-mode="dark"]) .hljs-deletion                { color:#9c2a00; background:#fff0f0 }

/* ── Xcode dark ──────────────────────────────────────────────────────────── */
[data-code-theme="xcode"][data-code-mode="dark"] .hljs                         { background:#1d1f20; color:#dfdfe0 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-comment,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-doctag                  { color:#5f9e40; font-style:italic }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-keyword                 { color:#fc5fa3; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-literal                 { color:#fc5fa3 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-number                  { color:#d9c97c }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-operator                { color:#dfdfe0 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-string:not(.ep-fstring) { color:#fc6a5d }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-string.ep-fstring       { color:#ff8a4c; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-subst                   { color:#67b7a4; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-template-tag            { color:#ff8a4c; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-template-variable       { color:#6bdfff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-built_in                { color:#67b7a4 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-title,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-title.function_         { color:#67b7a4 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-title.class_            { color:#5dd8ff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-type                    { color:#5dd8ff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-meta                    { color:#96bf5f }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-variable,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-symbol                  { color:#6bdfff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-regexp                  { color:#e37aff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-tag                     { color:#dfdfe0 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-name                    { color:#5dd8ff; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-attr,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-attribute               { color:#fc5fa3 }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-selector-tag,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-selector-class,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-selector-id,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-selector-attr,
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-selector-pseudo         { color:#5dd8ff }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-section                 { color:#5dd8ff; font-weight:bold }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-bullet                  { color:#d9c97c }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-quote                   { color:#5f9e40; font-style:italic }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-link                    { color:#6bdfff; text-decoration:underline }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-addition                { color:#5f9e40; background:#1a2e1a }
[data-code-theme="xcode"][data-code-mode="dark"] .hljs-deletion                { color:#fc6a5d; background:#2d1a1a }

/* ── Classic dark ────────────────────────────────────────────────────────── */
[data-code-theme="classic"][data-code-mode="dark"] .hljs                         { background:#1e1e1e; color:#d4d4d4 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-comment,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-doctag                  { color:#6a9955; font-style:italic }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-keyword                 { color:#569cd6; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-literal                 { color:#569cd6 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-number                  { color:#b5cea8 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-operator                { color:#d4d4d4 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-string:not(.ep-fstring) { color:#ce9178 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-string.ep-fstring       { color:#e5bc88; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-subst                   { color:#9cdcfe; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-template-tag            { color:#e5bc88; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-template-variable       { color:#9cdcfe }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-built_in                { color:#4ec9b0 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-title,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-title.function_         { color:#dcdcaa }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-title.class_            { color:#4ec9b0 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-type                    { color:#4ec9b0 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-meta                    { color:#9cdcfe }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-variable,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-symbol                  { color:#9cdcfe }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-regexp                  { color:#d16969 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-tag                     { color:#d4d4d4 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-name                    { color:#4ec9b0; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-attr,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-attribute               { color:#9cdcfe }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-selector-tag,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-selector-class,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-selector-id,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-selector-attr,
[data-code-theme="classic"][data-code-mode="dark"] .hljs-selector-pseudo         { color:#4ec9b0 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-section                 { color:#569cd6; font-weight:bold }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-bullet                  { color:#b5cea8 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-quote                   { color:#6a9955; font-style:italic }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-link                    { color:#9cdcfe; text-decoration:underline }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-code                    { color:#ce9178 }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-addition                { color:#6a9955; background:#1a2e1a }
[data-code-theme="classic"][data-code-mode="dark"] .hljs-deletion                { color:#d16969; background:#2d1a1a }

/* ── Notepad++ light ─────────────────────────────────────────────────────── */
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs                         { background:#ffffff; color:#000000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-comment,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-doctag                  { color:#808080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-keyword                 { color:#000000; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-literal                 { color:#000080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-number                  { color:#c000c0 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-operator                { color:#8b0000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-string:not(.ep-fstring) { color:#cc0000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-string.ep-fstring       { color:#ff8c00; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-subst                   { color:#4fc3f7; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-template-tag            { color:#ff8c00; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-template-variable       { color:#4fc3f7; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-built_in                { color:#800080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-title,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-title.function_,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-title.class_            { color:#006400 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-type                    { color:#000080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-meta                    { color:#808000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-meta .hljs-string,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-meta .hljs-keyword      { color:#808000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-variable,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-symbol                  { color:#87ceeb }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-regexp                  { color:#800080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-tag                     { color:#555555 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-name                    { color:#00ced1; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-attr,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-attribute               { color:#cc0000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-selector-tag,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-selector-class,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-selector-id,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-selector-attr,
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-selector-pseudo         { color:#000080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-section                 { color:#000080; font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-bullet                  { color:#8b0000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-quote                   { color:#808080; font-style:italic }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-emphasis                { font-style:italic }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-strong                  { font-weight:bold }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-link                    { color:#0000cc; text-decoration:underline }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-code                    { color:#cc0000 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-formula                 { color:#000080 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-addition                { color:#006400; background:#f0fff0 }
[data-code-theme="notepadpp"]:not([data-code-mode="dark"]) .hljs-deletion                { color:#8b0000; background:#fff0f0 }

/* ── Notepad++ dark ──────────────────────────────────────────────────────── */
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs                         { background:#1e1e1e; color:#d4d4d4 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-comment,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-doctag                  { color:#7a7a7a }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-keyword                 { color:#c586c0; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-literal                 { color:#89b4fa }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-number                  { color:#e5a8f5 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-operator                { color:#ff9090 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-string:not(.ep-fstring) { color:#f47d7d }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-string.ep-fstring       { color:#f5a623; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-subst                   { color:#6bbfe8; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-template-tag            { color:#f5a623; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-template-variable       { color:#6bbfe8 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-built_in                { color:#c99bde }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-title,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-title.function_,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-title.class_            { color:#9bde7a }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-type                    { color:#89b4fa }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-meta                    { color:#d4c57a }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-meta .hljs-string,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-meta .hljs-keyword      { color:#d4c57a }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-variable,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-symbol                  { color:#87ceeb }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-regexp                  { color:#c99bde }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-tag                     { color:#d4d4d4 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-name                    { color:#63dedb; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-attr,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-attribute               { color:#f47d7d }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-selector-tag,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-selector-class          { color:#89b4fa }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-selector-id             { color:#f47d7d }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-selector-attr,
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-selector-pseudo         { color:#89b4fa }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-section                 { color:#89b4fa; font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-bullet                  { color:#e5a8f5 }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-quote                   { color:#7a7a7a; font-style:italic }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-emphasis                { font-style:italic }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-strong                  { font-weight:bold }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-link                    { color:#89b4fa; text-decoration:underline }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-code                    { color:#f47d7d }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-formula                 { color:#89b4fa }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-addition                { color:#9bde7a; background:#1a2e1a }
[data-code-theme="notepadpp"][data-code-mode="dark"] .hljs-deletion                { color:#f47d7d; background:#2d1a1a }

/* ── Kate light ──────────────────────────────────────────────────────────── */
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs                         { background:#ffffff; color:#1f1c1b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-comment                 { color:#898887 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-doctag                  { color:#607880 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-keyword                 { color:#1f1c1b; font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-literal                 { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-number                  { color:#b08000 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-operator                { color:#1f1c1b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-string:not(.ep-fstring) { color:#bf0303 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-string.ep-fstring       { color:#ff5500; font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-subst                   { color:#3daee9; font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-template-tag            { color:#ff5500; font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-template-variable       { color:#3daee9 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-built_in                { color:#644a9b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-title,
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-title.function_         { color:#644a9b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-title.class_            { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-type                    { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-meta                    { color:#006e28 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-meta .hljs-string,
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-meta .hljs-keyword      { color:#006e28 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-variable,
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-symbol                  { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-regexp                  { color:#924c9d }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-tag                     { color:#1f1c1b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-name                    { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-attr,
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-attribute               { color:#bf0303 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-selector-tag            { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-selector-class          { color:#644a9b }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-selector-id             { color:#bf0303 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-selector-attr,
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-selector-pseudo         { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-section                 { color:#0057ae; font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-bullet                  { color:#b08000 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-quote                   { color:#898887; font-style:italic }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-emphasis                { font-style:italic }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-strong                  { font-weight:bold }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-link                    { color:#0057ae; text-decoration:underline }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-code                    { color:#bf0303 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-formula                 { color:#0057ae }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-addition                { color:#006e28; background:#f0fff4 }
[data-code-theme="kate"]:not([data-code-mode="dark"]) .hljs-deletion                { color:#bf0303; background:#fff0f0 }

/* ── Kate dark ───────────────────────────────────────────────────────────── */
[data-code-theme="kate"][data-code-mode="dark"] .hljs                         { background:#232629; color:#cfcfc2 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-comment                 { color:#7a7c7d }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-doctag                  { color:#607880 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-keyword                 { color:#cfcfc2; font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-literal                 { color:#2980b9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-number                  { color:#f67400 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-operator                { color:#cfcfc2 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-string:not(.ep-fstring) { color:#f44f4f }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-string.ep-fstring       { color:#ff6a1a; font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-subst                   { color:#3daee9; font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-template-tag            { color:#ff6a1a; font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-template-variable       { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-built_in                { color:#b06ece }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-title,
[data-code-theme="kate"][data-code-mode="dark"] .hljs-title.function_         { color:#b06ece }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-title.class_            { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-type                    { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-meta                    { color:#3dcc7e }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-meta .hljs-string,
[data-code-theme="kate"][data-code-mode="dark"] .hljs-meta .hljs-keyword      { color:#3dcc7e }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-variable,
[data-code-theme="kate"][data-code-mode="dark"] .hljs-symbol                  { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-regexp                  { color:#b87dcf }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-tag                     { color:#cfcfc2 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-name                    { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-attr,
[data-code-theme="kate"][data-code-mode="dark"] .hljs-attribute               { color:#f44f4f }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-selector-tag            { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-selector-class          { color:#b06ece }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-selector-id             { color:#f44f4f }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-selector-attr,
[data-code-theme="kate"][data-code-mode="dark"] .hljs-selector-pseudo         { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-section                 { color:#3daee9; font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-bullet                  { color:#f67400 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-quote                   { color:#7a7c7d; font-style:italic }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-emphasis                { font-style:italic }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-strong                  { font-weight:bold }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-link                    { color:#3daee9; text-decoration:underline }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-code                    { color:#f44f4f }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-formula                 { color:#3daee9 }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-addition                { color:#3dcc7e; background:#1a3a1a }
[data-code-theme="kate"][data-code-mode="dark"] .hljs-deletion                { color:#f44f4f; background:#2d1a1a }
