/* ==========================================================================
   YUI Publishing — "Adilitas Scholarly Editorial"
   Custom stylesheet untuk OJS 3.3.x (Default Theme)
   Target: https://ejournal.yuipublishing.id/

   Cara pasang:
   - Halaman portal (daftar semua jurnal):
     Administrasi > Pengaturan Situs > Tampilan > Style Sheet Situs
   - Tiap jurnal:
     Pengaturan > Website > Tampilan > Lanjutan > Style Sheet Jurnal
   Setelah upload, bersihkan cache: Administrasi > Bersihkan Cache Template
   & Cache Data, lalu hard refresh browser (Ctrl+Shift+R).
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Merriweather:ital,wght@0,400;0,700;1,400&display=swap');

/* --------------------------------------------------------------------------
   1. TOKEN DESAIN
   -------------------------------------------------------------------------- */
:root {
  --yui-navy: #0b2545;
  --yui-navy-dark: #041b42;
  --yui-navy-deep: #001026;
  --yui-navy-tint: #e7eeff;
  --yui-gold: #e5a93c;
  --yui-gold-hover: #d97706;
  --yui-gold-light: #fef3c7;
  --yui-gold-text: #92400e;
  --yui-link: #1d4ed8;
  --yui-text: #1e293b;
  --yui-muted: #64748b;
  --yui-canvas: #f8fafc;
  --yui-card: #ffffff;
  --yui-border: #e2e8f0;
  --yui-error: #ba1a1a;
  --yui-error-bg: #ffdad6;

  --yui-serif: 'Merriweather', Georgia, 'Times New Roman', serif;
  --yui-sans: 'Inter', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;

  --yui-radius: 0.25rem;
  --yui-radius-lg: 0.5rem;
  --yui-shadow-hover: 0 4px 12px -2px rgba(11, 37, 69, 0.06), 0 2px 6px -1px rgba(11, 37, 69, 0.04);
  --yui-shadow-overlay: 0 16px 32px -8px rgba(11, 37, 69, 0.12);

  --yui-max: 1280px;
  --yui-gutter: 1.5rem;
  --yui-margin: 2rem;
  --yui-sidebar: 320px;
}

@media (max-width: 767px) {
  :root {
    --yui-gutter: 1rem;
    --yui-margin: 1rem;
  }
}

/* --------------------------------------------------------------------------
   2. DASAR
   -------------------------------------------------------------------------- */
html,
body {
  background: var(--yui-canvas);
}

body,
.pkp_structure_page {
  font-family: var(--yui-sans);
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--yui-text);
  background: var(--yui-canvas);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4,
.page_title {
  font-family: var(--yui-serif);
  font-weight: 700;
  color: var(--yui-navy);
  letter-spacing: 0;
}

a {
  color: var(--yui-link);
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

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

:focus-visible {
  outline: 2px solid var(--yui-navy);
  outline-offset: 2px;
}

::selection {
  background: var(--yui-gold-light);
  color: var(--yui-navy-deep);
}

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

/* --------------------------------------------------------------------------
   3. HEADER / MASTHEAD
   -------------------------------------------------------------------------- */
.pkp_structure_head {
  background: var(--yui-navy);
  border-bottom: 3px solid var(--yui-gold);
}

.pkp_head_wrapper {
  max-width: var(--yui-max);
  margin: 0 auto;
  padding-left: var(--yui-margin);
  padding-right: var(--yui-margin);
}

.pkp_site_name_wrapper {
  padding-top: 0.25rem;
}

.pkp_site_name {
  padding-top: 1.75rem;
  padding-bottom: 1.5rem;
}

.pkp_site_name .is_text,
.pkp_site_name .is_text:hover,
.pkp_site_name .is_text:focus {
  font-family: var(--yui-serif);
  font-size: 1.75rem;
  font-weight: 700;
  line-height: 1.3;
  color: #ffffff;
  text-decoration: none;
}

/* Logo gambar (file logo-header.png, 832x192 px = resolusi 2x) */
.pkp_site_name .is_img {
  display: inline-block;
}

.pkp_site_name .is_img img {
  display: block;
  height: 80px;
  max-height: 80px;
  width: auto;
  max-width: 100%;
}

@media (max-width: 991px) {
  .pkp_site_name .is_img img {
    height: 60px;
    max-height: 60px;
  }
}

@media (max-width: 767px) {
  .pkp_site_name .is_text {
    font-size: 1.25rem;
  }

  .pkp_site_name .is_img img {
    height: auto;
    max-height: 48px;
    max-width: calc(100vw - 6rem);
  }
}

/* Tombol menu mobile */
.pkp_site_nav_toggle {
  color: #ffffff;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: var(--yui-radius);
}

.pkp_site_nav_toggle:hover,
.pkp_site_nav_toggle:focus {
  border-color: var(--yui-gold);
}

/* Baris navigasi utama */
.pkp_navigation_primary_row {
  background: transparent;
}

.pkp_navigation_primary > li > a,
.pkp_navigation_user > li > a,
.pkp_navigation_search_wrapper a {
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.88);
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: color 0.15s ease, border-color 0.15s ease;
}

