/* =========================================================
   STYLE OJS 3 - AL-MUYASSAR (ELEGANT GOLD & ROYAL BLUE)
   ADAPTASI FITUR JURIS & PERBAIKAN HEADER LENGKAP
   ========================================================= */

/* ==================================================
   1. GLOBAL & TYPOGRAPHY
   ================================================== */
* {
    font-family: 'Book Antiqua', Palatino, serif !important;
}

html, body {
    background-color: #f9f9f9 !important;
    font-size: 14.5px; /* Sedikit dirampingkan */
}

p {
    text-align: justify;
    line-height: 1.5; /* Spasi antar baris diperkecil agar tidak boros tempat */
}

.pkp_structure_page {
    background: #ffffff;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
}

.pkp_structure_main a {
    color: #D4AF37;
    text-decoration: none !important;
    transition: 0.3s;
}

.pkp_structure_main a:hover {
    color: #002456;
}

/* ==================================================
   2. HEADER & NAVIGATION MENU (PERBAIKAN FULL BANNER & LOGIN)
   ================================================== */
.pkp_structure_head {
    background-color: transparent !important;
}

.pkp_head_wrapper {
    position: relative !important; 
}
.pkp_site_name_wrapper,
.pkp_site_name,
.pkp_site_name .is_img {
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
    max-width: 100% !important;
    display: block !important;
    background: transparent !important;
}

.pkp_site_name .is_img img {
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    height: auto;
    display: block;
    margin: 0 !important;
    padding: 0 !important;
}

.pkp_navigation_user_wrapper {
    position: absolute !important;
    top: 15px !important;
    right: 0 !important;
    background-color: transparent !important;
    padding: 0 25px 0 0 !important;
    z-index: 100;
}

