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

body {
    margin: 0;
    padding: 0;
    background: linear-gradient(to right, green, blue);
    }

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

        .calc__grid > button {
            cursor: pointer;
            font-size: 2rem;
            border: 1px, solid white;
            outline: none;
            background-color: white;
        }

        .calc__grid > button:hover {
            background-color: lightgreen;
        }

        .span__two {
            grid-column: span 2;
            color: black;
            background-color: #FFFFFF;
        }

        .calc__output {
            grid-column: 1 / -1;
            background-color: black;
            display: flex;
            align-items: flex-end;
            justify-content: space-around;
            flex-direction: column;
            padding: 10px;
            word-wrap: break-word;
            word-break: break-all;
            color: white;
        }

        .calc__output .calc__previousOp {
            color: white;
            font-size: 1.5rem;
        }

        .calc__output .calc__currentOp {
            color: white;
            font-size: 2.5rem;
        }

        @media only screen and (max-width: 480px) {
            .calc__grid {
                max-width: auto;
                display: grid;
                justify-content: center;
                align-content: center;
                grid-template-columns: repeat(4, 75px);
                grid-template-rows: minmax(120px, auto) repeat(5, 75px);
            }
        }

        @media only screen and (max-width: 480px) {
            .calc__output,
            .calc__previousOp {
                font-size: 1rem;
            }
        }

        @media only screen and (max-width: 480px) {
            .calc__output,
            .calc__currentOp {
                font-size: 1.5rem;
            }
        }

        @media only screen and (max-width: 480px) {
            .calc__grid > button {
                font-size: 1rem;
            }
        }