.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus,
.pkp_navigation_user > li > a:hover,
.pkp_navigation_user > li > a:focus,
.pkp_navigation_search_wrapper a:hover,
.pkp_navigation_search_wrapper a:focus {
  color: #ffffff;
  border-color: var(--yui-gold);
}

/* Link Daftar/Login di pojok kanan atas */
.pkp_navigation_user_wrapper {
  font-size: 0.8125rem;
}

.pkp_navigation_user > li > a {
  font-size: 0.8125rem;
  color: rgba(255, 255, 255, 0.75);
}

.pkp_navigation_user .task_count {
  background: var(--yui-gold);
  color: var(--yui-navy);
}

/* Dropdown menu (desktop) */
.pkp_navigation_primary ul,
.pkp_navigation_user ul,
.pkp_navigation_primary .dropdown-menu,
.pkp_navigation_user .dropdown-menu {
  background: rgba(255, 255, 255, 0.97);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius-lg);
  box-shadow: var(--yui-shadow-overlay);
  padding: 0.375rem 0;
}

.pkp_navigation_primary ul a,
.pkp_navigation_user ul a,
.pkp_navigation_primary .dropdown-menu a,
.pkp_navigation_user .dropdown-menu a {
  font-size: 0.875rem;
  color: var(--yui-text);
  border-left: 2px solid transparent;
  text-decoration: none;
}

.pkp_navigation_primary ul a:hover,
.pkp_navigation_primary ul a:focus,
.pkp_navigation_user ul a:hover,
.pkp_navigation_user ul a:focus,
.pkp_navigation_primary .dropdown-menu a:hover,
.pkp_navigation_user .dropdown-menu a:hover {
  background: var(--yui-navy-tint);
  color: var(--yui-navy);
  border-left-color: var(--yui-gold);
}

/* Menu mobile (di bawah 992px) */
@media (max-width: 991px) {
  .pkp_site_nav_menu {
    background: var(--yui-navy-dark);
  }

  .pkp_navigation_primary > li > a,
  .pkp_navigation_user > li > a {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }

  .pkp_navigation_primary ul,
  .pkp_navigation_user ul,
  .pkp_navigation_primary .dropdown-menu,
  .pkp_navigation_user .dropdown-menu {
    background: transparent;
    border: 0;
    box-shadow: none;
  }

  .pkp_navigation_primary ul a,
  .pkp_navigation_user ul a,
  .pkp_navigation_user .dropdown-menu a {
    color: rgba(255, 255, 255, 0.8);
  }
}

/* --------------------------------------------------------------------------
   4. LAYOUT KONTEN + SIDEBAR (8 : 4)
   -------------------------------------------------------------------------- */
.pkp_structure_content {
  max-width: var(--yui-max);
  margin: 0 auto;
  padding: var(--yui-margin);
  background: transparent;
}

.pkp_structure_main {
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  padding: 2rem;
}

/* Hilangkan garis vertikal bawaan default theme */
.pkp_structure_main::before,
.pkp_structure_main::after {
  display: none;
}

@media (min-width: 992px) {
  .pkp_structure_content.has_sidebar {
    display: flex;
    align-items: flex-start;
    gap: var(--yui-gutter);
  }

  .pkp_structure_content.has_sidebar::before,
  .pkp_structure_content.has_sidebar::after {
    display: none;
  }

  .pkp_structure_content.has_sidebar .pkp_structure_main {
    float: none;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    margin: 0;
  }

  .pkp_structure_content.has_sidebar .pkp_structure_sidebar {
    float: none;
    flex: 0 0 var(--yui-sidebar);
    width: var(--yui-sidebar);
    margin: 0;
    padding: 0;
  }
}

