/* SITEBUILDER OVERRIDES */

#content-wrapper .map-wrapper p { color:#4E5860!important; font-size:17px!important; line-height:1.3em!important; }
#content-wrapper a.d3-slider-handle { transition:none!important; -webkit-transition:none!important; -moz-transition:none!important; -o-transition:none!important; -ms-transition:none!important; }

#content-wrapper h2, #content-wrapper h3, #content-wrapper h4, #content-wrapper em.slider-heading, #content-wrapper .form-control { font-family:'Lato', sans-serif!important }

#content-wrapper .map-wrapper h2::after, #content-wrapper .map-wrapper h3::after, #content-wrapper .map-wrapper h4::after {display:none!important; }

/* MAP CSS */

ul.candidate-links {
  float:right;
  list-style:none!important;
  padding:0!important;
  margin:10px 10px 0 0!important;
}

ul.candidate-links > li {
  float:left;
  padding:0!important;
  margin:0 0 0 8px!important;
}

ul.candidate-links > li > a {
  display:block;
  height:30px;
  width:30px;
  background:#fff;
  text-indent:-9999px;
  position:relative;
  font-weight:normal!important;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  overflow: hidden;
	opacity:0.8;
}

ul.candidate-links > li > a:hover { opacity:1; }

ul.candidate-links > li > a::after {
  font-family: FontAwesome;
  background: #7C7C7C;
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  height: 30px;
  text-indent: 0;
  text-align: center;
  font-size: 14px;
  line-height: 30px;
  color: #FFF;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

ul.candidate-links > li[class*="facebook-personal"] > a::after {
	content:'\f09a';
	background:#3b5998;
}

ul.candidate-links > li[class*="ppc"] > a::after {
	content:'\f08e';
	background:#8D8EFE;
	line-height:33px;
}

ul.candidate-links > li[class*="facebook-page"] > a::after {
	content:'\f230';
	background:#3b5998;
}

ul.candidate-links > li[class*="linkedin"] > a::after {
	content:'\f0e1';
	background:#0077B5;
}

ul.candidate-links > li[class*="homepage"] > a::after {
	content:'\f015';
	background:#8D8EFE;
}

ul.candidate-links > li[class*="wikipedia"] > a::after {
	content:'\f0ac';
	background:#808080;
	font-size:16px;
}


ul.candidates li[class*="labour"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(220,36,31,1); }
ul.candidates li[class*="liberal"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(253,187,48,1); }
ul.candidates li[class*="conservative"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(0,135,220,1); }
ul.candidates li[class*="snp"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(255,255,0,1); }
ul.candidates li[class*="ukip"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(112,20,122,1); }
ul.candidates li[class*="green"] ul.candidate-links > li[class*="homepage"] > a::after { background: rgba(106,176,35,1); }

 
 

ul.candidates {
  margin:15px 0 0 0!important;
   border: 1px solid #E5E5E5;
  padding: 0 0 0 10px!important;
  list-style:none!important;
}
	
ul.candidates > li {
  padding: 0 0 10px 0!important;
  margin-top: 10px!important;
  border-bottom: 1px solid #E5E5E5;
  margin-bottom: 0!important;
}

ul.candidates > li:last-child { border-bottom:0; }

ul.candidates li div.image {
  width: 50px;
  height: 50px;
  float: left;
  overflow: hidden;
  margin: 0 10px 0 0;
  background-size:cover;
  background-repeat:no-repeat;
  background-position:center;
  background-image:url(/fac/soc/economics/apps/maps/candidate-logo-sm.jpg);
}

ul.candidates li div.image img { width:100%!important; }

ul.candidates li div.name-and-party { float:left; margin: 0; font-family: 'Lato', sans-serif!important; }

ul.candidates li span.name {
  margin-top: 2px;
  display: block;
  font-weight: 700;
  font-size: 17px;
  color: #38424E!important;
}

ul.candidates li span.party {
  color:#4E5860!important;
  display:block;
}

ul.candidates li[class*="labour"] div.image { background-image:url(/fac/soc/economics/apps/maps/labour-logo-sm.jpg); }
ul.candidates li[class*="conservative"] div.image { background-image:url(/fac/soc/economics/apps/maps/con-logo-sm.jpg); }
ul.candidates li[class*="liberal"] div.image { background-image:url(/fac/soc/economics/apps/maps/liberal-logo-sm.jpg); }
ul.candidates li[class*="ukip"] div.image { background-image:url(/fac/soc/economics/apps/maps/ukip-logo-sm.jpg); }
ul.candidates li[class*="green"] div.image { background-image:url(/fac/soc/economics/apps/maps/green-logo-sm.jpg); }
ul.candidates li[class*="snp"] div.image { background-image:url(/fac/soc/economics/apps/maps/snp-logo-sm.jpg); }

a.whos-standing {
  display:inline-block;
  color: #2F84A9!important;
  font-style: normal;
  font-weight:700!important;
  margin: 15px 0 0 0;
  padding: 0 0 5px 0;
  border-bottom: 1px dotted #2F84A9;
  text-decoration:none!important;
}

a.whos-standing:hover {
  text-decoration:none!important;
  border-bottom:1px solid #2F84A9;
}

.key-wrapper {
  padding: 15px;
  margin: -20px -18px 0 -18px;
  background: rgba(0, 0, 0, 0.1);
}

.key-wrapper ul {
  list-style:none!important;
  margin:0 0 0 10px!important;
  padding:0!important;
  height:44px;
}

.key-wrapper ul li {
  margin: 0!important;
  padding: 0 10px!important;
  float: left;
  width: 33.333%;
  color: #FFF!important;
  font-size: 13px!important;
  position: relative;
}

.key-wrapper ul li::before {
  content: '';
  position: absolute;
  left: -10px;
  top: 4px;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
}

.key-wrapper ul li.labour::before { background: rgba(220,36,31,1); }
.key-wrapper ul li.liberal::before { background: rgba(253,187,48,1); }
.key-wrapper ul li.conservative::before { background: rgba(0,135,220,1); }
.key-wrapper ul li.nationalist::before { background: rgba(255,255,0,1); }
.key-wrapper ul li.ukip::before { background: rgba(112,20,122,1); }
.key-wrapper ul li.green::before { background: rgba(106,176,35,1); }
.key-wrapper ul li.others::before { background: rgba(128,128,128,1); }

.chart-wrapper {
  background: #F4F4F4;
  padding: 20px;
  margin-top:20px;
}

.chart-wrap {
  width: 48%;
  float: left;
  padding-bottom:20px;
}

.chart-wrapper .chart-wrap:first-child { margin-right: 4%; }

.chart-wrap h4 {
  color: #38424E!important;
  font-size: 17px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#content-wrapper .chart-wrap barchart, #content-wrapper .chart-wrap barchart2 {
  display: block;
  width: 100%;
  padding:20px;
  height: 120px;
  position:relative;
  text-align:center;
  -webkit-box-sizing: content-box!important;
  -moz-box-sizing: content-box!important;
  box-sizing: content-box!important;
}

barchart#barchartUAP::before {
  content: 'Proportion of voting age';
  position: absolute;
  top: 50%;
  left: 0;
  width: 50%;
  margin-left: -25%;
  text-align: center;
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2em;
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  color:#2F84A9;
}

