Depending on how many users would be using the app, ideally I would use Public with Email or Email Whitelist.
If using Public with Email, then I would create a Calculator sheet that would pull UNIQUE email values from the App:Logins sheet. In the Calculator sheet, I would set up columns for each value that needs to be acquired from the user in the app. Then I would add columns that use arrayformulas to calculate the values you need for a cost estimate.
If using Email Whitelist, then you would only need to set up all of the emails manually in the Calculator sheet. This sheet will be used for your whitelist. The rest of the columns would work the same as the setup for Public with Email.
Once you have all of that set up, then you should have a Calculator tab in your app. Set the display to the Details style and turn on per user data. That way each user will only see data for their own sheet row in the app. Use Entry components to acquire the necessary numbers for the calculation. Then add add basic text components to display the results of the calculations. This way you don’t need a form button or have to click on the pencil to edit a record. There will be a slight delay from when they enter the data until the calculated results show on the screen, but it should be reasonably quick.
You wouldn’t need to use the per user data or email addresses, but if you have multiple people doing calculations at the same time, the per user data prevents someone else’s values from trumping your data entry and messing up the calculation. Per user data keeps everybody in their own sandbox.
If you would rather have a running list of Cost Estimates, then I would first create a dummy sheet with a heading. The heading can be anything, but it just needs to have something to be recognized by glide. That dummy sheet would become your tab. Using the Details style layout, I would add a Form Button to be used to get the numbers for the calculation and send the results to the Calculator sheet. Then I would add an inline list under the Add Estimate form button. The inline list will point to the Calculator sheet and display all of the estimates. With this method, you wouldn’t need per user data unless you wanted the user to only view their own estimates.
Hope this gives you a few ideas to think about.