@media (max-width: 991px) {
  .pkp_structure_sidebar {
    margin-top: var(--yui-gutter);
    padding: 0;
    width: auto;
  }
}

@media (max-width: 767px) {
  .pkp_structure_main {
    padding: 1.25rem 1rem;
  }
}

/* --------------------------------------------------------------------------
   5. SIDEBAR BLOCKS
   -------------------------------------------------------------------------- */
.pkp_structure_sidebar .pkp_block {
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  padding: 1.25rem;
  margin-bottom: 1.5rem;
  font-size: 0.875rem;
}

.pkp_structure_sidebar .pkp_block:last-child {
  margin-bottom: 0;
}

.pkp_block .title {
  display: block;
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--yui-navy);
  padding-bottom: 0.625rem;
  margin: 0 0 0.875rem;
  border-bottom: 1px solid var(--yui-border);
}

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

.pkp_block ul li {
  border-bottom: 1px solid var(--yui-border);
}

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

.pkp_block ul li a {
  position: relative;
  display: block;
  padding: 0.5rem 0 0.5rem 1rem;
  color: var(--yui-text);
  text-decoration: none;
  transition: color 0.15s ease;
}

.pkp_block ul li a::before {
  content: '';
  position: absolute;
  left: 0.125rem;
  top: 50%;
  width: 0.375rem;
  height: 0.375rem;
  margin-top: -0.1875rem;
  border-top: 1.5px solid var(--yui-muted);
  border-right: 1.5px solid var(--yui-muted);
  transform: rotate(45deg);
  transition: border-color 0.15s ease;
}

.pkp_block ul li a:hover,
.pkp_block ul li a:focus {
  color: var(--yui-navy);
}

.pkp_block ul li a:hover::before,
.pkp_block ul li a:focus::before {
  border-color: var(--yui-gold-hover);
}

/* Blok "Kirim Naskah" → tombol emas */
.block_make_submission .content {
  padding: 0;
}

.block_make_submission a.block_make_submission_link,
.block_make_submission_link {
  display: block;
  padding: 0.75rem 1rem;
  background: var(--yui-gold);
  color: var(--yui-navy);
  font-family: var(--yui-sans);
  font-size: 0.9375rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  border: 0;
  border-radius: var(--yui-radius);
  transition: background-color 0.15s ease;
}

.block_make_submission a.block_make_submission_link:hover,
.block_make_submission a.block_make_submission_link:focus {
  background: var(--yui-gold-hover);
  color: var(--yui-navy-deep);
}

/* Form pencarian di sidebar */
.block_search input[type="text"],
.pkp_search input[type="text"] {
  width: 100%;
}

/* --------------------------------------------------------------------------
   6. JUDUL HALAMAN & BREADCRUMB
   -------------------------------------------------------------------------- */
.page > h1,
.page_title,
.pkp_structure_main h1 {
  font-family: var(--yui-serif);
  font-size: 1.75rem;
  line-height: 2.25rem;
  color: var(--yui-navy);
  margin: 0 0 1.5rem;
}

.pkp_structure_main h2 {
  font-size: 1.25rem;
  line-height: 1.75rem;
}

.pkp_structure_main h3 {
  font-size: 1.0625rem;
  line-height: 1.5rem;
}

@media (max-width: 767px) {
  .page > h1,
  .page_title,
  .pkp_structure_main h1 {
    font-size: 1.375rem;
    line-height: 1.875rem;
  }
}

.cmp_breadcrumbs {
  font-size: 0.8125rem;
  color: var(--yui-muted);
  margin-bottom: 1rem;
}

.cmp_breadcrumbs a {
  color: var(--yui-muted);
  text-decoration: none;
}

.cmp_breadcrumbs a:hover {
  color: var(--yui-navy);
  text-decoration: underline;
}

.cmp_breadcrumbs .current {
  color: var(--yui-text);
  font-weight: 600;
}

/* --------------------------------------------------------------------------
   7. PORTAL — DAFTAR JURNAL (halaman utama situs)
   -------------------------------------------------------------------------- */
