/* ============================================================
   PREMIUM ELEGANT THEME - Jurnal Jagad Alimussirry
   Deep forest green + gold accent, serif elegance
   Override dengan !important untuk beat inline styles
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700;800&family=Source+Serif+Pro:wght@400;600;700&family=Inter:wght@400;500;600;700&display=swap');

/* ---------- Design Tokens ---------- */
:root {
	--green-deep: #01880d;
	--green: #01880d;
	--green-lift: #06b30f;
	--green-soft: rgba(1, 136, 13, 0.10);
	--green-tint: #f0f8f1;
	--gold: #c9a961;
	--gold-lift: #d9bd7a;
	--cream: #faf8f3;
	--paper: #ffffff;
	--ink: #1c2823;
	--ink-soft: rgba(28, 40, 35, 0.62);
	--ink-muted: rgba(28, 40, 35, 0.40);
	--line: #e6ebe8;
	--line-soft: rgba(46, 89, 73, 0.10);
	--shadow-xs: 0 1px 2px rgba(28, 40, 35, 0.05);
	--shadow-sm: 0 2px 10px rgba(28, 40, 35, 0.06);
	--shadow-md: 0 8px 28px rgba(28, 40, 35, 0.08);
	--shadow-lg: 0 20px 56px rgba(28, 40, 35, 0.12);
	--shadow-green: 0 12px 36px rgba(46, 89, 73, 0.22);
	--radius-sm: 6px;
	--radius: 10px;
	--radius-lg: 16px;
	--radius-xl: 22px;
	--serif: 'Playfair Display', Georgia, serif;
	--body: 'Source Serif Pro', Georgia, serif;
	--sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* ---------- Base Reset ---------- */
* { box-sizing: border-box; }

html, body {
	font-family: var(--body);
	font-size: 16px;
	line-height: 1.75;
	color: var(--ink);
	background: var(--cream);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin: 0;
	padding: 0;
}

body { letter-spacing: 0.005em; overflow-x: hidden; }

a {
	color: var(--green);
	text-decoration: none;
	transition: color .2s ease;
}
a:hover, a:focus { color: var(--green-lift); }

h1, h2, h3, h4, h5, h6 {
	font-family: var(--serif);
	font-weight: 700;
	color: var(--ink);
	line-height: 1.3;
	letter-spacing: -0.01em;
}

img { max-width: 100%; height: auto; }

::selection { background: var(--green); color: #fff; }

/* ---------- Page Layout ---------- */
.pkp_structure_page {
	max-width: 1240px;
	margin: 0 auto;
	background: var(--paper);
	box-shadow: var(--shadow-lg);
	overflow: hidden;
	position: relative;
}

@media (min-width: 1200px) {
	.pkp_structure_page {
		margin: 24px auto;
		border-radius: var(--radius-lg);
	}
}

/* ============================================================
   HEADER - Deep green gradient
   ============================================================ */
.pkp_structure_head {
	background: linear-gradient(135deg, #01690a 0%, #01880d 50%, #06b30f 100%) !important;
	border-bottom: none !important;
	box-shadow: 0 6px 24px rgba(1, 136, 13, 0.30);
	position: relative;
}

.pkp_structure_head::before {
	content: '';
	position: absolute;
	inset: 0;
	background-image:
		radial-gradient(circle at 20% 50%, rgba(255,255,255,0.05) 0%, transparent 40%),
		radial-gradient(circle at 80% 20%, rgba(201,169,97,0.08) 0%, transparent 40%);
	pointer-events: none;
}

.pkp_head_wrapper {
	position: relative;
	padding-top: 0 !important;
}

/* Site name wrapper */
.pkp_site_name_wrapper {
	background: transparent !important;
	padding: 32px 40px !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.10);
	height: auto !important;
}

@media (min-width: 992px) {
	.pkp_site_name_wrapper { padding: 44px 56px 36px !important; }
	.has_site_logo .pkp_head_wrapper { padding-top: 36px !important; }
}

/* Site name / logo */
.pkp_site_name {
	position: relative !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	padding: 0 !important;
	overflow: visible !important;
	text-overflow: clip !important;
	white-space: normal !important;
	text-align: left;
}

/* Mobile: beri ruang untuk tombol toggle di kiri */
@media (max-width: 991px) {
	.pkp_site_name {
		padding-left: 64px !important;
		position: relative !important;
		overflow: visible !important;
		white-space: normal !important;
		text-overflow: clip !important;
	}
	.pkp_site_name .is_text {
		font-size: 1.1rem !important;
		line-height: 1.3 !important;
		display: block !important;
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: clip !important;
		word-wrap: break-word !important;
		overflow-wrap: break-word !important;
	}
}

.pkp_site_name .is_text {
	font-family: var(--serif) !important;
	font-size: 1.6rem !important;
	font-weight: 700 !important;
	letter-spacing: -0.02em;
	color: #fff !important;
	text-transform: none !important;
	line-height: 1.25 !important;
	text-decoration: none !important;
	display: inline-block;
	padding: 0 !important;
}

.pkp_site_name .is_img {
	display: inline-block !important;
	padding: 0 !important;
	margin: 0 !important;
}
.pkp_site_name .is_img img {
	max-height: 100px !important;
	max-width: 100% !important;
	border-radius: var(--radius-sm);
	display: block;
}

@media (min-width: 992px) {
	.pkp_site_name .is_text {
		font-size: 2.2rem !important;
	}
	.pkp_site_name .is_img img { max-height: 110px !important; }
}

/* Primary nav row */
.pkp_navigation_primary_row {
	background: rgba(0, 0, 0, 0.22) !important;
	padding: 0 40px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

@media (min-width: 992px) {
	.pkp_navigation_primary_row { padding: 0 56px !important; }
}

.pkp_navigation_primary_wrapper {
	padding-left: 0 !important;
	padding-right: 0 !important;
	max-width: 100% !important;
}

#navigationPrimary {
	a {
		font-family: var(--sans) !important;
		font-size: 0.82rem !important;
		font-weight: 600 !important;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		color: rgba(255, 255, 255, 0.92) !important;
	}
	> li > a {
		padding: 16px 18px !important;
		margin: 0 !important;
		border-bottom: 3px solid transparent !important;
		transition: all .2s ease;
	}
	> li > a:hover,
	> li > a:focus {
		border-color: var(--gold) !important;
		color: #fff !important;
		background: rgba(255, 255, 255, 0.08) !important;
	}
	ul {
		background: var(--paper) !important;
		border-radius: var(--radius) !important;
		box-shadow: var(--shadow-lg) !important;
		border: 1px solid var(--line) !important;
		padding: 8px 0 !important;
		min-width: 240px;
		a {
			padding: 11px 20px !important;
			color: var(--ink) !important;
			font-weight: 500 !important;
			font-size: 0.88rem !important;
			text-transform: none !important;
			letter-spacing: 0 !important;
			border-left: 3px solid transparent !important;
			transition: all .15s ease;
		}
		a:hover, a:focus {
			background: var(--green-tint) !important;
			border-left-color: var(--green) !important;
			color: var(--green) !important;
		}
	}
}

@media (min-width: 992px) {
	#navigationPrimary { display: inline-block !important; max-width: 82% !important; text-align: left; }
	#navigationPrimary > li:hover ul { left: 8px !important; }
}

/* User nav */
.pkp_navigation_user_wrapper {
	a {
		font-family: var(--sans) !important;
		font-size: 0.8rem !important;
		font-weight: 600 !important;
		letter-spacing: 0.04em;
	}
}

@media (min-width: 992px) {
	.pkp_navigation_user_wrapper {
		top: 18px !important;
		right: 56px !important;
		left: auto !important;
		transform: none !important;
		padding: 0 !important;
		a { color: rgba(255, 255, 255, 0.88) !important; }
		a:hover { color: var(--gold-lift) !important; }
	}
}

/* Search */
.pkp_navigation_search_wrapper {
	a {
		font-family: var(--sans) !important;
		font-size: 0.82rem !important;
		font-weight: 600 !important;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}
}

@media (min-width: 992px) {
	.pkp_navigation_search_wrapper {
		float: right !important;
		a {
			color: rgba(255, 255, 255, 0.92) !important;
			padding: 16px 18px !important;
			margin: 0 !important;
			border-bottom: 3px solid transparent !important;
		}
		.pkp_navigation_search_wrapper a:hover,
		a:hover {
			border-color: var(--gold) !important;
			color: #fff !important;
			background: rgba(255, 255, 255, 0.08) !important;
		}
	}
}

/* Mobile toggle */
.pkp_site_nav_toggle {
	width: 44px !important;
	height: 44px !important;
	border: 0 !important;
	background: rgba(255, 255, 255, 0.12) !important;
	border-radius: var(--radius-sm);
	top: 14px !important;
	left: 14px !important;
	z-index: 100;
}
.pkp_site_nav_toggle > span {
	border-bottom: 2px solid #fff !important;
	width: 20px !important;
	height: 14px !important;
}
.pkp_site_nav_toggle > span::before,
.pkp_site_nav_toggle > span::after {
	height: 2px !important;
	background: #fff !important;
}

/* Mobile menu */
.pkp_site_nav_menu {
	background: #01690a !important;
	padding: 16px 24px !important;
}

/* ============================================================
   CONTENT MAIN
   ============================================================ */
.pkp_structure_content { padding-top: 0 !important; }

.pkp_structure_main {
	padding: 40px 32px !important;
	background: var(--paper) !important;
	float: none !important;
	width: 100% !important;
}

@media (min-width: 768px) {
	.pkp_structure_main { padding: 52px 48px !important; }
}

@media (min-width: 992px) {
	.pkp_structure_main {
		padding: 56px 56px 72px !important;
		width: calc(100% - 320px) !important;
		float: left !important;
	}
}

/* Remove default borders */
.pkp_structure_main::before,
.pkp_structure_main::after { display: none !important; }

/* Headings */
.pkp_structure_main h1 {
	font-family: var(--serif) !important;
	font-size: 2.1rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	margin: 0 0 1.2rem !important;
	color: var(--ink) !important;
}
.pkp_structure_main h2 {
	font-family: var(--serif) !important;
	font-size: 1.5rem !important;
	font-weight: 600 !important;
	margin: 2.5rem 0 1.2rem !important;
	color: var(--ink) !important;
}
.pkp_structure_main h3 {
	font-family: var(--serif) !important;
	font-size: 1.2rem !important;
	font-weight: 600 !important;
	margin: 1.8rem 0 0.9rem !important;
}
.pkp_structure_main h4 {
	font-family: var(--sans) !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	margin: 1.4rem 0 0.7rem !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--ink-soft) !important;
}
.pkp_structure_main p {
	line-height: 1.85 !important;
	margin: 1.1rem 0 !important;
	color: var(--ink) !important;
	font-size: 1rem !important;
}

/* ============================================================
   HOMEPAGE - About section jadi hero elegan
   ============================================================ */
.pkp_page_index .page_index_journal { padding: 0; }

.pkp_page_index .homepage_about {
	padding: 56px 0 48px !important;
	max-width: 780px;
	margin: 0 auto;
}
.pkp_page_index .homepage_about h2 {
	font-family: var(--serif) !important;
	font-size: 1.8rem !important;
	font-weight: 700 !important;
	margin: 0 0 1.5rem !important;
	color: var(--ink) !important;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid var(--gold);
	display: inline-block;
}
.pkp_page_index .homepage_about p {
	font-size: 1.05rem !important;
	color: var(--ink-soft) !important;
	line-height: 1.85 !important;
	margin: 1.2rem 0 !important;
}
.pkp_page_index .homepage_about strong {
	color: var(--green-deep) !important;
	font-weight: 700 !important;
}
.pkp_page_index .homepage_about a {
	color: var(--green) !important;
	font-weight: 600 !important;
	border-bottom: 1px dotted var(--green);
}
.pkp_page_index .homepage_about a:hover {
	color: var(--green-lift) !important;
	border-bottom-style: solid;
}

/* Section title shared style */
.pkp_page_index .current_issue h2,
.pkp_page_index .cmp_announcements h2 {
	display: inline-block;
	padding-bottom: 0.4em;
	border-bottom: 2px solid var(--gold) !important;
	text-transform: none !important;
	font-family: var(--serif) !important;
	font-weight: 700 !important;
	font-size: 1.6rem !important;
	color: var(--ink) !important;
	letter-spacing: -0.01em;
}

/* Announcements */
.pkp_page_index .cmp_announcements {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	margin: 32px 0 !important;
	padding: 36px !important;
	background: var(--cream) !important;
	box-shadow: var(--shadow-sm) !important;
}

/* Current issue */
.pkp_page_index .current_issue { padding: 40px 0 !important; }
.pkp_page_index .current_issue .current_issue_title {
	font-family: var(--serif) !important;
	font-size: 1.3rem !important;
	font-weight: 500 !important;
	font-style: italic;
	color: var(--ink-soft) !important;
	margin: 12px 0 28px !important;
}

/* ============================================================
   ARTICLE SUMMARY - card style elegan
   ============================================================ */
.obj_article_summary {
	padding: 26px 0 !important;
	border-bottom: 1px solid var(--line) !important;
	transition: background .2s ease;
}
.obj_article_summary:hover { background: var(--green-tint); }
.obj_article_summary > .title {
	font-family: var(--serif) !important;
	font-size: 1.2rem !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	margin-bottom: 0.4em !important;
}
.obj_article_summary > .title a {
	color: var(--ink) !important;
	transition: color .2s ease;
}
.obj_article_summary > .title a:hover { color: var(--green) !important; }
.obj_article_summary .subtitle {
	font-family: var(--body) !important;
	font-size: 0.98rem !important;
	color: var(--ink-soft) !important;
	font-style: italic;
	margin-bottom: 0.8em !important;
}
.obj_article_summary .authors {
	font-family: var(--sans) !important;
	font-size: 0.9rem !important;
	color: var(--ink-soft) !important;
	font-weight: 500;
}
.obj_article_summary .meta {
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	color: var(--ink-muted) !important;
}
.obj_article_summary .pages,
.obj_article_summary .published {
	font-family: var(--sans) !important;
	font-size: 0.8rem !important;
	font-weight: 500;
	letter-spacing: 0.04em;
}
.obj_article_summary .galleys_links { margin-top: 14px !important; }
.obj_article_summary .galleys_links li { margin-right: 8px !important; display: inline-block !important; }
.obj_article_summary .cover {
	border-radius: var(--radius) !important;
	overflow: hidden;
	box-shadow: var(--shadow-sm) !important;
}
.obj_article_summary .cover img {
	border-radius: var(--radius);
	transition: transform .4s ease;
}
.obj_article_summary:hover .cover img { transform: scale(1.04); }

/* ============================================================
   ARTICLE DETAILS
   ============================================================ */
.obj_article_details > .page_title {
	font-family: var(--serif) !important;
	font-size: 2.2rem !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	color: var(--ink) !important;
	margin-bottom: 0.6rem !important;
}
.obj_article_details > .subtitle {
	font-family: var(--body) !important;
	font-size: 1.1rem !important;
	font-style: italic;
	color: var(--ink-soft) !important;
}
.obj_article_details .authors {
	font-family: var(--sans) !important;
	font-size: 1rem !important;
}
.obj_article_details .authors .name {
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	color: var(--ink) !important;
}
.obj_article_details .authors .affiliation {
	font-size: 0.88rem !important;
	color: var(--ink-muted) !important;
	font-style: italic;
}
.obj_article_details .authors li {
	margin-bottom: 16px !important;
	padding-bottom: 16px !important;
	border-bottom: 1px solid var(--line) !important;
}
.obj_article_details .authors li:last-child { border-bottom: none !important; }

.obj_article_details .main_entry .label,
.obj_article_details .item .label {
	display: inline-block !important;
	font-family: var(--sans) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--green) !important;
	padding-bottom: 6px !important;
	border-bottom: 2px solid var(--gold) !important;
	margin-bottom: 14px !important;
}

