/* General theme colors */
body {
  font-family: Arial, sans-serif;
  background-color: #faf4f8; /* Soft pink background */
  color: #333;
}

.bg-soft-pink {
  background-color: #00000d;/* #8b0438; /* Soft pink for header */
}

.btn-soft-pink {
  background-color: #f7a8b8; /* Muted pink for button */
  color: #fff;
}

.btn-soft-pink:hover {
  background-color: #e899a6; /* Slightly darker on hover */
  color: #fff;
}

/* Header styling */
header {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e5a0b4;
  height: 70px; /* Menentukan tinggi header secara langsung */
  padding: 0 20px; /* Atau gunakan padding untuk tinggi yang fleksibel */
}
/* General container styling */
header .container.d-flex {
    display: flex;
    justify-content: flex-end; /* Tetapkan posisi kanan */
    align-items: center;
    flex-wrap: nowrap; /* Hindari elemen turun */
    width: 100%; /* Pastikan mengambil lebar penuh */
    padding: 0;
    margin: 0;
}

/* Styling navigasi */
header .nav {
    display: flex; /* Gunakan flexbox untuk nav */
    justify-content: flex-end; /* Pastikan posisi item di kanan */
    text-align: right; /* Atur teks di kanan */
    margin: 0;
    padding: 0;
    width: auto;
}
/* Styling setiap item navigasi */
header .nav-item {
    display: inline-block; /* Item tetap sejajar */
    margin: 0 5px; /* Tambahkan sedikit margin antar item */
}
.logo-img {
  width: 175px;
  height: auto;
}

.user-text {
  font-size: 1rem;
  font-weight: bold;
  color: #FFFFFF;
}

.bi-person-circle {
  font-size: 1.5rem;
  color: #FFFFFF;
  cursor: pointer;
}

/* Hero section styling */
.hero-section {
  background-image: url('assets/images/hero-image_03.png');
  background-size: 100%; /* Adjust the background image size */
  background-repeat: no-repeat; /* Prevent the image from repeating */
  background-position: center;
  background-color: #f9f8f8;
  height: 430px;
  color: #8b0438;
  display: flex;
  align-items: center;
  position: relative;
  text-align: center;
}

.text-container {
  width: 50%;
  padding-left: 10%; /* Shift content to the left */
}

.btn-custom {
  background-color: black;
  color: white;
  padding: 10px 20px;
  border: none;
  text-transform: uppercase;
  font-weight: bold;
  margin-top: 10px;
}

.btn-custom:hover {
  background-color: #8b0438;
  color: white;
}

/* Promo Section Styling */
.promo-1 {
  padding-top: 30px;
  padding-bottom: 30px;
  background-color: #e0b1cb;
}

.promo-1 img.img-fluid {
  max-width: 100%;
  height: auto;
  object-fit: cover;
  margin-bottom: 15px; /* Jarak antara gambar dan teks di mode ponsel */
}

/* Text Container Styling */
.promo-1 .text-container {
  text-align: right; /* Align text to the right on desktop */
  padding-top: 15px;
}

.btn-promo {
  background-color: #e0b1cb;
  color: black;
  padding: 10px 20px;
  border: none;
  text-transform: uppercase;
  font-weight: bold;
  margin-top: 10px;
  border: 2px solid black;
}

.btn-promo:hover {
  background-color: #8b0438;
  color: white;
}


/* Carousel section styling */
.carousel-section {
  margin: 0; /* Menghapus margin section */
}

.carousel-img {
  height: 400px; /* Mengatur tinggi gambar carousel */
  object-fit: cover; /* Menjaga gambar agar memenuhi area */
  border-radius: 0; /* Menghapus border-radius agar gambar memenuhi area sepenuhnya */
}

/* Testimoni Section Styling */
.testimoni-section {
    background-color: #e0b1cb; /* Background color */
}

.testimoni-section .text-container {
    padding: 20px;
}

.testimoni-section .headline {
    color: #8b0438; /* Adjust text color */
    font-weight: bold;
    margin-bottom: 15px;
}

.testimoni-section .description {
    color: #333;
    margin-bottom: 20px;
}

.testimoni-section .btn-primary {
    background-color: #8b0438;
    color: #fff;
    border: none;
    padding: 10px 20px;
    text-transform: uppercase;
    font-weight: bold;
}

.testimoni-section .btn-primary:hover {
    background-color: #6a032d; /* Darker shade on hover */
}

/* Carousel Image Size */
.carousel-testi {
    max-width: 400px;      /* Gambar memenuhi lebar kolom */
    max-height: 400px;    /* Tinggi maksimum pada desktop */
    object-fit: cover;    /* Menjaga gambar agar tidak terdistorsi */
    border-radius: 8px;   /* Optional: Menambahkan border radius */
}


/* Custom Carousel Indicators */
.carousel-indicators [data-bs-target] {
    background-color: #8b0438; /* Custom indicator color */
}

