/* ===== Prism – Tema dual (GitHub Light / Dracula) ===== */
/* Paleta por variables para facilitar overrides */
:root {
  --code-bg: #f6f8fa;
  --code-fg: #24292e;

  /* GitHub Light tokens */
  --tok-comment: #6a737d;
  --tok-punc: #24292e;
  --tok-deleted: #d73a49;
  --tok-keyword: #d73a49;
  --tok-number: #005cc5;
  --tok-func: #6f42c1;
  --tok-class: #6f42c1;
  --tok-string: #22863a;
  --tok-attr: #005cc5;
  --tok-inserted: #22863a;
  --tok-regex: #e36209;
}

@media (prefers-color-scheme: dark) {
  :root {
    /* Dracula base */
    --code-bg: #282a36;
    --code-fg: #f8f8f2;

    /* Dracula tokens */
    --tok-comment: #6272a4;
    --tok-punc: #f8f8f2;
    --tok-deleted: #ff5555;
    --tok-keyword: #ff79c6;
    --tok-number: #bd93f9;
    --tok-func: #50fa7b;
    --tok-class: #8be9fd;
    --tok-string: #f1fa8c;
    --tok-attr: #8be9fd;
    --tok-inserted: #50fa7b;
    --tok-regex: #ffb86c;
  }
}

/* Overrides manuales (opcionales): forzar tema sin depender de prefers-color-scheme */
:root[data-code-theme="light"] {
  --code-bg: #f6f8fa; --code-fg: #24292e;
  --tok-comment: #6a737d; --tok-punc: #24292e; --tok-deleted: #d73a49; --tok-keyword: #d73a49;
  --tok-number: #005cc5; --tok-func: #6f42c1; --tok-class: #6f42c1; --tok-string: #22863a;
  --tok-attr: #005cc5; --tok-inserted: #22863a; --tok-regex: #e36209;
}
:root[data-code-theme="dark"] {
  --code-bg: #282a36; --code-fg: #f8f8f2;
  --tok-comment: #6272a4; --tok-punc: #f8f8f2; --tok-deleted: #ff5555; --tok-keyword: #ff79c6;
  --tok-number: #bd93f9; --tok-func: #50fa7b; --tok-class: #8be9fd; --tok-string: #f1fa8c;
  --tok-attr: #8be9fd; --tok-inserted: #50fa7b; --tok-regex: #ffb86c;
}

/* Bloques base */
pre[class*="language-"],
code[class*="language-"] {
  color: var(--code-fg);
  background: var(--code-bg);
  text-shadow: none;
}
pre[class*="language-"] {
  padding: 1rem;
  margin: .5rem 0 1rem;
  overflow: auto;
  border-radius: 0.75rem;
  border: 1px solid rgba(0,0,0,.06);
}
:not(pre) > code[class*="language-"] {
  padding: .15rem .35rem;
  border-radius: .375rem;
  border: 1px solid rgba(0,0,0,.06);
}

/* Tokens comunes */
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata { color: var(--tok-comment); }

.token.punctuation { color: var(--tok-punc); }

.token.property,
.token.tag,
.token.constant,
.token.symbol,
.token.deleted { color: var(--tok-deleted); }

.token.boolean,
.token.number { color: var(--tok-number); }

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted { color: var(--tok-string); }

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string,
.token.variable { color: var(--tok-attr); }

.token.atrule,
.token.attr-value,
.token.function,
.token.class-name { color: var(--tok-func); }

.token.keyword { color: var(--tok-keyword); }

.token.regex,
.token.important { color: var(--tok-regex); }

.token.bold { font-weight: 700; }
.token.italic { font-style: italic; }