.obj_article_details .row,
.obj_article_details .main_entry,
.obj_article_details .entry_details {
	border: none !important;
}

.obj_article_details .entry_details {
	background: var(--cream) !important;
	border-radius: var(--radius-lg) !important;
	padding: 8px !important;
	margin: 28px 0 0 !important;
	box-shadow: var(--shadow-sm) !important;
}
.obj_article_details .entry_details .item {
	background: var(--paper) !important;
	border-radius: var(--radius) !important;
	padding: 22px !important;
	margin-bottom: 10px !important;
	box-shadow: var(--shadow-xs) !important;
	border: 1px solid var(--line) !important;
}
.obj_article_details .entry_details .item:last-child { margin-bottom: 0 !important; }
.obj_article_details .entry_details .item > .label,
.obj_article_details .entry_details .sub_item:first-child > .label {
	background: transparent !important;
	border-radius: 0 !important;
	padding: 0 0 6px !important;
	border-bottom: 2px solid var(--gold) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--green) !important;
}
.obj_article_details .entry_details .item > .value,
.obj_article_details .entry_details .sub_item .value {
	padding: 12px 0 0 !important;
	border-radius: 0 !important;
	font-size: 0.92rem !important;
	line-height: 1.7 !important;
}
.obj_article_details .entry_details .sub_item:not(:first-child) .label {
	display: inline-block !important;
	padding: 4px 0 !important;
	margin: 0 !important;
	border-bottom: 2px solid var(--gold) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	color: var(--green) !important;
}
.obj_article_details .entry_details .item.copyright {
	background: transparent !important;
	box-shadow: none !important;
	border: none !important;
	font-size: 0.85rem !important;
	color: var(--ink-muted) !important;
}

