@font-face {
    font-family: Gotham;
    src: url(fonts/Franklin-Book.otf);
}
body{
	font-family: 'Gotham', 'Open Sans', 'Helvetica', 'Arial';
	font-weight: 300;
}

.interactive{
	/* background: #FFFAF6; */
	margin-top: 20px;
	background: #fff;
	color: #333;
}

.state-select, .state{
	background: #fff;

}

.filter-list{
	position: relative;
}

.filter a{
	background: #efefef;
}

.selected-filter{
	
}

.filter-percent{
	transition: bottom .05s linear;
	-moz-transition: bottom .05s linear;
	-webkit-transition: bottom .05s linear;
	position: absolute;
	bottom: -28px;
	font-size: 15px;
	width: 30px;
	left: calc( 50% - 15px );
	color: #aaa;
}



.interactive{
	width: 800px;
	height: 600px;
	margin-left: 50px;
	margin-right: 50px;
	position: relative;
}

nav{

	float: left;
	height: 100%;
	width: 150px;
	background: #F0F0F0;
	/*box-shadow: 1px 0px 1px rgba(0,0,0,.07);*/
}

buttons, toggles{
	display: block;
}

toggles{
	display: inline-block;
	margin-left: 50px;
}

.graphs{
	z-index: 10;
	width: 650px;
	height: 100%;
	display: block;
	float: left;
	box-shadow: -2px 0px 1px -1px #ddd;
}

.state-select, .title{
		transition: width .5s ease, height .5s ease;
	-webkit-transition: width .5s ease, height .5s ease;
	-moz-transition: width .5s ease, height .5s ease;
}

.state-select{

	width: calc( 100% + 1px );
	height: 95px;
	overflow: hidden;
	margin: 0;
	z-index: 1000;
	border-bottom: 3px solid #ddd;
	position: relative;
	left: -1px;
		
}

.state-select.hover{
	z-index: 9999;
	overflow: visible;
}

.state-select.hover.shift-text{
	width: 828px;
	height: 99px;

}

.state-select .title{
	position: relative;
	z-index: 10000;
	top: -15px;
	text-align: center;
	display: block;
	padding-left: 40px !important;
}

.state-select.hover .title{
	display: block;
}

.state-list{
	width: 800px;
	height: 675px;
}


.state{
	width: 75px;
	height: 100px;
	padding: 0px;
	padding-left: 0px;
	padding-right: 15px;
	border-left: none;
	display: inline-block;
	cursor: pointer;
}



.state-name{
	transition: transform .5s ease;
	-webkit-transition: -webkit-transform .5s ease;
	-moz-transition: -moz-transform .5s ease;
	position: absolute;
	color: #888;
	font-size: 9.5px;
	bottom: 7px;
	width: 100%;
	text-align: center;
}

.us .state-name{
	bottom: 7px;
	background: #fff;
}

.shift-text .us .state-name{
	bottom: -4px;
}

.shift-text .state-name{
	transform: translateX( -6px );
	-webkit-transform: translateX( -6px );
	-moz-transform: translateX( -6px );
}

.shift-text .us .state-name{
	transform: translateX( 7px );
	-webkit-transform: translateX( 7px );
	-moz-transform: translateX( 7px );
}

.state path{
	fill: #ccc;
	stroke: #aaa;
	stroke-width: .5;
}

.state:hover path, .state.selected path{
	fill: rgba(143, 61, 13, .4);
	stroke: rgba(143, 61, 13, .6);
	fill: rgba(228, 26, 28, 0.498039);
	stroke: rgba(228, 26, 28, 0.6);
	stroke-width: .5;

}

.axis path{
	fill: none;
}

linechart .lines{
	stroke-width: 4;
}

states{
	z-index: 1000;
}

buttons{
	z-index: 10;
}

.filters{
	display: block;
	margin-top: 15px;
	margin: 0;
	padding: 0;
	list-style: none;
	height: 390px;
	width: 100%;
	z-index: 10;
}

.filters li{
	z-index: 10;
	width: 100%;
	/*height: 15px;*/
	
}

.filters a {
	display: block;
	width: calc( 100% - 10px);
	padding: 5px;
	font-size: 14px;
	cursor: pointer;
	z-index: 10;
}


.filters li:hover a.column, a.on{
	background: #fff;
	color: #fff;
	overflow: visible;
	color: #333;
}

