/*
 * eenvoud-core/form: structure only. Colours, type, borders and spacing beyond
 * the layout come from the child theme (design D6); these rules use only
 * the contract's presets (design D1).
 */
.ee-form {
	display: grid;
	gap: var(--wp--preset--spacing--40);
}

.ee-form [hidden] {
	display: none;
}

.ee-form-page,
.ee-form-field,
.ee-form-subfield {
	display: grid;
	gap: var(--wp--preset--spacing--20);
}

.ee-form fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}

.ee-form legend {
	padding: 0;
}

.ee-form-input {
	font: inherit;
	max-width: 100%;
	box-sizing: border-box;
}

.ee-form-subfields {
	display: grid;
	gap: var(--wp--preset--spacing--30);
	grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
}

.ee-form-sublabel,
.ee-form-description,
.ee-form-file-rules {
	font-size: var(--wp--preset--font-size--small);
}

.ee-form-error {
	margin: 0;
	font-weight: 600;
}

.ee-form-steps {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30);
	list-style: none;
	margin: 0;
	padding: 0;
}

.ee-form-step[aria-current] {
	font-weight: 600;
}

.ee-form-progress-bar {
	width: 100%;
}

.ee-form-nav {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30);
}

.ee-form-files {
	list-style: none;
	margin: 0;
	padding: 0;
}

.ee-visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
