/* Copyright (c) 2020 Graphcore Ltd. All rights reserved.
   Override the sphinx-readthedocs-theme settings */

   /* GC FONTS */
@font-face {
  font-family: 'Graphik';
  src: url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Regular-Web.eot");
  src: url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Regular-Web.eot?#iefix") format("embedded-opentype"), url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Regular-Web.woff2") format("woff2"), url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Regular-Web.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Graphik';
  src: url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Medium-Web.eot");
  src: url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Medium-Web.eot?#iefix") format("embedded-opentype"), url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Medium-Web.woff2") format("woff2"), url("https://www.graphcore.ai/hubfs/assets/fonts/Graphik-Medium-Web.woff") format("woff");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'GC Quantized';
  src: url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.eot');
  src: url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.eot?#iefix') format('embedded-opentype'),
      url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.woff2') format('woff2'),
      url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.woff') format('woff'),
      url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.ttf') format('truetype'),
      url('https://www.graphcore.ai/hubfs/assets/fonts/Caslons Egyptian Pentagram Reg.svg#Caslons Egyptian Pentagram Reg') format('svg');
  font-weight: normal;
  font-style: normal;
}

/*  improve table layout, allowing cells to wrap */
.rst-content table.docutils col {
  width: auto;
}
.wy-table-responsive table td, .wy-table-responsive table th,
.rst-content .wy-table-responsive table td, .rst-content .wy-table-responsive table th {
  white-space: normal;
  word-wrap: break-word;
  border: solid 2px #e1e4e5;
}

th.head p {
  margin-bottom: 0;
}

/* make image and table captions a sensible size and format */

.wy-table-responsive table.docutils caption,
.rst-content div.figure p.caption {
  font-size: 16px;
  color: #565656;
  font-weight: 700;
  font-style: normal;
  font-family: "Graphik", "Lato", "Helvetica Neue", Arial, sans-serif;
  text-align: center;
}
.rst-content div.figure p.caption {
  margin-top: 20px;
}

/* change background colour for code samples */

div.highlight,
.rst-content pre.literal-block,
.rst-content pre.literal-block div[class^='highlight'],
.rst-content div[class^='highlight'],
.rst-content div[class^='highlight'] pre,
.rst-content div[class^='highlight'] div[class^='highlight'],
.rst-content div[class^='highlight'] td.code {
  background-color: white ;
  color: #292c31;
}

/* remove ugly top border from definition lists */
.rst-content dl > dt {
  border-top: none !important;
  /*
  border-bottom: thin solid #565656 !important;
  color: #565656 !important;
  background-color: #FCFCFC !important;
  */
}

/* TABLET NAV BG */
.wy-nav-top {
  background: #292c31;
}

/* Style nav menu in Graphcore colours and fonts */

.wy-menu-vertical li.toctree-l1 span.toctree-expand,
.wy-menu-vertical li span.toctree-expand,
.wy-menu-vertical li.on a span.toctree-expand,
.wy-menu-vertical li a.current span.toctree-expand {
  color: white;
  visibility: visible;
  display: inline-block;
  mix-blend-mode: difference;
}

.fa-home:before, .icon-home:before {
  display: none;
}

.btn {
  font-family: "Graphik", "Lato", "proxima-nova", "Helvetica Neue", Arial, sans-serif;
}

input[type="button"], input[type="reset"], input[type="submit"],
input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="date"], input[type="month"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="week"], input[type="number"], input[type="search"], input[type="tel"], input[type="color"] {
  font-family: "Graphik", "Lato", "proxima-nova", "Helvetica Neue", Arial, sans-serif;
}

textarea {
  font-family: "Graphik", "Lato", "proxima-nova", "Helvetica Neue", Arial, sans-serif;
}

a:link {
  color: #ff6f79;
}

a:visited {
  color: #ff6f79;
}

a:hover {
  color: #fbc3aa;
}

a.icon,
a.icon:visited,
a.icon:hover,
a.icon-home,
a.icon-home:hover,
a.icon-home:visited {
  color: #FAF8F9;
  font-weight: bold;
}

