/*
 * AT-TARADHI: JURNAL STUDI EKONOMI
 * Custom Stylesheet — OJS 3.x  |  Emerald/JIMA Style
 * ─────────────────────────────────────────────────────
 * CARA PASANG (3 langkah, ~10 menit):
 *   1. Login OJS → Pengaturan → Website → Tampilan
 *   2. "Unggah Lembar Gaya Tambahan" → upload file ini
 *   3. Simpan → selesai
 * ─────────────────────────────────────────────────────
 * FONT: Merriweather (judul) + Inter (body)
 *   — Merriweather: dipakai ~2.800 jurnal terindeks Scopus
 *   — Inter: dipakai Elsevier, Springer, MDPI (open access)
 *   — Keduanya Google Fonts, gratis, semua browser
 * ─────────────────────────────────────────────────────
 */

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

/* ── VARIABEL WARNA & FONT ──────────────────────────── */
:root {
  /* Emerald palette */
  --e900: #072e26; --e800: #0d3d33; --e700: #14574a; --e600: #0f7862;
  --e50:  #f2faf8; --e100: #e8f4f1;
  /* Gold */
  --gold: #c49a3c; --gold-lt: #e8c46a; --gold-dk: #8b6b1e;
  /* Background & borders */
  --cream: #faf8f3; --rule: #e4e0d5; --rule2: #d4cfc4;
  /* Text — lebih gelap & sedikit biru untuk kenyamanan layar */
  --ink:  #1e293b;   /* body text utama — Slate 800, terbukti paling nyaman */
  --ink2: #334155;   /* heading sekunder — Slate 700 */
  --ink3: #64748b;   /* meta info (afiliasi, tanggal) — Slate 500 */
  --ink4: #94a3b8;   /* placeholder, divider label — Slate 400 */
  /* Status */
  --open: #15803d;
  /* Font stacks */
  --serif: 'Merriweather', Georgia, 'Times New Roman', serif;
  --sans:  'Inter', system-ui, -apple-system, sans-serif;
}

/* ── BASE ───────────────────────────────────────────── */
body {
  font-family: var(--sans) !important;
  background: var(--cream) !important;
  color: var(--ink) !important;
  line-height: 1.75 !important;
  font-size: 14px !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}
a { color: var(--e700); }
a:hover { color: var(--e600); text-decoration: none; }

/* ── PUBLISHER TOP BAR ──────────────────────────────── */
/* Inject via Custom Block "at-publisher-bar" di atas semua konten */
.at-pub-bar {
  background: var(--e900);
  border-bottom: 1px solid rgba(196,154,60,.22);
  padding: 0;
  font-family: var(--sans);
}
.at-pub-bar-inner {
  display: flex; align-items: center;
  padding: 0 24px; gap: 0;
  max-width: 1080px; margin: 0 auto;
}
.at-pub-logo {
  display: flex; align-items: center; gap: 8px;
  padding: 9px 18px 9px 0;
  border-right: 1px solid rgba(255,255,255,.07);
  margin-right: 4px;
}
.at-pub-logo-mark {
  width: 26px; height: 26px; background: var(--gold);
  border-radius: 3px; display: flex; align-items: center;
  justify-content: center; font-size: 10px; font-weight: 700;
  color: var(--e900); letter-spacing: -.5px;
}
.at-pub-logo-name { font-size: 12px; font-weight: 500; color: rgba(255,255,255,.85); }
.at-pub-nav a {
  color: rgba(255,255,255,.5); font-size: 11.5px;
  padding: 10px 11px; text-decoration: none; display: inline-block;
}
.at-pub-nav a:hover { color: var(--gold-lt); }
.at-pub-right { margin-left: auto; display: flex; align-items: center; }
.at-pub-right a { color: rgba(255,255,255,.45); font-size: 11px; padding: 10px 9px; text-decoration: none; }
.at-pub-search-wrap { display: flex; border-left: 1px solid rgba(255,255,255,.07); margin-left: 6px; }
.at-pub-search {
  background: rgba(255,255,255,.07); border: none;
  color: rgba(255,255,255,.7); font-size: 11px; padding: 9px 12px;
  outline: none; width: 140px; font-family: var(--sans);
}
.at-pub-search::placeholder { color: rgba(255,255,255,.25); }
.at-pub-search-btn {
  background: var(--gold); color: var(--e900); border: none;
  padding: 9px 13px; font-size: 11px; font-weight: 600;
  cursor: pointer; font-family: var(--sans);
}