barchart#barchartUAP::after, barchart2#barchartPredictedTurnout::after {
  content: 'Age Group';
  position: absolute;
  bottom: -30px;
  left: 50%;
  width: 60%;
  margin-left: -30%;
  text-align: center;
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 700;
  color:#2F84A9;
}

.map-wrapper {
  margin: 20px 0 40px 0;
}

.top-bar {
  border-bottom: 1px solid #EDEDED;
  height:60px;
}

#uow-slider-container .d3-slider-horizontal {
  height: .6em;
  margin: 15px 0 8px 0;
  border: none;
  background: #2F84A9;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}

.slider-heading {
  display: inline-block;
  font-style: normal;
  font-weight: 700;
  padding: 0!important;
  color: #2F84A9;	
}

#content-wrapper .detail-container h2 {
  text-transform: uppercase;
  font-size: 32px!important;
  font-weight: 400!important;
  color: #768193!important;
  margin-top: 20px!important;
  margin-bottom: 0!important;
  padding:0!important;
  line-height:1.2em;
  background:none!important;
  display:block!important;
}

.constituency-name {
  color: #38424E;
  font-weight: 700!important;
}

#content-wrapper .detail-container h3 {
  margin-top: 0!important;
  color: #768193!important;
  font-weight: 400!important;
  font-size: 26px!important;
}

