/* GENERAL 
------------------------------ */ 
body {
  font-family:  Gill Sans MT;
  line-height: 1.5715;
  color: rgba(0,0,0,0.65);

  z-index:2;
  position:relative;
  overflow: visible;
  cursor:default;
}

*:not(input.field) {
  -webkit-touch-callout:none;
  -webkit-user-select:none;
  -khtml-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  -webkit-text-size-adjust:none;
  -ms-text-size-adjust:none;
  -moz-text-size-adjust:none;
  text-size-adjust:none;
}


/* STRUCTURE
------------------------------ */ 
.container-fluid {
  z-index:-1;
  position:relative;
}

.container_temp {
  padding-right:2%;
  padding-left:2%;
  position:relative;
  z-index:-1;
}

#viz {
  z-index:3;
  position:relative;
}

#viz1 {
  z-index:3;
  position:relative;
}

#viz2 {
  z-index:1;
  position:relative;
}

#viz3 {
  z-index:0;
  position:relative;
}

#viz4 {
  z-index:1;
  position:relative;
}

.rowtop {
  background: #a9a9a914;;
  padding-right:2%;
  padding-left:2%;
  position:relative;
  z-index:10;
}

.rowbottom {
  background: #f7f6f3;
  padding-right:2%;
  position:relative;
  padding-left:2%;
  z-index:-4;
  margin-top:5%;
}

.h-100 {
  margin-bottom:2%;
}

.col {
  padding-right: 10px;
  padding-left: 10px;
}

/* SVGs & CO 
------------------------------ */ 
#svg_top_container {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  position:relative;
  z-index:10;
}

#svg_top {
  font-size: 25px;
  font-weight: bold;
  margin-top:2%;
  margin-bottom:1%;
  position:relative;
  z-index:100;
  overflow: visible;
}

#svg_top_small {
  font-size: 16px;
  font-weight: normal;
  z-index:0;
}

#svg_map_container {
  font-size: 21px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  vertical-align: top;
  margin-top: 4%;
  width: 100%;
  z-index:0;
}

#svg_map_small {
  font-size: 16px;
  font-weight: normal;
}

#svg_graph_container {
  font-size: 21px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: 100%;
  margin-top: 4%;
  z-index:0;
}

#svg_graph_small {
  font-size: 16px;
  font-weight: normal;
}

#svg_graph_container_mini {
  font-size: 21px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: 100%;
  z-index:0;
  padding-bottom:15px;
}

#zoomlink {
  font-size: 16px;
  font-weight: normal;
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: 100%;
  z-index:0;
  text-decoration: underline;
}

#svg_middle_container {
  font-size: 16px;
  display: inline-block;
  vertical-align: top;
  width: 100%;
  z-index:0;
}

#svg_bottom_container {
  font-size: 21px;
  font-weight: bold;
  opacity: 0.75;
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: 100%;
  margin-top: 0%
}

#svg_bottom_big{
  margin-top: 0%;
  font-size: 21px;
  font-weight: bold;
   line-height:1.4;
}

#svg_bottom_small {
  font-size: 16px;
  font-weight: normal;
  z-index:0;
  line-height:1.4;
}

/* BUTTONS & OTHER INPUTS
------------------------------ */ 
.btn-group-xsss > .btn, .btn-xsss {
  font-size: 16px;
  line-height: .7;
  padding: 4px 5px;
  border-radius: 0.8rem;
  border:white;
  background: black;
  color: white;
  position: initial;
}

.tooltip {
  font-size: 12px;
  line-height: 1.5715;
  font-family:  Gill Sans MT;

}

input:focus,
select:focus,
textarea:focus,
button:focus,
*:focus {
    outline: none !important;
    box-shadow: none !important;
}

.dropdown-menu-101 {
  border-bottom-width: 2px;
  border-left-width: 2px;
  border-right-width: 2px;
}


.btn-group-xss-mod > .btn, .btn-xss-mod {
  font-size: 16px;
  line-height: .7;
  padding: 6px 5px;
  border-radius: .5rem;
  border-color:#14151536;
  background: white;
  color: rgba(0,0,0,0.65) !important;
  width:150px;
  position: initial;
}

.btn-group-xss-mini > .btn, .btn-xss-mini {
  font-size: 16px;
  line-height: .7;
  padding: 5px 10px;
  border-radius: .5rem;
  border:white;
  background: #02124c;
  color: white;
  position: initial;
}

.btn-group-xs > .btn, .btn-xs {
  font-size: 16px;
  line-height: .7;
  padding: 5px 15px;
  border-radius: .5rem;
  border-color:#14151536;
  background: #f7f6f3;
  width:100%;
  z-index:1000;
  position: initial;
}

.bs-searchbox .form-control {
    margin-bottom: 0;
    width: 100%;
    float: none;
    height:23px;
}

