/*
navbar-default personalizada en:
http://work.smarchal.com/twbscolor/

*/
.navbar-default {
  background-color: #3498db;
  border-color: #2980b9;
}
.navbar-default .navbar-brand {
  color: #ecf0f1;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #ecdbff;
}
.navbar-default .navbar-text {
  color: #ecf0f1;
}
.navbar-default .navbar-nav > li > a {
  color: #ecf0f1;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #ecdbff;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #ecdbff;
  background-color: #2980b9;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  color: #ecdbff;
  background-color: #2980b9;
}
.navbar-default .navbar-toggle {
  border-color: #2980b9;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #2980b9;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #ecf0f1;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #ecf0f1;
}
.navbar-default .navbar-link {
  color: #ecf0f1;
}
.navbar-default .navbar-link:hover {
  color: #ecdbff;
}

@media (max-width: 767px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #ecf0f1;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #ecdbff;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #ecdbff;
    background-color: #2980b9;
  }
}

/* Estilos para la barra vertical */
.navbar-vertical {
  width: 250px; /* Ancho de la barra vertical */
  height: 100vh; /* Altura completa de la ventana */
  position: fixed; /* Fija la barra en la izquierda */
  top: 0;
  left: 0;
  background-color: #f8f9fa; /* Color de fondo */
  border: none;
  box-shadow: 2px 0 4px rgba(0, 0, 0, 0.1); /* Sombra lateral */
  overflow-y: auto; /* Scroll si el contenido es largo */
}

.navbar-vertical .navbar-brand {
  font-weight: bold;
  color: #333;
  display: block;
  padding: 15px;
  text-align: center;
  border-bottom: 1px solid #ddd; /* Línea debajo del brand */
}

.navbar-vertical .navbar-nav {
  width: 100%;
  margin: 0;
}

.navbar-vertical .nav > li > a {
  color: #555;
  padding: 10px 15px;
  display: block;
  border-bottom: 1px solid #eee; /* Línea entre elementos */
}

.navbar-vertical .nav > li > a:hover,
.navbar-vertical .nav > li > a:focus {
  background-color: #e9ecef; /* Color de fondo al pasar el mouse */
  color: #000;
}

.navbar-vertical .navbar-nav > .active > a,
.navbar-vertical .navbar-nav > .active > a:hover,
.navbar-vertical .navbar-nav > .active > a:focus {
  color: #000;
  background-color: #e9ecef; /* Color de fondo para el elemento activo */
  border-left: 4px solid #000; /* Borde izquierdo para el elemento activo */
}

.navbar-vertical .navbar-bottom {
  position: absolute;
  bottom: 0;
  width: 100%;
}

/* Estilos para el botón de toggle en móviles */
.navbar-vertical .navbar-toggle {
  display: block;
  margin: 10px auto;
  border: none;
  background-color: transparent;
}

.navbar-vertical .navbar-toggle .icon-bar {
  background-color: #333;
}

/* Ocultar la barra en móviles por defecto */
@media (max-width: 768px) {
  .navbar-vertical {
      left: -250px; /* Oculta la barra */
      transition: left 0.3s ease;
  }
  .navbar-vertical.open {
      left: 0; /* Muestra la barra */
  }
}
