/*
    fpc-compact.css

    Complete stylesheet for the Free Pascal HTML documentation.
    A dense look for looking things up: a wide column, smaller text, striped
    tables and square edges. Follows the light or dark setting of the
    reader's screen.

    One of three styles that can be used, see also fpc-modern.css and
    fpc-book.css. Only one of them is linked in a page.

    This file is free software, distributed under the same terms as the
    Free Pascal documentation itself.
*/

/* ------------------------------------------------------------------ */
/* Colours, fonts and sizes                                           */
/* ------------------------------------------------------------------ */

:root {
  color-scheme: light dark;

  /* Text and page colours. */
  --fpc-bg: #ffffff;
  --fpc-bg-soft: #f0f1f6;
  --fpc-bg-code: #f2f3f8;
  --fpc-fg: #1f2529;
  --fpc-fg-strong: #0d1214;
  --fpc-fg-muted: #5c686e;

  /* Lines around boxes, tables and code. */
  --fpc-border: #ccd6da;
  --fpc-border-soft: #e3eaec;

  /* Colour used for links and highlights. */
  --fpc-accent: #434a75;
  --fpc-accent-hover: #4a5282;
  --fpc-accent-soft: #bec1da;

  /* Colour of program text and identifiers. */
  --fpc-code-fg: #252941;
  --fpc-code-bg: #f0f0f5;

  /* Font stacks. Only fonts already present on the machine are used. */
  --fpc-font-body: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans",
                   "Liberation Sans", Arial, sans-serif;
  --fpc-font-head: var(--fpc-font-body);
  --fpc-font-mono: ui-monospace, "SFMono-Regular", "JetBrains Mono", "Cascadia Mono",
                   "Fira Mono", Consolas, "DejaVu Sans Mono", "Liberation Mono", monospace;

  /* Background put behind a picture. The syntax diagrams are drawn in black
     on nothing at all, so on a dark page they need a light sheet under them. */
  --fpc-image-bg: transparent;
  --fpc-image-pad: 0;

  /* Width of the text column and rounding of boxes. */
  --fpc-content-width: 64rem;
  --fpc-radius: 0;
}

/* Colours used when the screen is set to dark and no choice was made. */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --fpc-bg: #0e1315;
    --fpc-bg-soft: #161e21;
    --fpc-bg-code: #141c1f;
    --fpc-fg: #d3dcdf;
    --fpc-fg-strong: #eef4f6;
    --fpc-fg-muted: #90a0a6;

    --fpc-border: #2a363a;
    --fpc-border-soft: #1e282b;

    --fpc-accent: #5cc2cf;
    --fpc-accent-hover: #8ad8e2;
    --fpc-accent-soft: #1d4249;

    --fpc-code-fg: #cfe3e7;
    --fpc-code-bg: #1a2427;

    --fpc-image-bg: #ffffff;
    --fpc-image-pad: 0.25rem;
  }
}

/* The same colours, used when the reader picked dark in the menu. */
:root[data-theme="light"] {
  color-scheme: light;
}

:root[data-theme="dark"] {
  color-scheme: dark;

  --fpc-bg: #0e1315;
  --fpc-bg-soft: #161e21;
  --fpc-bg-code: #141c1f;
  --fpc-fg: #d3dcdf;
  --fpc-fg-strong: #eef4f6;
  --fpc-fg-muted: #90a0a6;

  --fpc-border: #2a363a;
  --fpc-border-soft: #1e282b;

  --fpc-accent: #5cc2cf;
  --fpc-accent-hover: #8ad8e2;
  --fpc-accent-soft: #1d4249;

  --fpc-code-fg: #cfe3e7;
  --fpc-code-bg: #1a2427;

  --fpc-image-bg: #ffffff;
  --fpc-image-pad: 0.25rem;
}

/* ------------------------------------------------------------------ */
/* Page                                                               */
/* ------------------------------------------------------------------ */

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  max-width: var(--fpc-content-width);
  margin: 0 auto;
  padding: 0 1.5rem 4rem;
  background: var(--fpc-bg);
  color: var(--fpc-fg);
  font-family: var(--fpc-font-body);
  font-size: 0.9375rem;
  line-height: 1.55;
}

body * {
  box-sizing: border-box;
}

