.timeline-container {
    padding: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.timeline {
    display: flex;
    flex-wrap: nowrap;
    gap: 100px;
    justify-content: center;
    align-items: center;
    position: relative;
}

/* Estilos de cada elemento de la línea de tiempo */
.timeline-item {
    position: relative;
    width: 80px; /* Tamaño aumentado */
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(to right, #7d7474);
    border: 3px solid #333;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    transition: transform 0.3s ease-in-out;
    cursor: pointer;
}

/* Estilo del número */
.timeline-number {
    font-size: 1.2rem;
    font-weight: bold;
    color: white;
}

/* Estilo del texto */
.timeline-text {
    font-size: 0.8rem;
    color: white;
    text-align: center;
    margin-top: 5px;
    opacity: 0; /* Oculta el texto */
    visibility: hidden; /* Evita que ocupe espacio */
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* Mostrar el texto al pasar el mouse */
.timeline-item:hover .timeline-text {
    opacity: 1; /* Hace visible el texto */
    visibility: visible;
}

/* Línea que conecta los círculos */
.timeline-item::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: -103px !important; /* Ajustar la línea */
    width: 100px !important; /* Largo ajustado */
    height: 3px !important; /* Grosor de la línea */
    background-color: #0e0101 !important;
}

/* Oculta la línea en el primer elemento */
.timeline-item:first-child::before {
    display: none !important;
}

/* Tooltip ajustado */
.timeline-item::after {
    content: attr(data-tooltip);
    position: absolute;
    top: -60px; /* Mueve la descripción arriba */
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: #fff;
    padding: 8px;
    border-radius: 5px;
    font-size: 12px;
    display: none;
    white-space: normal;
    width: 180px;
    text-align: center;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}

/* Mostrar tooltip al pasar el mouse */
.timeline-item:hover::after {
    display: block;
}

/* Mejorar responsividad */
@media only screen and (max-width: 768px) {
    .timeline {
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }
    .timeline-item {
        width: 50px;
        height: 50px;
    }
    .timeline-item::after {
        font-size: 0.7rem;
        width: 140px;
    }
    /* Línea que conecta los círculos */
    .timeline-item::before {
        left: -26px !important; /* Ajustar la línea */
        width: 23px !important; /* Largo ajustado */
        height: 2px !important; /* Grosor de la línea */
    }
}

/* Para pantallas pequeñas (móviles) */
@media (max-width: 480px) {
    .timeline {
        flex-wrap: wrap;
        justify-content: center;
        gap: 16px;
    }
    .timeline-item {
        width: 50px;
        height: 50px;
    }
    .timeline-item::after {
        font-size: 0.7rem;
        width: 140px;
    }
    /* Línea que conecta los círculos */
    .timeline-item::before {
        left: -18px !important; /* Ajustar la línea */
        width: 13px !important; /* Largo ajustado */
        height: 2px !important; /* Grosor de la línea */
    }
    .timeline-container {
        padding: 8px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
}

/* Color circulos */
.colorRespRev2 {
    background: linear-gradient(to right, #123A5B 0%, #1B3F80 50%, #1F4499 100%);
}
.colorRespRev3 {
    background: linear-gradient(to right, #1F4499 0%, #1F5A99 50%, #1F7099 100%);
}
.colorRespRev6 {
    background: linear-gradient(to right, #1F7099 0%, #10A0C0 50%, #00d0ff 100%);
}
.colorRespRev7 {
    background: linear-gradient(to right, #00d0ff 0%, #0f94b3 100%);
}
.colorSinEstado {
    background: linear-gradient(to bottom, #88817e 0%, #88817e 100%);
}