.lvt-qr-free-section {
	background: var(--lvt-mp-section-alt-bg, #f8fafc);
}

.lvt-qr-free-cta-section {
	background: #fff;
	border-top: 1px solid rgba(15, 23, 42, 0.06);
}

.lvt-qr-free-layout {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

.lvt-qr-free-preview__frame {
	position: relative;
	width: min(100%, 360px);
	height: 400px;
	min-height: 400px;
	max-height: 400px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border-radius: 16px;
	border: 1px dashed rgba(15, 23, 42, 0.15);
	padding: 1rem;
	overflow: hidden;
}

.lvt-qr-free-url-input {
	resize: vertical;
	min-height: calc(1.5em + 0.75rem + 2px);
}

.lvt-qr-free-logo-preview__inner {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.5rem 0.75rem;
	border: 1px solid rgba(15, 23, 42, 0.1);
	border-radius: 0.5rem;
	background: #fff;
}

.lvt-qr-free-logo-preview__img {
	width: 72px;
	height: 72px;
	object-fit: contain;
	border-radius: 0.375rem;
	background: #f8fafc;
}

.lvt-qr-free-logo-preview__img--circle {
	border-radius: 50%;
}

.lvt-qr-free-form input[type="color"].form-control-color {
	height: 2.375rem;
	padding: 0.2rem;
}

.lvt-qr-free-preview__img {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.lvt-qr-free-preview__img--composed {
	max-width: 100%;
	max-height: 100%;
}

.lvt-qr-free-preview__logo {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 18%;
	height: 18%;
	transform: translate(-50%, -50%);
	object-fit: contain;
	background: #fff;
	border-radius: 6px;
	padding: 2px;
	box-shadow: 0 0 0 2px #fff;
	pointer-events: none;
}

.lvt-qr-free-preview__placeholder {
	padding: 1rem;
	max-width: 100%;
}

.lvt-qr-free-preview__status {
	min-height: 1.25rem;
}

.lvt-qr-free-logo-row__shape {
	border: 0;
	padding: 0;
}

@media (min-width: 992px) {
	.lvt-qr-free-logo-row {
		display: flex;
		align-items: flex-end;
		gap: 1rem;
	}

	.lvt-qr-free-logo-row__upload {
		flex: 1 1 auto;
		min-width: 0;
	}

	.lvt-qr-free-logo-row__shape {
		flex: 0 0 auto;
		white-space: nowrap;
	}
}

.lvt-qr-free-preview-wrap {
	width: 100%;
}

.lvt-qr-free-caption-style .btn {
	min-width: 2rem;
}

.lvt-qr-free-caption-style .lvt-qr-free-caption-size-label {
	min-width: 3.25rem;
	pointer-events: none;
	opacity: 1;
}

.lvt-qr-free-caption-style .btn.active {
	color: #fff;
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

@media (min-width: 992px) {
	.lvt-qr-free-form .card-body {
		min-height: 520px;
	}

	.lvt-qr-free-preview-wrap {
		position: sticky;
		top: 1rem;
	}
}

@media (max-width: 991.98px) {
	.lvt-qr-free-form {
		margin-bottom: 0.5rem;
	}
}