.btn-group-xs-mobile > .btn, .btn-xs-mobile {
  font-size: 16px;
  line-height: .0.5;
  padding: 0px 10px;
  border-radius: .5rem;
  border-color:#14151536;
  background: #f7f6f3;
  width:100%;
  z-index:1000;
  position: initial;
}

.btn-group-xs-info > .btn, .btn-xs-info {
  font-size: 16px;
  line-height: .7;
  padding: 2px 2px;
  border-radius: 1rem;
  border-color:#ffffff00;
  background:#ffffff00;
  position: initial;
}

.btn-group-xs-info:active  > .btn, .btn-xs-info {
  font-size: 16px;
  line-height: .7;
  padding: 2px 2px;
  border-radius: 1rem;
  border-color:#ffffff00;
  background:#ffffff00;
  position: initial;
}

#button_mode_101 {
  font-size: 16px;
  line-height: 1.8;
  padding: 0px 4px;
  border-radius: .5rem;
  border-color:#14151536;
  background: #f7f6f3;
  z-index:1000;
  text-align-last: center;
  position: initial;
}

#button_mode_105 {
  font-size: 16px;
  line-height: 1.8;
  padding: 0px 4px;
  border-radius: .5rem;
  border-color:#14151536;
  background: #f7f6f3;
  width:100%;
  z-index:1000;
  position: initial;
  text-align-last: center;
  width:100%;
}

#button_mode_10 {
  font-size: 16px;
  line-height: 0.7;
  padding: 5px 15px;
  border-radius: .5rem;
  border:white;
  background: #0059bb;
  color: white;
  position: initial;
  text-align-last: center;
}

#button_mode_106 {
  font-size: 16px;
  line-height: 1.8;
  padding: 0px 4px;
  border-radius: .5rem;
  border:white;
  background: #0059bb;
  color: white;
  position: initial;
  text-align-last: center;
}

.btn-group-xss > .btn, .btn-xss {
  font-size: 16px;
  line-height: .7;
  padding: 5px 15px;
  border-radius: .5rem;
  border:white;
  background: #02124c;
  color: white;
  position: initial;
}

.btn-group-xss-mobile > .btn, .btn-xss-mobile {
  font-size: 16px;
  line-height: .5;
  padding: 0px 10px;
  border-radius: .5rem;
  border:white;
  background: #02124c;
  color: white;
  position: initial;
}


.btn-group-xss-tooltip > .btn, .btn-xss-tooltip {
  font-size: 16px;
  line-height: .7;
  padding: 5px 15px;
  border-radius: .5rem;
  border:white;
  background: #02124c;
  color: white;
  position: initial;
}

@media not all and (min-resolution:.001dpcm) { 
  @media {
      .dropdown-menu.show:not(.inner):not(.menu-scroll) {
        /*transform: translate3d(0px, 120px, 0px) !important;*/
        position: absolute;
      }

      .bootstrap-select .dropdown-menu li a span.text {
        display: inline-block;
        font-size:13px;
      }

      .bootstrap-select .no-results {
        padding: 3px;
        background: #f5f5f5;
        margin: 0 5px;
        white-space: nowrap;
        font-size:13px;
      }

      .bs-searchbox .form-control {
        margin-bottom: 0;
        width: 100%;
        float: none;
        height: 23px;
        font-size:13px;
        -webkit-user-select: initial;
      }

      .dropdown-item {
        display: block;
        padding: 0.0rem 0.9rem;
        margin-bottom: 0;
        font-size: 13px;
        white-space: nowrap;
        position: initial;
    }
  }
}

@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm) {
  .dropdown-menu.show:not(.inner):not(.menu-scroll) {
    transform: translate3d(0px, 37px, 0px) !important;
    position: initial;
  }

  .dropdown-item {
    display: block;
    padding: 0.0rem 0.9rem;
    margin-bottom: 0;
    font-size: 16px;
    white-space: nowrap;
    position: initial;
  }

}


#myInput {
  cursor:text;
  position: initial;
  height:23px;
  padding-top:12px;
  -webkit-user-select:all !important;
}

.menu-scroll {
  overflow-y: scroll;
  max-height: 30px;
  position: initial;
}

.sliding-link {
  text-decoration: underline;
  position: initial;
}

.dropdown-menu-right {
  border-bottom-width:2px;
  position: initial;
}


.dropdown-header {
  display: block;
  padding: 0.0rem 0.9rem;
  margin-bottom: 0;
  font-size: 16px;
  color: #6c757d;
  white-space: nowrap;
  position: initial;
}

.btn:not(#myInput){
    -webkit-user-select:none !important;
}


.card-body {
  padding: 0.3rem;
  position: initial;
}

.input-group {
  position: initial;
}

.bootstrap-select>select {
  display: none;
}

.dropdown.bootstrap-select {
  width: 100% !important;
}

