/*
 *                        ___
 *                       /\_ \
 *  _____     ___     ___\//\ \      __
 * /\ '__`\  / __`\  / __`\\ \ \   /'__`\
 * \ \ \_\ \/\ \_\ \/\ \_\ \\_\ \_/\  __/
 *  \ \ ,__/\ \____/\ \____//\____\ \____\
 *   \ \ \/  \/___/  \/___/ \/____/\/____/
 *    \ \_\
 *     \/_/
 *
 * Designed, built, and released under MIT license by @mdo. Learn more at
 * https://github.com/poole/poole.
 */


/*
 * Contents
 *
 * Body resets
 * Custom type
 * Messages
 * Container
 * Masthead
 * Posts and pages
 * Pagination
 * Reverse layout
 * Themes
 */


/*
 * Body resets
 *
 * Update the foundational and global aspects of the page.
 */

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

html {
  font-size: 19px;
  line-height: 1.5;
}
@media (min-width: 38em) {
  html {
    font-size: 22px;
  }
}

body {
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  margin-bottom: .5rem;
  color: #313131;
  text-rendering: optimizeLegibility;
  letter-spacing: -1px;
  line-height: 1;
}
h1 {
  font-size: 2rem;
}
h2 {
  margin-top: 2rem;
  font-size: 1.5rem;
}
h3,h4, h5, h6 {
  margin-top: 2rem;
  font-size: 1.25rem;
}
@media (max-width: 48em) {
  h1 {
    font-size: 1.5rem;
  }
}

/* Body text */
p {
  margin-top: 0;
  margin-bottom: 1rem;
}

dt {
  font-weight: bold;
}
dd {
  margin-bottom: .5rem;
}

/* Misc */
hr {
  position: relative;
  margin: 1rem 0;
  border: 1 solid #000;
}

/* Code */
code {
  display: inline;
  white-space: nowrap;
}
pre > code {
  display: block;
  white-space: pre;
}
pre {
  display: block;
  margin: 1rem 0 1rem 0;
  line-height: 1.3;
}

/* Pygments via Jekyll */
.highlight {
  margin-bottom: 1rem;
  border-radius: 4px;
}
.highlight pre {
  margin-bottom: 0;
}

/* Quotes */
blockquote {
  padding: 0 0.5rem;
  margin: 1rem 0;
}
@media (min-width: 30em) {
  blockquote {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
}

img {
  display: block;
  max-width: 100%;
  margin: 0;
  border-radius: 5px;
}

/* Tables */
table {
  margin-bottom: 1rem;
  width: 100%;
  border: 1px solid #e5e5e5;
  border-collapse: collapse;
}
td,
th {
  padding: .25rem .5rem;
  border: 1px solid #e5e5e5;
}
tr.header {
  background-color: #f9f9f9;
  font-weight: bold;
}


/*
 * Custom type
 *
 * Extend paragraphs with `.lead` for larger introductory text.
 */

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}


/*
 * Messages
 *
 * Show alert messages to users. You may add it to single elements like a `<p>`,
 * or to a parent if there are multiple elements to show.
 */

.message {
  margin-bottom: 1rem;
  padding: 1rem;
  background-color: #eee;
  border: #888 1px solid;
  border-radius: 4px;
}


/*
 * Container
 *
 * Center the page content.
 */

.container {
  max-width: 38rem;
  padding-left:  1rem;
  padding-right: 1rem;
  margin-left:  auto;
  margin-right: auto;
}

/*
 *  __                  __
 * /\ \                /\ \
 * \ \ \___   __  __   \_\ \     __
 *  \ \  _ `\/\ \/\ \  /'_` \  /'__`\
 *   \ \ \ \ \ \ \_\ \/\ \_\ \/\  __/
 *    \ \_\ \_\/`____ \ \___,_\ \____\
 *     \/_/\/_/`/___/> \/__,_ /\/____/
 *                /\___/
 *                \/__/
 *
 * Designed, built, and released under MIT license by @mdo. Learn more at
 * https://github.com/poole/hyde.
 */


/*
 * Contents
 *
 * Global resets
 * Sidebar
 * Container
 * Reverse layout
 * Themes
 */


/*
 * Global resets
 *
 * Update the foundational and global aspects of the page.
 */

@media (min-width: 48em) {
  html {
    font-size: 17px;
  }
}
@media (min-width: 58em) {
  html {
    font-size: 21px;
  }
}


/*
 * Sidebar
 *
 * Flexible banner for housing site name, intro, and "footer" content. Starts
 * out above content in mobile and later moves to the side with wider viewports.
 */

.sidebar {
  text-align: center;
  padding: 1rem;
  line-height: 1.3;
}
@media (min-width: 48em) {
  .sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 18rem;
    text-align: left;
  }
}

