/* Import Google font - Poppins */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap");

/* Reset semua elemen agar tidak ada margin dan padding default */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; /* Mengatur box model agar padding dan border tidak menambah ukuran elemen */
  font-family: "Poppins", sans-serif; /* Menggunakan font Poppins dari Google Fonts */
}

/* Gaya dasar untuk body */
body {
  height: 100vh; /* Mengatur tinggi body agar memenuhi seluruh viewport */
  display: flex; /* Menggunakan flexbox untuk pemusatan */
  align-items: center; /* Memusatkan konten secara vertikal */
  justify-content: center; /* Memusatkan konten secara horizontal */
  background: #e0e3eb; /* Warna latar belakang */
}

/* Container utama kalkulator */
.container {
  position: relative; /* Menentukan posisi relatif untuk elemen turunan */
  max-width: 300px; /* Lebar maksimum container */
  width: 100%; /* Lebar responsif sesuai dengan parent */
  border-radius: 12px; /* Membuat sudut elemen membulat */
  padding: 10px 20px 20px; /* Memberikan ruang di dalam elemen */
  background: #fff; /* Warna latar belakang putih */
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.05); /* Efek bayangan ringan */
}

/* Tampilan layar kalkulator */
.display {
  height: 80px; /* Tinggi layar kalkulator */
  width: 100%; /* Lebar penuh sesuai parent */
  outline: none; /* Menghilangkan outline default */
  border: none; /* Menghilangkan border */
  text-align: right; /* Teks rata kanan untuk angka yang diketik */
  margin-bottom: 10px; /* Jarak bawah sebelum tombol */
  font-size: 25px; /* Ukuran font */
  color: #000e1a; /* Warna teks */
  pointer-events: none; /* Mencegah pengguna mengetik langsung */
}

/* Container tombol kalkulator */
.buttons {
  display: grid; /* Menggunakan grid layout untuk tombol */
  grid-gap: 10px; /* Jarak antar tombol */
  grid-template-columns: repeat(4, 1fr); /* Membagi grid menjadi 4 kolom dengan ukuran sama */
}

/* Gaya tombol */
.buttons button {
  padding: 10px; /* Ruang dalam tombol */
  border-radius: 6px; /* Membuat sudut tombol membulat */
  border: none; /* Menghilangkan border */
  font-size: 20px; /* Ukuran font */
  cursor: pointer; /* Menampilkan pointer saat dihover */
  background-color: #eee; /* Warna latar belakang tombol */
}

/* Efek ketika tombol ditekan */
.buttons button:active {
  transform: scale(0.99); /* Efek sedikit mengecil saat tombol ditekan */
}

/* Warna khusus untuk tombol operator */
.operator {
  color: #2f9fff; /* Warna biru untuk membedakan tombol operator */
}