/* Theorem-like statements and proofs, numbered as in the PDF. */
.stmt {
  margin: 1.2rem 0;
  padding: 0.55rem 0.9rem;
  border-left: 3px solid var(--bs-primary, #9a6a12);
  background: rgba(127, 127, 127, 0.06);
}
.stmt-remark, .stmt-example { border-left-color: rgba(127, 127, 127, 0.5); background: none; }
.stmt-definition, .stmt-algorithm { border-left-style: dashed; }
.stmt > p:last-child, .pf > p:last-child { margin-bottom: 0; }
.stmt:target, .enum-item:has(span:target) { outline: 2px solid var(--bs-primary, #9a6a12); outline-offset: 3px; }
.pf { margin: 0.8rem 0 1.4rem; }
/* A statement restated in an appendix: the full statement, marked as a restatement. */
.stmt-restated { border-left-style: double; border-left-width: 4px; }

/* Lists whose labels the paper cites, such as (a), (R1) or (CC2): the label is part of the text. */
.enum-list { margin: 0.6rem 0 1rem 1.2rem; }
.enum-item { margin: 0.35rem 0; text-indent: -1.6rem; padding-left: 1.6rem; }
.enum-item .enum-list, .enum-item mjx-container, .enum-item .enum-item { text-indent: 0; }

.upright { font-style: normal; }
.sans-serif { font-family: var(--bs-font-sans-serif); }
.smallcaps { font-variant: small-caps; }
mjx-container[display="true"] { overflow-x: auto; overflow-y: hidden; }

/* Links to an anchor land below the fixed menu, so a linked table or statement shows from its top. */
[id] { scroll-margin-top: 5rem; }

/* The claim-to-Lean table of the formalisation page: Lean names wrap only between their parts. */
.lean-map td:first-child { white-space: nowrap; }
.lean-map td:nth-child(2) code { white-space: nowrap; word-break: normal; overflow-wrap: normal; }
.lean-map td:nth-child(2) { min-width: 18rem; }

/* Figures and table captions, numbered as in the PDF. */
.paper-figure { margin: 1.4rem 0; text-align: center; }
.paper-figure p { margin-bottom: 0.4rem; }
.paper-img { max-width: 100%; height: auto; box-sizing: border-box; vertical-align: middle; background: #fff; border-radius: 4px; padding: 0.3rem; }
.paper-caption { display: block; font-size: 0.92rem; text-align: left; margin: 0.4rem 0 0.8rem; }
.caption-label { font-weight: 600; }

/* Table highlights of the paper: smallest entry of a column (lo) and entries produced by the
   bootstrap (bs). */
.cell-lo, .cell-lobs { background: rgba(224, 168, 60, 0.28); padding: 0 0.2rem; border-radius: 2px; }
.cell-bs, .cell-lobs { opacity: 0.62; }

/* Under a statement: its Lean proof and its code. */
.evidence { display: block; font-size: 0.9rem; margin-top: 0.5rem; padding-top: 0.35rem;
  border-top: 1px dashed rgba(127, 127, 127, 0.45); }
