:root {
  color-scheme: light;
  --primary: #277148;
  --primary-dark: #205d3b;
  --background: #ffffff;
  --surface: #ffffff;
  --surface-muted: #f5f6f7;
  --navbar-background: #fbfcfb;
  --sidebar-background: #f6f8f7;
  --control-hover: #e9efec;
  --active-background: #e7f4ec;
  --blockquote-background: #edf7f1;
  --code-background: #f8f8f8;
  --code-text: #1c1e21;
  --inline-code-background: #f1f3f5;
  --text: #1c1e21;
  --sidebar-text: #3b3b3b;
  --border: #dadde1;
  --muted: #606770;
  --highlight-background: #f4d67a;
  --highlight-text: #1c1e21;
  --scrollbar-thumb: #b6bdc5;
  --scrollbar-thumb-hover: #858e98;
  --shadow: rgb(0 0 0 / 8%);
  --radius: 0;
  --sidebar-width: 300px;
  --navbar-height: 60px;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --primary: #55c98d;
  --primary-dark: #72dda4;
  --background: #181a1f;
  --surface: #202329;
  --surface-muted: #2a2e35;
  --navbar-background: #22262d;
  --sidebar-background: #1e2228;
  --control-hover: #30353d;
  --active-background: #183b2a;
  --blockquote-background: #1d3328;
  --code-background: #282c34;
  --code-text: #f8f9fa;
  --inline-code-background: #2b3038;
  --text: #e6e9ed;
  --sidebar-text: #d5dae0;
  --border: #3b414a;
  --muted: #a7afb9;
  --highlight-background: #c79d45;
  --highlight-text: #17191d;
  --scrollbar-thumb: #555d68;
  --scrollbar-thumb-hover: #7a8490;
  --shadow: rgb(0 0 0 / 30%);
}
*, *::before, *::after {
  border-radius: var(--radius);
  box-sizing: border-box;
}
.doc-content [id] { scroll-margin-top: 76px; }
body {
  background: var(--background);
  color: var(--text);
  font: 16px/1.65 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  margin: 0;
  text-rendering: optimizeLegibility;
}
a { color: var(--primary); text-decoration: none; }
a:hover { text-decoration: underline; }
.doc-content p a, .doc-content li a, .doc-content td.api-description a {
  text-decoration: underline;
  text-decoration-thickness: 0.06em;
  text-underline-offset: 0.14em;
}
.skip-link {
  background: var(--surface);
  border: 2px solid var(--primary);
  color: var(--text);
  font-weight: 700;
  left: 0.75rem;
  padding: 0.45rem 0.7rem;
  position: fixed;
  top: 0.75rem;
  transform: translateY(-200%);
  z-index: 100;
}
.skip-link:focus { transform: translateY(0); }
.navbar {
  align-items: center;
  background: var(--navbar-background);
  border-bottom: 1px solid var(--border);
  box-shadow: 0 1px 2px var(--shadow);
  display: flex;
  gap: 1.4rem;
  height: var(--navbar-height);
  padding: 0 1.4rem;
  position: sticky;
  top: 0;
  z-index: 20;
}
.brand {
  align-items: center;
  color: var(--text);
  display: flex;
  font-size: 1.15rem;
  font-weight: 700;
  gap: 0.6rem;
}
.brand:hover { text-decoration: none; }
.brand-mark {
  display: block;
  height: 32px;
  object-fit: contain;
  width: 32px;
}
.navbar-spacer { flex: 1; }
.navbar-search {
  flex: 0 1 320px;
  min-width: 180px;
  position: relative;
}
.search-bar {
  align-items: center;
  background: var(--surface-muted);
  border: 1px solid var(--border);
  color: var(--muted);
  display: flex;
  gap: 0.5rem;
  padding: 0.38rem 0.65rem;
}
.search-bar:focus-within { border-color: var(--primary); color: var(--primary); }
.search-bar svg {
  fill: none;
  flex-shrink: 0;
  height: 16px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 2;
  width: 16px;
}
.search-bar input {
  background: transparent;
  border: 0;
  color: var(--text);
  flex: 1;
  font: inherit;
  min-width: 0;
  outline: 0;
  width: 100%;
}
.search-bar input::placeholder { color: var(--muted); }
.search-bar kbd {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--muted);
  flex-shrink: 0;
  font: 0.72rem/1.4 system-ui, sans-serif;
  padding: 0.08rem 0.3rem;
  white-space: nowrap;
}
.menu-button, .mobile-search-button, .mobile-search-close, .theme-button {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--text);
  cursor: pointer;
  flex-shrink: 0;
  height: 40px;
  justify-content: center;
  padding: 0;
  width: 40px;
}
.menu-button, .mobile-search-button, .mobile-search-close { display: none; }
.theme-button { display: inline-flex; }
.menu-button:hover, .mobile-search-button:hover, .mobile-search-close:hover,
.theme-button:hover {
  background: var(--control-hover);
  color: var(--primary);
}
.menu-button:focus-visible, .mobile-search-button:focus-visible,
.mobile-search-close:focus-visible, .theme-button:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 2px;
}
.menu-button svg, .mobile-search-button svg, .mobile-search-close svg,
.theme-icon {
  fill: none;
  height: 20px;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
  width: 20px;
}
.menu-icon-close { display: none; }
.theme-icon-sun { display: none; }
:root[data-theme="dark"] .theme-icon-sun { display: inline; }
:root[data-theme="dark"] .theme-icon-moon { display: none; }
.brand { flex-shrink: 0; }
.page-layout {
  display: flex;
  min-height: calc(100vh - var(--navbar-height));
  min-width: 0;
}
.sidebar {
  background: var(--sidebar-background);
  border-right: 1px solid var(--border);
  flex: 0 0 var(--sidebar-width);
  height: calc(100vh - var(--navbar-height));
  overflow-y: auto;
  padding: 1.2rem 0.8rem 2rem;
  position: sticky;
  top: var(--navbar-height);
}
.sidebar a, .sidebar summary {
  color: var(--sidebar-text);
  display: block;
  line-height: 1.25;
  padding: 0.42rem 0.7rem;
}
.sidebar a:hover, .sidebar summary:hover {
  background: var(--surface-muted);
  text-decoration: none;
}
.sidebar a:focus-visible, .sidebar summary:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: -2px;
}
.sidebar a.active {
  background: var(--active-background);
  color: var(--primary-dark);
  font-weight: 700;
}
.sidebar summary {
  cursor: pointer;
  font-weight: 700;
  list-style: none;
  padding-left: 1.7rem;
  position: relative;
}
.sidebar summary::-webkit-details-marker { display: none; }
.sidebar summary::before {
  border-bottom: 1.5px solid currentColor;
  border-right: 1.5px solid currentColor;
  content: "";
  height: 0.38rem;
  left: 0.72rem;
  position: absolute;
  top: 0.68rem;
  transform: rotate(-45deg);
  width: 0.38rem;
}
.sidebar details[open] > summary::before {
  top: 0.58rem;
  transform: rotate(45deg);
}
.sidebar-group { margin-top: 0.55rem; }
.sidebar-group-content {
  border-left: 1px solid var(--border);
  margin-left: 0.78rem;
  padding: 0.18rem 0 0.18rem 0.48rem;
}
.sidebar-category { margin: 0.28rem 0; }
.sidebar-category summary { font-size: 0.92rem; }
.sidebar ul { list-style: none; margin: 0; padding: 0 0 0 0.35rem; }
.sidebar li { font-size: 0.9rem; }
.content-layout {
  display: grid;
  flex: 1;
  gap: 3rem;
  grid-template-columns: minmax(0, 850px) fit-content(320px);
  justify-content: center;
  min-width: 0;
  padding: 0 2.5rem;
}
.content-layout.without-toc { grid-template-columns: minmax(0, 1070px); }
.doc { min-width: 0; padding: 1.25rem 0 5rem; }
.doc h1 {
  font-size: 2.5rem;
  font-weight: 650;
  letter-spacing: -0.025em;
  line-height: 1.2;
  margin: 1.4rem 0 1.6rem;
}
.doc h2 {
  border-top: 1px solid var(--border);
  font-size: 1.8rem;
  font-weight: 650;
  letter-spacing: -0.015em;
  margin-top: 3rem;
  padding-top: 1.5rem;
}
.doc h3 { font-size: 1.35rem; font-weight: 650; margin-top: 2.2rem; }
.doc h4 { font-size: 1.05rem; font-weight: 650; margin-bottom: 0.5rem; }
.breadcrumbs { color: var(--muted); font-size: 0.88rem; }
.doc, .breadcrumbs, .sidebar a, .sidebar summary { overflow-wrap: break-word; }
.breadcrumb-separator { margin: 0 0.5rem; }
.api-metadata {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem 2.5rem;
  margin: 0 0 1.5rem;
  padding: 0.8rem 0;
}
.api-metadata-item { min-width: 130px; }
.api-metadata dt {
  color: var(--muted);
  font-size: 0.72rem;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.api-metadata dd { margin: 0.12rem 0 0; }
.api-members-heading { font-size: 1.05rem; margin: 1.5rem 0 0.45rem; }
.api-members-heading + ul {
  list-style: none;
  margin: 0 0 1.5rem;
  padding: 0;
}
.api-members-heading + ul > li {
  list-style: none;
  padding: 0.8rem 0;
}
.api-members-heading + ul > li + li { margin-top: 0.25rem; }
.api-members-heading + ul > li > br,
.api-members-heading + ul > li > p > br { display: none; }
.api-members-heading + ul > li > p { margin: 0; }
.api-members-heading + ul > li > ul {
  list-style: none;
  margin: 0.4rem 0 0;
  padding: 0 0 0 1rem;
}
.api-members-heading + ul > li > ul > li {
  list-style: none;
  padding: 0.16rem 0;
}
.api-members-heading + ul ul ul {
  list-style: none;
  margin: 0.25rem 0;
  padding-left: 1rem;
}
.table-of-contents {
  align-self: start;
  border-left: 1px solid var(--border);
  color: var(--muted);
  font-size: 0.82rem;
  margin-top: 2.2rem;
  max-height: calc(100vh - 100px);
  max-width: 320px;
  min-width: 220px;
  overflow-y: auto;
  padding-left: 1rem;
  position: sticky;
  top: 85px;
}
.table-of-contents ul { list-style: none; margin: 0; padding: 0; }
.table-of-contents li { margin: 0.3rem 0; }
.table-of-contents .toc-level-3 { padding-left: 0.8rem; }
.table-of-contents a { color: var(--muted); overflow-wrap: anywhere; }
code {
  background: var(--inline-code-background);
  font-family: ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
  font-size: 0.92em;
  padding: 0.12rem 0.32rem;
}
pre {
  background: var(--code-background);
  color: var(--code-text);
  overflow-x: auto;
  padding: 1rem 1.2rem;
}
pre code { background: none; padding: 0; }
.doc-content .codehilite .err { border: 0; }
.optional-marker::after {
  content: "?";
  -webkit-user-select: none;
  user-select: none;
}
.api-signature { position: relative; }
.api-signature pre { padding-right: 3.4rem; }
.copy-button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  color: var(--muted);
  cursor: pointer;
  display: inline-flex;
  height: 34px;
  justify-content: center;
  padding: 0;
  width: 34px;
}
.copy-button:hover {
  background: var(--control-hover);
  color: var(--primary);
}
.copy-button:focus-visible {
  outline: 2px solid var(--primary);
  outline-offset: 1px;
}
.copy-button svg {
  fill: none;
  height: 17px;
  stroke: currentColor;
  stroke-linecap: square;
  stroke-linejoin: miter;
  stroke-width: 1.8;
  width: 17px;
}
.signature-copy { position: absolute; right: 0.55rem; top: 0.55rem; }
table {
  border-collapse: collapse;
  display: block;
  margin-bottom: 1.2rem;
  max-width: 100%;
  overflow-x: auto;
  width: max-content;
}
.api-table-scroll {
  margin-bottom: 1.2rem;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}
