* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
  }
  
  body {
    font-family: 'Segoe UI', sans-serif;
    background: linear-gradient(135deg, #f9f9f9, #e0f7fa);
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
  }
  
  .calculator {
    background: #ffffff;
    padding: 25px 30px;
    border-radius: 20px;
    box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.15);
    width: 340px;
  }
  
  .calculator h2 {
    text-align: center;
    color: #00796b;
    margin-bottom: 15px;
    font-size: 24px;
  }
  
  .expression-display {
    height: 20px;
    font-size: 16px;
    color: #777;
    text-align: right;
    margin-bottom: 5px;
    padding-right: 5px;
    overflow-x: auto;
    white-space: nowrap;
  }
  
  #display {
    width: 100%;
    height: 60px;
    font-size: 24px;
    padding: 10px 15px;
    text-align: right;
    border: none;
    background-color: #f3f3f3;
    border-radius: 12px;
    margin-bottom: 20px;
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  }
  
  .buttons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }
  
  button {
    padding: 20px;
    font-size: 18px;
    border: none;
    border-radius: 12px;
    background: #e0f2f1;
    color: #00695c;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    box-shadow: 0px 4px 10px rgba(0, 105, 92, 0.1);
  }
  
  button:hover {
    background-color: #b2dfdb;
    transform: translateY(-2px);
  }
  
  button.operator {
    background-color: #80cbc4;
    color: white;
  }
  
  button.operator:hover {
    background-color: #4db6ac;
  }
  
  button.equals {
    background-color: #26a69a;
    color: white;
  }
  
  button.equals:hover {
    background-color: #00897b;
  }
  
  button.clear {
    background-color: #ef5350;
    color: white;
  }
  
  button.clear:hover {
    background-color: #d32f2f;
  }
  
  button.backspace {
    background-color: #ffa726;
    color: white;
  }
  
  button.backspace:hover {
    background-color: #fb8c00;
  }
  