@media (min-width: 768px) {
	.obj_article_details .entry_details {
		width: 100% !important;
		margin-left: 0 !important;
	}
}

/* DOI / keywords */
.obj_article_details .doi a,
.obj_article_details .orcid a {
	color: var(--green) !important;
	text-decoration: none !important;
	border-bottom: 1px dotted var(--green);
}
.obj_article_details .doi a:hover {
	color: var(--green-lift) !important;
	border-bottom-style: solid;
}

/* Citation box */
.obj_article_details .citation_display .citation_formats {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
	overflow: hidden;
}
.obj_article_details .citation_display .citation_formats_button {
	padding: 12px 16px !important;
	background: var(--cream) !important;
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	color: var(--ink-soft) !important;
	border-bottom: 1px solid var(--line) !important;
}

/* ============================================================
   ISSUE TOC
   ============================================================ */
.obj_issue_toc { padding-top: 16px !important; }
.obj_issue_toc .heading .pub_id,
.obj_issue_toc .heading .published {
	font-family: var(--sans) !important;
	font-size: 0.85rem !important;
}
.obj_issue_toc .heading .pub_id .type,
.obj_issue_toc .heading .published .label {
	font-weight: 700 !important;
	color: var(--green) !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-size: 0.74rem !important;
}
.obj_issue_toc .heading .pub_id .id a {
	color: var(--ink) !important;
	text-decoration: none !important;
}
.obj_issue_toc .heading .pub_id .id a:hover {
	color: var(--green) !important;
	text-decoration: underline !important;
}

.obj_issue_toc .cover img {
	border-radius: var(--radius-lg) !important;
	box-shadow: var(--shadow-md) !important;
}

.obj_issue_toc > .galleys,
.obj_issue_toc .section {
	margin: 36px 0 !important;
	padding: 28px 0 0 !important;
	border: none !important;
	border-top: 1px solid var(--line) !important;
}
.obj_issue_toc > .galleys::before,
.obj_issue_toc .section::before { display: none !important; }

.obj_issue_toc > .galleys h2,
.obj_issue_toc .section h2 {
	position: relative !important;
	display: inline-block !important;
	top: auto !important;
	left: auto !important;
	padding: 0 0 6px !important;
	border-bottom: 2px solid var(--gold) !important;
	background: transparent !important;
	text-transform: uppercase;
	font-family: var(--sans) !important;
	font-weight: 700 !important;
	font-size: 0.86rem !important;
	letter-spacing: 0.12em;
	color: var(--green) !important;
}

.obj_issue_toc .galleys_links li { margin-bottom: 8px !important; }
.obj_issue_toc .pages {
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	color: var(--ink-muted) !important;
}

@media (min-width: 768px) {
	.obj_issue_toc .galleys,
	.obj_issue_toc .section {
		margin: 36px 0 !important;
		padding: 28px 0 0 !important;
	}
	.obj_issue_toc .galleys::before,
	.obj_issue_toc .section::before { display: none !important; }
	.obj_issue_toc .galleys > h2,
	.obj_issue_toc .section > h2 {
		left: 0 !important;
		padding: 0 0 6px !important;
		background: transparent !important;
	}
}

/* ============================================================
   ISSUE SUMMARY - archive cards grid
   ============================================================ */
.obj_issue_summary {
	padding: 24px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	margin-bottom: 0 !important;
	box-shadow: var(--shadow-xs) !important;
	transition: all .3s ease;
	height: 100%;
}
.obj_issue_summary:hover {
	box-shadow: var(--shadow-md) !important;
	transform: translateY(-3px);
	border-color: var(--green-soft) !important;
}
.obj_issue_summary .cover img {
	border-radius: var(--radius) !important;
	box-shadow: var(--shadow-sm) !important;
	transition: transform .4s ease;
}
.obj_issue_summary:hover .cover img { transform: scale(1.03); }
.obj_issue_summary h2 {
	font-family: var(--serif) !important;
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	margin: 0 0 6px !important;
}
.obj_issue_summary .title {
	font-family: var(--serif) !important;
	font-weight: 600 !important;
	color: var(--ink) !important;
}
.obj_issue_summary .title:hover { color: var(--green) !important; }
.obj_issue_summary .series {
	font-family: var(--sans) !important;
	font-size: 0.78rem !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--green) !important;
	font-weight: 600 !important;
	margin-bottom: 8px !important;
}
.obj_issue_summary .description {
	font-size: 0.9rem !important;
	color: var(--ink-soft) !important;
	line-height: 1.65 !important;
}

/* Issue archive grid */
.page_issue_archive .issues_archive,
.page_issue_archive .issues_archive > li {
	border: none !important;
}
.page_issue_archive .issues_archive {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 20px !important;
	margin: 32px 0 !important;
	padding: 0 !important;
}
@media (min-width: 768px) {
	.page_issue_archive .issues_archive {
		grid-template-columns: 1fr 1fr !important;
	}
}
.page_issue_archive .issues_archive > li {
	padding: 0 !important;
	border: none !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	transition: all .3s ease;
	overflow: hidden;
}
.page_issue_archive .issues_archive > li:hover {
	box-shadow: var(--shadow-md) !important;
	transform: translateY(-3px);
	border-color: var(--green-soft) !important;
}
.page_issue_archive .obj_issue_summary {
	border: none !important;
	border-radius: 0 !important;
	margin-bottom: 0 !important;
	height: 100%;
}

