/* custom_adapted.css */
/* Target: Hasanuddin Civil and Business Law Review */
/* Versi: Tema Biru Serif - Header Gambar (Selector Diperbaiki) */

/* --- Font Imports --- */
@import url('https://fonts.googleapis.com/css2?family=Merriweather:wght@400;700&display=swap');

/* --- Variabel Warna (Untuk kemudahan modifikasi nanti) --- */
:root {
    --hcblr-blue-primary: #004c9d;
    --hcblr-blue-dark: #003366;
    --hcblr-blue-medium: #004085;
    --hcblr-blue-light: #E6F0FF;
    --hcblr-white: #FFFFFF; /* Ini adalah warna putih */
    --hcblr-black: #222222;
    --hcblr-grey-text: #333333;
    --hcblr-grey-dark: #555555;
    --hcblr-grey-medium: #AAAAAA;
    --hcblr-grey-light: #F0F0F0;
    --hcblr-grey-extralight: #F8F9FA;
}

/* --- Global Styles & Body --- */
body {
    font-family: 'Merriweather', Georgia, serif;
    font-size: 16px;
    color: var(--hcblr-black);
    background-color: var(--hcblr-white);
    line-height: 1.6;
}

.pkp_structure_page {
    max-width: 1020px;
    margin: 0 auto;
    background-color: var(--hcblr-white);
    padding: 0;
    box-sizing: border-box;
}

/* --- Links --- */
a,
a:link,
a:visited {
    color: var(--hcblr-blue-primary);
    text-decoration: none;
}

a:hover,
a:focus {
    text-decoration: underline;
    color: var(--hcblr-blue-dark);
}

/* --- Header --- */
.pkp_structure_head {
    background-color: var(--hcblr-white);
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
    border: none !important;
}

.pkp_head_wrapper {
    padding: 0;
    margin: 0;
    border: none !important;
}
.pkp_site_name_wrapper {
    margin:0;
    border: none !important;
}

.pkp_head_wrapper .pkp_site_name_wrapper .pkp_site_name > a {
    display: block !important;
    width: 100% !important;
    height: 150px !important; 
    background-image: url('https://res.cloudinary.com/ddhtiomoy/image/upload/v1748761092/headerhcblr.png') !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
    text-indent: -9999px !important; 
    overflow: hidden !important;
    border: none !important;
    font-size: 0 !important; 
    color: transparent !important; 
    position: relative;
    z-index: 100;
}

.pkp_head_wrapper .pkp_site_name_wrapper .pkp_site_name > a img,
.pkp_head_wrapper .pkp_site_name_wrapper .pkp_site_name > a .pkp_site_title {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
}

.pkp_head_wrapper .pkp_site_name_wrapper h1.pkp_screen_reader {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}


/* --- Navigation Bar (Menu Utama) --- */
.pkp_navigation_primary_row {
    background-color: var(--hcblr-blue-dark) !important; /* Latar belakang bar navigasi utama */
    border: 0;
    min-height: 45px;
    margin-top: 0; 
    margin-bottom: 20px;
    padding-left: 25px !important; 
    padding-right: 15px; 
    padding-top: 0;
    padding-bottom: 0;
    text-align: left;
    clear: both;
}

.pkp_navigation_primary ul {
    margin: 0;
    padding: 0; 
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}

.pkp_navigation_primary ul li {
    margin: 0;
    padding: 0;
    position: relative;
}

/* Gaya default untuk semua link di navigasi utama */
.pkp_navigation_primary_row .pkp_navigation_primary ul li a,
.pkp_navigation_primary_row .pkp_navigation_primary ul li a:link,
.pkp_navigation_primary_row .pkp_navigation_primary ul li a:visited {
    color: var(--hcblr-white) !important; /* Warna teks default PUTIH */
    background-color: transparent !important; /* Latar belakang default transparan */
    display: inline-block;
    font-size: 0.9em;
    font-family: Georgia, Times, 'Times New Roman', serif; 
    font-weight: bold;
    line-height: 45px;
    margin: 0;
    padding-left: 15px;
    padding-right: 15px;
    text-decoration: none;
    text-transform: uppercase;
    border: none !important; /* Hapus border jika ada */
    outline: none !important; /* Hapus outline jika ada */
}

.pkp_navigation_primary ul li:not(:first-child) a::before {
    content: "";
    display: block;
    height: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    background-color: rgba(255, 255, 255, 0.2);
    left: 0;
}