/* ── MASTHEAD / HEADER ──────────────────────────────── */
header.pkp_structure_head {
  background: #14574a !important;
  border-bottom: none !important;
  position: relative !important;
  overflow: visible !important;
}
.pkp_head_wrapper {
  background: #14574a !important;
  position: relative !important;
  overflow: hidden !important;
  max-width: 100% !important;
  min-height: 64px !important;
}
/* Pattern overlay — HANYA pada .pkp_head_wrapper */
.pkp_head_wrapper::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: .05 !important;
  background-image:
    repeating-linear-gradient(45deg, #c49a3c 0, #c49a3c 1px, transparent 0, transparent 50%),
    repeating-linear-gradient(-45deg, #c49a3c 0, #c49a3c 1px, transparent 0, transparent 50%) !important;
  background-size: 22px 22px !important;
  z-index: 0 !important;
}
.pkp_head_wrapper::after { content: none !important; }
/* Site name wrapper */
.pkp_site_name_wrapper {
  max-width: 1060px !important;
  margin: 0 auto !important;
  padding: 18px 20px 14px !important;
  position: relative !important;
  z-index: 10 !important;
  box-sizing: border-box !important;
  display: block !important;
}
/* Journal name — target semua kemungkinan selector OJS */
.pkp_site_name,
.pkp_site_name a,
.pkp_site_name a.is_text,
div.pkp_site_name a,
.pkp_head_wrapper .pkp_site_name a {
  font-family: 'Merriweather', Georgia, 'Times New Roman', serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: .01em !important;
  text-decoration: none !important;
  position: relative !important;
  z-index: 10 !important;
  display: block !important;
  line-height: 1.3 !important;
  visibility: visible !important;
  opacity: 1 !important;
}
.pkp_tagline,
.pkp_head_wrapper .pkp_tagline {
  color: rgba(255,255,255,.55) !important;
  font-size: 11px !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  position: relative; z-index: 1;
}
/* "AT" logo mark box — inject via header image upload di OJS */
.pkp_head_wrapper img,
header .pkp_site_name img {
  position: relative; z-index: 1;
}
/* Submit button in header */
.pkp_head_wrapper .cmp_button,
.pkp_head_wrapper a.cmp_button {
  background: var(--gold) !important;
  color: var(--e900) !important;
  border: none !important;
  border-radius: 3px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  padding: 9px 18px !important;
  position: relative; z-index: 1;
  transition: background .15s !important;
}
.pkp_head_wrapper a.cmp_button:hover { background: var(--gold-lt) !important; }

/* ── NAVIGATION BAR ─────────────────────────────────── */
/* OJS structure: nav.pkp_site_nav_menu
     > div.pkp_navigation_primary_row   ← ini yang butuh background penuh
       > div.pkp_navigation_primary_wrapper
         > ul#navigationPrimary */
.pkp_navigation_primary_row,
.pkp_site_nav_menu {
  background: var(--e800) !important;
  border-bottom: 2px solid var(--gold) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.2) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
}
.pkp_navigation_primary,
ul#navigationPrimary,
nav.pkp_navigation_primary {
  background: transparent !important;
  border-bottom: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.pkp_navigation_primary .pkp_nav_item > a,
ul#navigationPrimary > li > a,
ul#navigationPrimary > li > span {
  color: rgba(255,255,255,.65) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  padding: 12px 14px !important;
  border-bottom: 3px solid transparent !important;
  margin-bottom: -2px !important;
  letter-spacing: .02em !important;
  transition: color .15s, border-color .15s !important;
  white-space: nowrap !important;
}
.pkp_navigation_primary .pkp_nav_item > a:hover,
ul#navigationPrimary > li > a:hover {
  color: #fff !important;
  background: rgba(255,255,255,.06) !important;
}
ul#navigationPrimary > li.current > a,
ul#navigationPrimary > li.active > a {
  color: var(--gold-lt) !important;
  border-bottom-color: var(--gold) !important;
  font-weight: 500 !important;
}
/* Dropdown */
ul#navigationPrimary .pkp_subnav,
.pkp_navigation_primary .pkp_subnav {
  background: var(--e800) !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-top: 2px solid var(--gold) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.3) !important;
  border-radius: 0 !important;
}
ul#navigationPrimary .pkp_subnav li a {
  color: rgba(255,255,255,.75) !important;
  font-size: 12px !important;
  padding: 8px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.06) !important;
  transition: background .15s !important;
}
ul#navigationPrimary .pkp_subnav li a:hover {
  background: rgba(255,255,255,.1) !important;
  color: #fff !important;
}
/* User nav (login/register) */
#navigationUser { background: var(--e900) !important; border-bottom: 1px solid rgba(196,154,60,.15) !important; }
#navigationUser li a { color: rgba(255,255,255,.5) !important; font-size: 11px !important; }
#navigationUser li a:hover { color: var(--gold-lt) !important; }

/* ── ISSUES IN PROGRESS STRIP ───────────────────────── */
/* Inject via Custom Block "at-progress-strip" tepat di bawah navbar */
.at-progress-strip {
  background: var(--e900);
  border-bottom: 1px solid rgba(196,154,60,.2);
  padding: 7px 24px;
  display: flex; align-items: center; gap: 14px;
  max-width: 100%;
}
.at-ps-label {
  font-size: 10px; font-weight: 700; text-transform: uppercase;
  letter-spacing: .08em; color: rgba(255,255,255,.4); flex-shrink: 0;
}
.at-ps-issue {
  font-size: 11px; color: var(--gold-lt); text-decoration: none;
  border: 1px solid rgba(196,154,60,.25); border-radius: 2px;
  padding: 2px 10px; transition: background .15s;
}
.at-ps-issue:hover { background: rgba(196,154,60,.12); color: var(--gold-lt); }

