/* GJPM Inspired — CSS tambahan untuk OJS 3.5 Default Theme.
   Pasang melalui Website > Appearance > Advanced > Journal Style Sheet.
   Konten, sampul, dan logo tetap dikelola lewat OJS. */
:root {
  --gjpm-brand: #17605a;
  --gjpm-brand-dark: #104b46;
  --gjpm-ink: #172c34;
  --gjpm-muted: #61727a;
  --gjpm-paper: #fff;
  --gjpm-soft: #f3f7f6;
  --gjpm-line: #dce8e5;
}
body {
  background: var(--gjpm-soft);
  color: var(--gjpm-ink);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.65;
}
a { color: var(--gjpm-brand); }
a:hover, a:focus { color: var(--gjpm-brand-dark); }
.pkp_structure_page {
  background: var(--gjpm-paper);
  box-shadow: 0 18px 50px rgba(14, 54, 49, .08);
}
.pkp_structure_head {
  background: #fff;
  border-bottom: 1px solid var(--gjpm-line);
}
.pkp_site_name { padding-top: 20px; padding-bottom: 20px; }
.pkp_site_name .is_text,
.pkp_site_name a {
  color: var(--gjpm-ink);
  font-weight: 800;
  letter-spacing: -.025em;
}
.pkp_navigation_primary_wrapper {
  background: var(--gjpm-brand);
  border: 0;
}
.pkp_navigation_primary > li > a,
.pkp_navigation_primary > li > a:link,
.pkp_navigation_primary > li > a:visited {
  color: #fff;
  font-weight: 650;
}
.pkp_navigation_primary > li > a:hover,
.pkp_navigation_primary > li > a:focus {
  color: #fff;
  background: rgba(255, 255, 255, .14);
}
.pkp_navigation_primary .dropdown-menu {
  background: #fff;
  border: 1px solid var(--gjpm-line);
  box-shadow: 0 14px 30px rgba(14, 54, 49, .14);
}
.pkp_navigation_primary .dropdown-menu a { color: var(--gjpm-ink); }
.pkp_navigation_user > li > a { color: var(--gjpm-brand); }
.pkp_structure_content { padding-top: 30px; padding-bottom: 45px; }
.pkp_page_index .homepage_image img,
.pkp_page_index .current_issue .cover img,
.pkp_page_issue .obj_issue_toc .cover img {
  border-radius: 8px;
  box-shadow: 0 12px 30px rgba(18, 45, 40, .13);
}
.pkp_page_index .homepage_about,
.pkp_page_index .current_issue {
  padding: 28px 0;
  border-bottom: 1px solid var(--gjpm-line);
}
.pkp_page_index h2,
.pkp_page_index h3,
.pkp_page_issue h2 {
  color: var(--gjpm-ink);
  letter-spacing: -.02em;
}
.pkp_page_index .current_issue .current_issue_title { color: var(--gjpm-brand); }
.obj_article_summary {
  border-bottom-color: var(--gjpm-line);
  padding-top: 16px;
  padding-bottom: 16px;
}
.obj_article_summary .title a {
  color: var(--gjpm-ink);
  font-weight: 700;
}
.obj_article_summary .title a:hover { color: var(--gjpm-brand); }
.obj_article_summary .authors,
.obj_issue_toc .published,
.obj_article_details .authors { color: var(--gjpm-muted); }
.cmp_button,
.cmp_form .buttons button,
.page_register .buttons button,
.page_login .buttons button,
.obj_article_details .galley_link {
  background: var(--gjpm-brand);
  border-color: var(--gjpm-brand);
  color: #fff;
  border-radius: 6px;
}
.pkp_structure_sidebar .pkp_block {
  background: var(--gjpm-soft);
  border: 1px solid var(--gjpm-line);
  border-radius: 10px;
  padding: 20px;
  margin-bottom: 18px;
}
.pkp_structure_sidebar .title {
  color: var(--gjpm-ink);
  font-weight: 700;
}
.pkp_structure_footer {
  background: #153a38;
  color: #e2eeeb;
}
.pkp_structure_footer a {
  color: #e2eeeb;
  text-decoration: underline;
}
.pkp_brand_footer { opacity: .82; }
/* Opsional: untuk blok statistik yang ditambahkan secara manual di beranda. */
.gjpm-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin: 25px 0 35px;
}
.gjpm-stat {
  background: var(--gjpm-soft);
  border: 1px solid var(--gjpm-line);
  border-radius: 12px;
  padding: 22px 15px;
  text-align: center;
}
.gjpm-stat strong {
  display: block;
  color: var(--gjpm-brand);
  font-size: 2rem;
  line-height: 1.2;
}
.gjpm-stat span {
  display: block;
  color: var(--gjpm-muted);
  font-size: .85rem;
  margin-top: 7px;
}
@media (max-width: 767px) {
  .pkp_structure_page { box-shadow: none; }
  .pkp_structure_content { padding-top: 18px; }
  .gjpm-stats { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .gjpm-stat { padding: 16px 8px; }
  .gjpm-stat strong { font-size: 1.55rem; }
}
