
/*-------------------- basic html elements and classes --------------------*/
html, body {
    margin: 0;
    padding: 0;
    background-color: #ffffff;
}

body {
    display: block;
}

body, div {
    font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial;
    font-size: 16px;
    color: #000;
}

p {
    font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial;
    color: #000;
    font-size: 16px;
    line-height: 1.5em;
}

#language-filter {
    float: right;
    margin-top: 5px;
}

li, dt a, dt span {
    font-size: 16px;
    line-height: 1.5em;
}

/* /\*Content paragraph space*\/ */
/* div.content p { */
/*     margin-top: 20px; */
/* } */

/*------------------ Headings -------------------*/
h1, h2, h3 {
    font-family: "Open Sans", "Lucida Grande", "Helvetica Neue", Arial;
    margin-top: 18px;
    margin-bottom: 18px;
    color: #444;
}

h1 {
    margin-top: 0px;
    margin-bottom: 25px;
    font-size: 28px;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 20px;
}

h4 {
    font-size: 16px;
}

img {
    border-style: hidden;
    border-width: 0px 0px 0px 0px;
    border-color: #ffffff;
    /* white  */
    padding: 0px 0px 0px 0px;
    margin: 0px 0px 0px 0px;
}

.topictitle {
    font-size: 24px;
    font-weight: bold;
    color: #e47911;
    padding: 0 0 14px 0;
}

.section:before {
    content: " ";
    display: block;
    height: 60px; /* fixed header height*/
    margin: -60px 0 0; /* negative fixed header height */
}

/*-----------------------nav bar-----------------------*/
.navbar {
    background-color:#0079b2;
    opacity: 0.9;
    border: 0px;
    height: 60px;
    margin-bottom: 0px;
}

.navbar .container {
    position: fixed;
    left: 20px;
}

@media screen and (max-width: 510px) {
    .navbar {
        height: 60px;
    }
}

#header-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-box-lines: single;
    -moz-box-lines: single;
    -webkit-flex-flow: row nowrap;
    -ms-flex-flow: row nowrap;
    flex-flow: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center
}

@media screen and(max-width: 768 px) {
    #header-inner {
        -webkit-box-pack: center;
       -ms-flex-pack: center;
       -webkit-justify-content: center;
        justify-content: center
    }
}

#logo-wrap {
    -webkit-box-flex: 1;
   padding-top: 0;
    margin-top: 0;
    width: 125px;
}

@media screen and (max-width: 405px) {
    #logo-wrap {
        margin-left: -25px;
    }
}

#logo {
    width: 150px;
    display: block;
    float: left;
    height: 60px;
    padding: 10px 0 0 0;
}

#logo > img {
  display: block;
  width: 110px;
}

.nav-bar {
    display: block;
    -webkit-box-flex: 1;
    flex: 1 auto;
    position: relative;
    top: -12px;
    white-space: nowrap;
}

.main-nav-link {
    color: #fff;
    text-decoration: none;
    line-height: 50px;
    opacity: .7;
    -webkit-transition: .2s;
    transition: .2s;
    font-family: Lato, "Helvetica Neue", Helvetica, Arial, sans-serif;
    display: inline-block;
    padding: 0 15px;
}

.main-nav-link:hover {
    opacity: 1;
    color: #fff;
    text-decoration: none;
}

#dropdown-menu-position-anchor {
    position: relative;
}

#package-dropdown-menu {
    top: 36px;
    border-radius: 4px;
    padding: 0;
}

#package-dropdown-menu > li > a {
    color: #0079b2;
    padding: 6px 16px;

}

#search-input-wrap {
    display: block;
    position: fixed;
    top: 15px;
    right: 40px;
    width: 140px;
}

#search-input-wrap ul {
    list-style-type: none;
}

#searchIcon {
    display: none;
    position: fixed;
    top: 20px;
    right: 20px;
    color: white;
}

.searchBox {
    position: absolute;
    top: 0;
    left: 0;
    width: 140px;
    background: #87CEFA;
    border-radius: 5px;
}

.searchBox input {
    background: #87CEFA;
}

.searchBox input::placeholder {
    font-weight: 200;
}

.searchBoxNorm input::placeholder {
    color: white;
}

.searchBoxExp input::placeholder {
    color: dimgray;
}

.searchBtn {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
}

@media screen and (max-width: 510px) {
    #search-input-wrap {
        display: none;
        right: 40px;
        margin-left: -100px;
    }

    #searchIcon {
        display: block;
    }
}

@media screen and (min-width: 511px) {
    #search-input-wrap {
        display: block !important;
    }
}

#lang-select-wrap {
    display: block;
    position: fixed;
    right: 120px;
    top: 5px
}

