/* 123 override table width restrictions */

@import url("./css/reset.css");
@import url("./css/fonts.css");

body {
   background: #fff;
   color: #2C2C2C;
   font-family: "Adobe Clean" !important;
   font-size: 18px;
   font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
   color: #4B4B4B;
   font-family: inherit;
   font-weight: bold;
}

h1 { 
   border-bottom: 2px solid #2d2d2d;
   font-size: 28px; 
   margin-bottom: 20px;
   padding-bottom: 10px;
}

h2 {
   font-size: 24px;
   margin-bottom: 20px;
}

h3 {
   font-size: 22px;
   margin-bottom: 20px;
}

p {
   font-size: inherit;
   line-height: 1.4;
   margin-bottom: 20px;
}

/* ----------------------------
 * BUTTONS
 * ---------------------------- */
.btn,
.btn:active {
   border: 2px solid #505050;
   border-radius: 20px;
   box-shadow: none;
   cursor: pointer;
   display: inline-block;
   font-weight: normal;
   line-height: normal;
   outline: none;
   padding: 6px 15px;
   text-align: center;
   text-decoration: none;
   -webkit-user-drag: none;
   -webkit-user-select: none;
   -moz-user-select: none;
   -ms-user-select: none;
   user-select: none;
   vertical-align: middle;
   white-space: nowrap;
   zoom: 1;
}

.btn-neutral,
.btn-neutral:hover {
   background: #fff !important;
   font-size: 14px;
}

.btn-neutral span { display: none !important; }

/* ----------------------------
 * HEADER
 * ---------------------------- */
img {
   border: 1px solid #EAEAEA;
}

img.logo {
   margin: 14px 0 0 0;
   padding: 0;
   box-shadow: none;
   border: none;
   border-radius: 0;
   float: right;
   height: 23px;
   width: 26px;
}

img.logonav {
   margin: 0 10px 0 -10px;
   padding: 0;
   box-shadow: none;
   border: none;
   border-radius: 0;
   float: left;
   height: 23px;
   width: 26px;
}

a.topbarlink {
   font-weight: bold;
   padding-right: 60px;
   font-variant: small-caps;
   font-size: 90%;
   color: black;
}

.fixedbar {
   background-color: #F8F8F8;
   padding: 24px;
   margin-top: 0;
   height: 80px;
   position: fixed;
   width: 100%;
   margin-bottom: 40px;
}

td > p {
   font-size: 90%;
}

th > p {
   padding-bottom: 0;
   margin-bottom: 0;
}

.pre {
   font-size: 120%;
}

.topleft {
   background: #fff;
   color: #2d2d2d;
   padding: 24px;
   font-size: 20px;
   font-weight: bold;
}

.topleft::before {
   background: url("./images/icon-line.jpg") top right no-repeat;
   content: "";
   height: 70px;
   position: absolute;
   right: 0;
   top: 0;
   width: 1px;
}

/* ----------------------------
 * BREADCRUMBS
 * ---------------------------- */
#homebreadcrumb a:link, 
#homebreadcrumb a:visited, 
#homebreadcrumb a:hover, 
#homebreadcrumb a:focus, 
#homebreadcrumb a:active {
   color: #6e6e6e !important;
}

.wy-breadcrumbs li {
   font-size: 0.85rem;
}

.wy-breadcrumbs li.pagebreadcrumb { 
   color: #2C2C2C;
   font-weight: bold;
   margin-left: 0.15rem;
}

.wy-breadcrumbs li a:first-child {
   color: #707070;
}

.wy-nav-top {
   padding: 0.5rem 1.5rem;
}

.wy-nav-top, 
.wy-nav-top a {
   color: #2d2d2d;
   font-size: 20px;
   line-height: 2;
   margin-bottom: 0;
}

/* SEARCH */
.wy-side-nav-search {
   background: #f5f5f5;
   margin-bottom: 0;
   max-width: 800px;
   padding: 1.5rem;
   width: 100%;
}

#rtd-search-form { margin: 0; position: relative; }

#rtd-search-form::after {
   background: url("./images/icon-search.png") no-repeat;
   content: "";
   height: 18px;
   position: absolute;
   right: 0.75rem;
   top: 0.70rem;
   width: 18px;
   z-index: 99999;
}

.wy-side-nav-search input[type=text] {
   border: 1px solid #D3D3D3;
   border-radius: 4px;
   box-shadow: none;
   color: #AEAEAE;
   font-size: 20px;
   padding: 10px;
   position: relative;
   width: 100%;
}