/* Next + Previous btns */
a.btn.btn-neutral {
  border: none;
  box-shadow: none;
  background: #FAF8F9 !important;
  color: #292c31 !important;
  border-radius: 0;
  line-height: 1;
  min-width: 150px;
  padding: 11px;
  text-align: left;
  font-weight: bold;
  border: 1px solid #eee;
}
a.btn.btn-neutral.float-left {
text-align: right;
}
a.btn.btn-neutral > span.fa.fa-arrow-circle-right {
display: inline-block;
float: right;
}
a.btn.btn-neutral > span.fa.fa-arrow-circle-left {
  display: inline-block;
  float: left;
}

body {
  font-family: "Graphik", "Lato", "Helvetica Neue", Arial, sans-serif;
  color: #565656;
}

h1, h2, h3, h4, h5, h6, legend {
  font-family: "Graphik", "Lato", "Helvetica Neue", Arial, sans-serif;
  color: #292c31;
}

h1 {
  text-transform: uppercase;
  font-family: "GC Quantized", "Roboto Slab", "ff-tisa-web-pro", "Georgia", Arial, sans-serif;
}

/* inline code samples */
.rst-content tt.literal, .rst-content tt.literal,
.rst-content pre.literal-block, .rst-content .linenodiv pre,
code, .rst-content tt, .rst-content code,
.rst-content pre, .rst-content kbd, .rst-content samp,
footer span.commit code, footer span.commit .rst-content tt, .rst-content footer span.commit tt {
  font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;
  color: inherit;
  font-size: 16px;
  background: inherit;
}
.rst-content code.docutils.literal  {
  color: #292c31;
  font-size: 14px;
  white-space:normal;
  line-height: 24px;
  margin-left: 2px;
  margin-right: 2px;
}
.rst-content code.docutils.literal > span.pre {
  font-weight: normal;
}
.rst-content kbd {
  border: thin solid #edf0f2 !important;
  border-radius: 6px;
  padding-left: 3px !important;
  padding-right: 3px !important;
}

/* Highlighting links in nav menu */
.wy-menu-vertical li.toctree-l1 >a,
.wy-menu-vertical li.toctree-l1 >a:visited,
.wy-menu-vertical .local-toc ul > li > a {
  color: #FAF8F9;
}

.wy-menu-vertical div.local-toc > ul > li.current > a,
.wy-menu-vertical div.local-toc > ul > li > a.current,
.wy-menu-vertical div.local-toc > ul > li > a.reference.internal.current,
.wy-menu-vertical li.toctree-l1.current a,
.wy-menu-vertical li a {
    color: #292c31;
    padding-top: 11px;
    padding-bottom: 11px;
    line-height: 1.2;
}

.wy-menu-vertical li.current,
.wy-menu-vertical li.current > ul > li > a,
.wy-menu-vertical li > a.current {
  color: #292c31;
  background: #faf8f9;
}

.toctree-l1.current > a.reference.internal {
  border-color: transparent;
  border-top: none !important;
  border-bottom: none !important;
  border-left: 5px solid #ff6f79;
  padding-left: 19px;
}

.wy-menu-vertical li.current a {
  border-right: none;
}
.wy-menu-vertical a {
padding: 12px 14px;
padding-left: 24px;
}

.wy-menu-vertical .local-toc ul > li:only-child > a {
  color: #FAF8F9;
}

.wy-menu-vertical a:hover {
  background: #ff6f79 !important;
  color: #fff  !important;
}

/* Hide nav menu if there is only a single item */
.wy-menu-vertical > .local-toc > ul:only-child > li:only-child > a:only-child  {
  display: none !important;
}

.wy-menu-vertical li.toctree-l2.current li.toctree-l3>a, .wy-menu-vertical li.toctree-l3.current li.toctree-l4>a {
  padding-top: 12px;
  padding-bottom: 12px;
}
.wy-menu,
.wy-menu-vertical,
.wy-nav-side,
.wy-side-nav-search {
  background-color: #292c31;
}

.wy-side-nav-search {
  padding: .809em 0 0;
  margin-bottom: 10px;
}

.wy-side-nav-search>a {
  padding: 15px 24px;
  text-align: left;
}

.wy-side-nav-search > a > img {
  padding: 5px 0;
}

.wy-side-nav-search>div.version {
  color: #FAF8F9;
  text-align: left;
  padding: 5px 24px 8px;
  font-size: smaller;
}

.wy-side-nav-search .wy-dropdown>a.icon img.logo, .wy-side-nav-search>a.icon img.logo {
    margin-top: 0;
}

