/* Ensure code-highlight string/inline colours are consistent across MarkBind rebuilds */
.hljs-doctag, .hljs-string { color: #a03c96 !important; }
.hljs.inline.no-lang { color: #a03c96 !important; }

mark {
  background-color: #ff0;
  border-radius: 5px;
  padding-top: 0;
  padding-bottom: 0;
}

.indented {
  padding-left: 20px;
}

.theme-card img {
  width: 100%;
}

/* Scrollbar */

.slim-scroll::-webkit-scrollbar {
  width: 5px;
}

.slim-scroll::-webkit-scrollbar-thumb {
  background: #808080;
  border-radius: 20px;
}

.slim-scroll::-webkit-scrollbar-track {
  background: transparent;
  border-radius: 20px;
}

.slim-scroll-blue::-webkit-scrollbar {
  width: 5px;
}

.slim-scroll-blue::-webkit-scrollbar-thumb {
  background: #00b0ef;
  border-radius: 20px;
}

.slim-scroll-blue::-webkit-scrollbar-track {
  background: transparent;
  border-radius: 20px;
}

/* Layout containers */

#flex-body {
  display: flex;
  flex: 1;
  align-items: start;
}

#content-wrapper {
  flex: 1;
  margin: 0 auto;
  min-width: 0;
  max-width: 1000px;
  overflow-x: auto;
  padding: 0.8rem 20px 0 20px;
  transition: 0.4s;
  -webkit-transition: 0.4s;
}

#site-nav,
#page-nav {
  display: flex;
  flex-direction: column;
  position: sticky;
  top: var(--sticky-header-height);
  flex: 0 0 auto;
  max-width: 300px;
  max-height: calc(100vh - var(--sticky-header-height));
  width: 300px;
}

#site-nav {
  border-right: 1px solid lightgrey;
  padding-bottom: 20px;
  z-index: 999;
}

.site-nav-top {
  margin: 0.8rem 0;
  padding: 0 12px 12px 12px;
}

.nav-component {
  overflow-y: auto;
}

#page-nav {
  border-left: 1px solid lightgrey;
}

@media screen and (max-width: 1299.98px) {
  #page-nav {
    display: none;
  }
}

/* Bootstrap medium(md) responsive breakpoint */
@media screen and (max-width: 991.98px) {
  #site-nav {
    display: none;
  }
}

/* Bootstrap small(sm) responsive breakpoint */
@media (max-width: 767.98px) {
  .indented {
    padding-left: 10px;
  }

  #content-wrapper {
    padding: 0 10px;
  }
}

/* Bootstrap extra small(xs) responsive breakpoint */
@media screen and (max-width: 575.98px) {
  #site-nav {
    display: none;
  }
}

/* Hide site navigation when printing */
@media print {
  #site-nav {
    display: none;
  }

  #page-nav {
    display: none;
  }

  /* Reduce font size when printing */
  h1 {
      font-size: 2rem !important;
      font-weight: normal;
  }
  h2 {
      font-size: 1.5rem !important;
      font-weight: bold;
  }
  h3 {
      font-size: 1rem !important;
      font-weight: bold;
  }
  h4 {
      font-size: 0.8rem !important;
      font-weight: bold;
  }
  h5 {
      font-size: 0.7rem !important;
  }
  body {
      font-size: 0.65rem !important;
  }
  .btn {
      font-size: 0.65rem !important;
  }
  img {
      zoom: 0.7;  /* might not work on some browsers */
  }

  /* Reduce line height in the printed table of contents */
  .page-nav-print a.nav-link {
      padding-top: 1px !important;
      padding-bottom: 1px !important;
      line-height: 1.3;
  }
}

h2,
h3,
h4,
h5,
h6 {
  /*color: #e46c0a;*/
    color: rgb(50, 110, 210);
}

img[src*=".png"] {
    max-height: 90vh;
    object-fit: contain; /* Scales to fit without distortion */
}

/* 1. Remove borders from the table and all its children */
.invisible-table table,
.invisible-table th,
.invisible-table td,
.invisible-table tr,
.invisible-table thead,
.invisible-table tbody {
    border: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important; /* Some themes use shadows for lines */
}

/* 2. Neutralize Bootstrap's striped/hover row colors */
.invisible-table .table-striped tbody tr:nth-of-type(odd),
.invisible-table .table-hover tbody tr:hover {
    background-color: transparent !important;
}

/* 3. Remove the line between header and body */
.invisible-table thead th {
    border-bottom: 0 !important;
}