#lang-select-label {
    color: #fff;
    opacity: .7;
    font-family: Lato, Helvetica Neue, Helvetica, Arial, sans-serif;
    line-height: 50px
}

#lang-select-label span {
    padding-left: 8px
}

#lang-select-label i {
    opacity: .7
}

#lang-select {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-appearance: menulist-button;
    font-size: inherit
}

.github-btn { border: 0; overflow: hidden }

/*burger icon*/
div .burgerIcon {
    font-size: 25px;
    position: fixed;
    right: 155px;
    top: 10px;
    display: none
}

div .burgerIcon a {
    color: white;
}

@media screen and (max-width: 405px) {
    div .burgerIcon {
        margin-left: -25px;
    }
}

/*burger menu*/
#burgerMenu, #plusMenu {
    list-style-type: none;
    margin-top: 10px;
    padding: 0;
    background-color: white;
    list-style-position: inside;
    min-width: 100px;
}

#burgerMenu a, #plusMenu a {
    display: table-cell;
    font-size: 15px;
    color: #0079b2;
    vertical-align: middle;
    height: 30px;
    padding-left: 5px;
    width: 108px;
    max-width: 200px
}

#burgerMenu li, #plusMenu li {
    height: 30px;
    list-style-position: inside;
}

li.dropdown-submenu ul.dropdown-menu {
    min-width: 75px;
    width: 75px
}

li.dropdown-submenu ul.dropdown-menu li {
    height: auto
}

li.dropdown-submenu ul.dropdown-menu a {
    height: auto
}

/*dropdown submenu*/
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}

.dropdown-submenu:hover>.dropdown-menu {
    display: block;
}

.dropdown-submenu>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #ccc;
    margin-top: 5px;
    margin-right: -10px;
}

.dropdown-submenu:hover>a:after {
    border-left-color: #fff;
}

.dropdown-submenu.pull-left {
    float: none;
}

.dropdown-submenu.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px
}

/*Plus icon*/
.plusIcon {
    display: none;
    position: fixed;
    top: 20px;
    right: 175px;
    width: 30px;
}

.glyphicon-plus {
    color: white;
}

@media screen and (max-width:600px) {
    div .plusIcon, .nav-bar {
        display: none !important;
    }

    div .burgerIcon {
        display: block;
        position: fixed;
        top: 10px;
        left: 160px;
    }
}
/*--------------------------banner---------------------------*/
#splash{
    padding:60px 0 0 0;
    background-color:#0079b2;
    /* background-image:url(../img/bg.jpg); */
    background-size:cover;
    background-attachment:fixed;
    color:#fff;
    text-align:center
}

#splash #banner {
    text-align: center
}

#splash #banner-title {
    padding: 20px 0 10px 0;
    font-size: 40px;
    line-height: 1.15;
    font-weight: 300;
    font-family: Lato, Helvetica Neue, Helvetica, Arial, sans-serif;
    color: #fff;
}

@media screen and (min-width:769px) {
    #splash #banner-title {
        padding-top: 100px;
    }
}

@media screen and (max-width:768px) {
    #splash #banner-title {
            font-size: 30px;
            padding: 60px 30px 10px 30px;
    }
}

@media screen and (max-width:510px) {
    #splash #banner-title {
            padding-top: 60px;
    }
}

#splash h1{
    font-size: 40px;
    margin-bottom: 20px;
}

#splash #social{
    margin:2em 0 4em 0;
}

#splash #get_start {
    margin:2em 0
}

#splash #get_start_btn {
    border: 1.8px solid #FFFFFF;
    border-radius: 2px;
    color: #FFFFFF;
    display: inline-block;
    font-size: 22px;
    font-family: Helvetica, Helvetica Neue, Arial, sans-serif;
    padding: 8px 20px;
    -webkit-transition: .2s;
    transition: .2s;
}

#splash #get_start_btn:hover {
    background-color: #FFFFFF;
    color: #0079b2;
    opacity: 0.9;
    text-decoration: none;
}

/*------------------------index page section----------------------------*/
.section-tout {
    padding:3em 0 3em;
    border-bottom:1px solid rgba(0,0,0,.05);
    background-color:#eaf1f1
}

.section-tout .row div {
    height: 140px;
}

.section-tout .fa{
    margin-right:.5em
}

.section-tout h3{
    font-size:20px;
    color: #0079b2;
}

.section-tout p {
    margin-bottom:2em
}

.section-inst{
    padding:3em 0 3em;
    border-bottom:1px solid rgba(0,0,0,.05);

    text-align:center
}

.section-inst p {
    margin-bottom:2em
}

@media (min-width: 1200px) {
    .section-inst .row div.clear {
        clear: both;
    }
}

