.bvp-player-wrap {
	position: relative;
	overflow: hidden;
	border-radius: var(--bvp-radius, 12px);
	background: #0b0b0d;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.18);
	max-width: 100%;
}

.bvp-player-wrap.bvp-no-shadow {
	box-shadow: none;
}

.bvp-player-wrap.bvp-responsive {
	width: 100%;
}

.bvp-player-wrap.bvp-responsive::before {
	content: "";
	display: block;
	padding-top: var(--bvp-ratio, 56.25%);
}

.bvp-player-wrap.bvp-responsive iframe,
.bvp-player-wrap.bvp-responsive .bvp-skeleton {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.bvp-player-wrap:not(.bvp-responsive) iframe {
	display: block;
	max-width: 100%;
}

.bvp-player-wrap iframe {
	border: 0;
	display: block;
}

.bvp-skeleton {
	width: 100%;
	background: linear-gradient(110deg, #101012 8%, #1c1c20 18%, #101012 33%);
	background-size: 200% 100%;
	animation: bvp-shimmer 1.6s linear infinite;
}

@keyframes bvp-shimmer {
	to {
		background-position-x: -200%;
	}
}

.bvp-watermark {
	position: absolute;
	right: 10px;
	bottom: 10px;
	padding: 3px 9px;
	border-radius: 999px;
	background: rgba(0, 0, 0, 0.35);
	color: rgba(255, 255, 255, 0.75);
	font-size: 11px;
	line-height: 1.4;
	letter-spacing: 0.02em;
	pointer-events: none;
	user-select: none;
	backdrop-filter: blur(2px);
	z-index: 2;
}

.bvp-player-wrap[data-bvp-no-context="1"] {
	-webkit-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
}

.bvp-notice {
	padding: 14px 18px;
	border-radius: 8px;
	background: #f0f0f1;
	color: #1e1e1e;
	font-size: 14px;
}

.bvp-notice-error {
	background: #fcf0f1;
	color: #8a2424;
	border: 1px solid #e6b3b8;
}
