.hlha {
	color: inherit;
	font-family: var(--hlha-body-font, inherit) !important;
	line-height: 1.65;
}

.hlha,
.hlha * {
	font-family: var(--hlha-body-font, inherit) !important;
}

.hlha h1 {
	font-family: var(--hlha-h1-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha h2 {
	font-family: var(--hlha-h2-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha h3 {
	font-family: var(--hlha-h3-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha h4 {
	font-family: var(--hlha-h4-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha h5 {
	font-family: var(--hlha-h5-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha h6 {
	font-family: var(--hlha-h6-font, var(--hlha-heading-font, var(--hlha-body-font, inherit))) !important;
}

.hlha button {
	font-family: var(--hlha-button-font, var(--hlha-body-font, inherit)) !important;
}

.hlha *,
.hlha *::before,
.hlha *::after {
	box-sizing: border-box;
}

.hlha h2,
.hlha h3,
.hlha h4,
.hlha p,
.hlha label,
.hlha input,
.hlha button,
.hlha summary {
	color: inherit;
}

.hlha h2 {
	margin: 0 0 .65em;
	font-size: 1.7em;
}

.hlha h3 {
	margin: 0 0 .45em;
	font-size: 1.3em;
}

.hlha h4 {
	margin: 0;
	font-size: 1.08em;
}

.hlha__intro {
	margin-bottom: 1.4em;
}

.hlha__intro p:last-child {
	margin-bottom: 0;
}

.hlha__eyebrow,
.hlha__caption {
	margin: 0 0 .35em;
	font-size: .92em;
}

.hlha__form,
.hlha__summary,
.hlha__root-forecast,
.hlha__pair-card {
	min-width: 0;
	padding: clamp(1em, 2.2vw, 1.5em);
	border: 1px solid var(--ast-border-color, rgba(80, 60, 40, .24));
	border-radius: 12px;
	background: var(--ast-global-color-5, var(--wp--preset--color--base, transparent));
}

.hlha__input-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: .8em;
}

.hlha__field {
	min-width: 0;
}

.hlha__field label {
	display: block;
	margin-bottom: .4em;
	font-weight: 600;
}

.hlha__field input {
	display: block;
	width: 100%;
	min-width: 0;
	min-height: 48px;
	padding: .65em .8em;
	border: 1px solid var(--ast-border-color, #8c8278);
	border-radius: 6px;
	background: var(--ast-global-color-5, var(--wp--preset--color--base, transparent));
	font-size: 1em;
}

.hlha__field input:focus {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

.hlha__button {
	min-height: 48px;
	padding: .65em 1.15em;
	border: 1px solid var(--ast-global-color-0, currentColor);
	border-radius: 7px;
	background: var(--ast-global-color-0, var(--wp--preset--color--primary, #8c5a1c));
	color: var(--ast-global-color-5, var(--wp--preset--color--base, #fff)) !important;
	font-size: 1em;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none !important;
	cursor: pointer;
}

.hlha__button:hover,
.hlha__button:focus {
	filter: brightness(.92);
	text-decoration: none !important;
}

.hlha__help,
.hlha__privacy,
.hlha__note,
.hlha__section-intro {
	margin: .85em 0 0;
	font-size: .92em;
}

.hlha__report {
	margin-top: 2em;
}

.hlha__summary {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1em;
}

.hlha__summary > div {
	min-width: 0;
}

.hlha__summary p {
	margin: 0;
}

.hlha__property-number {
	font-size: 1.55em;
	font-weight: 700;
	letter-spacing: .04em;
	word-break: break-word;
}

.hlha__sequence {
	font-size: 1.2em;
	font-weight: 600;
	word-break: break-all;
}

.hlha__total {
	font-size: 1.7em;
	font-weight: 700;
}

.hlha__root {
	font-size: 2em;
	font-weight: 700;
	line-height: 1;
}

.hlha__root-forecast {
	margin-top: 1.25em;
}

.hlha__root-forecast h3 {
	margin: 0;
}

.hlha__root-forecast p {
	margin-bottom: 0;
}

.hlha__details {
	margin-top: 1em;
}

.hlha__details summary {
	font-weight: 600;
	cursor: pointer;
}

.hlha__math,
.hlha__prediction {
	margin: .65em 0 0;
	white-space: pre-line;
	word-break: break-word;
}

.hlha__pairs {
	margin-top: 1.7em;
}

.hlha__pair-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: .9em;
	margin-top: 1em;
}

.hlha__pair-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: .75em;
}

.hlha__rating {
	flex: 0 0 auto;
	padding: .2em .65em;
	border: 1px solid currentColor;
	border-radius: 999px;
	font-size: .88em;
}

.hlha__pair-meaning {
	margin: .75em 0 0;
}

.hlha__message {
	margin: 1em 0;
	padding: .8em 1em;
	border-inline-start: 3px solid currentColor;
}

.hlha__pair-card--good {
	border-color: #3d8b5c;
}

.hlha__pair-card--medium {
	border-color: #c7962f;
}

.hlha__pair-card--bad {
	border-color: #b65e52;
}

@media (max-width: 700px) {
	.hlha__summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hlha__pair-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 480px) {
	.hlha__input-row {
		grid-template-columns: minmax(0, 1fr);
	}

	.hlha__button {
		width: 100%;
	}
}
