.bdvlc {
	--bdvlc-gap: 8px;
	--bdvlc-height: 128px;
	--bdvlc-radius: 22px;
	--bdvlc-object-fit: cover;
	position: relative;
	width: 100%;
	max-width: 100%;
}

.bdvlc--full-bleed {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.bdvlc__viewport {
	position: relative;
	width: 100%;
	overflow: hidden;
	contain: layout paint;
}

.bdvlc[data-draggable="1"] .bdvlc__viewport {
	cursor: grab;
	touch-action: pan-y;
}

.bdvlc[data-draggable="1"].bdvlc--dragging .bdvlc__viewport {
	cursor: grabbing;
}

.bdvlc__track {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	gap: var(--bdvlc-gap);
	width: max-content;
	min-width: 100%;
	transform: translate3d(0, 0, 0);
	will-change: transform;
	backface-visibility: hidden;
}

.bdvlc__item {
	--bdvlc-position-x: 50%;
	--bdvlc-position-y: 50%;
	flex: 0 0 var(--bdvlc-item-width, 260px);
	width: var(--bdvlc-item-width, 260px);
	height: var(--bdvlc-height);
	min-width: 0;
	overflow: hidden;
	border-radius: var(--bdvlc-radius);
	position: relative;
	transform: translateZ(0);
}

.bdvlc__link,
.bdvlc__image {
	display: block;
	width: 100%;
	height: 100%;
}

.bdvlc__link {
	text-decoration: none;
}

.bdvlc__lightbox {
	cursor: zoom-in;
}

.bdvlc[data-draggable="1"] .bdvlc__lightbox,
.bdvlc[data-draggable="1"] .bdvlc__link {
	cursor: inherit;
}

.bdvlc__image {
	object-fit: var(--bdvlc-object-fit, cover) !important;
	object-position: var(--bdvlc-position-x, 50%) var(--bdvlc-position-y, 50%) !important;
	user-select: none;
	-webkit-user-select: none;
	-webkit-user-drag: none;
	pointer-events: none;
}

.bdvlc-empty {
	padding: 18px;
	border: 1px dashed currentColor;
	border-radius: 8px;
	font-size: 13px;
	opacity: .7;
}

@media (prefers-reduced-motion: reduce) {
	.bdvlc[data-reduced-motion="1"] .bdvlc__track {
		will-change: auto;
	}
}