.page_index_site .about_site {
  font-family: var(--yui-serif);
  line-height: 1.75;
  margin-bottom: 2rem;
}

.page_index_site .journals > h2 {
  font-size: 1.25rem;
  padding-bottom: 0.75rem;
  margin-bottom: 1.5rem;
  border-bottom: 2px solid var(--yui-navy);
}

.page_index_site .journals > ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1.25rem;
}

.page_index_site .journals > ul > li {
  display: flex;
  gap: 1.5rem;
  padding: 1.5rem;
  margin: 0;
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-left: 3px solid var(--yui-navy);
  border-radius: var(--yui-radius);
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}

.page_index_site .journals > ul > li:hover {
  box-shadow: var(--yui-shadow-hover);
  border-left-color: var(--yui-gold);
}

.page_index_site .journals .thumb {
  flex: 0 0 150px;
  float: none;
  width: 150px;
  margin: 0;
}

.page_index_site .journals .thumb img {
  width: 100%;
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
}

.page_index_site .journals .body {
  flex: 1 1 auto;
  min-width: 0;
  float: none;
  width: auto;
  padding: 0;
}

.page_index_site .journals .body h3 {
  font-family: var(--yui-serif);
  font-size: 1.25rem;
  line-height: 1.75rem;
  margin: 0 0 0.75rem;
}

.page_index_site .journals .body h3 a {
  color: var(--yui-navy);
  text-decoration: none;
}

.page_index_site .journals .body h3 a:hover,
.page_index_site .journals .body h3 a:focus {
  color: var(--yui-link);
  text-decoration: underline;
}

/* Deskripsi panjang dipotong ±6 baris dengan efek pudar.
   Hapus blok ini jika ingin deskripsi tampil penuh. */
.page_index_site .journals .description {
  position: relative;
  max-height: 10.5em;
  overflow: hidden;
  font-size: 0.875rem;
  line-height: 1.75;
  color: #334155;
  -webkit-mask-image: linear-gradient(to bottom, #000 65%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 65%, transparent 100%);
}

.page_index_site .journals .description p {
  margin: 0 0 0.5rem;
}

.page_index_site .journals .description strong {
  color: var(--yui-navy);
}

.page_index_site .journals .links ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 1rem 0 0;
  padding: 0;
}

.page_index_site .journals .links li {
  display: block;
  margin: 0;
}

.page_index_site .journals .links a {
  display: inline-block;
  padding: 0.5rem 1rem;
  font-size: 0.8125rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: var(--yui-radius);
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.page_index_site .journals .links .view a {
  background: var(--yui-navy);
  color: #ffffff;
  border: 1px solid var(--yui-navy);
}

.page_index_site .journals .links .view a:hover,
.page_index_site .journals .links .view a:focus {
  background: var(--yui-navy-dark);
  box-shadow: 0 0 0 2px var(--yui-gold);
}

.page_index_site .journals .links .current a {
  background: var(--yui-card);
  color: var(--yui-navy);
  border: 1px solid var(--yui-border);
}

.page_index_site .journals .links .current a:hover,
.page_index_site .journals .links .current a:focus {
  background: var(--yui-navy);
  border-color: var(--yui-navy);
  color: #ffffff;
}

@media (max-width: 767px) {
  .page_index_site .journals > ul > li {
    flex-direction: column;
    gap: 1rem;
    padding: 1.25rem 1rem;
  }

  .page_index_site .journals .thumb {
    flex-basis: auto;
    width: 120px;
  }
}

/* --------------------------------------------------------------------------
   8. BERANDA JURNAL, TERBITAN & DAFTAR ISI
   -------------------------------------------------------------------------- */
.page_index_journal .homepage_image img {
  width: 100%;
  border-radius: var(--yui-radius);
}

.page_index_journal .homepage_about h2,
.page_index_journal .current_issue > h2,
.page_index_journal .cmp_announcements > h2 {
  font-size: 1.25rem;
  padding-bottom: 0.625rem;
  margin-bottom: 1.25rem;
  border-bottom: 2px solid var(--yui-navy);
}

.obj_issue_toc .heading {
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
  border-bottom: 1px solid var(--yui-border);
}

.obj_issue_toc .cover img {
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
}

.obj_issue_toc .published,
.obj_issue_toc .pub_id {
  font-size: 0.8125rem;
  color: var(--yui-muted);
}

.obj_issue_toc .published .label,
.obj_issue_toc .pub_id .type {
  font-weight: 600;
  color: var(--yui-text);
}

/* Judul section (Articles, dll.) */
.obj_issue_toc .sections .section > h2,
.obj_issue_toc .section > h2 {
  display: inline-block;
  font-family: var(--yui-sans);
  font-size: 0.6875rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--yui-navy);
  background: var(--yui-navy-tint);
  padding: 0.25rem 0.625rem;
  margin: 1.5rem 0 1rem;
  border: 0;
  border-radius: var(--yui-radius);
}