.carousel-indicators .active {
    background-color: #6a032d; /* Custom active indicator color */
}


/*** Footer Start ***/
footer {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    background: var(--bs-dark) !important;
}

footer .footer-link {
    color: #ffffff; /* Link color */
    text-decoration: none; /* Remove default underline */
}

footer .footer-link:hover {
	color: #8b0438;
    text-decoration: underline; /* Add underline on hover */
}

footer .btn-light {
    color: #8b0438; /* Set icon color */
}

footer .btn-light:hover {
    color: #ffffff; /* Change icon color on hover */
    background-color: #8b0438; /* Optional: Change background color on hover */
}

/*** Footer End ***/

/*** copyright Start ***/
.copyright {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    background: var(--bs-dark) !important;
}.guidelines-list {
    text-align: left; /* Rata kiri untuk seluruh daftar */
    padding-left: 20px; /* Tambahkan padding kiri untuk spasi */
}
/*** copyright end ***/

/* Test Section Styling */
.test-section {
    background-color: #e0b1cb; /* Background color */
}

.test-section {
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 125px; /* Padding kiri */
    padding-right: 125px; /* Padding kanan */
}

.test-section .text-container {
    padding: 20px;
}

.test-section .headline {
    color: #8b0438;
    font-weight: bold;
    margin-bottom: 15px;
}

.bg-custom {
    background-color: #e0b1cb;
}

.test-section .description {
    color: #333;
    margin-bottom: 20px;
}

.test-section .btn-analisa {
    background-color: #8b0438;
    color: #fff;
    border: none;
    padding: 10px 50px;
    text-transform: uppercase;
    font-weight: bold;
}

.test-section .btn-analisa:hover {
    background-color: #6a032d;
}

.test-img {
    max-width: 100%;
    height: auto;
    object-fit: cover;
}

/* Full-width button styling */
.btn-full {
    width: 100%; /* Membuat tombol selebar container */
    display: block; /* Menghapus inline layout untuk tombol */
    padding: 10px 0; /* Atur padding agar rapi */
}
/* end section test */

/* Popup Overlay and Content */
.popup-overlay {
    display: none; /* Hidden by default */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5); /* Semi-transparent background */
    z-index: 1000;
    justify-content: center;
    align-items: center;
	justify-content: flex-end; /* Align popup content to the right */
}

/* Popup Content */
.popup-content {
    position: relative; /* For positioning close button */
    background-color: white;
    padding: 20px;
    border-radius: 8px 0 0 8px; /* Rounded corners on left side */
    height: 100vh; /* Full height */
    width: 30%; /* 30% width on desktop */
    overflow-y: auto; /* Allow scrolling if content is too long */
}

/* Close Button */
.close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    background: none;
    border: none;
    font-size: 24px;
    font-weight: bold;
    color: #8b0438;
    cursor: pointer;
}
.popup-header {
    font-size: 1.25rem;
    color: #8b0438;
    font-weight: bold;
    margin-bottom: 15px;
}

.popup-text {
    color: #333;
    font-size: 0.95rem;
    margin-bottom: 15px;
}

/* Gaya tombol saat disabled (nonaktif) */
.btn-analisa:disabled {
    background-color: #b56586; /* Warna lebih muda dari #8b0438 */
    color: #fff;
    cursor: not-allowed; /* Tanda bahwa tombol tidak bisa diklik */
    opacity: 0.8; /* Sedikit transparansi untuk efek disabled */
}

/* Custom styling for guidelines list */
.guidelines-list {
    list-style-type: disc; /* Use bullets */
    padding-left: 20px; /* Add left padding for indentation */
    color: #333;
	text-align: left; /* Rata kiri untuk seluruh daftar */
    padding-left: 20px; /* Tambahkan padding kiri untuk spasi */
}

.guidelines-list li {
    margin-bottom: 8px; /* Space between list items */
}

/* Boxed Text Styling */
.info-box {
    background-color: #e0b1cb; /* Light background color for the box */
    border: 1px solid #000;
    padding: 15px;
    border-radius: 0px; /* Rounded corners */
    color: #333;
    font-size: 0.95rem;
    text-align: left;
	margin-bottom:20px;
}
/* Gaya untuk tombol "UNGGAH FOTO" */
.btn-upload {
    background-color: #fff; /* Warna latar putih */
    color: #333; /* Warna teks hitam */
    border: 2px solid #000; /* Border hitam solid */
}

.btn-upload:hover {
    background-color: #fff; /* Tetap putih tanpa efek hover */
    color: #333;
    border-color: #000;
    cursor: pointer;
}

/* Posisi Ikon Show Password */
.password-toggle {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-40%);
    cursor: pointer;
    color: #6c757d;
}

.test-section .login-form {
    width: 70%;
}