.detail-container .winner-wrap {
  margin: 20px 0 0 0;
  position:relative;
}

.winner-inner {
  background: #F4F4F4;
  padding: 25px;	
}

#content-wrapper h2.wrap-heading {
  margin: 0!important;
  padding: 20px 0 10px 0!important;
  font-size: 18px!important;
  text-transform: none;
  background: #FFF;
  border-top: 2px solid #F4F4F4;
  font-weight: 700!important;
  color: #38424E!important; 
  background:none!important;
}

#content-wrapper .winner-wrap h3 {
  text-transform: uppercase;
  font-weight: 700!important;
  font-size: 24px!important;
  margin-bottom: 0!important;
  margin-top: 0!important;
  color: #38424E!important;
  background:none!important;
  padding:0!important;
}

#content-wrapper .winner-wrap h4 {
  margin-top: 0!important;
  margin-bottom: 0!important;
  color: #768193!important;
  font-weight: 400!important;
  font-size: 20px!important;
  background:none!important;
}

#content-wrapper .winner-wrap h3.labour { color: rgba(220,36,31,1)!important; }
#content-wrapper .winner-wrap h3.liberal{ color: rgba(253,187,48,1)!important; }
#content-wrapper .winner-wrap h3.conservative { color: rgba(0,135,220,1)!important; }
#content-wrapper .winner-wrap h3.nationalist { color: rgba(0,0,0,1)!important; }
#content-wrapper .winner-wrap h3.ukip { color: rgba(112,20,122,1)!important; }
#content-wrapper .winner-wrap h3.green { color: rgba(106,176,35,1)!important; }
#content-wrapper .winner-wrap h3.others { color: rgba(128,128,128,1)!important; }

.detail-container .self-predicted-wrap {
  border-bottom:2px solid #f4f4f4;
  margin: 20px 0 0 0;
  position:relative;
  padding: 0 0 10px 0;
}

.self-predicted-wrap p span { font-weight:700!important; }

.self-predicted-wrap p span.labour { color: rgba(220,36,31,1)!important; }
.self-predicted-wrap p span.liberal{ color: rgba(253,187,48,1)!important; }
.self-predicted-wrap p span.conservative { color: rgba(0,135,220,1)!important; }
.self-predicted-wrap p span.nationalist { color: rgba(0,0,0,1)!important; }
.self-predicted-wrap p span.ukip { color: rgba(112,20,122,1)!important; }
.self-predicted-wrap p span.green { color: rgba(106,176,35,1)!important; }
.self-predicted-wrap p span.others { color: rgba(128,128,128,1)!important; }

#content-wrapper h3.previous-election {
  font-size: 17px!important;
  margin: 20px 0 0 0!important;
  color: #545454!important;
  padding: 0 0 15px 0!important;
  background: none!important;
}

h3.previous-election span { font-weight:700; }
h3.previous-election span.labour { color: rgba(220,36,31,1)!important; }
h3.previous-election span.liberal{ color: rgba(253,187,48,1)!important; }
h3.previous-election span.conservative { color: rgba(0,135,220,1)!important; }
h3.previous-election span.nationalist { color: rgba(0,0,0,1)!important; }
h3.previous-election span.ukip { color: rgba(112,20,122,1)!important; }
h3.previous-election span.green { color: rgba(106,176,35,1)!important; }
h3.previous-election span.others { color: rgba(128,128,128,1)!important; }