@media (max-width: 40rem) {
  body {
    padding: 0 0.9rem 2.5rem;
  }
}

/* ------------------------------------------------------------------ */
/* Headings                                                           */
/* ------------------------------------------------------------------ */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  font-family: var(--fpc-font-head);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--fpc-fg-strong);
  margin: 1.75rem 0 0.6rem;
  /* Keep the heading visible when a link jumps to it. */
  scroll-margin-top: 3.5rem;
}

body h1 a,
body h2 a,
body h3 a,
body h4 a,
body h5 a,
body h6 a {
  color: inherit;
  text-decoration: none;
}

body h1 a:hover,
body h2 a:hover,
body h3 a:hover,
body h4 a:hover,
body h5 a:hover,
body h6 a:hover {
  color: var(--fpc-accent);
}

body h2.titleHead {
  font-size: 2rem;
  text-align: center;
  margin: 2rem 0 1rem;
}

body h1.partHead,
body h2.chapterHead,
body h2.likechapterHead,
body h2.appendixHead {
  font-size: 1.6rem;
  margin-top: 1rem;
  padding-bottom: 0.4rem;
  border-bottom: 2px solid var(--fpc-accent);
}

body h3.sectionHead,
body h3.likesectionHead {
  font-size: 1.25rem;
  padding-bottom: 0.25rem;
  border-bottom: 1px solid var(--fpc-border-soft);
}

body h4.subsectionHead,
body h4.likesubsectionHead {
  font-size: 1.08rem;
}

body h5.subsubsectionHead,
body h5.likesubsubsectionHead {
  font-size: 1rem;
}

body .paragraphHead,
body .likeparagraphHead,
body .subparagraphHead,
body .likesubparagraphHead {
  font-size: 0.95rem;
  color: var(--fpc-fg-strong);
}

/* The chapter or section number in front of a heading. */
body .titlemark {
  color: var(--fpc-accent);
  font-family: var(--fpc-font-mono);
  font-size: 0.85em;
  font-weight: 500;
  white-space: pre;
}

/* ------------------------------------------------------------------ */
/* Title page                                                         */
/* ------------------------------------------------------------------ */

/*
  The rows of underscores on the title page are plain text, so they are
  made invisible by painting all direct text of the block transparent and
  giving the real elements their colour back.
*/
body div.maketitle {
  color: transparent;
  text-align: center;
  margin: 1.5rem 0 2rem;
  padding-bottom: 1.5rem;
  border-bottom: 2px solid var(--fpc-accent);
}

body div.maketitle * {
  color: var(--fpc-fg-muted);
}

body div.maketitle h2,
body div.maketitle h2 * {
  color: var(--fpc-fg-strong);
}

body div.maketitle .author,
body div.maketitle .author * {
  color: var(--fpc-fg);
}

body div.maketitle br {
  line-height: 1.1;
}

/* ------------------------------------------------------------------ */
/* Text                                                               */
/* ------------------------------------------------------------------ */

body p {
  margin: 0 0 0.75rem;
}

body p.indent {
  text-indent: 0;
}

body a {
  color: var(--fpc-accent);
  text-decoration: none;
}

body a:hover {
  color: var(--fpc-accent-hover);
  text-decoration: underline;
}

body a:focus-visible {
  outline: 2px solid var(--fpc-accent);
  outline-offset: 1px;
}

body hr {
  height: 0;
  border: 0;
  border-top: 1px solid var(--fpc-border);
  margin: 1.25rem 0;
}

body img {
  max-width: 100%;
  height: auto;
  padding: var(--fpc-image-pad);
  background: var(--fpc-image-bg);
  border-radius: var(--fpc-radius);
}

body img.math {
  max-width: none;
  padding: 0 0.15em;
}

/* ------------------------------------------------------------------ */
/* Lists                                                              */
/* ------------------------------------------------------------------ */

body ul,
body ol {
  margin: 0 0 0.75rem;
  padding-left: 1.4rem;
}

body li {
  margin: 0.15rem 0;
}

body li p {
  margin-bottom: 0.25rem;
}

body ul.itemize1,
body ul.itemize2 {
  list-style-type: square;
}

body dl.description {
  margin: 0.9rem 0;
  padding-left: 0;
}

body dt.description {
  margin-top: 0.7rem;
  color: var(--fpc-fg-strong);
}

