/* ============================================================
   SYNTAX HIGHLIGHTING — Chroma classes, theme aware
   light: github        dark: github-dark
   Regenerate with:
     hugo gen chromastyles --style=github
     hugo gen chromastyles --style=github-dark
   ============================================================ */

/* The frame (terminal.css) owns the surface; Chroma must stay transparent */
.chroma,
.chroma .bg {
    background-color: transparent !important;
}

/* ---------- LIGHT ---------- */
.chroma .err { color:#a61717;background-color:#e3d2d2 }
.chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
.chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
.chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
.chroma .hl { background-color:#e5e5e5 }
.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 }
.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 }
.chroma .line { display:flex; }
.chroma .k { color:#000;font-weight:bold }
.chroma .kc { color:#000;font-weight:bold }
.chroma .kd { color:#000;font-weight:bold }
.chroma .kn { color:#000;font-weight:bold }
.chroma .kp { color:#000;font-weight:bold }
.chroma .kr { color:#000;font-weight:bold }
.chroma .kt { color:#458;font-weight:bold }
.chroma .na { color:#008080 }
.chroma .nb { color:#0086b3 }
.chroma .bp { color:#999 }
.chroma .nc { color:#458;font-weight:bold }
.chroma .no { color:#008080 }
.chroma .nd { color:#3c5d5d;font-weight:bold }
.chroma .ni { color:#800080 }
.chroma .ne { color:#900;font-weight:bold }
.chroma .nf { color:#900;font-weight:bold }
.chroma .nl { color:#900;font-weight:bold }
.chroma .nn { color:#555 }
.chroma .nt { color:#000080 }
.chroma .nv { color:#008080 }
.chroma .vc { color:#008080 }
.chroma .vg { color:#008080 }
.chroma .vi { color:#008080 }
.chroma .s { color:#d14 }
.chroma .sa { color:#d14 }
.chroma .sb { color:#d14 }
.chroma .sc { color:#d14 }
.chroma .dl { color:#d14 }
.chroma .sd { color:#d14 }
.chroma .s2 { color:#d14 }
.chroma .se { color:#d14 }
.chroma .sh { color:#d14 }
.chroma .si { color:#d14 }
.chroma .sx { color:#d14 }
.chroma .sr { color:#009926 }
.chroma .s1 { color:#d14 }
.chroma .ss { color:#990073 }
.chroma .m { color:#099 }
.chroma .mb { color:#099 }
.chroma .mf { color:#099 }
.chroma .mh { color:#099 }
.chroma .mi { color:#099 }
.chroma .il { color:#099 }
.chroma .mo { color:#099 }
.chroma .o { color:#000;font-weight:bold }
.chroma .ow { color:#000;font-weight:bold }
.chroma .c { color:#998;font-style:italic }
.chroma .ch { color:#998;font-style:italic }
.chroma .cm { color:#998;font-style:italic }
.chroma .c1 { color:#998;font-style:italic }
.chroma .cs { color:#999;font-weight:bold;font-style:italic }
.chroma .cp { color:#999;font-weight:bold;font-style:italic }
.chroma .cpf { color:#999;font-weight:bold;font-style:italic }
.chroma .gd { color:#000;background-color:#fdd }
.chroma .ge { color:#000;font-style:italic }
.chroma .gr { color:#a00 }
.chroma .gh { color:#999 }
.chroma .gi { color:#000;background-color:#dfd }
.chroma .go { color:#888 }
.chroma .gp { color:#555 }
.chroma .gs { font-weight:bold }
.chroma .gu { color:#aaa }
.chroma .gt { color:#a00 }
.chroma .gl { text-decoration:underline }
.chroma .w { color:#bbb }

/* ---------- DARK ---------- */
.dark .chroma { color:#e6edf3; }
.dark .chroma .err { color:#f85149 }
.dark .chroma .lnlinks { outline:none;text-decoration:none;color:inherit }
.dark .chroma .lntd { vertical-align:top;padding:0;margin:0;border:0; }
.dark .chroma .lntable { border-spacing:0;padding:0;margin:0;border:0; }
.dark .chroma .hl { background-color:#6e7681 }
.dark .chroma .lnt { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#737679 }
.dark .chroma .ln { white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#6e7681 }
.dark .chroma .line { display:flex; }
.dark .chroma .k { color:#ff7b72 }
.dark .chroma .kc { color:#79c0ff }
.dark .chroma .kd { color:#ff7b72 }
.dark .chroma .kn { color:#ff7b72 }
.dark .chroma .kp { color:#79c0ff }
.dark .chroma .kr { color:#ff7b72 }
.dark .chroma .kt { color:#ff7b72 }
.dark .chroma .nc { color:#f0883e;font-weight:bold }
.dark .chroma .no { color:#79c0ff;font-weight:bold }
.dark .chroma .nd { color:#d2a8ff;font-weight:bold }
.dark .chroma .ni { color:#ffa657 }
.dark .chroma .ne { color:#f0883e;font-weight:bold }
.dark .chroma .nf { color:#d2a8ff;font-weight:bold }
.dark .chroma .nl { color:#79c0ff;font-weight:bold }
.dark .chroma .nn { color:#ff7b72 }
.dark .chroma .py { color:#79c0ff }
.dark .chroma .nt { color:#7ee787 }
.dark .chroma .nv { color:#79c0ff }
.dark .chroma .l { color:#a5d6ff }
.dark .chroma .ld { color:#79c0ff }
.dark .chroma .s { color:#a5d6ff }
.dark .chroma .sa { color:#79c0ff }
.dark .chroma .sb { color:#a5d6ff }
.dark .chroma .sc { color:#a5d6ff }
.dark .chroma .dl { color:#79c0ff }
.dark .chroma .sd { color:#a5d6ff }
.dark .chroma .s2 { color:#a5d6ff }
.dark .chroma .se { color:#79c0ff }
.dark .chroma .sh { color:#79c0ff }
.dark .chroma .si { color:#a5d6ff }
.dark .chroma .sx { color:#a5d6ff }
.dark .chroma .sr { color:#79c0ff }
.dark .chroma .s1 { color:#a5d6ff }
.dark .chroma .ss { color:#a5d6ff }
.dark .chroma .m { color:#a5d6ff }
.dark .chroma .mb { color:#a5d6ff }
.dark .chroma .mf { color:#a5d6ff }
.dark .chroma .mh { color:#a5d6ff }
.dark .chroma .mi { color:#a5d6ff }
.dark .chroma .il { color:#a5d6ff }
.dark .chroma .mo { color:#a5d6ff }
.dark .chroma .o { color:#ff7b72;font-weight:bold }
.dark .chroma .ow { color:#ff7b72;font-weight:bold }
.dark .chroma .c { color:#8b949e;font-style:italic }
.dark .chroma .ch { color:#8b949e;font-style:italic }
.dark .chroma .cm { color:#8b949e;font-style:italic }
.dark .chroma .c1 { color:#8b949e;font-style:italic }
.dark .chroma .cs { color:#8b949e;font-weight:bold;font-style:italic }
.dark .chroma .cp { color:#8b949e;font-weight:bold;font-style:italic }
.dark .chroma .cpf { color:#8b949e;font-weight:bold;font-style:italic }
.dark .chroma .gd { color:#ffa198;background-color:#490202 }
.dark .chroma .ge { font-style:italic }
.dark .chroma .gr { color:#ffa198 }
.dark .chroma .gh { color:#79c0ff;font-weight:bold }
.dark .chroma .gi { color:#56d364;background-color:#0f5323 }
.dark .chroma .go { color:#8b949e }
.dark .chroma .gp { color:#8b949e }
.dark .chroma .gs { font-weight:bold }
.dark .chroma .gu { color:#79c0ff }
.dark .chroma .gt { color:#ff7b72 }
.dark .chroma .gl { text-decoration:underline }
.dark .chroma .w { color:#6e7681 }

/* ============================================================
   FRAME / TOKEN OVERRIDES
   The theme's generic `#single .page-content pre` rule must not paint a
   second background behind terminal frames, and must let Chroma token
   colors (class-based) show through on normal code blocks.
   ============================================================ */

/* Terminal code keeps the frame's own surface */
#single .page-content .term-block pre.chroma,
#single .page-content .term-body pre.chroma {
    background: transparent !important;
    color: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
    max-height: none !important;
    border-radius: 0 !important;
}
#single .page-content .term-block pre.chroma > code {
    color: inherit !important;
}

/* Normal (non-terminal) code blocks keep their themed surface but let
   syntax-token colors render instead of being forced to one color */
#single .page-content .chroma > code {
    color: inherit !important;
}
