html,
body {
  padding:0;
  margin:0;
  height:100%;
  width:100%;
  overflow:hidden;
  position:relative
}
a.nav-link>i {
  color:#212529
}
#navbar-selection {
  background-color:#2e353d !important
}
header {
  display:block;
  min-height:56px;
  background-color:#ffc107
}
header .logotipo {
  position:relative;
  float:left;
  padding-right:100px
}
#edit-dia,
#edit-destino,
#edit-dia-hora {
  background-color:#fff;
  margin-top:7px
}
.cabecera {
  padding:3px
}
#logotipo-tussam {
  height:40px;
  margin-left:20px
}
.logotipo-tussam {
  height:40px;
  margin-left:20px
}
.centrarCabecera {
  margin-top:4px
}
.input-cabecera {
  height:35px;
  margin:3px 20px;
  background:url('../media/desplegable.png') no-repeat right;
  background-image:url('../media/desplegable.png');
  background-position-x:right;
  background-position-y:center;
  background-size:initial;
  background-repeat-x:no-repeat;
  background-repeat-y:no-repeat;
  background-repeat:no-repeat;
  background-attachment:initial;
  background-origin:initial;
  background-clip:initial;
  background-color:initial;
  padding:0 12px;
  font-size:14px;
  line-height:1.42857143;
  color:#555;
  transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;
  -webkit-appearance:none;
  overflow:hidden
}
#edit-dia {
  width:120px
}
#edit-dia-hora {
  width:120px
}
select::-ms-expand {
  display:none
}
.wickedpicker {
  z-index:1011
}
span.select2.select2-container {
  width:100% !important
}
.geoButton {
  width:35px;
  height:35px;
  margin-top:3px;
  display:inline-block;
  vertical-align:middle;
  border-radius:50%;
  position:relative;
  background-repeat:no-repeat;
  background-color:#ff9c0d;
  background-position:-2px -31px;
  margin-left:10px;
  background-image:url('../media/geoButton.png')
}
.nav {
  margin:5px 30px
}
.nav>li>a:hover,
.nav>li>a:focus,
.nav .open>a,
.nav .open>a:hover,
.nav .open>a:focus {
  background:#fff
}
.nav>li {
  padding:5px
}
.dropdown {
  background:#fff;
  border-radius:4px;
  z-index:1000
}
.dropdown-menu>li>span,
.dropdown-menu>li>a {
  color:#ff9c0d
}
.dropdown-menu>li>a {
  padding-left:10px;
  text-decoration:none
}
.dropdown-menu>li>a>img {
  margin-right:5px
}
.dropdown ul.dropdown-menu {
  border-radius:4px;
  box-shadow:none;
  margin-top:10px;
  width:200px
}
.dropdown ul.dropdown-menu:before {
  content:"";
  border-bottom:10px solid #fff;
  border-right:10px solid transparent;
  border-left:10px solid transparent;
  position:absolute;
  top:-10px;
  left:16px;
  z-index:1010
}
.dropdown ul.dropdown-menu:after {
  content:"";
  border-bottom:12px solid #ccc;
  border-right:12px solid transparent;
  border-left:12px solid transparent;
  position:absolute;
  top:-12px;
  left:14px;
  z-index:1009
}
.divider {
  margin-top:.5rem;
  margin-bottom:.5rem;
  border:0;
  border-top:1px solid rgba(0,0,0,0.1)
}
.idioma-activo {
  color:#626363
}
.caja {
  width:530px;
  position:relative;
  height:50px
}
.caja-numero {
  width:41px;
  height:41px;
  background-color:#ffc107;
  border-radius:50%;
  position:absolute;
  text-align:center;
  top:5px;
  margin-left:5px;
  float:left
}
.numero {
  position:absolute;
  top:50%;
  transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%);
  color:black;
  font-weight:bold;
  left:50%;
  width:50px;
  font-size: 1.156rem;
}
#ventanaInfo div.caja-numero {
  background-color:white
}
#tooltip-numParada {
  color:#383838
}
div.esri-popup {
  display:none !important
}
#ventanaInfo span.tooltip-cabecera-nombre {
  color:#000
}
.caja-contenido {
  float:left;
  position:relative;
  margin-left:60px
}
.caja-num-linea {
  min-width:22px;
  height:22px;
  font-size:.7em;
  color:white;
  padding:0;
  margin-right:2px;
  position:relative;
  float:left;
  font-weight:bold;
  cursor:pointer
}
.num-linea {
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  -webkit-transform:translate(-50%,-50%)
}
ul.select2-results {
  height:200px
}
.select2-selection {
  min-height:35px;
  max-height:35px;
  overflow:hidden
}
.select2-container--default .select2-selection--single {
  position:relative
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  background-image:url('../media/desplegable.png');
  background-repeat:no-repeat;
  background-position:right bottom;
  color:#fff;
  font-size:1.3em;
  padding:4px 12px;
  position:absolute;
  top:0;
  right:0;
  width:20px
}
.borderInputs {
  border:1px solid #afafaf !important;
  border-radius:3px
}
.menu-lateral {
  position:fixed;
  top:0;
  right:0;
  z-index:1002;
  height:100%;
  background-color:#2e353d
}
/* @#menu-lateral1 {
  float:right;
  width:100px;
  height:100%;
  -webkit-transition:width 300ms ease-out;
  -moz-transition:width 300ms ease-out;
  -o-transition:width 300ms ease-out;
  transition:width 300ms ease-out
} */
#menu-lateral2 {
  height:100%;
  float:right;
  width:0;
  background:#ad0228;
  -webkit-transition:width 300ms ease-out;
  -moz-transition:width 300ms ease-out;
  -o-transition:width 300ms ease-out;
  transition:width 300ms ease-out;
  z-index:2000;
  float:right
}
.menu1,
.menu2 {
  display:inline-block;
  height:100vh
}
.menu1 {
  background-color:#2e353d;
  width:100px
}
.botonExpandir {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  left:-30px;
  height:80px;
  width:30px;
  line-height:80px;
  background-color:#2e353d;
  color:#fff;
  text-align:center;
  font-size:1.2em;
  border-top-left-radius:12px;
  border-bottom-left-radius:12px;
  text-decoration:none
}
.icono-menu-lateral {
  display:block;
  width:70px;
  height:70px;
  margin-top:30px;
  margin-left:15px;
  color:#fff;
  z-index:2010;
  text-align:center
}
.icono-horarios {
  background:url("/iconos/ic_bus_vuelta.png") no-repeat center center;
  background-size:auto auto;
  background-size:60px 60px;
  width:70px;
  height:70px
}
.icono-lineas {
  background:url("../media/icon_nuevoTrayecto.png") no-repeat center center;
  width:70px;
  height:70px
}
.contenido-menu-lateral a:hover,
.contenido-selected {
  border:3px solid #ff9c0d;
  border-radius:50%
}
.contenido-menu-lateral a,
.contenido-noSelected {
  border:3px solid #2e353d;
  border-radius:50%
}
.is-active {
  width:0
}
.cabecera-lateral {
  color:#fff;
  margin-top:40px;
  font-weight:bold;
  font-size:2em
}
.caja-lineas {
  height:100vh;
  background-color:#fff;
  width:340px
}
.buscador-lineas {
  width:100%;
  margin:0;
  border:1px solid #afafaf
}
.buscador-lineas-cabecera {
  padding:5px;
  border-bottom:1px solid #afafaf
}
.cabecera-titulo-linea {
  font-weight:bold;
  font-size:1.5em;
  text-align:left;
  color:#383838
}
.cabecera-titulo-linea-info {
  font-weight:bold;
  font-size:.9em;
  text-align:left;
  color:#383838
}
.buscador-lineas-contenido {
  padding:10px
}
.fondo_naranja {
  background-color:#ffc107;
  color:black
}
.sinoptico_inicio {
  background:url('../iconos/sinoptico_inicio.png') no-repeat right
}
.sinoptico_fin {
  background:url('../iconos/sinoptico_fin.png') no-repeat right
}
.sinoptico_centro {
  background:url('../iconos/sinoptico_centro.png') no-repeat right
}
.card-header {
  min-height:60px;
  padding:5px 10px;
  background-color:#000d6f
}
section {
  width:100%;
  height:100%;
  background:#ccc;
  float:left;
  overflow:auto
}
footer {
  position:relative;
  margin-top:-50px;
  height:40px;
  padding:5px 0;
  clear:both;
  text-align:center;
  color:#fff
}
#viewDiv {
  padding:0;
  margin:0;
  height:100%;
  width:100%;
  position:absolute
}
#ventanaInfo {
  width:350px;
  height:auto;
  z-index:1000;
  position:absolute;
  border:1px solid #ccc;
  border-radius:10px;
  background:#fff;
  left:51%;
  top:50%;
  transform:translateY(-50%);
  padding:0;
  margin:0;
  background:rgba(0,0,0,0.5)
}
.triangle-left {
  width:5%;
  height:0;
  padding-top:5%;
  padding-bottom:5%;
  overflow:hidden;
  opacity:1;
  display:none
}
.triangle-left:after {
  content:"";
  display:block;
  width:0;
  height:0;
  margin-top:-14px;
  top:50%;
  left:-12px;
  position:absolute;
  border-top:12px solid transparent;
  border-bottom:12px solid transparent;
  border-right:12px solid #ccc;
  z-index:1001;
  opacity:.8
}
.triangle-left:before {
  content:"";
  border-top:10px solid transparent;
  border-bottom:10px solid transparent;
  border-right:10px solid #FFF;
  position:absolute;
  margin-top:-12px;
  top:50%;
  left:-10px;
  z-index:1002;
  opacity:.8
}
.tooltip-cabecera {
  height:50px;
  width:100%;
  background-color:#ffc107;
  color:#000;
  border-radius:10px 10px 0 0;
  padding-top:-2px;
  opacity:1.2
}
.tooltip-cabecera-nombre {
  color:white;
  font-size:.9em;
  margin-left:-7px
}
.tooltip-cerrar {
  color:#000;
  position:absolute;
  right:5px;
  top:5px;
  z-index:1020
}
.tooltip-mostrar-lineas {
  height:50px;
  padding-top:6px
}
.cajas-num-lineas>span {
  float:left;
  margin:0 10px
}
.autobuses-desmarcados {
  background-color:#656565 !important;
  font-weight:normal !important;
  border:1px solid #000 !important
}
#btn-selected-mapa {
  white-space:pre-wrap
}
#close-info-selected {
  margin-right:10px
}
.tooltip-contenido {
  max-height:300px;
  height:auto;
  overflow-x:hidden;
  overflow-y:auto;
  background-color:#fff;
  opacity:1;
  min-height:55px;
  border-bottom:1px solid #ffc107
}
#tooltip-reload {
  color:#ad0228;
  position:absolute;
  right:20px;
  top:52px;
  z-index:1020;
  font-size:1.2em
}
.over {
  transform:rotate(-180deg);
  -moz-transform:rotate(-180deg);
  -ms-transform:rotate(-180deg);
  -o-transform:rotate(-180deg);
  -webkit-transform:rotate(-180deg);
  transition:transform 550ms ease;
  -moz-transition:-moz-transform 550ms ease;
  -ms-transition:-ms-transform 550ms ease;
  -o-transition:-o-transform 550ms ease;
  -webkit-transition:-webkit-transform 550ms ease
}
.out {
  transform:rotate(-360deg);
  -moz-transform:rotate(-360deg);
  -ms-transform:rotate(-360deg);
  -o-transform:rotate(-360deg);
  -webkit-transform:rotate(-360deg);
  transition:transform 550ms ease;
  -moz-transition:-moz-transform 550ms ease;
  -ms-transition:-ms-transform 550ms ease;
  -o-transition:-o-transform 550ms ease;
  -webkit-transition:-webkit-transform 550ms ease
}
#tooltip-tiempo-lineas li.list-group-item {
  height:50px
}
.list-group-item>a {
  text-decoration:none;
  color:#000
}
.caja-numero-cuadrado {
  width:41px;
  height:41px;
  background-color:#000d6f;
  position:absolute;
  text-align:center;
  top:5px;
  margin-left:5px;
  float:left
}
.tooltip-contenido-datos {
  margin-top:-12px
}
#ventanaInfo div.box {
  height:auto;
  position:absolute;
  width:314px
}
.tooltip-botonera {
  background-color:#ffc107;
  color:#000;
  float:left;
  text-align:center;
  line-height:32px;
  height:50px;
  width:100%;
  border-radius:0 0 10px 10px
}
.caja-num-linea-botonera {
  margin-top:6px
}
#resultado-lineas-contenido {
  width:calc(100% - 105px);
  margin:0;
  position:absolute;
  padding:0;
  overflow-y:auto;
  overflow-x:hidden;
  height:calc(100% - 160px);
  left:104px
}
#ventanaInfoLineaTabHorarioCont {
  width:calc(100% - 105px);
  margin:0;
  position:absolute;
  padding:0;
  overflow-y:auto;
  overflow-x:hidden;
  height:calc(100% - 130px);
  width:100%;
  margin-top:5px;
  font-weight:bold;
  font-size:1em
}
li.list-group-item-paradas {
  border:0 solid white;
  position:relative;
  display:block;
  padding:0 0 0 1.25rem !important;
  margin-bottom:-1px;
  background-color:#fff;
  height:100%;
  cursor:pointer
}
li.list-group-item-lineas {
  position:relative;
  display:inline;
  padding:2px 0 4px 1.25rem !important;
  margin-bottom:-1px;
  max-height:75px;
  height:auto !important;
  background-color:#fff;
  border:1px solid rgba(0,0,0,.125)
}
li.list-group-item-lineas>a {
  height:auto;
  display:inline
}
li.list-group-item-horarios {
  position:relative;
  display:block;
  padding:2px 0 4px 1.25rem !important;
  margin-bottom:-1px;
  width:100%;
  height:auto;
  max-height:75px;
  background-color:#fff;
  border:1px solid rgba(0,0,0,.125);
  height:auto
}
div.caja-numero-cont {
  padding-right:0;
  margin-top:5px;
  padding-left:2px
}
div.caja-numero-parada-cont {
  padding-right:0;
  margin-top:5px
}
div.textolinea {
  font-size:15px;
  padding:0;
  top:0
}
div.subtextolinea {
  font-size:13px;
  padding:0;
  text-align:left
}
.nopadding {
  padding:0 !important
}
.fondo_gris {
  background-color:#383838
}
.nav-tabs .nav-link {
  border:0 solid transparent !important;
  border-top-left-radius:opx !important;
  border-top-right-radius:0 !important;
  color:#ccc;
  margin:0 !important
}
.nav-tabs .nav-link.active {
  color:#ffc107;
  background-color:#383838
}
.nav {
  text-align:center;
  margin:0 !important
}
#ventanaInfoLineaTabContent {
  overflow-y:auto;
  overflow-x:hidden;
  height:calc(100% - 140px);
  position:absolute;
  width:100%
}
#ventanaInfoLinea {
  width:350px;
  z-index:1000;
  position:absolute;
  border:1px solid #ccc;
  background:#fff;
  left:0;
  top:69px;
  padding:0;
  margin:0;
  background:rgba(0,0,0,0.5);
  bottom:5px
}
.caja-titulo {
  color:white
}
.caja-numero-cuadrado-listado {
  width:40px;
  height:40px;
  text-align:center
}
.numero-listado {
  position:relative;
  top:15%;
  /* color:white; */
  color:black;
  font-weight:bold;
  font-size:1.156rem;
}
.nav-tabs {
  margin-bottom:0;
  border-bottom:0
}
.parada-titulo {
  font-size:14px;
  color:black;
  padding-top:5px
}
.parada-numero {
  font-size:15px;
  color:#B00000;  
}

