
/* --------------------------- OVERALL --------------------------- */
#wrapper-calculator{
    width: 100dvw;
    height: 100dvh; /* Remove if content in #main is longer than vh */
    display: flex;
    flex-direction: column;
    align-items: center;
}
body, #wrapper-calculator, #main{
    box-sizing: border-box;
}




/* ----------------------- SECTION MAIN ------------------------- */
#main{
    padding: 4.2rem 0 0 0; /* To avoid going under the FIXED header */
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.calculator-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(6, 1fr);
    gap: 1.25rem;

    width: 300px;
    height: 70%;
    max-height: 500px;
    min-height: 450px;
    
    padding: 2rem;
    box-sizing: border-box;

    border: 1px solid #A6A29F;
    border-radius: 20px;
}
.output-screen{
    grid-column: 1 / -1;
    display: flex;
    flex-direction: column;

    background-color: transparent;
    border-radius: 10px;
    border: 1px solid var(--color-dark);
    word-break: break-all;
}
.spantwo{
   grid-column: span 2;
}

.prev-operand, .curr-operand{
    display: flex;
    align-items: center;
    padding: 0.5rem 2rem;
}
.prev-operand{
    min-height: 40px;
    font-weight: 400;
    font-size: var(--fs-sm);
}
.curr-operand{
    justify-content: end;
    min-height: 60px;
    font-size: 3.5rem;
    text-align: end;
}

.button-base, .button-dark, .button-accent{
    touch-action: manipulation;
    background-color: transparent;
    border-radius: 10px;
    user-select: none;
    border-width: 1px;
    border-style: solid;
}
.button-dark, .button-accent{
    font-family: var(--font-display);
    font-size: 2.8rem;
    font-style: italic;
}
.button-base{
    font-family: var(--font-primary);
    font-size: 2.4rem;
    color: var(--color-dark);
    border-color: var(--color-tonedown);
}
.button-dark{
    color: var(--color-dark);
    border-color: var(--color-dark);
}
.button-accent{
    color: var(--color-accent);
    border-color: var(--color-accent);
}
.button-base:hover, .button-dark:hover, .button-accent:hover{
    background-color: #EBE6E1;
    cursor: pointer;
}
.button-base:active, .button-dark:active, .button-accent:active{
    background-color: #F0E7DD;
    border-color: var(--color-accent);
}

/* MID-SIZE - Below 1,200px */
@media (max-width: 78em) {
    
}
/* TABLET   - Below   768px */
@media (max-width: 48em) {
    
}
/* MOBILE   - Below   500px */
@media (max-width: 31em) {
    #main{
        padding: 8rem 0 4rem 0; /* To avoid going under the FIXED header */
        width: 90dvw;
    }
    .calculator-grid{
        width: 100%;
        height: 100%;
        max-height: 600px;
        gap: 1.25rem;
        padding: 1.5rem;
    }
}
/* MINI     - Below   320px */
@media (max-width: 20em) {
    .output-screen, .button-dark, .button-accent, .button-base{
        border-radius: 8px;
    }
    .button-dark, .button-accent{
        font-size: 2.2rem;
    }
    .button-base{
        font-size: 1.8rem;
    }
}