.obj_issue_toc .section::before,
.obj_issue_toc .section > h2::before,
.obj_issue_toc .section > h2::after {
  display: none;
}

/* Kartu artikel */
.cmp_article_list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.cmp_article_list > li {
  margin-bottom: 1rem;
}

.obj_article_summary {
  position: relative;
  padding: 1.25rem 1.25rem 1.25rem 1.5rem;
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-left: 2px solid var(--yui-navy);
  border-radius: var(--yui-radius);
  transition: box-shadow 0.2s ease;
}

.obj_article_summary:hover {
  box-shadow: var(--yui-shadow-hover);
}

.obj_article_summary > .title,
.obj_article_summary .title {
  font-family: var(--yui-serif);
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.6;
  margin: 0 0 0.5rem;
}

.obj_article_summary .title a {
  color: var(--yui-navy);
  text-decoration: none;
}

.obj_article_summary .title a:hover,
.obj_article_summary .title a:focus {
  color: var(--yui-link);
  text-decoration: underline;
}

.obj_article_summary .subtitle {
  display: block;
  font-size: 0.9375rem;
  font-weight: 400;
  color: var(--yui-muted);
  margin-top: 0.25rem;
}

.obj_article_summary .meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 1rem;
  font-size: 0.8125rem;
  color: var(--yui-muted);
}

.obj_article_summary .meta .authors {
  flex: 1 1 100%;
  color: #475569;
}

.obj_article_summary .meta .pages,
.obj_article_summary .meta .published {
  padding: 0;
}

/* Tombol galley (PDF, HTML, dll.) */
.galleys_links {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0.875rem 0 0;
  padding: 0;
}

.galleys_links li {
  display: block;
  margin: 0;
}

.obj_galley_link,
.cmp_button,
a.cmp_button {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.375rem 0.875rem;
  font-family: var(--yui-sans);
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.4;
  color: var(--yui-navy);
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.obj_galley_link:hover,
.obj_galley_link:focus,
.cmp_button:hover,
.cmp_button:focus {
  background: var(--yui-navy);
  border-color: var(--yui-navy);
  color: #ffffff;
}

.obj_galley_link.pdf::before {
  color: #b91c1c;
}

.obj_galley_link.pdf:hover::before,
.obj_galley_link.pdf:focus::before {
  color: #ffffff;
}

.obj_galley_link.restricted {
  border-color: var(--yui-gold);
}

/* Arsip terbitan */
.issues_archive {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1.25rem;
}

.issues_archive > li {
  margin: 0;
  padding: 1rem;
  background: var(--yui-card);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  transition: box-shadow 0.2s ease;
}

.issues_archive > li:hover {
  box-shadow: var(--yui-shadow-hover);
}

.obj_issue_summary .cover {
  float: none;
  display: block;
  width: 100%;
  margin: 0 0 0.75rem;
}

.obj_issue_summary .title {
  font-family: var(--yui-serif);
  font-size: 1rem;
  line-height: 1.5;
}

.obj_issue_summary .title a {
  color: var(--yui-navy);
  text-decoration: none;
}

.obj_issue_summary .series {
  font-size: 0.8125rem;
  color: var(--yui-muted);
}

/* --------------------------------------------------------------------------
   9. HALAMAN DETAIL ARTIKEL
   -------------------------------------------------------------------------- */
.obj_article_details .page_title {
  font-size: 1.875rem;
  line-height: 1.35;
  margin-bottom: 0.75rem;
}

.obj_article_details .subtitle {
  font-family: var(--yui-serif);
  font-size: 1.125rem;
  font-style: italic;
  color: var(--yui-muted);
  margin: 0 0 1.5rem;
}

.obj_article_details .row {
  border-top: 1px solid var(--yui-border);
  margin-top: 1.5rem;
}

.obj_article_details .main_entry,
.obj_article_details .entry_details {
  border-color: var(--yui-border);
}

.obj_article_details .item {
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  border-color: var(--yui-border);
}

.obj_article_details .item .label,
.obj_article_details .entry_details .item .label {
  font-family: var(--yui-sans);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--yui-navy);
  margin: 0 0 0.5rem;
}

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

