@font-face {
    font-family: 'Galmine';
    src: url('fonts/GalmineRegular.eot');
    src: url('fonts/GalmineRegular.eot?#iefix') format('embedded-opentype'),
        url('fonts/GalmineRegular.woff2') format('woff2'),
        url('fonts/GalmineRegular.woff') format('woff'),
        url('fonts/GalmineRegular.ttf') format('truetype'),
        url('fonts/GalmineRegular.svg#GalmineRegular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Futura Cyrillic Demi';
    src: url('fonts/FuturaCyrillic-Demi.eot');
    src: url('fonts/FuturaCyrillic-Demi.eot?#iefix') format('embedded-opentype'),
        url('fonts/FuturaCyrillic-Demi.woff2') format('woff2'),
        url('fonts/FuturaCyrillic-Demi.woff') format('woff'),
        url('fonts/FuturaCyrillic-Demi.ttf') format('truetype'),
        url('fonts/FuturaCyrillic-Demi.svg#FuturaCyrillic-Demi') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Futura Cyrillic';
    src: url('fonts/FuturaCyrillicMedium.eot');
    src: url('fonts/FuturaCyrillicMedium.eot?#iefix') format('embedded-opentype'),
        url('fonts/FuturaCyrillicMedium.woff2') format('woff2'),
        url('fonts/FuturaCyrillicMedium.woff') format('woff'),
        url('fonts/FuturaCyrillicMedium.ttf') format('truetype'),
        url('FuturaCyrillicMedium.svg#FuturaCyrillicMedium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face{
	font-family: 'FontAwesome';
	src: url('fonts/fontawesome-webfont.eot?v=4.7.0');
	src: url('fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),
		url('fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),
		url('fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),
		url('fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),
		url('fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style:normal;
}

html, body{
	padding: 0px;
	margin: 0px;
	width: 100%;
	height: 100%;
	background-color: #0b1c2d !important;
}
.body-landing{
	overflow: hidden;
}

button,
input,
textarea{
	outline: none;
}

.err{
	position: relative;
	display: block;
	color: red;
	display: none;
	font-family: 'Galmine';
	font-size: 14px;
	margin-top:5px;
}

.swal-sm {
	width: 350px !important;
	font-size: 14px;
}

.swal-sm .swal2-popup {
  padding-top: 2.5em !important;
}

.swal-sm .swal2-title {
  	font-size: 16px !important;
}

.swal-sm .swal2-html-container {
  	font-size: 14px !important;
}

.swal-sm .swal2-confirm,
.swal-sm .swal2-cancel {
	padding: 4px 12px !important;
	font-size: 14px !important;
	border-radius: 4px !important;
}

/* Ukuran ikon swal2 (success, error, warning, dll) */
.swal-sm .swal2-icon {
	width: 50px !important;
	height: 50px !important;
	margin-top: 30px !important;
	margin-bottom: 10px !important;
}

/* Success icon (centang) penyesuaian */
.swal-sm .swal2-icon.swal2-success .swal2-success-line-tip,
.swal-sm .swal2-icon.swal2-success .swal2-success-line-long {
	height: 3px !important;
	background-color: #4ba319;
}

.swal-sm .swal2-icon.swal2-success .swal2-success-line-tip {
	top: 26px !important;
	left: 8px !important;
	width: 18px !important;
	transform: rotate(45deg);
}

.swal-sm .swal2-icon.swal2-success .swal2-success-line-long {
	top: 22px !important;
	right: 3px !important;
	width: 30px !important;
	transform: rotate(-45deg);
}

/* Lingkaran icon success */
.swal-sm .swal2-icon.swal2-success .swal2-success-ring {
	width: 50px !important;
	height: 50px !important;
	border-width: 4px !important;
}

/* Error icon (X) penyesuaian */
.swal-sm .swal2-icon.swal2-error [class^='swal2-x-mark-line'] {
	top: 23px !important;
	width: 30px !important;
	height: 3px !important;
	background-color: #e93c3c;
}

.swal-sm .swal2-icon.swal2-error .swal2-x-mark-line-left {
	left: 10px !important;
	transform: rotate(45deg);
}

.swal-sm .swal2-icon.swal2-error .swal2-x-mark-line-right {
	right: 10px !important;
	transform: rotate(-45deg);
}

.info-produk{
	color: #0004ff;
	cursor: pointer;
	text-decoration: underline;
}

	.text-error,
	.text-error:focus{
		border: solid 1px red;
	}
	.frame-text-input{
		position: relative;
		display: block;
	}
	.text-success{
		position: relative;
		display: block;
		border: solid 1px green !important;
		padding-right: 50px;
	}
		.icon-success{
			position: absolute;
			display: none;
			font-size: 24px;
			z-index: 9;
			right: 10px;
			top: 5px;
			color: green;
		}

.background{
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	background-color: #e6e7e8;
	/*background-image: url('../../images/awan-kiri.png'),  url('../../images/awan-kiri.png'), url('../../images/awan-kanan.png'), url('../../images/awan-kanan.png'), url('../../images/grafis-kiri.png'), url('../../images/grafis-kanan.png'), url('../../images/bottom-kiri.png'), url('../../images/bottom-kanan.png');
	background-size: 20%, 20%, 20%, 20%, 18.5%, 20%, 40%, 40%;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
	background-position: top left 20px, top 180px left, top 20px right 30px, top 200px right, bottom left 25%, bottom right 25%, bottom left, bottom right;*/
}
.bg-login{
	min-height: 100%;
}
.bg-home{
	min-height: 100%;
	background-position: top left 20px, top 180px left, top 20px right 30px, top 200px right, bottom 6% left 25%, bottom 6% right 25%, bottom 7% left, bottom 7% right;
}
.bg-feedback{
	background-position: top left 20px, top 180px left, top 20px right 30px, top 200px right, bottom 2% left 25%, bottom 2% right 25%, bottom 3% left, bottom 3% right;
}
	
	.body{
		position: relative;
		display: block;
		width: 100%;
		max-width: 500px;
		min-height: 100vh;
		left: 50%;
		transform: translateX(-50%);
		font-family: 'Futura Cyrillic';
		font-size: 20px;
		background-image: url('../../images/bg.jpg');
		background-position: top left;
		background-size: 100% 100%;
		color: #fff;
	}
		.header{
			position: relative;
			display: block;
			width: 100%;
			left: 50%;
			transform: translateX(-50%);
			text-align: center;
		}
		.header-next{
			position: relative;
			display: block;
			width: 100%;
			left: 50%;
			transform: translateX(-50%);
			text-align: center;
		}
			.header img{
				width: 100%;
			}
			.header-next img{
				width: 70%;
				margin-top: 30px;
			}
			.box-menu{
				position: relative;
				display: block;
				width: 100%;
				top: 0px;
				padding: 20px 30px;
				padding-bottom: 1vh;
			}
				.logo{
					width: 30%;
				}
				.btn-logout{
					position: absolute;
					top: 5px;
					right: 10px;
					padding: 0px;
					border: none;
					background-color: transparent;
				}
		
		.content{
			position: relative;
			display: block;
			padding: 30px;
			padding-bottom: 5vh;
		}
			.frame-login{
				position: relative;
				display: block;
				width: 100%;
				padding: 10%;
			}
			.box-login{
				position: relative;
				display: block;
				text-align: left;
				padding-top: 8vh;
				padding: 10px;
			}
				.judul{
					position: relative;
					display: block;
					text-align: center;
					color: #2e6fb7;
					font-size: 22px;
					line-height: 26px;
					font-family: 'Inter Bold';
					margin-bottom: 50px !important;
				}
			.box-register{
				position: relative;
				display: block;
				padding: 10px;
			}
				.form-anak{
					display: none;
				}
				.logo-user{
					font-size: 15vh;
					margin-bottom: 30px;
				}
				.judul-login{
					position: relative;
					display: block;
					width: 100%;
					color: #c3c3c3;
					font-size: 18px;
					margin-bottom: 10px;
				}
				.judul-register{
					position: relative;
					display: block;
					width: 100%;
					font-family: 'Inter Regular';
					font-weight: normal;
					font-size: 18px;
					margin-bottom: 10px;
				}
				.btn-daftar{
					background-image: url('../../images/daftar-phr.png');
					background-size: 100% 100%;
					background-color: transparent;
					border: none;
					width: 300px;
					height: 50px;
				}
				.btn-login{
					background-image: url('../../images/lanjut.png');
					background-size: 100% 100%;
					background-color: transparent;
					border: none;
					width: 150px;
					height: 50px;
				}
					.btn-next{
						background-image: url('../../images/lanjut.png');
						background-size: 100% 100%;
						background-color: transparent;
						border: none;
						width: 150px;
						height: 50px;
					}
					.btn-agree{
						background-image: url('../../images/setuju-phr.png');
						background-size: 100% 100%;
						background-color: transparent;
						border: none;
						width: 150px;
						height: 50px;
					}
					.btn-disagree{
						background-image: url('../../images/tidak-setuju-phr.png');
						background-size: 100% 100%;
						background-color: transparent;
						border: none;
						width: 150px;
						height: 50px;
					}
			.content-menu{
				position: relative;
				display: block;
				width: 100%;
				left: 50%;
				transform: translateX(-50%);
			}
			.box-content{
				position: relative;
				display: block;
				width: 100%;
			}
				.box-nama{
					position: relative;
					display: block;
					width: 100%;
					font-size: 18px;
					font-family: 'Futura Cyrillic';
					text-align: left;
					margin-bottom: 20px;
				}

				.box-gambar{
					position: relative;
					display: block;
					width: 100%;
					margin-bottom: 10px;
				}
					.btn-kirim{
						position: absolute;
						background-color: #4450bd;
						color: #fff;
						font-size: 12px;
						font-family: 'Futura Cyrillic';
						bottom: 12%;
						left: 45%;
						border: solid 1px #dbd5d5;
						padding: 5px 30px;
						padding-bottom: 7px;
						border-radius: 7px;
					}
				.box-menu{
					max-width: 450px;
					left: 50%;
					transform: translateX(-50%);
					text-align: center;
					border-radius: 7px;
					margin-bottom: 20px;
				}
					.menu-qr{
						position: relative;
						display: inline-block;
						width: 100%;
						margin-bottom: 50px;
						cursor: pointer;
					}
					.menu-img{
						position: relative;
						display: inline-block;
						width: 47%;
						margin-bottom: 10px;
						cursor: pointer;
					}
						.menu-img-left{
							margin-right: 10px;
						}
				
				.judul-content{
					position: relative;
					display: block;
					width: 100%;
					text-align: center;
					font-family: 'Futura Cyrillic Demi';
					font-size: 20px;
					margin-bottom: 20px;
				}
					.box-qr{
						position: relative;
						display: block;
						width: 100%;
						text-align: center !important;
						padding: 10px 30px;
					}
						.box-qr img{
							width: 100%;
						}
					.box-kupon{
						position: relative;
						display: block;
						width: 100%;
						text-align: center;
						padding: 10px 0px;
					}
						.voucher-img{
							width: 100%;
						}
						.box-voucher{
							position: relative;
							display: none;
							width: 100%;
							padding: 10px;
						}
							.box-voucher img{
								width: 100%;
							}
					.seat{
						font-family: 'Galmine';
						font-size: 48px;
						color: #FFC300;
						margin-top: 20px;
						margin-bottom: 50px;
					}
				.box-foto{
					position: relative;
					display: block;
					width: 100%;
					text-align: center;
					padding: 10px;
					background-color: #eee;
					border-radius: 15px;
				}
					.box-foto img{
						width: 100%;
						border-radius: 10px;
					}
					.text-wish{
						font-family: 'Futura Cyrillic Demi';
						font-size: 18px;
						color: #2b2c6c;
						text-align: left;
					}
		
		.content-feedback{
			position: relative;
			display: block;
			width: 100%;
			max-width: 600px;
			left: 50%;
			transform: translateX(-50%);
		}
			.box-feedback{
				position: relative;
				display: block;
				width: 100%;
				text-align: left;
				padding: 10px;
				padding-bottom: 10vh;
			}
				
				
		.footer{
			position: fixed;
			bottom: 0px;
			left: 0px;
			width: 100%;
			height: 50px;
			background-image: url('../../images/bg-footer.png');
			background-size: auto 100%;
			background-repeat: repeat-x;
			text-align: center;
			padding-top: 10px;
		}
			.btn-footer{
				position: relative;
				display: inline-block;
				width: 10%;;
				font-size: 22px;
				color: #fff;
				cursor: pointer;
				margin: 0px 5px;
				text-align: center;
			}
				.btn-footer span{
					font-size: 12px;
					line-height: 12px;
				}

			.btn-back{
				font-family: 'Inter Bold';
				font-size: 18px;
				padding: 5px 30px;
				color: #fff;
				border: none;
				border-radius: 10px;
				background-color: #FFCD51;
				background: linear-gradient(0deg,rgba(255, 205, 81, 1) 0%, rgba(253, 84, 180, 1) 100%);
			}

			
.modal-xl-fullscreen{
	width: 100%;
	max-width: 1000px; 
	left: 50%;
	transform: translateX(-50%) !important;
	padding: 0px;
	margin: 0px;
}
	.content-fullscreen{
		height: 100vh;
	}
		.body-scroll{
			height: calc(100vh - 170px);
			overflow-y: auto;
		}
	
	.info-m-scan{
		position: relative;
		display: block;
		width: 100%;
		text-align: center;
		padding: 5% 0px;
	}
	
	.box-m-scan{
		position: relative;
		display: block;
		width: 80%;
		left: 50%;
		transform: translateX(-50%);
	}
		.m-result{
			position: relative;
			display: block;
			width: 80%;
			left: 50%;
			transform: translateX(-50%);
			padding-top: 20px;
			text-align: center;
		}
			.box-sorry{
				position: relative;
				display: block;
				width: 100%;
				padding-top: 10vh;
				font-family: 'Inter Medium';
				font-size: 20px;
			}
				.judul-sorry{
					font-family: 'Inter Bold';
					font-size: 24px;
					margin-bottom: 10px;
				}
			.box-transaksi{
				position: relative;
				display: block;
				width: 100%;
			}
	.box-button{
		position: relative;
		display: none;
		width: 100%;
		text-align: center;
		margin-top: 10px;
		padding-bottom: 50px;
	}
	
		.box-device{
			background-color: orange;
			text-align: center;
			padding: 10px 0px;
			border-radius: 10px;
		}
		.nama-device{
			position: absolute;
			width: 100%;
			padding: 5px;
			text-align: right;
			font-size: 12px;
			z-index: 99;
		}
			.nama-peserta{
				font-size: 20px;
			}
			.box-kategori{
				position: relative;
				display: block;
				padding: 10px;
				color: #fff;
				font-family: 'Inter Bold';
			}
	
	.body-display{
		position: relative;
		display: block;
		width: 98%;
		height: 98%;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		text-align: center;
	}
		.box-d-device{
			position: relative;
			display: inline-block;
			width: 30%;
			height: 15vh;
			margin: 1%;
			font-size: 2vw;
			background-color: orange;
			text-align: center;
			padding: 10px 0px;
			border-radius: 10px;
			cursor: pointer;
		}
		.d-result{
			position: relative;
			display: block;
			width: 100%;
			height: 95%;
			margin-top: 10px;
			text-align: center;
		}
	
	.box-pengunjung-display{
		position: relative;
		display: inline-block;
		width: 31%;
		height: 42vh;
		margin: 1%;
		padding: 2vw;
		border-radius: 20px;
	}
		.selamat-datang-display{
			margin-top: 50px;
			font-size: 36px;
		}
		.nama-display{
			font-size: 42px;
			font-family: 'Inter Bold';
		}
		.cabang-display{
			font-size: 30px;
			margin-bottom: 80px;
		}
		.tanggal-display{
			font-size: 20px;
		}

