body {
  margin: 0;
  padding: 0;
  background-color: #ffffff;
  color: #4d4d4d;
  font-family: 'PT Sans', sans-serif;
  font-size: 20px;
}

h1, h2, h3, h4, h5, h6 {
  padding-top: 30px;
}

h1 { font-size: 2em; }
h2 { font-size: 1.5em; }
h3 { font-size: 1.17em; }
h4 { font-size: 1.12em; }
h5 { font-size: .83em; }
h6 { font-size: .67em; }

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

hr {
  color: #eeeeee;
  background-color: #eeeeee;
  height: 1px;
  border: none;
}
tt {
  font-family: Courier New,Courier,Lucida Sans Typewriter,Lucida Typewriter,monospace;
  font-size: .8em;
  border: solid 1px #e1e4e5;
  box-sizing: border-box;
  /*line-height: 24px;*/
  padding-top: 5px;
  padding-left: 5px;
  padding-right: 5px;
  padding-bottom: 2px;
  margin: 0;
  background-color: rgba(27,31,35,0.05);
  border-radius: 3px;
}
dt {
  font-weight: bold;
  font-style: italic;
}
img {
  max-width: 100%;
  border-radius: 8px;
}
img.align-center {
    display: block;
    margin: 0 auto;
}
img.align-right {
  float: right;
  padding-left: 16px;
}
img.align-left{
  float: left;
  padding-right: 16px;
}
img.logo{
  width: 125px;
}
aside div#user_meta {
  padding-top: 90px;
  padding-left: 60px;
  padding-right: 60px;
}
aside div#user_meta h2 {
  margin: 15px 0 5px 0;
}
aside div#user_meta p {
  margin: 0 0 15px 0;
  font-size: 14px;
}
aside div#user_meta ul {
  margin: 40px 0 0 0;
  padding-left: 0;
  font-size: 16px;
  list-style-type: none;
}
aside div#user_meta ul li {
  display: inline;
  line-height: 3em;
}
aside div#user_meta ul li a {
  padding: 5px 15px 5px 15px;
  border: 3px solid #eeeeee;
  border-radius: 15px;
  -moz-border-radius: 15px;
  -webkit-border-radius: 15px;
  color: #999999;
}
main header {
  padding: 5%;
  padding-top: 58px;
  padding-bottom: 58px;
  border-bottom: #eeeeee 1px solid;
  border-top: 0;
}
main header p {
  font-weight: bold;
  font-size: 14px;
  text-transform: uppercase;
}
main article {
  padding-left: 5%;
  padding-right: 5%;
}
main article div.article_text {
  line-height: 1.8em;
}

main article div.article_text a,
div.remarkbox-shoutout a {
  color: #0084B4;
}
main article div.article_text .toc-backref {
  border-bottom: 0px;
}
main article div.article_text code {
  margin: 2px;
  padding: 0;
  color: #000000;
  font-size: 14px;
  font-family: 'PT Mono', monospace;
  background-color: #FAFAFA;
}
main article div.article_text pre {
  margin-top: 20px;
  margin-bottom: 20px;
  margin-left: 20px;
  padding: 2%;
  color: #000000;
  border-left: 2px solid #0084B4;
  font-size: 12px;
  font-family: 'PT Mono', monospace;
  line-height: 1.125em;
  overflow-x: auto;
  border-radius: 8px;
  background-color: #FAFAFA;
}
main article div.article_text blockquote {
  margin: 22px 2px 22px 2px;
  padding-left: 22px;
  border-left: 2px solid #0084B4;
  color: #999999;
  font-style: italic;
}
main article div.gist {
  line-height: .875em;
}
main article div.article_meta {
  font-size: 12px;
  color: #999999;
  float: right;
}
main footer {
  border-top: #eeeeee 1px solid;
  padding: 40px;
  background-color: #FAFAFA;
}

main footer a {
  border-bottom: 1px dotted #BBB;
}

main div#ending_message {
  padding: 20px 40px 20px 40px;
  color: #999999;
  font-size: 10px;
  background-color: #FAFAFA;
  text-align: right;
}

main hr {
  margin-top: 50px;
}

/* table of contents */
div.contents {
  margin: 40px;
  padding: 2%; 
  border-radius: 8px;
  border-left: 2px solid #0084B4;
  background-color: #FAFAFA;
}
p.topic-title {
  margin-top: 0px;
}
/* table of contents end */

.tagline {
  border-bottom: 1px dotted #BBBBBB;
}

.wordwrap-left {
  float: left;
  padding-right: 1em;
}
.wordwrap-right {
  float: right;
  padding-left: 1em;
}

#search-box {
  border-color: #bbbbbb;
  border-radius: 2px;
  border-width: 1px;
  border-style: solid;
  padding: .3em;
  width: 190px;
}

span.avoidwrap { 
  display:inline-block;
}

div.advert {
  font-size: .8em;
  background-color: #fafafa;
  padding: 20px;
  border-radius: 8px;
  text-align: left;
  border-left: 2px solid #0084B4;
}

a.advert {
  color: #AA0000;
  font-size: 1.2em;
}

a.advert:hover {
  color: #d40000;
  font-size: 1.2em;
}

/* Smart Phones */
@media screen and (max-width: 480px) {
  .hidden-on-mobile {
    display: none;
  }
}

/* Tablets */
@media screen and (max-width: 1024px) {
  .hidden-on-tablet {
    display: none;
  }
  aside img {
    float: left;
    margin-right: 4%;
  }
  aside div#user_meta {
    padding: 4%;
    padding-bottom: 0px;
  }
  aside div#user_meta h2 {
    margin: 0px;
    padding: 0px;
  }
  aside div#user_meta p {
    margin: 0 0 15px 0;
    font-size: 14px;
  }
  main header p {
    font-size: 10px;
  }
  main header {
    padding: 4%;
    padding-top: 0px;
  }
  main article div.article_title h1 {
    padding-top: 0px;
  }

  aside div#user_meta ul li a {
    font-size: .7em;
  }

  aside div#user_meta ul {
    margin: 0px;
  }
}

/* EVERYTHING ELSE */
@media screen and (min-width: 1024px) {
  aside {
    width: 25%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    border-right: #eeeeee 1px solid;
  }
  aside h2 {
    margin: 10px 0 0 0;
  }
  aside div#user_meta {
    max-width: 240px;
    text-align: center;
  }
  aside div#user_meta ul li {
    display: block;
  }
  main {
    width: 75%;
    position: absolute;
    top: 0;
    left: 25%;
    overflow-x: hidden;
    overflow-y: hidden;
  }
  main article {
    max-width: 100%;
    width: 660px;
  }

  main article div.article_title h1 {
    padding-top: 15px;
  }

  main header form {
    float: right;
  }
}