.filters li:hover a.column:after, a.on:after{
	position: absolute;
	content: '';
	left: calc( 100% - 8.5px );
	top: calc( 50% - 8.5px );
	height: 5px;
	width: 5px;
	transform: rotate( -45deg );
	-webkit-transform: rotate( -45deg );
	-moz-transform: rotate( -45deg );

	border-top: 12px solid #FFFAF6;
	border-right: 12px solid #FFFAF6;

}

.pop-toggles{
	
	height: 30px;
	/* border-bottom: 1px solid #ddd;width: 650px;padding-left: 50px; */
	margin-top: 5px;
	

}

.pop-toggles ul{
	height: 32px;
	width: auto;
	display: inline-block;
	white-space: nowrap;
}

.pop-toggles li{
	transition: height .05s linear;
	-moz-transition: height .05s linear;
	-webkit-transition: height .05s linear;
	display: inline-block;
	margin-left: 3px;
	margin-right: 3px;
	height: 23px;
	cursor: pointer;
	font-size: 14px;
	float: none;
	width: auto;
	white-space: nowrap;
	position: relative;
	top: 0px;

}

.pop-toggles.generation li{
	font-size: 11.5px;
}

.pop-toggles li a{
	padding: 5px;
}

a.filter{
	color: #fefefe;
	margin-top: 3px;
	margin-bottom: 3px;
}

.filter-value li{
	/*background: #fff;*/
}

.selection-list{
	/*border-bottom: 1px solid #ccc;*/

}

a.off{
	background: none !important;
	color: #222 !important;
}

.pop-toggles li:hover{
	height: 20px;
}

.pop-toggles li:hover .filter-percent{
	 bottom: -31px;
}

li.off.border{
	border-bottom: none !important;
}




span.off{
	display: none;
}



.selection{
	height: 30px;
	border-bottom: 1px solid #ddd;
	background: #f6f6f6;
	transition: border-bottom .1s linear;
	-webkit-transition: border-bottom .1s linear;
	-moz-transition: border-bottom .1s linear;
	line-height: 35px;
}

.population a{
	display: default;
	width: auto;
	font-size: 14px;
	padding: 6px;
	position: relative;

}

.population-header, .title{
	border-bottom: 1px solid #ddd;
	color: #aaa;
	font-size: 10px;
	text-transform: uppercase;
	padding-top: 5px;
	padding-bottom: 2px;
	padding-left: 5px;
	background: #f6f6f6;
}

.population-header{
	display: block;
}

.selected-population, .population a:hover, .selection:hover, .selection.on{
	/* color: rgba(143, 61, 13, .4) !important; */
	color: rgba(228, 26, 28, 0.498039);
	font-weight: 800 !important;
}

.selected-population:after{
	position: absolute;
	display: block;
	content: '';
	height: 6px;
	width: 6px;
	right: -8px;
	top: calc( 50% - 8px );
	border-top: 10px solid #fff;
	border-left: 10px solid #fff;
	transform: rotate( -45deg);
	-webkit-transform: rotate( -45deg);
	box-shadow: -2px 0px 1px -1px #ddd, 0px -2px 1px -1px #ddd;
}

.graph-1{
	box-shadow: .25px 0px 1px rgba(0,0,0,.15);
}

.graph-2{
	box-shadow: 0px -1px 1px rgba(0,0,0,.15);
}

.graph-1, .graph-2{
	display: block;
	width: 100%;
	transition: all .5s ease;
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
}

.graph-1.open, .graph-2.open{
	height: 70%;
}

.graph-2.closed, .graph-1.closed{
	height: 30%;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
	
}

.grid li {
	position: absolute;
	opacity: 1;
}

.grid li.active{
	position: absolute;
}



.grid.effect li{
	opacity: 1;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	transition: all 0.5s ease;
	
}

.grid.effect li.hidden{
	top: 0 !important;
	left: 0 !important;
	padding-bottom: 0;
	padding-top: 0;
	border-left: 2px solid #eee;
	opacity: 1;
}

.grid.effect li.showing{
	transform: translateX( 0 ) !important;
}

.grid.effect li.showing.hidden{
	margin: 0 auto;

}

.state.hidden.selected{
	width: 150px !important;
	padding: 0;
	
}

svg{
	transition: margin-left .5s ease;
	-webkit-transition: margin-left .5s ease;
	-moz-transition: margin-left .5s ease;
}


.hidden.selected svg{
	margin-left: 40px;
}

.hidden.selected.us svg{
	margin-left: 20px;
}

.grid.effect li.selected{
	-webkit-transform: translateX( 0 );
	-moz-transform: translateX( 0 );
	transform: translateX( 0 );
	opacity: 1;
	z-index: 1000;
}

