:root{
  --primary:#6680d5;
  --secondary:#435AA0;
  --primarylight: #b6c2eb;
  --light: #f1f5ff;
  --primarydark: #182757;
  --lightmarfil:#FCFCF7;
  --warning:#ff9f66;
  --info:#a271d3;
  --success:#59c885;
  --danger:#ED517B;
  --gray: #989fa6;
  --lightgray:#eee;
  --green:#36adad;
  --lightgreen: #75d4d4;
}

body {
  font-family: 'Lato', sans-serif;
  color: var(--grey);
  font-weight: 400;
}
a{text-decoration: none !important;}

.invisible {display: none;}

/*-----------------------Backgrounds------------------------*/
.bg-primary{background-color: var(--primary) !important;}
.bg-primarylight{background-color: var(--primarylight) !important;}
.bg-secondary{background-color: var(--secondary) !important;}
.bg-light{background-color: var(--light) !important;}
.bg-warning{background-color: var(--warning) !important;}
.bf-info{background-color: var(--info) !important;}
.bg-success{background-color: var(--success) !important;}
.bg-danger{background-color: var(--danger) !important;}
.bg-lightgray{background-color: var(--lightgray) !important;}
.bg-primary{background-color: var(--primarylight) !important;}
.bg-lightmarfil{background-color: var(--lightmarfil) !important;}
/*-----------------------botones-----------------------*/
.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem var(--primarylight)!important;
}
.btn-primary{
  color: white;
  text-align: center;
  background-color: var(--primary)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-primary:hover{
  color:white;
  background-color:var(--green)!important;
}
.btn-primarylight{
  color: white;
  background-color: var(--primarylight)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-primarylight:hover{
  color: white;
  background-color: var(--primary)!important;
}

.btn-secondary{
  text-align: center;
  background-color: var(--secondary)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-info{
  text-align: center;
  background-color: var(--info)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-info:hover{
  color: white;
  background-color: var(--info)!important;
}
.btn-danger{
  text-align: center;
  background-color: var(--danger)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-green{
  color: white;
  text-align: center;
  background-color: var(--green)!important;
  border: none;
  box-shadow: 1 0 0 5;
  display: flex;
}
.btn-green:hover{
  color: var(--primary);
  background-color: var(--lightgreen)!important;
}
.btn-exportar-xls{
  background-color: #fff;
  color: var(--primary);
  text-align: center;
  box-shadow: 1px 1px 3px var(--primary);
}
.btn-exportar-xls:hover{
  background-color:var(--primary);
  color:#fff;
  box-shadow: 1px 1px 3px var(--primarylight);
}
.btn-outline-primary {
  color: var(--primary);
  border-color: var(--primary);
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: var(--primarylight);
  border-color: var(--primarylight);
}
.btn-outline-info {
  color: var(--info);
  border-color: var(--info);
}
.btn-outline-info:hover {
  color: #fff;
  background-color: var(--info);
  border-color: var(--info);
}
a.btn-volver{
  color: var(--primarylight);
  font-size: 1em;
  font-weight: 600;
  padding: .6em;
}
a.btn-volver:hover{
  color: var(--secondary);
  font-size: 1em;
  font-weight: 800;
  padding: .6em;
}
/*----------------------bordes---------------------------*/
.border-left-primary {border-left: 0.25rem solid var(--primary) !important;}
.border-left-secondary {border-left: 0.25rem solid var(--secondary) !important;}
.border-left-success {border-left: 0.25rem solid var(--success) !important;}
.border-left-info {border-left: 0.25rem solid var(--info) !important;}
.border-left-warning {border-left: 0.25rem solid var(--warning) !important;}
/*----------------------Líneas---------------------------*/
hr.divisor{
  margin-top: .3em;
  margin-bottom: 1em;
  border-top: 2px solid var(--primarylight);
}
/*hr.subdivisor{
  border-top: 1.5px dotted var(--light);
}*/

/*----------------------Landing page---------------------------*/
.img-header{
  height:100vh;
  min-height:500px;
  background:linear-gradient(to bottom, #e9f3fc75 80%, #fff 100%), url('../img/img_header.png');
  background-size:cover; 
  background-position:center;
  background-repeat:no-repeat;
}
img.header-logo{
  max-width: 40%;
  min-width: 300px;
}
.header-text{
  color: var(--secondary);
  font-size: 2em;
  font-weight: 600;
  margin-top: .5em;
  margin-left: 3em;
  margin-bottom: 0;
}
.card-landing-title{
  color: var(--primary);
  font-size: 1.3em;
  text-align: center;
  margin-bottom: 0;
}
.card-landing-text{
  color: var(--secondary);
  font-size:.9em;
  text-align: center;
  margin-bottom: 0;
}
.nav-link-landing{
  color: white;
  font-size: 1.1em;
}
.nav-link-landing:hover{
  color: var(--primarydark);
  font-size: 1.1em;
}
@media only screen and (max-width: 576px) {
  .header-text{
    margin-left: 0;
  }
}
.cardBox {
  margin: 1% 0% 3% 0%;
  perspective: 800px;
  transition: all 0.3s ease 0s;
  width: 100%;
}
.cardBox:hover .card-rotate {
  transform: rotateY(180deg);
}
.card-rotate {
  background: white;
  cursor: default;
  height: 200px;
  transform-style: preserve-3d;
  transition: transform 0.4s ease 0s;
  width: 100%;
  -webkit-animation: giro 1s 1;
  animation: giro 1s 1;
   box-shadow: 2px 2px 10px #bebebe;
}
.front, .back {
  backface-visibility: hidden;
  box-sizing: border-box;
  color: var(--primary);
  display: block;
  font-size: 1.2em;
  height: 100%;
  padding: 2.5em 1em 1em;
  position: absolute;
  text-align: center;
  width: 100%;
}
.back {
  transform: rotateY( 180deg);
}
@keyframes giro {
  from {
    transform: rotateY( 180deg);
  }
  to {
    transform: rotateY( 0deg);
  }
}
@media screen and (max-width: 767px) {
  .card {
    height: 285px;
  }
  .cardBox:last-child {
    margin-bottom: 3%;
  }
  .card-landing-title{
    font-size: 1em;
  }
  .card-landing-text{
  font-size: .6em;
  }
}
@media screen and (max-width: 480px) {
  .cardBox {
    width: 94.5%;
    height: auto;
  }
}
footer.footer-landing{
  background-color: var(--primarylight);
  padding: .5em;
}
footer.footer-landing a{
  color: white;
  font-size: 1em;
  font-weight: 400;
  padding: .5em .5em;
}
footer.footer-landing a:hover{
  color: var(--secondary);
  font-size: 1em;
  font-weight: 600;
  padding: .5em .5em;
}
/*------------------------sidebar------------------------*/
.sidebar {
  height: 100%;
  width: 180px;
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  background-color: var(--primary);
  overflow-x: hidden;
}
.sidebar a {
  padding: 12px 8px 12px 30px;
  text-align: left;
  text-decoration: none;
  font-size: 16px;
  color: white;
  display: block;
}
.sidebar a:hover, a.active {
  color:var(--primary);
  background-color:var(--light);
}
.sidebar a:hover.navbar-brand  {
  background-color:transparent;
}

.sidebar-divider{
  border-bottom: 0.5px dotted var(--light);
  margin-top: 0;
}

/*----------------------Containers---------------------------*/
/*Contenedor principal*/
.main {
  height: 100vh;
  margin-left: 180px; /* Igual al ancho de la barra lateral */
  padding-left: 0px;
  padding-right: 0px;
}
.jumbotron{
  background-color: #fff;
}

/*---------------------------Navbar---------------------------*/
.navbar{
  background-color:white;
  padding: .7em;
  margin-bottom: 2.5em;
}
.navbar .navbar-nav{
  padding: 0.5em 0;
  text-align: center;
}

.navbar .nav-link{
  padding: 0 .5em ;
}

.navbar .nav-item a{
  color:var(--primarylight);
  font-size: 18px;
  font-weight:400;
  text-decoration: none;
 }
 .navbar .nav-item a:hover{
  color:var(--primary);
  font-size: 18px;
  font-weight:400;
  text-decoration: none;
 }
 .navbar .nav-item a.dropdown-item {
  color: var(--gray);
  font-size: 14px;
  font-weight:300;
}
.navbar span{
  color: var(--gray);
  font-size: 1em;
  font-weight:300;
  padding-right: .5em;
  padding-left: 1.3em;
}

.dropdown{
  margin-right: 3em;
}
.dropdown .dropdown-menu {
  margin: .125rem 0 0 -3rem;
  box-shadow: 0 3px 3px 0 var(--lightgray);
 }
/*----------------------Textos, títulos, subtítulos---------------------------*/
.subtitulo{
  font-size: 1.5rem;
  font-weight:600;
  color:var(--primarylight);
  margin-bottom:.3em;
}
/*
.texto-td{
  font-size: 1em; 
  color: var(--gray);
  padding-top:2px;
}*/
.importe-td{
  text-align: right;
  background-color: transparent;
  border: none;
}
.form-control-sm::placeholder {
  color:var(--gray);
  font-size: .9em;
}

label{
  font-family: 'Source Sans Pro', sans-serif;;
  color: var(--secondary);
  font-size: .95em;
  margin: 0;
  padding-bottom: .2em;
}
select.form-control{
  color:var(--gray);
  font-size:.9em;
}

/*----------------------Tables---------------------------*/
.table{
  margin-top: 1em;
  font-size: .92em;
}
.table.table-east a{
  color: var(--primary);
}
.table.table-east thead th{
  background-color: #f1f5ff;
  color:var(--primary);
  font-size: 1.1em;
  font-weight: 400;
  text-align: center;
  border: 2px solid #fff;
  padding: .35em .5em;
  vertical-align: middle;
}

.table.table-east tfoot  td{
  background-color: #f1f5ff;
  color:var(--primary);
  font-size: 1.1em;
  font-weight: 600;
  text-align: right;
  border: 2px solid #fff;
  padding: .35em .5em;
  vertical-align: middle;
}
.table.table-east tfoot  td.td-dist{
  background-color: #fff;
  color:var(--primary);
  font-size: .9em;
  font-weight: 400;
  text-align: right;
  border: 2px solid #f1f5ff;
  padding: .35em .5em;
  vertical-align: middle;
}
.table.table-east tfoot td input{
  background-color: transparent;
  border: none;
  color: var(--primary);
  font-weight: 600;
  padding: 0;
}
.table.table-east tfoot  td.td-dist input{
  font-weight: 600;
}
.table.table-east tbody tr{
  color: var(--gray);
  padding: .35em .5em;
  vertical-align: middle;
  border-bottom: .5px solid #e0e9ff;
}
.table.table-east tbody td{
  border: none;
  padding: .35em .5em;
}
.table-hover.table-east tbody tr:hover, .table-hover.table-ipecus2 tbody tr:hover  {
  background-color: var(--lightmarfil) !important;
}

.page-item.active .page-link {
    z-index: 3;
    color: #fff;
    background-color: var(--primary);
    border-color: var(--primary);
}

/*----------------------Tabs---------------------------*/
#tabs a.nav-link{
  color: var(--gray);
  text-align: center;
}
#tabs a.nav-link.active{
  font-size:1em;
  font-weight:600;
  color:var(--primary);
}
.nav-tabs {
  border-bottom: 2px solid var(--primarylight);
}
/*----------------------AYUDA---------------------------*/
/*.nav-ayuda{
  background-color: var(--primary);
}

#accordion a{
  color:var(--primary) ;
}*/

table.table-expandable > tbody > tr:nth-child(odd) {
  cursor: pointer;
}

table.table-expandable.table-hover > tbody > tr:nth-child(even):hover td {
  background-color: white;
}

table.table-expandable > tbody > tr div.table-expandable-arrow {
  background:transparent url(../img/arrows.png) no-repeat scroll 0px -16px; width:16px; height:16px; display:block;
}

table.table-expandable > tbody > tr div.table-expandable-arrow.up {
  background-position:0px 0px;
}

/* CSS DE LAS CARD DE MUESTRA */
.sidebar a:visited{
  background-color: #75d4d4;
}

.cardDos {
  background-color: #fff;
  border-radius: 10px;
  border: none;
  position: relative;
  margin-bottom: 30px;
  box-shadow: 0 0.46875rem 2.1875rem rgba(90,97,105,0.1), 0 0.9375rem 1.40625rem rgba(90,97,105,0.1), 0 0.25rem 0.53125rem rgba(90,97,105,0.12), 0 0.125rem 0.1875rem rgba(90,97,105,0.1);
}
.l-bg-cherry {
  background: linear-gradient(to right, #493240, #f09) !important;
  color: #fff;
}

.l-bg-blue-dark {
  background: linear-gradient(to right, #373b44, #4286f4) !important;
  color: #fff;
}

.l-bg-green-dark {
  background: linear-gradient(to right, #0a504a, #38ef7d) !important;
  color: #fff;
}

.l-bg-orange-dark {
  background: linear-gradient(to right, #a86008, #ffba56) !important;
  color: #fff;
}

.cardDos .card-statistic-3 .card-icon-large .fas, .card .card-statistic-3 .card-icon-large .far, .card .card-statistic-3 .card-icon-large .fab, .card .card-statistic-3 .card-icon-large .fal {
  font-size: 110px;
}

.cardDos .card-statistic-3 .card-icon {
  text-align: center;
  line-height: 50px;
  margin-left: 15px;
  color: #000;
  position: absolute;
  right: 5px;
  top: 20px;
  opacity: 0.2;
}

.none_sidebar {
  display: none !important;
}