/* =========================================================
   OJS 3.4 + Academic Free — Modern Layout + Sticky Sidebar
   Brand: #004b23 | Hover/Darker: #00341a
   ========================================================= */

/* ---------- Vars ---------- */
:root{
  --brand:#004b23;
  --brand-dark:#00341a;
  --ink:#111827;
  --muted:#6b7280;
  --surface:#ffffff;
  --surface-2:#f6f7f9;
  --border:#e7e5e4;

  /* tinggi gabungan topbar + header (sesuaikan kalau perlu) */
  --sticky-top: 88px;
  --gutter: 30px;
  --sidebar-w: 340px;
  --content-max: 1320px;
}

/* ---------- Global base ---------- */
html,body{height:100%;}
body{
  color:var(--ink);
  background:var(--surface-2);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
a{color:var(--brand);} a:hover{color:var(--brand-dark); text-decoration:underline;}

/* ---------- Top user bar & header ---------- */
.user_navigation{background:var(--brand) !important; box-shadow:0 1px 3px rgba(0,0,0,.06);}
#navigationUser > li > a,
.user_navigation a{color:#fff !important;}
#navigationUser .dropdown-menu > li > a{color:var(--brand) !important;}
#navigationUser .dropdown-menu > li > a:hover{background:#f1f5f9;}

.site-name .navbar-brand{
  color:var(--brand)!important; font-weight:700; letter-spacing:.2px; font-size:12px;
  text-decoration:none; text-shadow:0 -1px 1px rgba(0,0,0,.08);
}
h1.site-name a.navbar-brand:hover{color:var(--brand-dark); text-decoration:underline;}

.navbar-default .nav > li > a{color:var(--brand); font-weight:600;}
.navbar-default .nav > li > a:hover{color:var(--brand-dark); text-decoration:underline;}
.navbar-form.navbar-left .form-control{height:32px; border:1px solid var(--border); border-radius:999px;}
.navbar-form.navbar-left .btn{
  height:32px; border-radius:999px; color:#fff; background:var(--brand); border-color:var(--brand);
}
.navbar-form.navbar-left .btn:hover{background:var(--brand-dark); border-color:var(--brand-dark);}

/* ---------- Hero / Journal Index ---------- */
.row.journal_index{
  background:linear-gradient(135deg,#00592a 0%, var(--brand) 45%, #003e1d 100%)!important;
  padding:28px 0 36px!important;
}
.row.journal_index .site_logo{background:transparent!important; border:none!important; box-shadow:none!important; padding:0!important;}
.row.journal_index .site_logo img{display:block; width:50%!important; height:auto; border-radius:0!important;}

/* ---------- Cards umum ---------- */
.pkp_structure_sidebar .pkp_block,
.page_index_journal .col-md-4,
.page_index_journal .journal-description,
.page_index_journal .additional_content{
  background:var(--surface); border:1px solid var(--border); border-radius:12px;
  box-shadow:0 1px 2px rgba(0,0,0,.06); padding:16px;
}
.pkp_structure_sidebar .pkp_block .title,
.panel-default > .panel-heading{
  background:var(--brand); color:#fff; border-bottom:1px solid rgba(255,255,255,.25);
  margin:-16px -16px 12px; padding:10px 16px; border-top-left-radius:12px; border-top-right-radius:12px;
}

/* ---------- About journal inverted ---------- */
.about_journal{background:var(--brand); color:#fff;}
.about_journal h1,.about_journal h2,.about_journal h3{color:#f2f3f7;}
.about_journal a{color:#fff; text-decoration:underline;}

/* ---------- Forms & tables ---------- */
.cmp_form .section,.cmp_form .fields{background:#fff; border:1px solid var(--border); border-radius:12px; padding:16px;}
input[type=text],input[type=email],input[type=url],input[type=password],textarea,select{
  border:1px solid var(--border)!important; border-radius:10px!important;
}
input:focus,textarea:focus,select:focus{outline:2px solid var(--brand); border-color:var(--brand)!important; box-shadow:none!important;}
table th{background:#f3f4f6; color:#1f2937;}
table td{vertical-align:top;}

/* ---------- Buttons ---------- */
.btn,.block_make_submission_link,.pkp_button,.cmp_button{
  background:var(--brand)!important; border-color:var(--brand)!important; color:#fff!important; border-radius:10px!important;
  background-image:linear-gradient(135deg,#00592a,var(--brand));
}
.btn:hover,.pkp_button:hover,.cmp_button:hover{
  background:var(--brand-dark)!important; border-color:var(--brand-dark)!important;
  background-image:linear-gradient(135deg,#003e1d,var(--brand-dark));
}

/* ---------- Footer ---------- */
.footer{background:#0f172a; color:#e5e7eb; padding:18px 0;}
.footer a{color:#c7d2fe;}

/* =========================================================
   LAYOUT CORE: Container lebar + Flex main–sidebar + Sticky sidebar
   ========================================================= */

/* 1) Lebarkan area konten (bukan header) */
@media (min-width:1200px){
  .pkp_structure_content.container{
    width: var(--content-max) !important;
    max-width: 94vw !important;
  }
}

/* 2) Flex container agar sidebar stabil di kanan */
@media (min-width:992px){
  .pkp_structure_content.container{
    display:flex; flex-wrap:nowrap; align-items:flex-start;
    gap: var(--gutter); /* gantikan margin manual */
  }

  /* Main fleksibel, otomatis di kiri */
  .pkp_structure_main{
    flex: 1 1 auto;
    min-width: 0; /* penting agar konten bisa shrink & text wrap */
  }

  /* Sidebar tetap di kanan dengan lebar tetap */
  .pkp_structure_sidebar{
    flex: 0 0 var(--sidebar-w);
    max-width: var(--sidebar-w);
  }

  /* Override grid Bootstrap agar tidak ganggu */
  .pkp_page_index .pkp_structure_main.col-md-8,
  .pkp_page_index .pkp_structure_sidebar.col-md-4{float:none!important; width:auto!important;}
}

/* 3) Sticky sidebar (desktop) */
@media (min-width:992px){
  #sidebar.pkp_structure_sidebar{
    position: sticky;
    top: var(--sticky-top); /* clear dari user bar + header */
    height: calc(100vh - var(--sticky-top) - 24px);
    overflow:auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* 4) Mobile fallback: stack rapi */
@media (max-width:991px){
  .pkp_structure_content.container{display:block;}
  .pkp_structure_main, .pkp_structure_sidebar{
    width:100%!important; max-width:100%!important; margin:0!important;
  }
  #sidebar.pkp_structure_sidebar{
    position: static; height:auto; overflow:visible;
  }
}

/* =========================================================
   CURRENT ISSUE: full di kolom main + kartu rapi
   ========================================================= */
.pkp_page_index .current_issue{clear:both;}
.pkp_page_index .current_issue.col-md-12{float:none!important; width:100%!important;}
.pkp_page_index .current_issue > .row{margin-left:0!important; margin-right:0!important;}
.pkp_page_index .current_issue > .row > [class*="col-"]{padding-left:0!important; padding-right:0!important;}

/* Grid list (tetap 1 kolom untuk keterbacaan) */
.pkp_page_index .current_issue .media-list{
  display:grid; grid-template-columns:1fr; gap:16px; margin:0; padding:0;
}

/* Kartu artikel */
.pkp_page_index .current_issue .article-summary.media{
  display:block!important; width:100%!important; box-sizing:border-box!important;
  float:none!important; clear:both!important;
  background:#fff; border:1px solid var(--border); border-radius:12px;
  box-shadow:0 1px 2px rgba(0,0,0,.06); padding:18px;
}

/* Thumbnail opsional */
.pkp_page_index .current_issue .article-summary.media .cover{float:left; margin-right:16px; margin-bottom:8px;}
.pkp_page_index .current_issue .article-summary.media .cover .media-object{max-width:120px; height:auto; border-radius:8px;}

/* Judul & meta */
.pkp_page_index .current_issue .article-summary .media-heading a{
  font-size:17px; font-weight:600; line-height:1.45; color:var(--brand); text-decoration:none;
}
.pkp_page_index .current_issue .article-summary .media-heading a:hover{color:var(--brand-dark); text-decoration:underline;}
.pkp_page_index .current_issue .article-summary .meta,
.pkp_page_index .current_issue .article-summary .authors{font-size:13px; color:var(--muted); margin-top:6px;}
.pkp_page_index .current_issue .article-summary .pages{
  display:inline-block; font-size:12px; color:var(--ink);
  background:#f3f4f6; border:1px solid var(--border);
  border-radius:999px; padding:2px 8px; margin-top:8px;
}

/* Galley buttons */
.pkp_page_index .current_issue .article-summary .btn-group .galley-link,
.pkp_page_index .current_issue .article-summary a.galley-link,
a.galley-link, .obj_galley_link a{
  display:inline-flex; align-items:center; gap:8px;
  background:var(--brand); border:1px solid var(--brand);
  color:#fff !important; padding:8px 12px; border-radius:999px; font-weight:600;
  text-decoration:none !important;
  transition:transform .06s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
}
.pkp_page_index .current_issue .article-summary a.galley-link:hover,
a.galley-link:hover, .obj_galley_link a:hover{
  background:var(--brand-dark); border-color:var(--brand-dark);
  transform:translateY(-1px); box-shadow:0 2px 6px rgba(0,0,0,.15);
}
a.galley-link:focus, .obj_galley_link a:focus{outline:2px solid #e0e7ff; outline-offset:2px;}

/* =========================================================
   Misc polish
   ========================================================= */
.side-menu_hover_effect:before{background:var(--brand);}
.pkp_structure_sidebar .block_custom h3{color:#fff;}
.header_section .title{color:var(--brand);}

/* =============================
   RAPIHIN JOURNAL DESCRIPTION BOX
   ============================= */

/* Atur container logo + deskripsi jadi flex */
.page_index_journal {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* jarak antar elemen */
  align-items: flex-start;
}

/* Box gambar (col-md-4) */
.page_index_journal > .col-md-4 {
  flex: 0 0 220px; /* lebar fix untuk cover jurnal */
  max-width: 220px;
}

/* Box deskripsi (col-md-8) */
.page_index_journal > .journal-description {
  flex: 1 1 auto;
  max-width: calc(100% - 240px); /* sisanya untuk teks */
}

/* Responsive: di layar kecil stack ke bawah */
@media (max-width: 767px) {
  .page_index_journal {
    display: block;
  }
  .page_index_journal > .col-md-4,
  .page_index_journal > .journal-description {
    max-width: 100% !important;
    flex: none !important;
  }
  .page_index_journal > .col-md-4 {
    margin-bottom: 15px;
  }
}

/* Rapihin card style */
.page_index_journal > .col-md-4,
.page_index_journal > .journal-description {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  box-shadow: 0 1px 2px rgba(0,0,0,.06);
  padding: 16px;
}
/* ============================
   Minimalis Modern Topbar
   ============================ */
.user_navigation {
  background: #ffffff !important;  /* putih polos */
  border-bottom: 1px solid #e5e7eb; /* garis tipis pemisah */
  box-shadow: none !important;
}

/* Link & teks di topbar */
.user_navigation a,
#navigationUser > li > a {
  color: #004b23 !important;  /* hijau brand */
  font-weight: 600;
}

/* Hover efek */
.user_navigation a:hover,
#navigationUser > li > a:hover {
  color: #00341a !important;  /* hijau lebih tua */
  text-decoration: underline;
}

/* Badge (notifikasi) tetap kontras */
#navigationUser .badge {
  background: #004b23;
  color: #fff;
}

.about_journal {
  border: none !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15) !important;
  border-radius: 12px; /* biar lembut */
}
  /* =========================================================
   CURRENT ISSUE – Full Border Highlight (compact 3px)
   ========================================================= */

.pkp_page_index .current_issue .article-summary.media {
  border: 1px solid #e5e7eb;  /* abu tipis default */
  transition: all 0.25s ease-in-out;
  border-radius: 8px;
  padding: 10px 14px;  /* padding juga diperkecil */
  margin-bottom: 3px;  /* lebih rapat */
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.pkp_page_index .current_issue .article-summary.media:hover {
  border: 1px solid #004b23;   /* full border hijau */
  box-shadow: 0 3px 10px rgba(0,0,0,0.10);
  transform: translateY(-2px);
}

/* Judul artikel */
.pkp_page_index .current_issue .article-summary .media-heading a {
  line-height: 1.45;
  font-weight: 600;
  font-size: 15px;
  color: #004b23;
}

.pkp_page_index .current_issue .article-summary .media-heading a:hover {
  color: #00341a;
  text-decoration: underline;
}

/* Author text */
.pkp_page_index .current_issue .article-summary .authors {
  color: #4b5563;
  font-size: 0.85em;
}

/* Page badge */
.pkp_page_index .current_issue .article-summary .pages {
  background: #004b23;
  color: #fff;
  border-radius: 10px;
  padding: 2px 7px;
  font-size: 0.8em;
}