/* ── HOMEPAGE JOURNAL HERO ──────────────────────────── */
/* Inject via Custom Block "at-journal-hero" di atas current issue */
.at-journal-hero {
  display: grid;
  grid-template-columns: 148px 1fr;
  gap: 22px;
  background: #fff;
  border: 1px solid var(--rule);
  border-radius: 3px;
  padding: 20px;
  margin-bottom: 20px;
}
.at-cover-wrap {
  width: 148px; flex-shrink: 0;
}
.at-cover-img-box {
  width: 148px; height: 196px;
  border-radius: 3px;
  box-shadow: 4px 5px 18px rgba(0,0,0,.28), 0 0 0 1px rgba(0,0,0,.06);
  overflow: hidden;
  position: relative;
}
.at-cover-img-box img {
  width: 200%;
  height: 100%;
  object-fit: cover;
  object-position: 55% center;
  display: block;
  transform: translateX(-27%);
}
.at-cover-ribbon {
  position: absolute; bottom: 0; left: 0; right: 0;
  background: linear-gradient(90deg, var(--e900), var(--e800));
  border-top: 2px solid var(--gold);
  padding: 5px 8px;
  display: flex; justify-content: space-between; align-items: center;
}
.at-cover-vol { font-size: 9px; font-weight: 700; color: var(--gold-lt); letter-spacing: .05em; text-transform: uppercase; }
.at-cover-year { font-size: 9px; color: rgba(255,255,255,.5); }
.at-hero-info { display: flex; flex-direction: column; gap: 5px; }
.at-hero-eyebrow { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.at-hero-label { font-size: 10px; font-weight: 700; color: var(--e700); text-transform: uppercase; letter-spacing: .08em; }
.at-hero-sep { width: 3px; height: 3px; background: var(--ink4); border-radius: 50%; }
.at-hero-vol { font-size: 10px; color: var(--ink4); }
.at-hero-title { font-family: var(--serif); font-size: 20px; font-weight: 700; color: var(--ink); line-height: 1.3; }
.at-hero-date { font-size: 11.5px; color: var(--ink4); }
.at-hero-tags { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 2px; }
.at-htag { font-size: 10px; border-radius: 2px; padding: 2px 9px; border: 1px solid; }
.at-htag-oa  { border-color: var(--open); color: var(--open); background: #f0fdf4; }
.at-htag-gold { border-color: rgba(196,154,60,.4); color: var(--gold-dk); background: rgba(196,154,60,.06); }
.at-htag-plain { border-color: var(--rule2); color: var(--ink4); background: #fff; }
.at-hero-btns { display: flex; gap: 8px; margin-top: 4px; }
.at-hbtn-p {
  background: var(--e700); color: #fff; font-size: 12px; font-weight: 500;
  padding: 8px 16px; border-radius: 3px; text-decoration: none; border: none;
  transition: background .15s; cursor: pointer; font-family: var(--sans);
}
.at-hbtn-p:hover { background: var(--e600); color: #fff; }
.at-hbtn-s {
  border: 1px solid var(--rule2); color: var(--ink2); font-size: 12px;
  padding: 7px 14px; border-radius: 3px; text-decoration: none;
  background: #fff; transition: background .15s;
}
.at-hbtn-s:hover { background: var(--e50); border-color: var(--e700); color: var(--e700); }

/* ── ARTICLE TABS ───────────────────────────────────── */
/* Inject via Custom Block "at-article-tabs" */
.at-tabs-row {
  display: flex;
  border-bottom: 2px solid var(--rule);
  margin-bottom: 14px;
  background: #fff;
  padding: 0 0 0 0;
}
.at-tab-btn {
  font-size: 12.5px; color: var(--ink4); padding: 10px 16px;
  cursor: pointer; border: none; background: none;
  border-bottom: 2px solid transparent; margin-bottom: -2px;
  font-family: var(--sans); transition: color .15s, border-color .15s;
}
.at-tab-btn:hover { color: var(--ink); }
.at-tab-btn.at-on { color: var(--e700); border-bottom-color: var(--gold); font-weight: 500; }

/* ── ARTICLE LIST ITEMS ─────────────────────────────── */
.obj_article_summary {
  background: #fff !important;
  border: 1px solid var(--rule) !important;
  border-left: 2px solid var(--rule2) !important;
  border-radius: 0 !important;
  padding: 16px 18px 16px 15px !important;
  margin-bottom: 0 !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: 1px solid var(--rule) !important;
  transition: border-left-color .2s !important;
}
.obj_article_summary:first-child { border-top: 1px solid var(--rule) !important; }
.obj_article_summary:hover { border-left-color: var(--gold) !important; }

/* Judul artikel — Merriweather, lebih besar & berat */
.obj_article_summary .title,
.obj_article_summary h3.title,
.obj_article_summary h3 a,
.obj_article_summary h4.title,
.obj_article_summary h4.title a {
  font-family: var(--serif) !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
  letter-spacing: -.01em !important;
}
.obj_article_summary .title a:hover,
.obj_article_summary h4.title a:hover { color: var(--e600) !important; }

/* Penulis & meta — Inter, warna ink3 lebih bersih */
.obj_article_summary .authors {
  font-family: var(--sans) !important;
  font-size: 12px !important;
  color: var(--ink3) !important;
  margin-bottom: 4px !important;
  line-height: 1.5 !important;
}
.obj_article_summary .pages,
.obj_article_summary .doi {
  font-size: 10.5px !important;
  color: var(--ink4) !important;
  font-family: monospace !important;
}

/* Tombol PDF */
.obj_article_summary .galleys_links a {
  background: var(--e700) !important; color: #fff !important;
  font-size: 11px !important; font-weight: 600 !important;
  padding: 4px 12px !important; border-radius: 2px !important;
  text-decoration: none !important; border: none !important;
  font-family: var(--sans) !important;
  transition: background .15s !important;
}
.obj_article_summary .galleys_links a:hover { background: var(--e600) !important; }

.badge-open-access, .pkp_helpers_openaccess_label {
  font-size: 9px !important; font-weight: 700 !important;
  color: var(--open) !important;
  border: 1px solid var(--open) !important;
  border-radius: 2px !important; padding: 1px 6px !important;
  background: #f0fdf4 !important;
  font-family: var(--sans) !important;
}

/* ── SECTION HEADINGS — Merriweather ────────────────── */
#homepageAbout h2,
#homepageIssue h2,
.pkp_structure_main h1,
h1.pkp_page_title,
.page_index_journal h2,
.current_issue h2 {
  font-family: var(--serif) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--ink) !important;
  line-height: 1.35 !important;
  border-bottom: 2px solid var(--e700) !important;
  padding-bottom: 9px !important;
  margin-bottom: 16px !important;
  letter-spacing: -.02em !important;
}
#homepageAbout {
  background: #fff !important;
  border: 1px solid var(--rule) !important;
  border-radius: 3px !important;
  padding: 20px 22px !important;
  margin-bottom: 18px !important;
  font-family: var(--sans) !important;
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: var(--ink) !important;
}
#homepageAbout p { margin-bottom: 12px !important; line-height: 1.75 !important; }
#homepageAbout table td {
  padding: 5px 8px 5px 0 !important;
  border: none !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}
#homepageAbout table td:first-child {
  font-size: 10px !important; text-transform: uppercase !important;
  letter-spacing: .06em !important; color: var(--ink4) !important;
  white-space: nowrap !important; font-weight: 600 !important;
}

