body, html {
    /*font-family: "Gill Sans Extrabold", Helvetica, sans-serif;*/
    font-family: "Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
    font-size: 15px;  
    background-color:#454d55;
    overflow-y: auto;
    height: 100vh;
    display: flex;
    flex-direction: column;
}
.pagination-info, .page-list {
    color: white !important;
}

i{
    cursor: pointer;
}

.navbar{
    /*padding: 0.2rem 1rem;*/
}
.contenedor {
    /*height: 88.5vh;*/
}
.contenido{
    width: 100%;
    padding: 10px 15px 10px 15px;
}
#navtop, #footer {
    background-color: #343a40;
}
.dropleft .dropdown-menu {
    top: 20px;
}
#dropdownMenuButton {
    cursor: pointer;
}
#iAddDestino{
    cursor: pointer;
}
.puntero{
    cursor: pointer;
}
.oculto {
    display: none;
}
#body-row {
    flex: 1;
    flex-wrap: unset;
    /*min-height: 100vh;*/
    margin-left:0;
    margin-right:0;
}
#sidebar-container {
    /*min-height: 88.5vh;*/   
    background-color: #333;
    padding: 0;
}

/* Sidebar sizes when expanded and expanded */
.sidebar-expanded {
    width: 255px;
}
.sidebar-collapsed {
    width: 60px;
}

.list-group-item{
    padding: 0.5rem 1.5rem !important;
}

/* Menu item*/
#sidebar-container .list-group a {
    height: 40px;
    color: white;
}

/* Submenu item*/
#sidebar-container .list-group .sidebar-submenu a {
    height: 45px;
    padding-left: 30px;
}
.sidebar-submenu {
    font-size: 0.9rem;
}

/* Separators */
.sidebar-separator-title {
    background-color: #333;
    height: 35px;
}
.sidebar-separator {
    background-color: #333;
    height: 25px;
}
.logo-separator {
    background-color: #333;    
    height: 60px;
}

/* Closed submenu icon */
#sidebar-container .list-group .list-group-item[aria-expanded="false"] .submenu-icon::after {
  content: "\f0dd";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  display: inline;
  text-align: right;
  padding-left: 10px;
}
/* Opened submenu icon */
#sidebar-container .list-group .list-group-item[aria-expanded="true"] .submenu-icon::after {
  content: " \f0de";
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  display: inline;
  text-align: right;
  padding-left: 10px;
}
.acciones {
    display: flex;
    justify-content: space-around;
}
/* Cada icono ocupa el mismo ancho de columna, tenga o no accion la fila,
   para que las columnas de la tabla queden alineadas entre filas. */
.acciones a {
    flex: 1 1 0;
    text-align: center;
}
/* Reserva el espacio del icono sin mostrarlo, en vez de quitarlo del layout. */
.acciones a.accion-oculta {
    visibility: hidden;
}
.badge{
    margin-left: -3rem !important;
    font-size: 70%;
}
#frmNuevo{
    padding: .75rem 1rem;
    margin-bottom: 1rem;
    border-radius: .25rem;
}

.btn{
    font-size: 15px;
}
.icondev{
    margin-top: 10%;
    width: 100%;
    display: flex;
    justify-content: center;
}
footer {
    flex-shrink: 0;
}

.no-wrap {
    overflow: hidden;
    white-space: nowrap;
}

.formPerfil{
    padding: .75rem 1rem;
    margin-bottom: 1rem;
    border-radius: .25rem;
}


/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
    
}

/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {

}

/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {
    
}

/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {
}

/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {
}

#alert-container {
    position: fixed;
    top: 70px;
    right: 15px;
    z-index: 1080;
    width: 380px;
    max-width: 90vw;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.alerta-incumplimiento-titulo {
    display: flex;
    align-items: center;
    gap: 6px;
    font-weight: 700;
}
.alerta-incumplimiento dl {
    margin: 6px 0 0;
    display: grid;
    grid-template-columns: auto 1fr;
    column-gap: 6px;
    row-gap: 2px;
    font-size: 0.9rem;
}
.alerta-incumplimiento dt {
    font-weight: 600;
}
.alerta-incumplimiento dd {
    margin: 0;
}

