/*
 * Functional-only styles. The landing design layer owns the visual theme;
 * everything here is deliberately unopinionated.
 */

.aio-geo-form__field {
	margin-bottom: 1rem;
}

.aio-geo-form__label {
	display: block;
	margin-bottom: 0.35rem;
}

.aio-geo-form__input,
.aio-geo-form__textarea {
	display: block;
	width: 100%;
	box-sizing: border-box;
}

.aio-geo-form__textarea {
	min-height: 9rem;
	resize: vertical;
}

.aio-geo-form__hint,
.aio-geo-form__counter {
	margin: 0.35rem 0 0;
	font-size: 0.85em;
}

.aio-geo-form__counter[data-over-limit="1"] {
	color: #b91c1c;
}

.aio-geo-form__error:empty,
.aio-geo-form__message:empty {
	display: none;
}

.aio-geo-form__error {
	display: block;
	margin-top: 0.3rem;
	font-size: 0.85em;
	color: #b91c1c;
}

.aio-geo-form__message[data-type="error"] {
	color: #b91c1c;
}

.aio-geo-form__consent {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
}

.aio-geo-form__submit[disabled] {
	opacity: 0.6;
	cursor: progress;
}

.aio-geo-countdown__expired {
	display: none;
}

.aio-geo-countdown--expired .aio-geo-countdown__timer {
	display: none;
}

.aio-geo-countdown--expired .aio-geo-countdown__expired {
	display: inline;
}

.aio-geo-countdown--unset {
	display: none;
}

.aio-geo-countdown__part + .aio-geo-countdown__part::before {
	content: ":";
	margin: 0 0.25em;
}
