/* =========================================================
   Web Journal Theme - Clean CSS
   OJS 3.3
   Consolidated from staged patches
   ========================================================= */

/* ---------------------------------------------------------
   1. Base
   --------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box !important;
}

html,
body {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

body {
	margin: 0 !important;
	background: #f4f7fb !important;
	color: #1f2937 !important;
	font-family: Arial, Helvetica, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.7 !important;
}

a {
	color: #1d4ed8 !important;
	text-decoration: none !important;
}

a:hover {
	color: #0f172a !important;
}

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

ul,
ol {
	padding-left: 1.25rem !important;
}

.wj-page,
.pkp_structure_page {
	background: #f4f7fb !important;
	max-width: 100% !important;
	overflow-x: hidden !important;
}

.wj-container {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.wj-content-area {
	background: #f4f7fb !important;
	padding: 42px 0 56px !important;
}

.wj-content-layout {
	display: block !important;
	width: 100% !important;
}

.wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* ---------------------------------------------------------
   2. Accessibility
   --------------------------------------------------------- */

.cmp_skip_to_content {
	position: absolute !important;
	left: -9999px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.cmp_skip_to_content a:focus {
	position: fixed !important;
	left: 18px !important;
	top: 18px !important;
	z-index: 10000 !important;
	width: auto !important;
	height: auto !important;
	padding: 10px 14px !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.2) !important;
}

/* ---------------------------------------------------------
   3. Header
   --------------------------------------------------------- */

.wj-header {
	position: sticky !important;
	top: 0 !important;
	z-index: 9999 !important;
	background: #0f172a !important;
	color: #ffffff !important;
	margin: 0 !important;
	padding: 0 !important;
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.18) !important;
}

.wj-header-top {
	background: rgba(255, 255, 255, 0.055) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wj-header-top-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	min-height: 38px !important;
}

.wj-top-left,
.wj-top-right {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 14px !important;
	color: #cbd5e1 !important;
	font-size: 13px !important;
}

.wj-top-badge {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 22px !important;
	padding: 3px 9px !important;
	border-radius: 999px !important;
	background: rgba(59, 130, 246, 0.18) !important;
	color: #bfdbfe !important;
	font-weight: 800 !important;
}

.wj-top-right a {
	color: #cbd5e1 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
}

.wj-top-right a:hover {
	color: #ffffff !important;
}

.wj-main-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 30px !important;
	min-height: 88px !important;
	padding-top: 14px !important;
	padding-bottom: 14px !important;
}

.wj-brand {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	min-width: 0 !important;
}

.wj-brand-logo {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 64px !important;
	height: 64px !important;
	flex: 0 0 auto !important;
	overflow: hidden !important;
	background: #ffffff !important;
	border-radius: 16px !important;
}

.wj-brand-logo img {
	max-width: 52px !important;
	max-height: 52px !important;
	object-fit: contain !important;
}

.wj-brand-text {
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
}

.wj-brand-title {
	color: #ffffff !important;
	font-size: 28px !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.03em !important;
}

.wj-brand-title:hover {
	color: #ffffff !important;
}

.wj-brand-subtitle {
	display: block !important;
	margin-top: 4px !important;
	color: #cbd5e1 !important;
	font-size: 14px !important;
	font-weight: 400 !important;
}

.wj-nav {
	display: flex !important;
	align-items: center !important;
	gap: 18px !important;
	margin-left: auto !important;
}

.wj-primary-menu,
.wj-user-menu {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-primary-menu {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
}

.wj-primary-menu li {
	position: relative !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-primary-menu > li > a,
.wj-search-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 9px 14px !important;
	border-radius: 999px !important;
	color: #ffffff !important;
	font-size: 15px !important;
	font-weight: 800 !important;
	white-space: nowrap !important;
}

.wj-primary-menu > li > a:hover,
.wj-search-link:hover {
	background: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
}

.wj-primary-menu ul {
	display: none !important;
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	z-index: 9999 !important;
	min-width: 230px !important;
	margin: 0 !important;
	padding: 10px !important;
	background: #ffffff !important;
	border-radius: 16px !important;
	box-shadow: 0 20px 50px rgba(15, 23, 42, 0.22) !important;
}

.wj-primary-menu li:hover > ul,
.wj-primary-menu li:focus-within > ul {
	display: block !important;
}

.wj-primary-menu ul li {
	display: block !important;
	width: 100% !important;
}

.wj-primary-menu ul a {
	display: block !important;
	padding: 10px 12px !important;
	border-radius: 10px !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
}

.wj-primary-menu ul a:hover {
	background: #eff6ff !important;
	color: #1d4ed8 !important;
}

.wj-nav-actions {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.wj-search-link {
	background: rgba(255, 255, 255, 0.1) !important;
}

.wj-user-dropdown {
	display: flex !important;
	align-items: center !important;
}

.wj-user-menu {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
}

.wj-user-menu li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-user-menu a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 8px 12px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.wj-user-menu a:hover {
	background: #dbeafe !important;
	color: #0f172a !important;
}

.wj-menu-toggle {
	display: none !important;
}

/* ---------------------------------------------------------
   4. Buttons
   --------------------------------------------------------- */

.wj-btn,
.cmp_button,
.cmp_form .buttons button,
.page_search .submit button,
button.submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 11px 18px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

.wj-btn:hover,
.cmp_button:hover,
.cmp_form .buttons button:hover,
.page_search .submit button:hover,
button.submit:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

.wj-btn-primary {
	background: #ffffff !important;
	color: #0f172a !important;
}

.wj-btn-primary:hover {
	background: #dbeafe !important;
	color: #0f172a !important;
}

.wj-btn-secondary,
.wj-btn-dark {
	background: #0f172a !important;
	color: #ffffff !important;
}

.wj-btn-outline {
	background: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.24) !important;
}

.wj-btn-outline:hover {
	background: #ffffff !important;
	color: #0f172a !important;
}

.wj-btn-light {
	background: #ffffff !important;
	color: #1d4ed8 !important;
}

.wj-btn-light:hover {
	background: #eff6ff !important;
	color: #0f172a !important;
}

/* ---------------------------------------------------------
   5. Homepage
   --------------------------------------------------------- */

.wj-home-hero {
	position: relative !important;
	display: grid !important;
	grid-template-columns: 1.35fr 0.65fr !important;
	gap: 34px !important;
	align-items: stretch !important;
	overflow: hidden !important;
	padding: 58px !important;
	border-radius: 34px !important;
	background: linear-gradient(135deg, #0f172a, #1e293b) !important;
	color: #ffffff !important;
}

.wj-home-hero::before {
	content: "" !important;
	position: absolute !important;
	right: -120px !important;
	top: -120px !important;
	width: 360px !important;
	height: 360px !important;
	border-radius: 999px !important;
	background: rgba(59, 130, 246, 0.28) !important;
}

.wj-home-hero-main,
.wj-home-hero-side {
	position: relative !important;
	z-index: 2 !important;
}

.wj-eyebrow,
.wj-eyebrow-dark,
.wj-section-title span,
.wj-author-cta span {
	display: inline-flex !important;
	margin-bottom: 12px !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
}

.wj-eyebrow,
.wj-author-cta span {
	color: #bfdbfe !important;
}

.wj-eyebrow-dark,
.wj-section-title span {
	color: #1d4ed8 !important;
}

.wj-home-hero h1 {
	margin: 0 0 20px !important;
	color: #ffffff !important;
	font-size: 60px !important;
	line-height: 1.04 !important;
	font-weight: 900 !important;
	letter-spacing: -0.06em !important;
}

.wj-home-description {
	max-width: 760px !important;
	color: #dbeafe !important;
	font-size: 18px !important;
	line-height: 1.75 !important;
}

.wj-home-description p {
	margin-top: 0 !important;
	color: #dbeafe !important;
}

.wj-home-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin-top: 28px !important;
}

.wj-journal-card {
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	height: 100% !important;
	gap: 24px !important;
	padding: 28px !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 28px !important;
	background: rgba(255, 255, 255, 0.12) !important;
	backdrop-filter: blur(10px) !important;
}

.wj-journal-card-logo {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 138px !important;
	height: 138px !important;
	margin: 0 auto !important;
	overflow: hidden !important;
	background: #ffffff !important;
	border-radius: 28px !important;
}

.wj-journal-card-logo img {
	max-width: 112px !important;
	max-height: 112px !important;
	object-fit: contain !important;
}

.wj-journal-card-logo span {
	color: #0f172a !important;
	font-size: 34px !important;
	font-weight: 900 !important;
}

.wj-journal-card-content span {
	display: block !important;
	color: #bfdbfe !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}

.wj-journal-card-content strong {
	display: block !important;
	margin-top: 8px !important;
	color: #ffffff !important;
	font-size: 24px !important;
	line-height: 1.25 !important;
}

.wj-journal-card-content p {
	margin: 12px 0 0 !important;
	color: #dbeafe !important;
}

.wj-quick-menu {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
	margin-top: 28px !important;
}

.wj-quick-item,
.wj-highlight-card,
.wj-announcement-card,
.wj-additional-home-content {
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
}

.wj-quick-item {
	display: block !important;
	padding: 24px !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.wj-quick-item:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 20px 44px rgba(15, 23, 42, 0.1) !important;
}

.wj-quick-item span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 42px !important;
	height: 42px !important;
	margin-bottom: 18px !important;
	border-radius: 14px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-weight: 900 !important;
}

.wj-quick-item strong {
	display: block !important;
	color: #0f172a !important;
	font-size: 19px !important;
	line-height: 1.25 !important;
}

.wj-quick-item small {
	display: block !important;
	margin-top: 8px !important;
	color: #64748b !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
}

.wj-home-section {
	margin-top: 56px !important;
}

.wj-section-title {
	max-width: 760px !important;
	margin-bottom: 26px !important;
}

.wj-section-title h2 {
	margin: 0 !important;
	color: #0f172a !important;
	font-size: 38px !important;
	line-height: 1.14 !important;
	letter-spacing: -0.04em !important;
}

.wj-section-title p {
	margin: 14px 0 0 !important;
	color: #64748b !important;
	font-size: 16px !important;
}

.wj-highlight-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 20px !important;
}

.wj-highlight-card,
.wj-announcement-card,
.wj-additional-home-content {
	padding: 28px !important;
}

.wj-highlight-card strong {
	display: block !important;
	color: #0f172a !important;
	font-size: 22px !important;
	line-height: 1.25 !important;
}

.wj-highlight-card p {
	margin: 12px 0 0 !important;
	color: #64748b !important;
}

.wj-announcement-grid {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 20px !important;
}

.wj-current-issue-pro {
	padding: 36px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 32px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08) !important;
}

.wj-current-issue-header {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: space-between !important;
	gap: 24px !important;
	margin-bottom: 24px !important;
}

.wj-current-issue-header h2 {
	margin: 0 !important;
	color: #0f172a !important;
	font-size: 38px !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
}

.wj-current-issue-header p {
	margin: 10px 0 0 !important;
	color: #64748b !important;
}

.wj-current-issue-content {
	margin-top: 16px !important;
}

.wj-scope-section {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 28px !important;
	align-items: center !important;
	padding: 42px !important;
	border-radius: 32px !important;
	background: #0f172a !important;
	color: #ffffff !important;
}

.wj-scope-content h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: 38px !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
}

.wj-scope-content p {
	margin: 16px 0 24px !important;
	color: #dbeafe !important;
}

.wj-scope-list {
	display: grid !important;
	gap: 16px !important;
}

.wj-scope-list div {
	padding: 20px !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	border-radius: 22px !important;
	background: rgba(255, 255, 255, 0.1) !important;
}

.wj-scope-list strong {
	display: block !important;
	color: #ffffff !important;
	font-size: 19px !important;
}

.wj-scope-list span {
	display: block !important;
	margin-top: 6px !important;
	color: #cbd5e1 !important;
}

.wj-indexing-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 18px !important;
}

.wj-indexing-card {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 128px !important;
	padding: 22px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.wj-indexing-card:hover {
	transform: translateY(-4px) !important;
	box-shadow: 0 22px 48px rgba(15, 23, 42, 0.11) !important;
}

.wj-indexing-card img {
	display: block !important;
	max-width: 150px !important;
	max-height: 48px !important;
	object-fit: contain !important;
	margin-bottom: 14px !important;
}

.wj-indexing-card strong {
	display: block !important;
	color: #0f172a !important;
	font-size: 15px !important;
	font-weight: 900 !important;
	text-align: center !important;
}

.wj-author-cta {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 28px !important;
	margin-top: 56px !important;
	padding: 42px !important;
	border-radius: 32px !important;
	background: linear-gradient(135deg, #1d4ed8, #0f172a) !important;
	color: #ffffff !important;
}

.wj-author-cta h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: 38px !important;
	line-height: 1.15 !important;
	letter-spacing: -0.04em !important;
}

.wj-author-cta p {
	max-width: 720px !important;
	margin: 12px 0 0 !important;
	color: #dbeafe !important;
}

/* ---------------------------------------------------------
   6. Footer
   --------------------------------------------------------- */

.wj-footer {
	margin-top: 64px !important;
	background: #0f172a !important;
	color: #cbd5e1 !important;
}

.wj-footer-main {
	display: grid !important;
	grid-template-columns: 1.5fr 0.75fr 0.75fr 0.75fr !important;
	gap: 34px !important;
	padding-top: 56px !important;
	padding-bottom: 44px !important;
}

.wj-footer-brand-row {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin-bottom: 18px !important;
}

.wj-footer-brand-row img {
	width: 64px !important;
	height: 64px !important;
	object-fit: contain !important;
	padding: 8px !important;
	background: #ffffff !important;
	border-radius: 16px !important;
}

.wj-footer h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: 24px !important;
	line-height: 1.2 !important;
}

.wj-footer h3 {
	margin: 0 0 16px !important;
	color: #ffffff !important;
	font-size: 16px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}

.wj-footer-brand-row p {
	margin: 5px 0 0 !important;
	color: #94a3b8 !important;
	font-size: 14px !important;
}

.wj-footer-description {
	max-width: 520px !important;
	margin: 0 !important;
	color: #cbd5e1 !important;
	font-size: 15px !important;
	line-height: 1.75 !important;
}

.wj-footer-issn {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin-top: 18px !important;
}

.wj-footer-issn span {
	display: inline-flex !important;
	padding: 6px 10px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.08) !important;
	color: #e5e7eb !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

.wj-footer-column ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-footer-column li {
	margin-bottom: 10px !important;
}

.wj-footer-column a {
	color: #cbd5e1 !important;
	font-size: 15px !important;
}

.wj-footer-column a:hover {
	color: #ffffff !important;
}

.wj-page-footer {
	padding-top: 22px !important;
	padding-bottom: 22px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
	color: #cbd5e1 !important;
}

.wj-footer-bottom {
	padding: 18px 0 !important;
	background: rgba(0, 0, 0, 0.22) !important;
}

.wj-footer-bottom-inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 18px !important;
	color: #94a3b8 !important;
	font-size: 14px !important;
}

/* ---------------------------------------------------------
   7. Common Pages, Breadcrumb, Forms, Pagination
   --------------------------------------------------------- */