.sidebar a {
  border-radius: 3px;
  border: 1px solid #eee;
  padding: 4px 8px;
  margin: 5px;
  color: #fff !important;
  font-size: 90%;
  line-height: 2;
}
.sidebar a:hover {
  color: #222 !important;
  background: #eee;
  text-decoration: none;
}

.sidebar-about {
}
.sidebar-about h1 {
  color: #fff;
}

/* Sticky sidebar
 *
 * Add the `sidebar-sticky` class to the sidebar's container to affix it the
 * contents to the bottom of the sidebar in tablets and up.
 */

@media (min-width: 48em) {
  .sidebar-sticky {
    position: absolute;
    right:  1rem;
    bottom: 1rem;
    left:   1rem;
  }
}


/* Container
 *
 * Align the contents of the site above the proper threshold with some margin-fu
 * with a 25%-wide `.sidebar`.
 */

.content {
  padding-top:    2rem;
  padding-bottom: 2rem;
}

@media (min-width: 48em) {
  .content {
    max-width: 38rem;
    margin-left: 20rem;
    margin-right: 2rem;
  }
}

@media (min-width: 64em) {
  .content {
    margin-left: 20rem;
    margin-right: 4rem;
  }
}


/*
 * Reverse layout
 *
 * Flip the orientation of the page by placing the `.sidebar` on the right.
 */

@media (min-width: 48em) {
  .layout-reverse .sidebar {
    left: auto;
    right: 0;
  }
  .layout-reverse .content {
    margin-left: 2rem;
  }
}

@media (min-width: 64em) {
  .layout-reverse .content {
    margin-left: 4rem;
  }
}