@media (max-width: 1199px) {
    .section-inst .row div.smallClear {
        clear: both;
    }
}

.section-inst img {
    -webkit-filter: grayscale(90%); /* Chrome, Safari, Opera */
    filter: grayscale(90%);
    margin-bottom:2em
}
.section-inst img:hover {
    -webkit-filter: grayscale(0%); /* Chrome, Safari, Opera */
    filter: grayscale(0%);
}

.footer{
    padding-top: 40px;
}
.footer li{
    float:right;
    margin-right:1.5em;
    margin-bottom:1.5em
}
.footer p{
    font-size: 15px;
    color: #888;
    clear:right;
    margin-bottom:0
}

/*------------------content----------------------*/
div.navbar + div.container {
    padding-top: 65px;
}

div.content {
    position: absolute;
    left: 320px;
    right: 200px;
    margin-right: 5%;
    padding: 40px 0 0 0;
    z-index: -1;
}

@media (max-width: 999px) {
    div.content {
        left: 0;
        margin-left: 5%;
        right: 0;
        overflow-x: auto;
    }
}

/*------------------sidebar-----------------------*/
div.sphinxsidebar {
    position: fixed;
    background-color: white;
    height: calc(100% - 80px);
    display: none;
    visibility: hidden;
    overflow: auto;
}

div.leftsidebar {
    left: 30px;
    width: 250px;
    padding: 40px 0 15px 0;
    margin: 0;
}

div.rightsidebar {
    right: 20px;
    width: 200px;
    padding: 40px 0 15px 0;
}

div.sphinxsidebar ul {
    padding: 0;
    list-style-type: none !important;
}

div.sphinxsidebar a {
    color: black;
}

div.rightsidebar div.sphinxsidebarwrapper > ul {
    padding-left: 15px;
}

div.sphinxsidebar li {
    padding-top: 5px;
    margin-bottom: 5px;
    margin-left: -10px;
    font: normal 12px "Open Sans", "Lucida Grande", "Helvetica Neue", Arial;
}

div.leftsidebar > div.sphinxsidebarwrapper {
    padding: 10px 10px 10px 10px;
    background: #f2f2f2;
}

div.leftsidebar > div.sphinxsidebarwrapper > ul > li {
    margin-left: 20px;
}

div.rightsidebar > div.sphinxsidebarwrapper > ul {
    margin-left: 2px;
    border-left: 4px solid #337ab7;
}

div.rightsidebar > div.sphinxsidebarwrapper > ul > li {
    margin-left: 5px;
}

div.sphinxsidebar li.opened .tocToggle:before {
    font-family: 'FontAwesome';
    content: "\f146";
    margin: 0 5px 0 -15px;
    color: #337ab7;
}

div.sphinxsidebar li.closed .tocToggle:before {
    font-family: 'FontAwesome';
    content: "\f0fe";
    margin: 0 5px 0 -15px;
    color: #337ab7;
}

div.sphinxsidebar li.leaf .tocToggle:before {
    font-family: 'FontAwesome';
    content: "\f096";
    margin: 0 5px 0 -15px;
    color: #337ab7;
}

@media (min-width:1000px) {
    div.sphinxsidebar {display: block}
}

div.sphinxsidebarwrapper h3 {
    padding-top: 0;
}

/*-------------------- table styles --------------------*/
table {
  margin-bottom: 10px;
  border-collapse: collapse; }

table p {
  font-size: 16px; }

td p:first-child {
  margin-top: 0px; }

td p:last-child {
  margin-bottom: 0px; }

td ul:first-child {
  margin-top: 0px;
  /*  new 8/22/07 */ }

td ol:first-child {
  margin-top: 0px;
  /*  new 8/22/07 */ }

div.table {
  position: relative; }

div.informaltable {
  position: relative; }

.table-expand-icon {
  position: absolute;
  right: -20px;
  font-size: 24px;
  background: #cccccc;
  float: right;
  bottom: 0;
  cursor: pointer; }

.table-contents table {
  border-top: 1px solid #cccccc;
  /* medium gray  */
  border-left: 1px solid #cccccc;
  /* medium gray  */
  border-bottom: 0px;
  border-right: 0px;
  border-spacing: 0px; }

.table-contents td {
  font-size: 16px;
  padding: 5px 5px 5px 5px;
  border-bottom: 1px solid #cccccc;
  /* medium gray  */
  border-right: 1px solid #cccccc;
  /* medium gray  */
  border-left: 0px;
  border-top: 0px;
  vertical-align: top; }

.table-contents th {
  font-size: 16px;
  padding: 5px 5px 5px 5px;
  border-bottom: 1px solid #cccccc;
  /* medium gray  */
  border-right: 1px solid #cccccc;
  /* medium gray  */
  border-left: 0px;
  border-top: 0px;
  vertical-align: top;
  background-color: #eeeeee;
  /* light gray  */
  color: #333333;
  /* Dark gray  */
  font-size: 16px;
  font-weight: bold;
  text-align: left; }

