Movement not able to go diagonally

My movement script was originally working perfectly but after unity crashing randomly it suddenly stopped working properly. For some reason it can no longer move diagonally. If I try to do it while first holding W or S it will ignore the other input. If I try to do it while first holding A or D it will get overwritten and only move forward or only move backward. I tested with debug log to see if it recognized me pressing both keys at once and it did so it isn’t a key recognition problem. Is it possible my script got corrupted?


Code:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class playerMovement : MonoBehaviour
{
    [Header("Movement")]
    public float Speed;
    public float jumpForce;
    float horizontalInput;
    float verticalInput;
    public Vector3 move;
    public Transform orientation;
    public Rigidbody rb;
    public float groundDrag;
    public float airDrag;

    [Header("Ground Check")]
    public LayerMask Ground;
    bool isGrounded;
    public Transform groundCheck;
    public GameObject model;

    [Header("Debug")]
    public Vector3 velocity;
    
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void FixedUpdate()
    {
        moveInput();
        movePlayer();
        jump();

        velocity = rb.velocity;

        // checking if grounded
        isGrounded = Physics.CheckSphere(groundCheck.position, 0.1f, Ground);

        // applying drag
        if (isGrounded == true)
        {
            rb.drag = groundDrag;
        }
        else
        {
            rb.drag = airDrag;
        }
    }

    void moveInput()
    {
        horizontalInput = Input.GetAxisRaw("Horizontal");
        verticalInput = Input.GetAxisRaw("Vertical");
        // moving in direction you are facing
        move = orientation.forward * verticalInput + orientation.right * horizontalInput * Time.fixedDeltaTime;
    }

    void movePlayer()
    {
        if (isGrounded == true && rb.velocity.sqrMagnitude < Speed*10)
        {
            rb.AddForce(move.normalized * Speed * 10, ForceMode.Force);
        }
        else if (isGrounded == false)
        {
            rb.AddForce(move.normalized * (Speed * 0.25f), ForceMode.Force);
        }
    }

    void jump()
    {
        if (Input.GetKeyDown(KeyCode.Space) && isGrounded == true)
        {
            rb.drag = airDrag;
            rb.AddForce(transform.up * jumpForce, ForceMode.Impulse);
        }
    }
}

Oddly the problem was resolved by removing the Time.fixedDeltaTime, regular Time.deltaTime broke it too so It has something to do with limiting it like that but can someone explain why this could be the case?

Its probably the order of opperations on this line

 move = orientation.forward * verticalInput + orientation.right * horizontalInput * Time.fixedDeltaTime;

Try

 move = (orientation.forward * verticalInput + orientation.right * horizontalInput) * Time.fixedDeltaTime;

Thank you that worked!