/* Filter Button Container */
.filter-container {
  margin-bottom: 20px;
  text-align: center;
  padding: 20px 0;
  display: flex;
  justify-content: center;
  border-radius: 12px;
  flex-wrap: wrap; /* Membolehkan tombol membungkus jika diperlukan */
  gap: 10px; /* Jarak antar tombol */
}

/* Default Style for Buttons */
.filter-button {
  color: white;
  border: none;
  padding: 12px 24px;
  margin: 6px;
  font-size: 14px;
  font-weight: 500;
  border-radius: 25px;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
  display: inline-block;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);
  min-width: 120px;
  text-align: center;
}

/* Warna Khusus untuk Setiap Tombol */
.filter-button.all {
  background-color: #2980b9; /* Biru untuk Show All */
}

.filter-button.pemula {
  background-color: #27ae60; /* Hijau untuk Pemula */
}

.filter-button.menengah {
  background-color: #f39c12; /* Kuning untuk Menengah */
}

.filter-button.mahir {
  background-color: #8e44ad; /* Ungu untuk Mahir */
}

.filter-button.bahaya {
  background-color: #e74c3c; /* Merah untuk Bahaya */
}

.filter-button.module {
  background-color: #16a085; /* Hijau kebiruan untuk Module */
}

.filter-button.file {
  background-color: #34495e; /* Abu-abu gelap untuk File */
}

/* Hover Effect - Elegant */
.filter-button:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  color: #ecf0f1;
}

/* Active Effect - Elegant */
.filter-button:active {
  transform: translateY(2px);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.12);
  color: #ffffff;
}

/* Responsif untuk Mobile (Max Width: 768px) */
@media (max-width: 768px) {
  .filter-container {
    padding: 15px 0;
    background-color: #fff;
    justify-content: center;
    flex-direction: row; /* Menjaga tombol tetap horizontal */
    align-items: center;
    flex-wrap: wrap;
    gap: 10px; /* Jarak antar tombol */
  }

  .filter-button {
    font-size: 14px;
    padding: 12px 24px;
    margin: 5px;
    min-width: 120px; /* Menjaga tombol tidak terlalu kecil */
  }

  /* Membuat tampilan 1 tombol di baris pertama dan 3 tombol pada baris selanjutnya */
  .filter-container > .filter-button:nth-child(1) {
    flex: 1 1 100%; /* Tombol pertama akan mengambil seluruh lebar baris */
  }

  .filter-container > .filter-button:nth-child(n+2) {
    flex: 1 1 30%; /* Tombol berikutnya akan memiliki lebar sekitar 30% dari baris */
  }
}

/* Responsif untuk Perangkat yang Lebih Kecil (Max Width: 480px) */
@media (max-width: 480px) {
  .filter-button {
    font-size: 12px;
    padding: 10px 20px;
    min-width: 100px; /* Menyesuaikan ukuran tombol pada layar kecil */
  }

  /* Membuat tampilan 1 tombol di baris pertama dan 3 tombol pada baris selanjutnya */
  .filter-container > .filter-button:nth-child(1) {
    flex: 1 1 100%;
  }

  .filter-container > .filter-button:nth-child(n+2) {
    flex: 1 1 30%;
  }
}