body dd.description {
  margin: 0.15rem 0 0;
  padding-left: 0.9rem;
  border-left: 2px solid var(--fpc-border-soft);
}

/* ------------------------------------------------------------------ */
/* Tables                                                             */
/* ------------------------------------------------------------------ */

/* Wide tables get their own scrollbar instead of stretching the page. */
body div.tabular {
  overflow-x: auto;
  margin: 1rem 0;
}

body div.table {
  margin: 1rem 0;
}

body table.tabular {
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid var(--fpc-border);
  font-size: 0.92em;
  margin: 0;
}

body table.tabular td {
  padding: 0.3rem 0.65rem;
  vertical-align: top;
}

/* Every other row gets a tint, which makes a wide row easier to follow. */
body table.tabular tr:nth-child(even of :not(.hline)) td {
  background: var(--fpc-bg-soft);
}

/* A first row followed by a rule is the heading of the table. */
body table.tabular tr:first-child:has(+ tr.hline) td {
  background: var(--fpc-bg-soft);
  border-bottom: 2px solid var(--fpc-accent);
  color: var(--fpc-fg-strong);
  font-weight: 600;
}

body table.tabular tr.hline,
body .hline {
  border-top-color: transparent;
}

body table.tabular tr.hline td {
  padding: 0;
}

body .hline hr,
body .cline hr {
  border: 0;
  border-top: 1px solid var(--fpc-border);
}

body table[rules] {
  border-left-color: var(--fpc-border);
  border-right-color: var(--fpc-border);
}

body .caption {
  display: block;
  margin: 0.4rem 0;
  color: var(--fpc-fg-muted);
  font-size: 0.9em;
  line-height: 1.4;
  text-align: left;
}

body .caption .id {
  font-weight: 600;
  color: var(--fpc-fg);
}

/* ------------------------------------------------------------------ */
/* Boxes                                                              */
/* ------------------------------------------------------------------ */

body .fbox,
body div.fbox,
body .framebox-c,
body .framebox-l,
body .framebox-r {
  border: 1px solid var(--fpc-border);
  padding: 0.4rem 0.7rem;
  background: var(--fpc-bg-soft);
}

body div.quote {
  margin: 0.9rem 0;
  padding: 0 0 0 0.9rem;
  border-left: 3px solid var(--fpc-border);
  color: var(--fpc-fg-muted);
}

/*
  Blocks holding a syntax diagram. The row of underscores that latex draws
  above and below the drawing is one single long word, so it is cut off at
  the edge of the block instead of sticking out of the page.
*/
body blockquote.quote {
  overflow: hidden;
}

/* Notes in the margin are shown as a note above the text instead. */
body .marginpar,
body .reversemarginpar {
  float: none;
  width: auto;
  margin: 0.9rem 0;
  padding: 0.5rem 0.75rem;
  background: var(--fpc-bg-soft);
  border-left: 3px solid var(--fpc-accent);
  color: var(--fpc-fg);
  font-size: 0.95em;
  text-decoration: none;
}

body div.footnotes {
  margin: 2rem 0 0;
  padding: 0.6rem 0.8rem;
  border: 1px solid var(--fpc-border);
  background: var(--fpc-bg-soft);
  color: var(--fpc-fg-muted);
  font-size: 0.9em;
  font-style: normal;
}

body span.footnote-mark sup.textsuperscript {
  font-size: 0.7em;
  padding-left: 0.1em;
}

/* ------------------------------------------------------------------ */
/* Figures                                                            */
/* ------------------------------------------------------------------ */

body div.figure {
  margin: 1.25rem auto;
  text-align: center;
}

body div.float {
  margin: 1.25rem 0;
}

/* The separator line that latex draws around a floating table or figure. */
body hr.float,
body hr.endfloat,
body hr.figure,
body hr.endfigure {
  display: none;
}

body div.center {
  margin: 1rem 0;
}

/* ------------------------------------------------------------------ */
/* Blocks of program text                                             */
/* ------------------------------------------------------------------ */

body pre.verbatim,
body pre.lstlisting,
body pre.lstinputlisting,
body div.listinginput {
  font-family: var(--fpc-font-mono);
  font-size: 0.85em;
  line-height: 1.45;
  color: var(--fpc-code-fg);
  background: var(--fpc-bg-code);
  border: 1px solid var(--fpc-border);
  border-left: 3px solid var(--fpc-accent);
  padding: 0.6rem 0.8rem;
  margin: 0.9rem 0 1rem;
  overflow-x: auto;
  tab-size: 2;
}