.highlight .hll { background-color: #ffc; }
.highlight .c { color: #999; } /* Comment */
.highlight .err { color: #a00; background-color: #faa } /* Error */
.highlight .k { color: #069; } /* Keyword */
.highlight .o { color: #555 } /* Operator */
.highlight .cm { color: #09f; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #099 } /* Comment.Preproc */
.highlight .c1 { color: #999; } /* Comment.Single */
.highlight .cs { color: #999; } /* Comment.Special */
.highlight .gd { background-color: #fcc; border: 1px solid #c00 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #f00 } /* Generic.Error */
.highlight .gh { color: #030; } /* Generic.Heading */
.highlight .gi { background-color: #cfc; border: 1px solid #0c0 } /* Generic.Inserted */
.highlight .go { color: #aaa } /* Generic.Output */
.highlight .gp { color: #009; } /* Generic.Prompt */
.highlight .gs { } /* Generic.Strong */
.highlight .gu { color: #030; } /* Generic.Subheading */
.highlight .gt { color: #9c6 } /* Generic.Traceback */
.highlight .kc { color: #069; } /* Keyword.Constant */
.highlight .kd { color: #069; } /* Keyword.Declaration */
.highlight .kn { color: #069; } /* Keyword.Namespace */
.highlight .kp { color: #069 } /* Keyword.Pseudo */
.highlight .kr { color: #069; } /* Keyword.Reserved */
.highlight .kt { color: #078; } /* Keyword.Type */
.highlight .m { color: #f60 } /* Literal.Number */
.highlight .s { color: #d44950 } /* Literal.String */
.highlight .na { color: #4f9fcf } /* Name.Attribute */
.highlight .nb { color: #366 } /* Name.Builtin */
.highlight .nc { color: #0a8; } /* Name.Class */
.highlight .no { color: #360 } /* Name.Constant */
.highlight .nd { color: #99f } /* Name.Decorator */
.highlight .ni { color: #999; } /* Name.Entity */
.highlight .ne { color: #c00; } /* Name.Exception */
.highlight .nf { color: #c0f } /* Name.Function */
.highlight .nl { color: #99f } /* Name.Label */
.highlight .nn { color: #0cf; } /* Name.Namespace */
.highlight .nt { color: #2f6f9f; } /* Name.Tag */
.highlight .nv { color: #033 } /* Name.Variable */
.highlight .ow { color: #000; } /* Operator.Word */
.highlight .w { color: #bbb } /* Text.Whitespace */
.highlight .mf { color: #f60 } /* Literal.Number.Float */
.highlight .mh { color: #f60 } /* Literal.Number.Hex */
.highlight .mi { color: #f60 } /* Literal.Number.Integer */
.highlight .mo { color: #f60 } /* Literal.Number.Oct */
.highlight .sb { color: #c30 } /* Literal.String.Backtick */
.highlight .sc { color: #c30 } /* Literal.String.Char */
.highlight .sd { color: #c30; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #c30 } /* Literal.String.Double */
.highlight .se { color: #c30; } /* Literal.String.Escape */
.highlight .sh { color: #c30 } /* Literal.String.Heredoc */
.highlight .si { color: #a00 } /* Literal.String.Interpol */
.highlight .sx { color: #c30 } /* Literal.String.Other */
.highlight .sr { color: #3aa } /* Literal.String.Regex */
.highlight .s1 { color: #c30 } /* Literal.String.Single */
.highlight .ss { color: #fc3 } /* Literal.String.Symbol */
.highlight .bp { color: #366 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #033 } /* Name.Variable.Class */
.highlight .vg { color: #033 } /* Name.Variable.Global */
.highlight .vi { color: #033 } /* Name.Variable.Instance */
.highlight .il { color: #f60 } /* Literal.Number.Integer.Long */

.css .o,
.css .o + .nt,
.css .nt + .nt { color: #999; }

html {
  font-family: 'Source Sans Pro', 'source-sans-pro', sans-serif;
}
code, pre {
  font-family: monospace;
}

h1,h2,h3,h4 {
  font-weight: bold;
}
body {
  color: rgb(65,65,65);
}
blockquote {
  border-left: 4px solid #b00a0f;
}

a {
  text-decoration: none;
  color: #925B2A;
}

a:hover {
  border-color: #925B2A;
}

.sidebar {
  color: rgba(255,255,255,.5);
  background: -webkit-linear-gradient(black, #24365F);
  background:    -moz-linear-gradient(black, #24365F);
  background:         linear-gradient(black, #24365F);
}

.header-link {
  opacity: 0;
  -webkit-transition: opacity 0.2s ease-in-out 0.1s;
  -moz-transition: opacity 0.2s ease-in-out 0.1s;
  -ms-transition: opacity 0.2s ease-in-out 0.1s;
}

h1:hover .header-link,
h2:hover .header-link,
h3:hover .header-link,
h4:hover .header-link,
h5:hover .header-link,
h6:hover .header-link {
  opacity: 1;
}

.content img {
  margin: 4px;
  border: #888 1px solid;
  border-radius: 3px;
}

figure {
  margin: 0;
  padding: 0;
}
.thumb {
  margin: 4px;
  max-width: 40%;
  float: right;
}
figcaption {
  margin-left: 8px;
  font-size: 80%;
  font-style: italic;
  color: #444;
}

.blueimp-gallery > .close,
.blueimp-gallery > .title {
  background: black;
  padding: 5px;
  opacity: 1;
}


.tags {
  font-weight: bold;
  margin-bottom: 1rem;
  text-align: right;
}
li > ul, li > ol {
    margin-bottom: 0;
}
ul,ol {
    padding-left: 1.25rem;
}

.hljs, code, pre {
  -moz-box-sizing: border-box;
  background: #F7F7F7;
  font-size: 0.8em;
  overflow: scroll;
  border: #bbb 1px solid;
  border-radius: 3px;
}
pre > code {
  border: none; /* avoid double-borders */
}
code.hljs {
  display: inline;
  padding: 0.2em;
}
.hljs-keyword {
  color: #4c9689;
}
.hljs-label {
  color: #11b;
}

@media (max-width: 48em) {
  .hljs, pre, code {
    -moz-tab-size: 2;
    -o-tab-size: 2;
    tab-size: 2;
  }
}
@media (min-width: 48em) {
  h1,h2,h3 {
    margin-left: -1rem;
  }
}

#toc {
  color: #fff;
  font-size: 0.9rem;
  cursor: pointer;
  text-align: left;
  padding: 0;
  margin: 0;
  border: #bbb 1px solid;
  border-radius: 3px;
}
#toc td {
  border: none;
}
#toc tr:hover, #toc tr.active {
  background: #444;
}

.series {
  border: #bbb 1px solid;
  border-radius: 3px;
  padding: 10px;
  background-color: #fbfbfb;
}
@media (max-width: 48em) {
  .series, .tags {
    float: none;
    clear: both;
  }
}

#search-box {
    font-weight: bold;
}
#search-box td {
    border: none;
}

@media print {
  .no-print, .no-print * {
      display: none !important;
  }

  * {
      text-shadow: none !important;
      background: transparent !important;
      box-shadow: none !important;
      line-height: 1.2;
      font-size: 12px;
  }
  h1 { font-size: 18px; text-align: center; }
  h1 b { font-size: 18px; }
  h2 { font-size: 15px; }
  a,a:visited {
      color: #222;
      font-weight: 100;
      text-decoration: none;
      border-bottom: 1px dotted #222;
  }
  pre, blockquote {
      border: 1px solid #999;
      page-break-inside: avoid;
  }
  thead {
      display: table-header-group;
  }
  tr,img {
      page-break-inside: avoid;
  }
  p,h2,h3 {
      orphans: 3;
      widows: 3
  }
  h1,h2,h3,h4,h5 {
      page-break-after: avoid
  }
  select {
      background: #fff !important
  }
  .table td, .table th {
      background-color: #fff !important
  }
  .table {
      border-collapse: collapse !important
  }
}

