/* Contact Form 7 uses the site's existing form components and tokens. */
.wp-block-contact-form-7-contact-form-selector .wpcf7-form {
	margin: 0;
}

.wp-block-contact-form-7-contact-form-selector .hidden-fields-container {
	display: none;
}

.wp-block-contact-form-7-contact-form-selector .screen-reader-response,
.wpcf7.no-js .screen-reader-response {
	display: block;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	border: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form p {
	margin: 0;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control-wrap {
	display: block;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control.input,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control.textarea,
.wp-block-contact-form-7-contact-form-selector .wpcf7-form-control.select {
	box-sizing: border-box;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form .field {
	margin-bottom: var(--space-md);
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-list-item {
	display: block;
	margin: 0;
}

.wp-block-contact-form-7-contact-form-selector .consent .wpcf7-list-item label {
	display: flex;
	align-items: flex-start;
	gap: var(--space-xs);
}

.wp-block-contact-form-7-contact-form-selector .consent .wpcf7-list-item input[type="checkbox"] {
	width: 1.5rem;
	height: 1.5rem;
	flex: none;
	margin: 0.15rem 0 0;
	accent-color: var(--color-rasa);
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-not-valid-tip {
	margin-top: var(--space-2xs);
	font-family: var(--font-display);
	font-size: var(--type-caption);
	color: var(--color-error);
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-response-output {
	display: block;
	margin: var(--space-md) 0 0;
	padding: var(--space-sm) var(--space-md);
	border: var(--border-hairline) solid var(--color-info);
	background: var(--color-info-surface);
	color: var(--color-info);
	font-size: var(--type-body-sm);
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-form.init .wpcf7-response-output,
.wp-block-contact-form-7-contact-form-selector .wpcf7-response-output:empty {
	display: none;
}

.wp-block-contact-form-7-contact-form-selector form.sent .wpcf7-response-output {
	border-color: var(--color-success);
	background: var(--color-success-surface);
	color: var(--color-success);
}

.wp-block-contact-form-7-contact-form-selector form.failed .wpcf7-response-output,
.wp-block-contact-form-7-contact-form-selector form.aborted .wpcf7-response-output,
.wp-block-contact-form-7-contact-form-selector form.invalid .wpcf7-response-output,
.wp-block-contact-form-7-contact-form-selector form.unaccepted .wpcf7-response-output {
	border-color: var(--color-error);
	background: var(--color-error-surface);
	color: var(--color-error);
}

.wp-block-contact-form-7-contact-form-selector .wpcf7-spinner {
	margin-inline-start: var(--space-xs);
}
