buenas!
creo que es un error de lógica de tu parte y me extraña que según tu en otro navegadores funciona distinto a chrome. fijate que estas usando el operador typeof el cual (a mi entender) puede tomar un identificador que no este previamente definido. por tanto,
typeof estado devuelve
"undefined", el cual luego evalua a true en la condición de if.
@edit, no se si lei bien, pero creo que lei algo al reves!