/* ── SIDEBAR BLOCKS — hapus border-left untuk hilangkan garis vertikal */
.pkp_block {
  background: #fff !important;
  border: 1px solid var(--rule) !important;
  border-left: none !important;
  border-radius: 0 3px 3px 0 !important;
  margin-bottom: 14px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}
/* pkp_screen_reader h2 — tetap tersembunyi, tidak tampil */
.pkp_block h2.title.pkp_screen_reader {
  position: absolute !important;
  width: 1px !important; height: 1px !important;
  overflow: hidden !important; clip: rect(0,0,0,0) !important;
  background: none !important; padding: 0 !important; margin: 0 !important;
}
/* h2.title di dalam .content — HARUS negatif margin agar keluar dari padding .content dan jadi bar penuh */
.pkp_block .content h2.title:not(.pkp_screen_reader),
.pkp_block .block_content h2.title:not(.pkp_screen_reader) {
  background: var(--e700) !important;
  color: #fff !important;
  font-size: 10.5px !important; font-weight: 600 !important;
  letter-spacing: .07em !important; text-transform: uppercase !important;
  font-family: var(--sans) !important;
  padding: 8px 14px !important;
  /* Keluar dari padding .content (12px atas/bawah, 14px kiri/kanan) */
  margin: -12px -14px 12px -14px !important;
  border-radius: 0 !important;
  border-bottom: 2px solid var(--gold) !important;
  line-height: 1.4 !important;
}
/* h2.title langsung di .pkp_block (tanpa .content wrapper) */
.pkp_block > h2.title:not(.pkp_screen_reader),
.pkp_block .title:not(.pkp_screen_reader):not(h2):not(h3) {
  background: var(--e700) !important;
  color: #fff !important;
  font-size: 10.5px !important; font-weight: 600 !important;
  letter-spacing: .07em !important; text-transform: uppercase !important;
  padding: 8px 14px !important;
  margin: 0 !important; border-radius: 0 !important;
  border-bottom: 2px solid var(--gold) !important;
}
.pkp_block .content, .pkp_block .block_content {
  padding: 12px 14px !important;
  font-family: var(--sans) !important;
  font-size: 12.5px !important;
  color: var(--ink2) !important;
  line-height: 1.7 !important;
}
.pkp_block a.cmp_button {
  background: var(--e700) !important; color: #fff !important;
  border: none !important; border-radius: 3px !important;
  padding: 9px 16px !important; font-size: 12px !important;
  font-weight: 600 !important; width: 100% !important;
  text-align: center !important; display: block !important;
  font-family: var(--sans) !important;
}
.pkp_block a.cmp_button:hover { background: var(--e600) !important; }

