body {
  font-family: "Source Sans Pro", "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #34495e;
  background-color: white;
  margin: 0;
}

body.docs {
  padding-top: 91px;
}

@media screen and (max-width: 900px) {
  body.docs {
    padding-top: 0;
  }
}

a {
  text-decoration: none;
  color: #34495e;
}

img {
  border: none;
}

h1, h2, h3, h4, strong {
  font-weight: 600;
  color: #2c3e50;
}

code, pre {
  font-family: "Roboto Mono", Monaco, courier, monospace;
  font-size: 0.8em;
  background-color: #f8f8f8;
  -webkit-font-smoothing: initial;
  -moz-osx-font-smoothing: initial;
}

code {
  color: #e96900;
  padding: 3px 5px;
  margin: 0 2px;
  border-radius: 2px;
  white-space: nowrap;
}

em {
  color: #7f8c8d;
}

p {
  word-spacing: 0.05em;
}

a.button {
  padding: 0.75em 2em;
  border-radius: 2em;
  display: inline-block;
  color: #fff;
  background-color: #f04f35;
  transition: all 0.15s ease;
  box-sizing: border-box;
  border: 1px solid #f04f35;
}

a.button.white {
  background-color: #fff;
  color: #ef4023;
}

.highlight {
  overflow-x: auto;
  background-color: #f8f8f8;
  padding: 0.4em 0 0;
  line-height: 1.1em;
  border-radius: 2px;
  position: relative;
}

.highlight table,
.highlight tr,
.highlight td {
  width: 100%;
  border-collapse: collapse;
  padding: 0;
  margin: 0;
}

.highlight .gutter {
  width: 1.5em;
}

.highlight .code pre {
  padding: 1.2em 1.4em;
  line-height: 1.5em;
  margin: 0;
}

.highlight .code .line {
  min-height: 1.5em;
}

.highlight.html .code:before,
.highlight.js .code:before,
.highlight.bash .code:before,
.highlight.css .code:before {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  text-align: right;
  font-size: 0.75em;
  padding: 5px 10px 0;
  line-height: 15px;
  height: 15px;
  font-weight: 600;
}

.highlight.html .code:before {
  content: "HTML";
}

.highlight.js .code:before {
  content: "JS";
}

.highlight.bash .code:before {
  content: "Shell";
}

.highlight.css .code:before {
  content: "CSS";
}

#main {
  position: relative;
  z-index: 1;
  padding: 0 60px 30px;
  overflow-x: hidden;
}

#nav .nav-link {
  cursor: pointer;
}

#nav .nav-dropdown-container .nav-link:hover:not(.current) {
  border-bottom: none;
}

#nav .nav-dropdown-container:hover .nav-dropdown {
  display: block;
}

#nav .nav-dropdown-container.language,
#nav .nav-dropdown-container.ecosystem {
  margin-left: 20px;
}

#nav .nav-dropdown-container .arrow {
  pointer-events: none;
}

#nav .nav-dropdown {
  display: none;
  box-sizing: border-box;
  max-height: calc(100vh - 91px);
  overflow-y: auto;
  position: absolute;
  top: 100%;
  right: -15px;
  background-color: #fff;
  padding: 10px 0;
  border: 1px solid #ddd;
  border-bottom-color: #ccc;
  text-align: left;
  border-radius: 4px;
  white-space: nowrap;
}

#nav .nav-dropdown li {
  line-height: 1.8em;
  margin: 0;
  display: block;
}

#nav .nav-dropdown li > ul {
  padding-left: 0;
}

#nav .nav-dropdown li:first-child h4 {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

#nav .nav-dropdown a,
#nav .nav-dropdown h4 {
  padding: 0 24px 0 20px;
}

#nav .nav-dropdown h4 {
  margin: 0.45em 0 0;
  padding-top: 0.45em;
  border-top: 1px solid #eee;
}

#nav .nav-dropdown a {
  color: #3d5267;
  font-size: 0.9em;
  display: block;
}

#nav .nav-dropdown a:hover {
  color: #ef4023;
}

#nav .arrow {
  display: inline-block;
  vertical-align: middle;
  margin-top: -1px;
  margin-left: 6px;
  margin-right: -14px;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid #ccc;
}

sup.beta.beta {
  font-size: 0.6em;
  margin-left: 0.7em;
  text-transform: uppercase;
  opacity: 0.6;
}

details {
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  margin-bottom: 10px;
}

details summary {
  cursor: pointer;
  font-weight: bold;
}

details[open] summary {
  margin-bottom: 10px;
}

.gutter pre {
  color: #999;
}

pre {
  color: #525252;
}

pre .function .keyword,
pre .constant {
  color: #0092db;
}

pre .keyword,
pre .attribute {
  color: #e96900;
}

pre .number,
pre .literal {
  color: #ae81ff;
}

pre .tag,
pre .tag .title,
pre .change,
pre .winutils,
pre .flow,
pre .lisp .title,
pre .clojure .built_in,
pre .nginx .title,
pre .tex .special {
  color: #2973b7;
}

pre .class .title {
  color: #fff;
}

pre .symbol,
pre .symbol .string,
pre .value,
pre .regexp {
  color: #ef4023;
}

pre .title {
  color: #a6e22e;
}

pre .tag .value,
pre .string,
pre .subst,
pre .haskell .type,
pre .preprocessor,
pre .ruby .class .parent,
pre .built_in,
pre .sql .aggregate,
pre .django .template_tag,
pre .django .variable,
pre .smalltalk .class,
pre .javadoc,
pre .django .filter .argument,
pre .smalltalk .localvars,
pre .smalltalk .array,
pre .attr_selector,
pre .pseudo,
pre .addition,
pre .stream,
pre .envvar,
pre .apache .tag,
pre .apache .cbracket,
pre .tex .command,
pre .prompt {
  color: #ef4023;
}

pre .comment,
pre .java .annotation,
pre .python .decorator,
pre .template_comment,
pre .pi,
pre .doctype,
pre .deletion,
pre .shebang,
pre .apache .sqbracket,
pre .tex .formula {
  color: #b3b3b3;
}

pre .coffeescript .javascript,
pre .javascript .xml,
pre .tex .formula,
pre .xml .javascript,
pre .xml .vbscript,
pre .xml .css,
pre .xml .cdata {
  opacity: 0.5;
}
