body {
	/* Mengatur gambar sebagai background */

	/* Menutupi seluruh layar */
	background-size: cover;
	/* Pusatkan gambar */
	background-position: center;
	/* Pastikan background tetap pada posisinya saat di-scroll */
	background-attachment: fixed;
	/* Tidak ada pengulangan gambar */
	background-repeat: no-repeat;
	/* Mengatur tinggi minimal agar selalu menutupi viewport */
	min-height: 100vh;
}

.custom-modal-dialog {
	max-width: 25%;
	/* Mengatur lebar maksimal dari modal dialog */
	margin: 0 !important;
	/* Menghilangkan margin secara default */
	margin-left: 0 !important;
	/* Mengatur margin kiri menjadi 0 agar menempel ke kiri */
	min-height: 100vh !important;
	/* Mengatur tinggi minimal agar selalu menutupi viewport */
}

.custom-modal-dialog .modal-content {
	height: 100vh;
	/* Mengatur tinggi modal content agar sama dengan tinggi viewport */
	border-radius: 0 !important;
	/* Menghilangkan pembulatan pada sudut */
}

@keyframes spin {
	from {
		transform: rotate(0deg);
	}

	to {
		transform: rotate(360deg);
	}
}

@keyframes radiate {
	0% {
		transform: scale(1);
		opacity: 1;
	}

	100% {
		transform: scale(2);
		opacity: 0;
	}
}

.btn-square-image {
	width: 60px;
	height: 60px;
	background-size: cover;
	background-position: center;
	animation: spin 10s linear infinite;
	position: relative;
	border-radius: 0;
	/* Jika Anda ingin sudut tajam */
	position: fixed;
	bottom: 30px;
	left: 10px;
	z-index: 99;
}

.btn-square-image::before {
	content: "";
	position: absolute;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	border: 2px solid red;
	animation: spin 10s linear infinite;
	border-radius: 50%;
	transform: translate(-50%, -50%) scale(1);
	animation: radiate 2s ease-out infinite;
	z-index: -1;
	/* Untuk memastikan pseudo-elemen berada di belakang tombol */
}

.btn-square-image2 {
	width: 60px;
	height: 60px;
	background-size: cover;
	background-position: center;
	position: relative;
	border-radius: 0;
	/* Jika Anda ingin sudut tajam */
	position: fixed;
	bottom: 30px;
	right: 300px;
	/* Ganti left dengan right untuk menempatkan di pojok kanan bawah */
	z-index: 99;
}


.btn-square-image2::before {
	content: "";
	position: absolute;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	z-index: -1;
	/* Untuk memastikan pseudo-elemen berada di belakang tombol */
}


.hide-on-mobile {
	/* Default display settings */
	display: block;
}

@media (max-width: 768px) {
	body {
		background: none;
	}

	.main-content {
		max-width: 100% !important;
		width: 100%;
		background-color: white;
		height: 100vh;
	}

	.custom-modal-dialog {
		max-width: 100% !important;
		width: 100% !important;
	}

	.hide-on-mobile {
		/* Hide element on screens smaller than 768px */
		display: none;
	}
}

.fixed-right {
	position: fixed;
	top: 20px;
	/* Sesuaikan jarak dari atas */
	right: 20px;
	/* Sesuaikan jarak dari kanan */
	width: 50%;
	/* Lebar elemen */
	margin-right: 30px;
}

.background-div {
	position: relative;
	background-size: cover;
	background-position: center;
	min-height: 100vh;
}

.background-div::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	/* Warna hitam transparan */
	z-index: 1;
}

.background-divi {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 100vh;
}

.background-divi-fixed {
	position: relative;
	/* Membuat elemen ini sebagai reference untuk pseudo-element */
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	min-height: 100vh;
}

.background-divi-fixed::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	/* Warna hitam transparan */
	z-index: 1;
	/* Overlay */
}

/* Pastikan elemen konten memiliki z-index lebih tinggi */
.background-divi-fixed>* {
	position: relative;
	z-index: 2;
	/* Agar konten muncul di atas overlay */
}



.background-divii {
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 20px;
	text-align: center;
	height: 100vh;
	border-top-left-radius: 180px;
	border-top-right-radius: 180px;
}

.background-divii p {
	color: #fff;
	z-index: 99;
	font-family: 'Gwendolyn', cursive
}

.background-divii::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 1;
	border-top-left-radius: 180px;
	border-top-right-radius: 180px;
}

.create {
	margin-bottom: 50px;
}

@media (max-width: 768px) {
	.background-divi {
		position: relative;
		top: 0;
		left: 0;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		background-attachment: fixed;
		width: 100%;
		min-height: 100%;

	}

	.background-divii {
		position: relative;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
	}

	.background-divii::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.5);
		z-index: 1;
	}

	.create {
		margin-bottom: 100px;
	}
}

