* {
    margin:0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, Helvetica, sans-serif;
}
body {
    background-color: #333;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 3em;
}
#calc {
    width: 400px;
    padding: .5em;
    background-color: #c4c4c4;
    color: #000;
    display: flex;
    flex-direction: column;
}
#cal h3{
    font-size: .8em;
    font-weight: 300;
    color: #666;
}
#operations {
    text-align: right;
}
#previous-operation,
#current-operation{
    min-height: 1.6em;
    padding: 0.2em;
    overflow-wrap: break-word;
}
#previous-operation{
    color: #777; 
}
#current-operation{
    font-size: 3em;
    font-weight: 700;
}
#buttons-container{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 3px;
}
#buttons-container button{
    border: 1px solid transparent;
    border-radius: 0;
    height: 4em;
    font-size: 1.2em;
    background-color: #dbdbdb;
    cursor: pointer;
}
#buttons-container button:hover{
    background-color: #999;
}
#buttons-container .number {
    background-color: #f3f3f3; 
}
#buttons-container .number:hover{
    background-color: #bababa;
    border-color: #999;
}
#buttons-container #equal-btn{
    grid-column: span 2;
    background-color: #75a5cb;
}
#buttons-container #equal-btn:hover{
    background-color: #3a91b8;
}