/* Gaya link Daftar */
.register-link {
    color: #8b0438;
    text-decoration: none;
}

.register-link:hover {
    text-decoration: underline;
}

/* Full-width button styling */
.btn-full-width {
    width: 40%; /* Mengatur tombol agar selebar container */
}

/* Style for Input Section */
.input-section {
    background-color: #e0b1cb;
    padding: 40px 20px;
}

.input-section .headline {
    color: #8b0438;
    font-weight: bold;
    margin-bottom: 15px;
}

/* Style for Input Image with Fixed Size */
.input-img {
    width: 300px;
    height: 400px;
    object-fit: cover; /* Agar gambar terisi penuh dalam kotak 100x100 */
    border: 1px solid #ddd;
    padding: 5px;
    background-color: #fff;
}
/* CSS untuk membuat box gambar dengan ukuran tetap */
.image-box {
    width: 300px;         /* Lebar tetap */
    height: 500px;        /* Tinggi tetap */
    overflow: hidden;     /* Potong gambar yang melampaui batas */
    margin: 0 auto;       /* Agar box di-center */
    border: 1px solid #ddd; /* Optional: border untuk box */
}

.select-wrapper {
    position: relative;
}

.select-wrapper select {
    appearance: none; /* Hilangkan default arrow */
    -webkit-appearance: none;
    -moz-appearance: none;
}

.select-wrapper::after {
    content: '\25BC'; /* Unicode untuk segitiga ke bawah */
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    pointer-events: none; /* Ikon tidak dapat diklik */
    font-size: 12px; /* Sesuaikan ukuran */
    color: #6c757d; /* Sesuaikan warna */
}

#preview-image {
    width: 100%;          /* Buat gambar memenuhi box */
    height: 100%;
    object-fit: cover;    /* Sesuaikan gambar agar memenuhi box tanpa distorsi */
}

/* Responsive styling */
@media (max-width: 768px) {
  .logo-img {
	width: 100px;
	height: auto;
   }	
   
 @media (max-width: 768px) {
  /* Penyesuaian ukuran logo untuk ponsel */
  .logo-img {
    width: 100px;
    height: auto;
  }
  
  /* Styling container header */
  header .container.d-flex {
    display: flex;
    justify-content: flex-end !important; /* Posisi elemen ke kanan */
    align-items: center;
    flex-wrap: nowrap; /* Hindari elemen turun */
    padding: 0; /* Hapus padding jika ada */
    outline: 2px dashed red; /* Debugging visual (hapus jika tidak dibutuhkan) */
  }

  /* Styling navigasi */
  header .nav {
    width: 100%; /* Pastikan elemen mengambil lebar penuh */
    text-align: right !important; /* Paksa teks berada di kanan */
    padding-right: 10px; /* Tambahkan sedikit jarak kanan */
  }

  /* Styling item navigasi */
  header .nav-item {
    display: inline-block; /* Jaga agar elemen sejajar */
    margin: 0; /* Hilangkan margin berlebih */
  }

 .hero-section {
    background-image: none; /* Remove background image */
    height: auto;
	flex-direction: column;
	margin-top: 15px;
	margin-bottom: 65px;
  }

  .text-content {
    padding-top: 15px;
  }

  .hero-section::before {
    content: '';
    display: block;
    background-image: url('assets/images/hero-image.png');
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 300px; /* Adjust as needed for mobile */
    order: -1;
  }
  
  .text-container {
    width: 100%;
    padding-left: 0;
    padding-top: 15px;
  }
  
   .promo-1 .text-container {
    text-align: center;
  }
  .btn-custom {
    background-color: black; /* Mobile button color */
    color: white;
  }

  .btn-custom:hover {
    background-color: #8b0438;
    color: white;
  }
  
    .testimoni-section .text-container {
        text-align: center; /* Center text on mobile */
    }

    .testimoni-section img.img-fluid {
        margin-bottom: 15px; /* Space between carousel and text on mobile */
    }
	    .carousel-img {
        max-height: 250px; /* Sesuaikan tinggi gambar pada ponsel */
    }
	
	.test-section {
        padding-left: 15px; /* Mengurangi padding di ponsel */
        padding-right: 15px;
    }
	
    .test-section  .text-container {
        text-align: center;
    }

    .test-img {
        margin-bottom: 15px; /* Add spacing below image on mobile */
    }
    .popup-content {
        width: 100%; /* Full width on mobile */
		height:90%;
        margin: 15px 15px; /* Smaller padding on mobile */
        border-radius: 0; /* Remove rounded corners on mobile */
    }
	    .guidelines-list {
        text-align: left; /* Left-align bullet points on mobile */
        padding-left: 15px; /* Optional padding for better alignment */
    }

    .info-box {
        padding: 10px; /* Reduce padding on mobile for a compact look */
        text-align: left; /* Left-align text in the box */
    }
.test-section .login-form {
        width: 100%;
    }