body {
    background-color: #2c3e50;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    margin: 0;
    font-family: Arial, sans-serif;
}


/* Calculator body */
.calculator {

    background-color: #1a1a1a;

    width: 300px;

    padding: 20px;

    border-radius: 15px;

    box-shadow: 
        0 10px 30px rgba(0,0,0,0.5);

    border: 2px solid #333;

}


/* Brand */
.brand {

    color: #4a4a4a;

    font-size: 10px;

    text-align: center;

    margin-bottom: 10px;

    font-weight: bold;

}



/* LCD Display */

.display {

    position: relative;

    background: #9ead86;

    border: 4px inset #7c8a6a;

    border-radius: 5px;

    height: 65px;

    margin-bottom: 20px;

    overflow: hidden;

}



/* Status area (M / E / Error) */

.lcd-status {

    position: absolute;

    left: 8px;

    top: 5px;

    font-size: 14px;

    font-weight: bold;

    color: #2b2b2b;

    font-family: Arial, sans-serif;

}


#memoryIndicator,
#eModeIndicator,
#errorIndicator {

    display: none;

    margin-right: 8px;

}




/* Number display */

.lcd-number {

    position: absolute;

    right: 10px;

    bottom: 8px;

    width: calc(100% - 20px);

    text-align: right;

    font-family: "Courier New", monospace;

    font-size: 32px;

    color: #2b2b2b;

    white-space: nowrap;

    overflow: hidden;

}




/* Buttons layout */

.buttons {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 12px;

}



/* Button */

.btn {

    background: #333;

    color: white;

    border: none;

    padding: 15px 0;

    font-size: 18px;

    border-radius: 8px;

    cursor: pointer;

    box-shadow: 0 3px #000;

    transition: all 0.1s;

}



.btn:active {

    box-shadow: 0 1px #000;

    transform: translateY(2px);

}



/* C/CE button */

.clear {

    background-color: #d35400;

}



/* Operator buttons */

.operator {

    background-color: #444;

}



/* Plus button height */

.plus-btn {

    grid-row: span 2;

    height: 100%;

}