  @import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700&display=swap');

    * {
      box-sizing: border-box;
    }

    body {
      margin: 0;
      padding: 0;
      font-family: 'Orbitron', sans-serif;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100vh;
      background: radial-gradient(circle at top left, #ff9a9e, #fad0c4, #fad0c4, #a18cd1, #fbc2eb);
      background-size: 400% 400%;
      animation: gradientBG 20s ease infinite;
    }

    @keyframes gradientBG {
      0% { background-position: 0% 50%; }
      50% { background-position: 100% 50%; }
      100% { background-position: 0% 50%; }
    }

    .calculator {
      background: rgba(255, 255, 255, 0.15);
      border-radius: 25px;
      padding: 30px;
      box-shadow: 0 8px 32px rgba(31, 38, 135, 0.37);
      backdrop-filter: blur(12px);
      border: 1px solid rgba(255, 255, 255, 0.18);
      width: 320px;
      text-align: center;
    }

    #display {
      width: 100%;
      height: 55px;
      font-size: 28px;
      padding: 10px;
      text-align: right;
      border: none;
      border-radius: 15px;
      background-color: rgba(255, 255, 255, 0.25);
      color: #222;
      font-weight: bold;
      margin-bottom: 25px;
      box-shadow: inset 0 4px 8px rgba(0, 0, 0, 0.15);
    }

    .button-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 15px;
    }

    .btn {
      padding: 18px;
      font-size: 20px;
      font-weight: 600;
      border: none;
      border-radius: 15px;
      background: rgba(255, 255, 255, 0.3);
      color: #333;
      transition: 0.3s ease;
      box-shadow: 0 6px 12px rgba(0, 0, 0, 0.2);
      position: relative;
      overflow: hidden;
    }

    .btn:hover {
      background: rgba(255, 255, 255, 0.6);
      transform: translateY(-3px);
      box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
    }

    .btn::after {
      content: "";
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background: radial-gradient(circle, rgba(255,255,255,0.4), transparent 70%);
      opacity: 0;
      transition: opacity 0.4s ease;
    }

    .btn:hover::after {
      opacity: 1;
    }

    .btn-operator {
      background-color: #ffd54f;
    }

    .btn-operator:hover {
      background-color: #ffca28;
    }

    .btn-clear {
      background-color: #f06292;
      color: white;
      grid-column: span 4;
    }

    .btn-clear:hover {
      background-color: #ec407a;
    }