/*
 * Sphinx doesn't have support for section dividers like we do in
 * MkDocs, this styles the section titles in the nav
 *
 * https://github.com/mkdocs/mkdocs/issues/175
 */
.wy-menu-vertical {
    background: #062a6f;
}

.wy-menu-vertical span {
    line-height: 18px;
    padding: 0.4045em 1.618em;
    display: block;
    position: relative;
    font-size: 90%;
    color: #838383;
}

.wy-menu-vertical .subnav a {
    padding: 0.4045em 2.427em;
}

/*
 * Long navigations run off the bottom of the screen as the nav
 * area doesn't scroll.
 *
 * https://github.com/mkdocs/mkdocs/pull/202
 *
 * Builds upon pull 202 https://github.com/mkdocs/mkdocs/pull/202
 * to make toc scrollbar end before navigations buttons to not be overlapping.
 */
.wy-nav-side {
    height: calc(100% - 45px);
    overflow-y: auto;
    min-height: 0;
    background: #062a6f;
}

.rst-versions{
    border-top: 0;
    height: 45px;
}

@media screen and (max-width: 768px) {
    .wy-nav-side {
        height: 100%;
    }
}

/*
 * readthedocs theme hides nav items when the window height is
 * too small to contain them.
 *
 * https://github.com/mkdocs/mkdocs/issues/#348
 */
.wy-menu-vertical ul {
  margin-bottom: 2em;
}

/*
 * Wrap inline code samples otherwise they shoot of the side and
 * can't be read at all.
 *
 * https://github.com/mkdocs/mkdocs/issues/313
 * https://github.com/mkdocs/mkdocs/issues/233
 * https://github.com/mkdocs/mkdocs/issues/834
 */
code {
    white-space: pre-wrap;
    word-wrap: break-word;
    padding: 2px 5px;
}

/**
 * Make code blocks display as blocks and give them the appropriate
 * font size and padding.
 *
 * https://github.com/mkdocs/mkdocs/issues/855
 * https://github.com/mkdocs/mkdocs/issues/834
 * https://github.com/mkdocs/mkdocs/issues/233
 */
pre code {
  white-space: pre;
  word-wrap: normal;
  display: block;
  padding: 12px;
  font-size: 16px;
}

/*
 * Fix link colors when the link text is inline code.
 *
 * https://github.com/mkdocs/mkdocs/issues/718
 */
a code {
    color: #2980B9;
}
a:hover code {
    color: #3091d1;
}
a:visited code {
    color: #9B59B6;
}

/*
 * The CSS classes from highlight.js seem to clash with the
 * ReadTheDocs theme causing some code to be incorrectly made
 * bold and italic.
 *
 * https://github.com/mkdocs/mkdocs/issues/411
 */
pre .cs, pre .c {
    font-weight: inherit;
    font-style: inherit;
}

/*
 * Fix some issues with the theme and non-highlighted code
 * samples. Without and highlighting styles attached the
 * formatting is broken.
 *
 * https://github.com/mkdocs/mkdocs/issues/319
 */
.no-highlight {
  display: block;
  padding: 0.5em;
  color: #333;
}


/*
 * Additions specific to the search functionality provided by MkDocs
 */

.search-results {
    margin-top: 23px;
}

.search-results article {
    border-top: 1px solid #E1E4E5;
    padding-top: 24px;
}

.search-results article:first-child {
    border-top: none;
}

form .search-query {
    width: 100%;
    border-radius: 50px;
    padding: 6px 12px;  /* csslint allow: box-model */
    border-color: #D1D4D5;
}

.wy-menu-vertical li ul {
    display: inherit;
}

.wy-menu-vertical li ul.subnav ul.subnav{
    padding-left: 1em;
}

.wy-menu-vertical .subnav li.current > a {
    padding-left: 2.42em;
}
.wy-menu-vertical .subnav li.current > ul li a {
    padding-left: 3.23em;
}

/*
 * Improve inline code blocks within admonitions.
 *
 * https://github.com/mkdocs/mkdocs/issues/656
 */
 .admonition code {
  color: #404040;
  border: 1px solid #c7c9cb;
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: #f8fbfd;
  background: rgba(255, 255, 255, 0.7);
}

/*
 * Account for wide tables which go off the side.
 * Override borders to avoid wierdness on narrow tables.
 *
 * https://github.com/mkdocs/mkdocs/issues/834
 * https://github.com/mkdocs/mkdocs/pull/1034
 */
