@CHARSET "UTF-8";

html {
	height: 100%;
}

body {
	font: 400 15px Lato, sans-serif;
	line-height: 1.8;
	color: #333;
	height: 100%;
}

#user-tools {
    padding: 0;
    margin: 0;
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: yellow;
}

.col-centered{
	float: none;
	margin: 0 auto;
}

@media (max-width: 1024px) {
   	.navbar-header {
       	float: none;
   	}
   	.navbar-toggle {
       	display: block;
       	margin-top: 3px;
       	margin-bottom: 3px;
   	}
   	.navbar-collapse {
       	border-top: 1px solid transparent;
       	box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
   	}
   	.navbar-collapse.collapse {
       	display: none!important;
   	}
   	.navbar-nav {
       	float: none!important;
       	margin: 7.5px -15px;
   	}
   	.navbar-nav>li {
       	float: none;
   	}
   	.navbar-nav>li>a {
       	padding-top: 10px;
       	padding-bottom: 10px;
   	}
   	.navbar-text {
       	float: none;
       	margin: 15px 0;
   	}
   	/* since 3.1.0 */
   	.navbar-collapse.collapse.in { 
       	display: block!important;
   	}
	.collapsing {
		overflow: hidden!important;
	}
}
.navbar {
	min-height: 40px;
	margin-bottom: 0;
	background-color: #0078AC !important;
	border-width: 0;
	z-index: 9999;
	font-size: 12px !important;
	line-height: 1.42857143 !important;
	letter-spacing: 1px;
	border-radius: 0;
	font-family: inherit/*Montserrat, sans-serif*/;
	opacity: 1;
	box-shadow: 0 5px 4px 0 rgba(0, 0, 0, 0.2);
}
.navbar-left {
	font-size: 14px;
    font-weight: 600;
}
.navbar-nav>li>a {
    padding: 10px;
}
.navbar li a, .navbar .navbar-brand {
	color: #fff !important;
}
.navbar-nav li a:hover, .navbar-nav>li.open>a, .navbar-nav>li>ul>li.open>a {
	background-color: #006b99 !important;
}
.navbar-nav>li.active>a, .navbar-nav>li.active>ul.dropdown-menu>li.active>a,
.navbar-nav>li.active>ul.dropdown-menu>li.dropdown-submenu>ul.dropdown-menu>li.active>a {
	color: #0078AC !important;
	background-color: #fff !important;
}
.navbar-default .navbar-toggle {
	border-color: transparent;
	color: #fff !important;
}
.navbar-nav>li>.dropdown-menu, .navbar-nav>li>.dropdown-menu>.dropdown-submenu>.dropdown-menu,
.navbar-nav>li>ul>li>a {
	background-color: #0078AC !important;
}

.navbar-vertical {
	box-shadow: 4px 0 4px rgba(0, 0, 0, 0.2);
}

.nav-pills>li>a {
	border-radius: 0px;
	color: #E2332A;
}
.nav-pills>li.active>a, .nav-pills>li.active>a:focus, .nav-pills>li.active>a:hover {
	color: #fff;
	background-color: #E2332A !important;
}
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu .dropdown-menu {
    top: 0;
    left: 100%;
    margin-top: -1px;
}

/* side navigation bar */
aside#sidebar {
	width: 100%;
}
aside#sidebar nav#mainnav ul {
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 1em;
}

aside#sidebar nav#mainnav li {
	padding:0;
	border-bottom: 1px solid #0081b9;
	border-top: 1px solid #0081b9;
}
aside#sidebar nav#mainnav li.selected-item  {
	border-bottom:none;
}
aside#sidebar nav#mainnav li.selected-item a,
aside#sidebar nav#mainnav li.selected-item a:hover {
	color: #0078AC;
	font-weight: bold;
	background: #fff;
}
aside#sidebar nav#mainnav li a:hover {
	background: #0078AC;
	color: #fff;
	text-decoration: none;
}
aside#sidebar nav#mainnav li a {
	color: #f0f0f0;
	display: block;
	padding: 15px 17px;
	text-align: right;
	font-weight:  bold;
	text-decoration: none;
}

aside#sidebar header h3 { 
	text-align: center;
}

aside#sidebar header h3 a,
aside#sidebar header h3 a:hover,
aside#sidebar header h3 a:visited {
	color: #fff;
	font-size: 1.25em;
	text-decoration: none;
}