/* ============================================================
   SEARCH PAGE
   ============================================================ */
.page_search .search_advanced {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	padding: 26px 30px !important;
	background: var(--cream) !important;
	box-shadow: var(--shadow-xs) !important;
}
.page_search .search_advanced legend {
	font-family: var(--serif) !important;
	font-size: 1.2rem !important;
	font-weight: 600 !important;
	padding: 0 12px !important;
	color: var(--ink) !important;
}
.page_search .search_input .query {
	border-radius: var(--radius) !important;
	border: 2px solid var(--line) !important;
	padding: 12px 16px !important;
	font-family: var(--body) !important;
	font-size: 1.05rem !important;
}
.page_search .search_input .query:focus {
	border-color: var(--green) !important;
	outline: none;
	box-shadow: 0 0 0 3px var(--green-soft) !important;
}
.page_search .search_results { margin: 36px 0 !important; }
.page_search .search_results .obj_article_summary {
	padding: 22px 26px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
	margin-bottom: 14px !important;
	box-shadow: var(--shadow-xs) !important;
}

/* ============================================================
   BUTTONS
   ============================================================ */
.cmp_manuscript_button,
.obj_galley_link,
.block_make_submission a {
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	font-size: 0.82rem !important;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	background: var(--green) !important;
	color: #fff !important;
	border: none !important;
	border-radius: var(--radius-pill) !important;
	padding: 11px 24px !important;
	box-shadow: 0 4px 14px rgba(46, 89, 73, 0.28);
	transition: all .25s ease;
	display: inline-block;
	text-decoration: none !important;
}
.cmp_manuscript_button:hover,
.obj_galley_link:hover,
.block_make_submission a:hover,
.cmp_manuscript_button:focus,
.obj_galley_link:focus,
.block_make_submission a:focus {
	background: var(--green-lift) !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 22px rgba(46, 89, 73, 0.36);
}

.obj_galley_link.restricted {
	background: #e8eae8 !important;
	color: var(--ink-soft) !important;
	box-shadow: none;
}
.obj_galley_link.restricted:hover {
	background: var(--ink-soft) !important;
	color: #fff !important;
}

/* Read more */
.read_more,
.obj_announcement_summary .read_more,
.pkp_page_index .current_issue .read_more {
	font-family: var(--sans) !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--green) !important;
}
.read_more:hover { color: var(--green-lift) !important; }

/* ============================================================
   BREADCRUMBS
   ============================================================ */
.cmp_breadcrumbs {
	padding: 22px 0 0 !important;
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	color: var(--ink-muted) !important;
	text-transform: none !important;
	letter-spacing: 0.02em;
}
.cmp_breadcrumbs .current h1 {
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	font-weight: 500 !important;
	color: var(--ink-soft) !important;
}
.cmp_breadcrumbs a {
	color: var(--ink-soft) !important;
	font-weight: 500;
}
.cmp_breadcrumbs a:hover { color: var(--green) !important; }
.cmp_breadcrumbs .separator { opacity: 0.4; padding: 0 0.5em; }

/* ============================================================
   SIDEBAR - FIX BERANTAKAN
   ============================================================ */
.pkp_structure_sidebar {
	overflow: hidden;
}

@media (min-width: 992px) {
	.pkp_structure_sidebar {
		float: right !important;
		width: 320px !important;
		background: var(--cream) !important;
		border-left: 1px solid var(--line) !important;
		padding: 0 !important;
	}
}

.pkp_block {
	padding: 28px 24px !important;
	border-bottom: 1px solid var(--line) !important;
	font-size: 0.9rem !important;
}

.pkp_block .title {
	display: block !important;
	font-family: var(--sans) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--green) !important;
	padding-bottom: 10px !important;
	margin-bottom: 16px !important;
	border-bottom: 2px solid var(--gold) !important;
}

.pkp_block .content {
	font-size: 0.88rem !important;
	line-height: 1.65 !important;
	color: var(--ink-soft) !important;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.pkp_block .content ul li {
	padding: 8px 0 !important;
	border-bottom: 1px solid var(--line-soft) !important;
	line-height: 1.5 !important;
}
.pkp_block .content ul li:last-child { border-bottom: none !important; }
.pkp_block a {
	color: var(--ink) !important;
	text-decoration: none !important;
	transition: color .2s ease;
}
.pkp_block a:hover { color: var(--green) !important; }

.block_make_submission {
	padding: 24px !important;
}
.block_make_submission a {
	display: block !important;
	text-align: center !important;
	padding: 13px 22px !important;
}

.block_browse .has_submenu {
	font-family: var(--sans) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--green) !important;
}

/* ---- CUSTOM BLOCK SIDEBAR FIX (override inline styles) ---- */
.pkp_block.block_custom .content {
	font-size: 0.86rem !important;
	color: var(--ink-soft) !important;
	line-height: 1.6 !important;
}
.pkp_block.block_custom .content p { margin: 0.7rem 0 !important; }
.pkp_block.block_custom .content h1,
.pkp_block.block_custom .content h2,
.pkp_block.block_custom .content h3,
.pkp_block.block_custom .content h4 {
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--green) !important;
	margin: 0.9rem 0 0.4rem !important;
}

/* Override inline style background-color:#01880d (hijau neon) -> premium green */
.pkp_block.block_custom [style*="background-color: #01880d"],
.pkp_block.block_custom [style*="background-color:#01880d"] {
	background-color: var(--green-deep) !important;
	color: #fff !important;
	border-radius: var(--radius-sm) !important;
	padding: 8px 12px !important;
	margin: 6px 0 !important;
	font-family: var(--sans) !important;
	font-size: 0.78rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	text-align: center !important;
	border: none !important;
}
.pkp_block.block_custom [style*="background-color: #01880d"] a,
.pkp_block.block_custom [style*="background-color:#01880d"] a {
	color: #fff !important;
	text-decoration: none !important;
	font-weight: 700 !important;
}
.pkp_block.block_custom [style*="background-color: #01880d"] a:hover,
.pkp_block.block_custom [style*="background-color:#01880d"] a:hover {
	color: var(--gold-lift) !important;
}

/* Override inline border #01880d solid -> premium */
.pkp_block.block_custom [style*="border: 1px #01880d solid"],
.pkp_block.block_custom [style*="border:1px #01880d solid"] {
	border: 1px solid var(--green-soft) !important;
	background-color: var(--paper) !important;
	border-radius: var(--radius-sm) !important;
	padding: 8px 12px !important;
	margin: 4px 0 !important;
	text-align: center !important;
}
.pkp_block.block_custom [style*="border: 1px #01880d solid"] a,
.pkp_block.block_custom [style*="border:1px #01880d solid"] a {
	color: var(--green) !important;
	font-weight: 600 !important;
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	text-decoration: none !important;
}
.pkp_block.block_custom [style*="border: 1px #01880d solid"] a:hover,
.pkp_block.block_custom [style*="border:1px #01880d solid"] a:hover {
	color: var(--green-lift) !important;
}

/* Fix gambar indexing yang kebesaran (322px) & favicon (670px) - restrict ke sidebar width */
.pkp_block.block_custom .content img {
	max-width: 100% !important;
	height: auto !important;
	width: auto !important;
	max-height: 70px !important;
	object-fit: contain !important;
	display: inline-block !important;
	margin: 3px 2px !important;
	border-radius: 4px;
}

