html {
	position: relative;
	min-height: 100%;
}

body {
	padding-top: 70px;
	margin-bottom: 60px;
	font-family: 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
		sans-serif;
	font-weight: 400;	
}

/* barra de navegaciÃ³n */
.navbar {
	margin-bottom: 20px;
}

.navbar-default {
	background-color: #013e7f;
}

.navbar-default .navbar-nav>li>a {
	color: #fff;
}

.navbar-custom-menu, .navbar-right {
    float: right;
}

.navbar-brand {
	background: url('../images/header/logo-zitycard.png') no-repeat left center;
	color: transparent !important;
	min-width: 150px;
}

.navbar-default .navbar-nav>li>a:hover, .navbar-default .navbar-nav>li>a:focus
	{
	background-color: transparent;
	color: #FFF;
}

/* pie */
.footer {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 10px;
}

footer p {
	margin: 0 0 0;
	color: rgb(255, 255, 255) !important;
}

footer .glyphicon {
	padding-left: 7px;
	padding-right: 5px;
}


footer.footer {
	background: none;
	background-color: #107ac3 !important;
	padding-top: 15px;
}

footer p a {
	color: rgb(255, 255, 255) !important;
}

footer p a:hover {
	color: #f0f0f0 !important;
	text-decoration: initial;
}

footer .glyphicon {
	padding-left: 7px;
	padding-right: 5px;
}

/* cabeceras */
h1, .h1 {
	font-size: 30px;
}

h1 small {
  margin-left: 5px;
}

h2, .h2 {
	font-size: 20px;
}

/* enlaces */
a {
	color: #013e7f;
	text-decoration: none;
}

a:hover, a:focus {
	color: #013e7f;
	text-decoration: underline;
	opacity: 0.7;
}

/* estilos de paginaciÃ³n */
.pagination>li>a, .pagination>li>span {
	position: relative;
	float: left;
	padding: 6px 12px;
	margin-left: -1px;
	line-height: 1.42857;
	color: #013e7f;
	text-decoration: none;
	background-color: #FFF;
	border: 1px solid #DDD;
}

.pagination>li>a:hover, .pagination>li>span:hover, .pagination>li>a:focus,
	.pagination>li>span:focus {
	color: #00a19d;
	background-color: #EEE;
	border-color: #DDD;
}

/* padding para que el footer no tape los botones */
body>div.container {
	padding-bottom: 90px;
}

/* estilo para que conserve el margen un checkbox en un formulario horizontal */
.form-horizontal .checkbox input[type=checkbox] {
	margin-left: 0px;
}

/* estilos para el formulario de login */
.form-signin {
	max-width: 330px;
	padding: 14px;
	margin: 0 auto;
}

.form-signin .form-signin-heading, .form-signin .checkbox {
	margin-bottom: 10px;
}

.form-signin .checkbox {
	font-weight: normal;
}

.form-signin .form-control {
	position: relative;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px;
	font-size: 16px;
	margin-bottom: 10px;
}

.form-signin .form-control:focus {
	z-index: 2;
}

.form-signin input[type="email"] {
	margin-bottom: 10px;
}

.form-signin input[type="password"] {
	margin-bottom: 10px;
}

.form-signin a {
	margin-top: 20px;
}

.form-signin .form-control {
	margin-bottom: 10px;
}

.form-signin p {
	margin-top: 10px;
	margin-bottom: 10px;
}

.g-recaptcha {
	margin-bottom: 10px;
}

/* raya debajo del h4 dentro de los dl */
dl h4 {
	border-bottom: 1px solid #e5e5e5;
}

/* padding en los description list (utilizados en los detail) */
dl {
	padding-right: 15px;
	padding-left: 15px;
}

/* animaciÃ³n para que gire el glyphicon */
.glyphicon-refresh-animate {
    -animation: spin .7s infinite linear;
    -ms-animation: spin .7s infinite linear;
    -webkit-animation: spinw .7s infinite linear;
    -moz-animation: spinm .7s infinite linear;
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg);}
    to { transform: scale(1) rotate(360deg);}
}
  
@-webkit-keyframes spinw {
    from { -webkit-transform: rotate(0deg);}
    to { -webkit-transform: rotate(360deg);}
}

@-moz-keyframes spinm {
    from { -moz-transform: rotate(0deg);}
    to { -moz-transform: rotate(360deg);}
}

/* alto mÃ­nimo para las celdas de las tar*/
#no-more-tables td {
	min-height: 35px;
}


@media ( max-width :576px) {
	.no-more-tables td {
		font-size: 12px !important;
	}
}

/* estilos para los botones */
.btn-primary {
	background-color: #013e7f;
}

.btn-primary:hover {
	background-color: #013e7f;
	opacity: 0.7;
}

.btn-primary.disabled, .btn-primary[disabled], fieldset[disabled] .btn-primary,
	.btn-primary.disabled:hover, .btn-primary[disabled]:hover, fieldset[disabled] .btn-primary:hover,
	.btn-primary.disabled:focus, .btn-primary[disabled]:focus, fieldset[disabled] .btn-primary:focus,
	.btn-primary.disabled.focus, .btn-primary.focus[disabled], fieldset[disabled] .btn-primary.focus,
	.btn-primary.disabled:active, .btn-primary[disabled]:active, fieldset[disabled] .btn-primary:active,
	.btn-primary.disabled.active, .btn-primary.active[disabled], fieldset[disabled] .btn-primary.active
	{
	background-color: #013e7f;
}