/*----------------API class and function formatting---------------------*/
dl > dt:before {
    content: " ";
    display: block;
    height: 70px; /* fixed header height*/
    margin-top: -70px; /* negative fixed header height */
}

p.rubric {
    margin-top: 10px;
}

dt:target, .highlighted {
    background-color: #fff;
    border-bottom: 3px solid #c7254e;
    margin-bottom: -3px;
}

/*----------------Model zoo page style------------------*/
#mxnet-model-zoo table, #mxnet-model-zoo td, #mxnet-model-zoo th {
    border: 1px solid lightgray;
}

#mxnet-model-zoo table {
    margin-top: 30px;
    border-collapse: collapse;
}

#mxnet-model-zoo th {
    vertical-align: middle;
    text-align: center;
    height: 50px;
}

#mxnet-model-zoo td {
    vertical-align: middle;
    height: 50px;
    padding: 10px;
}

#mxnet-model-zoo tr:nth-child(even) {
    background-color: #f2f2f2;
}

/*--------- note block -----------*/
div.admonition {
    padding: 15px;
    background-color: #f6f8fa;
    border: 1px solid rgb(204, 204, 204);
    border-radius: 4px;
}

p.admonition-title {
    color: #187dbb;
}

/*------------ code block ------------*/
pre {
    background-color: #f6f8fa;
}

/*-------------API table---------------------*/
table.docutils {
    margin-top: 15px;
}

table.docutils td, table.docutils th {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-left: 10px;
    padding-right: 10px;
    /* border-top: 0; */
    /* border-left: 0; */
    /* border-right: 0; */
    border: 1px solid rgb(223, 226, 229);
}

table.docutils tr:nth-child(even) {
    background-color: #f6f8fa;
}

/*---------------getting started homepage---------*/

#lang-demo ul {
    margin-top: 20px;
    margin-bottom: 15px;
}

.option-title {
    width: 100px;
    float: left;
    clear: none;
    text-align: right;
    font-size: 14px;
    padding-top: 7px;
    padding-bottom: 8px;
    padding-right: 10px;
    font-weight: bold;
}
.option-row {
    padding-bottom: 8px;
}

.install-inst {
}

.btn-default:hover, .btn-default:focus, .btn-default:active,
.btn-default.active.focus, .btn-default.active:focus, .btn-default.active:hover,
.btn-default:active.focus, .btn-default:active:focus, .btn-default:active:hover,
.btn-default.active, .open>.dropdown-toggle.btn-default,
.btn-default:active:focus {
    color: #fff;
    background-color: #0079b2;
    border-color: #0079b2;
}

.btn-default:hover a {
    color: #fff;
}

#setup-options {
    margin-top: 15px;
    margin-bottom: 15px;
    margin-left: 30px;
}

.opt-group {
    margin-top: 10px;
    margin-bottom: 10px;
}

/*----------------Copy code button------------------------*/
.copy-btn {
    display: none;
    position: absolute;
    right: 0;
    width: 40px;
    height: 38px;
}


/*----------------Search function style------------------*/
#searchPage {
    width: 60%;
    margin-left: 20%;
}

#search-preview {
    display: none;
    background-color: white;
    margin-top: -10px;
    border: solid;
    border-width: 1px;
    border-color: #87CEFA;
    width: 100%;
}


#search-preview p {
    color: dimgray;
    padding: 5px 20px 0 20px;
}

#search-preview li {
    padding-top: 10px;
}

#search-preview ul {
    padding-left: 20px;
    padding-right: 20px;
}

#search-preview hr {
    margin: 10px 0 10px 0;
    border-top: 1px solid dimgray;
}

#search-results ul {
    list-style-type: none;
}

@media screen and (max-width: 510px) {
    #search-preview {
        position: fixed;
        left: 0;
        width: 100vw;
    }

    #search-preview li {
        font-size: 12px;
    }
}

/* enable absolute positioning */
.inner-addon {
    position: relative;
}

/* style icon */
.inner-addon .glyphicon {
    position: absolute;
    padding: 10px;
    pointer-events: none;
}

/* align icon */
.left-addon .glyphicon  {
    left:  0px;
}
.right-addon .glyphicon {
    right: 0px;
}

/* add padding  */
.left-addon input  {
    padding-left:  40px;
}
.right-addon input {
    padding-right: 40px;
}

.form-group .glyphicon-search {
    color: white;
}

/*----------------------Get started page----------------------------*/
#why-mxnet img {
    position: relative;
    width: 60%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%);
}

