.sdd-qr-code {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	margin-block: 1.25rem;
	max-width: 100%;
}

.sdd-qr-code--align-left {
	align-items: flex-start;
}

.sdd-qr-code--align-center {
	align-items: center;
}

.sdd-qr-code--align-right {
	align-items: flex-end;
}

.sdd-qr-code__canvas {
	display: inline-flex;
	max-width: 100%;
	overflow: hidden;
}

.sdd-qr-code__canvas canvas,
.sdd-qr-code__canvas svg {
	display: block;
	height: auto !important;
	max-width: 100%;
}

.sdd-qr-code__download {
	appearance: none;
	background: #1d4ed8;
	border: 1px solid #1d4ed8;
	border-radius: 0.375rem;
	color: #ffffff;
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	line-height: 1.2;
	padding: 0.625rem 1rem;
}

.sdd-qr-code__download:hover,
.sdd-qr-code__download:focus-visible {
	background: #1e40af;
	border-color: #1e40af;
}

.sdd-qr-code__download:disabled {
	cursor: wait;
	opacity: 0.65;
}

.sdd-qr-code--error .sdd-qr-code__canvas,
.sdd-qr-code__notice {
	color: #b91c1c;
}

.sdd-qr-block__preview {
	display: flex;
	max-width: 100%;
}

.sdd-qr-block__preview--left {
	justify-content: flex-start;
}

.sdd-qr-block__preview--center {
	justify-content: center;
}

.sdd-qr-block__preview--right {
	justify-content: flex-end;
}

.sdd-qr-block__preview canvas {
	display: block;
	height: auto !important;
	max-width: 100%;
}