body pre.verbatim {
  white-space: pre;
}

/* Word lists printed in columns keep their plain look, so they can be split. */
body div.columns-3 pre.verbatim,
body div.columns-4 pre.verbatim {
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  overflow: visible;
}

body div.listinginput p {
  margin: 0;
}

/* Inside a block everything is program text already, so no extra marking. */
body pre.verbatim span,
body div.listinginput span,
body pre.lstlisting span,
body pre.lstinputlisting span {
  background: none;
  padding: 0;
  font-size: inherit;
  color: inherit;
}

/* The lines drawn around an example listing are not needed any more. */
body hr:has(+ div.listinginput),
body div.listinginput + hr {
  display: none;
}

/* ------------------------------------------------------------------ */
/* Program text inside a sentence                                     */
/* ------------------------------------------------------------------ */

body code.verb,
body .pcrr7t-,
body .pcrr7t-x-x-80,
body .pcrr7t-x-x-90,
body .pcrr8c-,
body .pcrr8c-x-x-80,
body .pcrb7t-,
body .cmtt-10,
body .cmtt-9,
body .cmtt-8 {
  font-family: var(--fpc-font-mono);
  font-size: 0.88em;
  color: var(--fpc-code-fg);
  background: var(--fpc-code-bg);
  /* No space left and right, so pieces of one name stay glued together. */
  padding: 0.1em 0;
  overflow-wrap: break-word;
}

body .pcrb7t- {
  font-weight: 600;
}

body code.verb {
  padding: 0.1em 0.3em;
}

/* File names and program names, written in a sans serif font in print. */
body .cmss-10,
body .cmss-9,
body .cmss-8 {
  font-family: var(--fpc-font-mono);
  font-size: 0.88em;
  color: var(--fpc-fg-muted);
}

body h1 .cmss-10,
body h2 .cmss-10,
body h3 .cmss-10,
body h4 .cmss-10,
body h5 .cmss-10,
body a .cmss-10 {
  color: inherit;
}

/* Lines kept as typed. */
body .obeylines-h,
body .obeylines-v {
  white-space: nowrap;
}

body div.obeylines-v p {
  margin: 0;
}

/* ------------------------------------------------------------------ */
/* Next / previous / up bar                                           */
/* ------------------------------------------------------------------ */

body div.crosslinks {
  position: sticky;
  top: 0;
  z-index: 10;
  margin: 0 0 1.25rem;
  padding: 0.4rem 0;
  background: var(--fpc-bg);
  border-bottom: 1px solid var(--fpc-border);
}

/*
  The square brackets around the links are plain text. Setting the size of
  that text to zero hides them, the links get their own size back.
*/
body div.crosslinks p {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
  margin: 0;
  font-size: 0;
}

body div.crosslinks a {
  padding: 0.25rem 0.6rem;
  font-family: var(--fpc-font-body);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--fpc-fg-muted);
  background: var(--fpc-bg-soft);
  border: 1px solid var(--fpc-border);
  border-radius: 999px;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

body div.crosslinks a:hover {
  color: var(--fpc-bg);
  background: var(--fpc-accent);
  border-color: var(--fpc-accent);
  text-decoration: none;
}

/* The same bar at the bottom of the page is not kept in view. */
body div.crosslinks:not(:first-of-type) {
  position: static;
  margin: 2rem 0 0.9rem;
  padding: 0.9rem 0 0;
  border-bottom: 0;
  border-top: 1px solid var(--fpc-border);
}

/* ------------------------------------------------------------------ */
/* Menus for the style and the colours                                */
/* ------------------------------------------------------------------ */

body div.fpc-switch {
  display: flex;
  gap: 0.3rem;
  margin-left: auto;
}

/* Bar used on pages that have no next / previous links. */
body div.fpc-switch-bar {
  display: flex;
  margin: 0 0 1.25rem;
  padding: 0.4rem 0;
  border-bottom: 1px solid var(--fpc-border);
}

