@import url(https://fonts.googleapis.com/css?family=Oswald:400,500,700|Roboto:400,500);

:root {
    --azul: #202F50;
    --azul-sombra: rgba(32,47,80,.8);
    --rojo-sombra: rgba(226,37,35,.8);
    --amarillo-sombra: rgba(252, 249, 37, .8);
}

*,
:after,
:before {
	box-sizing: border-box
}

html{
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	font-size: 16px;
}

body {
    margin: 0;
    font-family: Roboto,Helvetica Neue, Arial, sans-serif, Apple Color Emoji, Segoe UI Symbol;
    font-size: .9375rem; /*15px.9375rem*/
    font-weight: 400;
    line-height: 1.5;
    color: #383b3d;
    text-align: left;
    background-color: #f5f6f7;
    /*overflow-x: hidden;*/ /*cambio*/
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

a{
	color: rgba(33,150,243,.85);
	text-decoration: none;
	background-color: transparent;
}

ul{
	margin-top: 0;
}

img{
	vertical-align: middle;
	border-style: none;
}

h1, h2, h3, h4, h5, h6{
	margin-top: 0;
	margin-bottom: 1rem;
}

.mb-encabezados h1, .mb-encabezados h2, .mb-encabezados h3, .mb-encabezados h4, .mb-encabezados h5, .mb-encabezados h6{
	margin-bottom: 0;
}

.mb-encabezados{
	margin-bottom: 1rem;
}

.mb-encabezados hr{
	margin-top: 5px;
	margin-bottom: 0;
	border: 0;
	border-top: 1px solid rgba(0,0,0,.1);
}

.ml-auto, .mx-auto{
	margin-left: auto!important;
}

.mr-auto, .mx-auto{
	margin-right: auto!important;
}

.m-0 {
	margin: 0!important
}

.mb-0{
	margin-bottom: 0!important;
}

.mb-1{
	margin-bottom: .25rem!important;	
}

.mb-5{
	margin-bottom: 3rem!important;
}

.mr-2,
.mx-2 {
	margin-right: .5rem!important
}

.pt-0, .py-0 {
	padding-top: 0!important
}

.bg-primario {
	background-color: var(--azul)!important;
}

.bg-oscuro{
	background-color: #39444d!important;
}

.mt-5{
	margin-top: 3rem!important;
}

.centra-contenido-justificado{
	justify-content: center!important;
}

.contenido {
	position: relative;
	height: 100%;
	transition: -webkit-transform .2s;
	transition: transform .2s;
	transition: transform .2s, -webkit-transform .2s;
	min-width: 320px;
	z-index: 0;
	order: 1;
	flex: 1 1 0%
}

.principal, .principal .cajon-principal, .principal .contenido{
	height: auto;
	min-height: 100%;
	overflow: visible;
}
    
.pagina {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem
}

.pagina__contenedor{
	max-width: 994px;
	padding-right: 1.25rem;
	padding-left: 1.25rem;
	margin-right: auto;
	margin-left: auto;
}

.flex{
	flex: 1 1 0%;
}

.flex-nowrap{
	flex-wrap: nowrap!important;
}

.barnav {
	position: relative;
	padding: .5rem 1rem;
}

.contenedor-fluido{
	width: 100%;
	padding-right: .625rem;
	padding-left: .625rem;
	margin-right: auto;
	margin-left: auto;
}

.barnav,
.barnav>.contenedor,
.barnav>.contenedor-fluido {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between
}


.barnav-toggler {
	padding: 1rem 0;
	font-size: 1.171875rem;
	line-height: 1;
	background-color: transparent;
	border: 1px solid transparent;
	border-radius: .25rem;
	color: hsla(0,0%,100%,.5);
}

.barnav-toggler:not(:disabled):not(.disabled) {
	cursor: pointer
}

.barnav-expand {
	flex-flow: row nowrap;
	justify-content: flex-start;
}
.barnav-expand>.contenedor-fluido{
	flex-wrap: nowrap;
	padding-right: 0;
	padding-left: 0;
}

.barnav-toggler:not(:last-child) {
	margin-right: 1rem;
}

.barnav-marca{
	margin-right: 1rem;
	line-height:  inherit;
	white-space: nowrap;
	padding-top: 0;
	padding-bottom: 0;
	font-size: 1.6rem;
	font-weight: 500;
	display: flex;
	align-items: center;
	color: #fff;
}

.barnav-marca:focus,
.barnav-marca:hover{
	text-decoration: none;
	color: #fff;
}

.barnav-nav{
	display: flex;
	flex-direction: row;
	padding-left: 0;
	margin-bottom: 0;
	list-style: none;
}

.barnav-nav .nav-item{
	display: flex;
	align-items: center;
}

.barnav-nav .nav-enlace{
	color: hsla(0, 0%, 100%, .5);
	padding-left: 0;
	padding-right: 0;
	font-weight: 500;
	display: flex;
	align-items: center;
	position: relative;
}
.barnav-nav .nav-enlace:focus,
.barnav-nav .nav-enlace:hover{
	text-decoration: none;
	color: hsla(0, 0%, 100%, .75)
}
.barnav-nav .activo>.nav-enlace{
	color: #fff;
}
.barnav .barnav-nav .nav-item+.nav-item,
.barnav .barnav-nav+.barnav-nav{
	margin-left: 1rem;
}

.encabezado {
	position: relative;
	z-index: 1;
	margin-bottom: 1.25rem;
	height: 200px
}

.encabezado :last-child{
	margin-bottom: 0;
}

.encabezado [data-primario] {
	z-index: 1
}

.encabezado{
	height: auto;
}

.principal>.encabezado {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1
}

.encabezado__gd{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	overflow: hidden;
}

.encabezado__gd-frontal, .encabezado__gd-posterior{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
	background-size: cover;
}

.encabezado__gd-posterior {
	opacity: 0
}

.encabezado--fijo {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	margin-bottom: 0
}

.encabezado__content{
	position: relative;
	width: 100%;
	height: 100%;
}

body, html{
	height: 100%;
	position: relative;

}

.barnav{
	min-height: 64px;
	padding-top: 0;
	padding-bottom: 0;
	font-size: 1rem;
}


/*contenido y menu*/

.principal__contenido{
	position: relative;
	z-index: 0;
}

.cajon-principal {
    height: 100%;
    position: relative;
    overflow: hidden;
    display: flex;
    /*-webkit-backface-visibility: hidden;*/ /*cambio*/
    /*backface-visibility: hidden;
    will-change: overflow;*/
}

.cajon-menu{
	position: relative;
	visibility: hidden;
    z-index: 2;
}

.cajon-menu[data-cerrado], .cajon-menu[data-abierto]{
	visibility: visible;
}

.cajon-menu[data-persistente]{
	width: 256px;
}

.cajon-principal .cajon-menu{
	position: relative;
}

.cajon-menu[data-persistente][data-posicion=left]{
	right: auto;
}

.cajon-principal .cajon-menu[data-persistente]{
	width: 256px;
}

.cajon-principal .cajon-menu[data-persistente][data-posicion=left]{
	order: 0;
}

.cajon-menu__capa, [data-abierto]>.cajon-menu__contenido{
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

.cajon-menu__capa{
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	transition: opacity .2s ease;
	opacity: 0;
	background-color: rgba(0, 0, 0, .5);
}

[data-abierto]>.cajon-menu__capa{
	opacity: 1;
}

[data-persistente]>.cajon-menu__capa{
	visibility: hidden;
	opacity: 0;
}

.cajon-menu__contenido{
	position: fixed;
	top: 0;
	bottom: 0;
	width: 256px;
	transition: -webkit-transform .2s ease;
	transition: transform .2s ease;
	transition: transform .2s ease, -webkit-transform .2s ease;
	background-color: #fff;
	left: 0;
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}

.cajon-menu__contenido{
	background-color: transparent;
}

.cajon-menu__capa{
	background-color: rgba(56, 59, 61, .5);
}

.cajon-principal .cajon-menu__contenido{
	top: 64px;
}

/*barra lateral*/
.barra-lateral-oscuro{
	color: #dfe2e6;
	background: transparent;
}

.barra-lateral{
	position: relative;
	height: 100%;
	text-align: initial;
	-ms-scroll-chaining: none;
	overscroll-behavior: none;
}

.barra-lateral .abierto{
	background: rgba(38,45,51,.5);
}

.barra-lateral-oscuro.barra-lateral-left{
	border-right: 1px solid rgba(0,0,0,.15);
}

.barra-lateral-p-y{
	padding-bottom: 2rem;
}

.barra-lateral-p-t, .barra-lateral-p-y{
	padding-top: 2rem;
}

.barra-lateral-enc{
	font-weight: 500;
	font-size: .75rem;
	font-family: inherit;
	text-transform: uppercase;
	letter-spacing: normal;
	line-height: 1.5rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	margin-bottom: 2rem;
}

.barra-lateral-enc{
	margin-bottom: .5rem!important;
}

.barra-lateral-oscuro .barra-lateral-enc,
.barra-lateral-oscuro .barra-lateral-enc>a,
.barra-lateral-oscuro .barra-lateral-texto,
.barra-lateral-oscuro p{
	color: #dfe2e6;
}

.barra-lateral-menu{
	margin-bottom: 2rem;
	padding: 0;
	list-style: none;
}

.barra-lateral-menu-item{
	position: relative;
	overflow: hidden;
}

.barra-lateral-menu-boton{
	display: flex;
	align-items: center;
	font-weight: 400;
	/*line-height: 42px;*/
	padding:0 1.5rem;
	font-size: 15px;
	color: #8a9299;
}

.barra-lateral-menu-boton,
.barra-lateral-menu-boton:focus,
.barra-lateral-menu-boton:hover{
	text-decoration: none;
}

.barra-lateral-menu-boton:focus{
	color: #8a9299;	
}

.barra-lateral-menu-boton:hover{
	color: #cfdbe6;
	background: transparent;
}

.barra-lateral-menu-boton:hover .barra-lateral-menu-icono,
.barra-lateral-menu-boton:hover .barra-lateral-menu-toggle-icono{
	color: hsla(0, 0%, 100%, .54);
}

.abierto>.barra-lateral-menu-boton{
	background-color: transparent;
	color: #dfe2e6;
}

.barra-lateral-menu-boton:not(.sub){
	padding-top: .5rem;
	padding-bottom: .5rem;
}

.barra-lateral-menu-icono{
	vertical-align: middle;
	font-size: 24px;
	display: inline-block;
	line-height: normal;
	position: relative;
	color: hsla(0,0%,100%,.54);
}

.barra-lateral-menu-icono--left{
	margin-right: .5rem;
}

.abierto>.barra-lateral-menu-boton .barra-lateral-menu-icono{
	color: #dfe2e6;
}

/*.barra-lateral-menu .barra-lateral-menu-item:not(:last-child) .barra-lateral-menu-boton{
	padding-bottom: 1.2rem; 
}*/

.barra-lateral-menu-toggle-icon{
	position: relative;
	font-size: 1.25rem;
}

.barra-lateral-menu-badge, .barra-lateral-menu-toggle-icon{
	margin-left: 5px;
}

.barra-lateral-menu-toggle-icon{
	transition: -webkit-transform .15s;
	transition: transform .15s;
	transition: transform .15s, -webkit-transform .15s;
	-webkit-transform: translate(0);
	transform: translate(0);
	color: #8a9299;
}

.barra-lateral-menu-toggle-icon:before {
    font-family: 'ANDEFONT';
    content: '\ea44';
    display: flex;
    align-items: center;
    font-size: inherit;
    color: inherit;
}

.abierto>.barra-lateral-menu-boton .barra-lateral-menu-toggle-icon{
	color: #dfe2e6;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.barra-lateral-menu>.activo>.barra-lateral-menu-boton{
	background-color: rgba(38, 45, 51, .5);
	color: #cfdbe6;
}

.barra-lateral-menu>.activo>.barra-lateral-menu-boton .barra-lateral-menu-icono{
	color: #cfdbe6;
}

/*submenu*/
.barra-lateral-submenu{
	display: none;
	list-style: none;
	margin: 0;
	padding: 0;
}

.barra-lateral-submenu .barra-lateral-menu-texto{
	border-left: 1px solid rgba(46, 49, 51, .9);
	padding-left: 1.25rem;
	padding-bottom: .5rem;
	position: relative;
}

.barra-lateral-submenu .barra-lateral-menu-texto:after{
	content: '';
	width: 8px;
	height: 8px;
	position: absolute;
	background-color: #cfdbe6;
	display: none;
	left: -4px;
	top: 12px;
	border-radius: 100%;
}

.barra-lateral-submenu .barra-lateral-menu-boton,
.barra-lateral-submenu .barra-lateral-menu-icono{
	color: #8a9299;
}

.barra-lateral-submenu .activo>.barra-lateral-menu-boton,
.barra-lateral-submenu .activo>.barra-lateral-menu-boton .barra-lateral-menu-icono,
.barra-lateral-submenu .barra-lateral-menu-boton:hover,
.barra-lateral-submenu .barra-lateral-menu-boton:hover .barra-lateral-menu-icono{
	color: #cfdbe6;
}

.activo>.barra-lateral-menu-boton .barra-lateral-menu-texto:after{
	display: block;
}

.abierto>.barra-lateral-submenu{
	display: block;
}

/*.collapse:not(.show){
	display: none;
}

.collapsing{
	position: relative;
	height: 0;
	overflow: hidden;
	transition: height .35s ease;
}*/

@media screen and (prefers-reduced-motion:reduce){
	.collapsing{
		transition: none;
	}
}

.sm-sangria>.barra-lateral-menu-item .barra-lateral-menu-boton{
	padding-left: 2.25rem;
}

.tarjeta {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid #f0f1f2;
    border-radius: .171875rem;
    margin-bottom: 1.5rem;
    box-shadow: 0 2px 3px rgba(56,59,61,.05);
}
.tarjeta-azul {
    box-shadow: 0 6px 7px var(--azul-sombra) !important;
}
.tarjeta-rojo {
    box-shadow: 0 6px 7px var(--rojo-sombra) !important;
}
.tarjeta-amarillo {
    box-shadow: 0 6px 7px var(--amarillo-sombra) !important;
}
.tarjeta-encabezado{
	padding: .75rem 1.25rem;
	margin-bottom: 0;
	color: inherit;
	background-color: #fff;
	border-bottom: 1px solid #f0f1f2;
}
.tarjeta-titulo{
	margin: 0;
	font-weight: 400;
	line-height: 1.5;
	color: rgba(57,68,77,.84);
}
.tarjeta-titulo>a{
	color: rgba(57,68,77,.84);
}
.tarjeta-titulo>a:hover{
	text-decoration: none;
	color: var(--azul);
}
.tarjeta-cuerpo{
	flex: 1 1 auto;
	padding: 1.25rem;
}
.tarjeta-pie{
	padding: .75rem 1.25rem;
	background-color: #fff;
	border-top: 1px solid #f0f1f2;
}
.border-left-3{
	border-left: 4px solid #f0f1f2!important;
}
.border-left-primario{
	border-left-color: var(--azul)!important;
}
.border-left-error {
    border-left-color: #c82333 !important;
}
.tarjeta-2por1 .tarjeta-cuerpo{
	padding: .625rem 1.25rem;
}
.tarjeta-columnas .tarjeta{
	margin-bottom: 1.5rem;
}
@media (min-width: 576px){
	.tarjeta-columnas{
		-webkit-column-count: 2;
		column-count: 2;
		-webkit-column-gap: 1.5rem;
		column-gap: 1.5rem;
		orphans: 1;
		widows: 1;
	}
	.tarjeta-columnas .tarjeta{
		display: inline-block;
		width: 100%;
	}
}

.embedido-responsive{
	position: relative;
	display: block;
	width: 100%;
	padding: 0;
	overflow: hidden;
}
.embedido-responsive:before {
	display: block;
	content: ""
}
.embedido-responsive .embedido-responsive-item{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}
.embedido-responsive-16by9:before {
	padding-top: 56.25%
}

.centra-texto{
	text-align: center!important;
}
.align-items-center{
	align-items: center!important;
}

.media {
    display: flex;
    align-items: center; /*flex-start*/
    margin-top: 0;
}

.media-left{
	padding-right: 1.25rem;
}

media-right {
    padding-left: 1.25rem;
}

.media-cuerpo{
	flex: 1;
}

.icono-pointer {
    border: 1px solid transparent;
    vertical-align: middle;
    text-align: center;
    cursor: pointer;
    font-size: 15px;
    box-shadow: inset 0 3px 5px rgba(0,0,0,.125);
    text-decoration: none;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
    justify-content: center;
    align-items:center;
    display:block;
    padding: .25rem .5rem;
    line-height: 1.5;
    border-radius: .2rem;
}

.icono-pointer:hover{
    text-decoration: none;
    color: var(--azul);
}

.icono-pointer-blanco{
    color: #212529;
    background-color: #fff;
    border-color: #f0f1f2;
}

.icono-mediano{
    font-size: 20px;
}

.icono-pointer-letra{
    font-size: 9px;
    display: block;
    width: 100%;
    margin:0;
    padding:0;
    word-spacing: 2px;
}

.tarjeta .media-left{
	padding-right: .625rem;
}

.redondeado{
	border-radius: .25rem!important;
}

.progreso{
	display: flex;
	height: 7px;
	overflow: hidden;
	background-color: #e9ecef;
	box-shadow: inset 0 0.1rem 0.1rem rgba(0,0,0,.1);
}

.barra-progreso{
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	background-color: var(--azul);
	transition: width .6s ease;
}

.rayas{
	background-image: linear-gradient(45deg, hsla(0,0%,100%,.15) 25%, transparent 0, transparent 50%, hsla(0,0%,100%,.15) 0,hsla(0,0%,100%,.15) 75%,transparent 0,transparent);
	background-size: 7px 7px;
}

.bg-success{
	background-color: #66bb6a!important;
}

.bg-danger{
	background-color: #c82333!important;
}
.placa{
	display: inline-block;
	padding:  .25em .4em;
	font-size: .9rem;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	vertical-align: baseline;
	border-radius: .25rem;
}

.placa-correcto{
	color: #fff;
	background-color: #66bb6a!important;
}

.placa-incorrecto {
    color: #fff;
    background-color: #c82333 !important;
}

.placa-secundario {
    color: #fff;
    background-color: #8C8987 !important;
}

.cajon-completo-vh{
	display: flex!important;
	min-height: 100vh;
}

.shadow-levantado{
	box-shadow: 0 5px 15px 0 hsla(0,0%,89%,.5)
}

@media screen and (max-width: 380px) {
    .barnav-marca{
        font-size: 1.4rem;
    }
    .barnav{
        font-size: .8rem;
    }
}

.per-icono{
    width: 80px;
    height: 80px;
    border: 4px solid grey;
    border-radius: 50%;
    margin: 20px auto;
    padding: 0;
    position: relative;
    box-sizing: content-box;
}

.per-icono.correcto {
    border-color: rgba(165,220,134,.2);
}

.per-icono.correcto .per-linea{
    height: 5px;
    background-color: #a5dc86;
    display: block;
    border-radius: 2px;
    position: absolute;
    z-index: 2;
}

.per-icono.correcto .per-linea.punta{
    width: 25px;
    left: 14px;
    top: 46px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.per-icono.correcto .per-linea.largo{
    width: 47px;
    right: 8px;
    top: 38px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.per-icono.incorrecto {
    border-color: rgba(94,94,94,.1);
}

.per-icono.incorrecto .per-linea {
    height: 5px;
    background-color: #8C8987;
    display: block;
    border-radius: 2px;
    position: absolute;
    z-index: 2;
}

.per-icono.incorrecto .per-linea.raya {
    width: 40px;
    top: 38px;
    right: 20px;
}

.per-icono.error {
    border-color: rgba(242,116,116,.39);
}

.per-icono.error .per-linea {
    position: absolute;
    height: 5px;
    width: 47px;
    background-color: #f27474;
    display: block;
    top: 37px;
    border-radius: 2px;
}

.per-icono.error .per-linea.izq {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 17px;
}

.per-icono.error .per-linea.der {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    right: 16px;
}

/*cambio*/
/*.principal, .cajon-principal {
    overflow: hidden !important;
}*/
/*cambio*/
/*.cajon-principal {
    height: calc(100vh - 65px) !important;
    min-height: 100% !important;
}*/

/*cambio*/
/*.contenido, .cajon-menu{
    overflow: auto!important;
    height: auto!important;
    -webkit-overflow-scrolling: touch;
}*/
        /*
Para poder convertir una medida de pixeles a rem solo tienes que multiplicar el tamaño que quieres obtener por el número 0.0625, eso te dará el tamaño que debes usar en rem. 
Así es como he llegado a definir que 75rem es igual a 1200px:
75rem = 1200px x 0.0625
*/


/*ANIMACION DE CARGA PARA SPINNERS*/
.carga-animar {
    -animation: girar .7s infinite linear;
    -webkit-animation: girar2 .7s infinite linear;
}

@-webkit-keyframes girar2 {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(360deg);
    }
}

@keyframes girar {
    from {
        transform: scale(1) rotate(0deg);
    }

    to {
        transform: scale(1) rotate(360deg);
    }
}