.blur-background {
	background-color: rgba(0, 0, 0, 0.3);
	backdrop-filter: blur(4px);
	/* Efek blur */
	-webkit-backdrop-filter: blur(10px);
	/* Efek blur untuk browser berbasis WebKit */
	border: 4px solid white;
	/* Garis putih pada setiap sisi */
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	/* Shadow */
	/* border-radius: 15px; */
	border-top-left-radius: 170px;
	border-top-right-radius: 170px;
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
	padding: 5px;
}

.blur-background2 {
	background-color: rgba(255, 255, 255, 0.3);
	backdrop-filter: blur(3px);
	/* Efek blur */
	-webkit-backdrop-filter: blur(3px);
	/* Efek blur untuk browser berbasis WebKit */
	/* border: 1px solid white; Garis putih pada setiap sisi */
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
	/* Shadow */
	border-radius: 20px;
	padding: 10px;
}

.content {
	position: relative;
	z-index: 2;
	color: white;
	/* Warna teks putih */
}

.square-image {
	width: 150px;
	/* Atur lebar kotak */
	height: 150px;
	/* Atur tinggi kotak */
	object-fit: cover;
	/* Memastikan gambar terisi penuh kotak tanpa deformasi */
	border-radius: 30px;
}

.line-text-container {
	display: flex;
	align-items: center;
	text-align: center;
}

.line-text-container::before,
.line-text-container::after {
	content: "";
	flex: 1;
	border-bottom: 1px solid #fff;
	margin: 0 10px;
}

.line-text-container h1 {
	margin: 0;
	font-family: 'Lato', cursive;
	font-size: 20px;
}

/* GALLERY */
.gallery {
	background: #EEE;
}

.gallery-cell {
	width: 66%;
	height: 200px;
	margin-right: 10px;
	background: #8C8;
	counter-increment: gallery-cell;
}

/* cell number */
.gallery-cell:before {
	display: block;
	text-align: center;
	content: counter(gallery-cell);
	line-height: 200px;
	font-size: 80px;
	color: white;
}

