/* J-HyTEL JATS Production Suite 2.2.0 — premium full-screen XML reader */
:root {
	--jhjr-navy: #0b3357;
	--jhjr-navy-deep: #062540;
	--jhjr-blue: #126fc1;
	--jhjr-link: #135ee8;
	--jhjr-orange: #d78913;
	--jhjr-ink: #141d28;
	--jhjr-muted: #536174;
	--jhjr-line: #d8dde4;
	--jhjr-paper: #ffffff;
	--jhjr-canvas: #eef1f4;
	--jhjr-soft: #f6f8fa;
	--jhjr-reading-size: 18px;
	--jhjr-sidebar-width: 342px;
	--jhjr-rail-width: 58px;
	--jhjr-font-perpetua: var(--jhytel-font-display, "Perpetua", "Perpetua Titling MT", "Palatino Linotype", Georgia, serif);
	--jhjr-font-ui: var(--jhytel-font-ui, "NexusTF", "Arial Narrow", Arial, sans-serif);
	--jhjr-shadow: 0 18px 48px rgba(10, 35, 58, 0.10);
}

html.jh-jats-reader-active,
html.jh-jats-reader-active body {
	background: var(--jhjr-canvas) !important;
	min-height: 100%;
}

.jh-jats-reader-active .pkp_structure_head,
.jh-jats-reader-active .pkp_structure_footer,
.jh-jats-reader-active .pkp_site_name,
.jh-jats-reader-active .pkp_navigation_primary_wrapper,
.jh-jats-reader-active .pkp_brand_footer,
.jh-jats-reader-active .cmp_breadcrumbs,
.jh-jats-reader-active .page_title {
	display: none !important;
}

.jh-jats-reader-active .pkp_structure_page,
.jh-jats-reader-active .pkp_structure_content,
.jh-jats-reader-active .pkp_structure_main,
.jh-jats-reader-active .pkp_page_article,
.jh-jats-reader-active #pkp_content_main {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.jh-jats-reader,
.jh-jats-reader * {
	box-sizing: border-box;
}

.jh-jats-reader {
	min-height: 100vh;
	background: var(--jhjr-canvas);
	color: var(--jhjr-ink);
	font-family: var(--jhjr-font-perpetua);
	font-size: var(--jhjr-reading-size);
	line-height: 1.62;
}

.jh-jats-progress {
	position: fixed;
	inset: 0 0 auto 0;
	height: 4px;
	z-index: 1005;
	background: rgba(11, 51, 87, 0.08);
}

.jh-jats-progress span {
	display: block;
	width: 0;
	height: 100%;
	background: linear-gradient(90deg, var(--jhjr-blue), var(--jhjr-orange));
	transition: width 80ms linear;
}

/* Left navigation */
.jh-jats-sidebar {
	position: fixed;
	inset: 4px auto 0 0;
	z-index: 400;
	width: var(--jhjr-sidebar-width);
	height: calc(100vh - 4px);
	display: flex;
	flex-direction: column;
	background: #f5f6f8;
	border-right: 1px solid #cbd1d8;
	box-shadow: 3px 0 10px rgba(11, 35, 55, 0.05);
	overflow: hidden;
}

.jh-jats-sidebar__top {
	padding: 16px 12px 10px;
}

.jh-jats-back {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 40px;
	border: 1px solid #075b9e;
	border-radius: 5px;
	background: #0875c9;
	box-shadow: 0 2px 5px rgba(5, 55, 93, 0.25);
	color: #fff !important;
	font-family: var(--jhjr-font-perpetua);
	font-size: 20px;
	font-weight: 700;
	text-decoration: none !important;
}

.jh-jats-back:hover,
.jh-jats-back:focus-visible {
	background: #065fa6;
	color: #fff !important;
}

.jh-jats-sidebar__close {
	display: none;
}

.jh-jats-sidebar__heading {
	display: grid;
	grid-template-columns: 44px 1fr;
	align-items: center;
	padding: 14px 12px 12px;
	color: #243144;
}

.jh-jats-sidebar__menu {
	font-family: var(--jhjr-font-ui);
	font-size: 18px;
	color: #3455ff;
}

.jh-jats-sidebar__heading h2 {
	margin: 0;
	font-family: var(--jhjr-font-perpetua);
	font-size: 25px;
	line-height: 1.1;
	font-weight: 700;
}

.jh-jats-toc-nav {
	flex: 1 1 auto;
	overflow: auto;
	padding: 4px 14px 24px 18px;
	scrollbar-width: thin;
}

.jh-jats-toc-nav a {
	display: block;
	padding: 7px 0;
	color: #2d3848 !important;
	font-family: var(--jhjr-font-perpetua);
	font-size: 20px;
	line-height: 1.42;
	text-decoration: none !important;
	transition: color 160ms ease, transform 160ms ease;
}

.jh-jats-toc-nav a:hover,
.jh-jats-toc-nav a:focus-visible,
.jh-jats-toc-nav a.is-active {
	color: #164fbd !important;
}

.jh-jats-toc-nav a.is-active {
	font-weight: 700;
}

.jh-jats-toc-level-2 { padding-left: 18px !important; }
.jh-jats-toc-level-3 { padding-left: 34px !important; font-size: 18px !important; }
.jh-jats-toc-level-4 { padding-left: 48px !important; font-size: 17px !important; }

.jh-jats-sidebar__formats {
	display: flex;
	gap: 7px;
	padding: 12px;
	border-top: 1px solid #d7dce2;
	background: #fff;
}