/* ── SIDEBAR CUSTOM BLOCKS ──────────────────────────── */
/* Indexing */
.at-idx-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 7px;
  padding: 10px 14px;
}
.at-idx-item {
  border: 1px solid var(--rule); border-radius: 2px;
  padding: 7px 6px; display: flex; align-items: center;
  justify-content: center; min-height: 34px;
  text-decoration: none; transition: border-color .15s, background .15s;
  cursor: pointer;
}
.at-idx-item:hover { border-color: var(--e700); background: var(--e50); }
.at-idx-label {
  font-size: 10px; font-weight: 700; letter-spacing: .04em;
  text-align: center; color: var(--ink3);
  display: flex; flex-direction: column; align-items: center;
}
.at-idx-target-lbl {
  font-size: 8px; font-weight: 400; color: var(--ink4);
  text-transform: uppercase; letter-spacing: .05em;
}
.at-idx-coming { opacity: .45; cursor: default; }
.at-idx-active-badge {
  font-size: 9px; font-weight: 600; padding: 2px 7px;
  border-radius: 2px; background: var(--e50);
  color: var(--e700); border: 1px solid rgba(20,87,74,.2);
}

/* Ethics */
.at-ethics-list { display: flex; flex-direction: column; }
.at-eth-item {
  padding: 7px 14px; border-bottom: 1px solid var(--rule);
  font-size: 11.5px; display: flex; align-items: center; gap: 7px;
  transition: background .15s; cursor: pointer;
}
.at-eth-item:last-child { border-bottom: none; }
.at-eth-item:hover { background: var(--e50); }
.at-eth-dot { width: 5px; height: 5px; background: var(--gold); border-radius: 50%; flex-shrink: 0; }
.at-eth-item a { color: var(--ink2); text-decoration: none; }
.at-eth-item:hover a { color: var(--e700); }
.at-eth-footer {
  padding: 8px 14px; font-size: 9.5px; color: var(--ink4);
  background: var(--cream); border-top: 1px solid var(--rule);
}
.at-eth-footer a { color: var(--e700); text-decoration: none; }

