/* Catppuccin Mocha Syntax Highlighting for Code Blocks */

/* Base styles for code blocks */
.chroma {
  background-color: var(--ctp-mantle);
  color: var(--ctp-text);
}

/* Line numbers */
.chroma .ln,
.chroma .lnt {
  color: var(--ctp-overlay0);
  margin-right: 0.75rem;
  padding: 0 0.5rem;
}

/* Keywords */
.chroma .k,
.chroma .kc,
.chroma .kd,
.chroma .kn,
.chroma .kp,
.chroma .kr,
.chroma .kt {
  color: var(--ctp-mauve);
}

/* Strings */
.chroma .s,
.chroma .sa,
.chroma .sb,
.chroma .sc,
.chroma .dl,
.chroma .sd,
.chroma .s2,
.chroma .se,
.chroma .sh,
.chroma .si,
.chroma .sx,
.chroma .sr,
.chroma .s1,
.chroma .ss {
  color: var(--ctp-green);
}

/* Comments */
.chroma .c,
.chroma .ch,
.chroma .cm,
.chroma .c1,
.chroma .cs {
  color: var(--ctp-overlay0);
  font-style: italic;
}

/* Numbers */
.chroma .m,
.chroma .mb,
.chroma .mf,
.chroma .mh,
.chroma .mi,
.chroma .il,
.chroma .mo {
  color: var(--ctp-peach);
}

/* Functions */
.chroma .n,
.chroma .na,
.chroma .nb,
.chroma .bp,
.chroma .nc,
.chroma .no,
.chroma .nd,
.chroma .ni,
.chroma .ne,
.chroma .nf,
.chroma .fm,
.chroma .nl,
.chroma .nn,
.chroma .nx,
.chroma .py,
.chroma .nt,
.chroma .nv,
.chroma .vc,
.chroma .vg,
.chroma .vi,
.chroma .vm {
  color: var(--ctp-blue);
}

/* Operators */
.chroma .o,
.chroma .ow {
  color: var(--ctp-sky);
}

/* Punctuation */
.chroma .p {
  color: var(--ctp-overlay2);
}

/* Variables and identifiers */
.chroma .nv,
.chroma .vc,
.chroma .vg,
.chroma .vi {
  color: var(--ctp-text);
}

/* Class names */
.chroma .nc {
  color: var(--ctp-yellow);
}

/* Function names */
.chroma .nf,
.chroma .fm {
  color: var(--ctp-blue);
}

/* Decorators */
.chroma .nd {
  color: var(--ctp-pink);
}

/* Built-ins */
.chroma .nb,
.chroma .bp {
  color: var(--ctp-red);
}

/* Constants */
.chroma .kc {
  color: var(--ctp-peach);
}

/* Booleans */
.chroma .kc {
  color: var(--ctp-mauve);
}

/* Errors */
.chroma .err {
  color: var(--ctp-red);
  background-color: var(--ctp-surface0);
}

/* Generic highlighting */
.chroma .ge {
  font-style: italic;
}

.chroma .gs {
  font-weight: bold;
}

/* Diff added */
.chroma .gi {
  color: var(--ctp-green);
  background-color: rgba(166, 227, 161, 0.1);
}

/* Diff deleted */
.chroma .gd {
  color: var(--ctp-red);
  background-color: rgba(243, 139, 168, 0.1);
}

/* Selected line highlight */
.chroma .hl {
  background-color: var(--ctp-surface0);
  display: block;
  width: 100%;
}

