    /* 3D Scientific Calculator Style */

    body {
        background: linear-gradient(180deg,#9ea6ff 0%, #b6b8ff 60%);
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100vh;
        font-family: "Segoe UI", Arial, sans-serif;
        -webkit-font-smoothing: antialiased;
    }

    .app {
        background: linear-gradient(180deg, #e9ecff 0%, #d6dbff 100%);
        padding: 18px;
        border-radius: 16px;
        box-shadow: 0 20px 40px rgba(17,24,39,0.25), inset 0 2px 0 rgba(255,255,255,0.6);
        width: max-content;
        border: 1px solid rgba(0,0,0,0.06);
    }

    .display {
        background: linear-gradient(180deg,#f8fbff 0%, #e9f0ff 100%);
        border-radius: 10px;
        box-shadow: inset 0 -6px 14px rgba(0,0,0,0.06), 0 8px 18px rgba(13,20,40,0.08);
        height: 110px;
        margin-bottom: 12px;
        padding: 12px 14px;
        box-sizing: border-box;
        border: 1px solid rgba(0,0,0,0.06);
    }

    .expression {
        text-align: right;
        font-size: 14px;
        color: #6b7280;
        margin-bottom: 6px;
    }

    .result {
        text-align: right;
        font-size: 36px;
        font-weight: 700;
        color: #0f172a;
        letter-spacing: 0.6px;
    }

    .grid {
        display: grid;
        grid-template-columns: repeat(5, 68px);
        gap: 8px;
    }

    button {
        height: 60px;
        font-size: 16px;
        background: linear-gradient(180deg,#ffffff 0%, #e6e6e9 100%);
        border-radius: 10px;
        border: 1px solid rgba(0,0,0,0.08);
        box-shadow: 0 6px 0 rgba(15,23,42,0.12), inset 0 1px rgba(255,255,255,0.7);
        cursor: pointer;
        transition: transform 0.08s ease, box-shadow 0.08s ease, background 0.12s;
    }

    button:hover {
        transform: translateY(-2px);
    }

    button:active {
        transform: translateY(4px);
        box-shadow: 0 2px 0 rgba(15,23,42,0.08), inset 0 -3px 8px rgba(0,0,0,0.06);
    }

    button.operator {
        background: linear-gradient(180deg,#fff7e6 0%, #ffeaa0 100%);
    }

    button.function {
        background: linear-gradient(180deg,#eef2ff 0%, #dfe7ff 100%);
    }

    .equals {
        background: linear-gradient(180deg,#ffd44d 0%, #ffbf00 100%);
        font-size: 20px;
        font-weight: 700;
        border-radius: 10px;
        box-shadow: 0 8px 0 rgba(255,153,0,0.25);
    }

    /* Smaller screens adjustments */
    @media (max-width: 420px) {
        .grid { grid-template-columns: repeat(5, 52px); gap: 6px; }
        button { height: 48px; font-size: 14px; border-radius: 8px; }
        .display { height: 90px; }
        .result { font-size: 28px; }
    }

