Implementing blink without delay

Hello, I am having some trouble with implementing the blink without delay.
For the project the blue led has to start blinking once the right button is pressed and stop blinking when the potentiometer turns to the right. The problem is that sometimes instead of the led turning off and staying off it stays on. I can see where the problem is but I have no idea how to fix it.

const int ledBlue = 6;
const int ledYellow = 7;
const int ledGreen = 5;
const int rightButton = 8;
const int leftButton = 9;
const int Potentiometer = A0;
const String HazardState = "Hazard";
const String NormalState = "Normal";
String state = NormalState;
int LastButton1State = HIGH;
int LastButton2State = HIGH;
const long blinkInterval = 100;
unsigned long previousMillis = 0; 

int ledBlueState = LOW;
int ledYellowState = LOW;
int ledGreenState = LOW;

int rightCounter = 0;
int leftCounter = 0;

void setup() {

  Serial.begin(9600);
  pinMode(ledGreen, OUTPUT);
  pinMode(ledBlue, OUTPUT);
  pinMode(ledYellow, OUTPUT);
  pinMode(rightButton, INPUT_PULLUP);
  pinMode(leftButton, INPUT_PULLUP);

}

void loop() {

unsigned long currentMillis = millis();  

int steerAngle = map(analogRead(Potentiometer), 0, 1024, -100, 100);


//..........................................................Leds blinking

if(rightCounter > 0 && steerAngle < 0){
  if(currentMillis - previousMillis > blinkInterval){       //led might stay on because the blink is interrupted while the led is on
    previousMillis = currentMillis;   
 
    if (ledBlueState == LOW){
      ledBlueState = HIGH;
    }
    else {
      ledBlueState = LOW;
    }
    
    digitalWrite(ledBlue, ledBlueState); 
  }
}else{
  rightCounter = 0;
}

//..........................................................button press

 LastButton2State = button2State;

int button1State = digitalRead(rightButton);
if (button1State != LastButton1State) {      
  if (button1State == LOW) { 
    rightCounter++;
    
  }
}
 LastButton1State = button1State;
}

Turn the LED off here:

 else
  {
    rightCounter = 0;
  }