.kartu {
	width: 100%;
	height: 400px;
	/* background-color: #fff; */
	border: 1px solid #ccc;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.kartutamu {
	width: 100%;
	/* height: 400px; */
	/* background-color: #fff; */
	border: 1px solid #ccc;
	border-radius: 8px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.kartu-header {
	/* background-color: #f7f7f7; */
	padding: 16px;
	/* border-bottom: 1px solid #ccc; */
}

.kartu-konten {
	padding: 16px;
	overflow-y: auto;
	flex: 1;
}

.kartu-konten p {
	margin: 0 0 8px;
}

@font-face {
	font-family: 'Pretty-Dahlia';
	src: url('../../assets/fonts/Pretty-Dahlia.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Hey-Jelitta-Demo';
	src: url('../../assets/fonts/Hey-Jelitta-Demo.otf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'BritishBlockFlourish';
	src: url('../../assets/fonts/BritishBlockFlourish.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'FLOWER';
	src: url('../../assets/fonts/FLOWER.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Flowering';
	src: url('../../assets/fonts/Flowering.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'NostalgicWhispers-Regular';
	src: url('../../assets/fonts/NostalgicWhispers-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'adelia';
	src: url('../../assets/fonts/adelia.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

.btn-copy {
	background-color: antiquewhite;
	color: black;
	transition: background-color 0.3s, color 0.3s;
}

.btn-copy.active {
	background-color: aquamarine;
	color: black;
}

#nama {
	border: 2px solid white;
	/* Warna border putih */
	background-color: transparent;
	/* Latar belakang transparan */
	color: white;
	/* Warna teks putih (opsional, sesuaikan jika diperlukan) */
}

#confirm {
	border: 2px solid white;
	/* Warna border putih */
	background-color: transparent;
	/* Latar belakang transparan */
	color: white;
	/* Warna teks putih */
}

#pesan {
	border: 2px solid white;
	/* Warna border putih */
	background-color: transparent;
	/* Latar belakang transparan */
	color: white;
	/* Warna teks putih */
}

#confirm option {
	color: black;
	/* Warna teks opsi, sesuaikan jika ingin terlihat di latar belakang default */
}

.section-gradient {
	height: 100px;
	/* Tinggi gradasi, sesuaikan sesuai keinginan */
	background: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 100%);

}

.section-gradient2 {
	height: 100px;
	/* Tinggi gradasi, sesuaikan sesuai keinginan */
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgb(0, 0, 0));
	bottom: 100px;
}

@import url("https://fonts.googleapis.com/css2?family=Ubuntu+Mono&display=swap");

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.containerr {
	width: 100%;
	max-width: 100%;
	display: flex;
	gap: 10px;
	overflow-x: auto;
	overflow-y: hidden;
	height: 500px;
	cursor: grab;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
	touch-action: pan-y;
	position: relative;
	scroll-snap-type: x mandatory;
}

.containerr>div {
	flex: 0 0 120px;
	min-width: 90%;
	border-radius: 0.5rem;
	background-size: cover;
	background-position: center;
	transition: transform 0.5s ease;
	user-select: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	scroll-snap-align: start;
}

.containerr>div .content {
	font-size: 1.5rem;
	color: #fff;
	display: flex;
	align-items: center;
	padding: 15px;
	opacity: 0;
	flex-direction: column;
	height: 100%;
	justify-content: flex-end;
	background: linear-gradient(0deg, rgba(2, 2, 46, 0.7) 0%, rgba(255, 255, 255, 0) 100%);
	visibility: hidden;
}

.containerr>div:hover .content {
	opacity: 1;
	visibility: visible;
}

.containerr::-webkit-scrollbar {
	display: none;
}

.containerr.active {
	cursor: grabbing;
}

.containerr.active>div {
	pointer-events: none;
}
.dropdown-container {
						position: relative;
						display: inline-block;
						width: 100%;
					}

					.dropdown-icon-container {
						position: absolute;
						top: 50%;
						right: 10px;
						/* Mengatur posisi ikon di sebelah kanan */
						transform: translateY(-50%);
						/* Pusatkan ikon secara vertikal */
						background-color: transparent;
						/* Tidak ada warna latar belakang pada ikon */
						padding: 0;
						/* Tidak ada padding agar sesuai dengan ukuran dropdown */
						z-index: 1;
						/* Pastikan lapisan berada di atas */
					}

					.dropdown-icon {
						color: black;
						/* Warna ikon */
						z-index: 2;
						/* Pastikan ikon di atas lapisan */
						pointer-events: none;
						/* Agar ikon tidak mengganggu interaksi dropdown */
					}

					/* Memastikan dropdown dan ikon tidak memiliki margin/padding */
					.form-control {
						padding-right: 30px;
						/* Memberikan ruang untuk ikon di sebelah kanan */
					}
					/* Animasi fade in dari atas ke bawah */
		@keyframes fadeInDown {
			from {
				opacity: 0;
				transform: translateY(-20px);
			}

			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		/* Animasi fade in dari bawah ke atas */
		@keyframes fadeInUp {
			from {
				opacity: 0;
				transform: translateY(20px);
			}

			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		/* Styling umum untuk animasi */
		.muncul-animasi {
			opacity: 0;
			transition: opacity 0.5s, transform 0.5s;
		}

		.muncul-animasi.visible {
			animation-duration: 1s;
			animation-fill-mode: forwards;
			opacity: 1;
		}

		.muncul-animasi:first-child.visible {
			animation-name: fadeInDown;
		}

	.muncul-animasi:last-child.visible {
		animation-name: fadeInUp;
	}

	/* Gallery mobile responsiveness */
	@media (max-width: 768px) {
		.containerr {
			height: 300px;
			gap: 5px;
			scroll-snap-type: x mandatory;
			-webkit-overflow-scrolling: touch;
		}

		.containerr>div {
			flex: 0 0 100px;
			min-width: 90%;
			scroll-snap-align: start;
		}

		.containerr>div .content {
			font-size: 1rem;
			padding: 10px;
		}
	}

	@media (max-width: 480px) {
		.containerr {
			height: 350px;
			gap: 3px;
			scroll-snap-type: x mandatory;
			-webkit-overflow-scrolling: touch;
		}

		.containerr>div {
			flex: 0 0 80px;
			min-width: 80%;
			scroll-snap-align: start;
		}

		.containerr>div .content {
			font-size: 0.8rem;
			padding: 8px;
		}
	}
	.croller-container {
		position: relative;
		height: 300px;
		width: 100%;
		max-width: 600px;
		overflow: hidden;
	}
	
	.croller {
		height: 100%;
		overflow-y: auto;
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE/Edge */
		padding: 10px;
	}
	
	/* Sembunyikan scrollbar di Chrome, Safari, Edge */
	.croller::-webkit-scrollbar {
		display: none;
	}
	
	/* Gradasi atas dan bawah */
	.croller-container::before,
	.croller-container::after {
		content: "";
		position: absolute;
		left: 0;
		width: 100%;
		height: 30px;
		pointer-events: none;
		z-index: 2;
	}
	
	.croller-container::before {
		top: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	}
	
	.croller-container::after {
		bottom: 0;
		background: linear-gradient(to top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	}
	/* Gallery */
.galeuy {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.galeuy img {
	width: calc(50% - 2.5px);
	height: auto;
	object-fit: cover;
	border-radius: 5px;
	cursor: pointer;
	transition: transform 0.2s ease-in-out;
}

.galeuy img:hover {
	transform: scale(1.05);
}
/* Modal */
.modil {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	justify-content: center;
	align-items: center;
}

.modil-content {
	max-width: 90%;
	max-height: 90%;
	border-radius: 10px;
}

.modil img {
	width: 100%;
	height: auto;
	border-radius: 10px;
}

.nutup {
	position: absolute;
	top: 20px;
	right: 30px;
	color: white;
	font-size: 30px;
	font-weight: bold;
	cursor: pointer;
}

.nutup:hover {
	color: red;
}