/* Syntax Highlighting - Catppuccin Mocha Theme */

/* Code blocks */
.codehilite { background: var(--ctp-mantle); }
.codehilite .hll { background-color: var(--ctp-surface); }
.codehilite .c { color: var(--ctp-overlay); font-style: italic } /* Comment */
.codehilite .err { color: var(--ctp-red); } /* Error */
.codehilite .k { color: var(--ctp-mauve); font-weight: bold } /* Keyword */
.codehilite .o { color: var(--ctp-sky); } /* Operator */
.codehilite .ch { color: var(--ctp-overlay); font-style: italic } /* Comment.Hashbang */
.codehilite .cm { color: var(--ctp-overlay); font-style: italic } /* Comment.Multiline */
.codehilite .cp { color: var(--ctp-pink); } /* Comment.Preproc */
.codehilite .cpf { color: var(--ctp-overlay); font-style: italic } /* Comment.PreprocFile */
.codehilite .c1 { color: var(--ctp-overlay); font-style: italic } /* Comment.Single */
.codehilite .cs { color: var(--ctp-overlay); font-style: italic } /* Comment.Special */
.codehilite .gd { color: var(--ctp-red); } /* Generic.Deleted */
.codehilite .ge { font-style: italic } /* Generic.Emph */
.codehilite .gr { color: var(--ctp-red); } /* Generic.Error */
.codehilite .gh { color: var(--ctp-lavender); font-weight: bold } /* Generic.Heading */
.codehilite .gi { color: var(--ctp-green); } /* Generic.Inserted */
.codehilite .go { color: var(--ctp-subtext); } /* Generic.Output */
.codehilite .gp { color: var(--ctp-subtext); font-weight: bold } /* Generic.Prompt */
.codehilite .gs { font-weight: bold } /* Generic.Strong */
.codehilite .gu { color: var(--ctp-lavender); font-weight: bold } /* Generic.Subheading */
.codehilite .gt { color: var(--ctp-red); } /* Generic.Traceback */
.codehilite .kc { color: var(--ctp-mauve); font-weight: bold } /* Keyword.Constant */
.codehilite .kd { color: var(--ctp-mauve); font-weight: bold } /* Keyword.Declaration */
.codehilite .kn { color: var(--ctp-pink); font-weight: bold } /* Keyword.Namespace */
.codehilite .kp { color: var(--ctp-mauve); } /* Keyword.Pseudo */
.codehilite .kr { color: var(--ctp-mauve); font-weight: bold } /* Keyword.Reserved */
.codehilite .kt { color: var(--ctp-yellow); } /* Keyword.Type */
.codehilite .ld { color: var(--ctp-green); } /* Literal.Date */
.codehilite .m { color: var(--ctp-peach); } /* Literal.Number */
.codehilite .s { color: var(--ctp-green); } /* Literal.String */
.codehilite .na { color: var(--ctp-blue); } /* Name.Attribute */
.codehilite .nb { color: var(--ctp-blue); } /* Name.Builtin */
.codehilite .nc { color: var(--ctp-yellow); font-weight: bold } /* Name.Class */
.codehilite .no { color: var(--ctp-peach); } /* Name.Constant */
.codehilite .nd { color: var(--ctp-pink); } /* Name.Decorator */
.codehilite .ni { color: var(--ctp-text); } /* Name.Entity */
.codehilite .ne { color: var(--ctp-red); font-weight: bold } /* Name.Exception */
.codehilite .nf { color: var(--ctp-blue); font-weight: bold } /* Name.Function */
.codehilite .nl { color: var(--ctp-text); } /* Name.Label */
.codehilite .nn { color: var(--ctp-yellow); } /* Name.Namespace */
.codehilite .nx { color: var(--ctp-blue); } /* Name.Other */
.codehilite .py { color: var(--ctp-text); } /* Name.Property */
.codehilite .nt { color: var(--ctp-pink); font-weight: bold } /* Name.Tag */
.codehilite .nv { color: var(--ctp-text); } /* Name.Variable */
.codehilite .ow { color: var(--ctp-sky); font-weight: bold } /* Operator.Word */
.codehilite .w { color: var(--ctp-text); } /* Text.Whitespace */
.codehilite .mb { color: var(--ctp-peach); } /* Literal.Number.Bin */
.codehilite .mf { color: var(--ctp-peach); } /* Literal.Number.Float */
.codehilite .mh { color: var(--ctp-peach); } /* Literal.Number.Hex */
.codehilite .mi { color: var(--ctp-peach); } /* Literal.Number.Integer */
.codehilite .mo { color: var(--ctp-peach); } /* Literal.Number.Oct */
.codehilite .sa { color: var(--ctp-green); } /* Literal.String.Affix */
.codehilite .sb { color: var(--ctp-green); } /* Literal.String.Backtick */
.codehilite .sc { color: var(--ctp-green); } /* Literal.String.Char */
.codehilite .dl { color: var(--ctp-green); } /* Literal.String.Delimiter */
.codehilite .sd { color: var(--ctp-green); font-style: italic } /* Literal.String.Doc */
.codehilite .s2 { color: var(--ctp-green); } /* Literal.String.Double */
.codehilite .se { color: var(--ctp-pink); } /* Literal.String.Escape */
.codehilite .sh { color: var(--ctp-green); } /* Literal.String.Heredoc */
.codehilite .si { color: var(--ctp-pink); } /* Literal.String.Interpol */
.codehilite .sx { color: var(--ctp-green); } /* Literal.String.Other */
.codehilite .sr { color: var(--ctp-pink); } /* Literal.String.Regex */
.codehilite .s1 { color: var(--ctp-green); } /* Literal.String.Single */
.codehilite .ss { color: var(--ctp-green); } /* Literal.String.Symbol */
.codehilite .bp { color: var(--ctp-blue); } /* Name.Builtin.Pseudo */
.codehilite .fm { color: var(--ctp-blue); font-weight: bold } /* Name.Function.Magic */
.codehilite .vc { color: var(--ctp-text); } /* Name.Variable.Class */
.codehilite .vg { color: var(--ctp-text); } /* Name.Variable.Global */
.codehilite .vi { color: var(--ctp-text); } /* Name.Variable.Instance */
.codehilite .vm { color: var(--ctp-text); } /* Name.Variable.Magic */
.codehilite .il { color: var(--ctp-peach); } /* Literal.Number.Integer.Long */

/* Additional colors needed */
:root {
    --ctp-red: #f38ba8;
    --ctp-maroon: #eba0ac;
    --ctp-pink: #f5c2e7;
    --ctp-mauve: #cba6f7;
    --ctp-sky: #89dceb;
    --ctp-teal: #94e2d5;
    --ctp-yellow: #f9e2af;
}