/* CFP Box */
.at-cfp-box {
  background: linear-gradient(140deg, var(--e800), var(--e700));
  position: relative; overflow: hidden; padding: 16px 14px;
}
.at-cfp-geo {
  position: absolute; inset: 0; opacity: .06;
  background-image:
    repeating-linear-gradient(45deg, var(--gold) 0, var(--gold) 1px, transparent 0, transparent 50%),
    repeating-linear-gradient(-45deg, var(--gold) 0, var(--gold) 1px, transparent 0, transparent 50%);
  background-size: 18px 18px; pointer-events: none;
}
.at-cfp-dl { font-size: 9.5px; font-weight: 700; color: var(--gold-lt); text-transform: uppercase; letter-spacing: .08em; margin-bottom: 5px; position: relative; z-index: 1; }
.at-cfp-heading { font-family: var(--serif); font-size: 15px; font-weight: 700; color: #fff; line-height: 1.35; margin-bottom: 8px; position: relative; z-index: 1; }
.at-cfp-desc { font-size: 11.5px; color: rgba(255,255,255,.75); line-height: 1.6; margin-bottom: 12px; position: relative; z-index: 1; }
.at-cfp-cta {
  background: var(--gold); color: var(--e900); font-size: 12px;
  font-weight: 700; padding: 8px 16px; border-radius: 2px;
  text-decoration: none; display: inline-block;
  position: relative; z-index: 1; transition: background .15s;
}
.at-cfp-cta:hover { background: var(--gold-lt); color: var(--e900); }

/* Editor block */
.at-editor-card {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 12px 14px; border-bottom: 1px solid var(--rule);
}
.at-ed-av {
  width: 38px; height: 38px; border-radius: 50%;
  background: var(--e700); color: #fff;
  font-size: 12px; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; font-family: var(--sans);
}
.at-ed-name { font-size: 12.5px; font-weight: 500; color: var(--ink); }
.at-ed-role { font-size: 10.5px; color: var(--ink4); }
.at-ed-link { font-size: 10px; color: var(--e700); text-decoration: none; }
.at-side-link {
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 14px; border-bottom: 1px solid var(--rule);
  font-size: 11.5px; color: var(--e700); text-decoration: none;
  transition: background .15s; cursor: pointer;
}
.at-side-link:last-child { border-bottom: none; }
.at-side-link:hover { background: var(--e50); }

/* Alerts */
.at-alert-row {
  display: flex; justify-content: space-between; align-items: center;
  padding: 9px 14px; border-bottom: 1px solid var(--rule);
  font-size: 11.5px; color: var(--ink2); cursor: pointer;
  transition: background .15s;
}
.at-alert-row:last-child { border-bottom: none; }
.at-alert-row:hover { background: var(--e50); }
.at-alert-plus {
  width: 18px; height: 18px; border-radius: 50%;
  background: var(--e700); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 300; flex-shrink: 0;
}

/* Statcounter */
.at-stat-inner { padding: 12px 14px; background: var(--e50); }
.at-stat-num { font-family: var(--serif); font-size: 28px; font-weight: 700; color: var(--e700); line-height: 1; }
.at-stat-lbl { font-size: 10px; color: var(--ink4); text-transform: uppercase; letter-spacing: .06em; margin-top: 2px; }
.at-stat-row { display: flex; margin-top: 10px; border-top: 1px solid var(--rule); padding-top: 10px; }
.at-stat-mini { flex: 1; text-align: center; border-right: 1px solid var(--rule); }
.at-stat-mini:last-child { border-right: none; }
.at-stat-mini-val { font-size: 15px; font-weight: 600; color: var(--e700); }
.at-stat-mini-lbl { font-size: 9px; text-transform: uppercase; letter-spacing: .05em; color: var(--ink4); }
.at-stat-powered { font-size: 9px; color: var(--ink4); margin-top: 8px; }
.at-stat-powered a { color: var(--e700); text-decoration: none; }

/* ── ARTICLE DETAIL PAGE ────────────────────────────── */
.obj_article_details .title, .page_article h1.title {
  font-family: var(--serif) !important;
  font-size: 24px !important; font-weight: 700 !important;
  color: var(--ink) !important; line-height: 1.4 !important;
  border-bottom: 2px solid var(--e700) !important;
  padding-bottom: 10px !important; margin-bottom: 14px !important;
}
.obj_article_details .abstract, .page_article .abstract {
  background: var(--e50) !important;
  border-left: 3px solid var(--e700) !important;
  border-radius: 0 3px 3px 0 !important;
  padding: 16px 18px !important;
  font-size: 14px !important; line-height: 1.7 !important;
  margin: 18px 0 !important;
}
.obj_article_details .abstract h4 {
  font-family: var(--serif) !important;
  font-size: 12px !important; font-weight: 700 !important;
  color: var(--e700) !important;
  text-transform: uppercase !important; letter-spacing: .07em !important;
  margin-bottom: 8px !important;
}
.obj_article_details .galleys_links a, .page_article .galleys_links a {
  background: var(--e700) !important; color: #fff !important;
  padding: 8px 18px !important; border-radius: 3px !important;
  font-size: 13px !important; font-weight: 600 !important;
  text-decoration: none !important; display: inline-block !important;
  margin-right: 8px !important; margin-bottom: 8px !important;
  border: none !important; transition: background .15s !important;
}
.obj_article_details .galleys_links a:hover { background: var(--e600) !important; }
.obj_article_details .keywords .keyword {
  display: inline-block !important;
  background: var(--e50) !important; border: 1px solid var(--rule) !important;
  border-radius: 2px !important; padding: 2px 10px !important;
  font-size: 12px !important; color: var(--ink2) !important;
  margin: 0 4px 4px 0 !important;
}

/* ── ISSN BAR ───────────────────────────────────────── */
/* Inject via Custom Block "at-issn-bar" */
.at-issn-bar {
  background: #fff; border-top: 1px solid var(--rule);
  border-bottom: 1px solid var(--rule); padding: 8px 24px;
  display: flex; align-items: center; gap: 18px;
}
.at-issn-item { font-size: 10.5px; color: var(--ink4); }
.at-issn-item span { font-weight: 500; color: var(--ink2); font-family: monospace; }
.at-issn-right { margin-left: auto; font-size: 10px; color: var(--ink4); }

/* ── FOOTER ─────────────────────────────────────────── */
footer.pkp_structure_footer,
.pkp_structure_footer {
  background: var(--e900) !important;
  color: rgba(255,255,255,.5) !important;
  border-top: 3px solid var(--gold) !important;
  padding: 28px 0 0 !important;
}
footer.pkp_structure_footer a,
.pkp_structure_footer a {
  color: rgba(255,255,255,.5) !important;
  font-size: 11px !important;
  transition: color .15s !important;
}
footer.pkp_structure_footer a:hover,
.pkp_structure_footer a:hover { color: var(--gold-lt) !important; text-decoration: none !important; }
footer.pkp_structure_footer p,
.pkp_structure_footer p {
  font-size: 11px !important; color: rgba(255,255,255,.4) !important;
}

/* ── PAGINATION ─────────────────────────────────────── */
.pkp_pagination .page_links a {
  border: 1px solid var(--rule) !important; border-radius: 2px !important;
  padding: 5px 11px !important; font-size: 12.5px !important;
  color: var(--e700) !important; text-decoration: none !important;
  margin: 0 2px !important;
}
.pkp_pagination .page_links a:hover {
  background: var(--e700) !important; color: #fff !important;
  border-color: var(--e700) !important;
}
.pkp_pagination .page_links span.current {
  background: var(--e700) !important; color: #fff !important;
  border: 1px solid var(--e700) !important; border-radius: 2px !important;
  padding: 5px 11px !important;
}

/* ── FORM ELEMENTS ──────────────────────────────────── */
.pkp_form input[type="text"],
.pkp_form input[type="email"],
.pkp_form input[type="password"],
.pkp_form textarea, .pkp_form select {
  border: 1px solid var(--rule) !important;
  border-radius: 3px !important; padding: 8px 12px !important;
  font-family: var(--sans) !important;
  transition: border-color .15s !important; outline: none !important;
}
.pkp_form input:focus, .pkp_form textarea:focus {
  border-color: var(--e700) !important;
  box-shadow: 0 0 0 3px rgba(20,87,74,.1) !important;
}
.pkp_form .pkp_button, button[type="submit"] {
  background: var(--e700) !important; color: #fff !important;
  border: none !important; border-radius: 3px !important;
  padding: 9px 18px !important; font-family: var(--sans) !important;
  font-size: 13px !important; font-weight: 600 !important;
  cursor: pointer !important;
}
.pkp_form .pkp_button:hover, button[type="submit"]:hover { background: var(--e600) !important; }

/* ── OVERRIDE BIRU DEFAULT OJS → EMERALD ───────────── */
.btn-primary, .pkp_button_primary { background: var(--e700) !important; border-color: var(--e700) !important; }
.btn-primary:hover { background: var(--e600) !important; border-color: var(--e600) !important; }

/* ── RESPONSIVE ─────────────────────────────────────── */
@media (max-width: 768px) {
  .at-journal-hero { grid-template-columns: 1fr !important; }
  .at-cover-wrap { width: 100% !important; }
  .at-cover-img-box { width: 100% !important; height: 220px !important; }
  .at-cover-img-box img { width: 100% !important; transform: none !important; object-position: center !important; }
  .pkp_site_name a { font-size: 18px !important; }
}


/* ================================================================
   CRITICAL FIXES — Dari audit kompatibilitas source OJS 3.3.0.22
   Tambahkan bagian ini di paling bawah CSS sebelum upload ke OJS
   ================================================================ */

/* FIX 1: Footer — source HTML pakai div bukan tag footer */
div.pkp_structure_footer_wrapper {
  background: #072e26 !important;
  border-top: 3px solid #c49a3c !important;
  color: rgba(255,255,255,.5) !important;
}
div.pkp_structure_footer_wrapper a {
  color: rgba(255,255,255,.45) !important;
  text-decoration: none !important;
}
div.pkp_structure_footer_wrapper a:hover { color: #e8c46a !important; }
div.pkp_structure_footer_wrapper strong { color: rgba(255,255,255,.8) !important; }
div.pkp_structure_footer_wrapper hr { border-color: rgba(255,255,255,.1) !important; }
div.pkp_structure_footer { max-width:1060px; margin:0 auto; padding:18px 20px; }
div.pkp_footer_content { font-size:11px; line-height:1.7; }
.pkp_brand_footer { opacity:.2; margin-top:12px; }

/* FIX 2: Sidebar layout — override OJS float-based layout sepenuhnya */
.pkp_structure_content.has_sidebar {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 0 !important;
  max-width: 1060px !important;
  margin: 0 auto !important;
  padding: 24px 20px 36px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  clear: both !important;
  overflow: visible !important;
}
/* Main content — hapus semua OJS float/width */
div.pkp_structure_main {
  order: 1 !important;
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  padding: 0 26px 0 0 !important;
  box-sizing: border-box !important;
  /* border-right dihapus — menyebabkan garis vertikal mengganggu */
}
/* Sidebar — hard-cap 270px, tidak boleh grow/shrink */
div.pkp_structure_sidebar.left {
  order: 2 !important;
  flex: 0 0 270px !important;  /* jangan grow, jangan shrink, persis 270px */
  width: 270px !important;
  max-width: 270px !important;
  min-width: 270px !important;
  float: none !important;
  padding: 0 0 0 26px !important;
  box-sizing: border-box !important;
}

/* Mobile — sidebar ke bawah */
@media (max-width: 900px) {
  .pkp_structure_content.has_sidebar {
    flex-direction: column !important;
    padding: 16px !important;
  }
  div.pkp_structure_main {
    padding: 0 0 24px 0 !important;
    width: 100% !important;
  }
  div.pkp_structure_sidebar.left {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
  }
}

/* FIX 3: Sembunyikan elemen lama */
div.homepage_image { display: none !important; }
/* .additional_content — JANGAN di-hide, dipakai untuk metrics strip */
.block_make_submission { display: none !important; }

/* FIX 4: Selector OJS yang belum ada di CSS utama */
.current_issue_title {
  font-size: 13px !important; color: #6b6b66 !important;
  margin: 6px 0 14px !important; font-style: italic !important;
}
.article_stats {
  font-size: 10.5px !important; color: var(--ink3) !important;
  margin-top: 4px !important; display: flex !important; gap: 14px !important;
}
a.read_more {
  display: inline-block !important; margin-top: 14px !important;
  color: #14574a !important; font-size: 12px !important; font-weight: 500 !important;
  padding: 6px 14px !important; border: 1px solid rgba(20,87,74,.3) !important;
  border-radius: 3px !important; text-decoration: none !important;
}
a.read_more:hover { background: #f2faf8 !important; }
.obj_article_summary h4.title a {
  font-size: 14px !important; font-weight: 500 !important;
}

/* FIX 5 (OPSIONAL): Jika tidak upload logo PNG baru,
   uncomment baris di bawah untuk tampilkan teks sebagai judul */
/*
.pkp_site_name img { display: none !important; }
h1.pkp_screen_reader {
  position: static !important; width: auto !important; height: auto !important;
  clip: unset !important; overflow: visible !important;
  font-family: 'Merriweather', serif !important;
  font-size: 22px !important; font-weight: 700 !important;
  color: #ffffff !important; letter-spacing: .01em !important;
  margin: 0 !important;
}
*/

/* FIX 6: Navigation primary wrapper — pastikan nav full-width dengan padding */
.pkp_navigation_primary_wrapper {
  max-width: 1060px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: stretch !important;
}
.pkp_navigation_user_wrapper {
  background: var(--e900) !important;
  border-bottom: 1px solid rgba(196,154,60,.15) !important;
}
#navigationUserWrapper {
  background: var(--e900) !important;
}
#navigationUser li a {
  color: rgba(255,255,255,.5) !important;
  font-size: 11px !important;
}
#navigationUser li a:hover { color: var(--gold-lt) !important; }
.task_count {
  background: var(--gold) !important;
  color: var(--e900) !important;
  border-radius: 20px !important;
  padding: 1px 6px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  margin-left: 4px !important;
}

/* FIX 7: About section & current issue headings */
.homepage_about h2,
.current_issue > h2,
section.homepage_about h2,
section.current_issue h2 {
  font-family: var(--serif) !important;
  font-size: 16px !important; font-weight: 700 !important;
  color: var(--ink) !important;
  border-bottom: 2px solid var(--e700) !important;
  padding-bottom: 9px !important; margin-bottom: 16px !important;
  letter-spacing: -.02em !important; line-height: 1.3 !important;
}

/* FIX 8: max-width HANYA untuk inner wrapper, bukan pkp_structure_page
   agar header & footer tetap bisa span full-width */
.pkp_structure_page {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Nav wrapper & footer inner — tetap 1060px centered */
.pkp_navigation_primary_wrapper {
  max-width: 1060px !important;
  margin: 0 auto !important;
}
div.pkp_structure_footer {
  max-width: 1060px !important;
  margin: 0 auto !important;
  padding: 22px 20px !important;
}

/* FIX 9: Section headings h3 dalam current issue */
.obj_issue_toc h3 {
  font-family: var(--sans) !important;
  font-size: 10.5px !important; font-weight: 600 !important;
  text-transform: uppercase !important; letter-spacing: .07em !important;
  color: var(--ink3) !important;
  padding: 10px 0 7px !important;
  border-bottom: 1px solid var(--rule) !important;
  margin-bottom: 0 !important;
}


/* ── FINAL FIXES — dari screenshot 20:19 ─────────────── */

/* Fix 1: Tagline ISSN di bawah nama jurnal */
.pkp_site_name_wrapper::after {
  content: 'P-ISSN: 1979-3804  ·  E-ISSN: 2548-9941  ·  FEBI UIN Antasari Banjarmasin' !important;
  display: block !important;
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11px !important;
  color: rgba(255,255,255,.52) !important;
  letter-spacing: .04em !important;
  margin-top: 5px !important;
  position: relative !important;
  z-index: 10 !important;
}

/* Fix 2: Nav links HARUS visible */
ul#navigationPrimary {
  display: flex !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  align-items: stretch !important;
}
ul#navigationPrimary > li {
  display: flex !important;
  align-items: center !important;
}
ul#navigationPrimary > li > a {
  color: rgba(255,255,255,.75) !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  padding: 12px 14px !important;
  display: block !important;
  text-decoration: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  white-space: nowrap !important;
  border-bottom: 3px solid transparent !important;
}
ul#navigationPrimary > li > a:hover {
  color: #fff !important;
  border-bottom-color: #c49a3c !important;
}
ul#navigationPrimary > li.current > a {
  color: #e8c46a !important;
  border-bottom-color: #c49a3c !important;
}
/* Nav row hardcoded — perkuat dengan hex */
.pkp_navigation_primary_row {
  background: #0d3d33 !important;
  border-bottom: 2px solid #c49a3c !important;
}