/* Override inline width attribute pada gambar indexing */
.pkp_block.block_custom .content img[width="322"],
.pkp_block.block_custom .content img[width="325"],
.pkp_block.block_custom .content img[width="670"],
.pkp_block.block_custom .content img[width="120"] {
	width: auto !important;
	max-width: 100% !important;
	max-height: 70px !important;
	height: auto !important;
}

/* Favicon/journal image besar */
.pkp_block.block_custom .content img[src*="favicon_en_US"] {
	max-width: 100% !important;
	max-height: 120px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	border-radius: var(--radius) !important;
}

/* Container gambar indexing - flex wrap agar tidak overflow */
.pkp_block.block_custom .content center,
.pkp_block.block_custom .content center > div {
	display: flex !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 4px !important;
	text-align: center !important;
	max-width: 100% !important;
	overflow: hidden;
}

.pkp_block.block_custom .content center > div {
	width: 100% !important;
}

/* Flag counter fix */
.pkp_block.block_custom .content img[src*="flagcounter"] {
	max-width: 100% !important;
	max-height: none !important;
	width: 100% !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-sm);
}

/* Sertifikat image fix */
.pkp_block.block_custom .content img[src*="polkesma"],
.pkp_block.block_custom .content img[src*="img115"] {
	max-width: 100% !important;
	max-height: none !important;
	width: 100% !important;
	border-radius: var(--radius) !important;
	margin-bottom: 12px !important;
}

/* Template/doc image fix */
.pkp_block.block_custom .content img[src*="doc-flat"],
.pkp_block.block_custom .content img[src*="text-plain"] {
	max-width: 80px !important;
	max-height: 80px !important;
}

/* Remove nested broken sidebar structure styling */
.pkp_block.block_custom .content .pkp_structure_sidebar,
.pkp_block.block_custom .content .pkp_block {
	padding: 0 !important;
	border: none !important;
	margin: 0 !important;
}
.pkp_block.block_custom .content .pkp_block .title {
	display: none !important;
}

/* ISSN box styling */
.pkp_block.block_custom .content [style*="ISSN"] {
	font-family: var(--sans) !important;
}

/* ============================================================
   FOOTER
   ============================================================ */
.pkp_structure_footer_wrapper {
	background: linear-gradient(135deg, #01690a 0%, #01880d 100%) !important;
	border-top: 3px solid var(--gold) !important;
	border-bottom: none !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.85) !important;
}
.pkp_structure_footer_wrapper::before {
	content: '';
	display: block;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--gold), transparent);
	opacity: 0.5;
}
.pkp_structure_footer {
	padding: 40px 40px !important;
	text-align: center !important;
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 20px;
}
@media (min-width: 768px) {
	.pkp_structure_footer { padding: 48px 56px !important; }
}
.pkp_footer_content {
	padding: 0 !important;
	text-align: center !important;
	color: rgba(255, 255, 255, 0.78) !important;
	font-size: 0.88rem !important;
	line-height: 1.7 !important;
	flex: 1 1 320px;
}
.pkp_footer_content a { color: var(--gold-lift) !important; }
.pkp_footer_content a:hover { color: #fff !important; }
.pkp_footer_content h1, .pkp_footer_content h2, .pkp_footer_content h3 {
	color: #fff !important;
	font-family: var(--serif) !important;
}
.pkp_footer_content p { color: rgba(255, 255, 255, 0.78) !important; }

.pkp_brand_footer {
	padding: 0 !important;
	float: none !important;
	a {
		float: none !important;
		display: inline-block !important;
		opacity: 0.7;
		transition: opacity .2s ease;
		max-width: 140px !important;
	}
	a:hover { opacity: 1; }
	img { border-radius: var(--radius-sm); }
}

/* ============================================================
   PAGINATION
   ============================================================ */
.cmp_pagination {
	font-family: var(--sans) !important;
	padding: 22px 0 !important;
	font-size: 0.85rem !important;
}
.cmp_pagination a {
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--green) !important;
	padding: 7px 14px !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-sm) !important;
	transition: all .2s ease;
}
.cmp_pagination a:hover {
	background: var(--green) !important;
	color: #fff !important;
	border-color: var(--green) !important;
}

/* ============================================================
   NOTIFICATION
   ============================================================ */
.cmp_notification {
	background: var(--green-tint) !important;
	border: none !important;
	border-left: 4px solid var(--green) !important;
	border-radius: var(--radius) !important;
	padding: 18px 22px !important;
	box-shadow: var(--shadow-xs) !important;
	font-size: 0.95rem !important;
}

/* ============================================================
   FORMS
   ============================================================ */
.cmp_form legend {
	font-family: var(--serif) !important;
	font-size: 1.25rem !important;
	font-weight: 600 !important;
	color: var(--ink) !important;
}
.cmp_form label {
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	color: var(--ink) !important;
	font-size: 0.9rem !important;
}
.cmp_form .label {
	font-family: var(--sans) !important;
	font-style: normal !important;
	font-size: 0.8rem !important;
	color: var(--ink-muted) !important;
}
.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form input[type="url"],
.cmp_form input[type="tel"],
.cmp_form select,
.cmp_form textarea {
	border: 2px solid var(--line) !important;
	border-radius: var(--radius) !important;
	padding: 10px 14px !important;
	font-family: var(--body) !important;
	font-size: 0.95rem !important;
}
.cmp_form input[type="text"]:focus,
.cmp_form input[type="email"]:focus,
.cmp_form input[type="password"]:focus,
.cmp_form input[type="url"]:focus,
.cmp_form input[type="tel"]:focus,
.cmp_form select:focus,
.cmp_form textarea:focus {
	border-color: var(--green) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px var(--green-soft) !important;
}

/* Login/register */
.page_login .login,
.page_lost_password .lost_password,
.page_register form {
	padding: 36px 40px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	box-shadow: var(--shadow-md) !important;
	max-width: 480px !important;
}
.page_login h1, .page_register h1, .page_lost_password h1 {
	font-family: var(--serif) !important;
	font-size: 1.7rem !important;
	text-align: center;
	margin-bottom: 24px !important;
}

/* ============================================================
   PAGE TITLES (sub-pages)
   ============================================================ */
.page .page_title,
.pkp_structure_main .page > h1 {
	font-family: var(--serif) !important;
	font-size: 1.9rem !important;
	font-weight: 700 !important;
	color: var(--ink) !important;
	margin: 0 0 1.4rem !important;
	padding-bottom: 0.5rem;
	border-bottom: 2px solid var(--line) !important;
	position: relative;
}
.page .page_title::after,
.pkp_structure_main .page > h1::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 56px;
	height: 2px;
	background: var(--gold);
}

.page_about p,
.page_contact p,
.page_information p,
.page_privacy p {
	font-size: 0.98rem !important;
	line-height: 1.8 !important;
	color: var(--ink-soft) !important;
	margin: 1.1rem 0 !important;
}

/* Editorial team cards */
.page_editorial_team .obj_article_summary,
.page_about .cmp_article_list .obj_article_summary {
	padding: 22px 26px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	margin-bottom: 14px !important;
	box-shadow: var(--shadow-xs) !important;
	transition: all .25s ease;
}
.page_editorial_team .obj_article_summary:hover,
.page_about .cmp_article_list .obj_article_summary:hover {
	box-shadow: var(--shadow-md) !important;
	border-color: var(--green-soft) !important;
	transform: translateY(-2px);
}

