/*
 * OJASA Basic — tampilan awal ("Bawaan")
 * Lapisan CSS di atas Default Theme OJS 3.2–3.4. Tidak mengganti template.
 * Dimuat SETELAH stylesheet tema induk (child theme: parent = default).
 *
 * Token mengikuti Brand Kit v2 OJASA.ID:
 *   navy #0B2A5B (dasar & teks) · blue #1F5FAE (aksi & tautan) · gold #D9A21B (garis nav, sorotan)
 *   cream #F4F7FC (latar) · light #EAF2FF (teks sekunder di navy) · shadow #9FB6DA (hard shadow)
 *
 * Opsi tema (diisi plugin: custom property di :root lewat <style> inline,
 * kelas di <html> lewat <script> kecil di <head> supaya tidak ada kedip tata letak):
 *   --oj-navy, --oj-blue, --oj-gold, --oj-cream          → warna dasar, aksen, garis, latar
 *   --oj-font                                             → keluarga huruf
 *   html.oj-sidebar-left | html.oj-sidebar-none           → posisi sidebar
 *   html.oj-nav-plain                                     → bar nav tanpa garis aksen
 *   html.oj-flat                                          → tanpa hard shadow pada sampul
 *   html.oj-hero-banner                                   → gambar beranda lebar penuh (bukan berdampingan)
 */

/* ------------------------------------------------------------------ */
/* 0. Token                                                             */
/* ------------------------------------------------------------------ */
:root {
	--oj-navy: #0B2A5B;
	--oj-blue: #1F5FAE;
	--oj-gold: #D9A21B;
	--oj-cream: #F4F7FC;
	--oj-white: #FFFFFF;
	--oj-light: #EAF2FF;
	--oj-shadow: #9FB6DA;

	--oj-ink: var(--oj-navy);
	--oj-ink-2: #3C4F6E;
	--oj-ink-3: #6B7C95;
	--oj-line: #D5DEEC;
	--oj-line-soft: #E6ECF5;
	--oj-blue-100: #E4EDFA;

	--oj-font: "Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	--oj-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

	--oj-radius: 16px;
	--oj-radius-sm: 10px;
	--oj-radius-xs: 6px;
	--oj-focus: 0 0 0 3px rgba(31, 95, 174, .35);
	--oj-hard: 6px 6px 0 var(--oj-shadow);
	--oj-soft: 0 1px 2px rgba(11, 42, 91, .06), 0 8px 24px -12px rgba(11, 42, 91, .18);

	--oj-ease: cubic-bezier(.2, .8, .2, 1);
	--oj-dur: 200ms;
}

/* ------------------------------------------------------------------ */
/* 1. Dasar                                                             */
/* ------------------------------------------------------------------ */
html,
body {
	font-family: var(--oj-font);
	font-size: 15px;
	line-height: 1.6;
	color: var(--oj-ink);
	background: var(--oj-cream);
	-webkit-font-smoothing: antialiased;
}

a {
	color: var(--oj-blue);
}

a:hover,
a:focus {
	color: var(--oj-navy);
}

.pkp_structure_main a:focus-visible,
.pkp_structure_sidebar a:focus-visible,
.pkp_structure_footer a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 0;
	box-shadow: var(--oj-focus);
	border-radius: var(--oj-radius-xs);
}

.pkp_structure_page {
	overflow-x: clip;
}

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

/* Judul di area utama */
.pkp_structure_main h1,
.pkp_structure_main h2,
.pkp_structure_main h3,
.pkp_structure_main h4 {
	font-family: var(--oj-font);
	font-weight: 800;
	color: var(--oj-navy);
	letter-spacing: -.02em;
}

.pkp_structure_main h1 {
	font-size: 30px;
	line-height: 1.25;
	margin: 0 0 20px;
}

.pkp_structure_main h2 {
	font-size: 24px;
	line-height: 1.3;
	margin: 32px 0 16px;
}

.pkp_structure_main h3 {
	font-size: 18px;
	line-height: 1.4;
	margin: 24px 0 12px;
}

.pkp_structure_main h4 {
	font-size: 16px;
	line-height: 1.4;
	margin: 16px 0 8px;
}

.pkp_structure_main p,
.pkp_structure_main ul {
	line-height: 1.7;
	margin: 16px 0;
}

/* Label kecil ala OJASA ("eyebrow") — dipakai untuk judul blok & bagian */
.oj-eyebrow,
.pkp_block .title,
.obj_issue_toc .section > h2,
.obj_issue_toc .section > h3,
.obj_issue_toc .section > h4,
.pkp_page_index .current_issue > h2,
.pkp_page_index .cmp_announcements > h2,
.obj_article_details .entry_details .item .label,
.obj_article_details .main_entry .item .label {
	font-family: var(--oj-font);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--oj-blue);
}

/* ------------------------------------------------------------------ */
/* 2. Header terang                                                     */
/* ------------------------------------------------------------------ */
.pkp_structure_head {
	background-color: var(--oj-white);
	border-bottom: 0;
}

.pkp_site_name_wrapper {
	height: 56px;
}

/* Tombol burger (HP): garis navy di atas header putih */
.pkp_site_nav_toggle {
	width: 56px;
	height: 56px;
	box-shadow: 1px 0 0 var(--oj-line-soft);
}

.pkp_site_nav_toggle > span {
	border-bottom-color: var(--oj-navy);
}

.pkp_site_nav_toggle > span:before,
.pkp_site_nav_toggle > span:after {
	background: var(--oj-navy);
}

.pkp_site_nav_toggle:focus {
	outline: 0;
	box-shadow: inset var(--oj-focus);
}

.pkp_site_name {
	left: 56px;
	color: var(--oj-navy);
	font-family: var(--oj-font);
}

.pkp_site_name .is_text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	max-height: 56px;
	padding: 10px 12px 10px 0;
	font-family: var(--oj-font);
	font-size: 15px;
	font-weight: 800;
	line-height: 18px;
	letter-spacing: -.02em;
	white-space: normal;
	color: var(--oj-navy);
}

.pkp_site_name {
	display: flex;
	align-items: center;
	height: 56px;
	white-space: normal;
}

.pkp_site_name .is_text:hover {
	color: var(--oj-blue);
	text-decoration: none;
}

.pkp_site_name .is_img {
	margin: 8px 0;
}

.pkp_site_name .is_img:focus {
	outline: 0;
	box-shadow: var(--oj-focus);
	border-radius: var(--oj-radius-xs);
}

.pkp_site_name .is_img img {
	max-height: 40px;
}

/* Blok ISSN — dibuat js/ojasa-header.js, disembunyikan di HP */
.oj-issn {
	display: none;
}

/* ------------------------------------------------------------------ */
/* 3. Navigasi navy bergaris emas                                       */
/* ------------------------------------------------------------------ */
.pkp_site_nav_menu {
	background: var(--oj-navy);
	border-bottom: 3px solid var(--oj-gold);
	padding: 12px 16px 16px;
}

.oj-nav-plain .pkp_site_nav_menu {
	border-bottom-color: transparent;
}

.pkp_site_nav_menu a {
	font-weight: 700;
	font-size: 15px;
	padding: 6px 0;
	color: var(--oj-white);
}

.pkp_site_nav_menu ul ul a {
	font-weight: 500;
	color: var(--oj-light);
}

.pkp_navigation_user.pkp_navigation_user,
.pkp_navigation_search_wrapper {
	border-top-color: rgba(255, 255, 255, .14);
}

.pkp_navigation_search_wrapper a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* ------------------------------------------------------------------ */
/* 4. Kerangka isi                                                      */
/* ------------------------------------------------------------------ */
.pkp_structure_content {
	padding-top: 20px;
}

.pkp_structure_main {
	padding: 4px 12px 40px;
}

/* garis vertikal pemisah bawaan Default dimatikan */
.pkp_structure_main:before,
.pkp_structure_main:after {
	content: none;
}

