body {
  font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;
  line-height: 1.5;
  font-weight: 400;

  color-scheme: light dark;
  color: rgba(255, 255, 255, 0.87);
  background-color: #161616;

  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  margin: 0 auto;
  padding: 2rem;
}

.tabSelector {
  overflow: hidden;
  border-bottom: 1px solid #ccc;
  background-color: #343434;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
.tabSelector > .tabButton {
  background-color: #444;
  float: left;
  border-radius: 0;
  border: none;
  border-left: 0.5px solid #aaa;
  border-right: 0.5px solid #aaa;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.2s;
}
.tabSelector > .tabButton:hover {
  background-color: #777;
}
.tabSelector > .tabButton.active {
  background-color: #ccc;
}
.tabContainer > div.tab {
  display: none;
}

.debugContainer {
  display: flex;
}
.debugContainer > div {
  padding: 5px;
}
th {
  text-wrap: nowrap;
}
.rightAlignHeadings th {
  text-align: right;
}
.padTDRight td {
  padding-right: 32px;
}

.repeatedTemplate {
  display: none;
}
.repeatedChildren {
  display: flex;
  overflow-x: auto;
  max-width: 96vw;
}
.repeatedChildren > div {
  padding-right: 20px;
}

.mermaidDiagram {
  max-height: 500px;
  overflow-y: auto;
}

.magnify-toggle {
  padding: 4px 5px 4px 5px;
  background-color: #444;
  border: 0.5px solid white;
  font-size: 10px;
  position: absolute;
  margin-left: 10px;
  margin-top: 10px;
}

.magnifying-glass {
  --height: 350px;
  --width: 550px;
  position: absolute;
  padding: 0;
  margin: 0;
  height: var(--height);
  width: var(--width);
  border: solid 3px black;
  background: #161616;
  overflow: hidden;
  border-radius: 10%;
}
.magnifying-glass > svg {
  --scale: 1.5;
  position: absolute;
  padding: 0;
}

.codeView {
  max-width: 600px;
  overflow-x: auto;
  max-height: 500px;
  overflow-y: auto;
  background-color: #2B2B2B;
}
.codeView pre {
  font-family: 'JetBrains Mono', monospace;
  font-variant-ligatures: no-contextual common-ligatures;
  font-size: smaller;
}
.codeView_wrapper {
  display: flex;
  height: fit-content;
}
.codeView_branchWrapper svg {
  margin-top: 7px;
}
.codeView_preWrapper {
  padding-left: 7px;
  padding-right: 12px;
}
div.codeView_linesWrapper {
  background-color: #444;
  text-align: right;
  padding-left: 12px;
  padding-right: 7px;
}
.codeView pre {
  margin-top: 7px;
  margin-bottom: 7px;
}

a {
  font-weight: 500;
  color: #646cff;
  text-decoration: inherit;
}
a:hover {
  color: #535bf2;
}

h1 {
  font-size: 3.2em;
  line-height: 1.1;
}

button {
  border-radius: 8px;
  border: 1px solid transparent;
  padding: 0.6em 1.2em;
  font-size: 1em;
  font-weight: 500;
  font-family: inherit;
  background-color: #1a1a1a;
  cursor: pointer;
  transition: border-color 0.25s;
}
button:hover {
  border-color: #646cff;
}
button:focus,
button:focus-visible {
  outline: 4px auto -webkit-focus-ring-color;
}
