*,
*::before,
*::after {
    box-sizing: border-box;
    font-family: monospace;
    font-weight: 600;
}

body {
    background-color: #99b7d3e3;
    font-size: 1.5em;
}

.calc-grid {
    display: grid;
    justify-content: center;
    align-content: center;
    min-height: 100vh;
    grid-template-columns: repeat(5, 80px);
    grid-template-rows: minmax(120px, auto) repeat(4, 100px);
}

@media only screen and (max-width: 1025px) {
    body {
        font-size: 1.8rem;
    }

    .calc-grid {
        grid-template-columns: repeat(5, 90px);
        grid-template-rows: minmax(120px, auto) repeat(4, 100px);
    }
}

button,
input[type="submit"],
input[type="reset"] {
    background: none;
    color: inherit;
    border: none;
    padding: 0;
    font: inherit;
    cursor: pointer;
    outline: inherit;
}

.calc-grid > button {
    border: 2px solid rgba(228, 213, 213, 0.911);
    background-color: #78d8e9a4;
}

.calc-grid > button:hover,
.calc-grid > button:active {
    background-color: #afe2e0c2
}

button.number {
    background-color: #32b3e6de;
}

button.operator {
    background-color: #120fb6a4
}

.lrg-btn {
    grid-column: span 2;
}

.output {
    grid-column: 1 / -1;
    display: flex;
    align-items: flex-end;
    justify-content: space-around;
    flex-direction: column;
    word-wrap: break-word;
    word-break: break-all;
    padding: 10px;
    background-color: #ffffff;
    border-top: 2px solid #e7dbdbf1;
    border-left: 2px solid #ebe2e2f1;
    border-right: 2px solid #e9dfdff1;
}

.output .prev-operand,
.output .current-operand {
    color: #080101
}

.output .current-operand {
    font-size: 2em;
    font-weight: 400;
}