/* ------------------------------------------------------------------ */
/* 5. Kartu (dipakai bersama)                                           */
/* ------------------------------------------------------------------ */
.pkp_block,
.pkp_page_index .cmp_announcements,
.pkp_page_index .current_issue,
.pkp_page_index .additional_content,
.cmp_article_list > li,
.obj_article_details .entry_details,
.obj_issue_summary,
.cmp_notification {
	background: var(--oj-white);
	border: 1px solid var(--oj-line);
	border-radius: var(--oj-radius);
	box-shadow: var(--oj-soft);
}

/* ------------------------------------------------------------------ */
/* 6. Beranda                                                           */
/* ------------------------------------------------------------------ */
.pkp_page_index .homepage_image,
.pkp_page_index .additional_content {
	margin-left: 0;
	margin-right: 0;
}

.pkp_page_index .homepage_image {
	margin-top: 8px;
	margin-bottom: 20px;
}

.pkp_page_index .homepage_image img {
	border: 1.5px solid var(--oj-navy);
	border-radius: 12px;
	box-shadow: var(--oj-hard);
	background: var(--oj-white);
}

.oj-flat .pkp_page_index .homepage_image img {
	box-shadow: var(--oj-soft);
	border-color: var(--oj-line);
}

.pkp_page_index .homepage_about {
	padding: 0 0 8px;
}

.pkp_page_index .homepage_about h2 {
	margin: 0 0 12px;
	font-size: 26px;
}

.pkp_page_index .homepage_about p {
	color: var(--oj-ink-2);
}

/* Hero: gambar & deskripsi berdampingan bila keduanya ada (≥ 768 px).
   Untuk gambar beranda berbentuk banner lebar, plugin memberi .oj-hero-banner → tetap satu kolom. */
@media (max-width: 767px) {
	html:not(.oj-hero-banner) .page_index_journal:has(.homepage_image):has(.homepage_about) .homepage_image img {
		max-width: 240px;
		margin: 0 auto;
	}
}

@media (min-width: 768px) {
	html:not(.oj-hero-banner) .page_index_journal:has(.homepage_image):has(.homepage_about) {
		display: grid;
		grid-template-columns: minmax(0, 30%) minmax(0, 1fr);
		column-gap: 36px;
		align-items: start;
	}

	html:not(.oj-hero-banner) .page_index_journal:has(.homepage_image):has(.homepage_about) > * {
		grid-column: 1 / -1;
	}

	html:not(.oj-hero-banner) .page_index_journal:has(.homepage_image):has(.homepage_about) > .homepage_image {
		grid-column: 1;
		margin: 8px 0 32px;
	}

	html:not(.oj-hero-banner) .page_index_journal:has(.homepage_image):has(.homepage_about) > .homepage_about {
		grid-column: 2;
		padding-top: 8px;
		margin-bottom: 32px;
	}
}

/* Pengumuman */
.pkp_page_index .cmp_announcements {
	padding: 24px 24px 20px;
	margin: 0 0 20px;
	border-top: 1px solid var(--oj-line);
	border-bottom: 1px solid var(--oj-line);
}

.pkp_page_index .cmp_announcements > h2 {
	position: static !important;
	clip: auto;
	width: auto;
	height: auto;
	overflow: visible;
	margin: 0 0 16px;
}

.pkp_page_index .cmp_announcements > .obj_announcement_summary {
	padding: 0 24px 0 0;
}

.pkp_page_index .cmp_announcements > .obj_announcement_summary:before {
	border-left-color: var(--oj-line-soft);
}

.pkp_page_index .cmp_announcements .more {
	padding: 0 0 0 24px;
}

@media (max-width: 767px) {
	.pkp_page_index .cmp_announcements > .obj_announcement_summary {
		padding: 0 0 16px;
		margin-bottom: 16px;
		border-bottom: 1px solid var(--oj-line-soft);
	}

	.pkp_page_index .cmp_announcements .more {
		padding: 0;
	}

	.obj_issue_toc .heading {
		grid-template-columns: 120px minmax(0, 1fr);
		column-gap: 16px;
	}
}

.pkp_page_index .cmp_announcements .more:before {
	border-left-color: var(--oj-line-soft);
}

.pkp_page_index .cmp_announcements .more .obj_announcement_summary {
	padding: 0 0 12px;
}

.pkp_page_index .cmp_announcements .more .obj_announcement_summary + .obj_announcement_summary {
	padding-top: 12px;
	border-top: 1px solid var(--oj-line-soft);
}

.obj_announcement_summary h3,
.obj_announcement_summary h4 {
	margin: 0 0 6px;
}

.obj_announcement_summary h3 a,
.obj_announcement_summary h4 a {
	color: var(--oj-navy);
	text-decoration: none;
}

.obj_announcement_summary h3 a:hover,
.obj_announcement_summary h4 a:hover {
	color: var(--oj-blue);
}

.obj_announcement_summary .date {
	font-size: 13px;
	color: var(--oj-ink-3);
	margin-bottom: 8px;
}

.obj_announcement_summary .summary {
	color: var(--oj-ink-2);
}

.obj_announcement_summary .read_more,
.pkp_page_index .current_issue .read_more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0;
	font-size: 14px;
	font-weight: 700;
	color: var(--oj-blue);
	text-decoration: none;
}

.obj_announcement_summary .read_more:after,
.pkp_page_index .current_issue .read_more:after {
	position: static;
	transition: transform var(--oj-dur) var(--oj-ease);
}

.obj_announcement_summary .read_more:hover:after,
.pkp_page_index .current_issue .read_more:hover:after {
	transform: translateX(3px);
}

/* Terbitan terkini */
.pkp_page_index .current_issue {
	padding: 24px;
	margin: 0 0 20px;
}

.pkp_page_index .current_issue > h2 {
	margin: 0 0 6px;
}

.pkp_page_index .current_issue .current_issue_title {
	margin: 0 0 20px;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.3;
	letter-spacing: -.02em;
	color: var(--oj-navy);
}

.pkp_page_index .current_issue .read_more {
	margin-top: 8px;
}

.pkp_page_index .additional_content {
	padding: 24px;
	margin-top: 0;
	color: var(--oj-ink-2);
}

.pkp_page_index .additional_content > :first-child {
	margin-top: 0;
}

.pkp_page_index .additional_content > :last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------ */
/* 7. Daftar isi terbitan                                               */
/* ------------------------------------------------------------------ */
.obj_issue_toc .heading:before,
.obj_issue_toc .heading:after,
.obj_issue_toc .section:before,
.obj_issue_toc .galleys:before {
	content: none;
}

.obj_issue_toc .section,
.obj_issue_toc .galleys {
	position: static;
	margin: 0;
	padding: 0;
}

.obj_issue_toc .articles,
.obj_issue_toc .sections:not(:first-child) {
	margin-top: 0;
}

.obj_issue_toc .pub_id,
.obj_issue_toc .published {
	margin: 0;
}

.obj_issue_toc .heading {
	display: grid;
	grid-template-columns: 150px minmax(0, 1fr);
	column-gap: 24px;
	row-gap: 8px;
	align-items: start;
	margin-bottom: 24px;
}

.obj_issue_toc .heading > * {
	grid-column: 2;
}

.obj_issue_toc .heading > .cover {
	grid-column: 1;
	grid-row: 1 / span 4;
}

.obj_issue_toc .heading:not(:has(.cover)) {
	grid-template-columns: minmax(0, 1fr);
}

.obj_issue_toc .heading:not(:has(.cover)) > * {
	grid-column: 1;
}

.obj_issue_toc .cover {
	flex: 0 0 150px;
	width: 150px;
	float: none;
	margin: 0;
}

.obj_issue_toc .cover img {
	max-height: none;
}

.obj_issue_toc .cover img {
	border: 1.5px solid var(--oj-navy);
	border-radius: 10px;
	box-shadow: var(--oj-hard);
	background: var(--oj-white);
}

.oj-flat .obj_issue_toc .cover img {
	box-shadow: var(--oj-soft);
	border-color: var(--oj-line);
}

.obj_issue_toc .description {
	color: var(--oj-ink-2);
}

.obj_issue_toc .description > :first-child {
	margin-top: 0;
}

