html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  min-width: 320px;
}

body {
  .display(flex);
  .flex-direction(row);
}

nav#toc {
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  width: 300px;
  color: @minor-color;
  background-color: @minor-background-color;
  outline: 1px solid @border-color;
}

article#markdown {
  height: 100%;
  overflow-x: hidden;
  overflow-y: hidden;
  position: relative;
  .display(flex);
  .flex-direction(column);
  .flex(1);
  .order(1);
  .markdown-header {
    position: absolute;
    width: 100%;
    .si {
      opacity: .3;
      cursor: pointer;
      &:hover {
        opacity: .8;
      }
    }
  }
  .markdown-body {
    .flex(1);
    .order(1);
    height: auto;
    overflow-y: auto;
    padding: 2em;
  }
}

// responsive
@media only screen and (max-width: 768px) {
  body {
    height: auto;
    .flex-direction(column);
  }

  nav#toc, article#markdown {
    width: 100%;
    height: auto;
  }
}

// for printing
@media print {
  #toc,#markdown-header {
    display: none;
  }
}