tooltip{
	position: absolute;
	z-index: 2000;
	width: 150px;
	padding: 10px;
	height: 100px;
	background: #fff;
	border: 1px solid #ddd;
	border-bottom: 5px solid #ddd;
	display: none;
}



@-webkit-keyframes moveOut {
	0% { }
	100% { -webkit-transform: translateX(0); opacity: 1; }
}

@keyframes moveOut {
	0% { }
	100% { -webkit-transform: translateX(0); transform: translateY(0); opacity: 1; }
}

@-moz-keyframes moveOut {
	0% { }
	100% { -webkit-transform: translateX(0); transform: translateY(0); opacity: 1; }
}

text{
	fill: #aaa;
}

.x text{
	font-size: 12px;
}

.x path{
	stroke: #aaa
}

.y text{
	font-size: 12px;

}

.y.axis line {
  shape-rendering: crispEdges;
  stroke: rgba(100,100,100,.2);
}

.slide{
  /*-webkit-transition:all ease 5s;
  -moz-transition:all ease 5s;
  -o-transition:all ease 5s;
  transition:all ease 5s;*/
  overflow: hidden;
  
}



.slide.ng-hide-remove
{
  display: block !important;
}



.slide.ng-hide{
	
	max-height: 0px;
}

.slide.ng-show{
	max-height: 1000px;
} 









.slide.ng-hide-remove.ng-hide-remove-active, .slide.ng-hide-remove{
 -moz-animation: slidedown .8s; 
  -webkit-animation: slidedown .8s; 
  animation: slidedown .8s;

  animation-delay: .11;
  -webkit-animation-delay: .11;
  -moz-animation-delay: .11;

} 

.slide ul{
	background: #EBEBEB;
}


@keyframes slideup {
  from { max-height: 1000px; }
  to { max-height: 0px; }
}

@-webkit-keyframes slideup {
  from { max-height: 1000px; }
  to { max-height: 0px; }
}

@-moz-keyframes slideup {
  from { max-height: 1000px; }
  to { max-height: 0px; }
}
@keyframes slidedown {
  from { max-height: 0px; opacity: 0; }
  to { max-height: 1000px; opacity: 1;}
}

@-webkit-keyframes slidedown {
  from { max-height: 0px; opacity: 0; }
  to { max-height: 1000px; opacity: 1; }
}


@-moz-keyframes slidedown {
  from { max-height: 0px; opacity: 0; }
  to { max-height: 1000px; opacity: 1; }
}


.charttype-toggle{
	/* margin-top: 15px; */
	padding-top: 8px;
	padding-bottom: 2px;
	padding-left: 25px;
	padding-right: 5px;
	border-bottom: 1px solid #ddd;
	background: #fff;
}

.charttype-toggle li{
	float: left;
}

.charttype-toggle svg{
	height: 20px;
	width: 20px;
	
}

.charttype-toggle a{
	display: block;
}

.charttype-toggle ul{
	height: 25px;
}

.charttype-toggle li{
	cursor: pointer;
	height: 100%;
	width: 25px;
	
	margin-right: 5px;
	margin-left: 5px;
}

.charttype-toggle path{
	stroke: #f9f9f9;
}

.charttype-toggle .selected-chart path{
	/*stroke: rgba(143, 61, 13, .4) !important;*/
	stroke: rgba(228, 26, 28, 0.498039);
}

.iconmelon,
.im {
  position: relative;
  width: 32px;
  height: 32px;
  display: block;
  fill: #525151;
}
.iconmelon:after,
.im:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

input[type=checkbox] {
	visibility: hidden;
}

.sub-filter{
	width: 100px;
	height: 30px;
	margin-bottom: 10px;
	margin-left: 50px;
	color: #333;
	font-size: 12px;
	right: 65px;

	position: absolute;
}

.checkboxFive {
	position: relative;
	background: #EBEBEB;
	height: 20px;
	border: 1px solid #ddd;
	margin-left: 5px;
	padding: 5px;
	display: block;
	width: 100px;
	float: left;
	top: -36px;
	left: 28px;

}