.obj_issue_toc .pub_id,
.obj_issue_toc .published {
	font-size: 14px;
	color: var(--oj-ink-3);
}

.obj_issue_toc .pub_id .type,
.obj_issue_toc .published .label {
	font-weight: 700;
	color: var(--oj-ink-2);
}

.obj_issue_toc .pub_id a {
	font-family: var(--oj-mono);
	font-size: 13px;
}

.obj_issue_toc .section > h2,
.obj_issue_toc .section > h3,
.obj_issue_toc .section > h4,
.obj_issue_toc .galleys > h2,
.obj_issue_toc .galleys > h3 {
	display: flex;
	align-items: center;
	gap: 12px;
	position: static;
	left: auto;
	padding: 0;
	background: transparent;
	line-height: 1.4;
	margin: 28px 0 12px;
}

.obj_issue_toc .section > h2:after,
.obj_issue_toc .section > h3:after,
.obj_issue_toc .section > h4:after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--oj-line);
}

.obj_issue_toc .section:first-child > h2,
.obj_issue_toc .section:first-child > h3,
.obj_issue_toc .section:first-child > h4 {
	margin-top: 4px;
}

.obj_issue_toc .galleys {
	margin-bottom: 8px;
}

.cmp_article_list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cmp_article_list > li {
	padding: 18px 22px;
	margin-bottom: 12px;
	transition: border-color var(--oj-dur) var(--oj-ease), transform var(--oj-dur) var(--oj-ease);
}

.cmp_article_list > li:hover {
	border-color: var(--oj-blue);
}

.obj_article_summary > .title {
	font-family: var(--oj-font);
	font-size: 17px;
	font-weight: 800;
	line-height: 1.4;
	letter-spacing: -.01em;
	margin: 0 0 4px;
}

.obj_article_summary > .title a {
	color: var(--oj-navy);
}

.obj_article_summary > .title a:hover {
	color: var(--oj-blue);
}

.obj_article_summary .subtitle {
	font-size: 15px;
	font-weight: 500;
	color: var(--oj-ink-2);
}

.obj_article_summary {
	position: relative;
}

.obj_article_summary .meta {
	position: static;
	padding-top: 2px;
	font-size: 14px;
	color: var(--oj-ink-2);
}

.obj_article_summary .authors {
	font-weight: 500;
}

.obj_article_summary .pages,
.obj_article_summary .published {
	color: var(--oj-ink-3);
	font-size: 13px;
}

@media (min-width: 768px) {
	.obj_article_summary .pages {
		top: 2px;
		right: 0;
		padding: 2px 10px;
		border: 1px solid var(--oj-line);
		border-radius: 999px;
		line-height: 20px;
		font-family: var(--oj-mono);
		font-size: 12px;
		background: var(--oj-cream);
	}

	.obj_article_summary > .title {
		padding-right: 96px;
	}
}

.obj_article_summary .galleys_links {
	margin-top: 12px;
}

.obj_article_summary .galleys_links li {
	margin-right: 8px;
}

.obj_article_summary .cover img {
	border-radius: 8px;
	border: 1px solid var(--oj-line);
}

/* Tombol galley (PDF dsb.) */
.obj_galley_link,
.cmp_button_wire {
	padding: 0 14px;
	border: 1.5px solid var(--oj-navy);
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	line-height: 32px;
	color: var(--oj-navy);
	background: var(--oj-white);
	transition: background var(--oj-dur) var(--oj-ease), color var(--oj-dur) var(--oj-ease);
}

.obj_galley_link:hover,
.obj_galley_link:focus,
.cmp_button_wire:hover,
.cmp_button_wire:focus {
	background: var(--oj-navy);
	color: var(--oj-white);
}

.obj_galley_link.restricted {
	border-color: #C0392B;
	color: #C0392B;
}

.obj_galley_link.restricted:hover,
.obj_galley_link.restricted:focus {
	background: #C0392B;
	color: var(--oj-white);
}

/* Tombol penuh */
.cmp_button,
.pkp_form button[type="submit"],
.cmp_form .submit button {
	background: var(--oj-navy);
	border: 1.5px solid var(--oj-navy);
	border-radius: var(--oj-radius-sm);
	color: var(--oj-white);
	font-family: var(--oj-font);
	font-weight: 700;
	font-size: 14px;
	padding: 0 18px;
	line-height: 40px;
}

.cmp_button:hover,
.cmp_button:focus {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
	color: var(--oj-white);
}

/* ------------------------------------------------------------------ */
/* 7b. Sisipan hook: abstrak lipat, DOI, statistik (ojasa-ringkasan.tpl) */
/* ------------------------------------------------------------------ */
.oj-ekstra {
	margin-top: 12px;
	font-size: 13px;
}

.oj-abstrak__tombol {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 14px;
	border: 1.5px solid var(--oj-line);
	border-radius: 999px;
	background: var(--oj-cream);
	color: var(--oj-ink-2);
	font-family: var(--oj-font);
	font-size: 13px;
	font-weight: 700;
	line-height: 32px;
	vertical-align: middle;
	cursor: pointer;
	transition: background var(--oj-dur) var(--oj-ease), color var(--oj-dur) var(--oj-ease), border-color var(--oj-dur) var(--oj-ease);
}

.oj-abstrak__tombol:hover {
	border-color: var(--oj-blue);
	color: var(--oj-blue);
}

.oj-abstrak__tombol[aria-expanded="true"] {
	background: var(--oj-blue-100);
	border-color: var(--oj-blue);
	color: var(--oj-blue);
}

.oj-abstrak__ikon {
	font-size: 10px;
	transition: transform var(--oj-dur) var(--oj-ease);
}

.oj-abstrak__tombol[aria-expanded="true"] .oj-abstrak__ikon {
	transform: rotate(180deg);
}

/* Tombol dipindah skrip ke baris galley (sebelum PDF); .oj-ekstra tinggal isi abstrak + meta */
.obj_article_summary .galleys_links li.oj-li-abstrak {
	margin-right: 8px;
}

.oj-abstrak__isi {
	margin-top: 10px;
	padding: 14px 16px;
	border-left: 3px solid var(--oj-blue);
	background: var(--oj-cream);
	border-radius: 0 var(--oj-radius-sm) var(--oj-radius-sm) 0;
	font-size: 14px;
	line-height: 1.7;
	color: var(--oj-ink-2);
}

.oj-abstrak__isi p {
	margin: 0 0 10px;
	line-height: 1.7;
}

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

/* Daftar penulis per baris: Nama, Afiliasi, bendera — dipindah skrip ke bawah judul */
.oj-penulis {
	margin: 4px 0 6px;
	padding: 0;
	list-style: none;
	font-size: 14px;
	line-height: 1.6;
}

.oj-penulis__baris {
	margin: 0;
	padding: 0;
	color: var(--oj-ink-2);
}

.oj-penulis__nama {
	font-weight: 700;
	color: var(--oj-ink);
}

.oj-penulis__nama:not(:last-child):after,
.oj-penulis__afiliasi:not(:last-child):after {
	content: ",";
	color: var(--oj-ink-3);
	margin-right: 4px;
}

.oj-penulis__negara {
	color: var(--oj-ink-3);
}

.oj-negara {
	display: inline-block;
	vertical-align: -1px;
	line-height: 0;
	margin-left: 2px;
}

.oj-negara__bendera {
	width: 20px;
	height: 15px;
	border-radius: 2px;
	box-shadow: 0 0 0 1px rgba(11, 42, 91, .18);
	vertical-align: top;
}

/* Baris penulis bawaan (string "A, B, C") disembunyikan bila daftar per baris ada */
.obj_article_summary.oj-has-penulis .meta .authors,
.obj_article_summary:has(.oj-penulis) .meta .authors {
	display: none;
}

.obj_article_summary.oj-has-penulis .meta,
.obj_article_summary:has(.oj-penulis) .meta {
	padding-top: 0;
}

.oj-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
	margin-top: 10px;
	color: var(--oj-ink-3);
}

.oj-meta__item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-width: 0;
}

.oj-meta__label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--oj-ink-3);
}

