I'm developing (creating a copy of iPhone calculator) a basic calculator using html, css and javascript. I have laid out buttons in different rows. But the problem is buttons in different rows have different sizes as you can see from the screenshot. The top and bottom rows buttons are perfectly round, whereas the buttons in middle rows are squished a little from the side. From the DevTool, I can see that top row buttons are exactly 64x64 as I have coded, but the middle row buttons are 59.86x64! I can't figure out how to solve this. I have tried changing size units of both container and buttons, but to no avail. For your reference, I have attached the html and css code.

body {
font-family: "Roboto", sans-serif;
}
header {
background-color: #4caf50;
color: white;
padding: 10px 0;
text-align: center;
}
main {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
background-color: #ededea;
}
.calculator {
background-color: rgb(41, 43, 46);
display: flex;
flex-direction: column;
align-items: center;
border-radius: 0.6rem;
padding-bottom: 0.5rem;
border: #fff 0.1rem solid;
position: relative;
box-shadow: 5px -5px 7px -3px #8e8e8e;
}
.display {
border-radius: 0.3rem;
margin-top: 0.3rem;
height: 5rem;
display: flex;
align-items: center;
justify-content: flex-end;
font-size: 4rem;
color: #f3f3f3;
}
.calc-btn {
margin-top: 1rem;
height: 72%;
display: flex;
flex-direction: column;
justify-content: space-around;
align-items: center;
}
.calc-items-width {
width: 97%;
}
.row {
display: flex;
justify-content: flex-end;
gap: 0.5rem;
padding: 0.3rem 0 0.3rem;
}
button {
width: 64px;
height: 64px;
border-radius: 50%;
background-color: #696868;
font-size: 1.5rem;
font-weight: 700;
color: #f3f3f3;
text-align: center;
}
button:active {
background-color: #e4e5e4;
}
.light-font {
font-weight: 100;
}
.operator-size {
font-size: 1.8rem;
}
.light-btn-color {
background-color: #9e9e9e;
}
.orange-btn {
background-color: #ff9800;
}
<body>
<header>
<h1>Simple Calculator</h1>
</header>
<main>
<section class="calculator">
<div class="display calc-items-width">0</div>
<div class="calc-btn calc-items-width">
<div class="row calc-items-width">
<button type="button" class="light-btn-color">AC</button>
<button type="button" class="light-font orange-btn operator-size">÷</button>
</div>
<div class="row calc-items-width">
<button type="button">7</button>
<button type="button">8</button>
<button type="button">9</button>
<button type="button" class="light-font orange-btn operator-size">x</button>
</div>
<div class="row calc-items-width">
<button type="button">4</button>
<button type="button">5</button>
<button type="button">6</button>
<button type="button" class="light-font orange-btn operator-size">-</button>
</div>
<div class="row calc-items-width">
<button type="button">1</button>
<button type="button">2</button>
<button type="button">3</button>
<button type="button" class="light-font orange-btn operator-size">+</button>
</div>
<div class="row calc-items-width">
<button type="button">0</button>
<button type="button" class="light-font orange-btn operator-size">=</button>
</div>
</div>
</section>
</main>
<script src="scripts/app.js"></script>
</body>