/* Fix 3: Hapus border-left sidebar → hilangkan garis vertikal */
div.pkp_structure_sidebar .pkp_block {
  border-left: none !important;
  border-radius: 0 3px 3px 0 !important;
}

/* Fix 4: Perkuat nav wrapper centering */
.pkp_navigation_primary_wrapper {
  max-width: 1060px !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: stretch !important;
  padding: 0 20px !important;
}


/* ── PINDAHKAN additional_content KE ATAS HALAMAN ──── */
/* OJS default: additional_content muncul setelah artikel.
   Dengan flex column + order -1, dipindahkan ke paling atas */
.page_index_journal {
  display: flex !important;
  flex-direction: column !important;
}
.page_index_journal .additional_content {
  order: -1 !important;
  margin-bottom: 0 !important;
}
.page_index_journal section.homepage_about { order: 1 !important; }
.page_index_journal section.current_issue  { order: 2 !important; }


/* ── REORDER: Additional Content ke ATAS konten utama ── */
/* OJS urutan DOM: About → Current Issue → additional_content
   Kita ubah urutan visual dengan flexbox order */
.page_index_journal {
  display: flex !important;
  flex-direction: column !important;
}
div.homepage_image {
  order: -4 !important;
}
.additional_content {
  order: -3 !important;  /* pindah ke paling atas */
  margin: 0 0 16px 0 !important;
}
section.homepage_about {
  order: -2 !important;
}
section.current_issue {
  order: -1 !important;
}


/* ── METRICS STRIP DALAM HEADER ─────────────────────── */
/* Ketika JS memindahkan .additional_content ke .pkp_head_wrapper */
.pkp_head_wrapper .additional_content {
  display: block !important;
  background: #fff !important;
  border-top: none !important;
  border-bottom: 2px solid #c49a3c !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  order: unset !important;
}
.pkp_head_wrapper .additional_content table {
  max-width: 1060px !important;
  margin: 0 auto !important;
  width: 100% !important;
}
/* Pastikan header tidak clip metrics strip */
.pkp_head_wrapper {
  overflow: visible !important;
}