aside#sidebar nav#mainnav li a {
	color:#fff;
	background: #0078AC;
}
aside#sidebar nav#mainnav li a:hover {
	color:#fff;
	background: #005c84;
}
aside#sidebar nav#mainnav li a:focus {
	outline:none;
}
aside#sidebar nav#mainnav li a.button { 
    background-color: #0078AC;
    border-radius: 5px;
    color: #FFFFFF;
    display: inline-block;
    font-weight: bold;
    padding: 8px 22px;
    font-size: 0.8em;
    letter-spacing: 0.25px;
    text-decoration: none;
    text-transform: uppercase;
}

aside#sidebar nav#mainnav li a.button-reversed { 
    background-color: #fff;
}

aside#sidebar nav#mainnav li a.button:hover {
	background-color: #0078AC;
}
/* side navigation bar end*/

.slideanim {visibility:hidden;}
.slide {
    animation-name: slide;
    -webkit-animation-name: slide;
    animation-duration: 1s;
    -webkit-animation-duration: 1s;
    visibility: visible;
}

.content {
	margin-top: 45px;
	height: 100%;
}

/* For adding Glyphicon in text input */
/* enable absolute positioning */
.inner-addon { 
    position: relative; 
}

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

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

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

/* Floating the caret to rihgt in dropdown */
.caret-right {
	float:right;
	display: inline-block;
	margin-top: 6px;
}

/* form styling start*/
p.success-note {
	color: green;
	border: solid 1px green;
	width: 50%;
	margin: auto;
	margin-bottom: 20px;
	text-align: center;
}

/* form styling start*/
div.failure-note {
	border: solid 1px red;
	width: 50%;
	margin: auto;
	padding-left: 30px;
	margin-bottom: 20px;
}

div.failure-note p {
	color: red;
}

form .errorlist {
	color: #ba2121;
	background: white;
}

form .errorlist li {
	font-size: 13px;
    display: block;
    margin-bottom: 4px;
}

.input-group, .checkbox-input-group { 
	position:relative; 
	margin-bottom:20px;
	width: 100%;
}
input {
	font-size:18px;
	padding:0 10px 0 5px;
	display:block;
	width:100%;
	border:none;
	border-bottom:1px solid #0078AC;
	color: #333;
}
input:focus { outline:none; }

input[type="submit"] {
	width: 30%;
	margin: 50px 35% 0 35%;
	border: solid 1px #0078AC;
	background-color: white;
	color: #0078AC;
	border-radius: 2px;
}

input[type="submit"]:hover {
	background-color: #0078AC;
	color: white;
	box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.3);
}

.btn-geocrat {
	border: solid 1px #0078AC;
	background-color: white;
	color: #0078AC;
	border-radius: 2px;
}

.btn-geocrat:hover {
	background-color: #0078AC;
	color: white;
	box-shadow: 5px 5px 4px rgba(0, 0, 0, 0.3);
}

select {
	color: #333;
	background-color: white;
	width: 100%;
	margin-top: 5px;
}
select:focus {
	outline: none;
}

.bootstrap-select {
    display: inline-block;
    width: 100%;
}

textarea {
	margin-top: 5px;
	border: solid 1px #0078AC;
	width: 100%;
}
textarea:focus {
	outline: none;
}

/* LABEL */
.input-group label, .checkbox-input-group label:FIRST-CHILD {
	font-size:16px;
	color:#0078AC;
	font-weight:normal;
	pointer-events:none;
	margin-bottom: -5px;
}

/* BOTTOM BARS */
.bar { 
	position:relative;
	display:block;
	width:100%;
}
.bar:before, .bar:after {
	content:'';
	height:2px; 
	width:0;
	bottom:1px; 
	position:absolute;
	background:#0078AC; 
	transition:0.2s ease all; 
	-moz-transition:0.2s ease all; 
	-webkit-transition:0.2s ease all;
}
.bar:before {
	left:50%;
}
.bar:after {
	right:50%; 
}

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after {
	width:50%;
}

/* HIGHLIGHTER */
.highlight {
	top: 40%;
	position:absolute;
	height:55%;
	width:100px;
	pointer-events:none;
	opacity:0.5;
}

/* active state */
input:focus ~ .highlight {
	-webkit-animation:inputHighlighter 0.3s ease;
	-moz-animation:inputHighlighter 0.3s ease;
	animation:inputHighlighter 0.3s ease;
}

/* css for material design checkbox */
.checkbox-input-group input[type=checkbox] {
	display:none;
}
#check-material {
	position:relative;
}
.checkbox-input-group label {
	margin-bottom: 0;
	padding-left:30px;
	cursor:pointer;
	font-weight: normal;
	color: #333;
	line-height: normal;
}

