/* BEGIN generated stilyagi-pygments (scripts/generate_stilyagi_pygments_css.py) */

:root {
  --stilyagi-syntax-text: #efe4ce;
  --stilyagi-syntax-comment: #827b6a;
  --stilyagi-syntax-comment-preproc: #d69f2e;
  --stilyagi-syntax-keyword: #29b4c4;
  --stilyagi-syntax-operator: #efe4ce;
  --stilyagi-syntax-punctuation: #efe4ce;
  --stilyagi-syntax-name: #efe4ce;
  --stilyagi-syntax-name-class: #e22d85;
  --stilyagi-syntax-name-function: #e22d85;
  --stilyagi-syntax-name-decorator: #d69f2e;
  --stilyagi-syntax-name-builtin: #787f4e;
  --stilyagi-syntax-name-builtin-pseudo: #787f4e;
  --stilyagi-syntax-literal-string: #d69f2e;
  --stilyagi-syntax-literal-string-doc: #827b6a;
  --stilyagi-syntax-literal-string-escape: #da474e;
  --stilyagi-syntax-literal-number: #d69f2e;
  --stilyagi-syntax-generic-prompt: #787f4e;
  --stilyagi-syntax-generic-output: #efe4ce;
  --stilyagi-syntax-generic-error: #da474e;
  --stilyagi-syntax-error: #da474e;
}

/* The scroll lives on a wrapper the template supplies, because a
   scrollable region must be keyboard reachable and Pygments emits
   the inner markup without attributes. Templates wrap the tag in
   <div class="code-scroll" tabindex="0" role="region"> with a label. */
.code-scroll {
  /* Stop long code lines propagating min-content width up the
     grid and widening the page on narrow viewports. */
  contain: inline-size;
  overflow-x: auto;
  /* Pass a stretched height through to the block inside, so the ink
     ground fills the column when the panel beside it is taller. */
  display: flex;
  flex-direction: column;
}

/* Matches the pre.code component this replaced: the ink ground and
   the press-red rule down the left edge. The width pair keeps the
   ground painted across the full scroll extent, not just the
   visible width. */
.stilyagi-syntax {
  flex: 1;
  background: var(--ink);
  border-left: var(--rule-weight-3) solid var(--press-red);
  width: max-content;
  min-width: 100%;
  box-sizing: border-box;
}

.stilyagi-syntax pre {
  margin: 0;
  padding: calc(var(--unit) * 2.5) calc(var(--unit) * 3);
  font-family: var(--font-mono);
  /* Matches .term, the diagnostic view set beside it; the pair read
     as one specimen, and the author view then fits its column
     without scrolling at desktop widths. */
  font-size: 0.88rem;
  line-height: 1.55;
}

.stilyagi-syntax { color: var(--stilyagi-syntax-text); }
.stilyagi-syntax .esc,
.stilyagi-syntax .g,
.stilyagi-syntax .gd,
.stilyagi-syntax .ge,
.stilyagi-syntax .ges,
.stilyagi-syntax .gh,
.stilyagi-syntax .gi,
.stilyagi-syntax .gs,
.stilyagi-syntax .gt,
.stilyagi-syntax .gu,
.stilyagi-syntax .l,
.stilyagi-syntax .ld,
.stilyagi-syntax .w,
.stilyagi-syntax .x { color: var(--stilyagi-syntax-text); }
.stilyagi-syntax .c,
.stilyagi-syntax .c1,
.stilyagi-syntax .ch,
.stilyagi-syntax .cm,
.stilyagi-syntax .cpf,
.stilyagi-syntax .cs { color: var(--stilyagi-syntax-comment); font-style: italic; }
.stilyagi-syntax .cp { color: var(--stilyagi-syntax-comment-preproc); }
.stilyagi-syntax .k,
.stilyagi-syntax .kc,
.stilyagi-syntax .kd,
.stilyagi-syntax .kn,
.stilyagi-syntax .kp,
.stilyagi-syntax .kr,
.stilyagi-syntax .kt { color: var(--stilyagi-syntax-keyword); }
.stilyagi-syntax .o,
.stilyagi-syntax .ow { color: var(--stilyagi-syntax-operator); }
.stilyagi-syntax .p,
.stilyagi-syntax .pm { color: var(--stilyagi-syntax-punctuation); }
.stilyagi-syntax .n,
.stilyagi-syntax .na,
.stilyagi-syntax .ne,
.stilyagi-syntax .ni,
.stilyagi-syntax .nl,
.stilyagi-syntax .nn,
.stilyagi-syntax .no,
.stilyagi-syntax .nt,
.stilyagi-syntax .nv,
.stilyagi-syntax .nx,
.stilyagi-syntax .py,
.stilyagi-syntax .vc,
.stilyagi-syntax .vg,
.stilyagi-syntax .vi,
.stilyagi-syntax .vm { color: var(--stilyagi-syntax-name); }
.stilyagi-syntax .nc { color: var(--stilyagi-syntax-name-class); }
.stilyagi-syntax .fm,
.stilyagi-syntax .nf { color: var(--stilyagi-syntax-name-function); }
.stilyagi-syntax .nd { color: var(--stilyagi-syntax-name-decorator); }
.stilyagi-syntax .nb { color: var(--stilyagi-syntax-name-builtin); }
.stilyagi-syntax .bp { color: var(--stilyagi-syntax-name-builtin-pseudo); }
.stilyagi-syntax .dl,
.stilyagi-syntax .s,
.stilyagi-syntax .s1,
.stilyagi-syntax .s2,
.stilyagi-syntax .sa,
.stilyagi-syntax .sb,
.stilyagi-syntax .sc,
.stilyagi-syntax .sh,
.stilyagi-syntax .si,
.stilyagi-syntax .sr,
.stilyagi-syntax .ss,
.stilyagi-syntax .sx { color: var(--stilyagi-syntax-literal-string); }
.stilyagi-syntax .sd { color: var(--stilyagi-syntax-literal-string-doc); font-style: italic; }
.stilyagi-syntax .se { color: var(--stilyagi-syntax-literal-string-escape); }
.stilyagi-syntax .il,
.stilyagi-syntax .m,
.stilyagi-syntax .mb,
.stilyagi-syntax .mf,
.stilyagi-syntax .mh,
.stilyagi-syntax .mi,
.stilyagi-syntax .mo { color: var(--stilyagi-syntax-literal-number); }
.stilyagi-syntax .gp { color: var(--stilyagi-syntax-generic-prompt); font-weight: 700; }
.stilyagi-syntax .go { color: var(--stilyagi-syntax-generic-output); }
.stilyagi-syntax .gr { color: var(--stilyagi-syntax-generic-error); }
.stilyagi-syntax .err { color: var(--stilyagi-syntax-error); }

/* END generated stilyagi-pygments */
