/**
 * Media Fields for Contact Form 7 – 3D model field.
 */
.bmfcf7-player-wrap.bmfcf7-model {
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 1em;
}

.bmfcf7-player-wrap.bmfcf7-align-center {
	margin-left: auto;
	margin-right: auto;
}

.bmfcf7-player-wrap.bmfcf7-align-right {
	margin-left: auto;
	margin-right: 0;
}

.bmfcf7-model-viewer {
	display: block;
	width: 100%;
	height: 400px;
	border-radius: 4px;
	background-color: #f3f4f6;
	--poster-color: transparent;
}

.bmfcf7-ar-button {
	position: absolute;
	bottom: 16px;
	right: 16px;
	padding: 8px 14px;
	border: 0;
	border-radius: 999px;
	background: #fff;
	color: #1d2327;
	font: 600 13px/1.3 inherit;
	box-shadow: 0 1px 4px rgba( 0, 0, 0, 0.25 );
	cursor: pointer;
}

.bmfcf7-hotspot {
	display: block;
	width: 20px;
	height: 20px;
	padding: 0;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #1e88e5;
	box-shadow: 0 0 0 2px rgba( 0, 0, 0, 0.2 );
	cursor: pointer;
	transition: opacity 0.2s;
}

.bmfcf7-hotspot:not( [data-visible] ) {
	opacity: 0.35;
	pointer-events: none;
}

.bmfcf7-hotspot__label {
	position: absolute;
	left: 26px;
	top: 50%;
	transform: translateY( -50% );
	padding: 4px 8px;
	border-radius: 4px;
	background: rgba( 0, 0, 0, 0.75 );
	color: #fff;
	font-size: 12px;
	line-height: 1.3;
	white-space: nowrap;
}

.bmfcf7-editor-notice {
	padding: 0.75em 1em;
	border: 1px dashed #c00;
	background: #fff6f6;
	color: #8a1f11;
	font-size: 0.9em;
}