.obj_article_details .authors .name {
  font-weight: 600;
  color: var(--yui-text);
}

.obj_article_details .authors .affiliation,
.obj_article_details .authors .orcid {
  font-size: 0.8125rem;
  color: var(--yui-muted);
}

.obj_article_details .item.abstract,
.obj_article_details .item.abstract p {
  font-family: var(--yui-serif);
  font-size: 1rem;
  line-height: 1.75rem;
  text-align: justify;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.obj_article_details .item.keywords .value {
  font-size: 0.875rem;
}

.obj_article_details .item.doi .value a,
.obj_article_details .item.doi a {
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  color: var(--yui-link);
  word-break: break-all;
}

.obj_article_details .item.references,
.obj_article_details .item.references p {
  font-size: 0.8125rem;
  line-height: 1.6;
  color: #334155;
}

.obj_article_details .item.citation .csl-entry {
  font-family: var(--yui-serif);
  font-size: 0.875rem;
  padding: 0.875rem 1rem;
  background: var(--yui-canvas);
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
}

.obj_article_details .entry_details .cover_image img {
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
}

/* --------------------------------------------------------------------------
   10. FORM, INPUT & TOMBOL
   -------------------------------------------------------------------------- */
.cmp_form input[type="text"],
.cmp_form input[type="email"],
.cmp_form input[type="password"],
.cmp_form input[type="url"],
.cmp_form input[type="tel"],
.cmp_form select,
.cmp_form textarea,
.page_search input[type="text"],
.page_search select,
.pkp_search input[type="text"],
.block_search input[type="text"] {
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  color: var(--yui-text);
  background: #ffffff;
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  padding: 0.5rem 0.75rem;
  box-shadow: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.cmp_form input:focus,
.cmp_form select:focus,
.cmp_form textarea:focus,
.page_search input:focus,
.page_search select:focus,
.pkp_search input:focus,
.block_search input:focus {
  outline: none;
  border-color: var(--yui-navy);
  box-shadow: 0 0 0 1px var(--yui-navy);
}

.cmp_form .label,
.cmp_form label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--yui-text);
}

.cmp_form .buttons button,
.cmp_form button.submit,
.page_search .submit button,
.block_search button,
.pkp_button,
button.pkp_button {
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  font-weight: 600;
  color: #ffffff;
  background: var(--yui-navy);
  border: 1px solid var(--yui-navy);
  border-radius: var(--yui-radius);
  padding: 0.5rem 1.25rem;
  box-shadow: none;
  cursor: pointer;
  transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.cmp_form .buttons button:hover,
.cmp_form .buttons button:focus,
.cmp_form button.submit:hover,
.page_search .submit button:hover,
.block_search button:hover,
.pkp_button:hover,
.pkp_button:focus {
  background: var(--yui-navy-dark);
  box-shadow: 0 0 0 2px var(--yui-gold);
}

.cmp_form .buttons a,
.cmp_form .buttons .cancel {
  color: var(--yui-muted);
}

.cmp_form .required,
.cmp_form .pkp_form_error {
  color: var(--yui-error);
}

/* Notifikasi */
.cmp_notification {
  padding: 1rem 1.25rem;
  font-size: 0.875rem;
  background: var(--yui-navy-tint);
  border: 1px solid #c7d6f5;
  border-left: 3px solid var(--yui-navy);
  border-radius: var(--yui-radius);
  color: var(--yui-text);
}

.cmp_notification.warning,
.cmp_notification.error {
  background: var(--yui-error-bg);
  border-color: #f5b5ae;
  border-left-color: var(--yui-error);
}

/* Paginasi */
.cmp_pagination {
  font-size: 0.875rem;
  margin-top: 1.5rem;
}

.cmp_pagination a,
.cmp_pagination .current {
  display: inline-block;
  min-width: 2rem;
  padding: 0.25rem 0.5rem;
  text-align: center;
  border: 1px solid var(--yui-border);
  border-radius: var(--yui-radius);
  text-decoration: none;
}

.cmp_pagination .current {
  background: var(--yui-navy);
  border-color: var(--yui-navy);
  color: #ffffff;
}

/* Pengumuman */
.cmp_announcements .obj_announcement_summary {
  padding: 1.25rem 0;
  border-bottom: 1px solid var(--yui-border);
}

.obj_announcement_summary h2,
.obj_announcement_summary h3 {
  font-size: 1.0625rem;
}

.obj_announcement_summary .date {
  font-size: 0.8125rem;
  color: var(--yui-muted);
}

/* Tabel di halaman statis (Editorial Team, dll.) */
.pkp_structure_main table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.875rem;
}

