:root {
    --background: #222;
    --fade: #003049;
    --white: #ddd;
    --red: #d62828;
    --orange: #f77f00;
    --yellow: #fcbf49;
    --code-white: #eae2b7;
    --comment: #00e3f7;

    --title-font: "Libertinus Serif", serif;
    --menu-font: "Libertinus Serif", serif;
    --font: "Libertinus Serif", serif;

    --block-code-background: #444;
}
html, body {
  margin: 0px;
  padding: 0px;
  width: 100%;
  height: 100%;
}

body {
  background-color: var(--background);
}


/**************************************************
 * Top
 **************************************************/
.top {
  width: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
}


/**************************************************
 * Images
 **************************************************/

.separator {
  width: 100%;
  height: 10px;
  padding-left: 10px;
  padding-right: 10px;
}

@media (width <= 1100px) or (aspect-ratio <= 0.75) {
  .separator {
    display: none;
  }
}
/**************************************************
 * Sidebar
 **************************************************/

.sidebar {
  display: flex;
  min-height: 50px;
  max-width: none;
  width: 100%;
  align-items: baseline;
  flex-direction: row;
  color: var(--white);
  background: linear-gradient(to right, var(--fade), var(--fade));
}
.navbar {
  display: flex;
  padding-left: 10px;
  flex-direction: row;
  justify-content: flex-start;
}

.navbar-item {
  border: none;
  background: none;
  text-align: left;
  color: var(--white);
  font-size: 18pt;
  font-family: var(--menu-font);
}

.navbar-item:hover {
  color: var(--orange);
}

.title {
  font-size: 4em;
  font-family: var(--title-font);
  padding: 10px;
  z-index: 3;
}


/**************************************************
 * Content
 **************************************************/

.content {
  color: var(--white);
  background-color: var(--background);
  width: 100%;
  font-family: var(--font);
  padding-bottom: 25px;
}

/**************************************************
 * Splash Page
 **************************************************/

.splash {
  background-color: var(--background);
  display: inline-block;
  height: 100%;
  align-content: center;
  padding-left: 15%;
  padding-right: 15%;
}

.splash-description {
  font-size: 16pt;
  font-family: var(--font);
  text-align: left;
}

/**************************************************
 * Installation Page
 **************************************************/

.installation {
  background-color: var(--background);
  display: inline-block;
  padding-left: 15%;
  padding-right: 15%;
  font-size: 12pt;
}

.bash {
  background-color: var(--block-code-background);
  width: inherit;
  display: block;
  color: var(--font);
  font-size: 10pt;
  font-family: "monospace";
  border-radius: 5px;
  padding: 5px;
}

/**************************************************
 * Documentation Page
 **************************************************/

.doc-table {
  border: 1px solid #ffffff40;
  border-collapse: collapse;
}

.doc-td {
  padding: 6px;
  min-width: 50px;
}

.doc-td:nth-child(odd) {
  border-right: 1px solid #ffffff40;
  text-align: center;
}

tr:nth-child(even) {
  background: var(--block-code-background);
}

.documentation {
  background-color: var(--background);
  display: inline-block;
  padding-left: 15%;
  padding-right: 15%;
  font-size: 12pt;
}

.inline-code {
  color: var(--yellow);
  font-size: 10pt;
}

.code-block {
  background-color: var(--background);
  color: var(--white);
  font-size: 12px;
  padding-left: 2px;
  padding-right: 2px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin: 0px;
}


.keyword {

}

.function-declaration {
  margin-left: 4%;
}

.description {
  margin-left: 8%;
}

.note {
  color: var(--orange);
}

/**************************************************
 * Example Page
 **************************************************/

.example {
  background-color: var(--background);
  padding-left: 15%;
  padding-right: 15%;
  font-size: 12pt;
  max-width: 100%;
}

.tree { 
  line-height: 1;
}

.level1 {
  margin-left: 1em;
}
.level2 {
  margin-left: 2em;
}

.upper {
  font-size: 18px;
}
.upper::before {
  content: "\251c";
}
.bottom {
  font-size: 18px;
}
.bottom::before {
  cursor: pointer;
  content: "\2514";
}
.middle {
  font-size: 18px;
}
.middle::before {
  cursor: pointer;
  content: "\251c";
}

.landscape-image {
  max-width: 50%;
  max-height: 38.6%;
}

.portrait-image {
  max-height: 50%;
  max-width: 38.6%;

}

.image-row {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  width: 100%;
  align-items: center;
}

.vertical-separator {
  height: 150px;
}

.tex-code {
  max-width: 100%;
  font-size: 12px;
  max-height: 400px;
  overflow: auto;
  border: 1px solid var(--white);
  padding:5px;
  margin-top: 5px;
  margin-bottom: 15px;
}


/**************************************************
 * Syntax Highlighting
 **************************************************/


.orange {
  color: var(--orange);
}

.yellow {
  color: var(--yellow);
}

.red {
  color: var(--red);
}

.code-white {
  color: var(--code-white);
}
.comment {
  color: var(--comment);
}

/**************************************************
 * Small screen settings
 **************************************************/