.oj-meta__doi a {
	font-family: var(--oj-mono);
	font-size: 12px;
	color: var(--oj-blue);
	text-decoration: none;
	overflow-wrap: anywhere;
}

.oj-meta__doi a:hover {
	text-decoration: underline;
}

.oj-meta__stat .fa {
	color: var(--oj-blue);
}

.oj-meta__angka {
	font-weight: 700;
	color: var(--oj-ink);
	font-variant-numeric: tabular-nums;
}

/* Halaman artikel: item statistik di kolom detail (ojasa-artikel.tpl) */
.oj-statistik .value {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
}

.oj-statistik__item {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	color: var(--oj-ink-3);
}

.oj-statistik__item .fa {
	color: var(--oj-blue);
}

.oj-statistik__angka {
	font-weight: 800;
	color: var(--oj-ink);
	font-variant-numeric: tabular-nums;
}

/* ------------------------------------------------------------------ */
/* 8. Sidebar                                                           */
/* ------------------------------------------------------------------ */
.pkp_block {
	padding: 20px 22px;
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 1.55;
}

.pkp_block .title {
	margin: 0 0 12px;
	line-height: 1.4;
}

.pkp_block .content ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pkp_block .content ul li {
	padding: 8px 0;
	border-bottom: 1px solid var(--oj-line-soft);
}

.pkp_block .content ul li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.pkp_block .content ul li:first-child {
	padding-top: 0;
}

.pkp_block a {
	color: var(--oj-ink);
	font-weight: 500;
}

.pkp_block a:hover {
	color: var(--oj-blue);
}

.pkp_block .content img {
	border-radius: 8px;
}

.block_make_submission .content {
	padding: 0;
}

.block_make_submission a,
.block_make_submission .cmp_button {
	display: block;
	width: 100%;
	box-sizing: border-box;
	padding: 0 16px;
	text-align: center;
	background: var(--oj-navy);
	border: 1.5px solid var(--oj-navy);
	border-radius: var(--oj-radius-sm);
	color: var(--oj-white);
	font-weight: 700;
	line-height: 42px;
	text-decoration: none;
	transition: background var(--oj-dur) var(--oj-ease);
}

.block_make_submission a:hover,
.block_make_submission a:focus {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
	color: var(--oj-white);
}

.block_browse .current a {
	color: var(--oj-blue);
	font-weight: 700;
}

.block_language_toggle .content ul li,
.block_information .content ul li {
	padding: 6px 0;
}

/* Blok yang isinya kosong (ditandai skrip) */
.pkp_block.oj-blok-kosong {
	display: none;
}

/* Form di dalam blok (mis. blok login buatan sendiri) */
.pkp_block .content form {
	display: grid;
	gap: 8px;
}

.pkp_block .content label {
	font-size: 13px;
	font-weight: 700;
	color: var(--oj-ink-2);
}

.pkp_block .content input[type="text"],
.pkp_block .content input[type="password"],
.pkp_block .content input[type="email"],
.pkp_block .content input[type="search"],
.pkp_block .content select,
.pkp_block .content textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 8px 10px;
	border: 1.5px solid var(--oj-line);
	border-radius: var(--oj-radius-sm);
	font-family: var(--oj-font);
	font-size: 14px;
	color: var(--oj-ink);
	background: var(--oj-white);
}

.pkp_block .content input:focus,
.pkp_block .content select:focus,
.pkp_block .content textarea:focus {
	outline: 0;
	border-color: var(--oj-blue);
	box-shadow: var(--oj-focus);
}

.pkp_block .content input[type="submit"],
.pkp_block .content button {
	display: inline-block;
	padding: 0 16px;
	border: 1.5px solid var(--oj-navy);
	border-radius: var(--oj-radius-sm);
	background: var(--oj-navy);
	color: var(--oj-white);
	font-family: var(--oj-font);
	font-size: 14px;
	font-weight: 700;
	line-height: 36px;
	cursor: pointer;
}

.pkp_block .content input[type="submit"]:hover,
.pkp_block .content button:hover {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
}

.pkp_block .content input[type="checkbox"] {
	width: auto;
	margin-right: 6px;
	vertical-align: middle;
}

/* Isi blok buatan sendiri: paragraf, judul kecil, daftar bersarang */
.pkp_block .content p {
	margin: 0 0 8px;
}

.pkp_block .content h3,
.pkp_block .content h4,
.pkp_block .content strong:only-child {
	display: block;
	margin: 12px 0 6px;
	font-size: 13px;
	font-weight: 800;
	color: var(--oj-navy);
}

.pkp_block .content ul ul {
	margin: 4px 0 0 12px;
}

/* Blok "Terindeks" buatan sendiri (Custom Block) — chip nama pengindeks */
.pkp_block .oj-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.pkp_block .oj-chips a,
.pkp_block .oj-chips span {
	display: inline-block;
	padding: 3px 10px;
	border: 1px solid var(--oj-line);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	color: var(--oj-ink-2);
	background: var(--oj-cream);
	text-decoration: none;
}

.pkp_block .oj-chips a:hover {
	border-color: var(--oj-blue);
	color: var(--oj-blue);
}

/* ------------------------------------------------------------------ */
/* 9. Halaman artikel                                                   */
/* ------------------------------------------------------------------ */
.obj_article_details > .page_title {
	font-size: 28px;
	line-height: 1.25;
	margin: 0 0 8px;
}

.obj_article_details > .subtitle {
	font-size: 18px;
	font-weight: 500;
	color: var(--oj-ink-2);
	margin: 0 0 16px;
}

/* Baris dua kolom milik Default (bukan baris Bootstrap — lihat shim di 10b) */
.obj_article_details > .row {
	display: block;
	margin: 20px 0 0;
	padding: 0;
	border: 0;
}

.obj_article_details > .row:before,
.obj_article_details > .row:after {
	content: none;
}

.obj_article_details .item {
	padding: 0 0 24px;
}

.obj_article_details .main_entry .item .label {
	margin: 0 0 10px;
	font-size: 12px;
}

.obj_article_details .main_entry .item.doi .label,
.obj_article_details .main_entry .item.keywords .label {
	display: inline;
	margin-right: 6px;
}

.obj_article_details .main_entry .item.doi .value a {
	font-family: var(--oj-mono);
	font-size: 13px;
}

.obj_article_details .main_entry .item.keywords .value {
	color: var(--oj-ink-2);
}

.obj_article_details .authors {
	margin: 0;
	padding: 0;
	list-style: none;
}

.obj_article_details .main_entry .authors li {
	margin-bottom: 6px;
	font-size: 15px;
	line-height: 1.6;
	color: var(--oj-ink-2);
}

.obj_article_details .main_entry .authors .name {
	display: inline;
	font-weight: 700;
	color: var(--oj-navy);
}

.obj_article_details .main_entry .authors .name:after,
.obj_article_details .main_entry .authors .affiliation:after {
	content: ",";
	color: var(--oj-ink-3);
	margin-right: 4px;
}

.obj_article_details .main_entry .authors .name:last-child:after,
.obj_article_details .main_entry .authors .affiliation:last-child:after,
.obj_article_details .main_entry .authors .name:has(+ .orcid):after,
.obj_article_details .main_entry .authors .affiliation:has(+ .orcid):after {
	content: none;
}

.obj_article_details .main_entry .authors .affiliation,
.obj_article_details .main_entry .authors .country,
.obj_article_details .main_entry .authors .oj-penulis__negara {
	display: inline;
	font-size: 15px;
	color: var(--oj-ink-2);
}

.obj_article_details .main_entry .authors .oj-negara {
	margin-left: 0;
	margin-right: 6px;
}

.obj_article_details .main_entry .authors .orcid {
	display: inline-block;
	margin-left: 4px;
	font-size: 11px;
	line-height: 20px;
	vertical-align: 1px;
}

.obj_article_details .main_entry .authors .orcid a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 0 8px;
	border: 1px solid var(--oj-line);
	border-radius: 999px;
	font-family: var(--oj-font);
	font-size: 11px;
	font-weight: 700;
	line-height: 20px;
	letter-spacing: .04em;
	color: var(--oj-blue);
	text-decoration: none;
}

