/* Ajuste de orden descendente y relación visual entre turnos enlazados */
.historial-sidebar .sidebar-header p {
    line-height: 1.45;
}

.cadena-menu-item {
    position: relative;
    overflow: hidden;
}

.cadena-menu-item::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: #bfdbfe;
}

.cadena-menu-item.cadena-relacionada {
    background: linear-gradient(180deg, #fffaf4 0%, #f8fbff 52%, #ffffff 100%);
}

.cadena-menu-item.cadena-relacionada::before {
    background: linear-gradient(180deg, #f97316, #2563eb);
}

.cadena-menu-periodo {
    margin: 8px 0;
    color: #0f172a;
    font-size: 12px;
    font-weight: 700;
}

.cadena-menu-relacion {
    display: inline-flex;
    align-items: center;
    margin-top: 8px;
    padding: 4px 8px;
    color: #7c2d12;
    background: #ffedd5;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
}

.cadena-menu-ruta,
.ruta-turnos {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.cadena-menu-ruta {
    margin-top: 8px;
}

.ruta-turnos {
    margin-top: 12px;
    padding: 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 14px;
}

.ruta-turnos.ruta-relacionada {
    background: #fff7ed;
    border-color: #fed7aa;
}

.ruta-item,
.ruta-item-mini {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    padding: 4px 9px;
    color: #1e3a8a;
    background: #dbeafe;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
}

.ruta-item-mini {
    min-height: 20px;
    padding: 3px 7px;
    font-size: 11px;
}

.ruta-separador {
    color: #f97316;
    font-size: 16px;
    font-weight: 900;
}

.chip-relacion,
.chip-mini.traslado {
    color: #7c2d12;
    background: #ffedd5;
}

.cadena-atencion.cadena-relacionada {
    border-color: #fed7aa;
}

.cadena-atencion.cadena-relacionada .turno-encabezado {
    background: linear-gradient(90deg, #fff7ed 0%, #fbfdff 48%, #ffffff 100%);
}

.cadena-relacionada .timeline::before {
    background: linear-gradient(180deg, #dbeafe 0%, #fed7aa 50%, #dbeafe 100%);
}

.timeline-item-traslado .timeline-punto {
    background: #f97316;
    border-color: #ffedd5;
}

.timeline-item-traslado .timeline-contenido {
    border-color: #fed7aa;
    background: #fffaf5;
}

.cadena-nota-relacion {
    margin: 10px 0 0;
    color: #9a3412;
    font-size: 13px;
    font-weight: 700;
}