form#rtd-search-form {
  padding: 0;
}

form#rtd-search-form > input:first-child{
  border-radius: 0;
  border-color: #eee;
  height: 42px;
  font-size: 15px;
  padding-left: 22px;
}

.rst-content .sidebar .sidebar-title {
  font-family: "GC Quantized", "Roboto Slab", "ff-tisa-web-pro", "Georgia", Arial, sans-serif;
}

.rst-content .footnote-reference, .rst-content .citation-reference {
  vertical-align: super;
}

.rst-content table.docutils.citation, .rst-content table.docutils.footnote {
  color: #999;
}

.wy-breadcrumbs {
  display: none;
}

.rst-content .section ul li > p {
  line-height: 20px;
}
.rst-content .section ul li > p:last-child,
.rst-content .section p {
  margin-bottom: 16px;
}
.rst-content .section ul li > p:first-child {
  margin-bottom: 0px;
}

footer {
  margin-top: 60px;
}
footer p {
  color: #565656;
  font-size: 15px;
}

@media screen and (min-width: 1100px) {
  .wy-nav-content {
    min-height: 100vh;
  }
}
/* Hide the link to GitHub */
div.rst-other-versions dl:last-of-type {
  display: none;
  visibility: hidden;
}
.rst-versions .rst-current-version {
  color: #ff6f79;
}
.rst-versions.shift-up {
  overflow-y: auto;
}

div[role="contentinfo"] {
  display: none;
}

dl.cpp.enum,
dl.cpp.struct,
dl.cpp.class {
    border-left: thin solid #edf0f2;
    /*
    border-left: thin solid #565656;
    border-bottom: thin solid #565656;
    border-top: thin solid #565656;
    */
}
dl.cpp > dl > dt,
dl.cpp > dt {
    border-top: none !important;
    /*
    color: #565656 !important;
    background-color: #edf0f2 !important;
    padding-left: 6px !important;
    border-left: none !important;
    border-bottom: none !important;
    */
}
dl.cpp dt {
    display: inline-block !important;
}
/*
dl.cpp dl.simple > dt {
    border-left: none !important;
    border-bottom: none !important;
    background-color: #FCFCFC !important;
}
dl.cpp.enum > dt,
dl.cpp.struct > dt,
dl.cpp.class > dt {
    width: 100% !important;
    border-bottom: none !important;
}
*/
table.genindextable > tbody > tr > td > ul > li {
  font-size: 75%;
}

.rst-content table.docutils tr > td {
  padding-left: 4px;
  padding-right: 4px;
}

.homelink {
    margin-bottom: 15px;
    padding-top: 12px;
    margin-left: 24px;
    margin-right: 24px;
    text-align: left;
    font-weight: bold;
}
.homelink {
  margin-bottom: 15px;
  padding-top: 12px;
  margin-left: 24px;
  margin-right: 24px;
  text-align: left;
  font-weight: bold;
}


div.admonition {
  padding: 12px;
  border: thin solid #ff6f79;
  color: #565656 !important;
  background-color: #FCFCFC  !important;
}
div.admonition > p.admonition-title {
  margin: 0;
  padding: 0 0 5px;
  color: #565656  !important;
  background-color: #FCFCFC  !important;
}
div.admonition > p.admonition-title::before {
  color: #ff6f79  !important;
}

div.admonition.note {
  border: thin solid #565656;
}
div.admonition.note > p.admonition-title::before {
  color: #565656 !important;
}

div.admonition.seealso {
  border: none;
  padding: 0;
  margin: 0;
  color: #565656;
  background-color: inherit;
}
div.admonition.seealso > p.admonition-title {
  font-size: 18px;
  color: #565656;
  background-color: inherit;
  padding: 0;
  margin: 0;
  margin-bottom: 16px;
}
div.admonition.seealso > p.admonition-title::before {
  content:none;
}
div.admonition.seealso > p:not(.admonition-title) {
  display:list-item;
  margin-left: 24px;
  line-height: 24px;
  list-style-position: outside;
  list-style-type: disc;
}
div.admonition.seealso > dl > dt {
  width:fit-content;
  margin-left: 24px;
}
div.admonition.seealso > dl > dd {
  margin-left: 48px;
}
