.book .book-header {
  z-index: 10000;
}

.MathJax_Display, .MJXc-display, .MathJax_SVG_Display {
    overflow-x: auto;
    overflow-y: hidden;
}

div.sourceCode {
  background-color: #FFF;
}

/* Custom font approach via https://css-tricks.com/snippets/css/using-font-face/ and https://www.smashingmagazine.com/2013/02/setting-weights-and-styles-at-font-face-declaration/ */
/* Font conversion via https://cloudconvert.com/ */
@font-face {
  font-family: 'LouisMainSerifFont';
  src: url('fonts/PTSerif-Regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSerif-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSerif-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSerif-Regular.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSerif-Regular.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'LouisMainSerifFont';
  src: url('fonts/PTSerif-Italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSerif-Italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSerif-Italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSerif-Italic.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSerif-Italic.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'LouisMainSerifFont';
  src: url('fonts/PTSerif-Bold.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSerif-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSerif-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSerif-Bold.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSerif-Bold.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'LouisMainSerifFont';
  src: url('fonts/PTSerif-BoldItalic.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSerif-BoldItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSerif-BoldItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSerif-BoldItalic.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSerif-BoldItalic.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'LouisMainSansSerifFont';
  src: url('fonts/PTSans-Regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSans-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSans-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSans-Regular.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSans-Regular.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'LouisMainSansSerifFont';
  src: url('fonts/PTSans-Italic.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSans-Italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSans-Italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSans-Italic.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSans-Italic.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'LouisMainSansSerifFont';
  src: url('fonts/PTSans-Bold.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSans-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSans-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSans-Bold.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSans-Bold.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'LouisMainSansSerifFont';
  src: url('fonts/PTSans-BoldItalic.eot'); /* IE9 Compat Modes */
  src: url('fonts/PTSans-BoldItalic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/PTSans-BoldItalic.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/PTSans-BoldItalic.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/PTSans-BoldItalic.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: bold;
  font-style: italic;
}

@font-face {
  font-family: 'LouisSideFont';
  src: url('fonts/Philosopher-Regular.eot'); /* IE9 Compat Modes */
  src: url('fonts/Philosopher-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/Philosopher-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/Philosopher-Regular.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/Philosopher-Regular.ttf')  format('truetype'); /* Safari, Android, iOS */
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'LouisCodeFont';
  src: url('fonts/FiraCode-VariableFont_wght.eot'); /* IE9 Compat Modes */
  src: url('fonts/FiraCode-VariableFont_wght.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/FiraCode-VariableFont_wght.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/FiraCode-VariableFont_wght.woff') format('woff'), /* Pretty Modern Browsers */
       url('fonts/FiraCode-VariableFont_wght.ttf')  format('truetype'); /* Safari, Android, iOS */
}

.book .book-body .page-wrapper .page-inner section.normal code {
  font-family: LouisCodeFont
}

.book .book-summary {
  font-family: LouisSideFont;
}

.book.font-family-0 {
  font-family: LouisMainSerifFont;
}

.book.font-family-1 {
  font-family: LouisMainSansSerifFont;
}

/*p.caption {
  color: #777;
  margin-top: 10px;
}
p code {
  white-space: inherit;
}
pre {
  word-break: normal;
  word-wrap: normal;
}
pre code {
  white-space: inherit;
}*/

footer {
  text-align: right;
}

.book .book-summary ul.summary li.divider {
  width: 100%;
  border: 0;
  height: 1px;
  background-image: linear-gradient(to right, rgba(0,0,0,0), rgba(0,0,0,0.2), rgba(0,0,0,0));
  background-color: rgba(0,0,0,0);
}

div.definition,div.example,div.theorem {
  padding: 0.2em 0.6em 0.2em 0.6em;
  margin-bottom: 0.5em;
  margin-top: 0.5em;
  border-radius: 1em;
  background-color: rgba(204,204,204,0.2);
}

.louisvideo {
  position: fixed;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 10;
  bottom: 0px;
  right: 0px;
  width: 450px;
  max-width: 90%;
  transition: bottom 1s,right 1s;
}