.person-icons {
  position: absolute;
  bottom: 17px;
  right: 23px;
}

.person-winner, .person-runnerup { float: left; }

.person-winner .person-svg {
  width: 40px;
  height: 70px;
}

.person-runnerup .person-svg {
  width: 38px;
  height: 55px;
  margin: 10px 0 0 0;
}

.person-svg svg { width: 100%; height: 100%; }
.person-svg svg circle, .person-svg svg path { fill:#ccc; -webkit-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; }

.person-icons .labour svg path, .person-icons .labour svg circle { fill: rgba(220,36,31,1); }
.person-icons .liberal svg path, .person-icons .liberal svg circle { fill: rgba(253,187,48,1); }
.person-icons .conservative svg path, .person-icons .conservative svg circle { fill: rgba(0,135,220,1); }
.person-icons .nationalist svg path, .person-icons .nationalist svg circle { fill: rgba(255,255,0,1); }
.person-icons .ukip svg path, .person-icons .ukip svg circle { fill: rgba(112,20,122,1); }
.person-icons .green svg path, .person-icons .green svg circle { fill: rgba(106,176,35,1); }
.person-icons .other svg path, .person-icons .other svg circle { fill: rgba(128,128,128,1); }

#uow-slider-container .d3-slider-horizontal .d3-slider-handle {
  top: -.3em;
  margin-left: -.8em;
}

#uow-slider-container .d3-slider-handle {
  position: absolute;
  width: 1.7em;
  height: 1.2em;
  border: none;
  border-radius: 5px;
  background: #EEE;
  border: 2px solid #38424E;
  z-index: 3;
}

#uow-slider-container .d3-slider-axis text {
  font-family: 'Lato', sans-serif;
  font-weight: 700;
  fill: #2F84A9;	
}

.uow-show { display: block; }
.uow-hide { display: none; }


.uow-info-select-constituency {
  font-size: 23px!important;
  font-weight: 400;
  color: #768193!important;
  margin: 0;
  line-height: 1.2em;
  padding: 20px;
  background: #F4F4F4;
}

.uow-inner-wrap {
  display: inline-block;
  vertical-align: top;
  padding-top: 20px;
}

.map-container {
  position:relative;
  width: 40%;
  padding: 0 2%;
  margin: 0;
  background: #BACADB;
  min-height: 530px;
  -webkit-box-sizing: content-box!important;
  -moz-box-sizing: content-box!important;
  box-sizing: content-box!important;
}

.map-container .svg-map { display: inline-block; position: relative; width: 100%; padding-bottom: 150%; vertical-align: middle; overflow: hidden; }

.map-container svg { display: inline-block; position: absolute; top: 0; left: 0; }

.detail-container,
.uow-selected-consituency-container {
  width: 51%;
  padding: 20px 2%;
  -webkit-box-sizing: content-box!important;
  -moz-box-sizing: content-box!important;
  box-sizing: content-box!important;
}

.uow-selected-consituency-container h4 {
  text-align: center;
  font-weight: 300;
}

.map-container circle {
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  fill: #fff;
}
.map-container circle:hover, .map-container circle.active {
  cursor: pointer;
  stroke-width: 4;
  stroke: #2F84A9;
}

.map-container circle.labour { fill: rgba(220,36,31,1); background-color: rgba(220,36,31,1); }
.map-container circle.liberal{ fill: rgba(253,187,48,1); background-color: rgba(253,187,48,1); }
.map-container circle.conservative { fill: rgba(0,135,220,1); background-color: rgba(0,135,220,1); }
.map-container circle.nationalist { fill: rgba(255,255,0,1); background-color: rgba(255,255,0,1); }
.map-container circle.ukip { fill: rgba(112,20,122,1); background-color: rgba(112,20,122,1); }
.map-container circle.green { fill: rgba(106,176,35,1); background-color: rgba(106,176,35,1); }
.map-container circle.others { fill: rgba(128,128,128,1); background-color: rgba(128,128,128,1); }