body select.fpc-switch-select {
  padding: 0.2rem 0.6rem;
  font-family: var(--fpc-font-body);
  font-size: 0.78rem;
  line-height: 1.2;
  color: var(--fpc-fg-muted);
  background: var(--fpc-bg-soft);
  border: 1px solid var(--fpc-border);
  border-radius: 999px;
  cursor: pointer;
}

body select.fpc-switch-select:hover {
  color: var(--fpc-accent);
  border-color: var(--fpc-accent);
}

body button.fpc-switch-toggle {
  padding: 0.2rem 0.6rem;
  font-family: var(--fpc-font-body);
  font-size: 0.78rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--fpc-fg-muted);
  background: var(--fpc-bg-soft);
  border: 1px solid var(--fpc-border);
  border-radius: 999px;
  cursor: pointer;
}

body button.fpc-switch-toggle:hover {
  color: var(--fpc-accent);
  border-color: var(--fpc-accent);
}

/* ------------------------------------------------------------------ */
/* Sidebar with the contents of the manual                            */
/* ------------------------------------------------------------------ */

body nav.fpc-sidebar {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 20;
  width: 16rem;
  height: 100%;
  padding: 0.8rem 0.7rem 1.5rem;
  overflow-y: auto;
  background: var(--fpc-bg-soft);
  border-right: 1px solid var(--fpc-border);
  font-size: 0.83rem;
  line-height: 1.4;
}

html.fpc-sidebar-open body nav.fpc-sidebar {
  display: block;
}

html.fpc-sidebar-open body {
  margin-left: 16rem;
}

body .fpc-sidebar-head {
  margin-bottom: 0.4rem;
  color: var(--fpc-fg-muted);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

body .fpc-toc-entry a {
  display: block;
  padding: 0.12rem 0.35rem;
  color: var(--fpc-fg);
  text-decoration: none;
}

body .fpc-toc-entry a:hover {
  color: var(--fpc-accent);
  background: var(--fpc-bg);
  text-decoration: none;
}

body .fpc-chapter {
  margin-top: 0.35rem;
  font-weight: 600;
}

body .fpc-section {
  padding-left: 0.8rem;
}

body .fpc-num {
  margin-right: 0.4em;
  color: var(--fpc-fg-muted);
  font-family: var(--fpc-font-mono);
  font-size: 0.9em;
}

body .fpc-here > a,
body .fpc-here > a:hover {
  color: var(--fpc-bg);
  background: var(--fpc-accent);
  font-weight: 600;
}

body .fpc-here .fpc-num {
  color: inherit;
}

/* On a narrow screen the sidebar lies over the text instead of beside it. */
@media (max-width: 60rem) {
  html.fpc-sidebar-open body {
    margin-left: 0;
  }

  body nav.fpc-sidebar {
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.35);
  }
}

/* ------------------------------------------------------------------ */
/* Table of contents of the whole document                            */
/* ------------------------------------------------------------------ */

body div.tableofcontents {
  margin: 1.25rem 0 2rem;
}

body div.tableofcontents br {
  display: none;
}

body div.tableofcontents > span {
  display: block;
  padding: 0.08rem 0;
  color: var(--fpc-fg-muted);
  font-variant-numeric: tabular-nums;
}

body div.tableofcontents > span a {
  color: var(--fpc-fg);
}

body div.tableofcontents > span a:hover {
  color: var(--fpc-accent);
}

body .partToc,
body .chapterToc,
body .likechapterToc,
body .appendixToc,
body .lotToc {
  margin-top: 0.8rem;
  font-size: 1rem;
  font-weight: 600;
}

body .sectionToc,
body .likesectionToc {
  margin-left: 1.25rem;
}

body .subsectionToc,
body .likesubsectionToc {
  margin-left: 2.5rem;
  font-size: 0.95em;
}

body .subsubsectionToc,
body .likesubsubsectionToc {
  margin-left: 3.75rem;
  font-size: 0.95em;
}

body .paragraphToc,
body .subparagraphToc {
  margin-left: 5rem;
  font-size: 0.95em;
}

/* ------------------------------------------------------------------ */
/* Short list of subsections on a page                                */
/* ------------------------------------------------------------------ */

body div[class$="TOCS"] {
  margin: 1rem 0;
  padding: 0.6rem 0.9rem;
  background: var(--fpc-bg-soft);
  border-left: 3px solid var(--fpc-accent);
  font-size: 0.95em;
}