/* Contact */
.page_contact .contact {
	padding: 24px 28px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	box-shadow: var(--shadow-xs) !important;
	margin-bottom: 18px !important;
}
.page_contact .label {
	font-family: var(--sans) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--green) !important;
	margin-bottom: 6px !important;
}

/* ============================================================
   SUBMISSIONS PAGE
   ============================================================ */
.page_submissions .submission_sections ul,
.page_submissions .submission_checklist ul {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius-lg) !important;
	overflow: hidden;
}
.page_submissions .submission_sections li,
.page_submissions .submission_checklist li {
	padding: 18px 22px 18px 52px !important;
	border-bottom: 1px solid var(--line) !important;
	background: var(--paper) !important;
	transition: background .2s ease;
}
.page_submissions .submission_checklist li:hover { background: var(--green-tint) !important; }
.page_submissions .submission_checklist li .fa {
	color: var(--green) !important;
	font-size: 1.05rem !important;
	left: 22px !important;
}

/* ============================================================
   PDF/GALLEY VIEW
   ============================================================ */
.header_view {
	background: var(--green) !important;
	box-shadow: var(--shadow-sm) !important;
}
.header_view .return {
	background: rgba(255, 255, 255, 0.15) !important;
	color: #fff !important;
}
.header_view .return:hover { background: var(--gold) !important; }
.header_view .download {
	background: var(--gold) !important;
	color: #fff !important;
}
.header_view .download:hover { background: var(--gold-lift) !important; }

/* ============================================================
   TABLES
   ============================================================ */
.cmp_table {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
	overflow: hidden;
	border-collapse: separate !important;
	border-spacing: 0 !important;
}
.cmp_table th {
	background: var(--green-tint) !important;
	color: var(--green) !important;
	font-family: var(--sans) !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	font-size: 0.76rem !important;
	letter-spacing: 0.06em;
}
.cmp_table th, .cmp_table td { padding: 11px 15px !important; border-bottom: 1px solid var(--line) !important; }
.cmp_table tr:last-child td { border-bottom: none !important; }
.cmp_table tr:hover td { background: var(--green-tint) !important; }

/* ============================================================
   MISC POLISH
   ============================================================ */
.cmp_edit_link {
	font-family: var(--sans) !important;
	font-size: 0.76rem !important;
	font-weight: 600 !important;
	color: var(--ink-muted) !important;
	opacity: 0.6;
	transition: opacity .2s ease;
}
.cmp_edit_link:hover { opacity: 1; color: var(--green) !important; }

/* Scrollbar */
::-webkit-scrollbar { width: 12px; height: 12px; }
::-webkit-scrollbar-track { background: var(--cream); }
::-webkit-scrollbar-thumb {
	background: var(--green-soft);
	border-radius: 999px;
	border: 3px solid var(--cream);
}
::-webkit-scrollbar-thumb:hover { background: var(--green); }

html { scroll-behavior: smooth; }

a:focus-visible, button:focus-visible {
	outline: 3px solid var(--gold);
	outline-offset: 2px;
	border-radius: 4px;
}

/* List refinement */
.pkp_structure_main ul,
.pkp_structure_main ol {
	line-height: 1.8 !important;
	margin: 1.1rem 0 !important;
	padding-left: 1.5em !important;
}
.pkp_structure_main ul li,
.pkp_structure_main ol li { padding: 0.2em 0; }

/* Blockquote */
.pkp_structure_main blockquote {
	margin: 1.5rem 0 !important;
	padding: 14px 22px !important;
	border-left: 4px solid var(--gold) !important;
	background: var(--cream) !important;
	border-radius: 0 var(--radius) var(--radius) 0;
	font-style: italic;
	color: var(--ink-soft) !important;
}

/* HR */
.pkp_structure_main hr {
	border: none !important;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--line), transparent);
	margin: 2.2rem 0 !important;
}

/* Additional content */
.pkp_page_index .additional_content {
	padding: 36px 0 !important;
	border-top: 1px solid var(--line) !important;
	margin-top: 32px !important;
	font-size: 1rem !important;
	line-height: 1.8 !important;
	color: var(--ink-soft) !important;
}

/* ============================================================
   RESPONSIVE - FIX TERPOTONG
   ============================================================ */
@media (max-width: 991px) {
	.pkp_structure_sidebar {
		float: none !important;
		width: 100% !important;
		border-left: none !important;
		border-top: 1px solid var(--line) !important;
		margin-top: 24px;
	}
	.pkp_structure_main {
		width: 100% !important;
		float: none !important;
	}
}

@media (max-width: 768px) {
	.pkp_site_name_wrapper { padding: 22px 22px !important; }
	.pkp_navigation_primary_row { padding: 0 22px !important; }
	.pkp_structure_main { padding: 32px 22px !important; }
	.pkp_page_index .cmp_announcements { padding: 24px !important; margin: 24px 0 !important; }
	.obj_article_details > .page_title { font-size: 1.5rem !important; }
	.pkp_structure_main h1 { font-size: 1.6rem !important; }
	.pkp_structure_main h2 { font-size: 1.3rem !important; }
	.page .page_title, .pkp_structure_main .page > h1 { font-size: 1.5rem !important; }
	.pkp_structure_footer { padding: 32px 22px !important; }
	.pkp_block { padding: 22px 20px !important; }
	/* Sidebar gambar indexing di mobile */
	.pkp_block.block_custom .content img {
		max-height: 60px !important;
	}
}

@media (max-width: 480px) {
	.pkp_site_name .is_text { font-size: 1.2rem !important; }
	.pkp_structure_main { padding: 24px 16px !important; }
	.page_issue_archive .issues_archive { grid-template-columns: 1fr !important; }
}

/* Skip links */
.cmp_skip_to_content a {
	background: var(--paper) !important;
	color: var(--green) !important;
}

/* ============================================================
   PREMIUM ENHANCEMENT - Ala tema berbayar
   ============================================================ */

/* ---- Homepage About jadi Hero Section ---- */
.pkp_page_index .homepage_about {
	position: relative;
	padding: 64px 48px !important;
	margin: 0 auto 32px !important;
	max-width: 900px;
	background: linear-gradient(135deg, #01690a 0%, #01880d 100%);
	border-radius: var(--radius-xl);
	box-shadow: 0 20px 60px rgba(1, 136, 13, 0.25);
	color: #fff;
	overflow: hidden;
}
.pkp_page_index .homepage_about::before {
	content: '';
	position: absolute;
	top: -50%;
	right: -10%;
	width: 400px;
	height: 400px;
	background: radial-gradient(circle, rgba(201,169,97,0.15) 0%, transparent 70%);
	pointer-events: none;
}
.pkp_page_index .homepage_about h2 {
	color: #fff !important;
	font-family: var(--serif) !important;
	font-size: 2rem !important;
	font-weight: 700 !important;
	border-bottom: 2px solid var(--gold) !important;
	padding-bottom: 0.5rem;
	margin: 0 0 1.5rem !important;
	display: inline-block;
}
.pkp_page_index .homepage_about p {
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 1.05rem !important;
	line-height: 1.85 !important;
	font-family: var(--body) !important;
}
.pkp_page_index .homepage_about strong {
	color: var(--gold-lift) !important;
	font-weight: 700 !important;
	font-size: 1.1rem !important;
	display: inline-block;
	padding: 4px 12px;
	background: rgba(201, 169, 97, 0.15);
	border-radius: var(--radius-sm);
	border: 1px solid rgba(201, 169, 97, 0.3);
	margin: 4px 0;
}
.pkp_page_index .homepage_about a {
	color: var(--gold-lift) !important;
	font-weight: 600 !important;
	border-bottom: 1px solid var(--gold);
	text-decoration: none;
	transition: all .2s ease;
}
.pkp_page_index .homepage_about a:hover {
	color: #fff !important;
	border-bottom-color: #fff;
}

@media (max-width: 768px) {
	.pkp_page_index .homepage_about {
		padding: 40px 24px !important;
		margin: 0 0 24px !important;
		border-radius: var(--radius-lg) !important;
	}
	.pkp_page_index .homepage_about h2 { font-size: 1.5rem !important; }
}

/* ---- Accreditation Badge (hero) ---- */
.pkp_page_index .homepage_about::after {
	content: '✓ Terakreditasi SINTA';
	position: absolute;
	top: 24px;
	right: 24px;
	font-family: var(--sans);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--gold-lift);
	background: rgba(201, 169, 97, 0.15);
	border: 1px solid rgba(201, 169, 97, 0.4);
	padding: 6px 14px;
	border-radius: var(--radius-pill);
	white-space: nowrap;
}
@media (max-width: 768px) {
	.pkp_page_index .homepage_about::after {
		position: relative;
		top: auto;
		right: auto;
		display: inline-block;
		margin-bottom: 16px;
	}
}