/* Gaya untuk link saat di-hover */
.pkp_navigation_primary_row .pkp_navigation_primary ul li a:hover {
    background-color: var(--hcblr-blue-primary) !important; 
    color: var(--hcblr-white) !important; 
    text-shadow: none;
    text-decoration: none;
}

/* Gaya spesifik untuk link yang sedang aktif/current page */
/* Menggunakan selector yang lebih spesifik dan !important */
body .pkp_navigation_primary_row .pkp_navigation_primary ul li.current > a,
body .pkp_navigation_primary_row .pkp_navigation_primary ul li.current_item > a,
body .pkp_navigation_primary_row .pkp_navigation_primary ul li.active > a { 
    background-color: var(--hcblr-blue-primary) !important; 
    color: var(--hcblr-white) !important; 
    text-shadow: none;
    text-decoration: none;
}


/* --- Headings (Umum) --- */
h1, h2, h3, h4, h5, h6,
.page_title,
.pkp_block .title,
.obj_article_summary .title,
.cmp_breadcrumbs span {
    font-family: Georgia, Times, 'Times New Roman', serif; 
    color: var(--hcblr-blue-dark);
    font-weight: bold; 
}
.page_title {
    font-size: 2em;
    margin-bottom: 25px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--hcblr-blue-primary);
}


/* --- Main Content Area & Sidebar Structure --- */
.pkp_structure_content {
    display: flex;
    flex-wrap: wrap;
    padding-top: 20px; 
    padding-left: 10px; 
    padding-right: 10px;
}

.pkp_structure_main {
    flex: 3;
    padding-right: 25px;
    min-width: 0;
}

.pkp_structure_sidebar {
    flex: 1;
    font-size: 0.9em; 
    padding: 0px 15px 15px 15px;
    background-color: var(--hcblr-grey-extralight);
    border-left: 1px solid var(--hcblr-grey-light);
}

/* Blok di Sidebar */
.pkp_block {
    border: 0;
    color: inherit;
    padding: 0 0 10px;
    margin-bottom: 25px;
}

.pkp_block .title {
    background-color: var(--hcblr-blue-primary);
    color: var(--hcblr-white);
    display: block;
    letter-spacing: 0.5px;
    margin-bottom: 10px;
    padding: 0.7em 12px !important;
    text-transform: uppercase;
    font-size: 1.05em;
    border-radius: 3px 3px 0 0;
}

.pkp_block ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.pkp_block ul li {
    padding: 6px 0 6px 20px;
    position: relative;
    border-bottom: 1px dotted var(--hcblr-grey-medium);
}
.pkp_block ul li:last-child {
    border-bottom: none;
}

.pkp_block ul li::before {
    content: "\00BB";
    position: absolute;
    left: 5px;
    top: 6px;
    color: var(--hcblr-blue-primary);
    font-size: 1.1em;
}

.pkp_navigation_list.pkp_nav_list_sidebar li a {
    background-color: var(--hcblr-blue-dark);
    border-top: 1px solid var(--hcblr-blue-medium);
    border-bottom: 1px solid var(--hcblr-blue-dark);
    color: var(--hcblr-white);
    display: block;
    padding: 0.8em 10px 0.8em 13px;
    text-decoration: none;
    font-weight: bold; 
}

.pkp_navigation_list.pkp_nav_list_sidebar li a:hover {
    background-color: var(--hcblr-blue-primary);
    text-decoration: none;
    color: var(--hcblr-white);
}


/* --- Breadcrumbs --- */
.cmp_breadcrumbs {
    margin: 0 0 20px 0;
    padding: .7em 0;
    border-bottom: 1px dotted var(--hcblr-grey-medium);
    font-size: 0.9em;
}
.cmp_breadcrumbs ol { list-style: none; padding: 0; margin: 0; }
.cmp_breadcrumbs li { display: inline; }
.cmp_breadcrumbs li:not(:last-child)::after {
    content: ">";
    margin: 0 8px;
    color: var(--hcblr-grey-dark);
}
.cmp_breadcrumbs a {
    color: var(--hcblr-blue-medium);
}
.cmp_breadcrumbs a:hover {
    color: var(--hcblr-blue-dark);
}