body div[class$="TOCS"]::before {
  display: block;
  margin-bottom: 0.3rem;
  color: var(--fpc-fg-muted);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  content: "On this page";
}

body div.sectionTOCS::before,
body div.likesectionTOCS::before {
  content: "In this chapter";
}

body div.subsectionTOCS::before,
body div.subsubsectionTOCS::before,
body div.likesubsectionTOCS::before,
body div.likesubsubsectionTOCS::before {
  content: "In this section";
}

body div[class$="TOCS"] br {
  display: none;
}

body div[class$="TOCS"] > span {
  display: block;
  margin-left: 0;
  padding: 0.08rem 0;
  color: var(--fpc-fg-muted);
  font-size: 1em;
  font-weight: normal;
  font-variant-numeric: tabular-nums;
}

body div[class$="TOCS"] > span.subsectionToc {
  margin-left: 1rem;
}

body div[class$="TOCS"] > span.subsubsectionToc {
  margin-left: 2rem;
}

body div.subsectionTOCS > span.subsectionToc,
body div.likesubsectionTOCS > span.subsectionToc,
body div.subsubsectionTOCS > span.subsubsectionToc {
  margin-left: 0;
}

/* ------------------------------------------------------------------ */
/* Index                                                              */
/* ------------------------------------------------------------------ */

body div.columns-3,
body div.columns-4 {
  column-gap: 1.75rem;
  column-rule: 1px solid var(--fpc-border-soft);
  font-size: 0.95em;
}

body .index-item,
body .index-subitem,
body .index-subsubitem {
  display: block;
  break-inside: avoid;
}

body .index-subitem {
  margin-left: 0.9rem;
}

body .index-subsubitem {
  margin-left: 1.8rem;
}

/* ------------------------------------------------------------------ */
/* Page footer                                                        */
/* ------------------------------------------------------------------ */

body span.timestamp {
  display: inline-block;
  margin-right: 0.5rem;
  color: var(--fpc-fg-muted);
  font-size: 0.8rem;
}

body a.reportissue-link {
  display: inline-block;
  padding: 0.2rem 0.55rem;
  color: var(--fpc-fg-muted);
  background: var(--fpc-bg-soft);
  border: 1px solid var(--fpc-border);
  border-radius: 999px;
  font-size: 0.8rem;
  text-decoration: none;
}

body a.reportissue-link:hover {
  color: var(--fpc-bg);
  background: var(--fpc-accent);
  border-color: var(--fpc-accent);
  text-decoration: none;
}

/* ------------------------------------------------------------------ */
/* Printing                                                           */
/* ------------------------------------------------------------------ */

@media print {
  /* A dark choice must not end up on paper. */
  :root,
  :root[data-theme="light"],
  :root[data-theme="dark"] {
    --fpc-image-bg: transparent;
    --fpc-image-pad: 0;
    --fpc-bg: #ffffff;
    --fpc-bg-soft: #ffffff;
    --fpc-bg-code: #ffffff;
    --fpc-code-bg: #ffffff;
    --fpc-fg: #000000;
    --fpc-fg-strong: #000000;
    --fpc-fg-muted: #444444;
    --fpc-border: #999999;
    --fpc-border-soft: #cccccc;
    --fpc-accent: #000000;
    --fpc-code-fg: #000000;
  }

  body {
    max-width: none;
    padding: 0;
    font-size: 10pt;
    line-height: 1.4;
  }

  /* Navigation, menus and reporting links are of no use on paper. */
  body div.crosslinks,
  body div.fpc-switch,
  body div.fpc-switch-bar,
  body nav.fpc-sidebar,
  html.fpc-sidebar-open body nav.fpc-sidebar,
  body a.reportissue-link {
    display: none;
  }

  html.fpc-sidebar-open body {
    margin-left: 0;
  }

  body a {
    color: inherit;
    text-decoration: underline;
  }

  body h1,
  body h2,
  body h3,
  body h4,
  body h5,
  body h6 {
    break-after: avoid;
    page-break-after: avoid;
  }

  body pre.verbatim,
  body div.listinginput,
  body table.tabular,
  body div.figure,
  body div.footnotes {
    break-inside: avoid;
    page-break-inside: avoid;
  }
}