.page {
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	padding: 38px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

.page h1 {
	margin-top: 0 !important;
	color: #0f172a !important;
	font-size: 42px !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

.page h2 {
	color: #0f172a !important;
	font-size: 30px !important;
	line-height: 1.2 !important;
	font-weight: 900 !important;
	letter-spacing: -0.035em !important;
}

.page h3 {
	color: #0f172a !important;
	font-size: 23px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
}

.page p {
	color: #334155 !important;
}

.cmp_breadcrumbs {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 28px !important;
	padding: 12px 16px !important;
	overflow: hidden !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 999px !important;
	font-size: 14px !important;
}

.cmp_breadcrumbs ol {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.cmp_breadcrumbs a {
	color: #1d4ed8 !important;
	font-weight: 700 !important;
}

.cmp_breadcrumbs .current {
	color: #64748b !important;
}

.cmp_form {
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 28px !important;
	padding: 28px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
}

.cmp_form fieldset {
	margin-bottom: 22px !important;
	padding: 22px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
}

.cmp_form legend {
	color: #0f172a !important;
	font-weight: 900 !important;
}

.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form input[type="search"],
.cmp_form textarea,
.cmp_form select,
.page_search input[type="text"],
.page_search input[type="search"],
.page_search select {
	width: 100% !important;
	min-height: 44px !important;
	padding: 10px 14px !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 14px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	font-size: 15px !important;
}

.cmp_form input:focus,
.cmp_form textarea:focus,
.cmp_form select:focus,
.page_search input:focus,
.page_search select:focus {
	outline: none !important;
	border-color: #1d4ed8 !important;
	box-shadow: 0 0 0 4px rgba(29, 78, 216, 0.12) !important;
}

.cmp_pagination {
	margin-top: 34px !important;
}

.cmp_pagination ul {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.cmp_pagination a,
.cmp_pagination .current {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 38px !important;
	min-height: 38px !important;
	padding: 8px 12px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 999px !important;
	background: #f8fafc !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 800 !important;
}

.cmp_pagination .current {
	background: #0f172a !important;
	color: #ffffff !important;
}

/* ---------------------------------------------------------
   8. Article View
   --------------------------------------------------------- */

body.pkp_page_article .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 64px !important;
	overflow-x: hidden !important;
}

body.pkp_page_article .wj-content-layout {
	display: block !important;
}

body.pkp_page_article .page_article {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details {
	display: block !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	overflow: visible !important;
}

body.pkp_page_article .obj_article_details .page_title,
body.pkp_page_article .obj_article_details > h1 {
	display: block !important;
	width: 100% !important;
	max-width: 980px !important;
	margin: 0 0 34px !important;
	padding: 0 !important;
	position: relative !important;
	z-index: 1 !important;
	color: #0f172a !important;
	font-size: clamp(32px, 3.4vw, 44px) !important;
	line-height: 1.14 !important;
	font-weight: 900 !important;
	letter-spacing: -0.04em !important;
	overflow-wrap: break-word !important;
}

body.pkp_page_article .obj_article_details .row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 360px !important;
	gap: 36px !important;
	align-items: start !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	overflow: visible !important;
}

body.pkp_page_article .obj_article_details .row > * {
	float: none !important;
	width: auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
}

body.pkp_page_article .obj_article_details .main_entry,
body.pkp_page_article .obj_article_details .entry_details {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 26px !important;
	box-shadow: 0 16px 42px rgba(15, 23, 42, 0.06) !important;
	overflow: hidden !important;
}

body.pkp_page_article .obj_article_details .main_entry {
	grid-column: 1 / 2 !important;
	padding: 32px !important;
}

body.pkp_page_article .obj_article_details .entry_details {
	grid-column: 2 / 3 !important;
	padding: 26px !important;
	position: sticky !important;
	top: 150px !important;
}

body.pkp_page_article .obj_article_details,
body.pkp_page_article .obj_article_details *,
body.pkp_page_article .main_entry,
body.pkp_page_article .entry_details,
body.pkp_page_article .abstract,
body.pkp_page_article .value,
body.pkp_page_article .item,
body.pkp_page_article .item p,
body.pkp_page_article .item div {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: break-word !important;
	word-break: normal !important;
	white-space: normal !important;
}

body.pkp_page_article .obj_article_details .item {
	margin: 0 0 26px !important;
	padding: 0 0 24px !important;
	border-bottom: 1px solid #e5e7eb !important;
}

body.pkp_page_article .obj_article_details .item:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

body.pkp_page_article .obj_article_details .main_entry .item .label,
body.pkp_page_article .obj_article_details .main_entry .item h2 {
	margin: 0 0 14px !important;
	color: #0f172a !important;
	font-size: 24px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

body.pkp_page_article .obj_article_details .entry_details .item .label,
body.pkp_page_article .obj_article_details .entry_details .item h2,
body.pkp_page_article .obj_article_details .entry_details h2 {
	margin: 0 0 12px !important;
	color: #0f172a !important;
	font-size: 15px !important;
	line-height: 1.3 !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}

body.pkp_page_article .obj_article_details .main_entry p,
body.pkp_page_article .obj_article_details .main_entry div,
body.pkp_page_article .obj_article_details .main_entry .abstract,
body.pkp_page_article .obj_article_details .main_entry .value {
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

body.pkp_page_article .obj_article_details .entry_details p,
body.pkp_page_article .obj_article_details .entry_details div,
body.pkp_page_article .obj_article_details .entry_details .value {
	color: #475569 !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
}

body.pkp_page_article .obj_article_details .authors {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
	gap: 12px !important;
	width: 100% !important;
	max-width: 100% !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .authors li {
	list-style: none !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 16px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
}

body.pkp_page_article .obj_article_details .authors .name {
	display: block !important;
	color: #0f172a !important;
	font-size: 16px !important;
	font-weight: 900 !important;
	line-height: 1.35 !important;
}

body.pkp_page_article .obj_article_details .authors .affiliation,
body.pkp_page_article .obj_article_details .authors .orcid {
	display: block !important;
	margin-top: 4px !important;
	color: #64748b !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

body.pkp_page_article .obj_article_details .keywords .value,
body.pkp_page_article .obj_article_details .subjects .value {
	color: #334155 !important;
	font-size: 14px !important;
	line-height: 1.65 !important;
}

body.pkp_page_article .obj_article_details .galleys,
body.pkp_page_article .obj_article_details .item.galleys {
	padding: 22px !important;
	background: #0f172a !important;
	border: none !important;
	border-radius: 22px !important;
}

body.pkp_page_article .obj_article_details .galleys .label,
body.pkp_page_article .obj_article_details .galleys h2,
body.pkp_page_article .obj_article_details .item.galleys .label,
body.pkp_page_article .obj_article_details .item.galleys h2 {
	color: #ffffff !important;
}

body.pkp_page_article .obj_article_details .galleys_links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	list-style: none !important;
	margin: 12px 0 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links a,
body.pkp_page_article .obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 40px !important;
	padding: 9px 15px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

body.pkp_page_article .obj_article_details .entry_details a,
body.pkp_page_article .obj_article_details .doi a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	word-break: break-word !important;
	overflow-wrap: anywhere !important;
}

body.pkp_page_article .obj_article_details .doi a {
	display: inline-flex !important;
	padding: 8px 12px !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

body.pkp_page_article .obj_article_details .citation_display,
body.pkp_page_article .obj_article_details .citation_formats {
	max-width: 100% !important;
	overflow: hidden !important;
	padding: 16px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
}

body.pkp_page_article .obj_article_details .references p,
body.pkp_page_article .obj_article_details .references div {
	color: #334155 !important;
	font-size: 15px !important;
	line-height: 1.8 !important;
}

/* ---------------------------------------------------------
   9. Issue, Archive, Search
   --------------------------------------------------------- */

body.pkp_page_issue .wj-content-area,
body.pkp_page_search .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 42px !important;
	padding-bottom: 56px !important;
	overflow-x: hidden !important;
}

body.pkp_page_issue .wj-content-layout,
body.pkp_page_search .wj-content-layout {
	display: block !important;
	width: 100% !important;
}

body.pkp_page_issue,
body.pkp_page_issue *,
body.pkp_page_issue .page,
body.pkp_page_issue .page_issue,
body.pkp_page_issue .obj_issue_toc {
	box-sizing: border-box !important;
	max-width: 100% !important;
}

body.pkp_page_issue,
body.pkp_page_issue .pkp_structure_page,
body.pkp_page_issue .wj-page,
body.pkp_page_issue .wj-content-area,
body.pkp_page_issue .wj-main-content {
	overflow-x: hidden !important;
}

body.pkp_page_issue .page,
body.pkp_page_issue .page_issue,
body.pkp_page_issue .obj_issue_toc,
body.pkp_page_search .page,
body.pkp_page_search .page_search {
	display: block !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 34px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 28px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
	overflow: hidden !important;
}

body.pkp_page_issue h1,
body.pkp_page_issue .page h1,
body.pkp_page_issue .page_issue h1,
body.pkp_page_issue .obj_issue_toc h1,
body.pkp_page_search h1 {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 26px !important;
	padding: 0 !important;
	color: #0f172a !important;
	font-size: 42px !important;
	line-height: 1.15 !important;
	font-weight: 900 !important;
	letter-spacing: -0.04em !important;
	white-space: normal !important;
	overflow: visible !important;
	text-overflow: unset !important;
	overflow-wrap: break-word !important;
}

body.pkp_page_issue .published,
body.pkp_page_issue .date_published {
	display: block !important;
	width: 100% !important;
	margin: 0 0 28px !important;
	padding: 22px 24px !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
	background: #f8fafc !important;
	color: #334155 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	white-space: normal !important;
}

body.pkp_page_issue .heading,
body.pkp_page_issue .section h2,
body.pkp_page_issue .section_title,
body.pkp_page_issue h2 {
	display: block !important;
	width: 100% !important;
	margin: 30px 0 20px !important;
	padding: 0 0 14px !important;
	border-bottom: 2px solid #e5e7eb !important;
	color: #0f172a !important;
	font-size: 28px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: -0.03em !important;
}

body.pkp_page_issue .sections,
body.pkp_page_issue .section,
body.pkp_page_issue .articles {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	overflow: hidden !important;
}

.obj_article_summary,
body.pkp_page_issue .obj_article_summary,
body.pkp_page_search .obj_article_summary {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 0 18px !important;
	padding: 24px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.055) !important;
	overflow: hidden !important;
}

.obj_article_summary,
.obj_article_summary * {
	max-width: 100% !important;
	min-width: 0 !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
	text-overflow: unset !important;
}

.obj_article_summary .title {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 10px !important;
	padding: 0 !important;
	overflow: visible !important;
	white-space: normal !important;
}

.obj_article_summary .title a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	color: #0f172a !important;
	font-size: 21px !important;
	line-height: 1.4 !important;
	font-weight: 900 !important;
	letter-spacing: -0.02em !important;
	white-space: normal !important;
	overflow: visible !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

.obj_article_summary .title a:hover {
	color: #1d4ed8 !important;
}

.obj_article_summary .subtitle {
	display: block !important;
	margin-top: 6px !important;
	color: #475569 !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
}

.obj_article_summary .authors {
	display: block !important;
	margin-top: 10px !important;
	color: #64748b !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
	white-space: normal !important;
}

.obj_article_summary .pages,
.obj_article_summary .published {
	display: inline-flex !important;
	margin-top: 12px !important;
	margin-right: 8px !important;
	padding: 5px 10px !important;
	border-radius: 999px !important;
	background: #f8fafc !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

.obj_article_summary .galleys_links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 16px 0 0 !important;
	padding: 0 !important;
}

.obj_article_summary .galleys_links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.obj_article_summary .galleys_links a,
.obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 8px 14px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

.obj_article_summary .galleys_links a:hover,
.obj_galley_link:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

body.pkp_page_issue.pkp_op_archive .issues_archive,
body.pkp_page_issue_archive .issues_archive,
body.pkp_page_issue_archive .issues {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 20px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_issue.pkp_op_archive .issues_archive > li,
body.pkp_page_issue_archive .issues_archive > li,
body.pkp_page_issue_archive .issues > li {
	display: block !important;
	margin: 0 !important;
	padding: 26px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

body.pkp_page_issue.pkp_op_archive .issues_archive > li:hover,
body.pkp_page_issue_archive .issues_archive > li:hover,
body.pkp_page_issue_archive .issues > li:hover {
	transform: translateY(-3px) !important;
	border-color: #bfdbfe !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.09) !important;
}

body.pkp_page_issue.pkp_op_archive .issues_archive a,
body.pkp_page_issue_archive .issues_archive a,
body.pkp_page_issue_archive .issues a {
	color: #0f172a !important;
	font-size: 21px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

body.pkp_page_issue.pkp_op_archive .issues_archive a:hover,
body.pkp_page_issue_archive .issues_archive a:hover,
body.pkp_page_issue_archive .issues a:hover {
	color: #1d4ed8 !important;
}

body.pkp_page_issue.pkp_op_archive .description,
body.pkp_page_issue_archive .description,
body.pkp_page_issue_archive .published {
	margin-top: 10px !important;
	color: #64748b !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
}

body.pkp_page_search .cmp_form,
body.pkp_page_search form {
	margin-bottom: 34px !important;
	padding: 26px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: none !important;
}

body.pkp_page_search .search_results,
body.pkp_page_search .articles {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ---------------------------------------------------------
   10. Sidebar Blocks
   --------------------------------------------------------- */

.wj-sidebar,
.pkp_structure_sidebar {
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 28px !important;
	padding: 24px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
}

.pkp_block {
	margin-bottom: 24px !important;
	padding-bottom: 22px !important;
	border-bottom: 1px solid #e5e7eb !important;
}

.pkp_block:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

.pkp_block .title {
	margin: 0 0 12px !important;
	color: #0f172a !important;
	font-size: 17px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
}

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

.pkp_block li {
	margin-bottom: 8px !important;
}

.pkp_block a {
	color: #1d4ed8 !important;
	font-weight: 700 !important;
}

/* ---------------------------------------------------------
   11. Responsive
   --------------------------------------------------------- */

@media (max-width: 1100px) {
	.wj-nav {
		gap: 10px !important;
	}

	.wj-primary-menu > li > a,
	.wj-search-link {
		padding-left: 10px !important;
		padding-right: 10px !important;
		font-size: 14px !important;
	}

	.wj-footer-main {
		grid-template-columns: 1fr 1fr !important;
	}

	body.pkp_page_article .obj_article_details .row {
		grid-template-columns: minmax(0, 1fr) 320px !important;
		gap: 28px !important;
	}

	body.pkp_page_article .obj_article_details .entry_details {
		top: 135px !important;
	}
}

@media (max-width: 1024px) {
	.wj-home-hero,
	.wj-scope-section {
		grid-template-columns: 1fr !important;
	}

	.wj-quick-menu,
	.wj-indexing-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.wj-highlight-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 960px) {
	.wj-menu-toggle {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		border: 0 !important;
		border-radius: 12px !important;
		background: rgba(255, 255, 255, 0.12) !important;
		cursor: pointer !important;
	}

	.wj-menu-toggle span {
		display: block !important;
		width: 20px !important;
		height: 2px !important;
		margin: 3px 0 !important;
		background: #ffffff !important;
		border-radius: 999px !important;
	}

	.wj-nav {
		display: none !important;
		position: absolute !important;
		left: 20px !important;
		right: 20px !important;
		top: 126px !important;
		z-index: 9999 !important;
		padding: 18px !important;
		background: #ffffff !important;
		border-radius: 22px !important;
		box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24) !important;
	}

	body.wj-menu-open .wj-nav {
		display: block !important;
	}

	.wj-primary-menu {
		display: block !important;
	}

	.wj-primary-menu > li > a,
	.wj-search-link {
		display: flex !important;
		justify-content: flex-start !important;
		color: #0f172a !important;
	}

	.wj-primary-menu ul {
		position: static !important;
		display: block !important;
		padding: 0 0 0 16px !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.wj-primary-menu ul a {
		color: #334155 !important;
	}

	.wj-nav-actions {
		display: block !important;
		margin-top: 12px !important;
	}

	.wj-user-menu {
		display: block !important;
		margin-top: 10px !important;
	}

	.wj-user-menu a {
		display: flex !important;
		margin-top: 8px !important;
		background: #0f172a !important;
		color: #ffffff !important;
	}

	body.pkp_page_article .wj-content-area {
		padding-top: 36px !important;
	}

	body.pkp_page_article .obj_article_details .row {
		display: block !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 24px !important;
		position: static !important;
		padding: 24px !important;
		border-radius: 22px !important;
	}
}

@media (max-width: 900px) {
	body.pkp_page_issue .page,
	body.pkp_page_issue .page_issue,
	body.pkp_page_issue .obj_issue_toc,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search {
		padding: 28px !important;
		border-radius: 24px !important;
	}

	body.pkp_page_issue.pkp_op_archive .issues_archive,
	body.pkp_page_issue_archive .issues_archive,
	body.pkp_page_issue_archive .issues {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 768px) {
	.wj-home-hero {
		padding: 32px !important;
		border-radius: 26px !important;
	}

	.wj-home-hero h1 {
		font-size: 40px !important;
	}

	.wj-quick-menu,
	.wj-announcement-grid,
	.wj-indexing-grid {
		grid-template-columns: 1fr !important;
	}

	.wj-current-issue-header,
	.wj-author-cta {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.wj-current-issue-pro,
	.wj-scope-section,
	.wj-author-cta {
		padding: 28px !important;
		border-radius: 26px !important;
	}

	.wj-section-title h2,
	.wj-current-issue-header h2,
	.wj-scope-content h2,
	.wj-author-cta h2 {
		font-size: 30px !important;
	}

	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 34px !important;
		line-height: 1.15 !important;
	}

	body.pkp_page_issue h1,
	body.pkp_page_issue .page h1,
	body.pkp_page_issue .page_issue h1,
	body.pkp_page_issue .obj_issue_toc h1,
	body.pkp_page_search h1 {
		font-size: 32px !important;
	}

	.obj_article_summary {
		padding: 22px !important;
		border-radius: 20px !important;
	}

	.obj_article_summary .title a {
		font-size: 19px !important;
	}
}

@media (max-width: 700px) {
	.wj-header-top {
		display: none !important;
	}

	.wj-footer-main,
	.wj-indexing-grid {
		grid-template-columns: 1fr !important;
	}

	.wj-footer-bottom-inner {
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.wj-footer-brand-row {
		align-items: flex-start !important;
	}
}

@media (max-width: 640px) {
	.wj-container {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	.wj-brand-title {
		font-size: 21px !important;
	}

	.wj-brand-subtitle {
		font-size: 12px !important;
	}

	.wj-nav {
		top: 94px !important;
	}
}

@media (max-width: 520px) {
	.page,
	body.pkp_page_issue .page,
	body.pkp_page_issue .page_issue,
	body.pkp_page_issue .obj_issue_toc,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1,
	body.pkp_page_issue h1,
	body.pkp_page_issue .page h1,
	body.pkp_page_issue .page_issue h1,
	body.pkp_page_issue .obj_issue_toc h1,
	body.pkp_page_search h1 {
		font-size: 28px !important;
		line-height: 1.16 !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_article .obj_article_details .main_entry p,
	body.pkp_page_article .obj_article_details .main_entry div,
	body.pkp_page_article .obj_article_details .main_entry .abstract,
	body.pkp_page_article .obj_article_details .main_entry .value {
		font-size: 15px !important;
	}

	body.pkp_page_issue .heading,
	body.pkp_page_issue .section h2,
	body.pkp_page_issue .section_title,
	body.pkp_page_issue h2 {
		font-size: 23px !important;
	}
}
/* =========================================================
   TAHAP 7 - About, Submissions, Editorial Team, Contact
   OJS 3.3
   ========================================================= */

/* Halaman About dan turunannya */
body.pkp_page_about .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 48px !important;
	padding-bottom: 64px !important;
}

body.pkp_page_about .wj-content-layout {
	display: block !important;
}

body.pkp_page_about .wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
}

/* Card utama halaman */
body.pkp_page_about .page,
body.pkp_page_about .page_about,
body.pkp_page_about .page_submissions,
body.pkp_page_about .page_contact,
body.pkp_page_about .page_editorial_team,
body.pkp_page_about .page_privacy {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 38px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

/* Judul halaman */
body.pkp_page_about .page h1,
body.pkp_page_about .page_about h1,
body.pkp_page_about .page_submissions h1,
body.pkp_page_about .page_contact h1,
body.pkp_page_about .page_editorial_team h1,
body.pkp_page_about .page_privacy h1 {
	margin: 0 0 28px 0 !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

/* Heading isi */
body.pkp_page_about .page h2,
body.pkp_page_about .page h3,
body.pkp_page_about .page_about h2,
body.pkp_page_about .page_about h3,
body.pkp_page_about .page_submissions h2,
body.pkp_page_about .page_submissions h3,
body.pkp_page_about .page_contact h2,
body.pkp_page_about .page_contact h3,
body.pkp_page_about .page_editorial_team h2,
body.pkp_page_about .page_editorial_team h3,
body.pkp_page_about .page_privacy h2,
body.pkp_page_about .page_privacy h3 {
	margin-top: 32px !important;
	margin-bottom: 14px !important;
	color: #0f172a !important;
	font-weight: 900 !important;
	line-height: 1.25 !important;
	letter-spacing: -0.025em !important;
}

body.pkp_page_about .page h2,
body.pkp_page_about .page_about h2,
body.pkp_page_about .page_submissions h2,
body.pkp_page_about .page_contact h2,
body.pkp_page_about .page_editorial_team h2,
body.pkp_page_about .page_privacy h2 {
	font-size: 30px !important;
	padding-bottom: 12px !important;
	border-bottom: 2px solid #e5e7eb !important;
}

body.pkp_page_about .page h3,
body.pkp_page_about .page_about h3,
body.pkp_page_about .page_submissions h3,
body.pkp_page_about .page_contact h3,
body.pkp_page_about .page_editorial_team h3,
body.pkp_page_about .page_privacy h3 {
	font-size: 23px !important;
}

/* Paragraf */
body.pkp_page_about .page p,
body.pkp_page_about .page_about p,
body.pkp_page_about .page_submissions p,
body.pkp_page_about .page_contact p,
body.pkp_page_about .page_editorial_team p,
body.pkp_page_about .page_privacy p {
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

/* Link */
body.pkp_page_about .page a,
body.pkp_page_about .page_about a,
body.pkp_page_about .page_submissions a,
body.pkp_page_about .page_contact a,
body.pkp_page_about .page_editorial_team a,
body.pkp_page_about .page_privacy a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	word-break: break-word !important;
}

body.pkp_page_about .page a:hover,
body.pkp_page_about .page_about a:hover,
body.pkp_page_about .page_submissions a:hover,
body.pkp_page_about .page_contact a:hover,
body.pkp_page_about .page_editorial_team a:hover,
body.pkp_page_about .page_privacy a:hover {
	color: #0f172a !important;
}

/* List */
body.pkp_page_about .page ul,
body.pkp_page_about .page ol,
body.pkp_page_about .page_about ul,
body.pkp_page_about .page_about ol,
body.pkp_page_about .page_submissions ul,
body.pkp_page_about .page_submissions ol,
body.pkp_page_about .page_contact ul,
body.pkp_page_about .page_contact ol,
body.pkp_page_about .page_editorial_team ul,
body.pkp_page_about .page_editorial_team ol,
body.pkp_page_about .page_privacy ul,
body.pkp_page_about .page_privacy ol {
	margin: 18px 0 24px 0 !important;
	padding-left: 22px !important;
	color: #334155 !important;
}

body.pkp_page_about .page li,
body.pkp_page_about .page_about li,
body.pkp_page_about .page_submissions li,
body.pkp_page_about .page_contact li,
body.pkp_page_about .page_editorial_team li,
body.pkp_page_about .page_privacy li {
	margin-bottom: 10px !important;
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.75 !important;
}

/* Block informasi agar konten bawaan terlihat seperti section */
body.pkp_page_about .page > div,
body.pkp_page_about .page_about > div,
body.pkp_page_about .page_submissions > div,
body.pkp_page_about .page_contact > div,
body.pkp_page_about .page_editorial_team > div,
body.pkp_page_about .page_privacy > div {
	max-width: 100% !important;
}

/* Submissions khusus */
body.pkp_page_about.pkp_op_submissions .page,
body.pkp_page_about.pkp_op_submissions .page_submissions {
	max-width: 1180px !important;
}

body.pkp_page_about.pkp_op_submissions .submission_checklist,
body.pkp_page_about.pkp_op_submissions .author_guidelines,
body.pkp_page_about.pkp_op_submissions .copyright_notice,
body.pkp_page_about.pkp_op_submissions .privacy_statement {
	margin-top: 28px !important;
	padding: 26px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
}

/* Checklist submissions */
body.pkp_page_about.pkp_op_submissions .submission_checklist ul,
body.pkp_page_about.pkp_op_submissions .submission_checklist ol {
	margin: 0 !important;
	padding-left: 0 !important;
	list-style: none !important;
}

body.pkp_page_about.pkp_op_submissions .submission_checklist li {
	position: relative !important;
	margin-bottom: 14px !important;
	padding: 16px 18px 16px 48px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
}

body.pkp_page_about.pkp_op_submissions .submission_checklist li:before {
	content: "✓" !important;
	position: absolute !important;
	left: 18px !important;
	top: 16px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 22px !important;
	height: 22px !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

/* Tombol make submission */
body.pkp_page_about.pkp_op_submissions .cmp_button,
body.pkp_page_about.pkp_op_submissions a.cmp_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 44px !important;
	margin-top: 18px !important;
	padding: 11px 20px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	border: none !important;
}

body.pkp_page_about.pkp_op_submissions .cmp_button:hover,
body.pkp_page_about.pkp_op_submissions a.cmp_button:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

/* Editorial team */
body.pkp_page_about.pkp_op_editorialTeam .page,
body.pkp_page_about.pkp_op_editorialTeam .page_editorial_team {
	max-width: 1180px !important;
}

body.pkp_page_about.pkp_op_editorialTeam .page ul,
body.pkp_page_about.pkp_op_editorialTeam .page_editorial_team ul {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 16px !important;
	margin: 20px 0 28px 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.pkp_page_about.pkp_op_editorialTeam .page li,
body.pkp_page_about.pkp_op_editorialTeam .page_editorial_team li {
	margin: 0 !important;
	padding: 20px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 20px !important;
	color: #334155 !important;
}

/* Contact page */
body.pkp_page_about.pkp_op_contact .page,
body.pkp_page_about.pkp_op_contact .page_contact {
	max-width: 1180px !important;
}

body.pkp_page_about.pkp_op_contact .contact,
body.pkp_page_about.pkp_op_contact .contact_section,
body.pkp_page_about.pkp_op_contact .principal_contact,
body.pkp_page_about.pkp_op_contact .support_contact,
body.pkp_page_about.pkp_op_contact .mailing_address {
	margin-top: 24px !important;
	padding: 24px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
}

/* Contact layout jika elemen tersedia */
body.pkp_page_about.pkp_op_contact .principal_contact,
body.pkp_page_about.pkp_op_contact .support_contact {
	display: block !important;
}

/* Privacy */
body.pkp_page_about.pkp_op_privacy .page,
body.pkp_page_about.pkp_op_privacy .page_privacy {
	max-width: 980px !important;
}

/* Table di halaman About/Submissions */
body.pkp_page_about table {
	width: 100% !important;
	border-collapse: collapse !important;
	margin: 24px 0 !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
	overflow: hidden !important;
}

body.pkp_page_about table th,
body.pkp_page_about table td {
	padding: 14px 16px !important;
	border-bottom: 1px solid #e5e7eb !important;
	color: #334155 !important;
	text-align: left !important;
	vertical-align: top !important;
}

body.pkp_page_about table th {
	background: #f8fafc !important;
	color: #0f172a !important;
	font-weight: 900 !important;
}

/* Responsive Tahap 7 */
@media (max-width: 900px) {
	body.pkp_page_about .page,
	body.pkp_page_about .page_about,
	body.pkp_page_about .page_submissions,
	body.pkp_page_about .page_contact,
	body.pkp_page_about .page_editorial_team,
	body.pkp_page_about .page_privacy {
		padding: 28px !important;
		border-radius: 24px !important;
	}

	body.pkp_page_about.pkp_op_editorialTeam .page ul,
	body.pkp_page_about.pkp_op_editorialTeam .page_editorial_team ul {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_about .page,
	body.pkp_page_about .page_about,
	body.pkp_page_about .page_submissions,
	body.pkp_page_about .page_contact,
	body.pkp_page_about .page_editorial_team,
	body.pkp_page_about .page_privacy {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_about .page h1,
	body.pkp_page_about .page_about h1,
	body.pkp_page_about .page_submissions h1,
	body.pkp_page_about .page_contact h1,
	body.pkp_page_about .page_editorial_team h1,
	body.pkp_page_about .page_privacy h1 {
		font-size: 30px !important;
	}

	body.pkp_page_about .page h2,
	body.pkp_page_about .page_about h2,
	body.pkp_page_about .page_submissions h2,
	body.pkp_page_about .page_contact h2,
	body.pkp_page_about .page_editorial_team h2,
	body.pkp_page_about .page_privacy h2 {
		font-size: 24px !important;
	}

	body.pkp_page_about.pkp_op_submissions .submission_checklist,
	body.pkp_page_about.pkp_op_submissions .author_guidelines,
	body.pkp_page_about.pkp_op_submissions .copyright_notice,
	body.pkp_page_about.pkp_op_submissions .privacy_statement,
	body.pkp_page_about.pkp_op_contact .contact,
	body.pkp_page_about.pkp_op_contact .contact_section,
	body.pkp_page_about.pkp_op_contact .principal_contact,
	body.pkp_page_about.pkp_op_contact .support_contact,
	body.pkp_page_about.pkp_op_contact .mailing_address {
		padding: 20px !important;
		border-radius: 20px !important;
	}
}
/* =========================================================
   TAHAP 7.1 - Refine Homepage Header Dropdown and Hero Card
   ========================================================= */

/* Dropdown menu dibuat lebih elegan dan tidak terlalu besar */
.wj-primary-menu > li {
	position: relative !important;
}

.wj-primary-menu > li > ul {
	display: none !important;
	position: absolute !important;
	top: calc(100% + 10px) !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 260px !important;
	min-width: 260px !important;
	padding: 10px !important;
	margin: 0 !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
	box-shadow: 0 24px 60px rgba(15, 23, 42, 0.18) !important;
	z-index: 99999 !important;
}

.wj-primary-menu > li:hover > ul,
.wj-primary-menu > li:focus-within > ul {
	display: block !important;
}

.wj-primary-menu > li > ul:before {
	content: "" !important;
	position: absolute !important;
	top: -8px !important;
	left: 50% !important;
	transform: translateX(-50%) rotate(45deg) !important;
	width: 16px !important;
	height: 16px !important;
	background: #ffffff !important;
	border-left: 1px solid #e5e7eb !important;
	border-top: 1px solid #e5e7eb !important;
}

.wj-primary-menu > li > ul li {
	display: block !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-primary-menu > li > ul a {
	display: block !important;
	width: 100% !important;
	padding: 12px 14px !important;
	border-radius: 12px !important;
	color: #0f172a !important;
	background: transparent !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	text-decoration: none !important;
	white-space: normal !important;
}

.wj-primary-menu > li > ul a:hover {
	background: #eff6ff !important;
	color: #1d4ed8 !important;
}

/* Header tidak terlalu menekan hero */
.wj-header {
	margin-bottom: 0 !important;
}

/* Hero homepage lebih proporsional */
.wj-home-hero {
	margin-top: 36px !important;
	align-items: center !important;
	min-height: auto !important;
	padding: 54px !important;
}

/* Card kanan hero dikurangi tingginya */
.wj-journal-card {
	min-height: 0 !important;
	height: auto !important;
	max-height: none !important;
	padding: 26px !important;
	justify-content: center !important;
}

.wj-journal-card-logo {
	width: 128px !important;
	height: 128px !important;
	border-radius: 26px !important;
	margin-bottom: 8px !important;
}

.wj-journal-card-logo img {
	max-width: 104px !important;
	max-height: 104px !important;
}

.wj-journal-card-content strong {
	font-size: 25px !important;
	line-height: 1.25 !important;
}

.wj-journal-card-content p {
	font-size: 15px !important;
	line-height: 1.65 !important;
}

/* Supaya dropdown tidak muncul terlalu besar di mobile */
@media (max-width: 960px) {
	.wj-primary-menu > li > ul {
		position: static !important;
		display: block !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		margin-top: 4px !important;
		padding: 0 0 0 16px !important;
		background: transparent !important;
		border: none !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	.wj-primary-menu > li > ul:before {
		display: none !important;
	}

	.wj-primary-menu > li > ul a {
		color: #334155 !important;
		padding: 9px 12px !important;
		background: transparent !important;
	}

	.wj-home-hero {
		margin-top: 24px !important;
		padding: 32px !important;
	}
}

@media (max-width: 640px) {
	.wj-home-hero {
		padding: 26px !important;
		border-radius: 24px !important;
	}

	.wj-journal-card-logo {
		width: 104px !important;
		height: 104px !important;
	}

	.wj-journal-card-logo img {
		max-width: 82px !important;
		max-height: 82px !important;
	}
}
/* =========================================================
   TAHAP 8 - Login, Register, Forgot Password, Search
   OJS 3.3
   ========================================================= */

/* =========================================================
   LOGIN / REGISTER / USER PAGES
   ========================================================= */

body.pkp_page_login .wj-content-area,
body.pkp_page_user .wj-content-area,
body.pkp_page_register .wj-content-area,
body.pkp_page_lostPassword .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 56px !important;
	padding-bottom: 72px !important;
}

body.pkp_page_login .wj-content-layout,
body.pkp_page_user .wj-content-layout,
body.pkp_page_register .wj-content-layout,
body.pkp_page_lostPassword .wj-content-layout {
	display: block !important;
}

body.pkp_page_login .wj-main-content,
body.pkp_page_user .wj-main-content,
body.pkp_page_register .wj-main-content,
body.pkp_page_lostPassword .wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
}

/* Card utama login/register */
body.pkp_page_login .page,
body.pkp_page_login .page_login,
body.pkp_page_user .page,
body.pkp_page_user .page_register,
body.pkp_page_register .page,
body.pkp_page_register .page_register,
body.pkp_page_lostPassword .page,
body.pkp_page_lostPassword .page_lost_password {
	width: 100% !important;
	max-width: 760px !important;
	margin: 0 auto !important;
	padding: 42px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 32px !important;
	box-shadow: 0 20px 56px rgba(15, 23, 42, 0.08) !important;
}

/* Judul halaman */
body.pkp_page_login .page h1,
body.pkp_page_login .page_login h1,
body.pkp_page_user .page h1,
body.pkp_page_user .page_register h1,
body.pkp_page_register .page h1,
body.pkp_page_register .page_register h1,
body.pkp_page_lostPassword .page h1,
body.pkp_page_lostPassword .page_lost_password h1 {
	margin: 0 0 24px 0 !important;
	color: #0f172a !important;
	font-size: 42px !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

/* Deskripsi kecil */
body.pkp_page_login .page p,
body.pkp_page_user .page p,
body.pkp_page_register .page p,
body.pkp_page_lostPassword .page p {
	color: #475569 !important;
	font-size: 16px !important;
	line-height: 1.75 !important;
}

/* Form login/register */
body.pkp_page_login form,
body.pkp_page_user form,
body.pkp_page_register form,
body.pkp_page_lostPassword form {
	margin-top: 24px !important;
}

body.pkp_page_login .fields,
body.pkp_page_user .fields,
body.pkp_page_register .fields,
body.pkp_page_lostPassword .fields {
	display: grid !important;
	gap: 18px !important;
}

/* Field group */
body.pkp_page_login .form-group,
body.pkp_page_login .field,
body.pkp_page_user .form-group,
body.pkp_page_user .field,
body.pkp_page_register .form-group,
body.pkp_page_register .field,
body.pkp_page_lostPassword .form-group,
body.pkp_page_lostPassword .field {
	margin-bottom: 18px !important;
}

/* Label */
body.pkp_page_login label,
body.pkp_page_user label,
body.pkp_page_register label,
body.pkp_page_lostPassword label {
	display: block !important;
	margin-bottom: 8px !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.35 !important;
}

/* Input */
body.pkp_page_login input[type="text"],
body.pkp_page_login input[type="email"],
body.pkp_page_login input[type="password"],
body.pkp_page_login input[type="url"],
body.pkp_page_login select,
body.pkp_page_login textarea,
body.pkp_page_user input[type="text"],
body.pkp_page_user input[type="email"],
body.pkp_page_user input[type="password"],
body.pkp_page_user input[type="url"],
body.pkp_page_user select,
body.pkp_page_user textarea,
body.pkp_page_register input[type="text"],
body.pkp_page_register input[type="email"],
body.pkp_page_register input[type="password"],
body.pkp_page_register input[type="url"],
body.pkp_page_register select,
body.pkp_page_register textarea,
body.pkp_page_lostPassword input[type="text"],
body.pkp_page_lostPassword input[type="email"],
body.pkp_page_lostPassword input[type="password"],
body.pkp_page_lostPassword select,
body.pkp_page_lostPassword textarea {
	width: 100% !important;
	min-height: 46px !important;
	padding: 11px 14px !important;
	background: #ffffff !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 15px !important;
	color: #0f172a !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
	box-shadow: none !important;
}

body.pkp_page_login textarea,
body.pkp_page_user textarea,
body.pkp_page_register textarea,
body.pkp_page_lostPassword textarea {
	min-height: 120px !important;
	resize: vertical !important;
}

body.pkp_page_login input:focus,
body.pkp_page_login select:focus,
body.pkp_page_login textarea:focus,
body.pkp_page_user input:focus,
body.pkp_page_user select:focus,
body.pkp_page_user textarea:focus,
body.pkp_page_register input:focus,
body.pkp_page_register select:focus,
body.pkp_page_register textarea:focus,
body.pkp_page_lostPassword input:focus,
body.pkp_page_lostPassword select:focus,
body.pkp_page_lostPassword textarea:focus {
	outline: none !important;
	border-color: #1d4ed8 !important;
	box-shadow: 0 0 0 4px rgba(29, 78, 216, 0.12) !important;
}

/* Checkbox / remember me */
body.pkp_page_login input[type="checkbox"],
body.pkp_page_user input[type="checkbox"],
body.pkp_page_register input[type="checkbox"],
body.pkp_page_lostPassword input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin-right: 8px !important;
	accent-color: #1d4ed8 !important;
}

body.pkp_page_login .remember,
body.pkp_page_user .remember,
body.pkp_page_register .remember,
body.pkp_page_lostPassword .remember {
	display: flex !important;
	align-items: center !important;
	gap: 8px !important;
	margin: 12px 0 18px 0 !important;
	color: #475569 !important;
}

/* Fieldset */
body.pkp_page_user fieldset,
body.pkp_page_register fieldset {
	margin: 24px 0 !important;
	padding: 24px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
}

body.pkp_page_user legend,
body.pkp_page_register legend {
	padding: 0 8px !important;
	color: #0f172a !important;
	font-size: 18px !important;
	font-weight: 900 !important;
}

/* Button login/register */
body.pkp_page_login button,
body.pkp_page_login .submit button,
body.pkp_page_login .cmp_button,
body.pkp_page_user button,
body.pkp_page_user .submit button,
body.pkp_page_user .cmp_button,
body.pkp_page_register button,
body.pkp_page_register .submit button,
body.pkp_page_register .cmp_button,
body.pkp_page_lostPassword button,
body.pkp_page_lostPassword .submit button,
body.pkp_page_lostPassword .cmp_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 46px !important;
	padding: 12px 22px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

body.pkp_page_login button:hover,
body.pkp_page_login .submit button:hover,
body.pkp_page_login .cmp_button:hover,
body.pkp_page_user button:hover,
body.pkp_page_user .submit button:hover,
body.pkp_page_user .cmp_button:hover,
body.pkp_page_register button:hover,
body.pkp_page_register .submit button:hover,
body.pkp_page_register .cmp_button:hover,
body.pkp_page_lostPassword button:hover,
body.pkp_page_lostPassword .submit button:hover,
body.pkp_page_lostPassword .cmp_button:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

/* Link bantuan login */
body.pkp_page_login .page a,
body.pkp_page_login .page_login a,
body.pkp_page_user .page a,
body.pkp_page_register .page a,
body.pkp_page_lostPassword .page a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

body.pkp_page_login .page a:hover,
body.pkp_page_login .page_login a:hover,
body.pkp_page_user .page a:hover,
body.pkp_page_register .page a:hover,
body.pkp_page_lostPassword .page a:hover {
	color: #0f172a !important;
}

/* Error / alert */
body.pkp_page_login .pkp_form_error,
body.pkp_page_login .cmp_notification,
body.pkp_page_user .pkp_form_error,
body.pkp_page_user .cmp_notification,
body.pkp_page_register .pkp_form_error,
body.pkp_page_register .cmp_notification,
body.pkp_page_lostPassword .pkp_form_error,
body.pkp_page_lostPassword .cmp_notification {
	margin-bottom: 20px !important;
	padding: 16px 18px !important;
	border-radius: 18px !important;
	background: #fef2f2 !important;
	border: 1px solid #fecaca !important;
	color: #991b1b !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
}

/* Success notification */
body.pkp_page_login .cmp_notification.success,
body.pkp_page_user .cmp_notification.success,
body.pkp_page_register .cmp_notification.success,
body.pkp_page_lostPassword .cmp_notification.success {
	background: #ecfdf5 !important;
	border-color: #bbf7d0 !important;
	color: #166534 !important;
}

/* Register requirements / note */
body.pkp_page_user .description,
body.pkp_page_register .description,
body.pkp_page_login .description,
body.pkp_page_lostPassword .description {
	margin: 12px 0 !important;
	color: #64748b !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
}

/* =========================================================
   SEARCH PAGE FINAL REFINEMENT
   ========================================================= */

body.pkp_page_search .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 56px !important;
	padding-bottom: 72px !important;
}

body.pkp_page_search .wj-content-layout {
	display: block !important;
}

body.pkp_page_search .wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
}

body.pkp_page_search .page,
body.pkp_page_search .page_search {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 38px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

body.pkp_page_search .page h1,
body.pkp_page_search .page_search h1 {
	margin: 0 0 28px 0 !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

/* Search form wrapper */
body.pkp_page_search form {
	margin-bottom: 34px !important;
	padding: 28px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: none !important;
}

/* Search field layout */
body.pkp_page_search .search_input,
body.pkp_page_search .query,
body.pkp_page_search .date_range,
body.pkp_page_search .authors {
	margin-bottom: 18px !important;
}

/* Search labels */
body.pkp_page_search label {
	display: block !important;
	margin-bottom: 8px !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

/* Search inputs */
body.pkp_page_search input[type="text"],
body.pkp_page_search input[type="search"],
body.pkp_page_search input[type="date"],
body.pkp_page_search select {
	width: 100% !important;
	min-height: 46px !important;
	padding: 11px 14px !important;
	background: #ffffff !important;
	border: 1px solid #cbd5e1 !important;
	border-radius: 15px !important;
	color: #0f172a !important;
	font-size: 15px !important;
	line-height: 1.5 !important;
}

body.pkp_page_search input[type="text"]:focus,
body.pkp_page_search input[type="search"]:focus,
body.pkp_page_search input[type="date"]:focus,
body.pkp_page_search select:focus {
	outline: none !important;
	border-color: #1d4ed8 !important;
	box-shadow: 0 0 0 4px rgba(29, 78, 216, 0.12) !important;
}

/* Search submit */
body.pkp_page_search button,
body.pkp_page_search .submit button,
body.pkp_page_search .cmp_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 46px !important;
	padding: 12px 22px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

body.pkp_page_search button:hover,
body.pkp_page_search .submit button:hover,
body.pkp_page_search .cmp_button:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

/* Search result heading */
body.pkp_page_search h2,
body.pkp_page_search h3 {
	color: #0f172a !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

/* Search result card */
body.pkp_page_search .obj_article_summary {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 18px 0 !important;
	padding: 24px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.055) !important;
	overflow: hidden !important;
}

body.pkp_page_search .obj_article_summary,
body.pkp_page_search .obj_article_summary * {
	max-width: 100% !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

body.pkp_page_search .obj_article_summary .title a {
	display: block !important;
	color: #0f172a !important;
	font-size: 21px !important;
	line-height: 1.38 !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

body.pkp_page_search .obj_article_summary .title a:hover {
	color: #1d4ed8 !important;
}

body.pkp_page_search .obj_article_summary .authors {
	margin-top: 10px !important;
	color: #64748b !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

body.pkp_page_search .obj_article_summary .galleys_links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 16px 0 0 0 !important;
	padding: 0 !important;
}

/* Empty result */
body.pkp_page_search .no_results,
body.pkp_page_search .cmp_notification {
	margin-top: 20px !important;
	padding: 20px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 20px !important;
	color: #475569 !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
}

/* =========================================================
   RESPONSIVE TAHAP 8
   ========================================================= */

@media (max-width: 768px) {
	body.pkp_page_login .page,
	body.pkp_page_login .page_login,
	body.pkp_page_user .page,
	body.pkp_page_user .page_register,
	body.pkp_page_register .page,
	body.pkp_page_register .page_register,
	body.pkp_page_lostPassword .page,
	body.pkp_page_lostPassword .page_lost_password,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search {
		padding: 28px !important;
		border-radius: 24px !important;
	}

	body.pkp_page_login .page h1,
	body.pkp_page_login .page_login h1,
	body.pkp_page_user .page h1,
	body.pkp_page_user .page_register h1,
	body.pkp_page_register .page h1,
	body.pkp_page_register .page_register h1,
	body.pkp_page_lostPassword .page h1,
	body.pkp_page_lostPassword .page_lost_password h1,
	body.pkp_page_search .page h1,
	body.pkp_page_search .page_search h1 {
		font-size: 32px !important;
	}

	body.pkp_page_search form {
		padding: 22px !important;
		border-radius: 22px !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_login .page,
	body.pkp_page_login .page_login,
	body.pkp_page_user .page,
	body.pkp_page_user .page_register,
	body.pkp_page_register .page,
	body.pkp_page_register .page_register,
	body.pkp_page_lostPassword .page,
	body.pkp_page_lostPassword .page_lost_password,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_login .page h1,
	body.pkp_page_login .page_login h1,
	body.pkp_page_user .page h1,
	body.pkp_page_user .page_register h1,
	body.pkp_page_register .page h1,
	body.pkp_page_register .page_register h1,
	body.pkp_page_lostPassword .page h1,
	body.pkp_page_lostPassword .page_lost_password h1,
	body.pkp_page_search .page h1,
	body.pkp_page_search .page_search h1 {
		font-size: 28px !important;
	}

	body.pkp_page_login fieldset,
	body.pkp_page_user fieldset,
	body.pkp_page_register fieldset,
	body.pkp_page_search form {
		padding: 18px !important;
		border-radius: 18px !important;
	}
}
/* =========================================================
   TAHAP 9 - Final Responsive Mobile & Tablet Fix
   OJS 3.3 Web Journal Theme
   ========================================================= */

/* Cegah horizontal scroll di semua ukuran */
html,
body,
.pkp_structure_page,
.wj-page,
.wj-container,
.wj-content-area,
.wj-content-layout,
.wj-main-content {
	max-width: 100% !important;
	overflow-x: hidden !important;
	box-sizing: border-box !important;
}

*,
*:before,
*:after {
	box-sizing: border-box !important;
}

/* Gambar tidak boleh keluar container */
img,
svg,
video,
iframe {
	max-width: 100% !important;
}

/* Link panjang, DOI, citation, URL */
a,
p,
div,
span,
li,
td,
th {
	overflow-wrap: break-word !important;
	word-wrap: break-word !important;
}

/* =========================================================
   TABLET: 1024px KE BAWAH
   ========================================================= */

@media (max-width: 1024px) {

	.wj-container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	/* Header */
	.wj-main-header {
		min-height: 84px !important;
		gap: 18px !important;
	}

	.wj-brand-title {
		font-size: 24px !important;
	}

	.wj-brand-subtitle {
		font-size: 13px !important;
	}

	.wj-brand-logo {
		width: 58px !important;
		height: 58px !important;
		border-radius: 15px !important;
	}

	.wj-brand-logo img {
		max-width: 46px !important;
		max-height: 46px !important;
	}

	/* Homepage hero */
	.wj-home-hero {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
		padding: 42px !important;
		border-radius: 30px !important;
	}

	.wj-home-hero h1 {
		font-size: 48px !important;
		line-height: 1.08 !important;
	}

	.wj-home-description {
		font-size: 17px !important;
	}

	.wj-journal-card {
		max-width: 100% !important;
	}

	/* Quick menu */
	.wj-quick-menu {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	/* Homepage sections */
	.wj-highlight-grid,
	.wj-info-grid {
		grid-template-columns: 1fr !important;
	}

	.wj-indexing-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.wj-scope-section {
		grid-template-columns: 1fr !important;
	}

	/* Article view */
	body.pkp_page_article .obj_article_details .row {
		grid-template-columns: minmax(0, 1fr) 320px !important;
		gap: 26px !important;
	}

	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 40px !important;
	}

	body.pkp_page_article .obj_article_details .entry_details {
		top: 120px !important;
	}

	/* Footer */
	.wj-footer-main {
		grid-template-columns: 1fr 1fr !important;
		gap: 28px !important;
	}
}

/* =========================================================
   MOBILE NAV: 960px KE BAWAH
   ========================================================= */

@media (max-width: 960px) {

	/* Header top disederhanakan */
	.wj-header-top {
		display: none !important;
	}

	.wj-header {
		position: sticky !important;
		top: 0 !important;
		z-index: 9999 !important;
	}

	.wj-main-header {
		position: relative !important;
		min-height: 78px !important;
		padding-top: 12px !important;
		padding-bottom: 12px !important;
	}

	/* Tombol hamburger */
	.wj-menu-toggle {
		display: flex !important;
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		border: 0 !important;
		border-radius: 14px !important;
		background: rgba(255, 255, 255, 0.12) !important;
		cursor: pointer !important;
		flex: 0 0 auto !important;
	}

	.wj-menu-toggle span {
		display: block !important;
		width: 20px !important;
		height: 2px !important;
		margin: 3px 0 !important;
		background: #ffffff !important;
		border-radius: 999px !important;
	}

	/* Menu mobile */
	.wj-nav {
		display: none !important;
		position: absolute !important;
		left: 24px !important;
		right: 24px !important;
		top: calc(100% + 12px) !important;
		padding: 18px !important;
		background: #ffffff !important;
		border: 1px solid #e5e7eb !important;
		border-radius: 22px !important;
		box-shadow: 0 24px 60px rgba(15, 23, 42, 0.24) !important;
		z-index: 99999 !important;
	}

	body.wj-menu-open .wj-nav {
		display: block !important;
	}

	.wj-primary-menu {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.wj-primary-menu > li {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.wj-primary-menu > li > a,
	.wj-search-link {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		width: 100% !important;
		min-height: 42px !important;
		padding: 10px 12px !important;
		border-radius: 12px !important;
		color: #0f172a !important;
		background: transparent !important;
		font-size: 15px !important;
		font-weight: 900 !important;
	}

	.wj-primary-menu > li > a:hover,
	.wj-search-link:hover {
		background: #eff6ff !important;
		color: #1d4ed8 !important;
	}

	/* Submenu mobile */
	.wj-primary-menu > li > ul {
		position: static !important;
		display: block !important;
		width: 100% !important;
		min-width: 0 !important;
		margin: 0 0 8px 0 !important;
		padding: 0 0 0 14px !important;
		background: transparent !important;
		border: none !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		transform: none !important;
	}

	.wj-primary-menu > li > ul:before {
		display: none !important;
	}

	.wj-primary-menu > li > ul a {
		display: block !important;
		padding: 8px 12px !important;
		color: #475569 !important;
		background: transparent !important;
		font-size: 14px !important;
		font-weight: 800 !important;
	}

	.wj-primary-menu > li > ul a:hover {
		background: #f8fafc !important;
		color: #1d4ed8 !important;
	}

	/* Search + Login Register */
	.wj-nav-actions {
		display: block !important;
		margin-top: 12px !important;
		padding-top: 12px !important;
		border-top: 1px solid #e5e7eb !important;
	}

	.wj-user-menu {
		display: grid !important;
		grid-template-columns: 1fr 1fr !important;
		gap: 10px !important;
		margin-top: 10px !important;
	}

	.wj-user-menu a {
		display: flex !important;
		width: 100% !important;
		min-height: 42px !important;
		background: #0f172a !important;
		color: #ffffff !important;
	}

	.wj-user-menu a:hover {
		background: #1d4ed8 !important;
		color: #ffffff !important;
	}

	/* Article view jadi 1 kolom */
	body.pkp_page_article .obj_article_details .row {
		display: block !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		width: 100% !important;
		max-width: 100% !important;
		margin-bottom: 24px !important;
		position: static !important;
	}

	/* Issue, search, about */
	body.pkp_page_issue .page,
	body.pkp_page_issue .page_issue,
	body.pkp_page_issue .obj_issue_toc,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search,
	body.pkp_page_about .page,
	body.pkp_page_login .page,
	body.pkp_page_user .page,
	body.pkp_page_register .page {
		max-width: 100% !important;
	}
}

/* =========================================================
   MOBILE: 768px KE BAWAH
   ========================================================= */

@media (max-width: 768px) {

	.wj-container {
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	.wj-content-area {
		padding-top: 28px !important;
		padding-bottom: 48px !important;
	}

	/* Header */
	.wj-brand {
		gap: 12px !important;
	}

	.wj-brand-title {
		font-size: 21px !important;
		line-height: 1.2 !important;
	}

	.wj-brand-subtitle {
		font-size: 12px !important;
	}

	.wj-brand-logo {
		width: 54px !important;
		height: 54px !important;
		border-radius: 14px !important;
	}

	.wj-brand-logo img {
		max-width: 42px !important;
		max-height: 42px !important;
	}

	/* Homepage hero */
	.wj-home-hero {
		margin-top: 24px !important;
		padding: 30px !important;
		border-radius: 26px !important;
	}

	.wj-home-hero h1 {
		font-size: 38px !important;
		line-height: 1.1 !important;
		letter-spacing: -0.045em !important;
	}

	.wj-home-description {
		font-size: 16px !important;
		line-height: 1.7 !important;
	}

	.wj-home-actions {
		display: grid !important;
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.wj-home-actions .wj-btn {
		width: 100% !important;
		justify-content: center !important;
		margin-right: 0 !important;
	}

	/* Card kanan hero */
	.wj-journal-card {
		padding: 24px !important;
		border-radius: 24px !important;
	}

	.wj-journal-card-logo {
		width: 108px !important;
		height: 108px !important;
		border-radius: 22px !important;
	}

	.wj-journal-card-logo img {
		max-width: 84px !important;
		max-height: 84px !important;
	}

	.wj-journal-card-content strong {
		font-size: 22px !important;
	}

	/* Quick menu dan section */
	.wj-quick-menu,
	.wj-indexing-grid,
	.wj-announcement-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.wj-quick-item,
	.wj-highlight-card,
	.wj-announcement-card,
	.wj-indexing-card {
		padding: 22px !important;
		border-radius: 22px !important;
	}

	.wj-home-section {
		margin-top: 42px !important;
	}

	.wj-section-title h2,
	.wj-current-issue-header h2,
	.wj-scope-content h2,
	.wj-author-cta h2 {
		font-size: 28px !important;
		line-height: 1.2 !important;
	}

	.wj-current-issue-pro,
	.wj-scope-section,
	.wj-author-cta,
	.wj-additional-home-content {
		padding: 24px !important;
		border-radius: 24px !important;
	}

	.wj-current-issue-header,
	.wj-author-cta {
		display: block !important;
	}

	.wj-current-issue-header .wj-btn,
	.wj-author-cta .wj-btn {
		margin-top: 18px !important;
	}

	/* Article page */
	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 32px !important;
		line-height: 1.16 !important;
		margin-bottom: 24px !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		padding: 24px !important;
		border-radius: 22px !important;
	}

	body.pkp_page_article .obj_article_details .main_entry .item .label,
	body.pkp_page_article .obj_article_details .main_entry .item h2 {
		font-size: 22px !important;
	}

	/* Issue page */
	body.pkp_page_issue h1,
	body.pkp_page_issue .page h1,
	body.pkp_page_issue .page_issue h1,
	body.pkp_page_issue .obj_issue_toc h1 {
		font-size: 32px !important;
		line-height: 1.16 !important;
	}

	body.pkp_page_issue .page,
	body.pkp_page_issue .page_issue,
	body.pkp_page_issue .obj_issue_toc {
		padding: 24px !important;
		border-radius: 22px !important;
	}

	body.pkp_page_issue .obj_article_summary {
		padding: 22px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_issue .obj_article_summary .title a {
		font-size: 19px !important;
		line-height: 1.4 !important;
	}

	/* About/Search/Login/Register */
	body.pkp_page_about .page,
	body.pkp_page_about .page_about,
	body.pkp_page_about .page_submissions,
	body.pkp_page_about .page_contact,
	body.pkp_page_about .page_editorial_team,
	body.pkp_page_about .page_privacy,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search,
	body.pkp_page_login .page,
	body.pkp_page_login .page_login,
	body.pkp_page_user .page,
	body.pkp_page_user .page_register,
	body.pkp_page_register .page,
	body.pkp_page_register .page_register {
		padding: 24px !important;
		border-radius: 22px !important;
	}

	body.pkp_page_about .page h1,
	body.pkp_page_search .page h1,
	body.pkp_page_login .page h1,
	body.pkp_page_user .page h1,
	body.pkp_page_register .page h1 {
		font-size: 32px !important;
		line-height: 1.16 !important;
	}

	/* Footer */
	.wj-footer-main {
		grid-template-columns: 1fr !important;
		padding-top: 40px !important;
		padding-bottom: 34px !important;
	}

	.wj-footer-bottom-inner {
		display: block !important;
	}

	.wj-footer-bottom-inner span {
		display: block !important;
		margin-bottom: 8px !important;
	}
}

/* =========================================================
   SMALL MOBILE: 520px KE BAWAH
   ========================================================= */

@media (max-width: 520px) {

	.wj-container {
		padding-left: 14px !important;
		padding-right: 14px !important;
	}

	.wj-main-header {
		min-height: 72px !important;
	}

	.wj-brand-title {
		font-size: 18px !important;
	}

	.wj-brand-subtitle {
		display: none !important;
	}

	.wj-brand-logo {
		width: 48px !important;
		height: 48px !important;
		border-radius: 13px !important;
	}

	.wj-brand-logo img {
		max-width: 38px !important;
		max-height: 38px !important;
	}

	.wj-menu-toggle {
		width: 42px !important;
		height: 42px !important;
	}

	.wj-nav {
		left: 14px !important;
		right: 14px !important;
		padding: 14px !important;
		border-radius: 18px !important;
	}

	/* Hero */
	.wj-home-hero {
		padding: 24px !important;
		border-radius: 22px !important;
	}

	.wj-home-hero h1 {
		font-size: 31px !important;
		line-height: 1.12 !important;
	}

	.wj-eyebrow,
	.wj-eyebrow-dark,
	.wj-section-title span,
	.wj-author-cta span {
		font-size: 11px !important;
		line-height: 1.4 !important;
	}

	.wj-home-description {
		font-size: 15px !important;
	}

	.wj-btn {
		min-height: 42px !important;
		padding: 10px 16px !important;
		font-size: 14px !important;
	}

	.wj-journal-card {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	.wj-journal-card-logo {
		width: 92px !important;
		height: 92px !important;
		border-radius: 20px !important;
	}

	.wj-journal-card-logo img {
		max-width: 72px !important;
		max-height: 72px !important;
	}

	.wj-journal-card-content strong {
		font-size: 20px !important;
	}

	/* Section heading */
	.wj-section-title h2,
	.wj-current-issue-header h2,
	.wj-scope-content h2,
	.wj-author-cta h2 {
		font-size: 24px !important;
	}

	.wj-quick-item,
	.wj-highlight-card,
	.wj-announcement-card,
	.wj-indexing-card,
	.wj-current-issue-pro,
	.wj-scope-section,
	.wj-author-cta,
	.wj-additional-home-content {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	/* Article */
	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 27px !important;
		line-height: 1.18 !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_article .obj_article_details .main_entry .item p,
	body.pkp_page_article .obj_article_details .main_entry .item div,
	body.pkp_page_article .obj_article_details .main_entry .abstract,
	body.pkp_page_article .obj_article_details .main_entry .value {
		font-size: 15px !important;
		line-height: 1.75 !important;
	}

	/* Issue */
	body.pkp_page_issue h1,
	body.pkp_page_issue .page h1,
	body.pkp_page_issue .page_issue h1,
	body.pkp_page_issue .obj_issue_toc h1 {
		font-size: 27px !important;
	}

	body.pkp_page_issue .page,
	body.pkp_page_issue .page_issue,
	body.pkp_page_issue .obj_issue_toc {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_issue .heading,
	body.pkp_page_issue .section h2,
	body.pkp_page_issue .section_title {
		font-size: 22px !important;
	}

	body.pkp_page_issue .obj_article_summary .title a {
		font-size: 18px !important;
	}

	/* About/Search/Login/Register */
	body.pkp_page_about .page,
	body.pkp_page_about .page_about,
	body.pkp_page_about .page_submissions,
	body.pkp_page_about .page_contact,
	body.pkp_page_about .page_editorial_team,
	body.pkp_page_about .page_privacy,
	body.pkp_page_search .page,
	body.pkp_page_search .page_search,
	body.pkp_page_login .page,
	body.pkp_page_login .page_login,
	body.pkp_page_user .page,
	body.pkp_page_user .page_register,
	body.pkp_page_register .page,
	body.pkp_page_register .page_register {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_about .page h1,
	body.pkp_page_search .page h1,
	body.pkp_page_login .page h1,
	body.pkp_page_user .page h1,
	body.pkp_page_register .page h1 {
		font-size: 27px !important;
	}

	body.pkp_page_search form,
	body.pkp_page_user fieldset,
	body.pkp_page_register fieldset {
		padding: 18px !important;
		border-radius: 18px !important;
	}

	/* Footer */
	.wj-footer-brand-row {
		display: block !important;
	}

	.wj-footer-brand-row img {
		margin-bottom: 14px !important;
	}

	.wj-footer h2 {
		font-size: 21px !important;
	}

	.wj-footer h3 {
		font-size: 14px !important;
	}
}
/* =========================================================
   TAHAP 10 - Final Polishing
   Web Journal Theme OJS 3.3
   ========================================================= */

/* Design token dasar */
:root {
	--wj-navy: #0f172a;
	--wj-navy-soft: #1e293b;
	--wj-blue: #1d4ed8;
	--wj-blue-soft: #eff6ff;
	--wj-sky: #bfdbfe;
	--wj-white: #ffffff;
	--wj-bg: #f4f7fb;
	--wj-border: #e5e7eb;
	--wj-text: #0f172a;
	--wj-muted: #64748b;
	--wj-muted-dark: #475569;
	--wj-radius-sm: 14px;
	--wj-radius-md: 22px;
	--wj-radius-lg: 30px;
	--wj-shadow-sm: 0 10px 28px rgba(15, 23, 42, 0.055);
	--wj-shadow-md: 0 16px 42px rgba(15, 23, 42, 0.075);
	--wj-shadow-lg: 0 24px 64px rgba(15, 23, 42, 0.12);
	--wj-transition: 180ms ease;
}

/* Base polish */
html {
	scroll-behavior: smooth !important;
}

body {
	background: var(--wj-bg) !important;
	color: var(--wj-text) !important;
	font-family:
		ui-sans-serif,
		system-ui,
		-apple-system,
		BlinkMacSystemFont,
		"Segoe UI",
		Roboto,
		Arial,
		sans-serif !important;
	-webkit-font-smoothing: antialiased !important;
	text-rendering: optimizeLegibility !important;
}

::selection {
	background: #bfdbfe !important;
	color: #0f172a !important;
}

/* Fokus aksesibilitas */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.wj-btn:focus-visible,
.cmp_button:focus-visible {
	outline: 3px solid rgba(29, 78, 216, 0.35) !important;
	outline-offset: 3px !important;
}

/* Link umum */
a {
	transition: color var(--wj-transition), background var(--wj-transition), border-color var(--wj-transition), transform var(--wj-transition), box-shadow var(--wj-transition) !important;
}

/* Header polish */
.wj-header {
	background: rgba(15, 23, 42, 0.98) !important;
	backdrop-filter: blur(14px) !important;
	-webkit-backdrop-filter: blur(14px) !important;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
	box-shadow: 0 14px 44px rgba(15, 23, 42, 0.22) !important;
}

.wj-top-badge {
	background: rgba(59, 130, 246, 0.22) !important;
	border: 1px solid rgba(191, 219, 254, 0.18) !important;
}

.wj-brand-title {
	letter-spacing: -0.045em !important;
}

.wj-brand-logo {
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.16) !important;
}

/* Navigation final */
.wj-primary-menu > li > a,
.wj-search-link {
	transition: background var(--wj-transition), color var(--wj-transition), transform var(--wj-transition) !important;
}

.wj-primary-menu > li > a:hover,
.wj-search-link:hover {
	transform: translateY(-1px) !important;
}

.wj-primary-menu > li > a[aria-current="page"],
.wj-primary-menu > li.current > a,
.wj-primary-menu > li.active > a {
	background: rgba(255, 255, 255, 0.14) !important;
	color: #ffffff !important;
}

/* Dropdown lebih halus */
.wj-primary-menu > li > ul {
	animation: wjDropdownFade 160ms ease both !important;
}

@keyframes wjDropdownFade {
	from {
		opacity: 0;
		transform: translateX(-50%) translateY(6px);
	}
	to {
		opacity: 1;
		transform: translateX(-50%) translateY(0);
	}
}

/* Button polish */
.wj-btn,
.cmp_button,
button.submit,
.cmp_form .buttons button,
.page_search .submit button {
	transition:
		background var(--wj-transition),
		color var(--wj-transition),
		border-color var(--wj-transition),
		transform var(--wj-transition),
		box-shadow var(--wj-transition) !important;
}

.wj-btn:hover,
.cmp_button:hover,
button.submit:hover,
.cmp_form .buttons button:hover,
.page_search .submit button:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.14) !important;
}

.wj-btn:active,
.cmp_button:active,
button.submit:active,
.cmp_form .buttons button:active,
.page_search .submit button:active {
	transform: translateY(0) !important;
	box-shadow: none !important;
}

/* Homepage hero final polish */
.wj-home-hero {
	background:
		radial-gradient(circle at 85% 15%, rgba(59, 130, 246, 0.32), transparent 28%),
		linear-gradient(135deg, #0f172a 0%, #172554 48%, #0f172a 100%) !important;
	box-shadow: 0 26px 70px rgba(15, 23, 42, 0.18) !important;
}

.wj-home-hero h1 {
	text-wrap: balance !important;
}

.wj-home-description {
	max-width: 820px !important;
}

.wj-journal-card {
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.16), 0 20px 50px rgba(0, 0, 0, 0.12) !important;
}

.wj-journal-card-logo {
	box-shadow: 0 18px 38px rgba(0, 0, 0, 0.18) !important;
}

/* Section spacing polish */
.wj-home-section {
	margin-top: 64px !important;
}

.wj-section-title {
	margin-bottom: 30px !important;
}

.wj-section-title h2,
.wj-current-issue-header h2,
.wj-scope-content h2,
.wj-author-cta h2 {
	text-wrap: balance !important;
}

/* Card hover seragam */
.wj-quick-item,
.wj-highlight-card,
.wj-announcement-card,
.wj-indexing-card,
.wj-info-card,
.obj_article_summary,
body.pkp_page_issue .obj_article_summary,
body.pkp_page_search .obj_article_summary,
body.pkp_page_about .page,
body.pkp_page_login .page,
body.pkp_page_register .page,
body.pkp_page_user .page {
	transition:
		transform var(--wj-transition),
		box-shadow var(--wj-transition),
		border-color var(--wj-transition),
		background var(--wj-transition) !important;
}

.wj-quick-item:hover,
.wj-highlight-card:hover,
.wj-announcement-card:hover,
.wj-indexing-card:hover,
.wj-info-card:hover,
body.pkp_page_issue .obj_article_summary:hover,
body.pkp_page_search .obj_article_summary:hover {
	transform: translateY(-3px) !important;
	border-color: #bfdbfe !important;
	box-shadow: var(--wj-shadow-lg) !important;
}

/* Current issue homepage polish */
.wj-current-issue-pro {
	border-color: rgba(226, 232, 240, 0.95) !important;
	box-shadow: var(--wj-shadow-md) !important;
}

.wj-current-issue-content .obj_article_summary {
	border-radius: 20px !important;
}

/* Article view polish */
body.pkp_page_article .obj_article_details .page_title,
body.pkp_page_article .obj_article_details > h1 {
	text-wrap: balance !important;
}

body.pkp_page_article .obj_article_details .main_entry,
body.pkp_page_article .obj_article_details .entry_details {
	box-shadow: var(--wj-shadow-md) !important;
}

body.pkp_page_article .obj_article_details .entry_details {
	border-top: 4px solid #1d4ed8 !important;
}

body.pkp_page_article .obj_article_details .main_entry .item .label,
body.pkp_page_article .obj_article_details .main_entry .item h2 {
	position: relative !important;
}

body.pkp_page_article .obj_article_details .main_entry .item .label:after,
body.pkp_page_article .obj_article_details .main_entry .item h2:after {
	content: "" !important;
	display: block !important;
	width: 46px !important;
	height: 3px !important;
	margin-top: 10px !important;
	border-radius: 999px !important;
	background: #1d4ed8 !important;
}

/* Issue page polish */
body.pkp_page_issue .page,
body.pkp_page_issue .page_issue,
body.pkp_page_issue .obj_issue_toc {
	box-shadow: var(--wj-shadow-md) !important;
}

body.pkp_page_issue h1,
body.pkp_page_issue .page h1,
body.pkp_page_issue .page_issue h1,
body.pkp_page_issue .obj_issue_toc h1 {
	text-wrap: balance !important;
}

/* Archive cards */
body.pkp_page_issue .issues_archive > li,
body.pkp_page_issue_archive .issues_archive > li,
body.pkp_page_issue_archive .issues > li {
	box-shadow: var(--wj-shadow-sm) !important;
}

body.pkp_page_issue .issues_archive > li:hover,
body.pkp_page_issue_archive .issues_archive > li:hover,
body.pkp_page_issue_archive .issues > li:hover {
	box-shadow: var(--wj-shadow-md) !important;
}

/* About pages polish */
body.pkp_page_about .page h2,
body.pkp_page_about .page_about h2,
body.pkp_page_about .page_submissions h2,
body.pkp_page_about .page_contact h2,
body.pkp_page_about .page_editorial_team h2,
body.pkp_page_about .page_privacy h2 {
	border-bottom-color: #dbeafe !important;
}

body.pkp_page_about.pkp_op_submissions .submission_checklist li:hover,
body.pkp_page_about.pkp_op_editorialTeam .page li:hover,
body.pkp_page_about.pkp_op_editorialTeam .page_editorial_team li:hover {
	border-color: #bfdbfe !important;
	box-shadow: var(--wj-shadow-sm) !important;
}

/* Login/Register/Search polish */
body.pkp_page_login .page,
body.pkp_page_register .page,
body.pkp_page_user .page,
body.pkp_page_search .page,
body.pkp_page_search .page_search {
	box-shadow: var(--wj-shadow-md) !important;
}

body.pkp_page_login input,
body.pkp_page_register input,
body.pkp_page_user input,
body.pkp_page_search input,
body.pkp_page_login select,
body.pkp_page_register select,
body.pkp_page_user select,
body.pkp_page_search select,
body.pkp_page_login textarea,
body.pkp_page_register textarea,
body.pkp_page_user textarea,
body.pkp_page_search textarea {
	transition: border-color var(--wj-transition), box-shadow var(--wj-transition), background var(--wj-transition) !important;
}

/* Table polish */
table {
	border-radius: 18px !important;
	overflow: hidden !important;
}

table tr:hover td {
	background: #f8fafc !important;
}

/* Footer polish */
.wj-footer {
	background:
		radial-gradient(circle at 15% 0%, rgba(29, 78, 216, 0.2), transparent 26%),
		#0f172a !important;
}

.wj-footer-column a {
	transition: color var(--wj-transition), padding-left var(--wj-transition) !important;
}

.wj-footer-column a:hover {
	padding-left: 4px !important;
}

.wj-footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Pagination polish */
.cmp_pagination a,
.cmp_pagination .current {
	transition: background var(--wj-transition), color var(--wj-transition), transform var(--wj-transition), border-color var(--wj-transition) !important;
}

.cmp_pagination a:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	border-color: #1d4ed8 !important;
	transform: translateY(-2px) !important;
}

/* Notification polish */
.cmp_notification {
	border-radius: 18px !important;
	box-shadow: var(--wj-shadow-sm) !important;
}

/* Galley button polish */
.obj_galley_link,
.galleys_links a,
body.pkp_page_issue .obj_article_summary .galleys_links a,
body.pkp_page_article .obj_article_details .galleys_links a {
	transition: background var(--wj-transition), color var(--wj-transition), transform var(--wj-transition), box-shadow var(--wj-transition) !important;
}

.obj_galley_link:hover,
.galleys_links a:hover,
body.pkp_page_issue .obj_article_summary .galleys_links a:hover,
body.pkp_page_article .obj_article_details .galleys_links a:hover {
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
}

/* Scroll anchor agar tidak tertutup sticky header */
:target {
	scroll-margin-top: 150px !important;
}

/* Mobile polish */
@media (max-width: 768px) {
	.wj-home-section {
		margin-top: 48px !important;
	}

	.wj-home-hero {
		box-shadow: 0 18px 44px rgba(15, 23, 42, 0.16) !important;
	}

	.wj-primary-menu > li > a:hover,
	.wj-search-link:hover {
		transform: none !important;
	}

	.wj-btn:hover,
	.cmp_button:hover,
	button.submit:hover,
	.cmp_form .buttons button:hover,
	.page_search .submit button:hover,
	.wj-quick-item:hover,
	.wj-highlight-card:hover,
	.wj-announcement-card:hover,
	.wj-indexing-card:hover,
	.wj-info-card:hover,
	body.pkp_page_issue .obj_article_summary:hover,
	body.pkp_page_search .obj_article_summary:hover {
		transform: none !important;
	}
}

/* Reduced motion untuk aksesibilitas */
@media (prefers-reduced-motion: reduce) {
	*,
	*:before,
	*:after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.001ms !important;
	}
}

/* Print mode sederhana */
@media print {
	.wj-header,
	.wj-footer,
	.wj-menu-toggle,
	.wj-nav,
	.wj-sidebar,
	.pkp_structure_sidebar {
		display: none !important;
	}

	body {
		background: #ffffff !important;
		color: #000000 !important;
	}

	.wj-content-area,
	.wj-container,
	.wj-main-content,
	.page,
	.page_article,
	.page_issue,
	.obj_article_details .main_entry,
	.obj_article_details .entry_details {
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #ffffff !important;
		border: none !important;
		box-shadow: none !important;
	}

	a {
		color: #000000 !important;
		text-decoration: underline !important;
	}
}
/* =========================================================
   TAHAP 11 - Custom Article Summary Object
   Untuk daftar artikel di issue, search, dan homepage
   ========================================================= */

.wj-article-summary {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	overflow: visible !important;
}

.wj-article-summary-body {
	display: block !important;
	width: 100% !important;
	padding: 24px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.055) !important;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
}

.wj-article-summary-body:hover {
	transform: translateY(-3px) !important;
	border-color: #bfdbfe !important;
	box-shadow: 0 20px 48px rgba(15, 23, 42, 0.1) !important;
}

.wj-article-title {
	margin: 0 0 10px 0 !important;
	padding: 0 !important;
	border: none !important;
}

.wj-article-title a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	color: #0f172a !important;
	font-size: 21px !important;
	line-height: 1.38 !important;
	font-weight: 900 !important;
	letter-spacing: -0.02em !important;
	text-decoration: none !important;
	white-space: normal !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

.wj-article-title a:hover {
	color: #1d4ed8 !important;
}

.wj-article-title .subtitle {
	display: block !important;
	margin-top: 8px !important;
	color: #475569 !important;
	font-size: 16px !important;
	line-height: 1.45 !important;
	font-weight: 700 !important;
	letter-spacing: 0 !important;
}

.wj-article-authors {
	margin-top: 10px !important;
	color: #64748b !important;
	font-size: 15px !important;
	line-height: 1.6 !important;
}

.wj-article-authors span {
	color: #64748b !important;
}

.wj-article-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-top: 14px !important;
}

.wj-article-meta span {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 28px !important;
	padding: 5px 10px !important;
	border-radius: 999px !important;
	background: #f8fafc !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	border: 1px solid #e5e7eb !important;
}

.wj-article-galleys {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 16px 0 0 0 !important;
	padding: 0 !important;
}

.wj-article-galleys li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-article-galleys a,
.wj-article-galleys .obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 8px 14px !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	border: none !important;
	transition: background 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease !important;
}

.wj-article-galleys a:hover,
.wj-article-galleys .obj_galley_link:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
}

/* Pastikan article summary tidak melebar keluar container */
.wj-article-summary,
.wj-article-summary *,
.obj_article_summary,
.obj_article_summary * {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

/* Responsive article card */
@media (max-width: 768px) {
	.wj-article-summary-body {
		padding: 22px !important;
		border-radius: 22px !important;
	}

	.wj-article-title a {
		font-size: 19px !important;
		line-height: 1.4 !important;
	}

	.wj-article-title .subtitle {
		font-size: 15px !important;
	}

	.wj-article-meta {
		display: block !important;
	}

	.wj-article-meta span {
		margin: 0 6px 6px 0 !important;
	}
}

@media (max-width: 520px) {
	.wj-article-summary-body {
		padding: 18px !important;
		border-radius: 18px !important;
	}

	.wj-article-title a {
		font-size: 18px !important;
	}

	.wj-article-authors {
		font-size: 14px !important;
	}
}
/* =========================================================
   JS COMPONENT - Back To Top and Header Scroll State
   ========================================================= */

.wj-header.is-scrolled {
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.28) !important;
}

.wj-back-to-top {
	position: fixed !important;
	right: 24px !important;
	bottom: 24px !important;
	z-index: 99999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 46px !important;
	height: 46px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 22px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	cursor: pointer !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: translateY(12px) !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.22) !important;
	transition: opacity 180ms ease, visibility 180ms ease, transform 180ms ease, background 180ms ease !important;
}

.wj-back-to-top.is-visible {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
}

.wj-back-to-top:hover {
	background: #1d4ed8 !important;
}

@media (max-width: 640px) {
	.wj-back-to-top {
		right: 16px !important;
		bottom: 16px !important;
		width: 42px !important;
		height: 42px !important;
		font-size: 20px !important;
	}
}
/* =========================================================
   FIX DROPDOWN ABOUT - Header overflow dan posisi dropdown
   ========================================================= */

/* Pastikan dropdown header tidak terpotong */
.wj-header,
.wj-header .wj-container,
.wj-main-header,
.wj-nav,
.wj-primary-menu,
.wj-primary-menu > li {
	overflow: visible !important;
}

/* Header tetap di atas semua konten */
.wj-header {
	z-index: 99999 !important;
}

/* Posisi dropdown desktop dibuat stabil */
@media (min-width: 961px) {
	.wj-primary-menu > li {
		position: relative !important;
	}

	.wj-primary-menu > li > ul {
		display: none !important;
		position: absolute !important;
		top: calc(100% + 12px) !important;
		left: 50% !important;
		transform: translateX(-50%) !important;
		width: 260px !important;
		min-width: 260px !important;
		max-width: 260px !important;
		height: auto !important;
		max-height: none !important;
		padding: 10px !important;
		margin: 0 !important;
		background: #ffffff !important;
		border: 1px solid #e5e7eb !important;
		border-radius: 18px !important;
		box-shadow: 0 24px 60px rgba(15, 23, 42, 0.22) !important;
		z-index: 100000 !important;
		overflow: visible !important;
	}

	.wj-primary-menu > li:hover > ul,
	.wj-primary-menu > li:focus-within > ul {
		display: block !important;
	}

	.wj-primary-menu > li > ul:before {
		content: "" !important;
		position: absolute !important;
		top: -8px !important;
		left: 50% !important;
		width: 16px !important;
		height: 16px !important;
		background: #ffffff !important;
		border-left: 1px solid #e5e7eb !important;
		border-top: 1px solid #e5e7eb !important;
		transform: translateX(-50%) rotate(45deg) !important;
		z-index: -1 !important;
	}

	.wj-primary-menu > li > ul li {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	.wj-primary-menu > li > ul a {
		display: block !important;
		width: 100% !important;
		padding: 12px 14px !important;
		border-radius: 12px !important;
		background: transparent !important;
		color: #0f172a !important;
		font-size: 14px !important;
		font-weight: 800 !important;
		line-height: 1.35 !important;
		text-decoration: none !important;
		white-space: normal !important;
	}

	.wj-primary-menu > li > ul a:hover {
		background: #eff6ff !important;
		color: #1d4ed8 !important;
	}
}

/* Jangan beri overflow hidden khusus pada area header */
.wj-header .wj-container,
.wj-header .wj-main-header {
	max-width: 1180px !important;
	overflow-x: visible !important;
	overflow-y: visible !important;
}

/* Mobile tetap aman */
@media (max-width: 960px) {
	.wj-primary-menu > li > ul {
		position: static !important;
		display: block !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		transform: none !important;
		padding: 0 0 0 14px !important;
		margin: 0 0 8px 0 !important;
		background: transparent !important;
		border: none !important;
		border-radius: 0 !important;
		box-shadow: none !important;
	}

	.wj-primary-menu > li > ul:before {
		display: none !important;
	}
}
/* =========================================================
   TAHAP 12 - Custom Issue Summary / Archive Cards
   OJS 3.3
   ========================================================= */

/* Archive page container */
body.pkp_page_issue.pkp_op_archive .page_issue_archive,
body.pkp_page_issue_archive .page_issue_archive,
body.pkp_page_issue_archive .page {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 38px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

/* Archive title */
body.pkp_page_issue.pkp_op_archive h1,
body.pkp_page_issue_archive h1 {
	margin: 0 0 30px 0 !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

/* Archive list menjadi grid */
body.pkp_page_issue.pkp_op_archive .issues_archive,
body.pkp_page_issue_archive .issues_archive,
body.pkp_page_issue_archive .issues {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 22px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Reset list item */
body.pkp_page_issue.pkp_op_archive .issues_archive > li,
body.pkp_page_issue_archive .issues_archive > li,
body.pkp_page_issue_archive .issues > li {
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	list-style: none !important;
}

/* Issue summary card */
.wj-issue-summary {
	display: grid !important;
	grid-template-columns: 150px minmax(0, 1fr) !important;
	gap: 22px !important;
	align-items: stretch !important;
	width: 100% !important;
	height: 100% !important;
	padding: 22px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 26px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
	overflow: hidden !important;
}

.wj-issue-summary:hover {
	transform: translateY(-3px) !important;
	border-color: #bfdbfe !important;
	box-shadow: 0 22px 52px rgba(15, 23, 42, 0.1) !important;
}

/* Cover */
.wj-issue-summary-cover {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 150px !important;
	min-height: 200px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 20px !important;
	overflow: hidden !important;
	text-decoration: none !important;
}

.wj-issue-summary-cover img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Placeholder kalau cover belum ada */
.wj-issue-cover-placeholder {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 200px !important;
	background:
		radial-gradient(circle at top right, rgba(29, 78, 216, 0.16), transparent 35%),
		linear-gradient(135deg, #0f172a, #1e293b) !important;
	color: #ffffff !important;
}

.wj-issue-cover-placeholder span {
	display: inline-flex !important;
	padding: 8px 14px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
}

/* Content */
.wj-issue-summary-content {
	display: flex !important;
	flex-direction: column !important;
	min-width: 0 !important;
}

.wj-issue-title {
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	border: none !important;
}

.wj-issue-title a {
	display: block !important;
	color: #0f172a !important;
	font-size: 22px !important;
	line-height: 1.32 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
	text-decoration: none !important;
	overflow-wrap: anywhere !important;
}

.wj-issue-title a:hover {
	color: #1d4ed8 !important;
}

/* Meta */
.wj-issue-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-bottom: 14px !important;
}

.wj-issue-meta span {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 28px !important;
	padding: 5px 10px !important;
	border-radius: 999px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

/* Description */
.wj-issue-description {
	margin: 0 0 18px 0 !important;
	color: #475569 !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	overflow-wrap: break-word !important;
}

/* Read more */
.wj-issue-readmore {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: max-content !important;
	min-height: 40px !important;
	margin-top: auto !important;
	padding: 9px 16px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	transition: background 180ms ease, transform 180ms ease, box-shadow 180ms ease !important;
}

.wj-issue-readmore:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
}

/* Safety overflow */
.wj-issue-summary,
.wj-issue-summary * {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: anywhere !important;
}

/* Responsive tablet */
@media (max-width: 1024px) {
	body.pkp_page_issue.pkp_op_archive .issues_archive,
	body.pkp_page_issue_archive .issues_archive,
	body.pkp_page_issue_archive .issues {
		grid-template-columns: 1fr !important;
	}

	.wj-issue-summary {
		grid-template-columns: 140px minmax(0, 1fr) !important;
	}

	.wj-issue-summary-cover {
		width: 140px !important;
		min-height: 190px !important;
	}
}

/* Responsive mobile */
@media (max-width: 640px) {
	body.pkp_page_issue.pkp_op_archive .page_issue_archive,
	body.pkp_page_issue_archive .page_issue_archive,
	body.pkp_page_issue_archive .page {
		padding: 22px !important;
		border-radius: 22px !important;
	}

	.wj-issue-summary {
		display: block !important;
		padding: 20px !important;
		border-radius: 22px !important;
	}

	.wj-issue-summary-cover {
		width: 100% !important;
		min-height: 220px !important;
		margin-bottom: 18px !important;
	}

	.wj-issue-title a {
		font-size: 20px !important;
	}

	.wj-issue-readmore {
		width: 100% !important;
	}
}

@media (max-width: 420px) {
	.wj-issue-summary-cover {
		min-height: 190px !important;
	}

	.wj-issue-title a {
		font-size: 18px !important;
	}
}
/* =========================================================
   PATCH TAHAP 12.1 - Refine Archive Issue Card
   ========================================================= */

/* Archive wrapper lebih proporsional */
body.pkp_page_issue.pkp_op_archive .page_issue_archive,
body.pkp_page_issue_archive .page_issue_archive,
body.pkp_page_issue_archive .page {
	min-height: auto !important;
	padding-bottom: 42px !important;
}

/* Grid archive tidak terlalu melebar jika issue sedikit */
body.pkp_page_issue.pkp_op_archive .issues_archive,
body.pkp_page_issue_archive .issues_archive,
body.pkp_page_issue_archive .issues {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(420px, 620px)) !important;
	gap: 24px !important;
	align-items: stretch !important;
	justify-content: start !important;
}

/* Card issue lebih ringkas */
.wj-issue-summary {
	grid-template-columns: 135px minmax(0, 1fr) !important;
	gap: 20px !important;
	padding: 22px !important;
	max-width: 620px !important;
}

/* Cover tidak terlalu besar */
.wj-issue-summary-cover {
	width: 135px !important;
	min-height: 170px !important;
	border-radius: 18px !important;
}

.wj-issue-cover-placeholder {
	min-height: 170px !important;
}

/* Hilangkan garis bawah heading bawaan */
.wj-issue-title {
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	border: none !important;
}

.wj-issue-title a {
	font-size: 21px !important;
	line-height: 1.35 !important;
	color: #0f172a !important;
	text-decoration: none !important;
}

/* Meta lebih rapi */
.wj-issue-meta {
	margin-top: 10px !important;
	margin-bottom: 16px !important;
}

.wj-issue-meta span {
	background: #f8fafc !important;
	color: #64748b !important;
	border: 1px solid #e5e7eb !important;
}

/* Tombol View Issue diperbaiki agar teks muncul */
.wj-issue-readmore {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 150px !important;
	min-height: 42px !important;
	margin-top: auto !important;
	padding: 10px 18px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	border: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	text-indent: 0 !important;
	overflow: visible !important;
}

.wj-issue-readmore:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

/* Jika teks tombol tetap hilang karena template/selector lama */
.wj-issue-readmore:empty:before {
	content: "View Issue" !important;
	color: #ffffff !important;
}

/* Responsive */
@media (max-width: 640px) {
	body.pkp_page_issue.pkp_op_archive .issues_archive,
	body.pkp_page_issue_archive .issues_archive,
	body.pkp_page_issue_archive .issues {
		grid-template-columns: 1fr !important;
	}

	.wj-issue-summary {
		display: block !important;
		max-width: 100% !important;
	}

	.wj-issue-summary-cover {
		width: 100% !important;
		min-height: 190px !important;
		margin-bottom: 18px !important;
	}

	.wj-issue-cover-placeholder {
		min-height: 190px !important;
	}

	.wj-issue-readmore {
		width: 100% !important;
	}
}
/* =========================================================
   FIX TAHAP 12.2 - View Issue Button + Issue Cover Size
   ========================================================= */

/* Pastikan tombol View Issue di archive selalu terlihat */
.wj-issue-readmore {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 150px !important;
	min-height: 42px !important;
	padding: 10px 18px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	border: none !important;
	opacity: 1 !important;
	visibility: visible !important;
	text-indent: 0 !important;
	overflow: visible !important;
}

.wj-issue-readmore span {
	display: inline-block !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-indent: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
}

.wj-issue-readmore:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}

.wj-issue-readmore:hover span {
	color: #ffffff !important;
}

/* Jika masih kosong karena ada rule lama */
.wj-issue-readmore:before {
	content: none !important;
}

.wj-issue-readmore:empty:before {
	content: "View Issue" !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

/* =========================================================
   Fix sampul pada halaman issue/view agar tidak terlalu besar
   ========================================================= */

/* Area cover issue detail */
body.pkp_page_issue .obj_issue_toc .cover,
body.pkp_page_issue .page_issue .cover {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 28px 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border-radius: 24px !important;
	background: #f8fafc !important;
}

/* Link cover */
body.pkp_page_issue .obj_issue_toc .cover a,
body.pkp_page_issue .page_issue .cover a {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	text-decoration: none !important;
	overflow: hidden !important;
	border-radius: 24px !important;
}

/* Gambar cover jangan terlalu tinggi */
body.pkp_page_issue .obj_issue_toc .cover img,
body.pkp_page_issue .page_issue .cover img {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	height: 260px !important;
	max-height: 260px !important;
	object-fit: cover !important;
	object-position: center !important;
	border-radius: 24px !important;
	box-shadow: none !important;
}

/* Jika ingin cover lebih seperti thumbnail, bukan banner besar */
body.pkp_page_issue .obj_issue_toc .cover + .published,
body.pkp_page_issue .page_issue .cover + .published {
	margin-top: 22px !important;
}

/* Mobile */
@media (max-width: 768px) {
	body.pkp_page_issue .obj_issue_toc .cover img,
	body.pkp_page_issue .page_issue .cover img {
		height: 200px !important;
		max-height: 200px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_issue .obj_issue_toc .cover,
	body.pkp_page_issue .page_issue .cover,
	body.pkp_page_issue .obj_issue_toc .cover a,
	body.pkp_page_issue .page_issue .cover a {
		border-radius: 20px !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_issue .obj_issue_toc .cover img,
	body.pkp_page_issue .page_issue .cover img {
		height: 160px !important;
		max-height: 160px !important;
	}
}
/* =========================================================
   TAHAP 13 - Custom Issue TOC / Issue Detail Page
   ========================================================= */

body.pkp_page_issue .wj-issue-toc {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	overflow: visible !important;
}

/* Hero issue */
.wj-issue-hero {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 320px !important;
	gap: 32px !important;
	align-items: stretch !important;
	margin-bottom: 38px !important;
	padding: 34px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

.wj-issue-hero-content {
	min-width: 0 !important;
}

.wj-issue-hero-title {
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	border: none !important;
	color: #0f172a !important;
	font-size: clamp(32px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
	overflow-wrap: anywhere !important;
}

.wj-issue-hero-description {
	margin-top: 18px !important;
	padding: 20px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 22px !important;
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.8 !important;
}

.wj-issue-hero-description p {
	margin-top: 0 !important;
}

.wj-issue-hero-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-top: 20px !important;
}

.wj-issue-hero-meta span {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 30px !important;
	padding: 6px 11px !important;
	border-radius: 999px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	color: #64748b !important;
	font-size: 13px !important;
	font-weight: 800 !important;
}

.wj-issue-pubid {
	margin-top: 14px !important;
	padding: 14px 16px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
	color: #475569 !important;
	font-size: 14px !important;
	line-height: 1.6 !important;
	overflow-wrap: anywhere !important;
}

.wj-issue-pubid strong {
	color: #0f172a !important;
	font-weight: 900 !important;
}

.wj-issue-pubid a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

/* Cover issue */
.wj-issue-hero-cover {
	display: flex !important;
	align-items: stretch !important;
	justify-content: center !important;
	min-width: 0 !important;
}

.wj-issue-hero-cover img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-height: 360px !important;
	object-fit: cover !important;
	object-position: center !important;
	border-radius: 24px !important;
	border: 1px solid #e5e7eb !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.12) !important;
}

.wj-issue-hero-placeholder {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 280px !important;
	border-radius: 24px !important;
	background:
		radial-gradient(circle at top right, rgba(29, 78, 216, 0.18), transparent 35%),
		linear-gradient(135deg, #0f172a, #1e293b) !important;
	color: #ffffff !important;
}

.wj-issue-hero-placeholder span {
	display: inline-flex !important;
	padding: 8px 14px !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.12) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
}

/* Full issue galleys */
.wj-issue-full-galleys {
	margin-bottom: 38px !important;
	padding: 28px !important;
	background: #0f172a !important;
	border-radius: 28px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.12) !important;
}

.wj-issue-full-galleys h2,
.wj-issue-full-galleys h3,
.wj-issue-full-galleys h4 {
	margin: 0 0 16px 0 !important;
	padding: 0 !important;
	border: none !important;
	color: #ffffff !important;
	font-size: 24px !important;
	font-weight: 900 !important;
}

.wj-issue-galleys {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-issue-galleys li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.wj-issue-galleys a,
.wj-issue-galleys .obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 40px !important;
	padding: 9px 15px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	border: none !important;
}

/* Articles section */
.wj-issue-articles {
	padding: 34px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

.wj-issue-section-heading {
	margin-bottom: 24px !important;
}

.wj-issue-section-heading span {
	display: inline-flex !important;
	margin-bottom: 10px !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
}

.wj-issue-section-heading h2 {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	color: #0f172a !important;
	font-size: 34px !important;
	line-height: 1.15 !important;
	font-weight: 900 !important;
	letter-spacing: -0.04em !important;
}

.wj-issue-sections,
.wj-issue-section,
.wj-issue-article-list {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.wj-issue-section {
	margin-top: 28px !important;
}

.wj-issue-section:first-child {
	margin-top: 0 !important;
}

.wj-issue-section-title {
	margin: 0 0 18px 0 !important;
	padding: 0 0 12px 0 !important;
	border-bottom: 2px solid #dbeafe !important;
	color: #0f172a !important;
	font-size: 25px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

.wj-issue-article-list > li {
	list-style: none !important;
	margin: 0 0 18px 0 !important;
	padding: 0 !important;
}

.wj-issue-article-list > li:last-child {
	margin-bottom: 0 !important;
}

/* Safety */
.wj-issue-toc,
.wj-issue-toc * {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: anywhere !important;
}

/* Responsive */
@media (max-width: 960px) {
	.wj-issue-hero {
		grid-template-columns: 1fr !important;
		padding: 28px !important;
		border-radius: 26px !important;
	}

	.wj-issue-hero-cover img {
		height: 260px !important;
		max-height: 260px !important;
	}

	.wj-issue-hero-placeholder {
		min-height: 240px !important;
	}

	.wj-issue-articles {
		padding: 28px !important;
		border-radius: 26px !important;
	}
}

@media (max-width: 640px) {
	.wj-issue-hero,
	.wj-issue-articles {
		padding: 22px !important;
		border-radius: 22px !important;
	}

	.wj-issue-hero-title {
		font-size: 28px !important;
	}

	.wj-issue-hero-cover img {
		height: 190px !important;
		max-height: 190px !important;
		border-radius: 20px !important;
	}

	.wj-issue-hero-placeholder {
		min-height: 190px !important;
		border-radius: 20px !important;
	}

	.wj-issue-section-heading h2 {
		font-size: 28px !important;
	}

	.wj-issue-section-title {
		font-size: 22px !important;
	}

	.wj-issue-full-galleys {
		padding: 22px !important;
		border-radius: 22px !important;
	}
}
/* =========================================================
   RESTORE SAFE ARTICLE VIEW
   Pakai template bawaan OJS, styling saja via CSS
   ========================================================= */

body.pkp_page_article .page_article {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details {
	display: block !important;
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

/* Judul artikel */
body.pkp_page_article .obj_article_details .page_title,
body.pkp_page_article .obj_article_details > h1 {
	margin: 0 0 30px 0 !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
	text-wrap: balance !important;
	overflow-wrap: anywhere !important;
}

/* Struktur row bawaan OJS */
body.pkp_page_article .obj_article_details .row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) 340px !important;
	gap: 34px !important;
	align-items: start !important;
	width: 100% !important;
	margin: 0 !important;
}

/* Reset float/width bawaan */
body.pkp_page_article .obj_article_details .row > * {
	float: none !important;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Kolom utama */
body.pkp_page_article .obj_article_details .main_entry {
	grid-column: 1 / 2 !important;
	width: 100% !important;
	min-width: 0 !important;
	padding: 34px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
	overflow: hidden !important;
}

/* Sidebar metadata */
body.pkp_page_article .obj_article_details .entry_details {
	grid-column: 2 / 3 !important;
	width: 100% !important;
	min-width: 0 !important;
	padding: 26px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-top: 4px solid #1d4ed8 !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
	position: sticky !important;
	top: 150px !important;
	overflow: hidden !important;
}

/* Section */
body.pkp_page_article .obj_article_details .item {
	margin: 0 0 28px 0 !important;
	padding: 0 0 26px 0 !important;
	border-bottom: 1px solid #e5e7eb !important;
}

body.pkp_page_article .obj_article_details .item:last-child {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
	border-bottom: none !important;
}

/* Label kiri */
body.pkp_page_article .obj_article_details .main_entry .item .label,
body.pkp_page_article .obj_article_details .main_entry .item h2 {
	margin: 0 0 14px 0 !important;
	color: #0f172a !important;
	font-size: 24px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
	text-transform: none !important;
}

body.pkp_page_article .obj_article_details .main_entry .item .label:after,
body.pkp_page_article .obj_article_details .main_entry .item h2:after {
	content: "" !important;
	display: block !important;
	width: 46px !important;
	height: 3px !important;
	margin-top: 10px !important;
	border-radius: 999px !important;
	background: #1d4ed8 !important;
}

/* Label kanan */
body.pkp_page_article .obj_article_details .entry_details .item .label,
body.pkp_page_article .obj_article_details .entry_details .item h2,
body.pkp_page_article .obj_article_details .entry_details h2 {
	margin: 0 0 10px 0 !important;
	color: #0f172a !important;
	font-size: 14px !important;
	line-height: 1.3 !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}

/* Teks konten utama */
body.pkp_page_article .obj_article_details .main_entry .item p,
body.pkp_page_article .obj_article_details .main_entry .item div,
body.pkp_page_article .obj_article_details .main_entry .abstract,
body.pkp_page_article .obj_article_details .main_entry .value {
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

/* Teks sidebar */
body.pkp_page_article .obj_article_details .entry_details p,
body.pkp_page_article .obj_article_details .entry_details div,
body.pkp_page_article .obj_article_details .entry_details .value {
	color: #475569 !important;
	font-size: 14px !important;
	line-height: 1.7 !important;
}

/* Authors */
body.pkp_page_article .obj_article_details .authors {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
	gap: 14px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .authors li {
	list-style: none !important;
	margin: 0 !important;
	padding: 18px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 20px !important;
}

body.pkp_page_article .obj_article_details .authors .name {
	display: block !important;
	color: #0f172a !important;
	font-size: 16px !important;
	font-weight: 900 !important;
	line-height: 1.35 !important;
}

body.pkp_page_article .obj_article_details .authors .affiliation,
body.pkp_page_article .obj_article_details .authors .orcid {
	display: block !important;
	margin-top: 5px !important;
	color: #64748b !important;
	font-size: 13px !important;
	line-height: 1.5 !important;
}

/* Keywords bawaan OJS */
body.pkp_page_article .obj_article_details .keywords .value {
	color: #334155 !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
}

/* Galleys / Downloads */
body.pkp_page_article .obj_article_details .galleys,
body.pkp_page_article .obj_article_details .item.galleys {
	padding: 24px !important;
	background: #0f172a !important;
	border: none !important;
	border-radius: 24px !important;
}

body.pkp_page_article .obj_article_details .galleys .label,
body.pkp_page_article .obj_article_details .galleys h2,
body.pkp_page_article .obj_article_details .item.galleys .label,
body.pkp_page_article .obj_article_details .item.galleys h2 {
	color: #ffffff !important;
}

body.pkp_page_article .obj_article_details .galleys .label:after,
body.pkp_page_article .obj_article_details .galleys h2:after,
body.pkp_page_article .obj_article_details .item.galleys .label:after,
body.pkp_page_article .obj_article_details .item.galleys h2:after {
	background: #bfdbfe !important;
}

body.pkp_page_article .obj_article_details .galleys_links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	list-style: none !important;
	margin: 12px 0 0 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links a,
body.pkp_page_article .obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 40px !important;
	padding: 9px 15px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	color: #0f172a !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
	border: none !important;
}

/* Citation format/download list */
body.pkp_page_article .obj_article_details .citation_display,
body.pkp_page_article .obj_article_details .citation_formats {
	padding: 16px !important;
	background: #f8fafc !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 18px !important;
}

/* Link panjang */
body.pkp_page_article .obj_article_details a,
body.pkp_page_article .obj_article_details .doi a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	text-decoration: none !important;
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
}

/* Safety */
body.pkp_page_article .obj_article_details,
body.pkp_page_article .obj_article_details * {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: anywhere !important;
}

/* Mobile */
@media (max-width: 960px) {
	body.pkp_page_article .obj_article_details .row {
		display: block !important;
	}

	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		width: 100% !important;
		margin-bottom: 24px !important;
		position: static !important;
	}

	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 34px !important;
	}
}

@media (max-width: 640px) {
	body.pkp_page_article .obj_article_details .main_entry,
	body.pkp_page_article .obj_article_details .entry_details {
		padding: 22px !important;
		border-radius: 22px !important;
	}

	body.pkp_page_article .obj_article_details .page_title,
	body.pkp_page_article .obj_article_details > h1 {
		font-size: 28px !important;
	}

	body.pkp_page_article .obj_article_details .main_entry .item .label,
	body.pkp_page_article .obj_article_details .main_entry .item h2 {
		font-size: 22px !important;
	}
}
/* =========================================================
   TAHAP 15 - Galley / PDF Viewer / Article File Page
   OJS 3.3
   ========================================================= */

/* Area umum halaman galley */
body.pkp_page_article.pkp_op_view .galley_view,
body.pkp_page_article.pkp_op_download .galley_view,
body.pkp_page_article .galley_view {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
	overflow: hidden !important;
}

/* Header galley */
body.pkp_page_article .galley_view .header,
body.pkp_page_article .galley_view_header,
body.pkp_page_article .galley_view .galley_view_header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 18px !important;
	padding: 20px 24px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}

/* Judul galley */
body.pkp_page_article .galley_view .title,
body.pkp_page_article .galley_view_header .title,
body.pkp_page_article .galley_view h1,
body.pkp_page_article .galley_view h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: 20px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	letter-spacing: -0.02em !important;
}

/* Tombol download / close / return */
body.pkp_page_article .galley_view a,
body.pkp_page_article .galley_view .download,
body.pkp_page_article .galley_view .return,
body.pkp_page_article .galley_view .close {
	color: #ffffff !important;
	font-weight: 800 !important;
	text-decoration: none !important;
}

body.pkp_page_article .galley_view .download,
body.pkp_page_article .galley_view .return,
body.pkp_page_article .galley_view .close,
body.pkp_page_article .galley_view_header a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 38px !important;
	padding: 8px 14px !important;
	border-radius: 999px !important;
	background: rgba(255,255,255,0.12) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	border: 1px solid rgba(255,255,255,0.16) !important;
}

body.pkp_page_article .galley_view .download:hover,
body.pkp_page_article .galley_view .return:hover,
body.pkp_page_article .galley_view .close:hover,
body.pkp_page_article .galley_view_header a:hover {
	background: #ffffff !important;
	color: #0f172a !important;
}

/* Area iframe/PDF */
body.pkp_page_article .galley_view iframe,
body.pkp_page_article .galley_view object,
body.pkp_page_article .galley_view embed {
	display: block !important;
	width: 100% !important;
	min-height: 760px !important;
	border: none !important;
	background: #f8fafc !important;
}

/* PDF object wrapper */
body.pkp_page_article .galley_view .galley_view_content,
body.pkp_page_article .galley_view .pdf_viewer,
body.pkp_page_article .galley_view .pdfjs,
body.pkp_page_article .galley_view .pkp_pdf_viewer {
	width: 100% !important;
	min-height: 760px !important;
	background: #f8fafc !important;
}

/* Kalau PDF viewer gagal tampil */
body.pkp_page_article .galley_view .fallback,
body.pkp_page_article .galley_view .pdf_fallback {
	padding: 32px !important;
	background: #f8fafc !important;
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.7 !important;
}

/* Link fallback */
body.pkp_page_article .galley_view .fallback a,
body.pkp_page_article .galley_view .pdf_fallback a {
	color: #1d4ed8 !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

/* =========================================================
   Article download buttons di halaman artikel
   ========================================================= */

body.pkp_page_article .obj_article_details .galleys_links,
body.pkp_page_article .obj_article_details .galleys_links ul {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	list-style: none !important;
	margin: 14px 0 0 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_article .obj_article_details .galleys_links a,
body.pkp_page_article .obj_article_details .obj_galley_link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 10px 16px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	border: none !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
}

body.pkp_page_article .obj_article_details .galleys_links a:hover,
body.pkp_page_article .obj_article_details .obj_galley_link:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
}

/* Badge PDF/HTML lebih jelas */
body.pkp_page_article .obj_article_details .obj_galley_link:before,
body.pkp_page_issue .obj_article_summary .obj_galley_link:before,
.wj-article-galleys .obj_galley_link:before {
	content: "File" !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-right: 8px !important;
	padding: 3px 7px !important;
	border-radius: 999px !important;
	background: rgba(255,255,255,0.16) !important;
	color: inherit !important;
	font-size: 10px !important;
	font-weight: 900 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.06em !important;
}

/* =========================================================
   Modal galley/download jika OJS memakai modal
   ========================================================= */

.pkp_modal_panel,
.cmp_modal,
.modal {
	border-radius: 24px !important;
	overflow: hidden !important;
	box-shadow: 0 24px 72px rgba(15, 23, 42, 0.24) !important;
}

.pkp_modal_panel .header,
.cmp_modal .header,
.modal .header,
.modal-header {
	background: #0f172a !important;
	color: #ffffff !important;
	border-bottom: none !important;
	padding: 18px 22px !important;
}

.pkp_modal_panel .header h1,
.pkp_modal_panel .header h2,
.cmp_modal .header h1,
.cmp_modal .header h2,
.modal-header h1,
.modal-header h2 {
	margin: 0 !important;
	color: #ffffff !important;
	font-size: 20px !important;
	font-weight: 900 !important;
	line-height: 1.3 !important;
}

.pkp_modal_panel .content,
.cmp_modal .content,
.modal .content,
.modal-body {
	padding: 24px !important;
	background: #ffffff !important;
	color: #334155 !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
}

/* Responsive */
@media (max-width: 768px) {
	body.pkp_page_article .galley_view {
		border-radius: 22px !important;
	}

	body.pkp_page_article .galley_view .header,
	body.pkp_page_article .galley_view_header,
	body.pkp_page_article .galley_view .galley_view_header {
		display: block !important;
		padding: 18px !important;
	}

	body.pkp_page_article .galley_view .download,
	body.pkp_page_article .galley_view .return,
	body.pkp_page_article .galley_view .close,
	body.pkp_page_article .galley_view_header a {
		margin-top: 12px !important;
		width: 100% !important;
	}

	body.pkp_page_article .galley_view iframe,
	body.pkp_page_article .galley_view object,
	body.pkp_page_article .galley_view embed,
	body.pkp_page_article .galley_view .galley_view_content,
	body.pkp_page_article .galley_view .pdf_viewer,
	body.pkp_page_article .galley_view .pdfjs,
	body.pkp_page_article .galley_view .pkp_pdf_viewer {
		min-height: 560px !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_article .galley_view iframe,
	body.pkp_page_article .galley_view object,
	body.pkp_page_article .galley_view embed,
	body.pkp_page_article .galley_view .galley_view_content,
	body.pkp_page_article .galley_view .pdf_viewer,
	body.pkp_page_article .galley_view .pdfjs,
	body.pkp_page_article .galley_view .pkp_pdf_viewer {
		min-height: 460px !important;
	}
}
/* =========================================================
   TAHAP 16 - Announcements Page and Announcement Detail
   OJS 3.3
   ========================================================= */

/* Halaman announcement */
body.pkp_page_announcement .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 48px !important;
	padding-bottom: 64px !important;
}

body.pkp_page_announcement .wj-content-layout {
	display: block !important;
}

body.pkp_page_announcement .wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
}

/* Wrapper halaman announcement */
body.pkp_page_announcement .page,
body.pkp_page_announcement .page_announcements,
body.pkp_page_announcement .page_announcement {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 38px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

/* Judul halaman */
body.pkp_page_announcement .page h1,
body.pkp_page_announcement .page_announcements h1,
body.pkp_page_announcement .page_announcement h1 {
	margin: 0 0 30px 0 !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
	overflow-wrap: anywhere !important;
}

/* List announcement */
body.pkp_page_announcement .announcements,
body.pkp_page_announcement .announcement_list {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 22px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.pkp_page_announcement .announcements > li,
body.pkp_page_announcement .announcement_list > li {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Announcement summary card */
.wj-announcement-summary {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

.wj-announcement-summary-body {
	display: flex !important;
	flex-direction: column !important;
	width: 100% !important;
	height: 100% !important;
	padding: 26px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 24px !important;
	box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06) !important;
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
}

.wj-announcement-summary-body:hover {
	transform: translateY(-3px) !important;
	border-color: #bfdbfe !important;
	box-shadow: 0 22px 52px rgba(15, 23, 42, 0.1) !important;
}

/* Meta */
.wj-announcement-meta {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-bottom: 14px !important;
}

.wj-announcement-meta span {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 28px !important;
	padding: 5px 10px !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

/* Title */
.wj-announcement-title {
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
	border: none !important;
}

.wj-announcement-title a {
	display: block !important;
	color: #0f172a !important;
	font-size: 22px !important;
	line-height: 1.35 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
	text-decoration: none !important;
	overflow-wrap: anywhere !important;
}

.wj-announcement-title a:hover {
	color: #1d4ed8 !important;
}

/* Excerpt */
.wj-announcement-excerpt {
	margin: 0 0 20px 0 !important;
	color: #475569 !important;
	font-size: 15px !important;
	line-height: 1.75 !important;
}

.wj-announcement-excerpt p {
	margin-top: 0 !important;
}

/* Read more */
.wj-announcement-readmore {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: max-content !important;
	min-height: 40px !important;
	margin-top: auto !important;
	padding: 9px 16px !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 900 !important;
	line-height: 1.2 !important;
	text-decoration: none !important;
	border: none !important;
}

.wj-announcement-readmore:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12) !important;
}

/* Announcement detail bawaan OJS */
body.pkp_page_announcement.pkp_op_view .page,
body.pkp_page_announcement.pkp_op_view .page_announcement {
	max-width: 980px !important;
}

body.pkp_page_announcement.pkp_op_view .date,
body.pkp_page_announcement.pkp_op_view .published,
body.pkp_page_announcement.pkp_op_view .date_posted {
	display: inline-flex !important;
	align-items: center !important;
	min-height: 30px !important;
	margin: 0 0 24px 0 !important;
	padding: 6px 12px !important;
	border-radius: 999px !important;
	background: #eff6ff !important;
	color: #1d4ed8 !important;
	font-size: 13px !important;
	font-weight: 900 !important;
}

body.pkp_page_announcement.pkp_op_view .description,
body.pkp_page_announcement.pkp_op_view .announcement_full,
body.pkp_page_announcement.pkp_op_view .value {
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

body.pkp_page_announcement.pkp_op_view .description p,
body.pkp_page_announcement.pkp_op_view .announcement_full p,
body.pkp_page_announcement.pkp_op_view .value p {
	margin-top: 0 !important;
	margin-bottom: 18px !important;
}

/* Safety */
.wj-announcement-summary,
.wj-announcement-summary *,
body.pkp_page_announcement .page,
body.pkp_page_announcement .page * {
	box-sizing: border-box !important;
	max-width: 100% !important;
	overflow-wrap: anywhere !important;
}

/* Responsive */
@media (max-width: 900px) {
	body.pkp_page_announcement .announcements,
	body.pkp_page_announcement .announcement_list {
		grid-template-columns: 1fr !important;
	}

	body.pkp_page_announcement .page,
	body.pkp_page_announcement .page_announcements,
	body.pkp_page_announcement .page_announcement {
		padding: 28px !important;
		border-radius: 24px !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_announcement .page,
	body.pkp_page_announcement .page_announcements,
	body.pkp_page_announcement .page_announcement {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_announcement .page h1,
	body.pkp_page_announcement .page_announcements h1,
	body.pkp_page_announcement .page_announcement h1 {
		font-size: 28px !important;
	}

	.wj-announcement-summary-body {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	.wj-announcement-title a {
		font-size: 19px !important;
	}

	.wj-announcement-readmore {
		width: 100% !important;
	}
}
/* =========================================================
   TAHAP 17 - Final Theme Stabilizer
   Menjaga layout utama agar tidak saling tabrakan
   ========================================================= */

/* Global safety */
html,
body {
	max-width: 100% !important;
	overflow-x: hidden !important;
}

body {
	background: #f4f7fb !important;
	color: #334155 !important;
}

/* Semua elemen pakai box sizing stabil */
*,
*:before,
*:after {
	box-sizing: border-box !important;
}

/* Media tidak boleh keluar container */
img,
svg,
video,
iframe,
object,
embed {
	max-width: 100% !important;
}

/* Kontainer utama theme */
.wj-container,
.wj-content-layout,
.wj-main-content,
.wj-sidebar,
.pkp_structure_main,
.pkp_structure_content,
.pkp_structure_page {
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* Area konten utama */
.wj-content-area {
	position: relative !important;
	z-index: 1 !important;
	background: #f4f7fb !important;
}

/* Header harus tetap di atas dropdown dan konten */
.wj-header {
	position: relative !important;
	z-index: 99999 !important;
	overflow: visible !important;
}

.wj-header *,
.wj-nav,
.wj-primary-menu,
.wj-primary-menu > li {
	overflow: visible !important;
}

/* Dropdown tetap aman */
@media (min-width: 961px) {
	.wj-primary-menu > li > ul {
		z-index: 100000 !important;
	}
}

/* Hindari konten OJS bawaan memakai float lama */
.pkp_structure_main:before,
.pkp_structure_main:after,
.pkp_structure_content:before,
.pkp_structure_content:after,
.wj-content-layout:before,
.wj-content-layout:after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}

/* Judul halaman umum */
.wj-main-content h1,
.wj-main-content .page_title,
.pkp_structure_main h1 {
	overflow-wrap: anywhere !important;
	word-break: normal !important;
}

/* Link panjang tidak boleh membuat horizontal scroll */
.wj-main-content a,
.pkp_structure_main a,
.obj_article_details a,
.obj_issue_toc a {
	overflow-wrap: anywhere !important;
	word-break: break-word !important;
}

/* Tabel bawaan OJS agar responsif */
.wj-main-content table,
.pkp_structure_main table {
	width: 100% !important;
	max-width: 100% !important;
	border-collapse: collapse !important;
	overflow-wrap: anywhere !important;
}

.wj-main-content table th,
.wj-main-content table td,
.pkp_structure_main table th,
.pkp_structure_main table td {
	padding: 12px !important;
	border: 1px solid #e5e7eb !important;
	vertical-align: top !important;
}

/* Form bawaan OJS */
.wj-main-content input,
.wj-main-content select,
.wj-main-content textarea,
.pkp_structure_main input,
.pkp_structure_main select,
.pkp_structure_main textarea {
	max-width: 100% !important;
	border-radius: 14px !important;
	border: 1px solid #cbd5e1 !important;
	box-shadow: none !important;
}

.wj-main-content input:focus,
.wj-main-content select:focus,
.wj-main-content textarea:focus,
.pkp_structure_main input:focus,
.pkp_structure_main select:focus,
.pkp_structure_main textarea:focus {
	outline: none !important;
	border-color: #1d4ed8 !important;
	box-shadow: 0 0 0 4px rgba(29, 78, 216, 0.12) !important;
}

/* Tombol umum OJS */
.wj-main-content .cmp_button,
.wj-main-content .pkp_button,
.wj-main-content button,
.wj-main-content input[type="submit"],
.pkp_structure_main .cmp_button,
.pkp_structure_main .pkp_button,
.pkp_structure_main button,
.pkp_structure_main input[type="submit"] {
	border-radius: 999px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

/* Pagination */
.cmp_pagination,
.pagination {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	align-items: center !important;
	margin-top: 28px !important;
}

.cmp_pagination a,
.cmp_pagination span,
.pagination a,
.pagination span {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 36px !important;
	padding: 7px 12px !important;
	border-radius: 999px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	color: #0f172a !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	text-decoration: none !important;
}

.cmp_pagination a:hover,
.pagination a:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
	border-color: #1d4ed8 !important;
}

/* Notifikasi OJS */
.cmp_notification,
.pkp_notification {
	padding: 18px 20px !important;
	border-radius: 18px !important;
	border: 1px solid #e5e7eb !important;
	background: #ffffff !important;
	color: #334155 !important;
	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.06) !important;
}

/* Article, issue, announcement cards tidak boleh melebar */
.obj_article_summary,
.obj_issue_summary,
.obj_announcement_summary,
.wj-article-summary,
.wj-issue-summary,
.wj-announcement-summary {
	width: 100% !important;
	max-width: 100% !important;
}

/* Footer tetap bersih */
.wj-footer {
	position: relative !important;
	z-index: 2 !important;
}

/* Mobile final safety */
@media (max-width: 960px) {
	.wj-content-layout {
		display: block !important;
	}

	.wj-main-content,
	.wj-sidebar {
		width: 100% !important;
		max-width: 100% !important;
	}

	.wj-sidebar {
		margin-top: 28px !important;
	}
}

@media (max-width: 640px) {
	.wj-content-area {
		padding-top: 28px !important;
		padding-bottom: 42px !important;
	}

	.wj-main-content h1,
	.wj-main-content .page_title,
	.pkp_structure_main h1 {
		font-size: 28px !important;
		line-height: 1.18 !important;
	}

	.wj-main-content table,
	.pkp_structure_main table {
		display: block !important;
		overflow-x: auto !important;
		white-space: nowrap !important;
	}
}
.wj-back-to-top {
	position: fixed !important;
	right: 22px !important;
	bottom: 22px !important;
	z-index: 9999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 46px !important;
	height: 46px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 22px !important;
	font-weight: 900 !important;
	cursor: pointer !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.22) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: translateY(12px) !important;
	transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease, background 0.2s ease !important;
}

.wj-back-to-top.is-visible {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
}

.wj-back-to-top:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}
/* =========================================================
   Static Pages / Policy Pages
   ========================================================= */

body.pkp_page_pages .wj-content-area {
	background: #f4f7fb !important;
	padding-top: 48px !important;
	padding-bottom: 64px !important;
}

body.pkp_page_pages .wj-content-layout {
	display: block !important;
}

body.pkp_page_pages .wj-main-content {
	width: 100% !important;
	max-width: 100% !important;
}

body.pkp_page_pages .page,
body.pkp_page_pages .page_static,
body.pkp_page_pages .page_static_page {
	width: 100% !important;
	max-width: 1180px !important;
	margin: 0 auto !important;
	padding: 38px !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 30px !important;
	box-shadow: 0 18px 48px rgba(15, 23, 42, 0.07) !important;
}

body.pkp_page_pages .page h1,
body.pkp_page_pages .page_static h1,
body.pkp_page_pages .page_static_page h1 {
	margin: 0 0 28px !important;
	color: #0f172a !important;
	font-size: clamp(34px, 4vw, 48px) !important;
	line-height: 1.12 !important;
	font-weight: 900 !important;
	letter-spacing: -0.045em !important;
}

body.pkp_page_pages .page h2,
body.pkp_page_pages .page_static h2,
body.pkp_page_pages .page_static_page h2 {
	margin-top: 32px !important;
	margin-bottom: 14px !important;
	padding-bottom: 12px !important;
	border-bottom: 2px solid #e5e7eb !important;
	color: #0f172a !important;
	font-size: 30px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
	letter-spacing: -0.025em !important;
}

body.pkp_page_pages .page h3,
body.pkp_page_pages .page_static h3,
body.pkp_page_pages .page_static_page h3 {
	margin-top: 28px !important;
	margin-bottom: 12px !important;
	color: #0f172a !important;
	font-size: 23px !important;
	line-height: 1.25 !important;
	font-weight: 900 !important;
}

body.pkp_page_pages .page p,
body.pkp_page_pages .page li,
body.pkp_page_pages .page_static p,
body.pkp_page_pages .page_static li,
body.pkp_page_pages .page_static_page p,
body.pkp_page_pages .page_static_page li {
	color: #334155 !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

body.pkp_page_pages .page a,
body.pkp_page_pages .page_static a,
body.pkp_page_pages .page_static_page a {
	color: #1d4ed8 !important;
	font-weight: 800 !important;
	word-break: break-word !important;
}

@media (max-width: 768px) {
	body.pkp_page_pages .page,
	body.pkp_page_pages .page_static,
	body.pkp_page_pages .page_static_page {
		padding: 28px !important;
		border-radius: 24px !important;
	}

	body.pkp_page_pages .page h1,
	body.pkp_page_pages .page_static h1,
	body.pkp_page_pages .page_static_page h1 {
		font-size: 32px !important;
	}
}

@media (max-width: 520px) {
	body.pkp_page_pages .page,
	body.pkp_page_pages .page_static,
	body.pkp_page_pages .page_static_page {
		padding: 20px !important;
		border-radius: 20px !important;
	}

	body.pkp_page_pages .page h1,
	body.pkp_page_pages .page_static h1,
	body.pkp_page_pages .page_static_page h1 {
		font-size: 28px !important;
	}
}
.wj-back-to-top {
	position: fixed !important;
	right: 22px !important;
	bottom: 22px !important;
	z-index: 9999 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 46px !important;
	height: 46px !important;
	border: none !important;
	border-radius: 999px !important;
	background: #0f172a !important;
	color: #ffffff !important;
	font-size: 22px !important;
	font-weight: 900 !important;
	cursor: pointer !important;
	box-shadow: 0 18px 42px rgba(15, 23, 42, 0.22) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	transform: translateY(12px) !important;
	transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease, background 0.2s ease !important;
}

.wj-back-to-top.is-visible {
	opacity: 1 !important;
	visibility: visible !important;
	transform: translateY(0) !important;
}

.wj-back-to-top:hover {
	background: #1d4ed8 !important;
	color: #ffffff !important;
}