body {
      padding-top: 70px;
    }
    table.nostretch {
      width=100%
    }
    .nostretch td {
      class='block'
    }
    .nostretch tr td{
      width:1%;
      white-space:nowrap;
    }

    :target:before {
      content:"";
      display:block;
      height:60px;
      margin:-60px 0 0;
    }

    ol.hierarchy {
      min-height: 40px;
      background-color: #f5f5f5;
      border: 1px solid #e3e3e3;
      border-radius: 3px;
      -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
      box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
    }
    
    .smallcaps {
     font-variant: small-caps;
    }
    .well .sidebar {
     padding: 8px 0
    }
    .sidebar a {
      padding: 0px,0px,0px,0px
    }
    .varlist>tbody>tr>td {
      padding-left: 3px;
      padding-right: 3px;
    }
    .varlist>tbody>tr>td:first-child, .varlist>thead>tr>td:first-child {
      padding-left: 8px;
    }
    .varlist>tbody>td>td:last-child, .varlist>thead>tr>td:last-child {
      padding-right: 8px;
    }

    .highlight pre { 
      overflow-x: auto; 
      overflow-wrap: normal; 
      white-space: pre
    }
    
    /* .hl is for when line numbers are included, .highlight is for all
       other cases. */
    .hl pre { 
      counter-reset: line-numbering;
      overflow-x: auto; 
      overflow-wrap: normal; 
      white-space: pre;
      padding: 0;
      padding-right: 9.5px;
      overflow-y: hidden;
      padding-bottom: 9.5px;
    }
    
    .hl pre a::before {
      content: counter(line-numbering);
      counter-increment: line-numbering;
      padding-right: 0.7em; /* space after numbers */
      margin-top: 4.5em;
      width: 60px;
      text-align: right;
      opacity: 0.7;
      display: inline-block;
      color: #aaa;
      background: #eee;
      margin-right: 10px;
      border-right: 1px solid #ccc;
      -webkit-touch-callout: none;
      -webkit-user-select: none;
      -khtml-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
    }
    
    .hl pre a:first-of-type::before {
      padding-top: 9.5px;
    }
    
    .hl pre a:last-of-type::before {
      padding-bottom: 9.5px;
    }
    
    .hl pre a:only-of-type::before {
      padding: 9.5px;
    }

    .hl pre a {
	display: inline-block;
	height: 4.5em;
	margin: -4.5em 0 0;
    }
    .codesum h3 {
      margin-top: 2px;
      margin-bottom: 2px;
    }
    
    h1.inline, h2.inline, h3.inline {
      display: inline;
    }
    
    .depwarn {
      float: right;
    }
    
    .anchor {
      position: absolute;
      margin: -4.5em;
      visibility:hidden;
    }

    .alert {
      margin-left: 5px;
      margin-right: 5px;
      margin-top: 5px;
    }
    
    div.toc {
      font-size: 14.73px;
      padding-left: 0px;
      padding-right: 0px;
    }
    
    div.toc a {
      padding-left: 20px;
      padding-right: 20px;
      margin-right: 15px;
      padding-top: 5px;
      padding-bottom: 5px;
    }
    
    div.toc li {
      font-size: 0.95em;
      padding-left: 15px;
    }
    
    div.toc li.title {
      font-size: 1em;
    }

    div.toc hr {
      margin-top: 12px;
      margin-bottom: 10px;
    }

    .in-well {
      padding: 0px 0px;
      margin-bottom: 0px;
      float:right;
    }
    
    table tr.submod>td {
      border-top: none;
      font-size: 13.5px;
    }

    .graph-help {
      font-size: 10px;
    }
    
    .depgraph {
      width: 100%;
      max-width: 1140px;
    }
    
    #sidebar a {
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    
    .highlighttable {
      width: auto;
      table-layout: fixed;
    }

    ul.checklist {
      list-style-type: none;
    }

    ul.checklist input[type="checkbox"] {
      margin-left: -20.8px;
      margin-right: 4.55px;
    }

    .gitter-chat-embed {
      z-index: 100000;
    }

table.graph {
    text-align: center;
}


.graph td.root {
  border:2px solid black;
  padding:10px;
}

.graph td.triangle-right:after {
    content: "";
    display: block;
    border-top: 7px solid  transparent;
    border-bottom: 7px solid  transparent;
    border-left: 7px solid black;
}

.graph td.triangle-left:after {
    content: "";
    display: block;
    border-top: 7px solid  transparent;
    border-bottom: 7px solid  transparent;
    border-right: 7px solid black;
}

.graph td.node {
  color: white;
  padding:10px;
  border-style: solid;
  border-width: 3px 0px 3px 0px;
  border-color: white;
}

.graph td.node a{
  color: white;
}

.graph td.dashedText,
.graph td.solidText {
    padding: 0px 10px 0px 10px;
    min-width: 40px;
    color: black;
    border-color: black;
}

.graph td.dashedText {
    border-bottom-style: dashed;
}

.graph td.solidText {
    border-bottom-style: solid;
}

.graph td.dashedBottom,
.graph td.dashedTop,
.graph td.solidTop,
.graph td.solidBottom {
    min-width: 40px;
    color: transparent;
    border-color: black;
}

.graph td.dashedBottom {
    border-bottom-style: dashed;
}

.graph td.dashedTop {
    border-top-style: dashed;
}

.graph td.solidBottom {
    border-bottom-style: solid;
}

.graph td.solidTop {
    border-top-style: solid;
}
