.cursor {
    position: fixed;
    width: 20px;
    height: 20px;
    /*transform: translate(-50%, -50%) rotate(45deg);*/
    pointer-events: none;
    z-index: 999;
    transition: transform 0.1s;
    left: 141px;
    top: 5px;

    /* Mira telescópica */
    background: transparent;
	border: 0 !important;
}

.cursor::before,
.cursor::after {	
    content: "";
    position: absolute;
    background-color: var(--primary);
}

/* Línea vertical */
.cursor::before {
    top: 0;
    left: 50%;
    transform: translateX(-40%);
    width: 2px;
    height: 100%;
}

/* Línea horizontal */
.cursor::after {
    left: 0;
    top: 50%;
    transform: translateY(-40%);
    width: 100%;
    height: 2px;
}

/* Mira exterior (opcional, como un marco circular) */
.cursor::after,
.cursor::before,
.cursor {
    border-radius: 0 !important;
}

.cursor-follower {
    position: fixed;
    width: 20px;
    height: 20px;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: 998;
    border: 1px solid var(--primary);
    border-radius: 50%;
    left: 141px;
    top: 5px;
    background: transparent;
    transition: all 0.2s ease;
}

/* Solo aplicar estilos de cursor si el dispositivo permite hover y tiene un puntero preciso (como un mouse) */
@media (hover: hover) and (pointer: fine) {
    .cursor, .cursor-follower {
        display: block;
    }

    body {
        cursor: none;
    }
}

/* En dispositivos móviles (sin hover o puntero grueso), ocultar el cursor personalizado */
@media (hover: none), (pointer: coarse) {
    .cursor, .cursor-follower {
        display: none !important;
    }

    body {
        cursor: default !important;
    }
}