.wy-side-nav-search > a {
   background: none;
   color: #2d2d2d;
   display: block;
   font-size: 24px;
   font-weight: bold;
   margin-bottom: 20px;
   text-align: left;
}

.wy-side-nav-content, 
.wy-nav-content-wrap, 
.wy-body-for-nav, 
.rst-content, 
.wy-nav-content, 
.wy-nav-top, 
.wy-nav-top a {
   background-color: white !important;
   background: white !important;

}

.rst-content .section ul,
.rst-content .section ol, 
.rst-content ol.arabic {
   line-height: 1.6;
   margin-left: 0;
}

.rst-content .section ul li,
.rst-content .section ol li, 
.rst-content ol.arabic li {
   margin-left: 19px;
}

.accordionheading {
   font-family: inherit;
}

.section {
   margin-top: 1.5rem; 
}

.section p:last-child {
   margin-bottom: 0;
}

#scroll {
   background: #1473E6;
   border-radius: 3rem;
   bottom: 1.5rem;
   box-shadow: 0 3px 0.75rem rgba(0,0,0,0.2);
   cursor: pointer;
   display: none;
   height: 3.25rem;
   position: fixed;
   right: 1.5rem;
   width: 3.25rem;
   z-index: 9;
}

#scroll span {
   background: url("./images/icon-back-to-top-arrow.png");
   background-repeat: no-repeat;
   display: block;
   height: 24px;
   left: 50%;
   margin-left: -12px;
   margin-top: -12px;
   position: absolute;
   top: 50%;
   width: 24px;
}

#scroll:hover {
   background-color: #e74c3c;
   opacity: 1;
   filter: "alpha(opacity=100)";
   -ms-filter: "alpha(opacity=100)";
}

#dialog-link {
   padding: .4em 1em .4em 20px;
   text-decoration: none;
   position: relative;
}

#dialog-link span.ui-icon {
   margin: 0 5px 0 0;
   position: absolute;
   left: .2em;
   top: 50%;
   margin-top: -8px;
}

#icons {
   margin: 0;
   padding: 0;
}

#icons li {
   margin: 2px;
   position: relative;
   padding: 4px 0;
   cursor: pointer;
   float: left;
   list-style: none;
}

#icons span.ui-icon {
   float: left;
   margin: 0 4px;
}

.fakewindowcontain .ui-widget-overlay {
   position: absolute;
}

.ui-icon.ui-icon-triangle-1-e {
   background: url("./images/icon-right-arrow-blue.png");
   background-repeat: no-repeat;
   height: 20px;
   position: relative;
   top: 2px;
   width: 20px;
}

.ui-icon.ui-icon-triangle-1-s {
   background: url("./images/icon-down-arrow-blue.png");
   background-repeat: no-repeat;
   height: 20px;
   left: -2px;
   position: relative;
   top: 5px;
   width: 20px;
}

select {
   width: 200px;
}

p > strong { font-weight: bold; }

p > img {
   border: none;
   box-shadow: none;
   display: inline;
   margin: 0;
   padding: 0;
   position: relative;
   top: 5px;
}

li > img {
   margin: 0;
   padding: 0;
   box-shadow: none;
   border: none;
   display: inline;
}

td > img {
   border: 0;
   clear: both;
   margin: 0;
   padding: 0;
   box-shadow: none;
}

.rst-breadcrumbs-buttons {
   margin: 0.75rem 0;
}

.ui-widget-content,
.ui-accordion .ui-accordion-header {
   border: 1px solid #EAEAEA;
   border-radius: 0 !important;
   font-size: 20px;
}

.ui-accordion .ui-accordion-header {
   background: #F7F7F7;
   font-weight: bold;
   padding: 0.75rem 20px;
}

.ui-accordion .ui-accordion-header.ui-accordion-header-active {
   background: #fff;
   border-bottom: 0;
   padding-bottom: 0;
}

.ui-widget-content {
   font-weight: normal;
}

.ui-widget-content a {
   color: #1473E6;
   display: block;
}

.ui-accordion .ui-accordion-content {
   line-height: 2.25;
   padding: 1rem 3rem;
}

/* ----------------------------
 * SIDE NAVIGATION 
 * ---------------------------- */
.wy-menu-vertical {
   background: #fff !important;

}

.wy-menu-vertical li {
   border-top: 1px solid #EAEAEA;
}

.wy-menu-vertical li:last-child {
   border-bottom: 1px solid #EAEAEA;
}

.wy-menu-vertical li ul li,
.wy-menu-vertical li ul li ul li {
   border-bottom: none !important;
}

/* LEVEL 1 */
.wy-menu-vertical li a {
   background: #fff !important;
   border-right: 1px solid #eaeaea !important;
   color: #2c2c2c;
   font-size: 18px;
}