.sidebar, .table-of-contents, .search-popover, .api-table-scroll, pre {
  scrollbar-color: var(--scrollbar-thumb) transparent;
  scrollbar-width: thin;
}
.sidebar::-webkit-scrollbar, .table-of-contents::-webkit-scrollbar,
.search-popover::-webkit-scrollbar, .api-table-scroll::-webkit-scrollbar,
pre::-webkit-scrollbar {
  height: 7px;
  width: 7px;
}
.sidebar::-webkit-scrollbar-track, .table-of-contents::-webkit-scrollbar-track,
.search-popover::-webkit-scrollbar-track, .api-table-scroll::-webkit-scrollbar-track,
pre::-webkit-scrollbar-track { background: transparent; }
.sidebar::-webkit-scrollbar-thumb, .table-of-contents::-webkit-scrollbar-thumb,
.search-popover::-webkit-scrollbar-thumb, .api-table-scroll::-webkit-scrollbar-thumb,
pre::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); }
.sidebar:hover::-webkit-scrollbar-thumb,
.table-of-contents:hover::-webkit-scrollbar-thumb,
.search-popover:hover::-webkit-scrollbar-thumb,
.api-table-scroll:hover::-webkit-scrollbar-thumb,
pre:hover::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb-hover); }
.api-table-scroll .api-table {
  display: table;
  margin-bottom: 0;
  max-width: none;
  overflow: visible;
  width: 100%;
}
.api-table .api-name, .api-table .api-type {
  overflow-wrap: normal;
  word-break: normal;
}
.api-table .api-name code, .api-table th.api-name, .api-table .api-type {
  white-space: nowrap;
}
.api-table .api-description {
  overflow-wrap: break-word;
  white-space: normal;
  word-break: normal;
}
.index-page .api-table .index-name {
  vertical-align: top;
  white-space: nowrap;
  width: 28%;
}
.index-page .api-table .index-count {
  text-align: right;
  white-space: nowrap;
  width: 1%;
}
th, td {
  border: 1px solid var(--border);
  padding: 0.5rem 0.75rem;
  text-align: left;
  vertical-align: middle;
}
th { background: var(--surface-muted); }
blockquote {
  background: var(--blockquote-background);
  border-left: 5px solid var(--primary);
  margin-left: 0;
  padding: 0.55rem 1rem;
}
blockquote p { margin: 0.4rem 0; }
.link-preview {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: 0 12px 35px rgb(0 0 0 / 22%);
  color: var(--text);
  font-size: 0.88rem;
  line-height: 1.5;
  max-height: calc(100vh - 24px);
  overflow: hidden;
  padding: 0.85rem 0.95rem;
  position: fixed;
  width: min(380px, calc(100vw - 24px));
  z-index: 40;
}
.link-preview[hidden] { display: none; }
.link-preview-title {
  color: var(--primary-dark);
  display: block;
  font-size: 1rem;
  overflow-wrap: anywhere;
}
.link-preview-hierarchy {
  color: var(--muted);
  font-size: 0.78rem;
  margin-top: 0.25rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.link-preview-signature {
  display: block;
  margin-top: 0.65rem;
  max-height: 7.5em;
  overflow: hidden;
  overflow-wrap: anywhere;
  padding: 0.45rem 0.55rem;
  white-space: pre-wrap;
}
.link-preview-summary {
  color: var(--muted);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  margin: 0.65rem 0 0;
  overflow: hidden;
}
.visually-hidden {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.search-popover {
  background: var(--surface);
  border: 1px solid var(--border);
  box-shadow: 0 12px 35px rgb(0 0 0 / 22%);
  color: var(--text);
  max-height: min(560px, calc(100vh - 80px));
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: calc(100% + 0.55rem);
  width: min(500px, calc(100vw - 2rem));
  z-index: 30;
}
.search-popover[hidden] { display: none; }
.search-popover-status, .search-page-status {
  color: var(--muted);
  font-size: 0.8rem;
  margin: 0;
}
.search-popover-status { min-height: 1.5rem; padding: 0.45rem 0.7rem 0; }
.search-popover-results { padding: 0 0.5rem 0.45rem; }
.search-see-all {
  border-top: 1px solid var(--border);
  display: block;
  font-size: 0.88rem;
  font-weight: 700;
  padding: 0.65rem 0.8rem;
  text-align: center;
}
.search-see-all:hover { background: var(--surface-muted); text-decoration: none; }
.search-page-root { min-height: 320px; }
.search-page-filters {
  display: flex;
  gap: 0.4rem;
  margin-bottom: 0.75rem;
}
.search-page-filters button, .search-suggestions button, .search-more {
  background: var(--surface-muted);
  border: 1px solid var(--border);
  color: var(--text);
  cursor: pointer;
  font: inherit;
  padding: 0.3rem 0.65rem;
}
.search-page-filters button[aria-pressed="true"] {
  background: var(--active-background);
  border-color: var(--primary);
  color: var(--primary-dark);
  font-weight: 700;
}
.search-page-status { min-height: 1.8rem; padding: 0.2rem 0 0.6rem; }
.search-page-results { max-width: 850px; }
.search-result-section.compact h3 {
  color: var(--muted);
  font-size: 0.72rem;
  letter-spacing: 0.06em;
  margin: 0;
  padding: 0.65rem 0.35rem 0.25rem;
  text-transform: uppercase;
}
.search-result {
  align-items: stretch;
  border-bottom: 1px solid var(--border);
  display: flex;
  gap: 0;
  margin: 0;
}
.search-result:first-child { border-top: 1px solid var(--border); }
.search-result:hover, .search-result:focus-within { background: var(--surface-muted); }
.search-result-link {
  color: var(--text);
  display: block;
  flex: 1;
  min-width: 0;
  padding: 0.75rem;
}
.search-result-link:hover, .search-result-link[aria-selected="true"] {
  background: transparent;
  outline: 0;
  text-decoration: none;
}
.search-result-link:focus-visible { outline: 2px solid var(--primary); outline-offset: -2px; }
.search-result.compact { margin: 0; }
.search-result.compact .search-result-link { padding: 0.48rem 0.55rem; }
.search-result-heading { align-items: center; display: flex; flex-wrap: wrap; gap: 0.4rem; }
.search-result-heading strong, strong.search-result-primary {
  color: var(--primary-dark);
  overflow-wrap: anywhere;
}
.search-result-primary { display: block; }
.search-result.compact .search-result-signature { margin-top: 0; }
.search-result-signature {
  display: block;
  margin-top: 0.35rem;
  overflow: hidden;
  padding: 0.16rem 0.35rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.search-result p { color: var(--muted); font-size: 0.86rem; margin: 0.3rem 0 0; }
.search-result.compact p {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.search-result-hierarchy { color: var(--muted); font-size: 0.78rem; margin-top: 0.25rem; }
.search-result.compact .search-result-hierarchy {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.search-copy { align-self: center; flex-shrink: 0; margin-right: 0.65rem; }
.search-empty { color: var(--muted); margin: 0; padding: 1rem 0.5rem; }
.search-suggestions { align-items: center; color: var(--muted); display: flex; flex-wrap: wrap; gap: 0.4rem; padding: 0.8rem 0.25rem; }
.search-more { display: block; margin: 0.9rem auto 0.2rem; }
.search-popover mark, .search-page-results mark {
  background: var(--highlight-background);
  color: var(--highlight-text);
  padding: 0;
}
@media (max-width: 1200px) {
  .content-layout { grid-template-columns: minmax(0, 850px); }
  .table-of-contents { display: none; }
}
@media (max-width: 996px) {
  body.sidebar-open { overflow: hidden; }
  .menu-button { display: inline-flex; }
  .sidebar {
    bottom: 0;
    flex-basis: auto;
    left: 0;
    max-width: none;
    position: fixed;
    right: 0;
    top: var(--navbar-height);
    transform: translateX(-100%);
    transition: transform 160ms ease;
    width: 100%;
    z-index: 15;
  }
  .sidebar nav { margin: 0 auto; max-width: 640px; }
  .sidebar-open .sidebar { transform: translateX(0); }
  .sidebar-open .menu-icon-open { display: none; }
  .sidebar-open .menu-icon-close { display: inline; }
  .content-layout { padding: 0 1.4rem; width: 100%; }
}
@media (max-width: 600px) {
  body.mobile-search-open { overflow: hidden; }
  .navbar { gap: 0.35rem; padding: 0 0.75rem; }
  .brand span:last-child { display: none; }
  .navbar-spacer { display: block; }
  .mobile-search-button { display: inline-flex; }
  .navbar-search { display: none; }
  .mobile-search-open .menu-button, .mobile-search-open .brand,
  .mobile-search-open .navbar-spacer, .mobile-search-open .mobile-search-button,
  .mobile-search-open .theme-button { display: none; }
  .mobile-search-open .mobile-search-close { display: inline-flex; }
  .mobile-search-open .navbar-search {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
  }
  .search-bar kbd { display: none; }
  .mobile-search-open .search-popover {
    border-left: 0;
    border-right: 0;
    left: 0;
    max-height: calc(100vh - var(--navbar-height));
    position: fixed;
    right: 0;
    top: var(--navbar-height);
    width: 100vw;
  }
  .content-layout { padding: 0 1rem; }
  .doc { overflow-wrap: anywhere; }
  .doc h1 { font-size: 2rem; }
  .api-metadata { display: grid; gap: 0.7rem; grid-template-columns: 1fr; }
  .api-members-heading + ul > li > ul { padding-left: 0.35rem; }
  .search-copy { margin-right: 0.45rem; }
}
@media (prefers-reduced-motion: reduce) {
  .sidebar { transition: none; }
}

pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.codehilite .hll { background-color: #ffffcc }
.codehilite { background: #f8f8f8; }
.codehilite .c { color: #3D7B7B; font-style: italic } /* Comment */
.codehilite .err { border: 1px solid #F00 } /* Error */
.codehilite .k { color: #008000; font-weight: bold } /* Keyword */
.codehilite .o { color: #666 } /* Operator */
.codehilite .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.codehilite .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.codehilite .cp { color: #9C6500 } /* Comment.Preproc */
.codehilite .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.codehilite .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.codehilite .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.codehilite .gd { color: #A00000 } /* Generic.Deleted */
.codehilite .ge { font-style: italic } /* Generic.Emph */
.codehilite .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
.codehilite .gr { color: #E40000 } /* Generic.Error */
.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.codehilite .gi { color: #008400 } /* Generic.Inserted */
.codehilite .go { color: #717171 } /* Generic.Output */
.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.codehilite .gs { font-weight: bold } /* Generic.Strong */
.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.codehilite .gt { color: #04D } /* Generic.Traceback */
.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.codehilite .kp { color: #008000 } /* Keyword.Pseudo */
.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.codehilite .kt { color: #B00040 } /* Keyword.Type */
.codehilite .m { color: #666 } /* Literal.Number */
.codehilite .s { color: #BA2121 } /* Literal.String */
.codehilite .na { color: #687822 } /* Name.Attribute */
.codehilite .nb { color: #008000 } /* Name.Builtin */
.codehilite .nc { color: #00F; font-weight: bold } /* Name.Class */
.codehilite .no { color: #800 } /* Name.Constant */
.codehilite .nd { color: #A2F } /* Name.Decorator */
.codehilite .ni { color: #717171; font-weight: bold } /* Name.Entity */
.codehilite .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.codehilite .nf { color: #00F } /* Name.Function */
.codehilite .nl { color: #767600 } /* Name.Label */
.codehilite .nn { color: #00F; font-weight: bold } /* Name.Namespace */
.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */
.codehilite .nv { color: #19177C } /* Name.Variable */
.codehilite .ow { color: #A2F; font-weight: bold } /* Operator.Word */
.codehilite .w { color: #BBB } /* Text.Whitespace */
.codehilite .mb { color: #666 } /* Literal.Number.Bin */
.codehilite .mf { color: #666 } /* Literal.Number.Float */
.codehilite .mh { color: #666 } /* Literal.Number.Hex */
.codehilite .mi { color: #666 } /* Literal.Number.Integer */
.codehilite .mo { color: #666 } /* Literal.Number.Oct */
.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */
.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */
.codehilite .sc { color: #BA2121 } /* Literal.String.Char */
.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */
.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */
.codehilite .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */
.codehilite .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.codehilite .sx { color: #008000 } /* Literal.String.Other */
.codehilite .sr { color: #A45A77 } /* Literal.String.Regex */
.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */
.codehilite .ss { color: #19177C } /* Literal.String.Symbol */
.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */
.codehilite .fm { color: #00F } /* Name.Function.Magic */
.codehilite .vc { color: #19177C } /* Name.Variable.Class */
.codehilite .vg { color: #19177C } /* Name.Variable.Global */
.codehilite .vi { color: #19177C } /* Name.Variable.Instance */
.codehilite .vm { color: #19177C } /* Name.Variable.Magic */
.codehilite .il { color: #666 } /* Literal.Number.Integer.Long */
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
:root[data-theme="dark"] .codehilite .hll { background-color: #ffffcc }
:root[data-theme="dark"] .codehilite { background: #282C34; color: #ABB2BF }
:root[data-theme="dark"] .codehilite .c { color: #7F848E } /* Comment */
:root[data-theme="dark"] .codehilite .err { color: #ABB2BF } /* Error */
:root[data-theme="dark"] .codehilite .esc { color: #ABB2BF } /* Escape */
:root[data-theme="dark"] .codehilite .g { color: #ABB2BF } /* Generic */
:root[data-theme="dark"] .codehilite .k { color: #C678DD } /* Keyword */
:root[data-theme="dark"] .codehilite .l { color: #ABB2BF } /* Literal */
:root[data-theme="dark"] .codehilite .n { color: #E06C75 } /* Name */
:root[data-theme="dark"] .codehilite .o { color: #56B6C2 } /* Operator */
:root[data-theme="dark"] .codehilite .x { color: #ABB2BF } /* Other */
:root[data-theme="dark"] .codehilite .p { color: #ABB2BF } /* Punctuation */
:root[data-theme="dark"] .codehilite .ch { color: #7F848E } /* Comment.Hashbang */
:root[data-theme="dark"] .codehilite .cm { color: #7F848E } /* Comment.Multiline */
:root[data-theme="dark"] .codehilite .cp { color: #7F848E } /* Comment.Preproc */
:root[data-theme="dark"] .codehilite .cpf { color: #7F848E } /* Comment.PreprocFile */
:root[data-theme="dark"] .codehilite .c1 { color: #7F848E } /* Comment.Single */
:root[data-theme="dark"] .codehilite .cs { color: #7F848E } /* Comment.Special */
:root[data-theme="dark"] .codehilite .gd { color: #E06C75 } /* Generic.Deleted */
:root[data-theme="dark"] .codehilite .ge { color: #ABB2BF; font-style: italic } /* Generic.Emph */
:root[data-theme="dark"] .codehilite .ges { color: #ABB2BF } /* Generic.EmphStrong */
:root[data-theme="dark"] .codehilite .gr { color: #E06C75 } /* Generic.Error */
:root[data-theme="dark"] .codehilite .gh { color: #ABB2BF; font-weight: bold } /* Generic.Heading */
:root[data-theme="dark"] .codehilite .gi { color: #98C379 } /* Generic.Inserted */
:root[data-theme="dark"] .codehilite .go { color: #E06C75 } /* Generic.Output */
:root[data-theme="dark"] .codehilite .gp { color: #ABB2BF } /* Generic.Prompt */
:root[data-theme="dark"] .codehilite .gs { color: #ABB2BF; font-weight: bold } /* Generic.Strong */
:root[data-theme="dark"] .codehilite .gu { color: #ABB2BF; font-weight: bold } /* Generic.Subheading */
:root[data-theme="dark"] .codehilite .gt { color: #E06C75 } /* Generic.Traceback */
:root[data-theme="dark"] .codehilite .kc { color: #E5C07B } /* Keyword.Constant */
:root[data-theme="dark"] .codehilite .kd { color: #C678DD } /* Keyword.Declaration */
:root[data-theme="dark"] .codehilite .kn { color: #C678DD } /* Keyword.Namespace */
:root[data-theme="dark"] .codehilite .kp { color: #C678DD } /* Keyword.Pseudo */
:root[data-theme="dark"] .codehilite .kr { color: #C678DD } /* Keyword.Reserved */
:root[data-theme="dark"] .codehilite .kt { color: #E5C07B } /* Keyword.Type */
:root[data-theme="dark"] .codehilite .ld { color: #ABB2BF } /* Literal.Date */
:root[data-theme="dark"] .codehilite .m { color: #D19A66 } /* Literal.Number */
:root[data-theme="dark"] .codehilite .s { color: #98C379 } /* Literal.String */
:root[data-theme="dark"] .codehilite .na { color: #E06C75 } /* Name.Attribute */
:root[data-theme="dark"] .codehilite .nb { color: #E5C07B } /* Name.Builtin */
:root[data-theme="dark"] .codehilite .nc { color: #E5C07B } /* Name.Class */
:root[data-theme="dark"] .codehilite .no { color: #E06C75 } /* Name.Constant */
:root[data-theme="dark"] .codehilite .nd { color: #61AFEF } /* Name.Decorator */
:root[data-theme="dark"] .codehilite .ni { color: #E06C75 } /* Name.Entity */
:root[data-theme="dark"] .codehilite .ne { color: #E06C75 } /* Name.Exception */
:root[data-theme="dark"] .codehilite .nf { color: #61AFEF; font-weight: bold } /* Name.Function */
:root[data-theme="dark"] .codehilite .nl { color: #E06C75 } /* Name.Label */
:root[data-theme="dark"] .codehilite .nn { color: #E06C75 } /* Name.Namespace */
:root[data-theme="dark"] .codehilite .nx { color: #E06C75 } /* Name.Other */
:root[data-theme="dark"] .codehilite .py { color: #E06C75 } /* Name.Property */
:root[data-theme="dark"] .codehilite .nt { color: #E06C75 } /* Name.Tag */
:root[data-theme="dark"] .codehilite .nv { color: #E06C75 } /* Name.Variable */
:root[data-theme="dark"] .codehilite .ow { color: #56B6C2 } /* Operator.Word */
:root[data-theme="dark"] .codehilite .pm { color: #ABB2BF } /* Punctuation.Marker */
:root[data-theme="dark"] .codehilite .w { color: #ABB2BF } /* Text.Whitespace */
:root[data-theme="dark"] .codehilite .mb { color: #D19A66 } /* Literal.Number.Bin */
:root[data-theme="dark"] .codehilite .mf { color: #D19A66 } /* Literal.Number.Float */
:root[data-theme="dark"] .codehilite .mh { color: #D19A66 } /* Literal.Number.Hex */
:root[data-theme="dark"] .codehilite .mi { color: #D19A66 } /* Literal.Number.Integer */
:root[data-theme="dark"] .codehilite .mo { color: #D19A66 } /* Literal.Number.Oct */
:root[data-theme="dark"] .codehilite .sa { color: #98C379 } /* Literal.String.Affix */
:root[data-theme="dark"] .codehilite .sb { color: #98C379 } /* Literal.String.Backtick */
:root[data-theme="dark"] .codehilite .sc { color: #98C379 } /* Literal.String.Char */
:root[data-theme="dark"] .codehilite .dl { color: #98C379 } /* Literal.String.Delimiter */
:root[data-theme="dark"] .codehilite .sd { color: #98C379 } /* Literal.String.Doc */
:root[data-theme="dark"] .codehilite .s2 { color: #98C379 } /* Literal.String.Double */
:root[data-theme="dark"] .codehilite .se { color: #98C379 } /* Literal.String.Escape */
:root[data-theme="dark"] .codehilite .sh { color: #98C379 } /* Literal.String.Heredoc */
:root[data-theme="dark"] .codehilite .si { color: #98C379 } /* Literal.String.Interpol */
:root[data-theme="dark"] .codehilite .sx { color: #98C379 } /* Literal.String.Other */
:root[data-theme="dark"] .codehilite .sr { color: #98C379 } /* Literal.String.Regex */
:root[data-theme="dark"] .codehilite .s1 { color: #98C379 } /* Literal.String.Single */
:root[data-theme="dark"] .codehilite .ss { color: #98C379 } /* Literal.String.Symbol */
:root[data-theme="dark"] .codehilite .bp { color: #E5C07B } /* Name.Builtin.Pseudo */
:root[data-theme="dark"] .codehilite .fm { color: #56B6C2; font-weight: bold } /* Name.Function.Magic */
:root[data-theme="dark"] .codehilite .vc { color: #E06C75 } /* Name.Variable.Class */
:root[data-theme="dark"] .codehilite .vg { color: #E06C75 } /* Name.Variable.Global */
:root[data-theme="dark"] .codehilite .vi { color: #E06C75 } /* Name.Variable.Instance */
:root[data-theme="dark"] .codehilite .vm { color: #E06C75 } /* Name.Variable.Magic */
:root[data-theme="dark"] .codehilite .il { color: #D19A66 } /* Literal.Number.Integer.Long */
