/*** DOCUMENT STRUCTURE: module_template.eex ***
body
  section#sidebar [.in_search]
    h1#full_list_header
    h2#sub_list_header
    div#nav
    div#search [.loading] > input#search_field
    ul#full_list
      li.node [.collpased, .search_uncollapsed, .found]
        a.toggle
        a.object_link
        span.node_name
      li.docs [.collpased, .search_uncollapsed, .found]
        a.toggle
        a.object_link
        span.node_name
        ...
    div.no_results

  section
    div.breadcrumbs
    h1
      small
    ul.summary_links
      li > a
      ...
    section.docstring#moduledoc
    a.view_source

    section.details_list#summary_details
      h1
      table.summary
        tr
          td.summary_signature > a
          td.summary_synopsis > p
        ...

    section.details_list#types_details
      h1
      div.type_detail
        p.typespec > a
      ...

    section.details_list#functions_details
      h1
      section.detail
        div.detail_header
          span.signature > strong
        div.detail_header_links
          span.detail_type
          a.detail_link
          a.to_top_link
          ul.spec
            li > a
            ...
        section.docstring
        a.view_source
      ...

*/

/* DOCUMENT STYLES */
html,
body {
    overflow-x: hidden; /* Prevent scroll on narrow devices */
}

body {
  font: 13px "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
  line-height: 1.618;
}

#content {
  padding: 0 28px 20px 18px;
}

#sidebar a:link,
#sidebar a:visited {
  color: #05a;
  text-decoration: none;
}

#sidebar li {
  color: #888;
  cursor: pointer;
}

#sidebar li:hover {
  background: #ddd;
}

#sidebar span.node_name {
  font-size: 0.8em;
}

#sidebar li {
  white-space: nowrap;
  cursor: default;
}

/* HEADERS */

#sidebar h1 {
  font-size: 1.4em;
  margin: 0;
  padding: 6px 10px 0;
}

#sidebar h2 {
  font-size: 0.9em;
  margin: 0 10px 10px;
  border: 0;
}

/* NAVIGATION BAR */

.nav {
  margin: 0 0 10px 5px;
  font-size: 0.9em;
  color: #aaa;
}

.nav a:link,
.nav a:visited {
  color: #358;
}

.nav a:hover {
  background: transparent;
  color: #5af;
}

.nav span {
  border-left: 1px solid #ccc;
  padding: 0 3px 0 5px;
}

.nav span:first-child {
  border-left: 0;
  border-radius: 3px;
}

.nav span.selected {
  text-decoration: underline;
}

/* SEARCH BOX */

#search {
  font-size: 0.9em;
  color: #888;
  margin: 0 0 6px 5px;
}

#search .col-xs-10 {
  padding: 0;
}

#search .col-xs-2 {
  font-size: 1.6em;
  padding-right: 3px;
}

#search button {
  outline: 0;
  z-index: 0;
}

#search .glyphicon.spinning {
    -moz-animation: spin 1s linear infinite;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite;
}

@-moz-keyframes spin {
    0% { -moz-transform: rotate(0deg); }
    25% { -moz-transform: rotate(90deg); }
    50% { -moz-transform: rotate(180deg); }
    75% { -moz-transform: rotate(270deg); }
    100% { -moz-transform: rotate(360deg); }
}

@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    25% { -webkit-transform: rotate(90deg); }
    50% { -webkit-transform: rotate(180deg); }
    75% { -webkit-transform: rotate(270deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    25% { transform: rotate(90deg); }
    50% { transform: rotate(180deg); }
    75% { transform: rotate(270deg); }
    100% { transform: rotate(360deg); }
}

#no_results {
  margin-left: 7px;
  padding: 7px 12px;
}

/* FULL LIST OF CONTENTS */

#full_list {
  list-style: none;
  margin-left: 0;
  padding: 0;
}

#full_list ul {
  margin: 0;
  padding: 0;
}

#full_list li {
  margin: 0;
  padding: 5px 5px 5px 0;
  font-size: 1.1em;
  list-style: none;
}

#full_list li.node {
  padding-left: 25px;
}

#full_list li.docs {
  padding: 0;
}

#full_list li.docs li {
  padding-left: 25px;
}

#full_list li span.node_name {
  display: none;
}

#full_list .no_padding {
  padding-left: 0;
}

/* while searching */

.in_search #full_list ul {
  margin-left: 0;
}

.in_search #full_list li {
  display: none;
}

.in_search #full_list li.found {
  display: list-item;
}

.in_search #full_list li a.toggle {
  display: none;
}

.in_search #full_list li span.node_name {
  display: block;
}

/* collapsed menu */

#full_list .search_uncollapsed,
#full_list .search_uncollapsed ul {
  display: block !important;
}

#full_list ul.collapsed ul,
#full_list ul.collapsed li,
#full_list li.collapsed ul,
#full_list li.collapsed li {
  display: none;
}

#full_list ul.search_uncollapsed li.found,
#full_list li.search_uncollapsed li.found {
  display: list-item;
}

#full_list li.deprecated {
  text-decoration: line-through;
  font-style: italic;
}

#full_list li.r1 {
  background: #f0f0f0;
}

#full_list li.r2 {
  background: #fafafa;
}

/* link properties */

#full_list li a.toggle {
  display: block;
  float: left;
  position: relative;
  left: -5px;
  top: 4px;
  width: 10px;
  height: 9px;
  margin-left: -10px;
  text-indent: -999px;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left;
  cursor: default;
}

#full_list li.collapsed a.toggle {
  opacity: 0.5;
  cursor: default;
  background-position: top left;
}

#full_list li.clicked {
  background: #05a;
  color: #ccc;
}

#full_list li.clicked a:link,
#full_list li.clicked a:visited {
  color: #eee;
}