.checkbox-input-group label span {
	display:block;
	position:absolute;
	left:0; 
	-webkit-transition-duration:0.3s;
	-moz-transition-duration:0.3s;
	transition-duration:0.3s;
}
.checkbox-input-group label .box {
	margin-top: 2px;
	border:2px solid #0078AC;
	height:15px;
	width:15px;
	z-index:888;
	-webkit-transition-delay:0.2s; -moz-transition-delay:0.2s; transition-delay:0.2s;
}
.checkbox-input-group label .check {
	margin-top: -5px;
	left: 6px;
	width: 10px;
	height: 20px;
	border:2px solid #0f9d58;  
	border-top: none;
	border-left: none;
	opacity:0;
	z-index:888;
	-webkit-transform:rotate(180deg); -moz-transform:rotate(180deg); transform:rotate(180deg);
	-webkit-transition-delay:0.3s; -moz-transition-delay:0.3s; transition-delay:0.3s;
}

input[type=checkbox]:checked ~ label .box { 
	opacity: 0;
	-webkit-transform: scale(0) rotate(-180deg);
	-moz-transform: scale(0) rotate(-180deg);
	transform: scale(0) rotate(-180deg);
}
input[type=checkbox]:checked ~ label .check {
	opacity: 1; 
	-webkit-transform: scale(1) rotate(45deg);
	-moz-transform: scale(1) rotate(45deg);
	transform: scale(1) rotate(45deg);
}

.modal:before {
	content: '';
	display: inline-block;
	height: 15%;
}

.modal {
	color: black;
}

/* Loader animation start */
.loader {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 9999;
  width: 110px;
  height: 110px;
  margin: -50px 0 0 -50px;
  border: 8px solid #f3f3f3;
  border-radius: 50%;
  border-top: 8px solid #3498db;
  width: 80px;
  height: 80px;
  -webkit-animation: spin 2s linear infinite;
  animation: spin 2s linear infinite;
}

@-webkit-keyframes spin {
  0% { -webkit-transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

.animate-bottom {
  position: relative;
  -webkit-animation-name: animatebottom;
  -webkit-animation-duration: 1s;
  animation-name: animatebottom;
  animation-duration: 1s
}

@-webkit-keyframes animatebottom {
  from { bottom:-100px; opacity:0 } 
  to { bottom:0px; opacity:1 }
}

@keyframes animatebottom { 
  from{ bottom:-100px; opacity:0 } 
  to{ bottom:0; opacity:1 }
}
/* Loader animation end */

/* Triple Spinner Loader Animation starts here */
.triple-spinner {
  align-items: center;
  border: .3em solid transparent;
  border-top: .3em solid #4DB6AC;
  border-right: .3em solid #4DB6AC;
  border-radius: 100%;
  display: flex;
  justify-content: center;
}

.spinnerMax {
  animation: spinnerOne 3s linear infinite;
  height: 3em;
  width: 3em;
}

.spinnerMid {
  animation: spinnerOne 5s linear infinite;
  height: 2.4em;
  width: 2.4em;
}

.spinnerMin {
  animation: spinnerOne 5s linear infinite;
  height: 1.8em;
  width: 1.8em;
}

@keyframes spinnerOne {
  0% {
    transform: rotate(0deg)
  }
  100% {
    transform: rotate(360deg)
  }
}
/* Triple Spinner Loader Animation ends here */

/* Dots moving loading animation starts here */
.dots {
  background: #4DB6AC;
  border-radius: 50%;
  height: 0.5em;
  margin: .1em;
  width: 0.5em;
  display: inline-block;
}

.dot1 {
  animation: fall 1s linear .3s infinite;
}

.dot2 {
  animation: fall 1s linear .2s infinite;
}

.dot3 {
  animation: fall 1s linear .1s infinite;
}

.dot4 {
  animation: fall 1s linear infinite;
}

@keyframes fall {
  0% {
    transform: translateY(-15px);
  }
  25%, 75% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-15px);
  }
}
/* Dots moving loading animation ends here */

/* Material design radio buttons start */
@keyframes ripple {
  0% {
    box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.0);
  }
  50% { 
    box-shadow: 0px 0px 0px 15px rgba(0, 0, 0, 0.1);
  }
  100% {
    box-shadow: 0px 0px 0px 15px rgba(0, 0, 0, 0);
  }
}
.md-radio .md-radio-inline {
	display: inline-block;
}

.md-radio input[type="radio"] {
	display: none;
}
.md-radio input[type="radio"]:checked + label:before {
	border-color: rgb(15, 157, 88);
	animation: ripple 0.2s linear forwards;
}
.md-radio input[type="radio"]:checked + label:after {
	transform: scale(1);
}