.bootstrap-select>.dropdown-toggle {
  position: initial !important;  
}

.bootstrap-select.dropdown-menu {
  width: 100% !important;
}

.dropdown {
  position: initial;
}

select {
  box-shadow: none !important;
  -webkit-appearance: none;

  font-size: 16px;
  line-height: .0.5;
  padding: 0px 10px;
  border-radius: .5rem;
  border-color:#14151536;
  background: #f7f6f3;
  width:100%;
  z-index:1000;
  position: initial;
  opacity:1;
}

.form-control  {
  font-size:16px;
  position: initial;
}

.active_new {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
  position: initial;
}

.bootstrap-select .dropdown-menu li a span.text {
  display: inline-block;

  
}

/* VIS - GRAPH 
------------------------------ */ 
.brush {
  stroke: #0059bb;
  stroke-width: 1.5;
  opacity: 0.4;
  cursor:ew-resize;
}

#brush_label_-1 {
  font-size: 16px;
  font-weight:normal;
}

.focus  {
  opacity:0.2;
}

.leftrect {
  stroke: darkgrey;
  stroke-opacity:0.5;
  stroke-width: 0.5;
  fill: #ffffff00;
  opacity:1;
}

.line {
  fill: none;
  stroke-width: 1.5;
  stroke: #0059bb;
}

.ghost-line-baseline {
  fill:none;
  stroke: #bdbdbd;
  stroke-width: 1.5; 
}

.ghost-line-actual{
  fill:none;
  stroke: #525252;
  stroke-width: 1.5;
  stroke-dasharray: 6,6;
}

.axis line {
  stroke: #706f6f;
  stroke-width: 1;
  shape-rendering: optimizeSpeed;
}

.axis text:not(.bar_label):not(.bar_labelactive) {
  font-family:  Gill Sans MT;
  fill: #2b2929;
  font-weight: normal;
  opacity: 0.5;
  font-size: 11px;
}

.axis path {
  stroke-width: 0.5;
  shape-rendering: optimizeSpeed;
  fill: none;
  stroke: darkgrey;
  stroke-opacity:0.5;
}


/* VIS - BAR 
------------------------------ */ 
.bar_mini {
  fill:#52525221;
  rx:3px;
}

.baractive_mini {
  fill:#525252;
  rx:3px;
}

.bar {
  rx:3px;
  fill:#bdbdbd69;
  rx:3px;
}

.baractive {
  fill:#bdbdbd;
  rx:3px;
}

.bar_label {
  font-family:  Gill Sans MT;
  fill: #a4a0a061;
  font-weight: normal;
  font-size: 13px;
}

.bar_labelactive {
  font-family:  Gill Sans MT;
  fill: black;
  font-weight: normal;
  font-size: 13px;
}

/* VIS - MAP
------------------------------ */  
path {
    stroke-linejoin: round;
    stroke-miterlimit: 2;
    stroke-linecap: round;
}

.outline {
  fill: none;
  stroke: #000;
  stroke-width: 1px;
}

.feature {
  fill: #ccc;
}

.mesh {
  fill: none;
  stroke: #fff;
  stroke-width: .5px;
  stroke-linejoin: round;
}

path {
  stroke: black;
  stroke-width: .5px;
}

.county {
  opacity:0.4;
}

.county-hover {
  opacity:1;
  stroke: black;
  stroke-width:0.8;
}

/* MISC
------------------------------ */ 
.fa {
  color: black;
}

#download_icon {
  cursor: pointer;
  opacity: 0.75;
}

a:not(.dropdown-item) {
  color: #0062cc;
  text-decoration: underline;
}

#arrow {
  color:white;
}

#textwrapdiv {
  font-size: 16px;
  font-weight: normal;
  text-align:left;
}

.fa-lg {
  font-size: 1.33333em;
  line-height: 1em !important;
  vertical-align: -.0667em;
}


/* MEDIA QUERIES
------------------------------ */ 

/* Small */
@media only screen and (max-width: 850px) {


  /* VIS - GRAPH 
  ------------------------------ */ 
  .brush {
    stroke: #0059bb;
    stroke-width: 1.5;
    opacity: 0.4;
    cursor:default;
  }

  /* BUTTONS & OTHER INPUTS
  ------------------------------ */ 
  .btn-group-xs > .btn, .btn-xs {
    font-size: 16px;
    line-height: 1.8;
    padding: 0px 4px;
    border-radius: .5rem;
    border-color:#14151536;
    background: #f7f6f3;
    width:100%;
    z-index:1000;
    position: initial;
  }

  #button_mode_10 {
    font-size: 16px;
    line-height: 1.8;
    padding: 0px 4px;
    border-radius: .5rem;
    border:white;
    background: #0059bb;
    color: white;
    position: initial;
    text-align-last: center;
  }

  #myInput {
  cursor:text;
  position: initial;
  height:30px;
}

}