.jh-jats-format {
	flex: 1 1 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	padding: 4px 8px;
	border: 1px solid #cfd7e0;
	border-radius: 4px;
	font-family: var(--jhjr-font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	text-decoration: none !important;
}

.jh-jats-format--pdf { background: #0b6db6; border-color: #0b6db6; color: #fff !important; }
.jh-jats-format--xml { background: #df8613; border-color: #df8613; color: #fff; }
.jh-jats-format--download { color: var(--jhjr-navy) !important; }

/* Reading canvas */
.jh-jats-reader-stage {
	min-height: 100vh;
	margin-left: var(--jhjr-sidebar-width);
	margin-right: var(--jhjr-rail-width);
	padding: 34px 72px 80px;
}

.jh-jats-mobile-bar { display: none; }

.jh-jats-paper {
	position: relative;
	width: min(100%, 1190px);
	margin: 0 auto;
	padding: 46px 44px 90px;
	background: var(--jhjr-paper);
	border: 1px solid #d9dee5;
	box-shadow: 0 1px 3px rgba(20, 40, 60, 0.04);
}

.jh-jats-journal-header {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	min-height: 150px;
	padding: 8px 4px 34px;
	border-bottom: 1px solid #edf0f3;
	overflow: hidden;
}

.jh-jats-journal-header::after {
	content: "";
	position: absolute;
	right: -30px;
	top: -34px;
	width: 440px;
	height: 190px;
	opacity: .055;
	background:
		radial-gradient(circle at 30% 50%, transparent 0 35px, var(--jhjr-navy) 36px 38px, transparent 39px),
		radial-gradient(circle at 64% 50%, transparent 0 51px, var(--jhjr-navy) 52px 54px, transparent 55px),
		repeating-conic-gradient(from 0deg at 50% 50%, var(--jhjr-navy) 0 2deg, transparent 2deg 16deg);
	pointer-events: none;
}

.jh-jats-journal-meta {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	gap: 3px;
	font-size: 18px;
	line-height: 1.45;
}

.jh-jats-journal-meta > strong {
	font-size: 24px;
	font-weight: 400;
}

.jh-jats-journal-identifiers {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 44px;
}

.jh-jats-publisher { display: block; }

.jh-jats-more-metadata {
	position: absolute;
	right: 4px;
	bottom: 15px;
	z-index: 2;
	appearance: none;
	border: 0;
	background: transparent;
	color: #125be0;
	font-family: var(--jhjr-font-perpetua);
	font-size: 16px;
	cursor: pointer;
}

.jh-jats-more-metadata:hover,
.jh-jats-more-metadata:focus-visible { text-decoration: underline; }

.jh-jats-extra-metadata {
	margin: 0 -44px;
	padding: 24px 44px;
	background: #f8fafc;
	border-bottom: 1px solid #e3e8ee;
}

.jh-jats-extra-metadata[hidden] { display: none; }

.jh-jats-extra-metadata dl {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px 28px;
	margin: 0;
}

.jh-jats-extra-metadata dl > div { min-width: 0; }
.jh-jats-extra-metadata__wide { grid-column: 1 / -1; }
.jh-jats-extra-metadata dt {
	font-family: var(--jhjr-font-ui);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #6b7787;
}
.jh-jats-extra-metadata dd { margin: 3px 0 0; overflow-wrap: anywhere; }

.jh-jats-article-header {
	padding: 38px 0 18px;
	scroll-margin-top: 26px;
}

.jh-jats-kicker {
	margin-bottom: 8px;
	font-family: var(--jhjr-font-ui);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--jhjr-orange);
}

.jh-jats-article-header h1 {
	max-width: 980px;
	margin: 0;
	font-family: var(--jhjr-font-perpetua);
	font-size: clamp(29px, 2.35vw, 38px);
	line-height: 1.12;
	font-weight: 700;
	letter-spacing: -.01em;
	color: #0b111a;
}

.jh-jats-subtitle {
	max-width: 1030px;
	margin: 10px 0 0;
	font-size: clamp(20px, 1.6vw, 25px);
	line-height: 1.35;
	color: #243754;
}

.jh-jats-permalinks {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 18px 36px;
	margin-top: 36px;
}

.jh-jats-permalinks a {
	display: flex;
	align-items: center;
	gap: 9px;
	min-width: 0;
	color: var(--jhjr-link) !important;
	font-size: 16px;
	text-decoration: none !important;
}

.jh-jats-permalinks a span:last-child {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.jh-jats-link-icon {
	flex: 0 0 21px;
	width: 21px;
	height: 21px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #141414;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 11px;
	font-weight: 700;
}

.jh-jats-link-icon--doi { background: #eea300; color: #171717; font-size: 9px; }

.jh-jats-history {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 15px 24px;
	margin-top: 30px;
	font-size: 18px;
}

.jh-jats-history strong { font-weight: 700; }

.jh-jats-contributor-block {
	padding: 12px 0 4px;
	scroll-margin-top: 24px;
}

.jh-jats-authors,
.jh-jats-affiliation-row {
	display: grid;
	grid-template-columns: 25px minmax(0, 1fr);
	gap: 10px;
	align-items: start;
}

.jh-jats-authors {
	font-size: 20px;
	line-height: 1.55;
}

.jh-jats-row-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 23px;
	height: 23px;
	font-family: Arial, sans-serif;
	font-size: 19px;
	color: #111;
}

.jh-jats-author { white-space: normal; }
.jh-jats-author-sep { margin-right: 2px; }

.jh-jats-orcid {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-left: 4px;
	border-radius: 50%;
	background: #a6ce39;
	color: #fff !important;
	font-family: Arial, sans-serif;
	font-size: 9px;
	font-weight: 700;
	text-decoration: none !important;
	vertical-align: middle;
}

.jh-jats-corresp { margin-left: 4px; font-family: Arial, sans-serif; font-size: 14px; }

.jh-jats-affiliation-row { margin-top: 10px; }
.jh-jats-affiliations { margin: 0; padding: 0; list-style: none; font-size: 16px; }
.jh-jats-affiliations li { margin: 0 0 6px; }
.jh-jats-affiliations sup { font-weight: 700; }

.jh-jats-keywords--top {
	margin: 22px 0 34px;
	font-size: 19px;
}

.jh-jats-keywords--top span { display: inline; }

.jh-jats-abstract-block,
.jh-jats-article-body {
	max-width: 980px;
	margin: 0 auto;
}

.jh-jats-abstract-block {
	padding-top: 12px;
	scroll-margin-top: 20px;
}

.jh-jats-abstract-block .jh-jats-abstract > h2,
.jh-jats-abstract-block::before {
	font-family: var(--jhjr-font-perpetua);
}

.jh-jats-abstract-block .jh-jats-abstract > h2 {
	margin: 0 0 12px;
	font-size: 31px;
	line-height: 1.2;
}

.jh-jats-article-body {
	font-size: var(--jhjr-reading-size);
	line-height: 1.72;
}

.jh-jats-article-body p,
.jh-jats-abstract-block p {
	margin: 0 0 1.05em;
	text-align: justify;
	hyphens: none;
}

.jh-jats-section {
	position: relative;
	margin: 34px 0 0;
	scroll-margin-top: 28px;
}

.jh-jats-section > h2,
.jh-jats-section > h3,
.jh-jats-section > h4,
.jh-jats-section > h5,
.jh-jats-back-section > h2,
.jh-jats-references > h2,
.jh-jats-footnotes > h2 {
	font-family: var(--jhjr-font-perpetua);
	color: #0c1725;
	font-weight: 700;
}

.jh-jats-section > h2,
.jh-jats-back-section > h2,
.jh-jats-references > h2,
.jh-jats-footnotes > h2 {
	margin: 0 0 13px;
	font-size: 30px;
	line-height: 1.2;
}

.jh-jats-section > h3 { margin: 27px 0 10px; font-size: 25px; line-height: 1.25; }
.jh-jats-section > h4 { margin: 23px 0 8px; font-size: 22px; line-height: 1.3; }
.jh-jats-section > h5 { margin: 20px 0 8px; font-size: 20px; line-height: 1.35; }

.jh-jats-article-body a,
.jh-jats-abstract-block a,
.jh-jats-extra-metadata a,
.jh-jats-drawer a {
	color: var(--jhjr-link);
	text-decoration: none;
}

.jh-jats-article-body a:hover,
.jh-jats-abstract-block a:hover,
.jh-jats-drawer a:hover { text-decoration: underline; }

.jh-jats-article-body ul,
.jh-jats-article-body ol { margin: 0 0 1.2em 1.45em; padding: 0; }
.jh-jats-article-body li { margin: .35em 0; }

.jh-jats-figure,
.jh-jats-table-wrap {
	position: relative;
	margin: 34px 0;
	padding: 18px;
	border: 1px solid #d8dee5;
	background: #fbfcfd;
	border-radius: 3px;
	scroll-margin-top: 30px;
}

.jh-jats-figure img,
.jh-jats-graphic {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	cursor: zoom-in;
}

.jh-jats-figure figcaption,
.jh-jats-caption,
.jh-jats-table-foot {
	margin-top: 12px;
	font-size: 16px;
	line-height: 1.5;
	color: #38475a;
}

.jh-jats-figure-label,
.jh-jats-table-label,
.jh-jats-label { font-weight: 700; }

.jh-jats-table-scroll { overflow-x: auto; }
.jh-jats-table-wrap table { width: 100%; border-collapse: collapse; font-size: 16px; background: #fff; }
.jh-jats-table-wrap th,
.jh-jats-table-wrap td { padding: 10px 11px; border: 1px solid #cfd6df; text-align: left; vertical-align: top; }
.jh-jats-table-wrap th { background: #eef3f7; font-weight: 700; }

.jh-jats-explore-button {
	position: absolute;
	right: 12px;
	top: 12px;
	appearance: none;
	border: 1px solid #c8d2dc;
	border-radius: 3px;
	background: rgba(255,255,255,.94);
	color: var(--jhjr-navy);
	padding: 6px 10px;
	font-family: var(--jhjr-font-ui);
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.jh-jats-ref-list { margin: 0; padding: 0; list-style: none; counter-reset: jhref; }
.jh-jats-ref-list > li {
	position: relative;
	margin: 0 0 14px;
	padding-left: 40px;
	line-height: 1.56;
	scroll-margin-top: 32px;
}
.jh-jats-ref-list > li > .jh-jats-label { position: absolute; left: 0; top: 0; width: 30px; font-weight: 700; }

.jh-jats-boxed-text,
.jh-jats-supplement,
.jh-jats-footnote {
	margin: 24px 0;
	padding: 16px 18px;
	border-left: 4px solid var(--jhjr-blue);
	background: #f7fafc;
}

.jh-jats-article-body blockquote {
	margin: 26px 0;
	padding: 8px 0 8px 24px;
	border-left: 3px solid #95a8ba;
	font-style: italic;
	color: #36465a;
}

.jh-jats-article-body pre,
.jh-jats-article-body code {
	font-family: Consolas, Monaco, monospace;
	font-size: .86em;
}
.jh-jats-article-body pre { overflow-x: auto; padding: 16px; background: #101923; color: #f2f6f9; }

.jh-jats-formula-display { overflow-x: auto; margin: 24px 0; padding: 14px; text-align: center; background: #fafbfc; }
.jh-jats-inline-graphic { max-height: 1.35em; vertical-align: middle; }
.jh-jats-asset-missing { display: inline-block; padding: 8px 12px; border: 1px dashed #be6b48; color: #8e3d20; background: #fff7f2; }
.jh-jats-smallcaps { font-variant: small-caps; }
.jh-jats-underline { text-decoration: underline; }

/* Right vertical map */
.jh-jats-rail {
	position: fixed;
	inset: 4px 0 0 auto;
	z-index: 500;
	width: var(--jhjr-rail-width);
	height: calc(100vh - 4px);
	display: flex;
	flex-direction: column;
	gap: 7px;
	padding: 24px 5px 10px;
	background: #f6f7f8;
	border-left: 1px solid #d5dae0;
}

.jh-jats-rail button {
	appearance: none;
	position: relative;
	flex: 1 1 0;
	min-height: 96px;
	max-height: 138px;
	border: 1px solid #d9dde3;
	border-radius: 11px;
	background: #fff;
	color: #344052;
	cursor: pointer;
	font-family: var(--jhjr-font-perpetua);
	box-shadow: 0 1px 2px rgba(12, 35, 55, 0.03);
}

.jh-jats-rail button:hover,
.jh-jats-rail button:focus-visible,
.jh-jats-rail button.is-active {
	border-color: #e6b227;
	background: #fffdf7;
	color: var(--jhjr-navy);
}

.jh-jats-rail__label {
	position: absolute;
	inset: 34px 0 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-size: 17px;
	letter-spacing: .03em;
}

.jh-jats-rail__badge {
	position: absolute;
	top: 12px;
	left: 50%;
	transform: translateX(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 25px;
	height: 25px;
	padding: 0 5px;
	border-radius: 50%;
	background: #1c55d8;
	color: #fff;
	font-family: Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
}

/* Clickable right drawer */
.jh-jats-drawer {
	position: fixed;
	z-index: 800;
	inset: 4px var(--jhjr-rail-width) 0 auto;
	width: min(430px, calc(100vw - var(--jhjr-rail-width)));
	padding: 0;
	background: #fff;
	border-left: 1px solid #cfd5dc;
	box-shadow: -18px 0 52px rgba(9, 31, 52, .16);
	transform: translateX(calc(100% + 24px));
	transition: transform 220ms ease;
	overflow-y: auto;
}

.jh-jats-drawer.is-open { transform: translateX(0); }
.jh-jats-drawer[aria-hidden="true"] { visibility: hidden; transition: transform 220ms ease, visibility 0s linear 220ms; }
.jh-jats-drawer[aria-hidden="false"] { visibility: visible; }

.jh-jats-drawer__header {
	position: sticky;
	top: 0;
	z-index: 2;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 24px;
	background: linear-gradient(135deg, var(--jhjr-navy-deep), var(--jhjr-navy));
	color: #fff;
}

.jh-jats-drawer__header span {
	font-family: var(--jhjr-font-ui);
	font-size: 11px;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #e3b650;
}

.jh-jats-drawer__header h2 { margin: 5px 0 0; font-size: 27px; line-height: 1.15; color: #fff; }
.jh-jats-drawer__header button {
	appearance: none;
	border: 1px solid rgba(255,255,255,.32);
	border-radius: 50%;
	width: 36px;
	height: 36px;
	background: rgba(255,255,255,.08);
	color: #fff;
	font-size: 25px;
	line-height: 1;
	cursor: pointer;
}

.jh-jats-drawer-panel { padding: 24px; }
.jh-jats-drawer-panel[hidden] { display: none; }

.jh-jats-metric-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
}

.jh-jats-metric-grid > div {
	padding: 18px;
	border: 1px solid #dbe1e8;
	border-radius: 8px;
	background: #f8fafc;
}
.jh-jats-metric-grid strong { display: block; font-size: 31px; line-height: 1; color: var(--jhjr-navy); }
.jh-jats-metric-grid span { font-size: 15px; color: #657285; }

.jh-jats-drawer-meta { margin: 24px 0; }
.jh-jats-drawer-meta > div { padding: 12px 0; border-bottom: 1px solid #e5e9ee; }
.jh-jats-drawer-meta dt { font-family: var(--jhjr-font-ui); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: #758194; }
.jh-jats-drawer-meta dd { margin: 3px 0 0; overflow-wrap: anywhere; }
.jh-jats-drawer-note { font-size: 15px; color: #647185; }
.jh-jats-drawer-link { display: inline-flex; padding: 9px 14px; border-radius: 4px; background: var(--jhjr-navy); color: #fff !important; font-family: var(--jhjr-font-ui); font-size: 13px; font-weight: 700; }

.jh-jats-document-list { display: grid; gap: 12px; }
.jh-jats-document-item {
	display: grid;
	grid-template-columns: 64px minmax(0,1fr);
	gap: 12px;
	align-items: center;
	padding: 11px;
	border: 1px solid #dbe1e8;
	border-radius: 7px;
	background: #fff;
	color: #273449 !important;
	text-decoration: none !important;
}
.jh-jats-document-item:hover { border-color: #91aed0; background: #f7faff; }
.jh-jats-document-item img { width: 64px; height: 52px; object-fit: cover; border-radius: 3px; background: #eef2f5; }
.jh-jats-document-item__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #edf3f8;
	color: var(--jhjr-navy);
	font-family: var(--jhjr-font-ui);
	font-weight: 700;
}
.jh-jats-document-item span:last-child { min-width: 0; font-size: 16px; line-height: 1.35; }
.jh-jats-document-empty { color: #69768a; font-style: italic; }

.jh-jats-contributor-list { display: grid; gap: 12px; }
.jh-jats-contributor-card { padding: 16px; border: 1px solid #dbe1e8; border-radius: 7px; background: #fafbfd; }
.jh-jats-contributor-card strong { display: block; font-size: 20px; }
.jh-jats-contributor-card div { display: flex; flex-direction: column; gap: 3px; margin-top: 6px; font-size: 14px; }

/* Compact floating reader controls */
.jh-jats-reading-controls {
	position: fixed;
	z-index: 650;
	left: calc(var(--jhjr-sidebar-width) + 22px);
	bottom: 18px;
	display: flex;
	gap: 5px;
	padding: 6px;
	border: 1px solid #cfd6df;
	border-radius: 7px;
	background: rgba(255,255,255,.96);
	box-shadow: 0 8px 24px rgba(12, 35, 55, .12);
}

.jh-jats-reading-controls button {
	appearance: none;
	border: 0;
	border-radius: 4px;
	background: transparent;
	color: #263649;
	padding: 7px 9px;
	font-family: var(--jhjr-font-ui);
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}
.jh-jats-reading-controls button:hover { background: #edf3f8; }

/* Explorer */
.jh-jats-explorer {
	position: fixed;
	z-index: 1500;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 32px;
	background: rgba(4, 18, 30, .82);
}
.jh-jats-explorer__dialog { position: relative; width: min(1200px, 96vw); max-height: 92vh; overflow: auto; padding: 28px; background: #fff; box-shadow: var(--jhjr-shadow); }
.jh-jats-explorer__close { position: sticky; top: 0; float: right; z-index: 2; appearance: none; border: 0; border-radius: 50%; width: 38px; height: 38px; background: var(--jhjr-navy); color: #fff; font-size: 26px; cursor: pointer; }
.jh-jats-explorer__body .jh-jats-figure,
.jh-jats-explorer__body .jh-jats-table-wrap { margin: 0; border: 0; background: #fff; }
body.jh-jats-explorer-open { overflow: hidden; }

@media (max-width: 1280px) {
	:root { --jhjr-sidebar-width: 300px; }
	.jh-jats-reader-stage { padding-left: 34px; padding-right: 34px; }
	.jh-jats-paper { padding-left: 34px; padding-right: 34px; }
	.jh-jats-history { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 920px) {
	:root { --jhjr-rail-width: 0px; }
	.jh-jats-sidebar {
		z-index: 1000;
		width: min(360px, 88vw);
		transform: translateX(-102%);
		transition: transform 220ms ease;
	}
	.jh-jats-reader.is-toc-open .jh-jats-sidebar { transform: translateX(0); }
	.jh-jats-sidebar__close {
		display: block;
		position: absolute;
		right: 14px;
		top: 19px;
		appearance: none;
		border: 0;
		background: transparent;
		font-size: 28px;
		color: #fff;
		cursor: pointer;
	}
	.jh-jats-reader-stage { margin: 0; padding: 56px 14px 90px; }
	.jh-jats-mobile-bar {
		position: fixed;
		z-index: 700;
		inset: 4px 0 auto 0;
		height: 52px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 14px;
		background: var(--jhjr-navy);
		color: #fff;
		box-shadow: 0 4px 12px rgba(0,0,0,.14);
	}
	.jh-jats-mobile-bar button { appearance: none; border: 0; background: transparent; color: #fff; font-size: 23px; cursor: pointer; }
	.jh-jats-mobile-bar span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 17px; }
	.jh-jats-paper { width: 100%; margin: 0; padding: 26px 24px 74px; }
	.jh-jats-journal-header { min-height: 130px; }
	.jh-jats-journal-header::after { width: 300px; }
	.jh-jats-permalinks { grid-template-columns: 1fr; }
	.jh-jats-history { grid-template-columns: 1fr 1fr; }
	.jh-jats-rail {
		inset: auto 0 0 0;
		width: 100%;
		height: 64px;
		flex-direction: row;
		gap: 4px;
		padding: 5px;
		border-left: 0;
		border-top: 1px solid #d5dae0;
	}
	.jh-jats-rail button { min-height: 52px; max-height: none; min-width: 0; border-radius: 6px; }
	.jh-jats-rail__badge { top: 6px; min-width: 20px; height: 20px; font-size: 10px; }
	.jh-jats-rail__label { inset: 27px 2px 3px; writing-mode: initial; transform: none; font-size: 11px; }
	.jh-jats-drawer { inset: 56px 0 64px auto; width: min(430px, 94vw); }
	.jh-jats-reading-controls { left: 14px; bottom: 72px; }
}

@media (max-width: 640px) {
	.jh-jats-paper { padding: 22px 18px 70px; }
	.jh-jats-journal-header { display: block; min-height: 145px; }
	.jh-jats-journal-identifiers { display: grid; gap: 2px; }
	.jh-jats-more-metadata { right: 0; }
	.jh-jats-extra-metadata { margin: 0 -18px; padding: 20px 18px; }
	.jh-jats-extra-metadata dl { grid-template-columns: 1fr; }
	.jh-jats-article-header h1 { font-size: 29px; }
	.jh-jats-subtitle { font-size: 20px; }
	.jh-jats-history { grid-template-columns: 1fr; }
	.jh-jats-abstract-block .jh-jats-abstract > h2,
	.jh-jats-abstract-block .jh-jats-abstract:not(:has(> h2))::before,
	.jh-jats-section > h2,
	.jh-jats-back-section > h2,
	.jh-jats-references > h2 { font-size: 27px; }
	.jh-jats-article-body p,
	.jh-jats-abstract-block p { text-align: left; }
	.jh-jats-reading-controls button:nth-last-child(-n+2) { display: none; }
}

@media (prefers-reduced-motion: reduce) {
	.jh-jats-sidebar,
	.jh-jats-drawer,
	.jh-jats-progress span { transition: none !important; }
}

@media print {
	.jh-jats-reader-active .pkp_structure_head,
	.jh-jats-reader-active .pkp_structure_footer,
	.jh-jats-sidebar,
	.jh-jats-rail,
	.jh-jats-drawer,
	.jh-jats-reading-controls,
	.jh-jats-progress,
	.jh-jats-mobile-bar,
	.jh-jats-more-metadata { display: none !important; }
	.jh-jats-reader-stage { margin: 0; padding: 0; }
	.jh-jats-paper { width: auto; margin: 0; padding: 0; border: 0; box-shadow: none; }
	.jh-jats-journal-header::after { display: none; }
	.jh-jats-article-body a { color: #000; text-decoration: none; }
}

/* ===== J-HyTEL JATS Production Suite 2.2 refinements ===== */
:root {
	--jhjr-font-ysabeau: var(--jhytel-font-reading, "Ysabeau Office", "Ysabeau", "Segoe UI", Arial, sans-serif);
	--jhjr-font-reading: var(--jhjr-font-perpetua);
}

html.jh-jats-reader-active,
html.jh-jats-reader-active body {
	overflow: hidden !important;
	background: #edf0f3 !important;
}

.jh-jats-reader {
	position: fixed !important;
	inset: 0 !important;
	z-index: 2147482000 !important;
	height: 100dvh;
	min-height: 100vh;
	overflow: auto;
	isolation: isolate;
	background: #edf0f3 !important;
	font-family: var(--jhjr-font-reading);
}

.jh-jats-reader[data-reader-font="ysabeau"] { --jhjr-font-reading: var(--jhjr-font-ysabeau); }
.jh-jats-reader[data-reader-font="perpetua"] { --jhjr-font-reading: var(--jhjr-font-perpetua); }

.jh-jats-paper,
.jh-jats-sidebar,
.jh-jats-drawer,
.jh-jats-reading-controls,
.jh-jats-rail { font-family: var(--jhjr-font-reading); }

.jh-jats-paper h1,
.jh-jats-paper h2,
.jh-jats-paper h3,
.jh-jats-paper h4,
.jh-jats-kicker,
.jh-jats-sidebar__heading h2,
.jh-jats-drawer__header span,
.jh-jats-drawer__header h2,
.jh-jats-explore-button,
.jh-jats-reading-controls button,
.jh-jats-format,
.jh-jats-back,
.jh-jats-contributor-card h3,
.jh-jats-bio-card { font-family: var(--jhjr-font-perpetua) !important; }

.jh-jats-kicker {
	font-size: 15px;
	font-weight: 700;
	font-variant: small-caps;
	letter-spacing: .13em;
	text-transform: lowercase;
	color: #8c4c05;
}

.jh-jats-article-header h1 {
	font-size: clamp(28px, 2.25vw, 38px) !important;
	line-height: 1.08 !important;
	letter-spacing: -.012em;
}

.jh-jats-extra-metadata dt {
	font-family: var(--jhjr-font-perpetua);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: none;
}
.jh-jats-extra-metadata dd { font-family: var(--jhjr-font-reading); }

/* Collapsible TOC groups */
.jh-jats-toc-group { position: relative; }
.jh-jats-toc-group__row { display: grid; grid-template-columns: minmax(0,1fr) 28px; align-items: start; }
.jh-jats-toc-group__row > a { min-width: 0; }
.jh-jats-toc-toggle {
	appearance: none;
	width: 26px;
	height: 28px;
	margin-top: 5px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #536174;
	font: 700 18px/1 var(--jhjr-font-ui);
	cursor: pointer;
}
.jh-jats-toc-toggle:hover,
.jh-jats-toc-toggle:focus-visible { background: #e5edf5; color: var(--jhjr-blue); }
.jh-jats-toc-group__children { overflow: hidden; }
.jh-jats-toc-group.is-collapsed .jh-jats-toc-group__children { display: none; }
.jh-jats-toc-group.is-collapsed .jh-jats-toc-toggle { transform: rotate(-90deg); }

/* Premium format controls */
.jh-jats-sidebar__formats { gap: 8px; padding: 12px; }
.jh-jats-format {
	min-height: 48px;
	flex-direction: column;
	gap: 0;
	border-radius: 9px;
	box-shadow: 0 5px 14px rgba(11,51,87,.09);
	font-family: var(--jhjr-font-perpetua) !important;
	letter-spacing: 0;
}
.jh-jats-format > span { font-size: 16px; font-weight: 700; line-height: 1; }
.jh-jats-format small { font-size: 11px; font-weight: 400; opacity: .86; line-height: 1.2; }
.jh-jats-format--download > span { font-size: 18px; }

/* Article typography */
.jh-jats-article-body p,
.jh-jats-abstract p,
.jh-jats-contributor-bio p,
.jh-jats-bio-card p {
	text-align: justify !important;
	text-justify: inter-word;
	hyphens: none;
}

.jh-jats-article-body a.jh-jats-xref-bibr {
	display: inline;
	font-weight: 700;
	text-decoration: none !important;
	border-bottom: 1px dotted currentColor;
}
.jh-jats-doi-link,
.jh-jats-ref-list a { color: #0f62d8 !important; text-decoration: underline; text-underline-offset: 2px; }

/* Captions, notes and compact tables */
.jh-jats-figure figcaption,
.jh-jats-table-wrap figcaption,
.jh-jats-caption,
.jh-jats-figure-label,
.jh-jats-table-label {
	color: #095fb4 !important;
	font-family: var(--jhjr-font-perpetua);
	font-weight: 700;
}
.jh-jats-figure-note,
.jh-jats-table-foot {
	margin-top: 8px;
	font-style: italic;
	font-size: .92em;
	line-height: 1.35;
	color: #596474;
}
.jh-jats-table-foot p,
.jh-jats-table-wrap td p,
.jh-jats-table-wrap th p { margin: 0 !important; line-height: 1.28 !important; }
.jh-jats-table-wrap table { font-size: .91em; line-height: 1.28; }
.jh-jats-table-wrap th,
.jh-jats-table-wrap td { padding: 6px 8px !important; line-height: 1.28; }

.jh-jats-explore-button {
	min-height: 36px;
	padding: 7px 16px;
	border: 1px solid #1c5d95;
	border-radius: 999px;
	background: linear-gradient(180deg,#fff,#edf5fb);
	box-shadow: 0 5px 14px rgba(11,51,87,.12);
	color: #0b3357;
	font-size: 16px;
	font-weight: 700;
}
.jh-jats-explore-button:hover { background: #0b5f9e; color: #fff; }

/* Word crop fallback (JS computes exact viewport after image load) */
.jh-jats-crop-frame {
	display: block;
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	margin: 0 auto;
	background: #fff;
}
.jh-jats-crop-frame > img { position: absolute; max-width: none !important; height: auto; margin: 0 !important; }

/* Drawer typography and metrics */
.jh-jats-drawer__header span { font-size: 13px; font-variant: small-caps; letter-spacing: .15em; }
.jh-jats-drawer__header h2 { font-size: 28px; font-weight: 700; }
.jh-jats-metric-grid--usage { grid-template-columns: repeat(2,minmax(0,1fr)); }
.jh-jats-metric-grid--usage > div:first-child,
.jh-jats-metric-grid--usage > div:nth-child(2) { background: linear-gradient(145deg,#f0f7ff,#fff); border-color: #bcd7ef; }
.jh-jats-metric-grid--usage strong { font-family: var(--jhjr-font-perpetua); }

/* Author-only contributors */
.jh-jats-contributor-list { display: grid; gap: 16px; }
.jh-jats-contributor-card {
	display: grid;
	grid-template-columns: 58px minmax(0,1fr);
	gap: 14px;
	padding: 16px;
	border: 1px solid #d9e0e7;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(10,38,61,.07);
}
.jh-jats-contributor-card.is-corresponding { border-color: #c9892b; box-shadow: inset 4px 0 0 #d48a16,0 8px 22px rgba(10,38,61,.07); }
.jh-jats-contributor-avatar {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	overflow: hidden;
	display: grid;
	place-items: center;
	background: #0b3357;
	color: #fff;
	font: 700 21px/1 var(--jhjr-font-perpetua);
}
.jh-jats-contributor-avatar img { width: 100%; height: 100%; object-fit: cover; }
.jh-jats-contributor-card h3 { margin: 1px 0 5px; font-size: 22px; color: #102f4d; }
.jh-jats-contributor-role { display: inline-block; color: #a45a00; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.jh-jats-contributor-orcid { display: inline-block; margin-bottom: 6px; color: #2d6d14 !important; }
.jh-jats-contributor-affiliation { margin: 4px 0 !important; text-align: left !important; font-size: .94em; line-height: 1.34; }
.jh-jats-contributor-contact { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 8px; font-size: .91em; }
.jh-jats-country { display: inline-flex; align-items: center; gap: 6px; }
.jh-jats-country img { width: 20px; height: 20px; object-fit: cover; border-radius: 50%; border: 1px solid #ccd4dc; box-shadow: 0 1px 3px rgba(0,0,0,.12); }
.jh-jats-contributor-bio { margin-top: 11px; padding-top: 10px; border-top: 1px solid #e6eaee; }

/* Author biography section */
.jh-jats-bio-grid { display: grid; gap: 18px; }
.jh-jats-bio-card {
	display: grid;
	grid-template-columns: minmax(100px,150px) minmax(0,1fr);
	gap: 22px;
	align-items: start;
	padding: 20px;
	border: 1px solid #dbe2e8;
	border-radius: 14px;
	background: #fbfcfd;
}
.jh-jats-bio-card__photo img { width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: 10px; }
.jh-jats-bio-card__text p { margin: 0 0 .65em; }

/* Reader toolbar */
.jh-jats-reading-controls {
	gap: 7px;
	padding: 7px;
	border: 1px solid #cbd7e1;
	border-radius: 13px;
	background: rgba(255,255,255,.97);
	box-shadow: 0 12px 32px rgba(7,37,61,.17);
}
.jh-jats-reading-controls__size { display: flex; border: 1px solid #d7e0e7; border-radius: 9px; overflow: hidden; }
.jh-jats-reading-controls__size button { border: 0 !important; border-radius: 0 !important; border-right: 1px solid #d7e0e7 !important; }
.jh-jats-reading-controls__size button:last-child { border-right: 0 !important; }
.jh-jats-reading-controls button {
	min-height: 38px;
	padding: 7px 12px;
	border-radius: 9px;
	font-size: 15px;
	font-weight: 700;
}
.jh-jats-font-toggle { display: inline-flex; align-items: center; gap: 7px; }
.jh-jats-font-toggle span { font: 600 11px/1 var(--jhjr-font-ui); text-transform: uppercase; letter-spacing: .08em; color: #617081; }
.jh-jats-font-toggle strong { font-family: var(--jhjr-font-perpetua); font-size: 15px; }

/* Equations */
.jh-jats-formula-display { overflow-x: auto; margin: 1.25em 0; padding: 12px 18px; text-align: center; background: #fbfcfd; border-left: 3px solid #2d76b7; }
.jh-jats-formula math { font-size: 1.08em; }

@media (max-width: 640px) {
	.jh-jats-article-body p,
	.jh-jats-abstract p { text-align: justify !important; }
	.jh-jats-bio-card { grid-template-columns: 82px minmax(0,1fr); gap: 14px; padding: 14px; }
	.jh-jats-contributor-card { grid-template-columns: 48px minmax(0,1fr); padding: 13px; }
	.jh-jats-contributor-avatar { width: 48px; height: 48px; }
	.jh-jats-reading-controls { max-width: calc(100vw - 28px); overflow-x: auto; }
}
.jh-jats-formula-display { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 14px; }
.jh-jats-formula-content { min-width: 0; }
.jh-jats-formula-label { font-family: var(--jhjr-font-perpetua); font-weight: 700; color: #314256; }


/* 2.2.0 final hardening: isolate reader from all theme artwork and tighten hierarchy. */
html.jh-jats-reader-active body,
body.jh-jats-reader-active {
	background-color: #edf0f3 !important;
	background-image: none !important;
}
html.jh-jats-reader-active .pkp_structure_page::before,
html.jh-jats-reader-active .pkp_structure_page::after,
html.jh-jats-reader-active .pkp_structure_content::before,
html.jh-jats-reader-active .pkp_structure_content::after,
html.jh-jats-reader-active body::before,
html.jh-jats-reader-active body::after { display: none !important; content: none !important; background: none !important; }

.jh-jats-reader-stage { background: #edf0f3 !important; }
.jh-jats-paper { border-radius: 2px; }
.jh-jats-journal-meta > strong,
.jh-jats-publisher { font-family: var(--jhjr-font-perpetua); }
.jh-jats-publisher { font-size: 17px; }
.jh-jats-more-metadata { font-family: var(--jhjr-font-perpetua) !important; font-size: 16px; }
.jh-jats-extra-metadata dl { align-items: stretch; }
.jh-jats-extra-metadata dl > div { padding: 12px 14px; border: 1px solid #e1e6eb; border-radius: 9px; background: #fff; }
.jh-jats-extra-metadata dt { color: #173b5c; }
.jh-jats-extra-metadata dd { margin-top: 3px; color: #2e3c4c; }

.jh-jats-kicker { text-transform: none !important; font-variant: small-caps; font-size: 16px; }
.jh-jats-drawer__header { font-family: var(--jhjr-font-perpetua); }
.jh-jats-drawer__header span { text-transform: none; font-variant: small-caps; }

.jh-jats-toc-group.is-collapsed > .jh-jats-toc-group__row > a { font-weight: 600; }
.jh-jats-toc-toggle { transition: transform 160ms ease, background 160ms ease; }

.jh-jats-reading-controls > button:not(.jh-jats-font-toggle) { border: 1px solid #d7e0e7; background: linear-gradient(180deg,#fff,#f3f7fa); }
.jh-jats-reading-controls > button:not(.jh-jats-font-toggle):hover { background: #0b5f9e; border-color: #0b5f9e; color: #fff; }
.jh-jats-font-toggle { border: 1px solid #c8d6e2 !important; background: linear-gradient(180deg,#fdfefe,#edf5fa) !important; }
.jh-jats-font-toggle:hover { border-color: #0b5f9e !important; }

.jh-jats-ref-list > li { scroll-margin-top: 32px; }
.jh-jats-xref-bibr:target,
.jh-jats-ref-list > li:target { background: #fff3c9; outline: 4px solid #fff3c9; transition: background 400ms ease; }

.jh-jats-author-biographies .jh-jats-table-wrap { display: none !important; }
.jh-jats-bio-card__photo .jh-jats-crop-frame { border-radius: 10px; }

@media (max-width: 640px) {
	.jh-jats-reading-controls > button { display: inline-flex !important; }
	.jh-jats-reading-controls { scrollbar-width: thin; }
}


/* ===== J-HyTEL JATS Production Suite 2.3 refinements ===== */

:root {
	--jhjr-reading-size: 17px;
	--jhjr-sidebar-collapsed-width: 62px;
	--jhjr-font-ysabeau: "Ysabeau Office", "Ysabeau", "Segoe UI", Arial, sans-serif;
	--jhjr-font-reading: var(--jhjr-font-ysabeau);
}

html.jh-jats-reader-active,
html.jh-jats-reader-active body,
body.jh-jats-reader-active {
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	overflow: hidden !important;
}

.jh-jats-reader {
	position: fixed !important;
	inset: 0 !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	min-height: 0 !important;
	overflow: hidden !important;
	background: #edf0f3 !important;
}

.jh-jats-reader-stage {
	position: absolute;
	inset: 4px var(--jhjr-rail-width) 0 var(--jhjr-sidebar-width);
	min-height: 0 !important;
	margin: 0 !important;
	padding: 30px 58px 94px;
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
	scroll-behavior: smooth;
}

.jh-jats-reader-stage::-webkit-scrollbar { width: 12px; }
.jh-jats-reader-stage::-webkit-scrollbar-track { background: #e5e9ed; }
.jh-jats-reader-stage::-webkit-scrollbar-thumb { background: #9eabb7; border: 3px solid #e5e9ed; border-radius: 999px; }
.jh-jats-reader-stage::-webkit-scrollbar-thumb:hover { background: #728292; }

.jh-jats-sidebar,
.jh-jats-rail,
.jh-jats-drawer { height: calc(100dvh - 4px); }
.jh-jats-rail { overflow-y: auto; }
.jh-jats-rail button { min-height: 78px; max-height: none; }

.jh-jats-paper {
	width: min(100%, 1120px);
	min-height: calc(100dvh - 64px);
	padding: 42px 42px 86px;
	font-family: var(--jhjr-font-reading) !important;
	font-size: var(--jhjr-reading-size);
	line-height: 1.47;
}

.jh-jats-reader[data-reader-font="ysabeau"] { --jhjr-font-reading: var(--jhjr-font-ysabeau); }
.jh-jats-reader[data-reader-font="perpetua"] { --jhjr-font-reading: var(--jhjr-font-perpetua); }

.jh-jats-paper h1,
.jh-jats-paper h2,
.jh-jats-paper h3,
.jh-jats-paper h4,
.jh-jats-paper h5,
.jh-jats-kicker,
.jh-jats-sidebar,
.jh-jats-sidebar__heading h2,
.jh-jats-drawer,
.jh-jats-drawer__header span,
.jh-jats-drawer__header h2,
.jh-jats-explore-button,
.jh-jats-reading-controls button,
.jh-jats-format,
.jh-jats-back,
.jh-jats-contributor-card h3,
.jh-jats-bio-card {
	font-family: var(--jhjr-font-reading) !important;
}

.jh-jats-article-body,
.jh-jats-abstract,
.jh-jats-contributor-block,
.jh-jats-keywords { line-height: 1.47; }
.jh-jats-article-body p,
.jh-jats-abstract p { margin: 0 0 .72em !important; line-height: 1.47 !important; }
.jh-jats-section { margin: 0 0 1.25em; }
.jh-jats-section > h2 { margin: 1.15em 0 .42em; }
.jh-jats-section > h3 { margin: 1em 0 .36em; }
.jh-jats-section > h4,
.jh-jats-section > h5 { margin: .9em 0 .32em; }

.jh-jats-sidebar__heading {
	grid-template-columns: 32px minmax(0,1fr) 34px;
	gap: 8px;
	padding: 12px 12px 10px;
}
.jh-jats-sidebar__heading h2 { font-size: 21px !important; line-height: 1.15; }
.jh-jats-sidebar__collapse {
	appearance: none;
	position: relative;
	width: 32px;
	height: 32px;
	border: 1px solid #cbd5df;
	border-radius: 10px;
	background: linear-gradient(180deg,#fff,#eaf0f5);
	box-shadow: 0 4px 12px rgba(10,45,72,.10);
	cursor: pointer;
}
.jh-jats-sidebar__collapse span::before {
	content: "";
	position: absolute;
	left: 11px;
	top: 10px;
	width: 8px;
	height: 8px;
	border-left: 2px solid #173c5d;
	border-bottom: 2px solid #173c5d;
	transform: rotate(45deg);
	transition: transform 180ms ease, left 180ms ease;
}
.jh-jats-sidebar__collapse:hover,
.jh-jats-sidebar__collapse:focus-visible { border-color: #0d67ad; background: #eef7fd; }

.jh-jats-toc-nav { padding: 2px 14px 20px 18px; }
.jh-jats-toc-nav a { font-size: 17px; line-height: 1.32; padding: 6px 0; }
.jh-jats-toc-level-2 { padding-left: 16px !important; font-size: 16px !important; }
.jh-jats-toc-level-3 { padding-left: 30px !important; font-size: 15px !important; }
.jh-jats-toc-level-4 { padding-left: 42px !important; font-size: 15px !important; }

.jh-jats-toc-toggle {
	position: relative;
	width: 28px;
	height: 28px;
	border: 1px solid transparent;
	background: transparent;
	transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.jh-jats-toc-toggle::before {
	content: "";
	position: absolute;
	left: 9px;
	top: 8px;
	width: 7px;
	height: 7px;
	border-right: 2px solid #526579;
	border-bottom: 2px solid #526579;
	transform: rotate(45deg);
	transition: transform 160ms ease, top 160ms ease;
}
.jh-jats-toc-group.is-collapsed .jh-jats-toc-toggle { transform: none; }
.jh-jats-toc-group.is-collapsed .jh-jats-toc-toggle::before { top: 9px; transform: rotate(-45deg); }
.jh-jats-toc-toggle:hover,
.jh-jats-toc-toggle:focus-visible { border-color: #bfd3e4; background: #edf5fb; }

.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar { width: var(--jhjr-sidebar-collapsed-width); }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage { left: var(--jhjr-sidebar-collapsed-width); }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__top { padding: 12px 8px 8px; }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-back { min-height: 42px; padding: 0; }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-back__label,
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__menu,
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__heading h2,
.jh-jats-reader.is-sidebar-collapsed .jh-jats-toc-nav,
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__formats { display: none !important; }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__heading { display: flex; justify-content: center; padding: 8px; }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-sidebar__collapse span::before { left: 10px; transform: rotate(225deg); }

.jh-jats-sidebar__formats { margin-top: auto; }

.jh-jats-ref-list {
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}
.jh-jats-ref-list > li {
	position: relative;
	margin: 0 0 .72em !important;
	padding: 0 0 0 2.15em !important;
	text-align: justify;
	text-indent: 0;
	line-height: 1.43;
}
.jh-jats-ref-list > li::before {
	content: "[" counter(list-item) "]";
	position: absolute;
	left: 0;
	top: 0;
	width: 1.85em;
	color: #26384a;
	font-weight: 400;
}
.jh-jats-ref-list > li > .jh-jats-label { display: none !important; }
.jh-jats-article-body a.jh-jats-xref-bibr {
	font-weight: 400 !important;
	border-bottom: 0 !important;
	text-decoration: none !important;
}

.jh-jats-author-biographies { display: none !important; }
.jh-jats-contributor-list { gap: 13px; }
.jh-jats-contributor-card { grid-template-columns: 52px minmax(0,1fr); gap: 13px; padding: 14px; border-radius: 12px; }
.jh-jats-contributor-avatar { width: 52px; height: 52px; }
.jh-jats-contributor-card h3 { margin: 0 0 4px; font-size: 20px; line-height: 1.2; }
.jh-jats-contributor-affiliation { margin: 2px 0 !important; font-size: .91em; line-height: 1.3; }
.jh-jats-contributor-contact { display: grid; gap: 5px; margin-top: 9px; font-size: .88em; }
.jh-jats-contributor-contact a { overflow-wrap: anywhere; text-decoration: none !important; }
.jh-jats-contributor-contact a:hover { text-decoration: underline !important; }
.jh-jats-contributor-contact strong { display: inline; font-size: inherit; color: #173a59; }
.jh-jats-country img { width: 18px; height: 18px; }

.jh-jats-sdg-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }
.jh-jats-sdg-card { margin: 0; padding: 12px; border: 1px solid #dce3e9; border-radius: 13px; background: #fff; box-shadow: 0 7px 20px rgba(8,39,63,.07); }
.jh-jats-sdg-card img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: contain; }
.jh-jats-sdg-card figcaption { margin-top: 8px; text-align: center; font-weight: 700; color: #173b5d; }

.jh-jats-back-section > h2,
.jh-jats-back-section > h3,
.jh-jats-back-section > h4,
.jh-jats-back-matter .jh-jats-section > h2,
.jh-jats-back-matter .jh-jats-section > h3,
.jh-jats-back-matter .jh-jats-section > h4 { font-weight: 800 !important; }

.jh-jats-reading-controls {
	position: fixed;
	left: calc(var(--jhjr-sidebar-width) + 18px);
	bottom: 14px;
	z-index: 900;
}
.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls { left: calc(var(--jhjr-sidebar-collapsed-width) + 18px); }

@media (max-width: 1024px) {
	.jh-jats-reader-stage { padding-left: 20px; padding-right: 20px; }
	.jh-jats-sidebar__collapse { display: none; }
}

@media (max-width: 860px) {
	.jh-jats-reader-stage { position: absolute; inset: 0 0 64px 0; padding: 70px 14px 82px; }
	.jh-jats-reading-controls { left: 14px; bottom: 72px; }
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls { left: 14px; }
}

@media print {
	.jh-jats-reader { position: static !important; width: auto !important; height: auto !important; overflow: visible !important; }
	.jh-jats-reader-stage { position: static !important; overflow: visible !important; padding: 0 !important; }
}

/* ===== J-HyTEL JATS Production Suite 2.3.1 stability and fidelity patch ===== */
@font-face {
	font-family: "Ysabeau Office Local";
	font-style: normal;
	font-weight: 100 1000;
	font-display: swap;
	src: url("/YsabeauOffice.ttf") format("truetype");
}
@font-face {
	font-family: "Ysabeau Office Local";
	font-style: italic;
	font-weight: 100 1000;
	font-display: swap;
	src: url("/YsabeauOffice-Italic.ttf") format("truetype");
}
:root {
	--jhjr-font-ysabeau: "Ysabeau Office Local", "Ysabeau Office", "Ysabeau", "Segoe UI", Arial, sans-serif;
}

html.jh-jats-reader-active,
body.jh-jats-reader-body {
	position: static !important;
	inset: auto !important;
	width: 100vw !important;
	height: 100vh !important;
	height: 100dvh !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	overscroll-behavior: none !important;
	background: #edf0f3 !important;
}
body.jh-jats-reader-body > :not(.jh-jats-reader) {
	display: none !important;
}
body.jh-jats-reader-body > .jh-jats-reader {
	display: block !important;
}
.jh-jats-reader {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	inset: 0 !important;
	width: auto !important;
	height: auto !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: none !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	transform: none !important;
	contain: layout paint style;
	isolation: isolate;
	overflow: hidden !important;
}
.jh-jats-progress,
.jh-jats-sidebar,
.jh-jats-rail,
.jh-jats-drawer,
.jh-jats-reading-controls,
.jh-jats-mobile-bar,
.jh-jats-explorer {
	position: absolute !important;
}
.jh-jats-progress { inset: 0 0 auto 0 !important; }
.jh-jats-sidebar { inset: 4px auto 0 0 !important; height: auto !important; }
.jh-jats-rail { inset: 4px 0 0 auto !important; height: auto !important; }
.jh-jats-drawer {
	inset: 4px var(--jhjr-rail-width) 0 auto !important;
	height: auto !important;
	max-height: none !important;
	background: #fff !important;
}
.jh-jats-reader-stage {
	top: 4px !important;
	right: var(--jhjr-rail-width) !important;
	bottom: 0 !important;
	left: var(--jhjr-sidebar-width) !important;
	height: auto !important;
	max-height: none !important;
}
.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage { left: var(--jhjr-sidebar-collapsed-width) !important; }
.jh-jats-reading-controls { left: calc(var(--jhjr-sidebar-width) + 18px) !important; bottom: 14px !important; }
.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls { left: calc(var(--jhjr-sidebar-collapsed-width) + 18px) !important; }

.jh-jats-drawer-backdrop {
	position: absolute;
	z-index: 760;
	inset: 4px var(--jhjr-rail-width) 0 0;
	background: rgba(7, 25, 41, .38);
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	cursor: pointer;
}
.jh-jats-drawer-backdrop[hidden] { display: none !important; }
.jh-jats-reader.is-drawer-open .jh-jats-reader-stage,
.jh-jats-reader.is-drawer-open .jh-jats-sidebar { pointer-events: none; }

.jh-jats-figure figcaption,
.jh-jats-table-wrap figcaption {
	display: block !important;
	margin: 10px 0 0 !important;
	padding: 0 !important;
	color: #095fb4 !important;
	font-family: var(--jhjr-font-reading) !important;
	font-size: .98em;
	font-weight: 600 !important;
	line-height: 1.38 !important;
	text-align: left !important;
}
.jh-jats-caption-title {
	display: inline;
	font-weight: 600;
}
.jh-jats-figure-label,
.jh-jats-table-label {
	font-weight: 700 !important;
}
.jh-jats-figure figcaption p,
.jh-jats-table-wrap figcaption p,
.jh-jats-caption p {
	display: inline;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
}

.jh-jats-sdg-card {
	position: relative;
	min-height: 216px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
}
.jh-jats-sdg-card img {
	min-height: 150px;
	background: #f8fafc;
}
.jh-jats-sdg-card.is-image-missing::before {
	content: "SDG icon file unavailable";
	display: grid;
	place-items: center;
	min-height: 150px;
	padding: 16px;
	border: 1px dashed #c8d3dd;
	border-radius: 9px;
	background: #f7f9fb;
	color: #687789;
	font-size: 14px;
	text-align: center;
}
.jh-jats-country.is-image-missing img { display: none !important; }

@media (max-width: 860px) {
	.jh-jats-reader-stage,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage { inset: 0 0 64px 0 !important; }
	.jh-jats-rail { inset: auto 0 0 0 !important; height: 64px !important; }
	.jh-jats-drawer { inset: 56px 0 64px auto !important; }
	.jh-jats-drawer-backdrop { inset: 56px 0 64px 0; }
	.jh-jats-reading-controls,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls { left: 14px !important; bottom: 72px !important; }
}

@media print {
	body.jh-jats-reader-body > :not(.jh-jats-reader) { display: none !important; }
	.jh-jats-reader { position: static !important; width: auto !important; height: auto !important; overflow: visible !important; contain: none; }
	.jh-jats-reader-stage { position: static !important; overflow: visible !important; }
}


/* ===== J-HyTEL JATS Production Suite 2.4.0 Premium Editorial Edition ===== */
:root {
	--jhjr-font-primary: "Ysabeau Office Local", "Ysabeau Office", "Ysabeau", "Segoe UI", Arial, sans-serif;
	--jhjr-font-alternate: var(--jhytel-font-display, "Perpetua", "Perpetua Titling MT", "Palatino Linotype", Georgia, serif);
	--jhjr-font-reading: var(--jhjr-font-primary);
	--jhjr-font-ui: var(--jhjr-font-reading);
	--jhjr-font-perpetua: var(--jhjr-font-reading);
	--jhjr-radius-lg: 18px;
	--jhjr-radius-md: 12px;
}

.jh-jats-reader[data-reader-font="ysabeau"] {
	--jhjr-font-reading: var(--jhjr-font-primary);
	--jhjr-font-ui: var(--jhjr-font-primary);
	--jhjr-font-perpetua: var(--jhjr-font-primary);
}
.jh-jats-reader[data-reader-font="perpetua"] {
	--jhjr-font-reading: var(--jhjr-font-alternate);
	--jhjr-font-ui: var(--jhjr-font-alternate);
	--jhjr-font-perpetua: var(--jhjr-font-alternate);
}

.jh-jats-reader,
.jh-jats-reader button,
.jh-jats-reader input,
.jh-jats-reader select,
.jh-jats-reader textarea,
.jh-jats-paper,
.jh-jats-paper *,
.jh-jats-sidebar,
.jh-jats-sidebar *,
.jh-jats-rail,
.jh-jats-rail *,
.jh-jats-drawer,
.jh-jats-drawer *,
.jh-jats-reading-controls,
.jh-jats-reading-controls * {
	font-family: var(--jhjr-font-reading) !important;
}

/* Calm, compact editorial hierarchy */
.jh-jats-article-header h1 {
	font-size: clamp(27px, 1.9vw, 34px) !important;
	line-height: 1.12 !important;
	letter-spacing: -.012em;
	max-width: 1040px;
}
.jh-jats-journal-meta > strong { font-size: 22px; font-weight: 650; }
.jh-jats-journal-meta { font-size: 16.5px; line-height: 1.4; }
.jh-jats-kicker { font-size: 13px; font-weight: 750; letter-spacing: .14em; }
.jh-jats-subtitle { font-size: clamp(18px, 1.25vw, 22px); line-height: 1.35; }
.jh-jats-article-body,
.jh-jats-abstract-block { line-height: 1.46; }
.jh-jats-article-body p,
.jh-jats-abstract-block p { margin: 0 0 .82em; }

/* Table of Contents: entirely Ysabeau by default, premium hierarchy */
.jh-jats-sidebar__heading { grid-template-columns: 34px minmax(0,1fr) 34px; gap: 5px; padding: 13px 14px 10px; }
.jh-jats-sidebar__heading h2 { font-size: 20px; line-height: 1.15; font-weight: 700; letter-spacing: -.01em; }
.jh-jats-sidebar__menu { font-size: 16px; }
.jh-jats-toc-nav a { font-size: 16.5px; line-height: 1.32; padding: 6px 0; font-weight: 500; }
.jh-jats-toc-nav a.is-active { font-weight: 750; }
.jh-jats-toc-level-2 { font-size: 15.5px !important; }
.jh-jats-toc-level-3 { font-size: 15px !important; }
.jh-jats-toc-level-4 { font-size: 14.5px !important; }
.jh-jats-toc-toggle {
	border: 1px solid #d8e2eb;
	background: #fff;
	box-shadow: 0 3px 8px rgba(11,51,87,.06);
}
.jh-jats-toc-toggle::before { border-color: #315573; }
.jh-jats-toc-toggle:hover,
.jh-jats-toc-toggle:focus-visible { background: #eaf4fb; border-color: #9ec3de; transform: translateY(-1px); }

/* Right rail and drawer typography */
.jh-jats-rail button { font-weight: 650; }
.jh-jats-rail__badge { font-weight: 750; }
.jh-jats-drawer__header h2 { font-size: 25px; line-height: 1.16; font-weight: 720; }
.jh-jats-drawer__header span { font-size: 11.5px; font-weight: 650; }
.jh-jats-metric-grid strong { font-size: 29px; font-weight: 720; }
.jh-jats-drawer-meta dt { font-size: 12px; font-weight: 750; }

/* Premium X controls for drawers, figures and tables */
.jh-jats-drawer-close,
.jh-jats-explorer__close {
	position: relative;
	width: 42px !important;
	height: 42px !important;
	min-width: 42px;
	border-radius: 50% !important;
	border: 1px solid rgba(255,255,255,.55) !important;
	background: rgba(255,255,255,.10) !important;
	box-shadow: 0 8px 22px rgba(0,0,0,.18), inset 0 0 0 1px rgba(255,255,255,.08);
	color: transparent !important;
	transition: transform 160ms ease, background 160ms ease, box-shadow 160ms ease;
}
.jh-jats-drawer-close span::before,
.jh-jats-drawer-close span::after,
.jh-jats-explorer__close span::before,
.jh-jats-explorer__close span::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: 17px;
	height: 2px;
	border-radius: 2px;
	background: #fff;
	transform-origin: center;
}
.jh-jats-drawer-close span::before,
.jh-jats-explorer__close span::before { transform: translate(-50%,-50%) rotate(45deg); }
.jh-jats-drawer-close span::after,
.jh-jats-explorer__close span::after { transform: translate(-50%,-50%) rotate(-45deg); }
.jh-jats-drawer-close:hover,
.jh-jats-drawer-close:focus-visible,
.jh-jats-explorer__close:hover,
.jh-jats-explorer__close:focus-visible {
	transform: rotate(5deg) scale(1.05);
	background: rgba(255,255,255,.20) !important;
	box-shadow: 0 10px 26px rgba(0,0,0,.24), 0 0 0 4px rgba(255,255,255,.10);
}
.jh-jats-explorer__dialog { border-radius: 18px; overflow: auto; }
.jh-jats-explorer__close { position: sticky !important; top: 0; float: right; background: var(--jhjr-navy) !important; border-color: var(--jhjr-navy) !important; }

/* SDG cards: compact icon plus short goal name */
.jh-jats-sdg-grid { grid-template-columns: 1fr; gap: 10px; }
.jh-jats-sdg-card {
	min-height: 0 !important;
	display: grid !important;
	grid-template-columns: 74px minmax(0,1fr);
	align-items: center;
	gap: 14px;
	padding: 11px 13px !important;
	border-radius: 14px;
	box-shadow: 0 6px 18px rgba(8,39,63,.065);
}
.jh-jats-sdg-card__media {
	width: 66px;
	height: 66px;
	display: grid;
	place-items: center;
	border-radius: 10px;
	overflow: hidden;
	background: #f6f8fa;
}
.jh-jats-sdg-card img {
	width: 66px !important;
	height: 66px !important;
	min-height: 0 !important;
	aspect-ratio: 1/1;
	object-fit: contain;
	background: transparent !important;
}
.jh-jats-sdg-card figcaption {
	margin: 0 !important;
	text-align: left !important;
	display: grid;
	gap: 2px;
	line-height: 1.22;
}
.jh-jats-sdg-card figcaption strong { font-size: 14px; color: #0b3357; letter-spacing: .04em; }
.jh-jats-sdg-card figcaption span { font-size: 15px; font-weight: 600; color: #28394b; }
.jh-jats-sdg-card.is-image-missing::before {
	content: "SDG" !important;
	width: 66px;
	height: 66px;
	min-height: 0 !important;
	padding: 0 !important;
	border: 1px dashed #aebdca;
	border-radius: 10px;
	font-weight: 750;
}
.jh-jats-sdg-card.is-image-missing .jh-jats-sdg-card__media { display: none; }

/* Declarations and editorial statements */
.jh-jats-declaration-section > h2,
.jh-jats-declaration-section > h3,
.jh-jats-declaration-section > h4,
.jh-jats-declaration-label,
.jh-jats-back-matter .jh-jats-section > h2,
.jh-jats-back-matter .jh-jats-section > h3,
.jh-jats-back-matter .jh-jats-section > h4 {
	font-weight: 800 !important;
	color: #102e49;
}
.jh-jats-declaration-paragraph { margin-top: 1em; }
.jh-jats-declaration-label { display: inline; }

/* References: one IEEE marker only and a cleaner hanging layout */
.jh-jats-ref-list { counter-reset: none !important; }
.jh-jats-ref-list > li {
	display: grid;
	grid-template-columns: 2.25em minmax(0,1fr);
	gap: .15em;
	padding: 0 !important;
	margin: 0 0 .72em !important;
	line-height: 1.43;
	text-align: justify;
}
.jh-jats-ref-list > li::before { display: none !important; content: none !important; }
.jh-jats-ref-marker { color: #26384a; font-weight: 500; white-space: nowrap; }
.jh-jats-ref-content { min-width: 0; }
.jh-jats-ref-content > p { display: inline; margin: 0; }
.jh-jats-ref-source { font-style: italic; }
.jh-jats-ref-list a { color: #0f62d8 !important; text-decoration: none !important; border-bottom: 1px solid rgba(15,98,216,.28); }
.jh-jats-ref-list a:hover { border-bottom-color: currentColor; }
.jh-jats-article-body a.jh-jats-xref-bibr { font-weight: 400 !important; }

/* Dedicated copyright and CC BY 4.0 card */
.jh-jats-license-card {
	margin: 40px 0 8px;
	padding: 24px 26px;
	border: 1px solid #d5dfe7;
	border-left: 4px solid var(--jhjr-blue);
	border-radius: 14px;
	background: linear-gradient(145deg,#fbfdff,#f5f9fc);
	box-shadow: 0 10px 28px rgba(9,40,65,.06);
}
.jh-jats-license-card__heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.jh-jats-license-eyebrow { display: block; margin-bottom: 4px; font-size: 11px; font-weight: 750; letter-spacing: .13em; text-transform: uppercase; color: #b06b10; }
.jh-jats-license-card h2 { margin: 0; font-size: 24px; line-height: 1.15; color: #102e49; }
.jh-jats-license-card p { margin: .8em 0 0; text-align: justify; line-height: 1.45; }
.jh-jats-license-copyright { font-weight: 650; }
.jh-jats-license-badge { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.jh-jats-license-badge > span {
	display: inline-grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border: 2px solid #17283a;
	border-radius: 50%;
	font-size: 11px;
	font-weight: 800;
	color: #17283a;
}
.jh-jats-license-badge strong { font-size: 13px; color: #17283a; }
.jh-jats-license-link { display: inline-flex; margin-top: 14px; color: #0f62d8 !important; font-weight: 650; text-decoration: none !important; }
.jh-jats-license-link::after { content: "↗"; margin-left: 6px; }

/* Author drawer: numbered accordion profiles */
.jh-jats-author-intro {
	display: flex;
	justify-content: space-between;
	gap: 14px;
	align-items: baseline;
	margin-bottom: 14px;
	padding-bottom: 12px;
	border-bottom: 1px solid #e3e9ef;
}
.jh-jats-author-intro strong { font-size: 18px; color: #102e49; }
.jh-jats-author-intro span { font-size: 13px; color: #6a7786; text-align: right; }
.jh-jats-contributor-list { gap: 10px; }
.jh-jats-contributor-card {
	display: block !important;
	padding: 0 !important;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
}
.jh-jats-contributor-card[open] { border-color: #91b6d2; box-shadow: 0 12px 30px rgba(8,39,63,.10); }
.jh-jats-contributor-summary {
	list-style: none;
	display: grid;
	grid-template-columns: 28px 50px minmax(0,1fr) 24px;
	gap: 11px;
	align-items: center;
	padding: 13px 14px;
	cursor: pointer;
	transition: background 160ms ease;
}
.jh-jats-contributor-summary::-webkit-details-marker { display: none; }
.jh-jats-contributor-summary:hover { background: #f4f8fb; }
.jh-jats-contributor-index {
	display: grid;
	place-items: center;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #eaf2f8;
	color: #0b3357;
	font-size: 13px;
	font-weight: 750;
}
.jh-jats-contributor-avatar { width: 50px; height: 50px; margin: 0 !important; }
.jh-jats-contributor-summary__text { min-width: 0; }
.jh-jats-contributor-summary h3 { margin: 1px 0 2px !important; font-size: 18px !important; line-height: 1.18; }
.jh-jats-contributor-summary__affiliation { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 13px; color: #667587; }
.jh-jats-contributor-chevron { position: relative; width: 22px; height: 22px; }
.jh-jats-contributor-chevron::before {
	content: "";
	position: absolute;
	left: 6px;
	top: 5px;
	width: 7px;
	height: 7px;
	border-right: 2px solid #47637b;
	border-bottom: 2px solid #47637b;
	transform: rotate(45deg);
	transition: transform 160ms ease, top 160ms ease;
}
.jh-jats-contributor-card[open] .jh-jats-contributor-chevron::before { top: 9px; transform: rotate(225deg); }
.jh-jats-contributor-detail { padding: 0 16px 17px 103px; border-top: 1px solid #edf1f4; }
.jh-jats-contributor-affiliations { padding-top: 13px; }
.jh-jats-contributor-affiliations > strong,
.jh-jats-contributor-bio > strong { display: block; margin-bottom: 5px; font-size: 13px; letter-spacing: .04em; color: #193b57; }
.jh-jats-contributor-contact { display: grid !important; grid-template-columns: 1fr; gap: 7px !important; margin-top: 12px !important; }
.jh-jats-contributor-contact a,
.jh-jats-contributor-contact > span {
	display: grid !important;
	grid-template-columns: 112px minmax(0,1fr);
	gap: 8px;
	align-items: center;
	padding: 8px 10px;
	border-radius: 9px;
	background: #f7f9fb;
	font-size: 13px;
}
.jh-jats-contributor-contact strong { color: #173a59; }
.jh-jats-contributor-contact span { overflow-wrap: anywhere; }
.jh-jats-country { grid-template-columns: 26px minmax(0,1fr) !important; }
.jh-jats-country > span { display: grid; }
.jh-jats-contributor-bio { margin-top: 12px; padding-top: 12px; }
.jh-jats-contributor-bio p { margin: 0 0 .65em; line-height: 1.42; }

/* More refined utility controls */
.jh-jats-reading-controls { border-radius: 16px; padding: 7px 8px; }
.jh-jats-reading-controls button { font-size: 12.5px; border-radius: 8px; }
.jh-jats-font-toggle strong { font-weight: 750; }
.jh-jats-explore-button { font-size: 13px !important; padding: 7px 13px; }

@media (max-width: 640px) {
	.jh-jats-license-card__heading { display: grid; }
	.jh-jats-license-badge { justify-self: start; }
	.jh-jats-contributor-detail { padding-left: 16px; }
	.jh-jats-author-intro { display: grid; }
	.jh-jats-author-intro span { text-align: left; }
}

/* ===== J-HyTEL JATS Production Suite 2.5.0 Final Editorial Refinement ===== */

/* One authoritative default, one discreet alternate. */
.jh-jats-reader {
	--jhjr-font-reading: var(--jhjr-font-primary);
	--jhjr-surface: #ffffff;
	--jhjr-surface-soft: #f6f8fb;
	--jhjr-surface-muted: #edf1f5;
	--jhjr-text: #172536;
	--jhjr-text-soft: #5f6f80;
	--jhjr-border: #d7e0e8;
	--jhjr-accent: #0c67ad;
	--jhjr-accent-soft: #eaf4fb;
	--jhjr-shadow-final: 0 14px 34px rgba(8,38,62,.10);
}

.jh-jats-reader[data-reader-theme="dark"] {
	--jhjr-surface: #142333;
	--jhjr-surface-soft: #1a2c3e;
	--jhjr-surface-muted: #0d1925;
	--jhjr-text: #edf4fa;
	--jhjr-text-soft: #b9c7d3;
	--jhjr-border: #31475a;
	--jhjr-accent: #67b8f2;
	--jhjr-accent-soft: #183b54;
	--jhjr-shadow-final: 0 18px 42px rgba(0,0,0,.34);
	background: #09141f !important;
	color: var(--jhjr-text) !important;
}

/* Main article identity and author/affiliation rows. */
.jh-jats-contributor-block {
	border-top: 1px solid var(--jhjr-border);
	border-bottom: 1px solid var(--jhjr-border);
	padding: 14px 0;
}
.jh-jats-authors,
.jh-jats-affiliation-row {
	display: grid;
	grid-template-columns: 28px minmax(0,1fr);
	gap: 11px;
	align-items: start;
}
.jh-jats-row-icon {
	display: inline-grid;
	place-items: center;
	width: 24px;
	height: 24px;
	color: var(--jhjr-text);
}
.jh-jats-row-icon svg,
.jh-jats-corresp svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
}
.jh-jats-author-line { min-width: 0; line-height: 1.55; }
.jh-jats-author { white-space: normal; }
.jh-jats-author__name { color: var(--jhjr-text); }
.jh-jats-author-affrefs,
.jh-jats-profile-affrefs {
	margin-left: 2px;
	font-size: .68em;
	font-weight: 500;
	line-height: 1;
	vertical-align: super;
}
.jh-jats-author-affrefs a { color: var(--jhjr-accent) !important; text-decoration: none !important; }
.jh-jats-author-affrefs a:hover { text-decoration: underline !important; }
.jh-jats-corresp {
	display: inline-flex;
	vertical-align: middle;
	margin-left: 5px;
	color: var(--jhjr-text);
}
.jh-jats-corresp svg { width: 18px; height: 18px; }
.jh-jats-affiliation-row { margin-top: 9px; }
.jh-jats-affiliations { display: grid; gap: 5px; }
.jh-jats-affiliations li {
	display: grid;
	grid-template-columns: 1.25em minmax(0,1fr);
	gap: 2px;
	margin: 0 !important;
	line-height: 1.38;
}
.jh-jats-affiliations li > sup {
	position: static;
	font-size: .72em;
	font-weight: 500;
	line-height: 1.7;
	text-align: left;
}

/* Table of contents: true level alignment, internal edge scrollbar and premium hover. */
.jh-jats-sidebar { background: var(--jhjr-surface-soft); border-color: var(--jhjr-border); color: var(--jhjr-text); }
.jh-jats-sidebar__heading h2,
.jh-jats-drawer__header h2,
.jh-jats-rail__label { font-weight: 500 !important; }
.jh-jats-sidebar__heading h2 { font-size: 18.5px !important; }
.jh-jats-toc-nav {
	padding: 4px 0 22px 12px !important;
	scrollbar-width: thin;
	scrollbar-color: #8696a5 transparent;
}
.jh-jats-toc-nav::-webkit-scrollbar { width: 7px; }
.jh-jats-toc-nav::-webkit-scrollbar-track { background: transparent; }
.jh-jats-toc-nav::-webkit-scrollbar-thumb { background: #8d9baa; border-radius: 99px; }
.jh-jats-toc-nav a {
	position: relative;
	margin: 1px 9px 1px 0;
	padding-top: 7px !important;
	padding-bottom: 7px !important;
	padding-right: 10px !important;
	border-radius: 9px;
	color: var(--jhjr-text) !important;
	font-weight: 450 !important;
	transition: background 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}
.jh-jats-toc-nav a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	bottom: 8px;
	width: 3px;
	border-radius: 99px;
	background: transparent;
	transition: background 160ms ease;
}
.jh-jats-toc-nav a:hover,
.jh-jats-toc-nav a:focus-visible {
	background: var(--jhjr-accent-soft);
	color: var(--jhjr-accent) !important;
	transform: translateX(2px);
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--jhjr-accent) 24%, transparent);
}
.jh-jats-toc-nav a.is-active {
	background: var(--jhjr-accent-soft);
	color: var(--jhjr-accent) !important;
	font-weight: 650 !important;
}
.jh-jats-toc-nav a.is-active::before { background: var(--jhjr-accent); }
.jh-jats-toc-level-1 { padding-left: 12px !important; }
.jh-jats-toc-level-2,
.jh-jats-toc-group__children > a[data-toc-level="2"] { padding-left: 28px !important; }
.jh-jats-toc-level-3,
.jh-jats-toc-group__children > a[data-toc-level="3"] { padding-left: 44px !important; }
.jh-jats-toc-level-4,
.jh-jats-toc-group__children > a[data-toc-level="4"] { padding-left: 60px !important; }
.jh-jats-toc-group__row > a { padding-left: 12px !important; }
.jh-jats-toc-toggle { margin-right: 8px; }

/* Centered scholarly figure/table labels and captions. */
.jh-jats-figure figcaption,
.jh-jats-table-wrap figcaption,
.jh-jats-caption {
	max-width: 92%;
	margin: 9px auto 12px !important;
	text-align: center !important;
	line-height: 1.35 !important;
}
.jh-jats-figure-label,
.jh-jats-table-label,
.jh-jats-caption-title {
	display: block !important;
	text-align: center !important;
}
.jh-jats-figure-label,
.jh-jats-table-label { margin-bottom: 3px; }
.jh-jats-figure-note,
.jh-jats-table-foot { text-align: center; }

/* Large tables remain inside the paper and become navigable rather than expanding it. */
.jh-jats-table-scroll {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow-x: auto;
	overflow-y: visible;
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
	border-radius: 8px;
}
.jh-jats-table-wrap.is-long-table .jh-jats-table-scroll {
	max-height: min(68vh, 720px);
	overflow-y: auto;
	border: 1px solid var(--jhjr-border);
}
.jh-jats-table-wrap.is-long-table table { border: 0; }
.jh-jats-table-wrap.is-long-table thead th {
	position: sticky;
	top: 0;
	z-index: 2;
	box-shadow: 0 1px 0 var(--jhjr-border);
}
.jh-jats-table-wrap.is-wide-table .jh-jats-table-scroll::after {
	content: "Scroll horizontally to view the complete table";
	position: sticky;
	left: 10px;
	display: inline-block;
	margin: 7px 0 0;
	padding: 4px 8px;
	border-radius: 999px;
	background: var(--jhjr-surface-soft);
	color: var(--jhjr-text-soft);
	font-size: 11.5px;
}
.jh-jats-explorer .jh-jats-table-scroll { max-height: none !important; overflow: auto !important; }

/* Right rail sits inside its own scrollbar and uses light-weight titles. */
.jh-jats-rail {
	padding: 16px 10px 10px 5px !important;
	gap: 7px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #8f9ba7 transparent;
	background: var(--jhjr-surface-soft);
	border-color: var(--jhjr-border);
}
.jh-jats-rail::-webkit-scrollbar { width: 6px; }
.jh-jats-rail::-webkit-scrollbar-track { background: transparent; }
.jh-jats-rail::-webkit-scrollbar-thumb { background: #8f9ba7; border-radius: 99px; }
.jh-jats-rail button {
	flex: 0 0 102px;
	min-height: 92px;
	background: var(--jhjr-surface);
	border-color: var(--jhjr-border);
	color: var(--jhjr-text);
	transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.jh-jats-rail button:hover,
.jh-jats-rail button:focus-visible {
	transform: translateX(-2px);
	background: var(--jhjr-accent-soft);
	border-color: var(--jhjr-accent);
	box-shadow: 0 8px 20px rgba(8,38,62,.10);
}
.jh-jats-rail__label { font-size: 16px; letter-spacing: .02em; }
.jh-jats-rail__badge { font-family: var(--jhjr-font-reading) !important; font-weight: 500 !important; }

/* Compact official CC BY presentation with no blue side bar or synthetic badge. */
.jh-jats-license-card {
	border: 1px solid var(--jhjr-border) !important;
	border-left: 1px solid var(--jhjr-border) !important;
	background: var(--jhjr-surface-soft) !important;
	box-shadow: none !important;
}
.jh-jats-license-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	background: transparent !important;
	border: 0 !important;
	text-decoration: none !important;
}
.jh-jats-license-icon img { display: block; width: 128px; max-width: 31vw; height: auto; background: transparent !important; }
.jh-jats-license-badge { display: none !important; }

/* Authors drawer: full-width alignment, no waste, visible affiliation/email, details only on demand. */
.jh-jats-author-intro {
	display: grid;
	gap: 3px;
	margin: 0 0 12px;
	padding: 0 0 12px;
	border-bottom: 1px solid var(--jhjr-border);
}
.jh-jats-author-intro > span { font-size: 16px; color: var(--jhjr-text); }
.jh-jats-author-intro small { font-size: 12.5px; line-height: 1.35; color: var(--jhjr-text-soft); }
.jh-jats-contributor-list { gap: 10px; }
.jh-jats-contributor-card {
	margin: 0;
	border: 1px solid var(--jhjr-border);
	border-radius: 14px;
	background: var(--jhjr-surface);
	box-shadow: none;
	overflow: hidden;
}
.jh-jats-contributor-card.is-corresponding { border-color: #d48716; box-shadow: inset 4px 0 0 #d48716; }
.jh-jats-contributor-card.is-open { border-color: var(--jhjr-accent); box-shadow: var(--jhjr-shadow-final); }
.jh-jats-contributor-summary {
	display: grid;
	grid-template-columns: 28px 50px minmax(0,1fr) 34px;
	gap: 10px;
	align-items: start;
	padding: 12px 12px 12px 14px;
	background: transparent;
}
.jh-jats-contributor-summary:hover { background: var(--jhjr-surface-soft); }
.jh-jats-contributor-summary__text { display: grid; gap: 3px; min-width: 0; }
.jh-jats-contributor-summary h3 {
	margin: 0 !important;
	font-size: 18px !important;
	font-weight: 550 !important;
	line-height: 1.18;
	color: var(--jhjr-text) !important;
}
.jh-jats-contributor-summary__affiliation {
	display: block;
	margin: 0 !important;
	font-size: 13px;
	line-height: 1.28;
	color: var(--jhjr-text-soft);
	white-space: normal;
	overflow: visible;
	text-overflow: clip;
}
.jh-jats-contributor-summary__affiliation sup { font-size: .72em; }
.jh-jats-contributor-summary__email {
	display: inline-block;
	width: fit-content;
	max-width: 100%;
	color: var(--jhjr-accent) !important;
	font-size: 12.7px;
	line-height: 1.25;
	overflow-wrap: anywhere;
	text-decoration: none !important;
}
.jh-jats-contributor-summary__email:hover { text-decoration: underline !important; }
.jh-jats-contributor-toggle {
	appearance: none;
	position: relative;
	width: 32px;
	height: 32px;
	margin-top: 3px;
	border: 1px solid var(--jhjr-border);
	border-radius: 10px;
	background: var(--jhjr-surface-soft);
	cursor: pointer;
	transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}
.jh-jats-contributor-toggle span::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 9px;
	width: 8px;
	height: 8px;
	border-right: 2px solid var(--jhjr-text-soft);
	border-bottom: 2px solid var(--jhjr-text-soft);
	transform: rotate(45deg);
	transition: transform 160ms ease, top 160ms ease;
}
.jh-jats-contributor-toggle:hover,
.jh-jats-contributor-toggle:focus-visible { background: var(--jhjr-accent-soft); border-color: var(--jhjr-accent); transform: translateY(-1px); }
.jh-jats-contributor-toggle[aria-expanded="true"] span::before { top: 12px; transform: rotate(225deg); }
.jh-jats-contributor-detail {
	padding: 13px 14px 15px !important;
	border-top: 1px solid var(--jhjr-border);
	background: var(--jhjr-surface-soft);
}
.jh-jats-contributor-detail[hidden] { display: none !important; }
.jh-jats-contributor-detail__grid { display: grid; gap: 13px; }
.jh-jats-contributor-identifiers { display: grid; grid-template-columns: 1fr; gap: 6px; }
.jh-jats-contributor-identifiers > a,
.jh-jats-contributor-identifiers > span {
	display: grid;
	grid-template-columns: 92px minmax(0,1fr);
	gap: 8px;
	align-items: center;
	padding: 7px 9px;
	border: 1px solid var(--jhjr-border);
	border-radius: 9px;
	background: var(--jhjr-surface);
	font-size: 13px;
	text-decoration: none !important;
}
.jh-jats-contributor-identifiers strong { color: var(--jhjr-text); font-weight: 600; }
.jh-jats-contributor-identifiers span { overflow-wrap: anywhere; }
.jh-jats-country { grid-template-columns: 24px minmax(0,1fr) !important; }
.jh-jats-country > span { display: grid; grid-template-columns: 62px minmax(0,1fr); gap: 6px; }
.jh-jats-country img { width: 20px; height: 20px; object-fit: contain; border-radius: 50%; }
.jh-jats-contributor-bio { margin: 0 !important; padding: 0 !important; border: 0 !important; }
.jh-jats-contributor-bio > strong { display: block; margin: 0 0 5px; color: var(--jhjr-text); font-size: 13px; font-weight: 650; }
.jh-jats-contributor-bio p { margin: 0 0 .55em !important; line-height: 1.42; text-align: left !important; }
.jh-jats-contributor-bio--empty { color: var(--jhjr-text-soft); }

/* Discreet utility toolbar, hidden font names, dark-mode switch and reliable controls. */
.jh-jats-reading-controls { background: color-mix(in srgb, var(--jhjr-surface) 96%, transparent); border-color: var(--jhjr-border); }
.jh-jats-reading-controls button { color: var(--jhjr-text); font-weight: 550; }
.jh-jats-font-toggle,
.jh-jats-theme-toggle { width: 38px; min-width: 38px; justify-content: center; padding-left: 0 !important; padding-right: 0 !important; }
.jh-jats-font-toggle span { font-size: 15px; font-weight: 600; letter-spacing: -.04em; text-transform: none; color: inherit; }
.jh-jats-font-toggle strong { display: none !important; }
.jh-jats-theme-toggle span { font-size: 18px; line-height: 1; }

/* Dark mode covers the paper, metadata, tables, drawers, controls and modals. */
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-reader-stage { background: #09141f; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-drawer,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-explorer__dialog { background: var(--jhjr-surface) !important; color: var(--jhjr-text) !important; border-color: var(--jhjr-border) !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper h1,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper h2,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper h3,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper h4,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper strong,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-journal-meta,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-drawer-meta dt,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-drawer-meta dd { color: var(--jhjr-text) !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-extra-metadata,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-history,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-metric-grid > div,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-document-item,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-sdg-card,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-formula-display,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-table-wrap th { background: var(--jhjr-surface-soft) !important; color: var(--jhjr-text) !important; border-color: var(--jhjr-border) !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-table-wrap td,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-table-wrap table,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-table-wrap { background: var(--jhjr-surface) !important; color: var(--jhjr-text) !important; border-color: var(--jhjr-border) !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-drawer__header { background: linear-gradient(135deg,#06111b,#102c43); }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-sidebar__formats,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-format { background: var(--jhjr-surface) !important; border-color: var(--jhjr-border) !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-format--pdf { background: #155f94 !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-format--xml { background: #9b5f14 !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-sdg-card img,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-license-icon img,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-country img { filter: none !important; }
.jh-jats-reader[data-reader-theme="dark"] a { color: #77bfff !important; }
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-drawer-note,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-metric-grid span,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-document-empty { color: var(--jhjr-text-soft) !important; }

/* Declaration labels, including the complete GenAI statement heading, remain strongly visible. */
.jh-jats-declaration-label,
.jh-jats-declaration-section > h2,
.jh-jats-declaration-section > h3,
.jh-jats-declaration-section > h4 { font-weight: 750 !important; }

/* Slightly more proportional article title. */
.jh-jats-article-header h1 { font-size: clamp(25px, 1.72vw, 32px) !important; }

@media (max-width: 640px) {
	.jh-jats-contributor-summary { grid-template-columns: 26px 44px minmax(0,1fr) 32px; gap: 8px; padding: 11px 10px; }
	.jh-jats-contributor-avatar { width: 44px; height: 44px; }
	.jh-jats-contributor-identifiers > a,
	.jh-jats-contributor-identifiers > span { grid-template-columns: 78px minmax(0,1fr); }
	.jh-jats-country { grid-template-columns: 22px minmax(0,1fr) !important; }
	.jh-jats-license-icon img { width: 112px; }
}

@media print {
	.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper,
	.jh-jats-reader[data-reader-theme="dark"] .jh-jats-paper * { background: #fff !important; color: #000 !important; }
}
.jh-jats-license-icon__fallback {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 7px 10px;
	border: 1px solid var(--jhjr-border);
	border-radius: 7px;
	background: var(--jhjr-surface);
	color: var(--jhjr-text);
	font-size: 13px;
	font-weight: 600;
}
.jh-jats-drawer__header span { font-weight: 500 !important; }

/* Neutralize legacy generic contributor div rules before applying the final card grid. */
.jh-jats-contributor-card div {
	display: block;
	margin-top: 0;
	font-size: inherit;
}
.jh-jats-contributor-card .jh-jats-contributor-summary {
	display: grid !important;
	grid-template-columns: 28px 50px minmax(0,1fr) 34px !important;
	gap: 8px !important;
	align-items: center !important;
	margin: 0 !important;
}
.jh-jats-contributor-card .jh-jats-contributor-summary__text {
	display: grid !important;
	gap: 3px !important;
	min-width: 0;
}
.jh-jats-contributor-card .jh-jats-contributor-detail { display: block !important; margin: 0 !important; }
.jh-jats-contributor-card .jh-jats-contributor-detail__grid { display: grid !important; gap: 13px !important; }
.jh-jats-contributor-card .jh-jats-contributor-identifiers { display: grid !important; gap: 6px !important; }
.jh-jats-contributor-card .jh-jats-contributor-bio { display: block !important; }
@media (max-width: 640px) {
	.jh-jats-contributor-card .jh-jats-contributor-summary { grid-template-columns: 26px 44px minmax(0,1fr) 32px !important; gap: 8px !important; }
}

/* ===== J-HyTEL JATS Production Suite 2.5.1: DOI identity + author portrait strip ===== */
.jh-jats-link-icon--doi-image {
	position: relative;
	width: 28px;
	height: 28px;
	padding: 0;
	border-radius: 0;
	background: transparent !important;
	color: #1b2d40;
	overflow: hidden;
	flex: 0 0 28px;
}

.jh-jats-link-icon--doi-image img {
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: transparent;
}

.jh-jats-doi-logo-fallback {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: #efa900;
	color: #111;
	font: 700 9px/1 Arial, sans-serif;
	text-transform: lowercase;
}

.jh-jats-doi-permalink:hover .jh-jats-link-icon--doi-image,
.jh-jats-doi-permalink:focus-visible .jh-jats-link-icon--doi-image {
	transform: translateY(-1px);
}

.jh-jats-author-portraits {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 18px 28px;
	margin: 18px 0 20px;
	padding: 2px 0 4px;
}

.jh-jats-author-portrait {
	appearance: none;
	width: 112px;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--jhjr-text, #17283a);
	font-family: var(--jhjr-font-reading) !important;
	text-align: center;
	cursor: pointer;
}

.jh-jats-author-portrait__media {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 104px;
	height: 126px;
	margin: 0 auto 7px;
	border: 1px solid #d8e0e7;
	border-radius: 3px;
	background: #edf2f6;
	box-shadow: 0 4px 14px rgba(13, 42, 68, .08);
	overflow: hidden;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.jh-jats-author-portrait__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

.jh-jats-author-portrait__media > span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 30px;
	font-weight: 600;
	color: #31516e;
	background: linear-gradient(145deg, #edf4f9, #dfeaf2);
}

.jh-jats-author-portrait__name {
	display: -webkit-box;
	min-height: 2.5em;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	color: inherit;
}

.jh-jats-author-portrait:hover .jh-jats-author-portrait__media,
.jh-jats-author-portrait:focus-visible .jh-jats-author-portrait__media {
	transform: translateY(-3px);
	border-color: #7da6c8;
	box-shadow: 0 10px 24px rgba(13, 55, 88, .15);
}

.jh-jats-author-portrait:focus-visible {
	outline: 2px solid #1d70b3;
	outline-offset: 5px;
	border-radius: 4px;
}

.jh-jats-author-portrait:hover .jh-jats-author-portrait__name,
.jh-jats-author-portrait:focus-visible .jh-jats-author-portrait__name {
	color: var(--jhjr-link, #135fa5);
}

.jh-jats-reader[data-reader-theme="dark"] .jh-jats-link-icon--doi-image img {
	filter: none !important;
}

.jh-jats-reader[data-reader-theme="dark"] .jh-jats-author-portrait {
	color: #e5edf4;
}

.jh-jats-reader[data-reader-theme="dark"] .jh-jats-author-portrait__media {
	border-color: #415467;
	background: #243746;
	box-shadow: 0 5px 16px rgba(0, 0, 0, .25);
}

.jh-jats-reader[data-reader-theme="dark"] .jh-jats-author-portrait__media > span {
	color: #dce8f1;
	background: linear-gradient(145deg, #30485b, #263b4d);
}

@media (max-width: 760px) {
	.jh-jats-author-portraits {
		flex-wrap: nowrap;
		gap: 16px;
		overflow-x: auto;
		padding: 4px 2px 12px;
		scroll-snap-type: x proximity;
	}
	.jh-jats-author-portrait {
		flex: 0 0 100px;
		width: 100px;
		scroll-snap-align: start;
	}
	.jh-jats-author-portrait__media {
		width: 94px;
		height: 114px;
	}
}

@media print {
	.jh-jats-author-portraits {
		display: flex !important;
		gap: 14px 20px !important;
		break-inside: avoid;
	}
	.jh-jats-author-portrait {
		width: 88px;
		cursor: default;
	}
	.jh-jats-author-portrait__media {
		width: 78px;
		height: 94px;
		box-shadow: none;
	}
	.jh-jats-author-portrait__name { font-size: 10px; }
}
.jh-jats-doi-logo-fallback { display: none; }
.jh-jats-link-icon--doi-image.is-missing img { display: none; }
.jh-jats-link-icon--doi-image.is-missing .jh-jats-doi-logo-fallback { display: flex; }

/* ===== J-HyTEL JATS Production Suite 2.5.2 — integrated premium polish ===== */
.jh-jats-reader {
	--jhjr-utility-width: 64px;
	--jhjr-drawer-width: 430px;
}

/* A dedicated vertical reading-control rail keeps every control outside the paper. */
@media (min-width: 861px) {
	.jh-jats-reader-stage {
		left: calc(var(--jhjr-sidebar-width) + var(--jhjr-utility-width)) !important;
		right: var(--jhjr-rail-width) !important;
		transition: left 220ms ease, right 240ms ease, filter 220ms ease, opacity 220ms ease;
	}
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage {
		left: calc(var(--jhjr-sidebar-collapsed-width) + var(--jhjr-utility-width)) !important;
	}
	.jh-jats-reading-controls,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls {
		position: fixed !important;
		top: 4px !important;
		bottom: 0 !important;
		left: var(--jhjr-sidebar-width) !important;
		width: var(--jhjr-utility-width) !important;
		height: auto !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 8px !important;
		padding: 12px 8px !important;
		border: 0 !important;
		border-right: 1px solid var(--jhjr-border) !important;
		border-radius: 0 !important;
		background: var(--jhjr-surface-soft) !important;
		box-shadow: none !important;
		overflow-y: auto;
		overflow-x: hidden;
		z-index: 620;
		transition: left 220ms ease, background 180ms ease;
	}
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls {
		left: var(--jhjr-sidebar-collapsed-width) !important;
	}
	.jh-jats-reading-controls__size {
		display: flex !important;
		flex-direction: column !important;
		width: 46px;
		border: 1px solid var(--jhjr-border) !important;
		border-radius: 13px !important;
		overflow: hidden;
		background: var(--jhjr-surface);
	}
	.jh-jats-reading-controls__size button {
		width: 44px !important;
		height: 40px !important;
		min-width: 44px !important;
		padding: 0 !important;
		border: 0 !important;
		border-bottom: 1px solid var(--jhjr-border) !important;
		border-radius: 0 !important;
	}
	.jh-jats-reading-controls__size button:last-child { border-bottom: 0 !important; }
	.jh-jats-reading-controls > button {
		width: 46px !important;
		height: 42px !important;
		min-width: 46px !important;
		padding: 0 4px !important;
		border: 1px solid var(--jhjr-border) !important;
		border-radius: 12px !important;
		background: var(--jhjr-surface) !important;
		font-size: 13px !important;
		line-height: 1 !important;
		justify-content: center;
	}
	.jh-jats-reading-controls button:hover,
	.jh-jats-reading-controls button:focus-visible {
		border-color: var(--jhjr-accent) !important;
		background: var(--jhjr-accent-soft) !important;
		color: var(--jhjr-accent) !important;
		transform: translateY(-1px);
		box-shadow: 0 7px 16px rgba(8, 46, 75, .11);
	}
	.jh-jats-control-doi span { font-size: 10.5px; font-weight: 750; letter-spacing: .03em; }
	.jh-jats-control-print span { font-size: 21px; line-height: 1; }
}

/* The right drawer becomes part of the layout on wide screens. */
@media (min-width: 1181px) {
	.jh-jats-drawer { width: var(--jhjr-drawer-width) !important; }
	.jh-jats-reader.is-drawer-open .jh-jats-reader-stage {
		right: calc(var(--jhjr-rail-width) + var(--jhjr-drawer-width)) !important;
		filter: blur(.75px) saturate(.96);
		opacity: .94;
	}
	.jh-jats-drawer-backdrop {
		left: calc(var(--jhjr-sidebar-width) + var(--jhjr-utility-width)) !important;
		right: calc(var(--jhjr-rail-width) + var(--jhjr-drawer-width)) !important;
		background: rgba(7, 24, 39, .16) !important;
		backdrop-filter: blur(1.5px);
		-webkit-backdrop-filter: blur(1.5px);
	}
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-drawer-backdrop {
		left: calc(var(--jhjr-sidebar-collapsed-width) + var(--jhjr-utility-width)) !important;
	}
}

/* The right rail stays at the viewport edge and reads as a premium navigation control. */
.jh-jats-rail {
	right: 0 !important;
	padding: 12px 7px 12px 6px !important;
	gap: 8px !important;
	background: var(--jhjr-surface-soft) !important;
	border-left: 1px solid var(--jhjr-border) !important;
	scrollbar-gutter: stable;
}
.jh-jats-rail button {
	flex: 0 0 94px !important;
	min-height: 86px !important;
	max-height: 112px !important;
	border: 1px solid var(--jhjr-border) !important;
	border-radius: 14px !important;
	background: linear-gradient(180deg, var(--jhjr-surface), var(--jhjr-surface-soft)) !important;
	box-shadow: 0 3px 10px rgba(8, 39, 63, .05) !important;
	overflow: hidden;
}
.jh-jats-rail button::after {
	content: "";
	position: absolute;
	inset: auto 9px 0;
	height: 3px;
	border-radius: 999px 999px 0 0;
	background: transparent;
	transition: background 160ms ease;
}
.jh-jats-rail button:hover,
.jh-jats-rail button:focus-visible,
.jh-jats-rail button.is-active {
	transform: translateX(-3px) !important;
	border-color: var(--jhjr-accent) !important;
	background: var(--jhjr-accent-soft) !important;
	box-shadow: 0 10px 24px rgba(8, 43, 70, .13) !important;
}
.jh-jats-rail button:hover::after,
.jh-jats-rail button:focus-visible::after,
.jh-jats-rail button.is-active::after { background: var(--jhjr-accent); }
.jh-jats-rail__badge {
	top: 10px !important;
	min-width: 24px !important;
	height: 24px !important;
	background: var(--jhjr-accent) !important;
	font-weight: 550 !important;
}
.jh-jats-rail__label {
	inset: 35px 0 7px !important;
	font-size: 14.5px !important;
	font-weight: 450 !important;
	letter-spacing: .025em !important;
}
.jh-jats-drawer {
	scrollbar-width: thin;
	scrollbar-color: #8595a5 transparent;
}
.jh-jats-drawer::-webkit-scrollbar { width: 7px; }
.jh-jats-drawer::-webkit-scrollbar-track { background: transparent; }
.jh-jats-drawer::-webkit-scrollbar-thumb { background: #8595a5; border-radius: 99px; }

/* Author identity: clear corresponding marker and reliable portrait presentation. */
.jh-jats-corresponding-star {
	margin-left: 2px;
	color: #c7770c;
	font-size: .8em;
	font-weight: 750;
	line-height: 1;
	vertical-align: super;
}
.jh-jats-author-portrait__media,
.jh-jats-contributor-avatar {
	background: linear-gradient(145deg, #edf4f9, #dfeaf2);
}
.jh-jats-author-portrait__media img,
.jh-jats-contributor-avatar img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

/* A compact author accordion: identity is visible; biography opens without wasted indentation. */
.jh-jats-drawer-panel[data-reader-drawer-panel="contributors"] { padding: 18px 14px 24px !important; }
.jh-jats-contributor-list { gap: 11px !important; }
.jh-jats-contributor-card { border-radius: 15px !important; }
.jh-jats-contributor-card .jh-jats-contributor-summary {
	grid-template-columns: 28px 54px minmax(0, 1fr) 36px !important;
	gap: 9px !important;
	align-items: center !important;
	padding: 12px 11px 12px 13px !important;
}
.jh-jats-contributor-index {
	display: inline-grid !important;
	place-items: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--jhjr-accent-soft);
	color: var(--jhjr-accent);
	font-size: 12px;
	font-weight: 650;
}
.jh-jats-contributor-avatar {
	width: 54px !important;
	height: 54px !important;
	border-radius: 50% !important;
	border: 2px solid var(--jhjr-surface) !important;
	box-shadow: 0 3px 10px rgba(8, 39, 63, .11);
	overflow: hidden;
}
.jh-jats-contributor-summary__text { gap: 2px !important; }
.jh-jats-contributor-role {
	font-size: 10.5px !important;
	font-weight: 700 !important;
	letter-spacing: .12em;
	color: #a85e08 !important;
}
.jh-jats-contributor-summary h3 {
	font-size: 17px !important;
	font-weight: 560 !important;
	line-height: 1.2 !important;
}
.jh-jats-contributor-summary__affiliation {
	font-size: 12.6px !important;
	line-height: 1.27 !important;
	max-height: 2.6em;
	overflow: hidden !important;
}
.jh-jats-contributor-summary__email { font-size: 12.4px !important; }
.jh-jats-contributor-detail {
	padding: 13px !important;
	background: var(--jhjr-surface-soft) !important;
}
.jh-jats-contributor-detail__grid { gap: 11px !important; }
.jh-jats-contributor-identifiers {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 6px !important;
}
.jh-jats-contributor-identifiers > a,
.jh-jats-contributor-identifiers > span {
	display: grid !important;
	grid-template-columns: 76px minmax(0, 1fr) !important;
	gap: 8px !important;
	align-items: center !important;
	min-width: 0;
	padding: 8px 9px !important;
	border-radius: 9px !important;
	background: var(--jhjr-surface) !important;
}
.jh-jats-country {
	display: grid !important;
	grid-template-columns: 23px minmax(0, 1fr) !important;
}
.jh-jats-country > span {
	display: grid !important;
	grid-template-columns: 68px minmax(0, 1fr) !important;
	gap: 7px !important;
	min-width: 0;
}
.jh-jats-country > span strong { white-space: nowrap; }
.jh-jats-contributor-bio {
	width: 100%;
	padding-top: 2px !important;
}
.jh-jats-contributor-bio p {
	font-size: 14.5px;
	line-height: 1.48 !important;
	text-align: justify !important;
	hyphens: none;
}

/* Article structure and declarations. */
.jh-jats-abstract-block .jh-jats-abstract > h2,
.jh-jats-abstract-block::before {
	color: #111820 !important;
	font-weight: 750 !important;
}
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-abstract-block .jh-jats-abstract > h2,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-abstract-block::before { color: var(--jhjr-text) !important; }
.jh-jats-declaration-label,
.jh-jats-declaration-section > h2,
.jh-jats-declaration-section > h3,
.jh-jats-declaration-section > h4 { font-weight: 780 !important; }

/* Citation/reference navigation is visibly interactive in both directions. */
.jh-jats-article-body a.jh-jats-xref-bibr,
.jh-jats-ref-marker,
.jh-jats-ref-backlink {
	color: #1266c5 !important;
	font-weight: 400 !important;
	text-decoration: none !important;
}
.jh-jats-article-body a.jh-jats-xref-bibr:hover,
.jh-jats-ref-backlink:hover {
	color: #084a94 !important;
	text-decoration: underline !important;
	text-underline-offset: 2px;
}
.jh-jats-ref-marker a { border-bottom: 0 !important; }
.jh-jats-ref-list > li { scroll-margin-top: 30px; }
.jh-jats-ref-list > li:target,
.jh-jats-xref-bibr:target {
	background: #fff1bf !important;
	outline: 4px solid #fff1bf;
	border-radius: 3px;
}

/* Table prose stays left-aligned; purely numeric cells are centred automatically. */
.jh-jats-table-wrap th,
.jh-jats-table-wrap td,
.jh-jats-table-wrap th p,
.jh-jats-table-wrap td p { text-align: left !important; }
.jh-jats-table-wrap th.is-numeric-cell,
.jh-jats-table-wrap td.is-numeric-cell,
.jh-jats-table-wrap th.is-numeric-cell p,
.jh-jats-table-wrap td.is-numeric-cell p { text-align: center !important; font-variant-numeric: tabular-nums; }

/* Minimal premium figure/table actions. */
.jh-jats-explore-button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 34px;
	padding: 7px 14px !important;
	border: 1px solid var(--jhjr-border) !important;
	border-radius: 999px !important;
	background: var(--jhjr-surface) !important;
	color: var(--jhjr-accent) !important;
	font-size: 12.5px !important;
	font-weight: 580 !important;
	box-shadow: 0 4px 12px rgba(8, 40, 65, .06);
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}
.jh-jats-explore-button::after { content: "↗"; font-size: 12px; }
.jh-jats-explore-button:hover,
.jh-jats-explore-button:focus-visible {
	transform: translateY(-2px);
	border-color: var(--jhjr-accent) !important;
	background: var(--jhjr-accent-soft) !important;
	box-shadow: 0 9px 22px rgba(8, 44, 72, .13);
}

/* Official CC BY artwork, presented as a neutral premium legal-information card. */
.jh-jats-license-card {
	position: relative;
	padding: 22px 24px !important;
	border: 1px solid var(--jhjr-border) !important;
	border-top: 3px solid #c88725 !important;
	border-left: 1px solid var(--jhjr-border) !important;
	border-radius: 14px !important;
	background: linear-gradient(180deg, var(--jhjr-surface), var(--jhjr-surface-soft)) !important;
	box-shadow: 0 10px 28px rgba(8, 39, 63, .07) !important;
}
.jh-jats-license-icon {
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
.jh-jats-license-icon img {
	width: 126px !important;
	max-width: 34vw;
	height: auto !important;
	filter: none !important;
}
.jh-jats-license-card h2 { font-size: 21px !important; font-weight: 620 !important; }
.jh-jats-license-card p { line-height: 1.46 !important; }

@media (max-width: 1180px) and (min-width: 861px) {
	.jh-jats-reader.is-drawer-open .jh-jats-reader-stage { filter: blur(1.2px); opacity: .9; }
	.jh-jats-drawer-backdrop {
		left: calc(var(--jhjr-sidebar-width) + var(--jhjr-utility-width)) !important;
		right: var(--jhjr-rail-width) !important;
	}
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-drawer-backdrop {
		left: calc(var(--jhjr-sidebar-collapsed-width) + var(--jhjr-utility-width)) !important;
	}
}

@media (max-width: 860px) {
	.jh-jats-reader-stage,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage {
		left: 0 !important;
		right: 0 !important;
		bottom: 64px !important;
	}
	.jh-jats-reading-controls,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reading-controls {
		left: 10px !important;
		right: 10px !important;
		bottom: 72px !important;
		top: auto !important;
		width: auto !important;
		height: auto !important;
		flex-direction: row !important;
		justify-content: flex-start !important;
		padding: 6px !important;
		border: 1px solid var(--jhjr-border) !important;
		border-radius: 14px !important;
		box-shadow: 0 8px 24px rgba(8, 38, 62, .15) !important;
		overflow-x: auto;
	}
	.jh-jats-reading-controls__size { flex-direction: row !important; width: auto; }
	.jh-jats-reading-controls__size button { border-bottom: 0 !important; border-right: 1px solid var(--jhjr-border) !important; }
	.jh-jats-reading-controls__size button:last-child { border-right: 0 !important; }
	.jh-jats-contributor-card .jh-jats-contributor-summary {
		grid-template-columns: 24px 46px minmax(0, 1fr) 32px !important;
		gap: 7px !important;
	}
	.jh-jats-contributor-avatar { width: 46px !important; height: 46px !important; }
}

@media print {
	.jh-jats-reading-controls { display: none !important; }
}


/* ===== J-HyTEL JATS Production Suite 2.5.3 editorial quality patch ===== */

/* A calmer but slightly larger, consistent reading rhythm. */
.jh-jats-reader {
	--jhjr-reading-size: 18px;
	font-size: var(--jhjr-reading-size) !important;
	line-height: 1.50 !important;
}
.jh-jats-abstract-block,
.jh-jats-article-body,
.jh-jats-back-matter {
	font-size: var(--jhjr-reading-size) !important;
	line-height: 1.50 !important;
}
.jh-jats-abstract-block p,
.jh-jats-article-body p,
.jh-jats-back-matter p {
	margin: 0 0 .72em !important;
	line-height: inherit !important;
}
.jh-jats-section { margin-top: 1.45em !important; }
.jh-jats-section > h2,
.jh-jats-section > h3,
.jh-jats-section > h4 { margin-bottom: .48em !important; }
.jh-jats-kicker {
	font-size: 17px !important;
	line-height: 1.15 !important;
	font-weight: 620 !important;
	letter-spacing: .115em !important;
}

/* Call for Papers remains useful without competing with article navigation. */
.jh-jats-cfp-link {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) 30px;
	grid-template-areas: "eyebrow icon" "title icon";
	gap: 1px 10px;
	align-items: center;
	margin: 10px 14px 12px;
	padding: 10px 11px 10px 13px;
	border: 1px solid var(--jhjr-border);
	border-radius: 11px;
	background: var(--jhjr-surface);
	color: var(--jhjr-text) !important;
	text-decoration: none !important;
	box-shadow: 0 5px 14px rgba(8, 39, 63, .055);
	transition: transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}
.jh-jats-cfp-link__eyebrow {
	grid-area: eyebrow;
	font-size: 10px;
	line-height: 1.1;
	letter-spacing: .13em;
	text-transform: uppercase;
	color: var(--jhjr-text-soft);
}
.jh-jats-cfp-link__title {
	grid-area: title;
	font-size: 15px;
	line-height: 1.2;
	font-weight: 570;
}
.jh-jats-cfp-link__icon {
	grid-area: icon;
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: var(--jhjr-accent-soft);
	color: var(--jhjr-accent);
	font-size: 15px;
}
.jh-jats-cfp-link:hover,
.jh-jats-cfp-link:focus-visible {
	transform: translateY(-1px);
	border-color: var(--jhjr-accent);
	background: var(--jhjr-accent-soft);
	box-shadow: 0 9px 22px rgba(8, 39, 63, .11);
}

/* Figure and table captions follow conventional scholarly layout. */
.jh-jats-figure figcaption,
.jh-jats-table-wrap figcaption {
	display: block !important;
	margin: 7px 0 9px !important;
	text-align: left !important;
	color: var(--jhjr-text) !important;
	font-size: .94em !important;
	line-height: 1.40 !important;
	font-weight: 400 !important;
}
.jh-jats-figure-label,
.jh-jats-table-label {
	display: inline !important;
	margin: 0 !important;
	color: var(--jhjr-text) !important;
	font-weight: 650 !important;
}
.jh-jats-caption-title {
	display: inline !important;
	color: var(--jhjr-text) !important;
	font-weight: 400 !important;
}
.jh-jats-figure figcaption p,
.jh-jats-table-wrap figcaption p {
	display: inline !important;
	margin: 0 !important;
	text-align: left !important;
}

/* One visible IEEE marker only; marker and citation links are blue and regular. */
.jh-jats-ref-list > li {
	display: grid !important;
	grid-template-columns: 2.05em minmax(0, 1fr) !important;
	column-gap: .28em !important;
	margin: 0 0 .82em !important;
	padding: 0 !important;
	text-align: left !important;
	line-height: 1.42 !important;
}
.jh-jats-ref-list > li::before { content: none !important; display: none !important; }
.jh-jats-ref-marker {
	position: static !important;
	display: inline-block !important;
	width: auto !important;
	color: #1266c5 !important;
	font-weight: 400 !important;
}
.jh-jats-ref-content {
	min-width: 0;
	text-align: justify !important;
	overflow-wrap: anywhere;
}
.jh-jats-ref-source { font-style: italic !important; }
.jh-jats-doi-link { color: #1266c5 !important; font-weight: 400 !important; }

/* Author profiles: identity first, compact details on demand, no duplicate numbering. */
.jh-jats-contributor-detail[hidden] { display: none !important; }
.jh-jats-contributor-card .jh-jats-contributor-summary {
	grid-template-columns: 58px minmax(0, 1fr) 38px !important;
	gap: 10px !important;
	padding: 13px 12px !important;
	align-items: center !important;
}
.jh-jats-contributor-index,
.jh-jats-profile-affrefs { display: none !important; }
.jh-jats-contributor-avatar {
	width: 58px !important;
	height: 58px !important;
}
.jh-jats-contributor-summary h3 {
	margin: 1px 0 2px !important;
	font-size: 17.5px !important;
	font-weight: 570 !important;
	line-height: 1.18 !important;
}
.jh-jats-contributor-summary__affiliation {
	margin: 0 !important;
	font-size: 12.8px !important;
	line-height: 1.27 !important;
	max-height: 2.55em;
	overflow: hidden !important;
}
.jh-jats-contributor-summary__email {
	display: inline-block;
	margin-top: 3px;
	font-size: 12.7px !important;
	line-height: 1.2;
	overflow-wrap: anywhere;
}
.jh-jats-contributor-detail {
	padding: 11px 12px 14px !important;
	border-top: 1px solid var(--jhjr-border);
	background: var(--jhjr-surface-soft) !important;
}
.jh-jats-contributor-detail__grid { gap: 10px !important; }
.jh-jats-contributor-identifiers { gap: 7px !important; }
.jh-jats-contributor-identifiers > a,
.jh-jats-contributor-identifiers > span {
	grid-template-columns: 72px minmax(0, 1fr) !important;
	padding: 8px 10px !important;
	border: 1px solid var(--jhjr-border);
	border-radius: 9px !important;
	background: var(--jhjr-surface) !important;
}
.jh-jats-country {
	display: grid !important;
	grid-template-columns: 72px minmax(0, 1fr) !important;
	gap: 8px !important;
	align-items: center;
}
.jh-jats-country > strong { white-space: nowrap; }
.jh-jats-country__value {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	min-width: 0;
}
.jh-jats-country__value img {
	flex: 0 0 20px;
	width: 20px !important;
	height: 20px !important;
	object-fit: contain !important;
	border-radius: 50%;
}
.jh-jats-country__value > span {
	min-width: 0;
	overflow-wrap: anywhere;
}
.jh-jats-contributor-bio {
	margin: 0 !important;
	padding: 5px 1px 0 !important;
	border: 0 !important;
}
.jh-jats-contributor-bio > strong {
	display: block;
	margin-bottom: 6px;
	font-size: 13.5px;
	font-weight: 650;
}
.jh-jats-contributor-bio p {
	margin: 0 0 .65em !important;
	font-size: 14.6px !important;
	line-height: 1.46 !important;
}

/* Neutral Biokultur-inspired licence presentation using the official SVG. */
.jh-jats-license-card {
	margin-top: 28px !important;
	padding: 20px 18px !important;
	border: 1px solid #d9e0e6 !important;
	border-top: 1px solid #d9e0e6 !important;
	border-left: 1px solid #d9e0e6 !important;
	border-radius: 0 !important;
	background: var(--jhjr-surface) !important;
	box-shadow: none !important;
}
.jh-jats-license-card__heading {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 18px;
}
.jh-jats-license-card__heading > div { display: contents; }
.jh-jats-license-eyebrow { display: none !important; }
.jh-jats-license-card h2 {
	margin: 0 !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	color: var(--jhjr-text) !important;
}
.jh-jats-license-icon {
	align-self: flex-start;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}
.jh-jats-license-icon img {
	display: block !important;
	width: 122px !important;
	max-width: 32vw;
	height: auto !important;
}
.jh-jats-license-card p {
	margin: .82em 0 0 !important;
	line-height: 1.46 !important;
	text-align: justify !important;
}
.jh-jats-license-copyright { font-weight: 430 !important; }
.jh-jats-license-link {
	margin-top: 12px !important;
	font-weight: 450 !important;
}

/* Stronger, more legible close interactions across drawers and explorers. */
.jh-jats-drawer-close,
.jh-jats-explorer__close {
	transition: transform 180ms cubic-bezier(.2,.8,.2,1), background 180ms ease, border-color 180ms ease, box-shadow 180ms ease !important;
}
.jh-jats-drawer-close:hover,
.jh-jats-drawer-close:focus-visible,
.jh-jats-explorer__close:hover,
.jh-jats-explorer__close:focus-visible {
	transform: rotate(90deg) scale(1.06) !important;
	background: #0e4774 !important;
	border-color: rgba(255,255,255,.9) !important;
	box-shadow: 0 10px 24px rgba(3,24,42,.28), 0 0 0 4px rgba(255,255,255,.12) !important;
}

/* Dark-mode parity for the neutral licence and author details. */
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-license-card,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-contributor-detail,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-contributor-identifiers > a,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-contributor-identifiers > span {
	background: var(--jhjr-surface) !important;
	border-color: var(--jhjr-border) !important;
}

@media (max-width: 860px) {
	.jh-jats-cfp-link { margin: 8px 10px; }
	.jh-jats-contributor-card .jh-jats-contributor-summary {
		grid-template-columns: 48px minmax(0, 1fr) 34px !important;
		gap: 8px !important;
	}
	.jh-jats-contributor-avatar { width: 48px !important; height: 48px !important; }
	.jh-jats-license-card__heading { align-items: center !important; }
	.jh-jats-license-icon img { width: 98px !important; }
}


/* v2.5.4 final rail, author-intro, and official PNG licence polish */
:root { --jhjr-rail-width: 72px; }
.jh-jats-rail {
	padding: 10px 8px !important;
	gap: 9px !important;
	overflow-x: hidden !important;
}
.jh-jats-rail button {
	flex: 0 0 102px !important;
	width: 54px !important;
	min-width: 54px !important;
	min-height: 96px !important;
	max-height: 108px !important;
	margin-inline: auto !important;
	border-radius: 16px !important;
	overflow: visible !important;
}
.jh-jats-rail__badge {
	top: 8px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	min-width: 25px !important;
	height: 25px !important;
	padding: 0 6px !important;
	font-size: 12.5px !important;
}
.jh-jats-rail__label {
	position: absolute !important;
	inset: 35px auto 7px 50% !important;
	width: max-content !important;
	max-width: 86px !important;
	transform: translateX(-50%) rotate(-90deg) !important;
	transform-origin: center !important;
	font-size: 15.5px !important;
	line-height: 1 !important;
	letter-spacing: .01em !important;
	white-space: nowrap !important;
	overflow: visible !important;
	text-overflow: clip !important;
}
.jh-jats-rail button:hover,
.jh-jats-rail button:focus-visible,
.jh-jats-rail button.is-active { transform: translateX(-2px) scale(1.02) !important; }
.jh-jats-author-intro {
	margin: 0 0 14px !important;
	padding: 0 1px 13px !important;
	border-bottom: 1px solid var(--jhjr-border) !important;
}
.jh-jats-author-intro > span {
	display: block;
	font-size: 20px !important;
	font-weight: 580 !important;
	line-height: 1.18;
	color: var(--jhjr-text);
}
.jh-jats-author-intro > small {
	display: block;
	margin-top: 5px;
	font-size: 14px !important;
	line-height: 1.38;
	color: var(--jhjr-muted);
}
.jh-jats-license-icon img {
	width: 126px !important;
	max-width: 34vw !important;
	object-fit: contain !important;
	background: transparent !important;
}
.jh-jats-contributor-identifiers > a[aria-disabled="true"] { display:none !important; }
@media (max-width: 860px) {
	:root { --jhjr-rail-width: 0px; }
	.jh-jats-rail button { width: auto !important; min-width: 72px !important; min-height: 54px !important; }
	.jh-jats-rail__label { position: static !important; transform: none !important; width: auto !important; max-width: none !important; }
}

/* ===== J-HyTEL JATS Production Suite 2.5.5 — license consolidation and publisher note ===== */
.jh-jats-license-terms {
	max-width: 100%;
	margin-top: .72em !important;
	text-align: justify !important;
	text-wrap: pretty;
}
.jh-jats-publisher-note {
	margin: 28px 0 0 !important;
	padding: 20px 22px !important;
	border: 1px solid color-mix(in srgb, var(--jhjr-border) 88%, #0e4774 12%) !important;
	border-radius: 12px !important;
	background: color-mix(in srgb, var(--jhjr-surface) 96%, #eef6fb 4%) !important;
	box-shadow: 0 10px 28px rgba(14, 47, 74, .055) !important;
}
.jh-jats-publisher-note > h2,
.jh-jats-publisher-note > h3,
.jh-jats-publisher-note > h4 {
	margin: 0 0 10px !important;
	font-size: 1.14em !important;
	font-weight: 650 !important;
	letter-spacing: .01em;
	color: var(--jhjr-text) !important;
}
.jh-jats-publisher-note p {
	margin: 0 !important;
	line-height: 1.48 !important;
	text-align: justify !important;
}
.jh-jats-publisher-note a {
	color: var(--jhjr-link) !important;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-publisher-note {
	background: color-mix(in srgb, var(--jhjr-surface) 96%, #173a55 4%) !important;
	border-color: var(--jhjr-border) !important;
	box-shadow: none !important;
}
@media print {
	.jh-jats-publisher-note {
		border: 1px solid #bbb !important;
		border-radius: 0 !important;
		background: #fff !important;
		box-shadow: none !important;
		break-inside: avoid;
	}
}

/* ===== J-HyTEL JATS Production Suite 2.5.8 — final rail and metadata polish ===== */
/* Restore the compact vertical scholarly-tool labels without clipping long words. */
@media (min-width: 861px) {
	:root { --jhjr-rail-width: 68px; }
	.jh-jats-rail {
		width: var(--jhjr-rail-width) !important;
		padding: 11px 8px !important;
		gap: 10px !important;
		align-items: center !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
	}
	.jh-jats-rail button {
		position: relative !important;
		flex: 0 0 106px !important;
		width: 58px !important;
		min-width: 58px !important;
		min-height: 100px !important;
		max-height: 108px !important;
		margin: 0 auto !important;
		padding: 8px 4px !important;
		border-radius: 18px !important;
		overflow: visible !important;
	}
	.jh-jats-rail__badge {
		top: 8px !important;
		left: 50% !important;
		right: auto !important;
		transform: translateX(-50%) !important;
		z-index: 2;
	}
	.jh-jats-rail__label {
		position: absolute !important;
		left: 50% !important;
		top: 61% !important;
		right: auto !important;
		bottom: auto !important;
		width: max-content !important;
		max-width: none !important;
		transform: translate(-50%, -50%) rotate(-90deg) !important;
		transform-origin: center !important;
		font-size: 15.5px !important;
		font-weight: 460 !important;
		line-height: 1 !important;
		letter-spacing: .015em !important;
		white-space: nowrap !important;
		overflow: visible !important;
		text-overflow: clip !important;
	}
}

/* Left-aligned, compact author drawer introduction. */
.jh-jats-author-intro {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	padding: 0 0 13px !important;
	text-align: left !important;
}
.jh-jats-author-intro > span,
.jh-jats-author-intro > small {
	display: block !important;
	width: 100% !important;
	text-align: left !important;
}
.jh-jats-author-intro > span {
	margin: 0 !important;
	font-size: 20px !important;
	font-weight: 560 !important;
}
.jh-jats-author-intro > small {
	margin: 5px 0 0 !important;
	font-size: 13.8px !important;
	line-height: 1.4 !important;
}

/* Publisher note and Copyright & License use one consistent editorial card language. */
.jh-jats-license-card,
.jh-jats-publisher-note {
	margin: 28px 0 0 !important;
	padding: 20px 22px !important;
	border: 1px solid color-mix(in srgb, var(--jhjr-border) 88%, #0e4774 12%) !important;
	border-radius: 14px !important;
	background: color-mix(in srgb, var(--jhjr-surface) 97%, #eef6fb 3%) !important;
	box-shadow: 0 10px 28px rgba(14, 47, 74, .055) !important;
}
.jh-jats-license-card h2,
.jh-jats-publisher-note > h2,
.jh-jats-publisher-note > h3,
.jh-jats-publisher-note > h4 {
	margin: 0 0 10px !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.18 !important;
	letter-spacing: .005em !important;
	color: var(--jhjr-text) !important;
}
.jh-jats-license-card p,
.jh-jats-publisher-note p {
	line-height: 1.47 !important;
	text-align: justify !important;
}
.jh-jats-license-terms a,
.jh-jats-license-link,
.jh-jats-publisher-note a {
	color: var(--jhjr-link) !important;
	font-weight: 450 !important;
	text-decoration: underline !important;
	text-decoration-thickness: 1px !important;
	text-underline-offset: 3px !important;
	overflow-wrap: anywhere;
}
.jh-jats-license-terms a:hover,
.jh-jats-license-terms a:focus-visible,
.jh-jats-license-link:hover,
.jh-jats-license-link:focus-visible,
.jh-jats-publisher-note a:hover,
.jh-jats-publisher-note a:focus-visible {
	text-decoration-thickness: 2px !important;
}
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-license-card,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-publisher-note {
	background: color-mix(in srgb, var(--jhjr-surface) 96%, #173a55 4%) !important;
	border-color: var(--jhjr-border) !important;
	box-shadow: none !important;
}

@media (max-width: 860px) {
	.jh-jats-rail__label {
		position: static !important;
		width: auto !important;
		max-width: none !important;
		transform: none !important;
		font-size: 13px !important;
		white-space: nowrap !important;
	}
	.jh-jats-author-intro > span { font-size: 18px !important; }
	.jh-jats-license-card,
	.jh-jats-publisher-note { padding: 17px 16px !important; border-radius: 12px !important; }
	.jh-jats-license-card h2,
	.jh-jats-publisher-note > h2,
	.jh-jats-publisher-note > h3,
	.jh-jats-publisher-note > h4 { font-size: 20px !important; }
}

@media print {
	.jh-jats-license-card,
	.jh-jats-publisher-note {
		border: 1px solid #bbb !important;
		border-radius: 0 !important;
		background: #fff !important;
		box-shadow: none !important;
	}
}

/* ===== J-HyTEL JATS Production Suite 2.5.8 — slim vertical right rail =====
 * Desktop/tablet copies the compact reference-reader geometry: slim neutral rail,
 * individually rounded tabs, circular count badge, and a fully rotated word label.
 * The declarations are deliberately late and !important so OJS theme rules cannot
 * turn the labels horizontal or clip long words such as References.
 */
@media (min-width: 861px) {
	:root { --jhjr-rail-width: 68px; }
	.jh-jats-rail,
	.jh-jats-rail.is-vertical {
		position: fixed !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		z-index: 100003 !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: var(--jhjr-rail-width) !important;
		padding: 10px 7px 16px !important;
		gap: 8px !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		background: #f3f6f8 !important;
		border-left: 1px solid #dbe4eb !important;
		box-shadow: -8px 0 24px rgba(18, 48, 74, .035) !important;
		scrollbar-width: thin;
		scrollbar-color: #9ca8b2 transparent;
	}
	.jh-jats-rail::-webkit-scrollbar { width: 5px !important; }
	.jh-jats-rail::-webkit-scrollbar-track { background: transparent !important; }
	.jh-jats-rail::-webkit-scrollbar-thumb { background: #9ca8b2 !important; border-radius: 99px !important; }
	.jh-jats-rail button,
	.jh-jats-rail.is-vertical button {
		position: relative !important;
		display: block !important;
		flex: 0 0 106px !important;
		width: 50px !important;
		min-width: 50px !important;
		height: 106px !important;
		min-height: 106px !important;
		max-height: 106px !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 1px solid #d7e1e8 !important;
		border-radius: 16px !important;
		background: #fbfcfd !important;
		color: #18344e !important;
		box-shadow: 0 3px 12px rgba(22, 53, 78, .045) !important;
		overflow: visible !important;
		transform: none !important;
		transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease !important;
	}
	.jh-jats-rail button::after { display: none !important; }
	.jh-jats-rail button:hover,
	.jh-jats-rail button:focus-visible {
		border-color: #8db5d6 !important;
		background: #f4f9fd !important;
		box-shadow: 0 8px 22px rgba(19, 73, 113, .12) !important;
		transform: translateX(-2px) !important;
		outline: none !important;
	}
	.jh-jats-rail button.is-active,
	.jh-jats-rail button[aria-expanded="true"] {
		border-color: #2477b8 !important;
		background: #eef6fc !important;
		box-shadow: 0 0 0 2px rgba(36, 119, 184, .12), 0 8px 22px rgba(19, 73, 113, .10) !important;
	}
	.jh-jats-rail__badge,
	.jh-jats-rail.is-vertical .jh-jats-rail__badge {
		position: absolute !important;
		top: 8px !important;
		left: 50% !important;
		right: auto !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 27px !important;
		height: 27px !important;
		min-width: 27px !important;
		padding: 0 4px !important;
		border: 0 !important;
		border-radius: 999px !important;
		background: #0876bd !important;
		color: #fff !important;
		font-family: var(--jhjr-font-reading) !important;
		font-size: 12.5px !important;
		font-weight: 600 !important;
		line-height: 1 !important;
		transform: translateX(-50%) !important;
		box-shadow: none !important;
		z-index: 2 !important;
	}
	.jh-jats-rail__label,
	.jh-jats-rail.is-vertical .jh-jats-rail__label {
		position: absolute !important;
		left: 50% !important;
		top: 68px !important;
		right: auto !important;
		bottom: auto !important;
		display: block !important;
		width: max-content !important;
		max-width: none !important;
		height: auto !important;
		margin: 0 !important;
		padding: 0 !important;
		-webkit-writing-mode: horizontal-tb !important;
		writing-mode: horizontal-tb !important;
		text-orientation: initial !important;
		transform: translate(-50%, -50%) rotate(-90deg) !important;
		transform-origin: center center !important;
		font-family: var(--jhjr-font-reading) !important;
		font-size: 15px !important;
		font-weight: 430 !important;
		line-height: 1 !important;
		letter-spacing: .01em !important;
		white-space: nowrap !important;
		overflow: visible !important;
		text-overflow: clip !important;
		color: #17344e !important;
	}
}

@media (max-width: 860px) {
	.jh-jats-rail,
	.jh-jats-rail.is-horizontal {
		display: flex !important;
		flex-direction: row !important;
		align-items: stretch !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}
	.jh-jats-rail.is-horizontal button {
		position: relative !important;
		flex: 0 0 auto !important;
		width: auto !important;
		min-width: 76px !important;
		height: 54px !important;
		min-height: 54px !important;
		padding: 7px 10px !important;
	}
	.jh-jats-rail.is-horizontal .jh-jats-rail__badge {
		position: static !important;
		transform: none !important;
		margin: 0 auto 3px !important;
	}
	.jh-jats-rail.is-horizontal .jh-jats-rail__label {
		position: static !important;
		inset: auto !important;
		display: block !important;
		width: auto !important;
		max-width: none !important;
		-webkit-writing-mode: horizontal-tb !important;
		writing-mode: horizontal-tb !important;
		transform: none !important;
		font-size: 13px !important;
		white-space: nowrap !important;
	}
}

/* ===== J-HyTEL JATS Production Suite 2.5.9 — Scopus identity and corresponding contact ===== */
.jh-jats-scopus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-left: 4px;
	border: 1px solid rgba(255,255,255,.72);
	border-radius: 50%;
	background: #f28c28;
	box-shadow: 0 1px 3px rgba(122,68,8,.18);
	color: #fff !important;
	font-family: Arial, sans-serif !important;
	font-size: 10px;
	font-weight: 750;
	line-height: 1;
	text-decoration: none !important;
	vertical-align: middle;
	transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.jh-jats-scopus:hover,
.jh-jats-scopus:focus-visible {
	background: #df7712;
	box-shadow: 0 3px 8px rgba(122,68,8,.28);
	outline: 2px solid rgba(242,140,40,.26);
	outline-offset: 2px;
	transform: translateY(-1px);
}
.jh-jats-corresponding-contact {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 5px;
	margin: 8px 0 0;
	padding-left: 39px;
	font-size: 15px;
	line-height: 1.38;
	color: var(--jhjr-text-soft);
}
.jh-jats-corresponding-contact__label {
	font-style: italic;
	font-weight: 500;
	color: var(--jhjr-text);
}
.jh-jats-corresponding-contact a {
	font-style: normal !important;
	font-weight: 450;
	color: var(--jhjr-accent) !important;
	text-decoration: none !important;
	overflow-wrap: anywhere;
}
.jh-jats-corresponding-contact a:hover,
.jh-jats-corresponding-contact a:focus-visible {
	text-decoration: underline !important;
	text-underline-offset: 2px;
}
@media (max-width: 720px) {
	.jh-jats-corresponding-contact { padding-left: 35px; font-size: 14px; }
}
@media print {
	.jh-jats-scopus { border: 1px solid #d57412 !important; background: transparent !important; color: #d57412 !important; box-shadow: none !important; }
	.jh-jats-corresponding-contact { padding-left: 0 !important; }
}

/* ===== J-HyTEL JATS Production Suite 2.5.10 — Ysabeau Office normal-Q shaping ===== */
/* Keep the Office-oriented Q from stylistic set 02 while preserving the font's
 * native ligatures, contextual shaping, italic forms, and heading character. */
.jh-jats-reader[data-reader-font="ysabeau"],
.jh-jats-reader[data-reader-font="ysabeau"] button,
.jh-jats-reader[data-reader-font="ysabeau"] input,
.jh-jats-reader[data-reader-font="ysabeau"] select,
.jh-jats-reader[data-reader-font="ysabeau"] textarea,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-paper,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-sidebar,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-rail,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-drawer,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-reading-controls {
	font-variant-ligatures: normal !important;
	font-feature-settings: "ss02" 1 !important;
	font-synthesis: weight style !important;
}

/* ===== J-HyTEL JATS Production Suite 2.5.11 — licence navigation ===== */
.jh-jats-toc-nav .jh-jats-toc-license {
  margin-top: 4px;
  border-top: 1px solid rgba(83, 112, 137, .16);
  padding-top: 10px !important;
}
.jh-jats-toc-nav .jh-jats-toc-license::after {
  content: "↘";
  margin-left: auto;
  padding-left: 8px;
  font-size: .82em;
  opacity: .55;
}
.jh-jats-toc-nav .jh-jats-toc-license:hover::after,
.jh-jats-toc-nav .jh-jats-toc-license:focus-visible::after,
.jh-jats-toc-nav .jh-jats-toc-license.is-active::after {
  opacity: .95;
}

/* ===== J-HyTEL JATS Production Suite 2.5.12 — matched editorial-card headings ===== */
/* Keep Copyright & License typographically identical to Publisher’s and Journal’s Note,
 * even when the active OJS theme applies a stronger generic section-heading rule. */
.jh-jats-reader .jh-jats-license-card h2,
.jh-jats-reader .jh-jats-publisher-note > h2,
.jh-jats-reader .jh-jats-publisher-note > h3,
.jh-jats-reader .jh-jats-publisher-note > h4 {
	font-family: var(--jhjr-font-reading) !important;
	font-size: 22px !important;
	font-style: normal !important;
	font-weight: 650 !important;
	line-height: 1.18 !important;
	letter-spacing: .005em !important;
	color: var(--jhjr-text) !important;
}
.jh-jats-reader .jh-jats-license-card h2 {
	text-shadow: none !important;
}
@media (max-width: 860px) {
	.jh-jats-reader .jh-jats-license-card h2,
	.jh-jats-reader .jh-jats-publisher-note > h2,
	.jh-jats-reader .jh-jats-publisher-note > h3,
	.jh-jats-reader .jh-jats-publisher-note > h4 {
		font-size: 20px !important;
	}
}

/* ===== J-HyTEL JATS Production Suite 2.5.13 — reading fidelity, metadata fallback, and integrated rail ===== */

/* Keep Ysabeau Office's normal-Q stylistic set without disabling the font's
 * ordinary ligatures, contextual shaping, or the intended Research Article face. */
.jh-jats-reader[data-reader-font="ysabeau"],
.jh-jats-reader[data-reader-font="ysabeau"] button,
.jh-jats-reader[data-reader-font="ysabeau"] input,
.jh-jats-reader[data-reader-font="ysabeau"] select,
.jh-jats-reader[data-reader-font="ysabeau"] textarea,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-paper,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-sidebar,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-rail,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-drawer,
.jh-jats-reader[data-reader-font="ysabeau"] .jh-jats-reading-controls {
	font-variant-ligatures: normal !important;
	font-feature-settings: "ss02" 1 !important;
	font-synthesis: weight style !important;
}

/* Stable article-type treatment after restoring the font's native shaping. */
.jh-jats-reader .jh-jats-kicker {
	font-family: var(--jhjr-font-reading) !important;
	font-size: 17px !important;
	font-style: normal !important;
	font-variant: normal !important;
	font-variant-caps: normal !important;
	font-weight: 620 !important;
	line-height: 1.18 !important;
	letter-spacing: .105em !important;
	text-transform: none !important;
	color: var(--jhjr-orange) !important;
}

/* Biokultur-like reading rhythm: balanced paragraphs with no automatic word
 * splitting. Long DOI/URL elements retain their own overflow-wrap rules. */
.jh-jats-reader,
.jh-jats-reader * {
	-webkit-hyphens: none !important;
	-ms-hyphens: none !important;
	hyphens: none !important;
}
.jh-jats-abstract-block,
.jh-jats-article-body,
.jh-jats-back-matter {
	font-size: var(--jhjr-reading-size) !important;
	line-height: 1.49 !important;
}
.jh-jats-abstract-block p,
.jh-jats-article-body p,
.jh-jats-back-matter p {
	margin: 0 0 .66em !important;
	line-height: inherit !important;
	word-break: normal !important;
	text-wrap: pretty;
}
.jh-jats-section { margin-top: 1.34em !important; margin-bottom: 1.08em !important; }
.jh-jats-section > h2 { margin: 1.12em 0 .43em !important; }
.jh-jats-section > h3 { margin: .98em 0 .38em !important; }
.jh-jats-section > h4,
.jh-jats-section > h5 { margin: .86em 0 .34em !important; }

/* Third-level headings such as 2.1.1 use an italic scholarly hierarchy. */
.jh-jats-section.jh-jats-level-3 > h4,
.jh-jats-section.jh-jats-level-3 > h5 {
	font-style: italic !important;
	font-weight: 590 !important;
}
.jh-jats-toc-nav .jh-jats-toc-level-3 { font-style: italic !important; }

/* Country is serialized semantically as a separate JATS element and displayed
 * with a clean comma: Institution, United Arab Emirates / Institution, Indonesia. */
.jh-jats-affiliations li > span { white-space: normal; }

/* The main scroll container reaches the viewport edge. The vertical tools live
 * inside that canvas, immediately before the far-right article scrollbar. */
@media (min-width: 861px) {
	.jh-jats-reader-stage,
	.jh-jats-reader.is-sidebar-collapsed .jh-jats-reader-stage {
		right: 0 !important;
		padding-right: calc(var(--jhjr-rail-width) + 52px) !important;
		transition: left 220ms ease, padding-right 240ms ease, background 180ms ease !important;
		filter: none !important;
		opacity: 1 !important;
	}
	.jh-jats-rail,
	.jh-jats-rail.is-vertical {
		right: 14px !important;
		top: 4px !important;
		bottom: 0 !important;
		height: auto !important;
		z-index: 790 !important;
		scrollbar-width: none !important;
	}
	.jh-jats-rail::-webkit-scrollbar { display: none !important; width: 0 !important; }
	.jh-jats-drawer {
		right: calc(var(--jhjr-rail-width) + 14px) !important;
		z-index: 785 !important;
	}
	.jh-jats-reader.is-drawer-open .jh-jats-reader-stage,
	.jh-jats-reader.is-sidebar-collapsed.is-drawer-open .jh-jats-reader-stage {
		right: 0 !important;
		padding-right: calc(var(--jhjr-rail-width) + var(--jhjr-drawer-width) + 66px) !important;
		filter: none !important;
		opacity: 1 !important;
	}
	.jh-jats-drawer-backdrop { display: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
	.jh-jats-reader.is-drawer-open .jh-jats-reader-stage,
	.jh-jats-reader.is-drawer-open .jh-jats-sidebar { pointer-events: auto !important; }
}

/* The zoom variable is set on the reader by JavaScript; keep every major text
 * container connected to it instead of freezing at a later patch value. */
.jh-jats-reader,
.jh-jats-paper,
.jh-jats-abstract-block,
.jh-jats-article-body,
.jh-jats-back-matter { font-size: var(--jhjr-reading-size) !important; }

@media print {
	.jh-jats-reader,
	.jh-jats-reader * {
		-webkit-hyphens: none !important;
		-ms-hyphens: none !important;
		hyphens: none !important;
	}
}

/* ===== J-HyTEL JATS Production Suite 2.5.14 — conservative PDF figures and precise tertiary headings ===== */

/* Only visible decimal headings with at least three levels (for example 2.1.1)
 * use the italic tertiary treatment. Structural level alone is intentionally
 * ignored because Word heading styles and visible numbering do not always match. */
.jh-jats-reader .jh-jats-section.jh-jats-level-3 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-level-3 > h5,
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-level-3 {
	font-style: normal !important;
}
.jh-jats-reader .jh-jats-section.jh-jats-tertiary-heading > h2,
.jh-jats-reader .jh-jats-section.jh-jats-tertiary-heading > h3,
.jh-jats-reader .jh-jats-section.jh-jats-tertiary-heading > h4,
.jh-jats-reader .jh-jats-section.jh-jats-tertiary-heading > h5,
.jh-jats-reader .jh-jats-section.jh-jats-tertiary-heading > h6,
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-tertiary {
	font-style: italic !important;
	font-weight: 560 !important;
}

/* Transparent diagrams must retain a white viewing surface in light mode,
 * dark mode, explorer drawers, figure/table modals, and print output. */
.jh-jats-reader .jh-jats-figure .jh-jats-graphic,
.jh-jats-reader .jh-jats-explorer .jh-jats-graphic,
.jh-jats-reader .jh-jats-document-list img,
.jh-jats-reader .jh-jats-media-modal img,
.jh-jats-reader .jh-jats-explorer__body img {
	background-color: #fff !important;
	background-image: none !important;
}
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-figure,
.jh-jats-reader[data-reader-theme="dark"] .jh-jats-explorer__body .jh-jats-figure {
	background: #fff !important;
	border-radius: 10px;
}
@media print {
	.jh-jats-figure,
	.jh-jats-figure img,
	.jh-jats-graphic { background: #fff !important; }
}


/* ===== J-HyTEL JATS Production Suite 2.5.17 — uppercase article type ===== */
/* Present the article type as a compact editorial kicker while retaining the
 * same Ysabeau Office font features and spacing used by the reader. */
.jh-jats-reader .jh-jats-kicker {
	text-transform: uppercase !important;
}


/* ===== J-HyTEL JATS Production Suite 2.5.18 — exact map navigation and heading hierarchy ===== */

/* All two-part decimal subsections (1.1, 1.2, 2.1, 5.2, etc.) use one
 * consistent bold scale regardless of their Word heading tag or nesting. */
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-2 > h2,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-2 > h3,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-2 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-2 > h5,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-2 > h6 {
	font-size: 1.42em !important;
	line-height: 1.22 !important;
	font-style: normal !important;
	font-weight: 730 !important;
	letter-spacing: -.012em !important;
	margin: 1.05em 0 .38em !important;
}

/* Only headings with three or more visible number components (1.1.1,
 * 2.1.2, 3.2.1.1) receive the bold-italic tertiary treatment. */
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-3 > h2,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-3 > h3,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-3 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-3 > h5,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-3 > h6,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-4 > h2,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-4 > h3,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-4 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-4 > h5,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-4 > h6,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-5 > h2,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-5 > h3,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-5 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-5 > h5,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-5 > h6,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-6 > h2,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-6 > h3,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-6 > h4,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-6 > h5,
.jh-jats-reader .jh-jats-section.jh-jats-number-depth-6 > h6 {
	font-size: 1.18em !important;
	line-height: 1.28 !important;
	font-style: italic !important;
	font-weight: 720 !important;
	letter-spacing: -.006em !important;
	margin: .92em 0 .34em !important;
}

.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-number-depth-2 {
	font-style: normal !important;
	font-weight: 600 !important;
}
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-number-depth-3,
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-number-depth-4,
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-number-depth-5,
.jh-jats-reader .jh-jats-toc-nav .jh-jats-toc-number-depth-6 {
	font-style: italic !important;
	font-weight: 650 !important;
}

/* Exact table/reference/figure targets remain visually discoverable after a
 * drawer jump without changing document order or requiring XML regeneration. */
.jh-jats-reader .jh-jats-figure:focus,
.jh-jats-reader .jh-jats-table-wrap:focus,
.jh-jats-reader .jh-jats-ref-list > li:focus {
	outline: 2px solid rgba(15, 98, 216, .35) !important;
	outline-offset: 5px !important;
}
.jh-jats-navigation-spacer {
	display: block;
	width: 100%;
	min-height: 0;
	pointer-events: none;
}
