/* ─── SYNTAX HIGHLIGHT (Catppuccin Mocha) ────────────────────────────────── */
/* hugo gen chromastyles --style=catppuccin-mocha + bg override              */

.bg     { color:#cdd6f4; background-color:#11111b; }
.chroma { color:#cdd6f4; background-color:#11111b; -webkit-text-size-adjust:none;
          font-family:"JetBrains Mono","Fira Code",monospace; font-size:0.875rem; line-height:1.6; }

.chroma .err  { color:#f38ba8 }
.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:#313244; display:block; width:100%; }
.chroma .lnt     { white-space:pre; user-select:none; margin-right:.4em; padding:0 .8em 0 .4em; color:#45475a; }
.chroma .ln      { white-space:pre; user-select:none; margin-right:.4em; padding:0 .8em 0 .4em; color:#45475a; }
.chroma .line    { display:flex; }

/* Keywords */
.chroma .k   { color:#cba6f7 }
.chroma .kc  { color:#fab387 }
.chroma .kd  { color:#f38ba8 }
.chroma .kn  { color:#94e2d5 }
.chroma .kp  { color:#cba6f7 }
.chroma .kr  { color:#cba6f7 }
.chroma .kt  { color:#f38ba8 }

/* Names */
.chroma .na  { color:#89b4fa }
.chroma .nc  { color:#f9e2af }
.chroma .no  { color:#f9e2af }
.chroma .nd  { color:#89b4fa; font-weight:bold }
.chroma .ni  { color:#94e2d5 }
.chroma .ne  { color:#fab387 }
.chroma .nl  { color:#89dceb }
.chroma .nn  { color:#fab387 }
.chroma .py  { color:#fab387 }
.chroma .nt  { color:#cba6f7 }
.chroma .nb  { color:#89dceb }
.chroma .bp  { color:#89dceb }
.chroma .nv  { color:#f5e0dc }
.chroma .vc  { color:#f5e0dc }
.chroma .vg  { color:#f5e0dc }
.chroma .vi  { color:#f5e0dc }
.chroma .vm  { color:#f5e0dc }
.chroma .nf  { color:#89b4fa }
.chroma .fm  { color:#89b4fa }

/* Strings */
.chroma .s   { color:#a6e3a1 }
.chroma .sa  { color:#f38ba8 }
.chroma .sb  { color:#a6e3a1 }
.chroma .sc  { color:#a6e3a1 }
.chroma .dl  { color:#89b4fa }
.chroma .sd  { color:#6c7086; font-style:italic }
.chroma .s2  { color:#a6e3a1 }
.chroma .se  { color:#89b4fa }
.chroma .sh  { color:#6c7086; font-style:italic }
.chroma .si  { color:#a6e3a1 }
.chroma .sx  { color:#a6e3a1 }
.chroma .sr  { color:#94e2d5 }
.chroma .s1  { color:#a6e3a1 }
.chroma .ss  { color:#a6e3a1 }

/* Numbers */
.chroma .m   { color:#fab387 }
.chroma .mb  { color:#fab387 }
.chroma .mf  { color:#fab387 }
.chroma .mh  { color:#fab387 }
.chroma .mi  { color:#fab387 }
.chroma .il  { color:#fab387 }
.chroma .mo  { color:#fab387 }

/* Operators */
.chroma .o   { color:#89dceb; font-weight:bold }
.chroma .ow  { color:#89dceb; font-weight:bold }

/* Comments */
.chroma .c   { color:#6c7086; font-style:italic }
.chroma .ch  { color:#585b70; font-style:italic }
.chroma .cm  { color:#6c7086; font-style:italic }
.chroma .c1  { color:#6c7086; font-style:italic }
.chroma .cs  { color:#6c7086; font-style:italic }
.chroma .cp  { color:#6c7086; font-style:italic }
.chroma .cpf { color:#6c7086; font-weight:bold; font-style:italic }

/* Generic */
.chroma .gd  { color:#f38ba8; background-color:#313244 }
.chroma .ge  { font-style:italic }
.chroma .gr  { color:#f38ba8 }
.chroma .gh  { color:#fab387; font-weight:bold }
.chroma .gi  { color:#a6e3a1; background-color:#313244 }
.chroma .gs  { font-weight:bold }
.chroma .gu  { color:#fab387; font-weight:bold }
.chroma .gt  { color:#f38ba8 }
.chroma .gl  { text-decoration:underline }