.pkp_navigation_user_wrapper ul {
    display: flex !important;
    justify-content: flex-end !important;
    gap: 8px !important; /* Jarak tombol login dan register dipersempit */
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pkp_navigation_user_wrapper ul li.profile a {
    background-color: #060606 !important;
    color: #ffffff !important;
    padding: 4px 12px; /* Tombol dirampingkan ukurannya */
    border-radius: 4px;
    font-weight: bold;
    font-size: 11px; /* Font diperkecil */
    text-transform: uppercase;
    text-decoration: none !important;
    display: inline-block;
    transition: all 0.3s ease;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.pkp_navigation_user_wrapper ul li.profile a:hover {
    color: #D4AF37 !important;
    background-color: #222222 !important;
    border-color: #D4AF37 !important;
}

/* Menu Navigasi Utama (Current, Archives, About) */
.pkp_navigation_primary_row {
    background: #002456 !important;
    border-top: 3px solid #D4AF37;
}

.pkp_navigation_primary_wrapper {
    margin: 0 auto;
    padding-left: 29px;
    padding-right: 0px;
}

.pkp_navigation_primary_row .pkp_navigation_primary_wrapper ul li a {
    color: #ffffff !important;
    font-weight: bold !important;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    padding-right: 12px !important;
}

.pkp_navigation_primary_row .pkp_navigation_primary_wrapper ul li a:hover,
.pkp_navigation_primary_row .pkp_navigation_primary_wrapper ul li a:focus {
    background: #D4AF37 !important;
    color: #002456 !important;
}

.pkp_navigation_search_wrapper a span.fa-search {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='%23ffffff' d='M505 442.7L405.3 343c-4.5-4.5-10.6-7-17-7H372c27.6-35.3 44-79.7 44-128C416 93.1 322.9 0 208 0S0 93.1 0 208s93.1 208 208 208c48.3 0 92.7-16.4 128-44v16.3c0 6.4 2.5 12.5 7 17l99.7 99.7c9.4 9.4 24.6 9.4 33.9 0l28.3-28.3c9.4-9.4 9.4-24.6.1-34zM208 336c-70.7 0-128-57.2-128-128 0-70.7 57.2-128 128-128 70.7 0 128 57.2 128 128 0 70.7-57.2 128-128 128z'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.pkp_navigation_search_wrapper a span.fa-search::before {
    content: "" !important;
}


/* ==================================================
   3. HOMEPAGE LAYOUT (FLOAT RIGHT IMAGE)
   ================================================== */
.page_index_journal {
    display: block !important; 
}

.page_index_journal::after {
    content: "";
    display: table;
    clear: both; 
}

.homepage_about h2 { display: none !important; }
.homepage_about .section-title { display: none; }

.page_index_journal > .homepage_image {
    float: right;
    width: 35% !important;
    margin: 0 0 10px 20px !important;
    text-align: right;
}

.homepage_image img {
    max-width: 100%;
    height: auto;
    /* box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    border: 2px solid #F9F6E8;
    border-radius: 5px; */
    display: block;
    margin-left: auto;
}

.page_index_journal > .homepage_about {
    width: auto !important;
    float: none !important;
    margin-top: 0;
}

.homepage_about .about-box {
    background-color: #F9F6E8;
    border-left: 4px solid #D4AF37;
    padding: 8px 12px; /* Dikecilkan */
    margin-bottom: 10px; /* Dikecilkan */
    border-radius: 3px;
}
.homepage_about .about-box p {
    margin-bottom: 2px; /* Dirapatkan */
    font-size: 13.5px;
    line-height: 1.4;
    color: #333;
}
.homepage_about .about-box p:last-child { margin-bottom: 0; }

.homepage_about p.MsoListParagraphCxSpFirst,
.homepage_about p.MsoListParagraphCxSpMiddle,
.homepage_about p.MsoListParagraphCxSpLast {
    text-indent: 0 !important;
    margin-left: 20px !important;
    margin-bottom: 3px !important;
}
.homepage_about span { font-family: inherit !important; font-size: inherit !important; }

.homepage_about .indexation-box {
    display: flex;
    flex-wrap: wrap;
    gap: 6px; /* Jarak antar logo indeks dirapatkan */
    align-items: center;
    margin-bottom: 10px; /* Dikecilkan */
    padding-bottom: 5px; /* Dikecilkan */
    border-bottom: 1px solid #eaeaea;
}
.homepage_about .indexation-box img {
    height: 30px; /* Logo indeks dikecilkan ukurannya sedikit */
    width: auto;
    display: block;
}

.homepage_about .about-section { margin-bottom: 10px; }
.homepage_about .sub-title {
    color: #002456;
    font-size: 14.5px; /* Dirampingkan */
    font-weight: bold;
    border-bottom: 2px solid #002456;
    padding-bottom: 2px; /* Dirapatkan */
    margin-bottom: 5px; /* Dirapatkan */
    text-transform: uppercase;
}
.homepage_about .mini-title { color: #D4AF37; font-size: 13.5px; font-weight: bold; margin-top: 8px; margin-bottom: 2px; }
.homepage_about .custom-list { margin-left: 15px; padding-left: 10px; margin-bottom: 5px; }
.homepage_about .custom-list li { margin-bottom: 1px; line-height: 1.4; font-size: 13.5px; color: #333; }
.homepage_about .scope-text { line-height: 1.4; text-align: justify; font-size: 13.5px; color: #333; margin-bottom: 5px; }

.cmp_announcements.highlight_first {
    background-color: #F9F6E8;
    padding: 10px 15px; /* Ruang dalam dirapatkan */
    border-left: 5px solid #D4AF37;
    border-radius: 4px;
    margin-bottom: 10px !important;
}
.pkp_structure_content.has_sidebar .cmp_announcements,
.cmp_announcements.highlight_first {
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-radius: 0 4px 4px 0 !important;
}


/* ==================================================
   4. DAFTAR ARTIKEL (SUPER RAMAPING/COMPACT)
   ================================================== */
ul.cmp_article_list { margin: 0 !important; padding: 0 !important; }
ul.cmp_article_list > li { margin-bottom: 6px !important; padding: 0 !important; } /* Celah antar list dikurangi */

.obj_article_summary {
    display: grid !important;
    grid-template-columns: max-content 1fr !important; 
    grid-template-areas: 
        "title title"   
        "pdf meta" !important; 
    align-items: center !important; 
    column-gap: 12px !important; /* Dirapatkan */
    row-gap: 4px !important; /* Dirapatkan sangat rapat */
    padding: 6px 12px !important; /* Kotak sangat dirampingkan atas bawah */
    margin-bottom: 0 !important;
    background: #ffffff;
    border: 1px solid #eaeaea;
    border-left: 4px solid #002456;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.03);
    transition: all 0.2s ease;
}

.obj_article_summary:hover {
    background: #F9F6E8;
    border-left: 4px solid #D4AF37;
}

.obj_article_summary .title {
    grid-area: title !important;
    margin-bottom: 0 !important;
    width: 100% !important;
}
.obj_article_summary .title a { font-size: 13.5px !important; color: #002456 !important; font-weight: bold; line-height: 1.3 !important; }

.obj_article_summary .galleys_links { grid-area: pdf !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.obj_article_summary .galleys_links li { margin: 0 !important; padding: 0 !important; }
.obj_galley_link {
    margin: 0 !important; 
    display: inline-block !important;
    background: #002456 !important;
    color: #D4AF37 !important;
    border: 1px solid #002456 !important;
    border-radius: 3px !important;
    padding: 2px 6px !important; /* Tombol PDF sangat kecil/ramping */
    font-size: 10px !important;
    font-weight: bold;
    text-transform: uppercase;
}
.obj_galley_link:hover { background: #D4AF37 !important; color: #002456 !important; border: 1px solid #D4AF37 !important; }

.obj_article_summary .meta {
    grid-area: meta !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 6px 10px !important; /* Jarak antara authors, hal, matrik dikecilkan */
    width: 100% !important;
}
.obj_article_summary .authors {
    margin: 0 !important;
    text-align: left !important;
    line-height: 1.3 !important;
    flex: 0 1 auto !important;
    font-size: 12px !important; /* Teks nama penulis diperkecil */
    color: #555 !important;
}
.obj_article_summary .pages {
    display: inline-block !important; 
    visibility: visible !important; 
    opacity: 1 !important;
    font-size: 10.5px !important; /* Teks halaman diperkecil */
    font-family: 'Book Antiqua', Palatino, serif !important;
    color: #ffffff !important;
    background-color: #002456 !important;
    padding: 2px 6px !important; /* Badge page dirampingkan */
    border-radius: 3px !important;
    font-weight: normal !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    border: 1px solid #002456 !important;
}
/* Menargetkan metrik tambahan jika ada (abstract views dll) agar fontnya kecil */
.article_metrics_toc, .article_metrics_toc span {
    font-size: 10px !important;
    margin-top: 0 !important;
    gap: 4px 8px !important;
}


/* Detail Artikel (Copyright) */
.obj_article_details .item.copyright h2.label,
.obj_article_details .item.copyright p,
.obj_article_details .item.copyright ol,
.obj_article_details .item.copyright ul,
.obj_article_details .item.copyright li { color: #333333 !important; line-height: 1.4 !important; }
.obj_article_details .item.copyright a { color: #002456 !important; font-weight: bold; }
.obj_article_details .item.copyright a:hover { color: #D4AF37 !important; text-decoration: underline !important; }


/* ==================================================
   5. SIDEBAR MENU CUSTOM (RAMPING/COMPACT)
   ================================================== */
.pkp_structure_sidebar .content {
    margin-bottom: 6px !important; /* Dirapatkan jarak antar kotak menunya */
}

/* Header Kotak di Sidebar */
.pkp_structure_sidebar .kepala {
    background-color: #002456;
    color: #D4AF37;
    padding: 6px 10px; /* Dirampingkan tebalnya */
    font-weight: bold;
    border-bottom: 2px solid #D4AF37; /* Garis bawah dipertipis */
    margin-bottom: 0;
    text-transform: uppercase;
    font-size: 12.5px; /* Font diperkecil */
    line-height: 1.2;
}

/* Isi Kotak di Sidebar */
.pkp_structure_sidebar .badan {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-top: none;
    margin-bottom: 0 !important;
    padding: 5px !important; /* Ruang di dalam kotak dirapatkan */
    text-align: center; /* Memusatkan semua gambar di dalam badan */
}

/* Gambar/Logo di dalam Sidebar dirampingkan ukurannya */
.pkp_structure_sidebar .badan img {
    max-width: 100% !important; /* Mencegah logo tembus batas */
    height: auto !important;
    margin-bottom: 4px !important; /* Merapatkan antar gambar di dalam 1 kotak */
    display: inline-block;
}

/* Aturan Khusus untuk link teks di "MAIN MENU" agar dirapatkan */
.pkp_structure_sidebar .badan a {
    display: block;
    padding: 5px 10px; /* Teks link dirampingkan ketebalannya */
    color: #333333;
    text-decoration: none;
    border-bottom: 1px solid #f1f1f1;
    transition: all 0.2s ease;
    text-align: left; /* Teks tetap rata kiri, bukan center */
    font-size: 13px; /* Font dirampingkan */
}
.pkp_structure_sidebar .badan a:last-child {
    border-bottom: none; /* Hilangkan garis pada item terakhir */
}
.pkp_structure_sidebar .badan a:hover {
    background-color: #F9F6E8;
    color: #002456;
    padding-left: 15px; /* Efek geser diperkecil */
    border-left: 3px solid #D4AF37; /* Garis pinggir dipertipis */
}

/* Menormalkan margin bawaan OJS di blok sidebar */
.pkp_structure_sidebar.left .pkp_block,
.pkp_block.block_custom {
    padding: 0 !important;
    margin: 0 !important;
}


/* ==================================================
   6. FOOTER (CENTER & KONTRAS EMAS/PUTIH)
   ================================================== */
.pkp_brand_footer { display: none !important; } 

.pkp_structure_footer_wrapper {
    background-color: #002456 !important;
    border-top: 5px solid #D4AF37 !important;
    padding: 13px 20px !important; 
}

.pkp_structure_footer {
    display: block !important;
    max-width: 1160px !important;
    margin: 0 auto !important; 
}

.pkp_footer_content {
    width: 100% !important;
    text-align: center !important;
    float: none !important;
    padding: 15px 0 !important; /* Padding dirapatkan */
}

.pkp_footer_content p,
.pkp_structure_footer_wrapper strong,
.pkp_structure_footer_wrapper span,
.pkp_structure_footer_wrapper div {
    color: #ffffff !important;
    line-height: 1.4; /* Dirapatkan */
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: 13.5px;
}

.pkp_structure_footer_wrapper a { color: #D4AF37 !important; text-decoration: none !important; font-weight: bold; }
.pkp_structure_footer_wrapper a:hover { color: #ffffff !important; text-decoration: underline !important; }

.pkp_footer_content img {
    display: inline-block !important;
    margin: 0 auto !important;
    vertical-align: middle !important;
}

.pkp_footer_content hr {
    max-width: 100% !important;
    width: 100% !important;
    margin: 15px auto !important;
    border: none !important;
    border-top: 1px solid rgba(255, 255, 255, 0.3) !important;
    box-sizing: border-box !important;
}

/* ==================================================
   7. RESPONSIVE MEDIA QUERIES (MOBILE)
   ================================================== */
@media (max-width: 1280px) { .pkp_navigation_primary_wrapper { padding-left: 20px; } }
@media (max-width: 1024px) { .pkp_navigation_primary_wrapper { padding-left: 30px; } }

@media (max-width: 768px) {
    body { font-size: 13.5px; }
    .pkp_navigation_primary_wrapper { padding-left: 10px; }
    
    .page_index_journal > .homepage_image {
        float: none;
        width: 100% !important;
        margin: 0 0 15px 0 !important;
        text-align: center;
    }
    
    .homepage_image img { margin: 0 auto; }
    
    .pkp_navigation_user_wrapper {
        position: relative;
        top: 0;
        right: 0;
        background-color: transparent !important;
        margin-top: 10px;
    }
    .pkp_navigation_user_wrapper ul {
        justify-content: flex-end; 
    }
}
@media (max-width: 576px) {
    body { font-size: 13px; }
    .pkp_navigation_primary_wrapper { padding-left: 8px; }
}