.obj_article_details .main_entry .authors .orcid a:before {
	content: "iD";
	display: inline-block;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #A6CE39;
	color: #fff;
	font-size: 8px;
	line-height: 14px;
	text-align: center;
}

.obj_article_details .abstract {
	font-size: 16px;
	line-height: 1.75;
	color: var(--oj-ink-2);
}

.obj_article_details .abstract p {
	margin: 0 0 12px;
}

.obj_article_details .references .value p {
	font-size: 14px;
	color: var(--oj-ink-2);
	padding-left: 1.5em;
	text-indent: -1.5em;
	margin: 0 0 8px;
}

/* Kolom detail kanan sebagai kartu */
.obj_article_details .entry_details {
	margin: 0;
	padding: 6px 0;
	border-top: 0;
	border-left: 0;
	float: none;
	width: auto;
}

.obj_article_details .entry_details .item {
	padding: 16px 20px;
	margin: 0;
	border-bottom: 1px solid var(--oj-line-soft);
}

.obj_article_details .entry_details .item:last-child {
	border-bottom: 0;
}

.obj_article_details .entry_details .item .label {
	margin-bottom: 6px;
}

.obj_article_details .entry_details .item .value,
.obj_article_details .entry_details .item .value a {
	color: var(--oj-ink);
	font-weight: 500;
}

.obj_article_details .entry_details .galleys_links li {
	display: block;
}

.obj_article_details .entry_details .item .value a.obj_galley_link {
	display: block;
	text-align: center;
	line-height: 44px;
	font-size: 14px;
	background: var(--oj-navy);
	color: var(--oj-white);
	border-radius: var(--oj-radius-sm);
}

.obj_article_details .entry_details .item .value a.obj_galley_link:hover,
.obj_article_details .entry_details .item .value a.obj_galley_link:focus {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
}

.obj_article_details .entry_details .galleys_links li + li {
	margin-top: 8px;
}

/* Sampul terbitan/artikel: selebar kolom detail seperti Default (tidak diperbesar) */
.obj_article_details .entry_details .cover_image .sub_item {
	margin: 0;
}

.obj_article_details .entry_details .cover_image a {
	display: block;
	line-height: 0;
}

.obj_article_details .entry_details .cover_image img {
	display: block;
	max-width: 100%;
	max-width: min(100%, 240px); /* = lebar kolom detail; di HP tidak melebar penuh */
	width: auto;
	height: auto;
	margin: 0;
	border-radius: 8px;
	border: 1px solid var(--oj-line);
}

/* Cara mengutip (plugin Citation Style Language) */
.obj_article_details .citation_display .value {
	font-size: 13px;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.obj_article_details .citation_display .citation_formats {
	border-color: var(--oj-line);
	border-radius: var(--oj-radius-sm);
	overflow: hidden;
}

.obj_article_details .citation_display .citation_formats_button {
	font-family: var(--oj-font);
	font-size: 13px;
	font-weight: 700;
	line-height: 36px;
	color: var(--oj-navy);
}

.obj_article_details .citation_display .citation_formats_button:focus {
	background: var(--oj-cream);
}

.obj_article_details .citation_display .citation_formats_styles a {
	font-size: 13px;
	color: var(--oj-blue);
	border-bottom-color: var(--oj-line-soft);
}

.obj_article_details .citation_display .citation_formats_styles a:focus,
.obj_article_details .citation_display .citation_formats_styles a:hover {
	background: var(--oj-cream);
}

.obj_article_details .copyright a.copyright,
.obj_article_details .copyright p {
	font-size: 13px;
	color: var(--oj-ink-3);
}

@media (min-width: 768px) {
	/* Naskah kiri, kolom detail kanan berdampingan seperti Default (yang memakai
	   float 428/300 px); di sini grid supaya lebar naskah mengikuti kontainer.
	   Ditulis dengan .pkp_structure_main agar menang atas `.row` dari stylesheet
	   jurnal lama (Bootstrap) yang ikut dimuat. */
	.pkp_structure_main .obj_article_details > .row {
		display: grid;
		grid-template-columns: minmax(0, 1fr) 280px;
		column-gap: 32px;
		align-items: start;
		margin: 20px 0 0;
	}

	.pkp_structure_main .obj_article_details > .row > .main_entry {
		float: none;
		width: auto;
		max-width: none;
		padding: 0;
		border-right: 0;
		min-width: 0;
	}

	.pkp_structure_main .obj_article_details > .row > .entry_details {
		float: none;
		width: auto;
		max-width: none;
		margin: 0;
		position: sticky;
		top: 16px;
	}
}

/* Halaman artikel selebar penuh: sidebar disembunyikan */
.pkp_page_article .pkp_structure_sidebar {
	display: none;
}

@media (min-width: 992px) {
	.pkp_page_article .pkp_structure_main,
	.oj-sidebar-left .pkp_page_article .pkp_structure_main {
		float: none;
		width: auto;
		padding-right: 0;
		padding-left: 0;
	}
}

/* ------------------------------------------------------------------ */
/* 10. Arsip, halaman statis, form, notifikasi                          */
/* ------------------------------------------------------------------ */
.obj_issue_summary {
	padding: 18px 20px;
	margin-bottom: 16px;
}

.obj_issue_summary .cover img {
	border-radius: 8px;
	border: 1px solid var(--oj-line);
}

.obj_issue_summary .title {
	font-weight: 800;
	color: var(--oj-navy);
	text-decoration: none;
}

.obj_issue_summary .series {
	color: var(--oj-ink-3);
	font-size: 14px;
}

.cmp_breadcrumbs {
	font-size: 13px;
	color: var(--oj-ink-3);
	margin-bottom: 12px;
}

.cmp_breadcrumbs a {
	color: var(--oj-ink-3);
}

.cmp_breadcrumbs .current {
	color: var(--oj-ink-2);
	font-weight: 700;
}

.cmp_notification {
	padding: 14px 18px;
	margin-bottom: 16px;
	border-left: 4px solid var(--oj-blue);
	color: var(--oj-ink-2);
}

.cmp_notification.warning,
.cmp_notification.notice {
	border-left-color: var(--oj-gold);
}

.cmp_pagination {
	font-size: 14px;
	color: var(--oj-ink-3);
}

.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form input[type="url"],
.cmp_form textarea,
.cmp_form select,
.pkp_form input[type="text"],
.pkp_form input[type="email"],
.pkp_form input[type="password"],
.pkp_form textarea,
.pkp_form select {
	border: 1.5px solid var(--oj-line);
	border-radius: var(--oj-radius-sm);
	padding: 8px 12px;
	font-family: var(--oj-font);
	font-size: 15px;
	color: var(--oj-ink);
	background: var(--oj-white);
}

.cmp_form input:focus,
.cmp_form textarea:focus,
.cmp_form select:focus {
	border-color: var(--oj-blue);
	outline: 0;
	box-shadow: var(--oj-focus);
}

.cmp_form .label,
.cmp_form label {
	font-weight: 700;
	color: var(--oj-ink);
}

.page_search .search_results,
.page_about .page {
	color: var(--oj-ink-2);
}

/* ------------------------------------------------------------------ */
/* 10a. Halaman pencarian & form frontend (login, daftar, kontak)        */
/* ------------------------------------------------------------------ */
.page_search .search_input {
	position: relative;
	margin: 0 0 16px;
}

.page_search .search_input:before {
	content: "\f002";
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	font: normal normal normal 15px/1 FontAwesome;
	color: var(--oj-ink-3);
	pointer-events: none;
}

.page_search .search_input .query {
	width: 100%;
	max-width: 100%;
	height: 48px;
	box-sizing: border-box;
	padding: 0 16px 0 42px;
	border: 1.5px solid var(--oj-line);
	border-radius: var(--oj-radius-sm);
	font-family: var(--oj-font);
	font-size: 16px;
	line-height: 46px;
	color: var(--oj-ink);
	background: var(--oj-white);
}

.page_search .search_input .query:focus {
	outline: 0;
	border-color: var(--oj-blue);
	box-shadow: var(--oj-focus);
}

.page_search .search_advanced {
	margin: 0 0 16px;
	padding: 4px 20px 18px;
	border: 1px solid var(--oj-line);
	border-radius: var(--oj-radius);
	background: var(--oj-white);
}

.page_search .search_advanced legend {
	padding: 0 8px;
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--oj-blue);
}