/* ---- Article Summary Card - Premium ---- */
.obj_article_summary {
	position: relative;
	padding: 28px 0 28px 0 !important;
	border-bottom: 1px solid var(--line) !important;
	transition: all .3s cubic-bezier(.4,0,.2,1);
}
.obj_article_summary::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--green);
	transform: scaleY(0);
	transform-origin: top;
	transition: transform .3s ease;
}
.obj_article_summary:hover {
	background: var(--green-tint) !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
	margin: 0 -16px;
	border-radius: var(--radius);
	border-bottom-color: transparent !important;
}
.obj_article_summary:hover::before {
	transform: scaleY(1);
}
.obj_article_summary > .title a::after {
	content: '';
	display: inline-block;
	width: 0;
	height: 1px;
	background: var(--green);
	transition: width .3s ease;
	margin-left: 4px;
	vertical-align: middle;
}
.obj_article_summary:hover > .title a::after {
	width: 24px;
}

/* ---- PDF Galley Badge ---- */
.obj_galley_link.pdf {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	gap: 6px;
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	font-size: 0.78rem !important;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	background: linear-gradient(135deg, #01880d, #06b30f) !important;
	border-radius: var(--radius-sm) !important;
	padding: 8px 18px !important;
	box-shadow: 0 3px 10px rgba(1, 136, 13, 0.25);
}
.obj_galley_link.pdf::before {
	content: 'PDF';
	font-weight: 700;
	font-size: 0.72rem;
	background: rgba(255,255,255,0.2);
	padding: 1px 5px;
	border-radius: 3px;
	margin-right: 2px;
}

/* ---- Issue Cover Overlay & Hover Zoom ---- */
.obj_issue_summary .cover,
.obj_issue_toc .cover {
	position: relative;
	overflow: hidden;
	border-radius: var(--radius) !important;
}
.obj_issue_summary .cover::after,
.obj_issue_toc .cover::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 50%, rgba(1, 105, 10, 0.65) 100%);
	opacity: 0;
	transition: opacity .3s ease;
	border-radius: var(--radius);
	pointer-events: none;
}
.obj_issue_summary:hover .cover::after,
.obj_issue_toc .cover:hover::after {
	opacity: 1;
}
.obj_issue_summary .cover img,
.obj_issue_toc .cover img {
	transition: transform .5s cubic-bezier(.4,0,.2,1) !important;
}
.obj_issue_summary:hover .cover img,
.obj_issue_toc .cover:hover img {
	transform: scale(1.08);
}

/* ---- Issue Archive Card - Magazine Style ---- */
.page_issue_archive .issues_archive > li {
	position: relative;
	overflow: hidden;
}
.page_issue_archive .obj_issue_summary {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.page_issue_archive .obj_issue_summary .cover {
	max-width: 160px;
	margin: 0 auto;
}
.page_issue_archive .obj_issue_summary .series {
	font-size: 0.7rem !important;
	letter-spacing: 0.12em;
}
.page_issue_archive .obj_issue_summary h2 {
	font-size: 1.05rem !important;
	text-align: center;
}
.page_issue_archive .obj_issue_summary .description {
	font-size: 0.85rem !important;
	color: var(--ink-soft) !important;
}

/* ---- Article Detail - Author Cards ---- */
.obj_article_details .authors li {
	padding: 18px 22px !important;
	background: var(--cream) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
	margin-bottom: 12px !important;
	transition: all .25s ease;
	box-shadow: var(--shadow-xs) !important;
}
.obj_article_details .authors li:hover {
	border-color: var(--green-soft) !important;
	box-shadow: var(--shadow-sm) !important;
	transform: translateX(4px);
}
.obj_article_details .authors .name {
	font-size: 1.02rem !important;
	font-family: var(--sans) !important;
	font-weight: 700 !important;
	color: var(--green) !important;
}
.obj_article_details .authors .name::before {
	content: '\f007';
	font-family: FontAwesome;
	font-weight: 400;
	margin-right: 8px;
	color: var(--green-soft);
	font-size: 0.9rem;
}
.obj_article_details .authors .affiliation {
	padding-left: 26px;
	font-style: italic;
}

/* ---- Article Detail - Abstract Box ---- */
.obj_article_details .item.abstract {
	background: var(--cream) !important;
	border-left: 4px solid var(--green) !important;
	border-radius: 0 var(--radius) var(--radius) 0 !important;
	padding: 24px 28px !important;
	margin: 0 0 28px !important;
}
.obj_article_details .item.abstract .label {
	color: var(--green) !important;
	font-family: var(--sans) !important;
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 12px !important;
	display: block;
	border-bottom: none !important;
	padding: 0 !important;
}
.obj_article_details .item.abstract .value {
	font-size: 1rem !important;
	line-height: 1.85 !important;
	color: var(--ink) !important;
	font-family: var(--body) !important;
}

/* ---- DOI Badge ---- */
.obj_article_details .item.doi {
	background: var(--green-tint) !important;
	border-radius: var(--radius) !important;
	padding: 16px 22px !important;
	border: 1px solid var(--green-soft) !important;
}
.obj_article_details .item.doi .label {
	color: var(--green) !important;
	font-weight: 700 !important;
	border-bottom: none !important;
	padding: 0 !important;
	margin: 0 0 6px !important;
	display: block;
}
.obj_article_details .item.doi a {
	display: inline-block;
	font-family: var(--sans) !important;
	font-size: 0.88rem !important;
	font-weight: 600 !important;
	color: var(--green) !important;
	background: var(--paper);
	padding: 6px 14px;
	border-radius: var(--radius-sm);
	border: 1px solid var(--green-soft);
	text-decoration: none !important;
	border-bottom: 1px solid var(--green-soft) !important;
	transition: all .2s ease;
}
.obj_article_details .item.doi a:hover {
	background: var(--green) !important;
	color: #fff !important;
	border-color: var(--green) !important;
}

/* ---- Published Date Badge ---- */
.obj_article_details .item.published {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 20px !important;
	background: var(--paper) !important;
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
}
.obj_article_details .item.published .label {
	font-family: var(--sans) !important;
	font-size: 0.76rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--ink-muted) !important;
	border-bottom: none !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline;
}
.obj_article_details .item.published .value {
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	color: var(--ink) !important;
	font-size: 0.92rem !important;
}

