@import url('https://fonts.googleapis.com/css?family=Alegreya:400,400i|Alegreya+Sans');

body {
  font-family: 'Alegreya', 'Bembo', Garamond, serif;
  font-size: 1.2rem;
  letter-spacing: 0.01em;
}

h1, h2, h3, h4, h5 {
  font-family: 'Alegreya Sans', 'Lato', sans-serif;
}

code, pre {
  font-family: 'Iosevka Custom', 'Input Mono', 'Source Code Pro', 'Fira Mono', monospace;
  font-size: .9em;
}

small code, small pre {
  font-size: .9em;
}

body {
  padding: 0px;
  margin: 0px;
}

sup {
  vertical-align: top;
  position: relative;
  top: -0.15em;
}

.post-title {
  text-align: center;
}

@media (max-width: 999px) {
  .post-body > * {
    margin-left: 10px;
    margin-right: 10px;
  }
}

@media (min-width: 1000px) {
  .post-body > * {
    width: 800px;
    margin-left: auto;
    margin-right: auto;
  }

  .post-body > span.mjx-chtml {
    width: 800px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .post-body figure, .post-body div.highlighter-rouge {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .post-body figure pre, .post-body div.highlighter-rouge pre {
    width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 2em;
  }

  div.highlighter-rouge {
    background: #fdf6e3;
    border-top: 1px solid #eee8d5;
    border-bottom: 1px solid #eee8d5;
  }

  div.highlighter-rouge .highlight {
    border: 0px;
  }

  .post-title > div {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
}

h2, h3, h4, h5 {
  position: relative;
}

h2::after, h3::after, h4::after, h5::after {
  content: '---';
  position: absolute;
  bottom: -.5em;
  left: 0;
  height: 1em;
}

.console, .language-console {
  background-color: #002b36; color: white;
}

.post-comments {
  margin-top: 10px;
}

.post-title div {
  font-family: 'Alegreya Sans', 'Lato', sans-serif;
  font-size: 2.5rem;
  margin-top: 0.83em;
  margin-bottom: 5px;
  font-weight: bold;
  letter-spacing: 0.05em;
  font-feature-settings: "liga" 0;
}

.post-title time {
  color: grey;
}

a {
  color: #c00;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

@media (max-width: 1000px) {
  pre, div.shaky-container {
    overflow: auto;
  }

  img {
    max-width: 70%;
    height: auto;
  }
}

img.centered, .post-body > p > img:only-child {
  margin-left: auto;
  margin-right: auto;
  display: block;
}

@media (min-width: 1000px) {
  img {
    max-width: 50em;
    height: auto;
  }
}


.hydrogen {
  background-color: white !important;
  overflow: auto;
}

.hydrogen > table > tbody > tr > td:first-child {
  background-color: #F7F7F7;
  text-align: right;
  min-width: 3em;
}

.hydrogen > table > tbody > tr > td:last-child {
  background-color: white;
}

.hydrogen .ir-ref {
  color: #428bca;
}

.hydrogen .boldy {
  font-weight: bold;
}

.hydrogen .lir {
  background: rgba(125, 167, 217, 0.15) !important;
}

.hydrogen .src-range {
  margin-bottom: .2em;
  margin-top: .2em;
  display: inline-block;
}
.hydrogen .src-range-transparent { opacity: 0.3; }
.hydrogen .src-range-point { position: relative; }
.hydrogen .src-range-point::before {
  position: absolute;
  left: 0.0em;
  top: 0.8em;
  content: "^";
  font-weight: 900;
  color: gold;
}

.hydrogen td.loop-1 {
  border-left: 3px solid #C00;
}

.sidenote-host { position: relative; }

@media (min-width: 1300px) {
  .sidenote {
    margin-right: -260px;
    position: absolute;
    right: 0;
    top: auto; /* default */
    width: 240px;
    color: gray;
  }
}

@media (max-width: 1300px) {
  .sidenote {
    color: gray;
    display: block;
    margin-top: 0.2em;
    margin-bottom: 0.1em;
  }
}

p code {
  white-space: nowrap;
}

pre code {
  white-space: pre;
}

p, li {
  line-height: 1.5em;
  text-align: justify;
}

li {
  list-style-type: square;
}