.page_search .search_advanced .label,
.page_search .search_advanced label,
.page_search .date_range legend {
	display: block;
	margin: 12px 0 6px;
	padding: 0;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
	color: var(--oj-ink-2);
}

.page_search .date_range {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
}

.page_search .date_range fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

.page_search .date_range select,
.page_search .search_advanced input[type="text"],
.cmp_form select,
.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 textarea {
	box-sizing: border-box;
	height: 40px;
	padding: 0 12px;
	border: 1.5px solid var(--oj-line);
	border-radius: var(--oj-radius-sm);
	font-family: var(--oj-font);
	font-size: 14px;
	color: var(--oj-ink);
	background: var(--oj-white);
}

.cmp_form textarea {
	height: auto;
	min-height: 120px;
	padding: 10px 12px;
	line-height: 1.6;
}

.page_search .search_advanced input[type="text"],
.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form input[type="url"],
.cmp_form textarea {
	width: 100%;
	max-width: 420px;
}

.cmp_form textarea {
	max-width: 100%;
}

.page_search .date_range select {
	width: auto;
	min-width: 0;
	margin-right: 4px;
}

.page_search .submit {
	text-align: left;
}

.page_search .submit button,
.cmp_form .buttons .cmp_button,
.cmp_form button[type="submit"],
.cmp_form input[type="submit"] {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 20px;
	border: 1.5px solid var(--oj-navy);
	border-radius: var(--oj-radius-sm);
	background: var(--oj-navy);
	color: var(--oj-white);
	font-family: var(--oj-font);
	font-size: 14px;
	font-weight: 700;
	line-height: 40px;
	cursor: pointer;
	box-shadow: none;
}

.page_search .submit button {
	padding-left: 20px;
	padding-right: 18px;
	border-left: 1.5px solid var(--oj-navy);
	border-right: 1.5px solid var(--oj-navy);
}

.page_search .submit button:after {
	position: static;
	width: auto;
	height: auto;
	margin-left: 4px;
	font-size: 12px;
	line-height: 1;
	color: var(--oj-white);
	background: transparent;
	box-shadow: none;
	border-radius: 0;
}

.page_search .submit button:hover:after,
.page_search .submit button:focus:after {
	box-shadow: none;
}

.page_search .date_range [name*="Day"],
.page_search .date_range [name*="Month"],
.page_search .date_range [name*="Year"] {
	width: auto;
	min-width: 5.5em;
}

.page_search .date_range [name*="Month"] {
	min-width: 9em;
}

.page_search .submit button:hover,
.page_search .submit button:focus,
.cmp_form .buttons .cmp_button:hover,
.cmp_form button[type="submit"]:hover,
.cmp_form input[type="submit"]:hover {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
	color: var(--oj-white);
	box-shadow: none;
}

.cmp_form .buttons .cmp_button.secondary,
.cmp_form .buttons a.cmp_button {
	background: var(--oj-white);
	color: var(--oj-navy);
}

.cmp_form .fields .field,
.cmp_form .field {
	margin: 0 0 16px;
}

.cmp_form .fields .field label,
.cmp_form .field label,
.cmp_form fieldset legend {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 700;
	color: var(--oj-ink-2);
}

.cmp_form fieldset {
	border: 0;
	padding: 0;
	margin: 0 0 20px;
}

.cmp_form .checkbox label,
.cmp_form label.checkbox,
.cmp_form .field.checkbox label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-weight: 500;
}

.cmp_form .description {
	font-size: 13px;
	color: var(--oj-ink-3);
}

.cmp_form .required {
	color: #C0392B;
}

.page_search .search_results {
	margin: 24px 0 0;
	padding: 0;
	list-style: none;
}

.page_search .search_results > li {
	padding: 18px 22px;
	margin-bottom: 12px;
	background: var(--oj-white);
	border: 1px solid var(--oj-line);
	border-radius: var(--oj-radius);
	box-shadow: var(--oj-soft);
}

.page_search .search_results .obj_article_summary .subtitle {
	font-size: 13px;
	color: var(--oj-ink-3);
}

.cmp_pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin: 24px 0 0;
	font-size: 14px;
	color: var(--oj-ink-3);
}

.cmp_pagination a {
	display: inline-block;
	padding: 4px 12px;
	border: 1px solid var(--oj-line);
	border-radius: 999px;
	font-weight: 700;
	color: var(--oj-blue);
	text-decoration: none;
}

.cmp_pagination a:hover {
	border-color: var(--oj-blue);
}

.cmp_breadcrumbs ol {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: 4px 6px;
}

.cmp_breadcrumbs .separator {
	color: var(--oj-line);
	margin: 0 2px;
}

/* ------------------------------------------------------------------ */
/* 10b. Konten kiriman pengelola: tabel, gambar, sisa kelas Bootstrap    */
/* ------------------------------------------------------------------ */
/* Banyak jurnal menyalin markup Bootstrap (row/col, table, btn) dari tema lama
   ke deskripsi jurnal, blok, dan halaman statis. Shim kecil ini menjaga tata
   letaknya tetap masuk akal tanpa memuat Bootstrap. Berlaku di isi utama & blok. */
.pkp_structure_main table:not([class*="pkp_"]),
.pkp_block .content table {
	width: 100%;
	max-width: 100%;
	border-collapse: collapse;
	margin: 12px 0 16px;
	font-size: 14px;
	line-height: 1.5;
}

.pkp_structure_main table:not([class*="pkp_"]) th,
.pkp_structure_main table:not([class*="pkp_"]) td,
.pkp_block .content table th,
.pkp_block .content table td {
	padding: 8px 10px;
	border: 1px solid var(--oj-line);
	vertical-align: top;
	text-align: left;
}

.pkp_structure_main table:not([class*="pkp_"]) th,
.pkp_block .content table th {
	background: var(--oj-cream);
	color: var(--oj-navy);
	font-weight: 700;
}

.pkp_structure_main .table-responsive,
.pkp_block .content .table-responsive {
	overflow-x: auto;
}

/* Hanya baris Bootstrap sungguhan — `.obj_article_details .row` milik Default
   (dua kolom halaman artikel) dikecualikan; kalau tidak, flex-wrap menimpa grid
   di bagian 9 dan kolom detail (beserta sampul terbitan) jatuh ke bawah naskah. */
.pkp_structure_main .row:not(.obj_article_details .row) {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -8px;
}

.pkp_block .content .row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -8px;
}

.pkp_structure_main .row > [class*="col-"],
.pkp_block .content .row > [class*="col-"] {
	box-sizing: border-box;
	padding: 0 8px;
	flex: 0 0 100%;
	max-width: 100%;
	min-width: 0;
}

