html {
    box-sizing: border-box;
    font-family: sans-serif;
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: inherit;
}

body {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.calculator {
    width: 50vw;
    height: 70vh;
}

.display {
    width: 100%;
    height: 15vh;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    background-color: #3e4143;
    color: #fff;
    font-size: 24px;
    padding-left: 24px;
    display: flex;
    align-items: center;
}

.buttons {
    width: 100%;
    height: 55vh;
    padding: 24px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    background-color: #2b2b2b;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 8px;
}

.btn-container {
    display: flex;
    justify-content: space-between;
    gap: 8px;
}

button {
    height: 8vh;
    flex: 1;
    border: none;
    border-radius: 8px;
    font-family: inherit;
    font-size: 20px;
    color: #fff;
    cursor: pointer;
}

.digit-btn {
    background-color: #61676e;
    font-weight: bold;
}

.digit-btn:hover {
    background-color: #6d7781;
}

.digit-btn:active {
    background-color: #61676e;
}

.clear-btn,
.operator-btn,
.decimal-btn {
    background-color: #3e4143;
}

.clear-btn:hover,
.operator-btn:hover,
.decimal-btn:hover {
    background-color: #4b5053;
}

.clear-btn:active,
.operator-btn:active,
.decimal-btn:active {
    background-color: #3e4143;
}

.clear-btn {
    flex: 3 0 16px;
}

.equal-btn{
    flex: 2 0 8px;
    background-color: #7e95ae;
}

.equal-btn:hover {
    background-color: #89a2bd;
}

.equal-btn:active {
    background-color: #7e95ae;
}