.d3-slider-handle {
  cursor: pointer;
}

#uow-slider-container {
  width: 100%;
  height: 40px;
  margin-bottom: 20px;
}

object.search-icon {
  position: absolute;
  top: 28px;
  left: 12px;
  height: 22px;
  float: left;
}

.uow-search-container ::-webkit-input-placeholder { color: #7c7c7c; }
.uow-search-container :-moz-placeholder { color: #7c7c7c; }
.uow-search-container ::-moz-placeholder { color: #7c7c7c; }
.uow-search-container :-ms-input-placeholder { color: #7c7c7c; }

.uow-search-selected-constituency {
  float: left;
  position: relative;
  width: 100%;
  background: #BACADB;
  height: 60px;
  margin-bottom: 20px;
}

#barchartUAP svg,
#barchartPredictedTurnout svg {
  display: inline-block;
}

#barchartUAP rect,
#barchartPredictedTurnout rect{
  fill: #2F84A9;
}

#barchartUAP text,
#barchartPredictedTurnout text{
  fill: #888;
  font: 10px sans-serif;
  text-anchor: end; 
}
.axis text{
  font: 10px sans-serif;
}

#barchartUAP .barvalue,
#barchartPredictedTurnout .barvalue{
  fill: #fff;
}

.axis path, .axis line{
  fill: none;
  stroke : #888;
  shape-rendering: crispEdges;
}

/* Bootstrap */

.form-control {
outline: none;
  display: block;
  width: 84%;
  margin: 15px 0 0 0;
  padding: 12px 15px 12px 45px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.42857143;
  color: #2F84A9;
  background-color: #FFF;
  background-image: none;
  border: none;
}

.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 0!important;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  -webkit-background-clip: padding-box;
          background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .15);
  border-radius: 4px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
          box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.dropdown-menu > li {
  list-style:none!important;
}

.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333;
  white-space: nowrap;
}

#content-wrapper .dropdown-menu > .active > a,
#content-wrapper .dropdown-menu > .active > a:hover,
#content-wrapper .dropdown-menu > .active > a:focus {
  color: #fff!important;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0;
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Lato", sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.4;
  filter: alpha(opacity=0);
  opacity: 0;
}
.tooltip.in {
  filter: alpha(opacity=90); 
  opacity: 1;
}
.tooltip.top {
  padding: 5px 0;
  margin-top: -3px;
}

.tooltip-inner {
  max-width: 200px;
  padding: 5px 15px;
  color: #2F84A9!important;
	font-weight:bold!important;
  text-align: center;
  text-decoration: none;
  background:#fff;	
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, .2);
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
          box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 1px;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #fff;
}

.mv-gt10-percent { opacity: 1; }
.mv-gt5to10-percent { opacity: .8; }
.mv-5-percent { opacity: .7; }
.mv-4-percent { opacity: .6; }
.mv-3-percent { opacity: .5; }
.mv-2-percent { opacity: .4; }
.mv-1-percent { opacity: .3; }

.nationalist.mv-gt5to10-percent { opacity: .9; }
.nationalist.mv-5-percent { opacity: .8; }
.nationalist.mv-4-percent { opacity: .7; }
.nationalist.mv-3-percent { opacity: .6; }
.nationalist.mv-2-percent { opacity: .5; }
.nationalist.mv-1-percent { opacity: .4; }

.cf:before, .cf:after { content: " "; display: table; }
.cf:after { clear: both; }
.cf { *zoom: 1; }

@media only screen and (max-width : 734px) {
  .map-container { width:96%!important; }
  .detail-container { width:91%!important; }	
	.chart-wrapper {display:none; }
}