.md-radio label {
	display: inline-block;
	height: 20px;
	position: relative;
	padding: 0 30px;
	margin-bottom: 0;
	cursor: pointer;
	pointer-events: auto;
	vertical-align: bottom;
}
.md-radio label:before, .md-radio label:after {
	position: absolute;            
	content: '';  
	border-radius: 50%;
	transition: all .3s ease;
	transition-property: transform, border-color;
}
.md-radio label:before {
	left: 0;
	top: 0;
	width: 20px;
	height: 20px;
	border: 2px solid rgba(0, 120, 172, 0.54);
	margin-top: 5px;
}
.md-radio label:after {
	top: 10px;
	left: 5px;
	width: 10px;
	height: 10px;
	transform: scale(0);
	background: rgb(15, 157, 88);
}
/* Material design radio buttons end */

/* Card Design */
.card {
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
	transition: 0.3s;
	width: calc(100% - 16px);
	margin: auto;
	border-radius: 5px;
	padding: 8px;
}
.card:hover {
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
}
/* Card Design */

/* Toggle Switch */
.switch {
	position: relative;
	display: inline-block;
	width: 48px;
	height: 24px;
}
.switch input { 
	opacity: 0;
	width: 0;
	height: 0;
}
.slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
}
.slider:before {
	position: absolute;
	content: "";
	height: 16px;
    width: 16px;
    left: 3px;
    bottom: 4px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
}
input:checked + .slider {
	background-color: #0078AC;
}
input:focus + .slider {
	box-shadow: 0 0 1px #0078AC;
}
input:checked + .slider:before {
	-webkit-transform: translateX(26px);
	-ms-transform: translateX(26px);
	transform: translateX(26px);
}
/* Rounded sliders */
.slider.round {
	border-radius: 24px;
}
.slider.round:before {
	border-radius: 50%;
}
/* Toggle Switch */

.header-table {
	width: 100%;
}
.align-left {
	text-align: left;
}
.align-right {
	text-align: right;
}
.btn-not-first {
	margin-left: 10px;
}

.header-table {
	width: 100%;
}
.header-table td {
	min-height: 56px;
	padding: 10px 5px 5px 5px;
}
.header-table td h3 {
	padding: 0;
	margin: 0;
}

/* filter header/form specific start */
.row-ff {
	margin: 0;
	padding: 0;
}
.input-group-box {
	margin: 2px auto;
	width: 95%;
}
.input-group-box.input-group-sm>.form-control,
.input-group-box.input-group-sm>.input-group-addon,
.input-group-box.input-group-sm>.input-group-btn>.btn {
   	height: 24px;
   	padding: 2px 5px;
	border: solid 1px #0078ac;
	display: table-cell;
	vertical-align: top;
	margin: 0;
}
.input-group-box.input-group-sm>.input-group-addon {
	background-color: #0078ac;
	color: white;
}
   
.filter-container .bootstrap-select {
	vertical-align: top;
}
.filter-container .bootstrap-select .caret {
	display: none;
}
.filter-container form {
	margin: 10px 0;
	width: 100%;
}

.filter-container .btn-geocrat {
	padding: 1px 6px;
	font-size: 16px;
	line-height: 20px;
    vertical-align: top;
}
/* filter header/form specific end */

/* bubble animation */
@-webkit-keyframes growCircle {
  0%, 100%   { -webkit-transform:scale(0); }
  70%        { background:#DDD; -webkit-transform:scale(1.25); }
}
@-moz-keyframes growCircle {
  0%, 100%   { -moz-transform:scale(0); }
  70%        { background:#DDD; -moz-transform:scale(1.25); }
}
@keyframes growCircle {
  0%, 100%   { transform:scale(0); }
  70%        { background:#DDD; transform:scale(1.25); }
}

/* ANIMATIONS */
@-webkit-keyframes inputHighlighter {
	from { background:#0078AC; }
	to   { width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter {
    from { background:#0078AC; }
	to   { width:0; background:transparent; }
}
@keyframes inputHighlighter {
    from { background:#0078AC; }
	to   { width:0; background:transparent; }
}
/* form styling end*/

@keyframes slide {
	0% {
		opacity: 0;
		-webkit-transform: translateY(70%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0%);
	}
}
@-webkit-keyframes slide {
	0% {
	  	opacity: 0;
	  	-webkit-transform: translateY(70%);
	}
	100% {
	  	opacity: 1;
		-webkit-transform: translateY(0%);
	}
}
@media screen and (max-width: 768px) {
	.col-sm-4 {
		text-align: center;
		margin: 25px 0;
	}
	.btn-lg {
	    width: 100%;
	    margin-bottom: 35px;
	}
	.navbar-nav>li>a {
	    padding: 10px;
	}
}
@media screen and (max-width: 480px) {
	.logo {
		font-size: 150px;
	}
	.navbar-nav>li>a {
	    padding: 10px;
	}
}