/* --- Table of Contents (Daftar Isi Artikel) --- */
.obj_article_summary {
    margin-bottom: 20px;
    padding: 15px;
    border: 1px solid var(--hcblr-grey-light);
    border-radius: 4px;
}
.obj_article_summary:nth-child(odd) {
    background-color: var(--hcblr-white);
}
.obj_article_summary:nth-child(even) {
    background-color: var(--hcblr-grey-extralight);
}
.obj_article_summary:hover {
    background-color: var(--hcblr-blue-light);
    border-color: var(--hcblr-blue-primary);
}

.obj_article_summary .title {
    font-family: Georgia, Times, 'Times New Roman', serif; 
    color: var(--hcblr-blue-dark);
    font-weight: bold; 
}
.obj_article_summary .title a {
    color: var(--hcblr-blue-dark);
}
.obj_article_summary .title a:hover {
    color: var(--hcblr-blue-primary);
    text-decoration: underline;
}

.obj_article_summary .authors {
    font-style: italic;
    font-size: 0.95em;
    color: var(--hcblr-grey-dark);
    margin-bottom: 10px;
    padding-left: 0;
}

.obj_article_summary .galleys_links {
    margin-top: 10px;
    text-align: right;
}
.obj_article_summary .galleys_links a {
    display: inline-block;
    margin-left: 10px;
    padding: 6px 12px;
    background-color: var(--hcblr-blue-primary);
    color: var(--hcblr-white);
    border-radius: 3px;
    font-size: 0.9em;
    font-weight: bold; 
}
.obj_article_summary .galleys_links a:hover {
    background-color: var(--hcblr-blue-dark);
    color: var(--hcblr-white);
    text-decoration: none;
}
.obj_article_summary .galleys_links a[href*=".pdf"]::before,
.obj_article_summary .galleys_links a[href*="/pdf"]::before {
    content: "PDF";
    margin-right: 5px;
}


/* --- DOI Links --- */
.item_doi,
.obj_article_details .doi {
    padding-left: 0;
    margin-top: 4px;
    font-size: 0.9em;
    color: var(--hcblr-grey-dark);
}
.item_doi a, .obj_article_details .doi a {
    color: var(--hcblr-blue-medium);
}


/* --- Form Elements --- */
.pkp_form input[type="text"],
.pkp_form input[type="password"],
.pkp_form input[type="email"],
.pkp_form input[type="url"],
.pkp_form input[type="search"],
.pkp_form select,
.pkp_form textarea {
    background-color: var(--hcblr-white);
    border: 1px solid var(--hcblr-grey-medium);
    color: var(--hcblr-black);
    padding: .5em .7em;
    border-radius: 3px;
    box-sizing: border-box;
    width: 100%;
    max-width: 450px;
}

.pkp_form input[type="text"]:focus,
.pkp_form input[type="password"]:focus,
.pkp_form input[type="email"]:focus,
.pkp_form input[type="url"]:focus,
.pkp_form input[type="search"]:focus,
.pkp_form select:focus,
.pkp_form textarea:focus {
    border-color: var(--hcblr-blue-primary);
    box-shadow: 0 0 5px var(--hcblr-blue-light);
}

/* Buttons */
.pkp_button,
.pkp_form input[type="submit"],
.pkp_form input[type="button"],
.pkp_form button {
    background-color: var(--hcblr-grey-light);
    border: 1px solid var(--hcblr-grey-medium);
    border-radius: 3px;
    color: var(--hcblr-black);
    padding: 8px 15px;
    text-shadow: none;
    cursor: pointer;
    font-size: 0.95em;
    font-weight: bold;
    font-family: Georgia, Times, 'Times New Roman', serif; 
}

.pkp_button:hover,
.pkp_form input[type="submit"]:hover,
.pkp_form input[type="button"]:hover,
.pkp_form button:hover {
    background-color: var(--hcblr-grey-medium);
    border-color: var(--hcblr-grey-dark);
    color: var(--hcblr-black);
    text-decoration: none;
}

.pkp_button.pkp_button_primary,
input.defaultButton {
    color: var(--hcblr-white);
    font-weight: bold;
    background-color: var(--hcblr-blue-primary);
    border-color: var(--hcblr-blue-dark);
    text-shadow: none;
}
.pkp_button.pkp_button_primary:hover {
    background-color: var(--hcblr-blue-dark);
    border-color: var(--hcblr-blue-dark);
}