/* estilos para selectores de ficheros */

.btn-file {
	position: relative;
	overflow: hidden;
}

.btn-file input[type=file] {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 100%;
	min-height: 100%;
	font-size: 100px;
	text-align: right;
	filter: alpha(opacity = 0);
	opacity: 0;
	outline: none;
	background: white;
	cursor: inherit;
	display: block;
}

.btn-panel {
	display: block !important;
}

.panel-body-seleccion-tarjeta {
	padding: 15px;
	overflow: hidden;
	height: 130px;
}

/* estilos para la imagen recortada */
.im-centered {
	margin: auto;
	max-width: 300px;
}

/* texto de ayuda en rojo con la clase text-danger */ 
.help-block.text-danger {
	color: #A94442 !important;
}

/* separaciÃ³n de los glyphicon */
span.help-block span.glyphicon {
	margin-right: 5px;
}

/* estilos personalizados para el select2 */
.select2-container .select2-selection--single {
	height: 34px;
	border-color: #ccc;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 34px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 34px;
}

/* padding en la parte superior para cuando la barra de navegaciÃ³n se va a mÃ¡s de una lÃ­nea */
@media ( min-width :992px) and (max-width:1200px) {
	body>div.container {
		padding-top: 50px;
	}
}

@media ( min-width :768px) and (max-width:992px) {
	body>div.container {
		padding-top: 150px;
	}
}

@media ( min-width :992px) and (max-width:1200px) {
	.panel-body-seleccion-tarjeta {
		padding: 15px;
		overflow: hidden;
		height: 120px;
	}
}

@media (max-width:768px) {
	.panel-body-seleccion-tarjeta {
		padding: 15px;
		overflow: hidden;
		height: 200px;
	}
}

/*  botones de "Entendido" en los alert */
.alert .btn-sm {
	margin-top: 10px;
}

/* quita el padding en los input que van dentro de la misma lÃ­nea */
.nopadding {
	padding: 0px;
}

/* quita bordes duplicados en los list-group-item */
.list-group-item {
    border-width: 1px 0px 1px 0px;
}

.panel .list-group-item:first-of-type{
	border-width: 0px 0px 1px 0px;
}

.panel-title {
	font-size: 14px;
	color: inherit;
}

.panel-title>a {
	font-style: italic;
}

/* AÃ±ade separaciÃ³n entre 2 capas */
.top-buffer {
	margin-top: 20px;
}

/* AÃ±ade un asterisco a los campos obligatorios de los formularios */
.form-group.required .control-label:after {
  content:"*";
  color:red;
  font-size: 20px;
}

/* modificaciones de estilo para el cropper */
.img-cropped {
	width: 240px;
	height: 300px;
	margin-bottom: 15px;
}

/* estilos para la imagen recortada */
.img-cropped-dni {
	width: 280px;
	height: 180px;
	margin-bottom: 15px;
}

/* modificaciones de estilo para el cropper */
#js-image-cropper-foto {
  max-width: 100%;
}
#js-image-cropper-anverso {
  max-width: 100%;
}

#js-image-cropper-reverso {
  max-width: 100%;
}

.cropper-toolbox {
  margin-top: 10px;
}

.cropper-container {
   max-width: 100%;
}

.cropper-container img {
   width: 100%;
}

/* personalizaciÃ³n de pÃ¡gina de centros de recarga */
.centros-recarga>dt {
	margin-top: 10px;
}

.map-responsive {
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
	height: 0;
}

.map-responsive iframe {
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	position: absolute;
}

#sig-canvas {
  border: 2px dotted #CCCCCC;
  border-radius: 15px;
  cursor: crosshair;
}

/* estilos para componente de pestaÃ±as */
.tabbable-line>.nav-tabs>li.active {
	border-bottom: 4px solid #00a19d;
	position: relative;
}

.tabbable-line>.nav-tabs>li.open, .tabbable-line>.nav-tabs>li:hover {
	border-bottom: 4px solid #00a19d;
	border-color: #E7E7E7;
}

/* cabecera del formulario de login */
.header-signin {
	padding: 15px;
	margin: 0 auto;
}

.header-signin h1 {
	font-size: 30px;
	text-transform: uppercase;
	font-weight: bold;
}

.header-signin h1 em {
	background: #013e7f;
	color: #FFF;
	font-style: normal;
}

.dropdown-header {
	display: block;
	padding: 3px 20px;
	font-size: 12px;
	line-height: 1.42857;
	color: #107AC3;
	white-space: nowrap;
	font-weight: bold;
}

code {
 color: inherit;
 background-color: inherit;
}

legend {
	font-size: 18px;
}

.panel-body-seleccion-tarjeta .dl-horizontal {
	margin-bottom: 5px;
}

.panel-body-seleccion-tarjeta input[type='checkbox'] {
	margin-left: 15px;
}