* { margin: 0; padding: 0; box-sizing: border-box; font-family: 'Inter', sans-serif; }

body {
    background: #121212;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
}

.calc-container {
    width: 100%;
    max-width: 360px;
    background: #1e1e1e;
    padding: 20px;
    border-radius: 24px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.5);
}

/* Display Styling */
.display {
    background: #121212;
    margin-bottom: 20px;
    padding: 20px;
    border-radius: 12px;
    text-align: right;
    word-wrap: break-word;
    word-break: break-all;
    min-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.previous { color: rgba(255,255,255,0.5); font-size: 1.1rem; }
.current { color: white; font-size: 2.2rem; font-weight: 500; }

/* Grid Layout */
.buttons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

button {
    cursor: pointer;
    font-size: 1.25rem;
    border: none;
    outline: none;
    border-radius: 12px;
    background: #2d2d2d;
    color: white;
    padding: 20px 0;
    transition: 0.2s;
}

button:hover { background: #3d3d3d; }
button:active { transform: scale(0.95); }

.col-2 { grid-column: span 2; }
.btn-op { background: #ff9f0a; color: white; font-weight: bold; }
.btn-op:hover { background: #ffb340; }
.btn-alt { background: #a5a5a5; color: black; }
.btn-equal { background: #2ecc71; }