@media (min-width: 768px) {
	.pkp_structure_main .row > .col-1, .pkp_structure_main .row > .col-sm-1, .pkp_structure_main .row > .col-md-1, .pkp_structure_main .row > .col-lg-1 { flex-basis: 8.3333%; max-width: 8.3333%; }
	.pkp_structure_main .row > .col-2, .pkp_structure_main .row > .col-sm-2, .pkp_structure_main .row > .col-md-2, .pkp_structure_main .row > .col-lg-2 { flex-basis: 16.6667%; max-width: 16.6667%; }
	.pkp_structure_main .row > .col-3, .pkp_structure_main .row > .col-sm-3, .pkp_structure_main .row > .col-md-3, .pkp_structure_main .row > .col-lg-3 { flex-basis: 25%; max-width: 25%; }
	.pkp_structure_main .row > .col-4, .pkp_structure_main .row > .col-sm-4, .pkp_structure_main .row > .col-md-4, .pkp_structure_main .row > .col-lg-4 { flex-basis: 33.3333%; max-width: 33.3333%; }
	.pkp_structure_main .row > .col-5, .pkp_structure_main .row > .col-sm-5, .pkp_structure_main .row > .col-md-5, .pkp_structure_main .row > .col-lg-5 { flex-basis: 41.6667%; max-width: 41.6667%; }
	.pkp_structure_main .row > .col-6, .pkp_structure_main .row > .col-sm-6, .pkp_structure_main .row > .col-md-6, .pkp_structure_main .row > .col-lg-6 { flex-basis: 50%; max-width: 50%; }
	.pkp_structure_main .row > .col-7, .pkp_structure_main .row > .col-sm-7, .pkp_structure_main .row > .col-md-7, .pkp_structure_main .row > .col-lg-7 { flex-basis: 58.3333%; max-width: 58.3333%; }
	.pkp_structure_main .row > .col-8, .pkp_structure_main .row > .col-sm-8, .pkp_structure_main .row > .col-md-8, .pkp_structure_main .row > .col-lg-8 { flex-basis: 66.6667%; max-width: 66.6667%; }
	.pkp_structure_main .row > .col-9, .pkp_structure_main .row > .col-sm-9, .pkp_structure_main .row > .col-md-9, .pkp_structure_main .row > .col-lg-9 { flex-basis: 75%; max-width: 75%; }
	.pkp_structure_main .row > .col-10, .pkp_structure_main .row > .col-sm-10, .pkp_structure_main .row > .col-md-10, .pkp_structure_main .row > .col-lg-10 { flex-basis: 83.3333%; max-width: 83.3333%; }
	.pkp_structure_main .row > .col-11, .pkp_structure_main .row > .col-sm-11, .pkp_structure_main .row > .col-md-11, .pkp_structure_main .row > .col-lg-11 { flex-basis: 91.6667%; max-width: 91.6667%; }
	.pkp_structure_main .row > .col-12, .pkp_structure_main .row > .col-sm-12, .pkp_structure_main .row > .col-md-12, .pkp_structure_main .row > .col-lg-12 { flex-basis: 100%; max-width: 100%; }
}

.pkp_structure_main .img-responsive,
.pkp_structure_main .img-fluid,
.pkp_block .content .img-responsive,
.pkp_block .content .img-fluid {
	display: block;
	max-width: 100%;
	height: auto;
}

.pkp_structure_main .text-center,
.pkp_block .content .text-center { text-align: center; }

.pkp_structure_main .text-right,
.pkp_block .content .text-right { text-align: right; }

.pkp_structure_main .text-justify,
.pkp_block .content .text-justify { text-align: justify; }

.pkp_structure_main .btn,
.pkp_block .content .btn {
	display: inline-block;
	padding: 0 16px;
	border: 1.5px solid var(--oj-navy);
	border-radius: var(--oj-radius-sm);
	background: var(--oj-navy);
	color: var(--oj-white);
	font-weight: 700;
	font-size: 14px;
	line-height: 36px;
	text-decoration: none;
}

.pkp_structure_main .btn:hover,
.pkp_block .content .btn:hover {
	background: var(--oj-blue);
	border-color: var(--oj-blue);
	color: var(--oj-white);
}

.pkp_structure_main .well,
.pkp_structure_main .panel,
.pkp_structure_main .alert,
.pkp_block .content .well,
.pkp_block .content .panel,
.pkp_block .content .alert {
	padding: 14px 16px;
	margin: 12px 0;
	border: 1px solid var(--oj-line);
	border-radius: var(--oj-radius-sm);
	background: var(--oj-cream);
}

.pkp_structure_main hr,
.pkp_block .content hr {
	border: 0;
	border-top: 1px solid var(--oj-line);
	margin: 16px 0;
}

/* ------------------------------------------------------------------ */
/* 11. Footer navy                                                      */
/* ------------------------------------------------------------------ */
.pkp_structure_footer_wrapper {
	background: var(--oj-navy);
	border-top: 3px solid var(--oj-gold);
	color: var(--oj-light);
	margin-top: 24px;
}

.oj-nav-plain .pkp_structure_footer_wrapper {
	border-top-color: rgba(255, 255, 255, .12);
}

.pkp_structure_footer {
	text-align: left;
}

.pkp_footer_content {
	padding: 36px 0 20px;
	font-size: 14px;
	line-height: 1.7;
	color: var(--oj-light);
}