#full_list li.clicked a.toggle {
  opacity: 0.5;
  background-position: bottom right;
}

#full_list li.collapsed.clicked a.toggle {
  background-position: top right;
}

/* DOCUMENT STYLES */

a:link,
a:visited {
  color: #05a;
  text-decoration: none;
}

a:hover {
  color: #27c;
}

h1 {
  font-size: 25px;
  border-top: 0;
  margin-top: 0;
  padding-top: 4px;
}

h1 small {
  color: #888;
  font-size: 18px;
}

h2 {
  padding: 0 0 3px 0;
  border-bottom: 1px #aaa solid;
  font-size: 1.4em;
  margin: 1.8em 0 0.5em;
}

section.details_list h1 {
  border-bottom: 1px dotted #aaa;
  padding-top: 35px;
  padding-bottom: 10px;
}

table {
  border: 1px solid #aaa;
  border-collapse: collapse;
  margin: 1em 0;
  empty-cells: show;
}

table th {
  background: #fafafa;
}

table th,
table td {
  border: 1px solid #ddd;
  padding: 0.4em 1em 0.4em 0.4em;
}

table tr:nth-child(odd) {
  background: #f0f0f0;
}

table tr:nth-child(even) {
  background: #fafafa;
}

/* OTHERS */

li.r1 {
  background: #f0f0f0;
}

li.r2 {
  background: #fafafa;
}

div.breadcrumbs {
  padding: 3px 15px 3px 16px;
  background-color: #EEE;
  margin: 0 0 10px -18px;
  line-height: 28px;
  display: block;
}

/* SUMMARY LINKS */

ul.summary_links {
  margin: 0 0 1em 0;
  padding: 0;
}

ul.summary_links li {
  display: inline-block;
  list-style-type: none;
  width: 7em;
  text-align: center;
  background: #f0f0f0;
}

/* EXTERNAL LINKS */
#content a.external span {
  padding-left: 3px;
}

/* DOCSTRING */

section.docstring,
p.docstring {
  margin-right: 0;
}

.docstring h2, .docstring h3, .docstring h4 {
  border: 0;
  margin: 1.8em 0 0.5em;
}

.docstring h3, .docstring h4 {
  font-size: 1.2em;
}

.docstring ul {
  padding-left: 20px;
}

.docstring li > p {
  margin: 0;
}

/* SUMMARY */

div.detail_header_links {
  float: right;
}

a.to_top_link {
  padding-left: 0.3em;
  font-size: 1em;
  font-weight: normal;
}

table.summary {
  border: 0;
  border-collapse: separate;
  width: 100%;
}

table.summary tr:nth-child(odd) {
  background: #f0f0f0;
}

table.summary tr:nth-child(even) {
  background: #fafafa;
}

table.summary tr td {
  border: 0;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

td.summary_signature {
  padding-right: 0.5em;
}

td.summary_synopsis {
  padding-left: 0.5em;
  width: 90%;
}

td.summary_synopsis p {
  margin: 0;
}

/* DETAILS LIST */

.spec,
.typespec {
  font: bold 1em Courier, monospace;
}

ul.spec {
  padding: 6px 10px 6px 25px;
  list-style-type: none;
}

.type_detail {
  margin-top: 15px;
  padding-top: 0;
}

.type_detail > div.typespec_doc {
  margin-left: 3em;
}

.detail {
  border-top: 1px dotted #aaa;
  margin-top: 15px;
  padding-top: 0;
}

.detail:nth-child(2) {
  border: 0;
}

div.detail_header {
  background: #e5e8ff;
  border: 1px solid #d8d8e5;
  border-radius: 3px;
  margin: 18px 0 13px;
  padding: 6px 10px;
}

span.signature {
  font: normal 1.1em Monaco, Consolas, Courier, monospace;
}

span.detail_type {
  font-style: italic;
  font-size: 0.9em;
}

a.detail_link {
  padding-left: 0.3em;
}

/* Media print */

@media print {
  #sidebar {
    display: none;
  }
}

/* CUSTOMIZATION FOR elixir.css */

.hljs,pre {
  background: #fffde8;
}

pre {
  border: #ffe0bb dotted 1px;
}

/*
 * Off Canvas
 * --------------------------------------------------
 */
@media screen and (min-width: 767px) {
  .row-offcanvas {
    position: relative;
  }

  .row-offcanvas-left {
    left: 25%; /* 3 columns */
    margin-left: 0;
  }

  .sidebar-offcanvas {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    overflow: auto;
    border-right: 1px solid #ccc;
  }

  .sidebar-offcanvas.col-sm-3 {
    padding-left: 0;
    padding-right: 0;
  }

  .breadcrumbs button {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .row-offcanvas {
    position: relative;
    -webkit-transition: all .25s ease-out;
         -o-transition: all .25s ease-out;
            transition: all .25s ease-out;
  }

  .row-offcanvas-left {
    left: 0;
  }

  .row-offcanvas-left
  .sidebar-offcanvas {
    left: -50%; /* 6 columns */
  }

  .row-offcanvas-left.active {
    left: 50%; /* 6 columns */
  }

  .sidebar-offcanvas {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    overflow: auto;
    border-right: 1px solid #ccc;
  }

  .sidebar-offcanvas.col-xs-6 {
    padding-left: 30px;
    padding-right: 0;
  }

  .pull-right button {
    margin: 3px 6px 0 0;
  }

  #content.col-xs-12 {
    padding-left: 30px;
  }

  #content.col-xs-12.offcanvas-active {
    padding-left: 15px;
  }

  .breadcrumbs {
    margin: 0 -6px 10px;
  }

  .breadcrumbs button {
    display: inline;
    margin-top: -2px;
  }

}
