/* Import Google font - Poppins */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap');

/* Reset CSS untuk menghilangkan margin dan padding default di semua elemen */
*{
  margin: 0;
  padding: 0;
  box-sizing: border-box; /* Mengatur box-sizing agar padding dan border tidak menambah ukuran elemen */
  font-family: 'Poppins', sans-serif; /* Menggunakan font Poppins dari Google Fonts */
}

/* Styling untuk elemen body */
body{
  display: flex; /* Menggunakan flexbox untuk menyusun elemen di tengah */
  align-items: center; /* Menyusun elemen secara vertikal di tengah */
  justify-content: center; /* Menyusun elemen secara horizontal di tengah */
  min-height: 100vh; /* Menentukan tinggi minimal body agar mencakup seluruh tinggi viewport */
  background: #927DFC; /* Mengatur warna latar belakang */
}

/* Styling untuk elemen utama wrapper */
.wrapper{
  width: 450px; /* Lebar elemen */
  height: 280px; /* Tinggi awal elemen */
  padding: 30px; /* Ruang dalam elemen */
  background: #fff; /* Warna latar belakang putih */
  border-radius: 9px; /* Membuat sudut elemen menjadi melengkung */
  transition: height 0.2s ease; /* Mengatur transisi tinggi elemen dengan transisi */
}

/* Styling ketika wrapper dalam keadaan aktif */
.wrapper.active{
  height: 525px; /* Tinggi berubah saat aktif */
}

/* Styling untuk upload-box (tempat unggah gambar) */
.wrapper .upload-box{
  height: 225px; /* Menentukan tinggi upload-box */
  display: flex; /* Menggunakan flexbox untuk penyusunan elemen */
  cursor: pointer; /* Mengubah kursor menjadi pointer untuk interaktivitas */
  align-items: center; /* Menyusun elemen secara vertikal di tengah */
  justify-content: center; /* Menyusun elemen secara horizontal di tengah */
  flex-direction: column; /* Menyusun elemen dalam satu kolom */
  border-radius: 5px; /* Membuat sudut elemen menjadi melengkung */
  border: 2px dashed #afafaf; /* Menambahkan border dashed */
}

/* Menghilangkan border pada upload-box saat wrapper aktif */
.wrapper.active .upload-box{
  border: none;
}

/* Styling untuk teks dalam upload-box */
.upload-box p{
  font-size: 1.06rem; /* Ukuran font */
  margin-top: 20px; /* Jarak atas */
}

/* Menyembunyikan teks dalam upload-box saat wrapper aktif */
.wrapper.active .upload-box p{
  display: none;
}

/* Styling gambar dalam upload-box saat aktif */
.wrapper.active .upload-box img{
  width: 100%; /* Lebar gambar mengikuti parent */
  height: 100%; /* Tinggi gambar mengikuti parent */
  object-fit: cover; /* Memastikan gambar menyesuaikan dengan ukuran tanpa distorsi */
  border-radius: 5px; /* Membuat sudut elemen menjadi melengkung */
}

/* Styling untuk konten dalam wrapper */
.wrapper .content{
  opacity: 0; /* Membuat elemen transparan saat awal */
  pointer-events: none; /* Menonaktifkan interaksi elemen */
}

/* Styling konten saat wrapper aktif */
.wrapper.active .content{
  opacity: 1; /* Menampilkan elemen */
  pointer-events: auto; /* Mengaktifkan interaksi elemen */
  transition: opacity 0.5s 0.05s ease; /* Efek transisi untuk smooth fading */
}

/* Styling untuk baris dalam konten */
.content .row{
  display: flex; /* Menggunakan flexbox untuk menyusun elemen */
  justify-content: space-between; /* Menyusun elemen dengan jarak di antara mereka */
}

/* Styling untuk kolom dalam baris */
.content .row .column{
  width: calc(100% / 2 - 15px); /* Mengatur lebar agar dua kolom berada di satu baris */
}

/* Styling untuk label dalam kolom */
.row .column label{
  font-size: 1.06rem; /* Ukuran font */
}

/* Styling untuk input ukuran gambar */
.sizes .column input{
  width: 100%; /* Lebar penuh */
  height: 49px; /* Tinggi input */
  outline: none; /* Menghilangkan garis fokus default */
  margin-top: 7px; /* Jarak atas */
  padding: 0 15px; /* Padding dalam input */
  font-size: 1.06rem; /* Ukuran font */
  border-radius: 4px; /* Membuat sudut elemen menjadi melengkung */
  border: 1px solid #aaa; /* Border dengan warna abu-abu */
}

/* Styling untuk input saat difokus */
.sizes .column input:focus{
  border: 2px solid #927DFC; /* Warna border berubah saat fokus */
}

/* Styling untuk bagian checkbox */
.content .checkboxes{
  margin-top: 20px; /* Jarak atas */
}

/* Styling kolom dalam checkboxes */
.checkboxes .column{
  display: flex; /* Menggunakan flexbox */
  align-items: center; /* Menyusun elemen secara vertikal di tengah */
}

/* Styling untuk checkbox */
.checkboxes .column input{
  width: 17px; /* Ukuran checkbox */
  height: 17px; /* Ukuran checkbox */
  border-radius: 4px; /* Membuat sudut */
  margin-right: 9px; /* Jarak antara checkbox dan label */
  accent-color: #927DFC; /* Warna checkbox */
}

/* Styling tombol download */
.content .download-btn{
  width: 100%; /* Lebar penuh */
  color: #fff; /* Warna teks putih */
  outline: none; /* Menghilangkan outline */
  border: none; /* Menghilangkan border */
  cursor: pointer; /* Mengubah kursor menjadi pointer */
  font-size: 1.06rem; /* Ukuran font */
  border-radius: 5px; /* Membuat sudut elemen menjadi melengkung */
  padding: 17px 0; /* Padding vertikal */
  margin: 30px 0 10px; /* Jarak antara elemen */
  background: #927DFC; /* Warna latar belakang tombol */
  text-transform: uppercase; /* Mengubah teks menjadi huruf kapital */
}
