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

.outerbody {
    width: 90vw;
    max-width: 460px;
    background-color: rgb(0, 0, 0);
    border-radius: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 35px 20px;
    box-sizing: border-box;
}

.screen {
    width: 100%;
    display: flex;
    justify-content: center;
}

.input {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(4, 1fr);              /* gemini */
    gap: 12px;                                          /* gemini */
    justify-items: center;
    margin-top: 30px;
    padding: 0;    
}

.buttons {
    width: 100%;
    max-width: 75px;
    aspect-ratio: 1 / 1;
    height: auto;
    background-color: rgb(48, 43, 43);
    /* display: inline-block; */
    border-radius: 50%;
    font-size: clamp(22px, 6vw, 40px);
    color: white;
    border: 2px rgb(62, 59, 59) solid;
    -webkit-text-stroke-color: rgb(0, 0, 0);                /* googled */
    -webkit-text-stroke-width: 0.8px;                         /* googled */
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

#output {
    width: 100%;
    height: 90px;
    background-color: rgb(48, 43, 43);
    border: 2px rgb(62, 59, 59) solid;
    border-radius: 100px;
    display: flex;
    justify-content: end;
    align-items: center;
    font-size: clamp(35px, 8vw, 60px);
    color: white;
    letter-spacing: 5px;
    padding-right: 20px;                /* gemini */
    box-sizing: border-box;             /* gemini */
    overflow-y: hidden;                 /* gemini */        /* prevents vertical growth */
    white-space: nowrap;                /* gemini */        /* keeps the numbers on the line */
    font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
}

#ans {
    background-color: rgb(255, 111, 0);
    -webkit-text-stroke-width: 0.8px;                           
    -webkit-text-stroke-color: rgb(0, 0, 0);                
    font-size: clamp(30px, 8vw, 53px);
}

#zerozero {
    letter-spacing: px;
    align-items: center;
}

#AC {
    font-size: clamp(18px, 5vw, 33px);
}

#devide {
    -webkit-text-stroke-color: rgb(0, 0, 0);            
    -webkit-text-stroke-width: 0.8px;                    
    font-size: clamp(30px, 8vw, 55px);
}

#minus {
    font-size: clamp(30px, 8vw, 56px);
    line-height: 0;
    padding-bottom: 8px;
}

#multiply {
    font-size: clamp(28px, 8vw, 52px);
}

#plus {
    font-size: clamp(28px, 8vw, 50px);
}

#backspace {
    font-size: clamp(20px, 5vw, 32px);
    padding-bottom: 2px;
    padding-left: 2px;
}

button, #output { user-select: none; }