/* --- Footer --- */
.pkp_structure_footer_wrapper {
    background-color: var(--hcblr-blue-dark);
    color: var(--hcblr-grey-light);
    padding: 25px 0;
    margin-top: 40px;
    font-size: 0.9em;
    text-align: center;
}
.pkp_structure_footer_wrapper a {
    color: var(--hcblr-white);
    font-weight: bold;
}
.pkp_structure_footer_wrapper a:hover {
    color: var(--hcblr-blue-light);
    text-decoration: underline;
}

/* --- Lain-lain (Adaptasi dari CSS lama jika relevan) --- */
.homepage_journal_description .block_custom,
.announcements_short {
    background-color: var(--hcblr-blue-light);
    border: 1px dotted var(--hcblr-blue-primary);
    padding: 15px;
    margin-bottom: 20px;
    border-radius: 4px;
}
.homepage_journal_description .block_custom ul,
.announcements_short ul {
    margin: 0;
    padding-left: 1.5em;
}

.issue_cover_image img,
.obj_issue_toc .cover img {
    border: 1px solid var(--hcblr-grey-light);
    box-shadow: 3px 3px 5px var(--hcblr-grey-medium);
    margin: 1em 1em 1em 0;
    max-width: 150px;
    height: auto;
    border-radius: 3px;
}


/* Pastikan konten utama tidak tersembunyi */
body.pkp_page_index .pkp_structure_content,
body.pkp_page_about .pkp_structure_content,
body.pkp_page_issue .pkp_structure_content,
body.pkp_page_article .pkp_structure_content {
    display: flex !important;
}

/* ----------------------------------------------------------------------------------------------------
    STYLING SIDEBAR TAMBAHAN (UNTUK CUSTOM BLOCK MANAGER)
---------------------------------------------------------------------------------------------------- */

/* Selector untuk kontainer utama sidebar Anda, sesuai HTML yang diberikan */
.sidebar-custom-bg { 
    background-color: var(--hcblr-blue-dark);
    color: var(--hcblr-white); 
}

.sidebar-custom-bg nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-custom-bg .sidebar-item {
    border-bottom: 1px solid var(--hcblr-blue-medium); 
}

.sidebar-custom-bg .sidebar-item:last-child {
    border-bottom: none; 
}

.sidebar-custom-bg a.sidebar-custom-hover,
.sidebar-custom-bg a.sidebar-custom-hover:link,
.sidebar-custom-bg a.sidebar-custom-hover:visited {
    color: var(--hcblr-white) !important; 
    text-transform: uppercase;
    font-size: 0.9em; 
    font-weight: bold; 
    text-decoration: none;
}

.sidebar-custom-bg a.sidebar-custom-hover:hover {
    background-color: var(--hcblr-blue-primary);
    color: var(--hcblr-white) !important; 
}

/* ----------------------------------------------------------------------------------------------------
    STYLING UNTUK HOMEPAGE IMAGE OJS
---------------------------------------------------------------------------------------------------- */

/* Menargetkan gambar homepage berdasarkan selector yang Anda temukan */
.pkp_page_index .homepage_image img {
    display: block !important; 
    max-width: 350px !important; 
    height: auto !important;     
    margin-top: 15px !important;    
    margin-bottom: 20px !important; 
    float: right !important;         
    margin-left: 20px !important;  
    margin-right: 0 !important; 
}

/* Anda mungkin memerlukan clearfix untuk kontainer pembungkus gambar dan teks 
   jika elemen setelahnya tidak mengikuti alur dengan benar. 
   Contoh: Jika .homepage_image adalah kontainer langsung dari img dan teks deskripsi.
   .pkp_page_index .homepage_image::after {
       content: "";
       clear: both;
       display: table;
   }
*/

/* Hapus atau komentari aturan CSS dari Opsi 1, 2, 3 sebelumnya jika tidak digunakan lagi */
/*
.homepage_journal_description img, 
.journal_summary img {
    max-width: 300px !important; 
    height: auto !important;    
    display: block !important;   
    margin-left: auto !important; 
    margin-right: auto !important;
    margin-bottom: 15px !important; 
    float: none !important; 
}

.ojs-homepage-image-class { 
    max-width: 250px !important; 
    height: auto !important;
    display: block !important;
    margin: 0 auto 15px auto !important; 
}

.specific-homepage-image-container img {
    max-width: 35%; 
    height: auto !important;
}
*/