.parada-hora {
  font-size:13px;
  color:#5C5C5C
}
page div.notifications>li {
  display:block;
  position:relative;
  background:#efefef;
  color:#575757;
  margin:0;
  margin-top:0;
  margin-bottom:0;
  display:block;
  font-size:14px;
  padding:16px 12px 12px 42px;
  line-height:1.1em;
  min-height:48px;
  border-bottom:1px dotted #575757
}
div.notification {
  z-index:0;
  bottom:5px !important
}
div.wickedpicker {
  z-index:9999
}
div.parada-horario {
  background:url('../iconos/discontinuo.png') no-repeat left;
  width:50px;
  height:21px;
  position:absolute;
  right:0;
  background-size:contain
}
a.parada-horario {
  font-size:14px;
  padding-right:6px;
  text-decoration:underline !important
}
#dv-leyendas {
  position:absolute;
  top:calc(100% - 45px);
  width:calc(100% - 120px)
}
div.leyenda-body {
  background-color:white;
  position:absolute;
  width:calc(100% - 90px);
  top:0;
  height:100%
}
#leyenda-barra {
  margin:0;
  height:40px;
  color:black;
  font-size:1.2em
}
div.leyenda-linea {
  padding:10px;
  border-bottom:1px solid #ccc;
  margin:0
}
@media(max-width:575.98px) {
  #resultado-lineas-contenido {
    width:100% !important;
    margin:0;
    position:absolute;
    padding:0;
    overflow-y:auto;
    overflow-x:hidden;
    height:calc(100% - 110px) !important;
    left:0 !important
  }
  #ventanaInfoLinea {
    top:130px
  }
  #dv-leyendas {
    position:absolute;
    top:calc(100% - 45px);
    width:calc(100% - 20px)
  }
  #resultado-lineas-contenido {
    width:100% !important;
    margin:0;
    position:absolute;
    padding:0;
    overflow-y:auto;
    overflow-x:hidden;
    height:calc(100% - 160px) !important;
    left:0 !important
  }
  div.leyenda-body {
    width:100%
  }
}
.switch {
  position:relative;
  display:inline-block;
  width:60px;
  height:25px
}
.switch input {
  opacity:0;
  width:0;
  height:0
}
.slider {
  position:absolute;
  cursor:pointer;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background-color:#ccc;
  -webkit-transition:.4s;
  transition:.4s
}
.slider:before {
  position:absolute;
  content:"";
  height:22px;
  width:22px;
  left:4px;
  bottom:1px;
  background-color:white;
  -webkit-transition:.4s;
  transition:.4s
}
input:checked+.slider {
  background-color:#ffc107;
  border:1px solid black
}
input:focus+.slider {
  box-shadow:0 0 1px #2196f3
}
input:checked+.slider:before {
  -webkit-transform:translateX(26px);
  -ms-transform:translateX(26px);
  transform:translateX(26px)
}
.slider.round {
  border-radius:34px
}
.slider.round:before {
  border-radius:50%
}
.searchbar {
  margin-bottom:auto;
  margin-top:auto;
  background-color:#ffc107;
  border-radius:30px
}
.search_input {
  color:white;
  border:0;
  outline:0;
  background:0;
  width:0;
  caret-color:transparent;
  line-height:40px;
  transition:width .4s linear
}
.searchbar:hover>.search_input {
  padding:0 5px;
  width:450px;
  caret-color:red;
  transition:width .4s linear
}
.searchbar:hover>.search_icon {
  background:white;
  color:#e74c3c
}
.search_icon {
  height:40px;
  width:40px;
  float:right;
  display:flex;
  justify-content:center;
  align-items:center;
  border-radius:50%;
  color:white
}
.msg-tiempos {
  padding:10px;
  padding-right:22px;
  font-size:13px
}
#loadingtiempos {
  width:100%;
  text-align:center;
  float:left !important;
  z-index:1200;
  position:absolute;
  top:47px
}
.loader {
  border:10px solid #f3f3f3;
  border-radius:50%;
  border-top:10px solid #ffc107;
  border-bottom:10px solid #ffc107;
  width:20px;
  height:20px;
  -webkit-animation:spin 2s linear infinite;
  animation:spin 2s linear infinite;
  margin-left:45%
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform:rotate(0)
  }
  100% {
    -webkit-transform:rotate(360deg)
  }
}
@keyframes spin {
  0% {
    transform:rotate(0)
  }
  100% {
    transform:rotate(360deg)
  }
}
.instalar-app::before {
  background:white;
  border-bottom:1px solid #e5e5e5;
  top:0;
  content:" ";
  display:block;
  left:-100%;
  position:absolute;
  width:300%;
  z-index:-1;
  height:100%
}
.instalar-app {
  padding:5px 10px;
  margin:0 auto;
  position:relative;
  overflow:hidden;
  display:inline-block;
  width:100%;
  height:auto;
  z-index:1
}
.instalar-app .logo-app {
  text-align:center;
  font-size:12px
}
.instalar-app .app-button {
  background:#111;
  border-radius:2px;
  color:#fff;
  overflow:hidden;
  width:175px;
  border:0;
  height:44px;
  margin:3px auto 10px;
  display:block;
  text-transform:uppercase
}
#close-info-selected {
  color:white;
}
a#geoButton {
  background-color: #2e353d;
  color:white;
  padding: 4px;
  width: 80%;
  border-radius: .25rem;
}
a#geoButton i {
  color:white;
}
#dv-cerca-de-mi {
  padding-top:7px
}
#a-seleccion-mapa,
#btn-selected-mapa {
  color: #000;
  background-color: #ffc107;
  border-color: #ffc107;
}
#a-seleccion-mapa:hover,
#btn-selected-mapa:hover {
  color: #fff;
  background-color: #B40129;
  border-color: #B40129;
}
#a-seleccion-mapa:focus {
  box-shadow: 0 0 0 0.2rem rgb(255 193 7 / 50%);
}
#botonExpandir:hover {
  color: #ffc107;
}
@media(max-width:768px) and (min-width:576px) {
  a#geoButton span {
    display:none;
  }
  #dv-fecha a {
    padding:1rem 0.2rem!important;
  }
}
@media(min-width:769px) and (max-width:1024px) {
  a#geoButton i {
    display:block;
  }
  #dv-cerca-de-mi {
    padding-top:0px;
    padding-bottom:5px;
  }
  #dv-destino {
    padding-top: 14px!important;
  }
  #dv-m-actualizar {
    padding-top: 12px!important;
  }
  #dv-horarios-especiales {
    padding-top:19px!important;
  }
}

.select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #4D4D4D !important;
}

.btn-info {
    color: #fff;
    background-color: #117A8B;
    border-color: #117A8B;
}