/* ---- Citation Box Premium ---- */
.obj_article_details .citation_display .citation_formats {
	border: 1px solid var(--line) !important;
	border-radius: var(--radius) !important;
	overflow: hidden;
	box-shadow: var(--shadow-xs) !important;
}
.obj_article_details .citation_display .citation_formats_button {
	font-family: var(--sans) !important;
	font-weight: 600 !important;
	font-size: 0.85rem !important;
	color: var(--green) !important;
	background: var(--green-tint) !important;
	padding: 14px 20px !important;
	border: none !important;
	border-bottom: 1px solid var(--line) !important;
	display: flex;
	align-items: center;
	gap: 8px;
}
.obj_article_details .citation_display .citation_formats_button::before {
	content: '\f0c5';
	font-family: FontAwesome;
	margin-right: 4px;
}

/* ---- Section Heading Premium (Issue TOC) ---- */
.obj_issue_toc > .galleys h2,
.obj_issue_toc .section h2 {
	position: relative;
	padding: 8px 16px !important;
	background: var(--green-tint) !important;
	border-radius: var(--radius-sm) !important;
	border-bottom: none !important;
	border-left: 3px solid var(--gold) !important;
	font-size: 0.84rem !important;
	margin: 0 0 20px !important;
}

/* ---- Issue TOC - Cover with Title Overlay ---- */
.obj_issue_toc .heading {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: flex-start;
	padding: 24px;
	background: var(--cream);
	border-radius: var(--radius-lg);
	border: 1px solid var(--line);
	margin-bottom: 32px;
}
.obj_issue_toc .heading .cover {
	flex: 0 0 200px;
	max-width: 200px;
	box-shadow: var(--shadow-md) !important;
	border-radius: var(--radius) !important;
}
@media (max-width: 768px) {
	.obj_issue_toc .heading {
		flex-direction: column;
		padding: 16px;
	}
	.obj_issue_toc .heading .cover {
		flex: none;
		max-width: 180px;
		margin: 0 auto;
	}
}

/* ---- Sidebar Premium Polish ---- */
.pkp_structure_sidebar .pkp_block {
	transition: all .3s ease;
}
.pkp_structure_sidebar .pkp_block:hover {
	background: var(--paper);
}
.pkp_block .title {
	position: relative;
	padding-left: 16px !important;
}
.pkp_block .title::before {
	content: '';
	position: absolute;
	left: 0;
	top: 2px;
	bottom: 12px;
	width: 3px;
	background: var(--gold);
	border-radius: 2px;
}

/* ---- Navigation Active State ---- */
#navigationPrimary > li.current > a,
#navigationPrimary > li > a[aria-current] {
	border-bottom-color: var(--gold) !important;
	color: var(--gold-lift) !important;
}

/* ---- Dropdown Menu Premium ---- */
#navigationPrimary ul {
	border: none !important;
	box-shadow: 0 12px 40px rgba(0,0,0,0.12) !important;
	border-radius: var(--radius) !important;
	padding: 10px !important;
}
#navigationPrimary ul::before {
	content: '';
	position: absolute;
	top: -6px;
	left: 24px;
	width: 12px;
	height: 12px;
	background: var(--paper);
	transform: rotate(45deg);
	border-left: 1px solid var(--line);
	border-top: 1px solid var(--line);
}
#navigationPrimary ul a {
	border-radius: var(--radius-sm) !important;
	border-left: none !important;
	padding: 10px 16px !important;
}
#navigationPrimary ul a:hover {
	border-left: none !important;
	transform: translateX(3px);
}

/* ---- Focus / Accessibility Premium ---- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 2px solid var(--gold) !important;
	outline-offset: 3px !important;
	border-radius: var(--radius-sm);
}

/* ---- Scrollbar Premium ---- */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--cream); }
::-webkit-scrollbar-thumb {
	background: linear-gradient(180deg, var(--green), var(--green-lift));
	border-radius: 999px;
	border: 2px solid var(--cream);
}
::-webkit-scrollbar-thumb:hover {
	background: var(--green-deep);
}

/* ---- Selection ---- */
::selection {
	background: var(--green) !important;
	color: #fff !important;
}
::-moz-selection {
	background: var(--green) !important;
	color: #fff !important;
}

/* ---- Print Style ---- */
@media print {
	.pkp_structure_head,
	.pkp_structure_sidebar,
	.pkp_structure_footer_wrapper,
	.cmp_breadcrumbs,
	.cmp_edit_link,
	.obj_galley_link {
		display: none !important;
	}
	.pkp_structure_page {
		box-shadow: none !important;
		margin: 0 !important;
		border-radius: 0 !important;
		max-width: 100% !important;
	}
	.pkp_structure_main {
		padding: 0 !important;
		width: 100% !important;
	}
	.obj_article_details .entry_details {
		box-shadow: none !important;
	}
}

/* ---- Animations ---- */
@keyframes premium-fade-up {
	from { opacity: 0; transform: translateY(20px); }
	to { opacity: 1; transform: translateY(0); }
}
@keyframes premium-shimmer {
	0% { background-position: -200% 0; }
	100% { background-position: 200% 0; }
}

/* Apply fade-up to main content on load */
.pkp_structure_main > * {
	animation: premium-fade-up .6s ease-out backwards;
}
.pkp_structure_main > *:nth-child(1) { animation-delay: 0.05s; }
.pkp_structure_main > *:nth-child(2) { animation-delay: 0.12s; }
.pkp_structure_main > *:nth-child(3) { animation-delay: 0.2s; }
.pkp_structure_main > *:nth-child(4) { animation-delay: 0.28s; }

/* ---- Heading Decorative Underline ---- */
.pkp_structure_main h2::after,
.page .page_title::after {
	content: '';
	display: block;
	width: 48px;
	height: 3px;
	background: linear-gradient(90deg, var(--gold), transparent);
	margin-top: 8px;
	border-radius: 2px;
}
.pkp_structure_main h2 {
	border-bottom: none !important;
}

/* ---- Block List Premium ---- */
.pkp_structure_main ul li::marker {
	color: var(--green);
}

/* ---- Galley Links List (article detail) ---- */
.obj_article_details .galleys_links {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.obj_article_details .galleys_links li {
	margin: 0 !important;
}

/* ---- Cover Image Article (article detail) ---- */
.obj_article_details .item.cover_image {
	text-align: center;
	padding: 20px !important;
}
.obj_article_details .item.cover_image img {
	border-radius: var(--radius-lg) !important;
	box-shadow: var(--shadow-md) !important;
	max-height: 400px;
}

/* ---- Keywords Tags Style ---- */
.obj_article_details .item.keywords .value {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.obj_article_details .item.keywords .value > span,
.obj_article_details .item.keywords .value > a {
	display: inline-block;
	padding: 5px 12px;
	background: var(--green-tint);
	color: var(--green) !important;
	border-radius: var(--radius-pill);
	font-size: 0.82rem;
	font-family: var(--sans);
	font-weight: 500;
	text-decoration: none !important;
	border: 1px solid var(--green-soft);
	transition: all .2s ease;
}
.obj_article_details .item.keywords .value > span:hover,
.obj_article_details .item.keywords .value > a:hover {
	background: var(--green) !important;
	color: #fff !important;
}

/* ---- Mobile Premium Adjustments ---- */
@media (max-width: 768px) {
	.obj_article_details .authors li {
		padding: 14px 16px !important;
	}
	.obj_article_details .item.abstract {
		padding: 18px 20px !important;
	}
	.obj_issue_toc > .galleys h2,
	.obj_issue_toc .section h2 {
		padding: 6px 12px !important;
	}
	#navigationPrimary ul::before { display: none; }
	.pkp_structure_main > * {
		animation: none;
	}
}
