/* Syntax highlighting — light (VS) and dark (Catppuccin Mocha)
   Wrapping Chroma's generated CSS in prefers-color-scheme media queries
   so it follows the system theme, consistent with the rest of the site. */

/* Shared layout for code blocks */
.chroma {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    font-size: 16px;
    padding: 1em;
    margin: .5em 0;
    overflow: auto;
}

/* Inline code (not inside a pre) */
:not(pre) > code {
    padding: .1em .3em;
    border-radius: .3em;
}

@media (prefers-color-scheme: light), (prefers-color-scheme: no-preference) {
/* Generated using: hugo gen chromastyles --style=vs */

/* Background */ .bg { background-color:#fff; }
/* PreWrapper */ .chroma { background-color:#fff;border:1px solid #ddd; }
/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
/* LineHighlight */ .chroma .hl { background-color:#e5e5e5 }
/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f }
/* Line */ .chroma .line { display:flex; }
/* Keyword */ .chroma .k { color:#00f }
/* KeywordConstant */ .chroma .kc { color:#00f }
/* KeywordDeclaration */ .chroma .kd { color:#00f }
/* KeywordNamespace */ .chroma .kn { color:#00f }
/* KeywordPseudo */ .chroma .kp { color:#00f }
/* KeywordReserved */ .chroma .kr { color:#00f }
/* KeywordType */ .chroma .kt { color:#2b91af }
/* NameClass */ .chroma .nc { color:#2b91af }
/* LiteralString */ .chroma .s { color:#a31515 }
/* LiteralStringAffix */ .chroma .sa { color:#a31515 }
/* LiteralStringBacktick */ .chroma .sb { color:#a31515 }
/* LiteralStringChar */ .chroma .sc { color:#a31515 }
/* LiteralStringDelimiter */ .chroma .dl { color:#a31515 }
/* LiteralStringDoc */ .chroma .sd { color:#a31515 }
/* LiteralStringDouble */ .chroma .s2 { color:#a31515 }
/* LiteralStringEscape */ .chroma .se { color:#a31515 }
/* LiteralStringHeredoc */ .chroma .sh { color:#a31515 }
/* LiteralStringInterpol */ .chroma .si { color:#a31515 }
/* LiteralStringOther */ .chroma .sx { color:#a31515 }
/* LiteralStringRegex */ .chroma .sr { color:#a31515 }
/* LiteralStringSingle */ .chroma .s1 { color:#a31515 }
/* LiteralStringSymbol */ .chroma .ss { color:#a31515 }
/* OperatorWord */ .chroma .ow { color:#00f }
/* Comment */ .chroma .c { color:#008000 }
/* CommentHashbang */ .chroma .ch { color:#008000 }
/* CommentMultiline */ .chroma .cm { color:#008000 }
/* CommentSingle */ .chroma .c1 { color:#008000 }
/* CommentSpecial */ .chroma .cs { color:#008000 }
/* CommentPreproc */ .chroma .cp { color:#00f }
/* CommentPreprocFile */ .chroma .cpf { color:#00f }
/* GenericEmph */ .chroma .ge { font-style:italic }
/* GenericHeading */ .chroma .gh { font-weight:bold }
/* GenericPrompt */ .chroma .gp { font-weight:bold }
/* GenericStrong */ .chroma .gs { font-weight:bold }
/* GenericSubheading */ .chroma .gu { font-weight:bold }

:not(pre) > code { background:#f8f8f8;border:1px solid #ddd; }
}

@media (prefers-color-scheme: dark) {
/* VS Code dark+ — colors matched from original prism-dark.css */

/* Background */ .bg { color:#d4d4d4;background-color:#1e1e1e; }
/* PreWrapper */ .chroma { color:#d4d4d4;background-color:#1e1e1e; }
/* LineLink */ .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
/* LineTableTD */ .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
/* LineTable */ .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
/* LineHighlight */ .chroma .hl { background-color:#264f78 }
/* LineNumbersTable */ .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#858585 }
/* LineNumbers */ .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#858585 }
/* Line */ .chroma .line { display:flex; }
/* Keywords — blue #569cd6 */
/* Keyword */ .chroma .k { color:#569cd6 }
/* KeywordConstant */ .chroma .kc { color:#569cd6 }
/* KeywordDeclaration */ .chroma .kd { color:#569cd6 }
/* KeywordNamespace */ .chroma .kn { color:#569cd6 }
/* KeywordPseudo */ .chroma .kp { color:#569cd6 }
/* KeywordReserved */ .chroma .kr { color:#569cd6 }
/* KeywordType */ .chroma .kt { color:#4ec9b0 }
/* Names */
/* NameAttribute */ .chroma .na { color:#9cdcfe }
/* NameBuiltin */ .chroma .nb { color:#9cdcfe }
/* NameBuiltinPseudo */ .chroma .bp { color:#9cdcfe }
/* NameClass */ .chroma .nc { color:#4ec9b0 }
/* NameConstant */ .chroma .no { color:#9cdcfe }
/* NameDecorator */ .chroma .nd { color:#dcdcaa }
/* NameEntity */ .chroma .ni { color:#9cdcfe }
/* NameException */ .chroma .ne { color:#ce9178 }
/* NameFunction */ .chroma .nf { color:#dcdcaa }
/* NameFunctionMagic */ .chroma .fm { color:#dcdcaa }
/* NameLabel */ .chroma .nl { color:#9cdcfe }
/* NameNamespace */ .chroma .nn { color:#4ec9b0 }
/* NameProperty */ .chroma .py { color:#9cdcfe }
/* NameTag */ .chroma .nt { color:#569cd6 }
/* NameVariable */ .chroma .nv { color:#9cdcfe }
/* NameVariableClass */ .chroma .vc { color:#9cdcfe }
/* NameVariableGlobal */ .chroma .vg { color:#9cdcfe }
/* NameVariableInstance */ .chroma .vi { color:#9cdcfe }
/* NameVariableMagic */ .chroma .vm { color:#9cdcfe }
/* Strings — orange #ce9178 */
/* LiteralString */ .chroma .s { color:#ce9178 }
/* LiteralStringAffix */ .chroma .sa { color:#ce9178 }
/* LiteralStringBacktick */ .chroma .sb { color:#ce9178 }
/* LiteralStringChar */ .chroma .sc { color:#ce9178 }
/* LiteralStringDelimiter */ .chroma .dl { color:#ce9178 }
/* LiteralStringDoc */ .chroma .sd { color:#ce9178 }
/* LiteralStringDouble */ .chroma .s2 { color:#ce9178 }
/* LiteralStringEscape */ .chroma .se { color:#d7ba7d }
/* LiteralStringHeredoc */ .chroma .sh { color:#ce9178 }
/* LiteralStringInterpol */ .chroma .si { color:#ce9178 }
/* LiteralStringOther */ .chroma .sx { color:#ce9178 }
/* LiteralStringRegex */ .chroma .sr { color:#d16969 }
/* LiteralStringSingle */ .chroma .s1 { color:#ce9178 }
/* LiteralStringSymbol */ .chroma .ss { color:#ce9178 }
/* Numbers — light green #b5cea8 */
/* LiteralNumber */ .chroma .m { color:#b5cea8 }
/* LiteralNumberBin */ .chroma .mb { color:#b5cea8 }
/* LiteralNumberFloat */ .chroma .mf { color:#b5cea8 }
/* LiteralNumberHex */ .chroma .mh { color:#b5cea8 }
/* LiteralNumberInteger */ .chroma .mi { color:#b5cea8 }
/* LiteralNumberIntegerLong */ .chroma .il { color:#b5cea8 }
/* LiteralNumberOct */ .chroma .mo { color:#b5cea8 }
/* Operators */
/* Operator */ .chroma .o { color:#d4d4d4 }
/* OperatorWord */ .chroma .ow { color:#569cd6 }
/* Comments — green #6a9955 */
/* Comment */ .chroma .c { color:#6a9955;font-style:italic }
/* CommentHashbang */ .chroma .ch { color:#6a9955;font-style:italic }
/* CommentMultiline */ .chroma .cm { color:#6a9955;font-style:italic }
/* CommentSingle */ .chroma .c1 { color:#6a9955;font-style:italic }
/* CommentSpecial */ .chroma .cs { color:#6a9955;font-style:italic }
/* CommentPreproc */ .chroma .cp { color:#6a9955;font-style:italic }
/* CommentPreprocFile */ .chroma .cpf { color:#6a9955;font-style:italic }
/* Generics */
/* GenericDeleted */ .chroma .gd { color:#f44747 }
/* GenericEmph */ .chroma .ge { font-style:italic }
/* GenericError */ .chroma .gr { color:#f44747 }
/* GenericHeading */ .chroma .gh { color:#569cd6;font-weight:bold }
/* GenericInserted */ .chroma .gi { color:#b5cea8 }
/* GenericStrong */ .chroma .gs { font-weight:bold }
/* GenericSubheading */ .chroma .gu { color:#569cd6 }
/* GenericTraceback */ .chroma .gt { color:#f44747 }
/* GenericUnderline */ .chroma .gl { text-decoration:underline }

:not(pre) > code { color:#db4c69;background:#1e1e1e; }
}