.pkp_footer_content a {
	color: var(--oj-white);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.pkp_footer_content a:hover {
	color: var(--oj-gold);
}

.pkp_footer_content p {
	margin: 0 0 8px;
}

.pkp_brand_footer {
	padding: 0 0 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	font-size: 12px;
	color: rgba(234, 242, 255, .6);
}

.pkp_brand_footer:before,
.pkp_brand_footer:after {
	content: none;
}

.pkp_brand_footer a {
	float: none;
	max-width: 110px;
	opacity: .55;
	transition: opacity var(--oj-dur) var(--oj-ease);
}

.pkp_brand_footer a:hover {
	opacity: .9;
}

.pkp_brand_footer img {
	display: block;
	filter: brightness(0) invert(1);
}

/* Kredit tema — dipasang lewat hook Templates::Common::Footer::PageFooter */
.oj-credit {
	white-space: nowrap;
	font-size: 12px;
	color: rgba(234, 242, 255, .6);
}

.oj-credit a {
	color: rgba(234, 242, 255, .85);
	text-decoration: none;
	font-weight: 700;
}

.oj-credit a:hover {
	color: var(--oj-gold);
}

/* ------------------------------------------------------------------ */
/* 12. Desktop (≥ 992 px)                                               */
/* ------------------------------------------------------------------ */
@media (min-width: 992px) {
	/* Header: nama jurnal kiri, ISSN kanan; nav user tetap di baris tipis paling atas */
	.pkp_head_wrapper {
		padding-top: 36px;
	}

	.has_site_logo .pkp_head_wrapper {
		padding-top: 36px;
	}

	.pkp_site_name_wrapper {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 24px;
		padding-top: 14px;
		padding-bottom: 18px;
		height: auto;
	}

	.pkp_site_name {
		position: relative;
		left: auto;
		right: auto;
		width: auto;
		flex: 1 1 auto;
		min-width: 0;
		padding: 0;
		font-size: 1em;
	}

	.pkp_site_name .is_text {
		display: block;
		max-height: none;
		padding: 0;
		font-size: 26px;
		line-height: 1.2;
		overflow: visible;
	}

	.pkp_site_name {
		display: block;
		height: auto;
	}

	.pkp_site_name .is_img img {
		max-height: 72px;
	}

	.oj-issn {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 6px;
		flex: 0 0 auto;
	}

	.oj-issn__item {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		padding: 4px 12px;
		border: 1px solid var(--oj-line);
		border-radius: 999px;
		background: var(--oj-cream);
		font-size: 12px;
		line-height: 20px;
		color: var(--oj-ink-2);
	}

	.oj-issn__label {
		font-weight: 700;
		letter-spacing: .08em;
		text-transform: uppercase;
		color: var(--oj-blue);
	}

	.oj-issn__value {
		font-family: var(--oj-mono);
		font-size: 13px;
		color: var(--oj-ink);
	}

	/* Nav user (Daftar / Masuk): bawaan Default absolut di pojok atas (dipakai hanya bila skrip tidak jalan) */
	.pkp_navigation_user_wrapper {
		padding-top: 6px;
	}

	/* …setelah dipindah skrip ke bar navigasi: statis, di kiri tombol Cari */
	.oj-nav-user-inbar .pkp_head_wrapper,
	.oj-nav-user-inbar .has_site_logo .pkp_head_wrapper {
		padding-top: 0;
	}

	.oj-nav-user-inbar .pkp_site_name_wrapper {
		padding-top: 22px;
		padding-bottom: 20px;
	}

	.oj-nav-user-inbar .pkp_navigation_user_wrapper {
		position: static;
		transform: none;
		left: auto;
		width: auto;
		padding: 0;
		margin: 0 4px 0 auto;
		flex: 0 0 auto;
		text-align: right;
		z-index: auto;
	}

	.oj-nav-user-inbar .pkp_navigation_user {
		display: flex;
		align-items: center;
		gap: 2px;
		width: auto;
		margin: 0;
		padding: 0 12px 0 0;
		border-right: 1px solid rgba(255, 255, 255, .2);
	}

	.oj-nav-user-inbar .pkp_navigation_user > li > a,
	.oj-nav-user-inbar .pkp_navigation_user > li > a:hover {
		color: var(--oj-white);
		font-size: 13px;
		font-weight: 700;
		padding: 6px 10px;
		border-radius: 999px;
		opacity: .85;
	}

	.oj-nav-user-inbar .pkp_navigation_user > li > a:hover {
		opacity: 1;
		background: rgba(255, 255, 255, .1);
	}

	.oj-nav-user-inbar .pkp_navigation_user > li > a:focus {
		background: var(--oj-white);
		color: var(--oj-navy);
		opacity: 1;
	}

	.oj-nav-user-inbar .pkp_navigation_user > li:last-child > a {
		margin-right: 0;
	}

	.oj-nav-user-inbar .pkp_navigation_user > li > a .task_count {
		background: var(--oj-gold);
		color: var(--oj-navy);
	}

	.oj-nav-user-inbar .pkp_navigation_user ul {
		right: 0;
		left: auto;
	}

	.oj-nav-user-inbar .pkp_navigation_primary {
		flex: 1 1 auto;
	}

	.pkp_navigation_user {
		font-size: 13px;
		padding-right: 0;
	}

	.pkp_navigation_user > li > a {
		color: var(--oj-ink-3);
		font-weight: 700;
		padding: 4px 10px;
		border-radius: 999px;
	}

	.pkp_navigation_user > li > a:hover {
		color: var(--oj-blue);
	}

	.pkp_navigation_user > li > a:focus {
		background: var(--oj-blue-100);
		color: var(--oj-blue);
	}

	.pkp_navigation_user > li:last-child > a {
		margin-right: -10px;
	}

	.pkp_navigation_user > li > a .task_count {
		background: var(--oj-blue);
		color: var(--oj-white);
	}

	/* Bar nav */
	.pkp_site_nav_menu {
		padding: 0;
	}

	.pkp_navigation_primary_row {
		width: 100%;
	}

	.pkp_navigation_primary_wrapper {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		min-height: 52px;
	}

	.pkp_navigation_primary {
		max-width: none;
		flex: 1 1 auto;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		text-align: left;
	}

	.pkp_navigation_primary > li:first-child a,
	.pkp_navigation_primary > li:last-child a {
		margin-left: 0;
		margin-right: 0;
	}

	.pkp_navigation_primary > li > a {
		position: relative;
		margin: 0;
		padding: 15px 14px 14px;
		border-bottom: 0;
		font-size: 14px;
		font-weight: 700;
		color: var(--oj-white);
		letter-spacing: .01em;
	}

	.pkp_navigation_primary > li > a:after {
		content: "";
		position: absolute;
		left: 14px;
		right: 14px;
		bottom: 8px;
		height: 2px;
		background: var(--oj-gold);
		transform: scaleX(0);
		transform-origin: left;
		transition: transform var(--oj-dur) var(--oj-ease);
	}

	.oj-nav-plain .pkp_navigation_primary > li > a:after {
		background: var(--oj-white);
	}

	.pkp_navigation_primary > li > a:hover {
		color: var(--oj-white);
		border-color: transparent;
	}

	.pkp_navigation_primary > li > a:hover:after,
	.pkp_navigation_primary > li > a:focus:after {
		transform: scaleX(1);
	}

	.pkp_navigation_primary > li > a:focus {
		background: transparent;
		color: var(--oj-white);
		box-shadow: inset 0 0 0 2px var(--oj-gold);
		border-radius: var(--oj-radius-xs);
	}

	.pkp_navigation_primary [aria-haspopup]:after {
		display: none;
	}

	/* Dropdown */
	.pkp_nav_list ul {
		width: 16em;
		padding: 6px;
		border-radius: var(--oj-radius-sm);
		border: 1px solid var(--oj-line);
		box-shadow: 0 12px 32px -8px rgba(11, 42, 91, .3);
	}

	.pkp_navigation_primary > li:hover ul {
		left: 4px;
	}

	.pkp_site_nav_menu .pkp_nav_list ul a,
	.pkp_nav_list ul a {
		border-left: 0;
		border-radius: var(--oj-radius-xs);
		padding: 8px 10px;
		font-weight: 500;
		font-size: 14px;
		color: var(--oj-ink);
	}

	.pkp_nav_list ul li:first-child a,
	.pkp_nav_list ul li:last-child a {
		border-radius: var(--oj-radius-xs);
	}

	.pkp_site_nav_menu .pkp_nav_list ul a:hover,
	.pkp_site_nav_menu .pkp_nav_list ul a:focus,
	.pkp_nav_list ul a:hover,
	.pkp_nav_list ul a:focus {
		background: var(--oj-blue-100);
		border-color: transparent;
		color: var(--oj-blue);
	}

	.pkp_navigation_primary ul a {
		padding-top: 8px;
		padding-bottom: 8px;
	}

	/* Tautan cari sebagai tombol pil */
	.pkp_navigation_search_wrapper {
		float: none;
		flex: 0 0 auto;
	}

	.pkp_navigation_search_wrapper a {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		margin: 0;
		padding: 0 16px 0 14px;
		border: 1.5px solid rgba(255, 255, 255, .4);
		border-radius: 999px;
		line-height: 34px;
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .01em;
		color: var(--oj-white);
		transition: background var(--oj-dur) var(--oj-ease), border-color var(--oj-dur) var(--oj-ease);
	}

	.pkp_navigation_search_wrapper a .fa {
		font-size: 12px;
		line-height: 1;
		opacity: .9;
	}

	.pkp_navigation_search_wrapper a:hover {
		background: rgba(255, 255, 255, .1);
		border-color: var(--oj-gold);
		color: var(--oj-white);
	}

	.pkp_navigation_search_wrapper a:focus {
		background: var(--oj-white);
		color: var(--oj-navy);
		border-color: var(--oj-white);
	}

	/* Isi + sidebar */
	.pkp_structure_content {
		padding-top: 32px;
	}

	.pkp_structure_main {
		padding: 0 32px 64px 0;
		width: 652px;
	}

	.pkp_structure_sidebar {
		width: 300px;
		padding-bottom: 48px;
	}

	.oj-sidebar-left .pkp_structure_sidebar {
		float: left;
	}

	.oj-sidebar-left .pkp_structure_main {
		float: right;
		padding: 0 0 64px 32px;
	}

	.oj-sidebar-none .pkp_structure_sidebar {
		display: none;
	}

	.oj-sidebar-none .pkp_structure_main {
		float: none;
		width: auto;
		padding: 0 0 64px;
	}

	.pkp_structure_main:first-child:last-child {
		margin-top: 0;
		width: 860px;
	}

	.pkp_page_index .cmp_announcements,
	.pkp_page_index .current_issue,
	.pkp_page_index .additional_content {
		padding: 28px 32px;
	}

	.pkp_page_index .current_issue > h2 {
		margin-top: 0;
	}

	.obj_article_details .entry_details {
		width: auto;
	}

	.obj_article_details .item {
		padding: 0 0 28px;
	}

	.obj_article_details .entry_details .item {
		padding: 16px 20px;
	}

	.obj_article_details > .page_title {
		font-size: 32px;
	}

	.pkp_footer_content {
		padding: 40px 0 24px;
	}
}

@media (min-width: 1200px) {
	.pkp_structure_main {
		width: 860px;
	}

	.pkp_structure_main:first-child:last-child {
		width: 1000px;
	}
}

/* ------------------------------------------------------------------ */
/* 13. Gerak: hormati preferensi pengguna                               */
/* ------------------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
	*,
	*:before,
	*:after {
		transition: none !important;
		animation: none !important;
	}
}

/* Cetak */
@media print {
	.pkp_site_nav_menu,
	.pkp_structure_sidebar,
	.pkp_structure_footer_wrapper {
		display: none;
	}

	body {
		background: #fff;
	}
}