.pkp_structure_main table th,
.pkp_structure_main table td {
  padding: 0.625rem 0.75rem;
  border: 1px solid var(--yui-border);
  text-align: left;
  vertical-align: top;
}

.pkp_structure_main table th {
  background: var(--yui-canvas);
  color: var(--yui-navy);
  font-weight: 600;
}

/* --------------------------------------------------------------------------
   11. FOOTER
   -------------------------------------------------------------------------- */
.pkp_structure_footer_wrapper {
  background: var(--yui-navy-dark);
  border-top: 3px solid var(--yui-gold);
  color: rgba(255, 255, 255, 0.8);
  margin-top: var(--yui-margin);
}

.pkp_structure_footer {
  max-width: var(--yui-max);
  margin: 0 auto;
  padding: 2rem var(--yui-margin);
}

.pkp_footer_content {
  font-size: 0.875rem;
  line-height: 1.7;
  padding: 0 0 1.5rem;
  color: rgba(255, 255, 255, 0.8);
}

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

.pkp_footer_content a:hover,
.pkp_footer_content a:focus {
  color: #ffffff;
}

/* Sembunyikan logo/tulisan "Platform & Workflow by OJS/PKP" */
.pkp_structure_footer .pkp_brand_footer,
.pkp_brand_footer {
  display: none !important;
}

.pkp_footer_content {
  padding-bottom: 0;
}

/* --------------------------------------------------------------------------
   12. KOMPONEN TAMBAHAN (dipakai manual di Custom Block / halaman statis)
   Contoh HTML:
   <span class="yui-badge yui-badge--index">SINTA 4</span>
   <span class="yui-badge yui-badge--status">Peer Reviewed</span>
   <a class="yui-btn yui-btn--gold" href="...">Submit Manuscript</a>
   -------------------------------------------------------------------------- */
.yui-badge {
  display: inline-block;
  padding: 0.1875rem 0.5rem;
  margin: 0 0.25rem 0.375rem 0;
  font-family: var(--yui-sans);
  font-size: 0.6875rem;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  border-radius: var(--yui-radius);
  vertical-align: middle;
}

.yui-badge--index {
  background: var(--yui-gold-light);
  color: var(--yui-gold-text);
  border: 1px solid #fcd98a;
}

.yui-badge--status {
  background: transparent;
  color: var(--yui-navy);
  border: 1px solid var(--yui-navy);
}

.yui-btn {
  display: inline-block;
  padding: 0.625rem 1.25rem;
  font-family: var(--yui-sans);
  font-size: 0.875rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  border-radius: var(--yui-radius);
  transition: background-color 0.15s ease, box-shadow 0.15s ease;
}

.yui-btn--navy {
  background: var(--yui-navy);
  color: #ffffff;
}

.yui-btn--navy:hover,
.yui-btn--navy:focus {
  color: #ffffff;
  box-shadow: 0 0 0 2px var(--yui-gold);
}

.yui-btn--gold {
  background: var(--yui-gold);
  color: var(--yui-navy);
}

.yui-btn--gold:hover,
.yui-btn--gold:focus {
  background: var(--yui-gold-hover);
  color: var(--yui-navy-deep);
}

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

@media print {
  .pkp_structure_head,
  .pkp_structure_sidebar,
  .pkp_structure_footer_wrapper {
    display: none;
  }

  .pkp_structure_main {
    border: 0;
    padding: 0;
  }
}
