/* Asegura que el fondo del modal cubra toda la pantalla */
#modal_tmb_metro_modal {
    display: none;  /* El modal está oculto por defecto */
    position: fixed;
    z-index: 9999;  /* Asegura que el modal esté por encima de todo (por encima del mapa) */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;  /* Permite desplazamiento si el contenido es grande */
}

/* Estilo del contenido del modal */
#modal_content_tmb_metro_modal {
    background-color: rgba(255, 255, 255, 0.8);  /* Fondo blanco semi-transparente con blur */
    margin: 10% auto;  /* Centrado vertical y horizontal */
    padding: 20px;
    border: none;  /* Eliminar el borde */
    width: 90%;  /* Ajusta el tamaño del modal */
    max-width: 600px;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(5px);  /* Aplica el blur en el contenido del modal */
    position: fixed;  /* Hace que el modal sea fijo en la pantalla */
    top: 35%;  /* Coloca el modal en el centro vertical */
    left: 50%;  /* Coloca el modal en el centro horizontal */
    transform: translate(-50%, -50%);  /* Ajusta el modal para que quede centrado exactamente */
}

@media (max-width: 767px) {
  #modal_content_tmb_metro_modal {
    top: 47%;  /* Coloca el modal en el centro vertical para móviles */
    padding-left: 10px;
    padding-right: 10px;
    width: 94%;
  }
}

/* Estilo del botón de cierre */
.close_tmb_metro_modal {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
}

/* Estilo para cuando el botón de cierre pasa el mouse sobre él */
.close_tmb_metro_modal:hover,
.close_tmb_metro_modal:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

/* Estilo del encabezado del modal */
h2 {
    color: #333;
    font-size: 24px;
    margin-bottom: 15px;
    text-align: center;  /* Centrado del título */
}

/* Efecto de parpadeo para el texto de tiempo restante */
@keyframes blink {
    0% { opacity: 1; }
    50% { opacity: 0; }
    100% { opacity: 1; }
}

.blink {
    animation: blink 1s infinite;
}

/* Contenedor de la tabla de trenes */
#tmb_metro_table {
    width: 100%;
    padding-top: 20px;
}

/* =====================================================================
   Estilos originales para filas horizontales (en caso de usarse en otro contexto)
   ===================================================================== */
.tmb_metro_row {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 15px;
    border-bottom: 1px solid #ccc;  /* Línea horizontal gris */
    padding-bottom: 10px;  /* Espaciado extra entre la fila y la línea */
}

.tmb_metro_icon {
    width: 48px;
    height: 48px;
    margin-right: 10px;
}
.tmb_metro_icon img {
    width: 48px !important;
    height: 48px !important;
    object-fit: contain;
}

.tmb_metro_info {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Forzamos que el primer div dentro de .tmb_metro_info ocupe todo el ancho y se centre */
.tmb_metro_info > div:first-child {
    width: 100%;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #555;
}

.tmb_metro_info div:last-child {
    font-size: 26px;
    font-weight: bold;
    color: #333;  /* Color personalizado para el destino */
}

.tmb_metro_time {
    text-align: right;
    min-width: 110px;
}
.tmb_metro_time div {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.2;  /* Asegura que el tiempo ocupe dos filas si es necesario */
}

/* =====================================================================
   Nuevos estilos para visualización en dos columnas (direcciones verticales)
   ===================================================================== */

/* Contenedor que agrupa las direcciones en dos columnas */
.tmb_metro_directions_container {
    display: flex;
    flex-direction: row;
    width: 100%;
}

/* Columnas izquierda y derecha */
.tmb_metro_left,
.tmb_metro_right {
    flex: 1;
    padding: 5px;
}

/* Línea divisoria vertical */
.tmb_metro_separator {
    width: 1px;
    background-color: #ccc;
    margin: 0 10px;
}

/* Bloque para cada dirección (se mostrarán en cada columna) */
.tmb_metro_direction {
    display: flex;
    flex-direction: column;
    align-items: center;
    border: 1px solid transparent;  /* Puedes ajustar o quitar el borde */
    padding: 5px;
}

/* Ajustes internos para cada bloque de dirección */
.tmb_metro_direction .tmb_metro_icon {
    margin-bottom: 10px;
}
.tmb_metro_direction .tmb_metro_info {
    text-align: center;
    margin-bottom: 10px;
}

/* Forzamos que el primer div dentro de .tmb_metro_direction .tmb_metro_info ocupe todo el ancho y se centre */
.tmb_metro_direction .tmb_metro_info > div:first-child {
    width: 100%;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #555;
}

.tmb_metro_direction .tmb_metro_info .tmb_metro_destination {
    font-size: 26px;
    font-weight: bold;
    color: #333;
}
.tmb_metro_direction .tmb_metro_time {
    text-align: center;
}
.tmb_metro_direction .tmb_metro_time_value {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.2;
}


