/*
 * ArtPred Lab Result Connector 1.5
 *
 * Structural CSS only.
 * Native Elementor widget controls generate scoped per-widget appearance rules.
 * Colors, typography, backgrounds, borders, radii and shadows are intentionally
 * left to Elementor controls / site styles unless a structural default is needed.
 */

.artpred-uitslag__fields {
	--artpred-input-ratio: 7fr;
	--artpred-button-ratio: 3fr;
	display: grid;
	grid-template-columns: minmax(0, var(--artpred-input-ratio)) minmax(0, var(--artpred-button-ratio));
	align-items: stretch;
	gap: 10px;
}

.artpred-uitslag__notify-fields {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 10px;
}

.artpred-uitslag__email-label {
	display: block;
}

.artpred-result__status-heading {
	margin-top: 0;
}

.artpred-uitslag__code-column,
.artpred-uitslag__email-column,
.artpred-uitslag__button-column,
.artpred-uitslag__notify-button-column {
	min-width: 0;
}

.artpred-uitslag .elementor-field,
.artpred-uitslag .elementor-button {
	width: 100%;
	box-sizing: border-box;
	font: inherit;
}

.artpred-uitslag .elementor-button,
.artpred-result__pdf-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.artpred-uitslag__heading {
	margin-top: 0;
}

.artpred-uitslag__label {
	display: block;
}

.artpred-uitslag__helper,
.artpred-uitslag__form-message,
.artpred-uitslag__notify-message {
	margin-top: 0.75em;
}

.artpred-uitslag__output {
	margin-top: 1.5em;
	outline: 0;
}

.artpred-uitslag__notification {
	margin-top: 2em;
}

.artpred-result__table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	margin: 1em 0;
}

.artpred-result__table th,
.artpred-result__table td {
	vertical-align: top;
	border-width: 0;
	border-style: solid;
}

.artpred-result__label {
	text-align: end;
	width: 20%;
}

.artpred-result__value {
	width: 80%;
}

.artpred-result__analysis {
	margin-top: 1.5em;
}

.artpred-result__condition {
	margin-top: 0;
	margin-bottom: 0.5em;
}

.artpred-result__pdf {
	margin-top: 1.5em;
}

.artpred-result__pdf-button {
	width: auto;
}

.artpred-is-busy {
	opacity: 0.7;
}

.artpred-is-busy .elementor-button {
	cursor: wait;
}

@media (max-width: 767px) {
	.artpred-uitslag__fields {
		grid-template-columns: minmax(0, 1fr);
	}

	.artpred-result__table,
	.artpred-result__table tbody,
	.artpred-result__table tr,
	.artpred-result__table th,
	.artpred-result__table td {
		box-sizing: border-box;
	}

	.artpred-result__label,
	.artpred-result__value {
		width: auto;
	}

	.artpred-result__table--meta .artpred-result__label {
		text-align: start;
	}
}
