.bcfb-form { max-width: 640px; }
.bcfb-form .bcfb-field { margin-bottom: 18px; }
.bcfb-form label { display: block; font-weight: 600; margin-bottom: 6px; }
.bcfb-form .bcfb-optional { font-weight: 400; color: #666; font-size: 0.85em; }
.bcfb-form .bcfb-required { color: #C8272D; }
.bcfb-form input[type="text"],
.bcfb-form input[type="email"],
.bcfb-form textarea {
	width: 100%;
	max-width: 480px;
	padding: 10px 12px;
	border: 1px solid #ccc;
	border-radius: 8px;
	box-sizing: border-box;
	font-size: 15px;
}
.bcfb-form .bcfb-rating { display: flex; gap: 14px; }
.bcfb-form .bcfb-rating-option,
.bcfb-form .bcfb-choice-option {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: 400;
	margin-bottom: 6px;
}
.bcfb-form .bcfb-choices { display: block; }
.bcfb-form .bcfb-intro { color: #444; margin-bottom: 20px; }
.bcfb-form .bcfb-submit {
	background: #0060e6;
	color: #fff;
	border: none;
	padding: 12px 28px;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
}
.bcfb-form .bcfb-submit:hover { background: #004db8; }
.bcfb-notice {
	padding: 12px 16px;
	border-radius: 8px;
	background: #eef4ff;
	border: 1px solid #cbe0ff;
	margin-bottom: 16px;
}
.bcfb-notice-success { background: #eafbf0; border-color: #bfe8cf; }
.bcfb-notice-error { background: #fdeeee; border-color: #f3c8c8; }
