body {
  background-color: #fff;
  padding:50px;
  font: normal 16px/1.5 Verdana, Arial, Helvetica, sans-serif;
  color:#595959;
}

h1, h2, h3, h4, h5, h6, .index-title, .index-subtitle {
  color:#222;
  margin:0 0 20px;
}

p, ul, ol, table, pre, dl {
  margin:0 0 20px;
}

h1, h2, h3, .index-title, .index-subtitle {
  line-height:1.1;
}

h1, .index-title {
  font-size:28px;
  font-weight: 500;
}

h2 {
  color:#393939;
  font-weight: 500;
}

h3, h4, h5, h6, .index-subtitle {
  color:#494949;
  font-weight: 500;
}

.index-subtitle {
  font-size: 1.17em;
}
  
a {
  color:#39c;
  text-decoration:none;
}

a:hover {
  color:#069;
}

a small {
  font-size:11px;
  color:#777;
  margin-top:-0.3em;
  display:block;
}

a:hover small {
  color:#777;
}

.wrapper {
  /* width:860px; */
  width: 100%;
  margin:0 auto;
}

blockquote {
  border-left:1px solid #e5e5e5;
  margin:0;
  padding:0 0 0 20px;
  font-style:italic;
}

code, pre {
  font-family:Monaco, Bitstream Vera Sans Mono, Lucida Console, Terminal, Consolas, Liberation Mono, DejaVu Sans Mono, Courier New, monospace;
  color:#333;
}

pre {
  font-size: 15px;
  padding:8px 15px;
  background: #f8f8f8;
  border-radius:5px;
  border:1px solid #e5e5e5;
  overflow-x: auto;
}

a code {
  color: inherit;
}

table {
  width:100%;
  border-collapse:collapse;
}

th, td {
  text-align:left;
  padding:5px 10px;
  border-bottom:1px solid #e5e5e5;
}

dt {
  color:#444;
  font-weight:500;
}

th {
  color:#444;
}

img {
  max-width:100%;
}

header {
  /* width:270px; */
  width:calc(29% - 50px);
  height:calc(100% - 160px);
  overflow: auto;
  float:left;
  position:fixed;
  -webkit-font-smoothing:subpixel-antialiased;
}

header li {
    list-style-type: disc;
}

header ul {
    padding-left: 1rem;
}

header ul > li {
    margin-left: 1rem;
}

ul.no-bullets {
    padding-left: 0;
}

ul.no-bullets > li {
    list-style: none;
}

strong {
  color:#222;
  font-weight:500;
}

section {
  width:70%;
  max-width:54em;
  float:right;
  padding-bottom:50px;
}

small {
  font-size:11px;
}

hr {
  border:0;
  background:#e5e5e5;
  height:1px;
  margin:0 0 20px;
}

footer {
  /* width:270px; */
  width:calc(24% - 50px);
  height:40px;
  float:left;
  position:fixed;
  padding:30px 0;
  bottom:0px;
  background-color:white;
  -webkit-font-smoothing:subpixel-antialiased;
}

.post-date {
    float: right;
}

.part-list-title {
    margin-bottom:5px;
}

.part-entry {
    margin-bottom:5px;
}

#search {

  --pagefind-ui-font: inherit;
  --pagefind-ui-border-radius: 4px;

  position: absolute;
  right: 1em;
  top: 1em;

  .pagefind-ui__form {
    width: 20em;
    margin-left: auto;
    
    &::before {
      top: calc(17px * var(--pagefind-ui-scale));      
    }
  }
    
  .pagefind-ui__search-input {
    font-weight: inherit;
    height: calc(48px * var(--pagefind-ui-scale));
  }

  .pagefind-ui__search-clear {
    font-weight: inherit;
    height: calc(42px * var(--pagefind-ui-scale));
  }
  
  .pagefind-ui__drawer {
    position: absolute;
    right: 0;
    width: 40em;
    background-color: white;
    border: solid var(--pagefind-ui-border-width) var(--pagefind-ui-border);
    padding: 0 1em 1em 1em;
  }
  
  .pagefind-ui__message {
    padding-top: 0;
  }

  .pagefind-ui__result {
    padding: 0;
  }
  
  .pagefind-ui__result-title {
    font-weight: inherit;
  }
}

@media print, screen and (max-width: 960px) {

  div.wrapper {
    width:auto;
    margin:0;
  }

  header, section, footer {
    float:none;
    position:static;
    width:auto;
  }

  header {
    padding-right:320px;
  }

  section {
    border:1px solid #e5e5e5;
    border-width:1px 0;
    padding:20px 0;
    margin:0 0 20px;
  }

  header a small {
    display:inline;
  }
}

@media print, screen and (max-width: 720px) {
  body {
    word-wrap:break-word;
  }

  header {
    padding:0;
  }

  pre, code {
    word-wrap:normal;
  }
}

@media print, screen and (max-width: 480px) {
  body {
    padding:15px;
  }

}

@media print {
  body {
    padding:0.4in;
    font-size:12pt;
    color:#444;
  }
}