.checkboxFive input{
	margin-right:15px;
}
.checkboxFive label {
	cursor: pointer;
	position: absolute;
	width: 15px;
	height: 15px;
	top: 5px;
  	left: 2px;

	background: #f4f4f4;
	border:1px solid #bbb;
}
.checkboxFive label:after {
	opacity: 0;
	content: '';
	position: absolute;
	width: 14px;
	height: 5px;
	background: transparent;
	top: 0px;
	left: 2px;
	border: 3px solid #333;
	border-top: none;
	border-right: none;

	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/**
 * Create the hover event of the tick
 */
.checkboxFive label:hover::after {
	opacity: 0.5;
}

/**
 * Create the checkbox state for the tick
 */
.checkboxFive input[type=checkbox]:checked + label:after {
	opacity: 1 !important;
}

.loader {
  margin: 6em auto;
  font-size: 10px;
  position: absolute;
  top: 25%;
  left: 50%;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(143, 61, 13, .2);
  border-right: 1.1em solid rgba(143, 61, 13, .2);
  border-bottom: 1.1em solid rgba(143, 61, 13, .2);
  border-left: 1.1em solid rgba(143, 61, 13, .8);

   border-top: 1.1em solid rgba(228, 26, 28, 0.2);
  border-right: 1.1em solid rgba(228, 26, 28, 0.2);
  border-bottom: 1.1em solid rgba(228, 26, 28, 0.2);
  border-left: 1.1em solid rgba(228, 26, 28, 0.8);
  -webkit-animation: load8 1.1s infinite linear;
  animation: load8 1.1s infinite linear;
}
.loader,
.loader:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.tutorial{
	position: absolute;
	height: auto;
	width: 200px;
	padding: 10px;
	border: 1px solid #ddd;
	background: #fff;
	z-index: 100000;
	display: none;
	color: #aaa;
	font-size: 14px;
}

.tutorial:after{
	content: '';
	position: absolute;
}

.tutorial.right:after{
	
	transform: rotate( -45deg );
	-webkit-transform: rotate( -45deg );
	-moz-transform: rotate( -45deg );
	top: calc( 50% - 5px );
	left: -5px;
	border-top: 10px solid #fff;
	border-left: 10px solid #fff;
	box-shadow: 0px -2px 0px -1px #ccc,
				-2px 0px 0px -1px #ccc;
}

.tutorial.top:after{
	transform: rotate( 45deg );
	-webkit-transform: rotate( 45deg );
	-moz-transform: rotate( 45deg );
	bottom: -5px;
	left: calc( 50% - 5px );
	border-right: 10px solid #fff;
	border-bottom: 10px solid #fff;
	box-shadow: 0px 2px 0px -1px #ccc,
				2px 0px 0px -1px #ccc;

}

.tutorial .description{
	border-bottom: 1px solid #ddd;
}

.btn{
	padding: 2px;
	font-size: 12px;
	background: #f0f0f0;
	border: 1px solid #ddd;
	border-radius: 2px;
	margin-top: 6px;
	display: inline-block;
	cursor: pointer;
}

.btn:hover{
	background: #f6f6f6;
}

.btn.close{
	float: right;
	padding-left: 4px;
	padding-right: 4px;
}

.ng-joyride .pull-left{
    float: left;
}
.ng-joyride .pull-right{
    float:right;
}
#ng-curtain{
    position: fixed;
    background: black;
    opacity: 0.5;
    top: 0px;
    left: 0px;
    height: 100%;
    width: 100%;
    z-index: 9998;
   display: none; 
}

.ng-joyride-title{

    z-index: 9999;
    position:absolute;
    top:50%; left:33%;
    width:200px;
    margin:-100px 0 0 -50px;
    background: white;
    box-shadow:         0px 0px 28px 0px rgba(50, 50, 50, 0.75);
    width: 35em;
}

.ng-joyride .skip-class{
    padding-top: 7px;
}

.ng-joyride-element-non-static{
    z-index: 9999;
    box-shadow:         0px 0px 28px 0px rgba(50, 50, 50, 0.75);
}

.ng-joyride-element-static{
    position: relative;
    z-index: 9999;
   /* box-shadow:         0px 0px 28px 0px rgba(50, 50, 50, 0.75);*/
}
.ng-joyride.popover{
    z-index: 9999;

}
.ng-joyride.popover .popover-content{
    width: 17em;
    padding-left: 10px;
}
.ng-joyride .popover-title{
    color: white;
    background: #428bca;
}
.sharp-borders{
    border-radius: 0px !important;
}

.ng-joyride h3.popover-title{
    line-height: 18px;
    padding-bottom: 8px
}
.ng-joyride-modal.modal{
    z-index:9999 !important;
}

.ng-joyride .btn{
    border-radius: 0px !important;
}

.ng-joyride-element-static a:after{
	display: none;
}

.ng-joyride-element-static .sub-filter{
	right: -108px;
}