.rst-content .section .docutils {
    width: 100%;
    overflow: auto;
    display: block;
    border: none;
}

td, th {
   border: 1px solid #e1e4e5 !important; /* csslint allow: important */
   border-collapse: collapse;
}

/* User modifications */

h1 {
   background-color: #17204f;
   color: #05b583;
   padding: 5px 10px;
}

.rst-content .section ol p, .rst-content .section ul p {
   margin-bottom: 0;
}

.code-block {
    display: none;
}

.code-block-btn {
	box-shadow:inset 0px 1px 0px 0px #ffffff;
	background:linear-gradient(to bottom, #ededed 5%, #dfdfdf 100%);
	background-color:#ededed;
	border-radius:6px;
	border:1px solid #dcdcdc;
	display:inline-block;
	cursor:pointer;
	color:#777777;
	font-family:Arial;
	font-size:15px;
	font-weight:bold;
	padding:6px 24px;
	text-decoration:none;
    text-shadow:0px 1px 0px #ffffff;
    margin-bottom: 16px;
}
.code-block-btn:hover {
	background:linear-gradient(to bottom, #dfdfdf 5%, #ededed 100%);
	background-color:#dfdfdf;
}
.code-block-btn:active {
	position:relative;
	top:1px;
}

.wy-side-nav-search {
    background-color: #2965c1;
    margin-bottom: 0 !important;
}

.rst-content img {
    margin: 16px 0;
}

.code-tabs {
    overflow: auto;
}

.code-tab {
    padding: 8px 16px;
    float: left;
    width: auto;
    border: none;
    display: block;
    outline: 0;
    transition: 400ms;
}

.code-tab:hover {
    background-color: #e6e6e6;
}

pre {
    margin: 16px 0;
}

.active {
    display: block;
    background-color: #8c8c8c;
}

.active:hover {
    background-color: #8c8c8c;
}

.example-block {
    background-color:#FFFFD6;
    overflow: auto;
    padding: .5em 1em;
    margin-bottom: 16px;
    border: 3px solid #bbb;
}

.example-block b {
    color: #662802;
}

.example-block p {
    line-height: 32px;
}

.wy-plain-list-disc, .rst-content .section ul, .rst-content .toctree-wrapper ul, article ul {
    margin-bottom: 16px;
}

.wy-plain-list-disc li, .rst-content .section ul li, .rst-content .section ol li, .rst-content .toctree-wrapper ul li, article ul li {
    line-height: 32px;
}

h2 {
    margin: 16px 0;
    padding: 5px 10px;
    background-color: #a4ccf7;
    color: #424242;
}

.avl_tree_rotation_example {
    background-color: black;
    color: white;
    margin: 10px 0px;
    width: 100%;
}

.avl_tree_rotation_example img {
    width: 97%;
    margin: 13px;
}

#avl_tree_balancing {
    border: 2px solid black;
    background-color: #efe556;
}

.comparison {
    background-color: black;
    color: white;
    padding: 16px;
    margin-bottom: 16px;
}

.example-block ul.alphabet-list li {
    list-style-type: lower-alpha !important;
}

.toctree-l1 {
    cursor: pointer;
}

/*.toctree-l1:hover {
    background-color: #4e4a4a;
}*/

.hljs {
    line-height: 1.6em;
}

.wy-nav-content-wrap {
    background: url('../img/material-page-bg.png');
    background-size: cover;
    background-attachment: fixed;
}

.wy-nav-content {
    background: #fff;
    min-height: 100vh !important;
}

/* Example block styles */
.example-block {
    padding: 10px;
    background-color: #e8c98e;
    border: 2px solid #000;
}

.example-block .example-description {
    font-weight: 800;
    color: #633718;
}

p {
    line-height: 32px;
}

.tabs {
    padding: 20px 0;
    text-align: center;
}

.tab {
    display: block;
    width: 50%;
    background: #ddac39;
    border: 2px solid #000;
    transition: 500ms;
    padding: 10px;
    float: left;
    cursor: pointer;
    font-weight: 800;
}

.tab:hover {
    opacity: 0.8;
}

.c-second {
    display: none;
}

.content {
    margin-top: 45px;
}

.rst-content .section ol.alphabetical-list li {
    list-style-type: lower-alpha !important;
}

.exercise-template-link-box {
    background: #c8e2ff;
    padding: 32px;
    text-align: center;
    margin: 30px 0;
    font-weight: 800;
    border: 2px solid #8e8e8e;
}