/* ===================================================================
   Loader de navegación 2026 — Brain
   Círculo girando en el azul de Brain sobre atenuado translúcido.
   =================================================================== */
.neural-loader {
    position: fixed;
    inset: 0;
    z-index: 200000;
    display: flex;
    align-items: center;
    justify-content: center;
    /* atenuado translúcido: la página sigue visible detrás */
    background: rgba(10, 43, 64, 0.42);
    opacity: 1;
    /* los clics traspasan: el loader nunca bloquea la navegación */
    pointer-events: none;
    transition: opacity 0.3s ease;
}

/* Inicio de página: el loader es visible por defecto (sin destello).
   JS lo oculta con la clase al terminar la carga. */
.neural-loader--hide { opacity: 0; }

/* Círculo girando en el azul Brain */
.neural-loader__badge {
    position: relative;
    width: min(72px, 20vw);
    height: min(72px, 20vw);
    aspect-ratio: 1 / 1;
    border-radius: 50%;
}

.neural-loader__badge::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 5px solid rgba(59, 175, 218, 0.28);
    border-top-color: #3bafda;
    -webkit-animation: nl-spin 0.9s linear infinite;
    animation: nl-spin 0.9s linear infinite;
}

/* brillo de giro extra: un arco secundario desfasado */
.neural-loader__badge::after {
    content: "";
    position: absolute;
    inset: 7px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: rgba(59, 175, 218, 0.9);
    -webkit-animation: nl-spin 0.9s linear 0.16s infinite;
    animation: nl-spin 0.9s linear 0.16s infinite;
}

@-webkit-keyframes nl-spin {
    to { -webkit-transform: rotate(360deg); }
}

@keyframes nl-spin {
    to { transform: rotate(360deg); }
}

.neural-loader .neural-loader__logo,
.neural-loader .neural-loader__brand {
    display: none;
}

body.neural-loading { overflow: hidden; }

/* Movimiento reducido: anillo estático en azul Brain, sin giro */
@media (prefers-reduced-motion: reduce) {
    .neural-loader__badge::before {
        -webkit-animation: none;
        animation: none;
        border-color: #3bafda;
        border-top-color: #3bafda;
    }
    .neural-loader__badge::after { display: none; }
    .neural-loader { transition: opacity 0.2s ease; }
}