.czf-form { max-width: 560px; margin: 0 auto; font-family: inherit; }
.czf-form .czf-row { margin-bottom: 14px; display: flex; flex-direction: column; }
.czf-form .czf-row label { font-size: 13px; margin-bottom: 4px; color: #333; }
.czf-form .czf-row input[type="text"],
.czf-form .czf-row input[type="email"],
.czf-form .czf-row input[type="tel"],
.czf-form .czf-row input[type="number"],
.czf-form .czf-row textarea {
	width: 100%; padding: 8px 10px; border: 1px solid #c3c4c7; border-radius: 4px;
	font: inherit; box-sizing: border-box;
}
.czf-form .czf-row textarea { resize: vertical; min-height: 90px; }
.czf-form .czf-row-checkbox label { flex-direction: row; align-items: center; gap: 8px; }
.czf-form .czf-req { color: #b32d2e; margin-left: 2px; }

.czf-form .czf-has-error input,
.czf-form .czf-has-error textarea { border-color: #b32d2e; }
.czf-form .czf-field-error { color: #b32d2e; font-size: 12px; margin-top: 4px; }

.czf-form .czf-submit-row { margin-top: 8px; }
.czf-form .czf-submit {
	background: #2271b1; color: #fff; border: 0; padding: 10px 18px;
	border-radius: 4px; cursor: pointer; font: inherit;
}
.czf-form .czf-submit:hover { background: #135e96; }
.czf-form .czf-submit[disabled] { opacity: 0.6; cursor: wait; }

.czf-form .czf-message { margin-top: 10px; font-size: 13px; }
.czf-form .czf-msg-success { color: #008a20; }
.czf-form .czf-msg-error { color: #b32d2e; }