.wy-menu-vertical li a,
.wy-menu-vertical li.current a {
   font-weight: bold !important;
   padding: 20px 17px;
}

.wy-menu-vertical li a:active,
.wy-menu-vertical li.current a {
   background: #8E8E8E !important;
   border-right: 1px solid #eaeaea !important;
   color: #fff !important;
   font-weight: bold !important;
}

.wy-menu-vertical li.toctree-l1.current > a {
   border-top: none !important;
}

.wy-menu-vertical li > a span.toctree-expand {
   float: right;
}

.wy-menu-vertical li > a span.toctree-expand:before {
   background: url("./images/icon-plus.png");
   background-repeat: no-repeat;
   content: "";
   height: 20px;
   margin-left: 30px;
   width: 20px;
}

.wy-menu-vertical li.current > a span.toctree-expand::before {
   background: url("./images/icon-minus.png");
   background-repeat: no-repeat;
   content: "";
   height: 4px;
   position: relative;
   top: -4px;
   width: 20px;
}

/* LEVEL 2 */
.wy-menu-vertical li.current ul li a {
   background: #fff !important;
   color: #1473E6 !important;
   font-weight: normal !important;
   line-height: 1.3;
}

.wy-menu-vertical li.current ul li > a span {
   float: left;
   margin-right: -5px;
}

.wy-menu-vertical li.current ul li > a span.highlighted { float: none; margin-right: 0; }

.wy-menu-vertical li.current ul li > a span.toctree-expand::before{
   background: url("./images/icon-right-arrow-blue.png");
   background-repeat: no-repeat;
   content: "";
   height: 24px;
   left: -3px;
   margin-left: 0;
   position: relative;
   top: 4px;
   width: 24px;
}

.wy-menu-vertical li.current ul li.current a {
   font-weight: bold !important;
}

.wy-menu-vertical li.current ul li.current > a span.toctree-expand::before{
   background: url("./images/icon-down-arrow-blue.png");
   background-repeat: no-repeat;
   content: "";
   height: 24px;
   left: -3px;
   position: relative;
   top: 8px;
   width: 24px;
}

.wy-menu-vertical li ul li {
   border-top: none !important;
}

.wy-menu-vertical li ul li a,
.wy-menu-vertical li.current ul li.current a {
   background: #fff !important;
   color: #1473E6 !important;
   padding: 10px 20px 10px 40px !important;
}

/* LEVEL 3 */
.wy-menu-vertical li ul li ul li a {
   background: #fff !important;
   color: #1473E6 !important;
}

.wy-menu-vertical li ul li ul li a,
.wy-menu-vertical li.current ul li.current ul li a {
   font-size: 18px;
   font-weight: normal;
   line-height: 1.4;
   padding: 7px 20px 7px 55px !important;
}

.wy-menu-vertical li.current ul li.current ul li a {
   font-weight: normal !important;
}

.wy-side-scroll {
   background-color: #ffffff;
   max-width: 300px;
   overflow-y: scroll;
   scrollbar-width: none; /* Firefox */
   -ms-overflow-style: none;  /* Internet Explorer 10+ */
}

.wy-side-scroll::-webkit-scrollbar { /* WebKit */
    width: 0;
    height: 0;
}

.wy-nav-side {
   background-color: white;
}

.fa-bars:before {
   background: url("./images/icon-menu.png") no-repeat;
   content: "";
   height: 20px;
   width: 20px;
}

/* .wy-menu-vertical { overflow-y: scroll; box-sizing: content-box;}  removes scrollbar . . . */

.wy-menu-vertical li a,
   .wy-menu-vertical li.current ul li a,
   .wy-menu-vertical li.current ul li.current ul li a { font-size: 18px; }

.highlighted {
   background: #f1c40f;
   box-shadow: 0 0 0 2px #f1c40f;
   display: inline;
   font-weight: bold;
}

@media screen and (min-width: 767px) {
   .wy-table-responsive table td {
      /* !important prevents the common CSS stylesheets from overriding
         this as on RTD they are loaded after this stylesheet */
      white-space: normal !important;
   }
   .wy-table-responsive {
      overflow: visible !important;
   }
}

@media screen and (max-width: 768px) {
   .wy-menu-vertical {
      margin-top: 2px;
      width: 100% !important;
   }
   .wy-nav-side {
      background-color: white;
      border-right: none;
   }
   .wy-side-scroll {
      max-width: 100%;
   }
}

@media screen and (max-width: 400px) {
   .topleft { font-size: 15px; }
}