.hljna {
	color: var(--ast-global-color-2, #34271f);
	font-family: "Noto Sans Thai", sans-serif !important;
	line-height: 1.65;
}

.hljna *,
.hljna *::before,
.hljna *::after {
	box-sizing: border-box;
	font-family: "Noto Sans Thai", sans-serif !important;
}

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

.hljna h2 {
	margin: 0 0 .65em;
	font-size: 1.7em;
	line-height: 1.35;
}

.hljna h3 {
	margin: 0 0 .45em;
	font-size: 1.3em;
	line-height: 1.4;
}

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

.hljna__intro {
	margin-bottom: 1.4em;
}

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

.hljna__eyebrow,
.hljna__caption {
	margin: 0 0 .35em;
	font-size: .92em;
}

.hljna__form,
.hljna__summary,
.hljna__root-forecast,
.hljna__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, #fff));
}

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

.hljna__field {
	min-width: 0;
}

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

.hljna__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: 7px;
	background: var(--ast-global-color-5, #fff);
	color: inherit;
	font-size: 1em;
	letter-spacing: .04em;
}

.hljna__field input:focus {
	border-color: var(--ast-global-color-0, #985a11);
	outline: 2px solid color-mix(in srgb, var(--ast-global-color-0, #985a11) 22%, transparent);
	outline-offset: 1px;
}

.hljna__button {
	min-height: 48px;
	padding: .65em 1.15em;
	border: 1px solid var(--ast-global-color-0, #985a11);
	border-radius: 7px;
	background: var(--ast-global-color-0, #985a11);
	color: #fff !important;
	font-size: 1em;
	font-weight: 700;
	line-height: 1.4;
	text-decoration: none !important;
	cursor: pointer;
}

.hljna__button:hover,
.hljna__button:focus-visible {
	filter: brightness(.92);
	color: #fff !important;
	text-decoration: none !important;
}

.hljna__help,
.hljna__privacy,
.hljna__note,
.hljna__section-intro {
	margin: .8em 0 0;
	color: var(--ast-global-color-3, #76695e);
	font-size: .92em;
}

.hljna__report {
	margin-top: 2em;
}

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

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

.hljna__summary p {
	margin: 0;
}

.hljna__registration-number {
	font-size: 1.4em;
	font-weight: 700;
	letter-spacing: .04em;
	overflow-wrap: anywhere;
}

.hljna__sequence {
	font-size: 1.08em;
	font-weight: 600;
	overflow-wrap: anywhere;
}

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

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

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

.hljna__root-forecast h3 {
	margin: 0;
}

.hljna__root-forecast p {
	margin-bottom: 0;
	white-space: pre-line;
	word-break: break-word;
}

.hljna__details {
	margin-top: 1em;
}

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

.hljna__math,
.hljna__prediction {
	margin: .65em 0 0;
	white-space: pre-line;
	overflow-wrap: anywhere;
}

.hljna__pairs {
	margin-top: 1.7em;
}

.hljna__rating-summary {
	margin: .7em 0 0;
	font-weight: 600;
}

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

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

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

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

.hljna__message {
	margin: 1em 0;
	padding: .8em 1em;
	border: 1px solid #e6c48a;
	border-inline-start-width: 3px;
	border-radius: 8px;
	background: #fff8e9;
}

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

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

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

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

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

	.hljna__button {
		width: 100%;
	}
}
