I think it depends on the situation.
You should never use it inside a .h file in my opinion.
Code readability goes down a bit by not using it, but it is more clear what classes belong to what namespaces, so maybe that compensates for it again.
If your own engine uses only one core lib for example it is perfectly fine to do "using namespace CoreLib" inside your .cpp files in my eyes.
If however you later plan to add support for another library that happens to have the same class name, you have to explicitly name that one.
I personally prefer not to use "using namespace", as then you are always safe (unless there is a lib with the same namespace name lol).
I think generally it should be avoided, but in some cases it is fine I think.