/* =========================================================
   SAKA JOURNAL — CUSTOM CSS UNTUK OJS 3 (REVISI v10)
   Perbaikan Akhir: Membebaskan Tinggi Header Agar Proporsional,
   Tidak Terpotong Atas/Bawah, & Tetap Full-Width 100%.
   ========================================================= */

/* ---------- 1. RESET TOTAL TINGGI & LEBAR HEADER ----------
   Memastikan tidak ada properti max-height, height kaku, atau overflow
   bawaan OJS yang memotong bagian atas/bawah banner gambar.
------------------------------------------------------------ */

header.pkp_structure_head,
.pkp_structure_head,
div.pkp_head_wrapper,
.pkp_site_name_wrapper {
    display: block !important;
    background: #0b111e !important; 
    background-color: #0b111e !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    
    /* INTI PERBAIKAN: Bebaskan tinggi kontainer */
    height: auto !important; 
    max-height: none !important; 
    min-height: 0 !important;
    overflow: visible !important;
    position: relative !important;
}

/* Menghapus batasan tinggi dan lebar pada kontainer internal Bootstrap */
header.pkp_structure_head .container,
div.pkp_head_wrapper .container,
.pkp_site_name_wrapper .container,
.has_site_logo .pkp_head_wrapper .container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    background: transparent !important;
    
    /* Bebaskan tinggi kontainer dalam */
    height: auto !important;
    max-height: none !important;
}

/* Mengatur wadah tautan gambar anchor (a.is_img) */
div.pkp_head_wrapper div.pkp_site_name,
div.pkp_site_name a.is_img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    
    /* Paksa tinggi mengikuti proporsi asli gambar secara utuh */
    height: auto !important;
    max-height: none !important;
    
    aspect-ratio: auto !important; 
    overflow: visible !important;
    line-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* MEMAKSA GAMBAR BANNER TAMPIL UTUH DAN PROPORSIONAL */
div.pkp_site_name a.is_img img,
.pkp_site_name img,
.pkp_head_wrapper img,
.has_site_logo img {
    display: block !important;
    width: 100% !important;        
    max-width: 100% !important;
    min-width: 100% !important;
    
    /* Kunci utama: tinggi otomatis agar proporsi gambar (aspect ratio asli) terjaga */
    height: auto !important;       
    max-height: none !important;
    
    /* Ubah ke 'initial' agar browser merender gambar asli secara jujur tanpa manipulasi crop */
    object-fit: initial !important;   
    padding: 0 !important;
    margin: 0 !important;
}

/* Tombol hamburger menu (mobile toggle) mengambang */
div.pkp_head_wrapper button.pkp_site_nav_toggle {
    position: absolute !important;
    top: 14px !important;
    right: 16px !important;
    z-index: 20 !important;
}


/* ---------- 2. NAVIGASI MENU UTAMA (Terkunci 1 Baris) ---------- */

.pkp_navigation_primary_wrapper {
    background: #1b1f29 !important;
    border-top: 3px solid #29c4dd; /* Garis aksen cyan tepat di bawah banner penuh */
    border-bottom: 1px solid rgba(212, 175, 55, 0.25);
    padding: 0 !important;
    margin: 0 !important;
    position: relative !important;
    clear: both !important;
}

.pkp_navigation_primary_wrapper .container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    position: relative !important;
}

ul.pkp_navigation_primary {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    white-space: nowrap !important; 
}

ul.pkp_navigation_primary > li {
    display: inline-block !important;
    vertical-align: middle !important;
    float: none !important;
}

ul.pkp_navigation_primary > li > a,
ul.pkp_navigation_primary > li > .menuLabel {
    color: #cbd5e1 !important;
    font-family: "Segoe UI", Roboto, sans-serif !important;
    font-weight: 500 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.4px;
    padding: 14px 18px !important;
    display: block !important;
    text-decoration: none !important;
    transition: all 0.2s ease-in-out !important;
}

ul.pkp_navigation_primary > li > a:hover,
ul.pkp_navigation_primary > li.active > a {
    color: #29c4dd !important;
    background-color: rgba(41, 196, 221, 0.10) !important;
}


/* ---------- 3. SEARCH — DIKUNCI DI KANAN BARIS MENU ---------- */

.pkp_navigation_search_wrapper,
.pkp_navigation_search {
    position: absolute !important;
    right: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 10 !important;
}

.pkp_navigation_search a,
.cmp_search_button {
    color: #29c4dd !important;
    font-size: 13.5px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 8px 12px !important;
    display: block !important;
}


/* ---------- 4. AREA USER / LOGIN / REGISTER (Kanan Atas) ---------- */

.pkp_navigation_user_wrapper {
    background: transparent !important;
    border: none !important;
    position: absolute !important;
    top: 12px !important;
    right: 20px !important;
    z-index: 999 !important;
}

.pkp_navigation_user > li > a {
    color: #29c4dd !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    background: rgba(11, 17, 30, 0.8) !important;
    padding: 6px 14px !important;
    border-radius: 4px !important;
    border: 1px solid rgba(41, 196, 221, 0.3) !important;
}


/* ---------- 5. KONTEN UTAMA & SIDEBAR ---------- */

.page h1, .page .page_title, .pkp_page_content h1 {
    color: #0f172a !important;
    border-bottom: 3px solid #29c4dd !important;
    padding-bottom: 10px !important;
    margin-bottom: 25px !important;
}

.obj_article_summary {
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #29c4dd !important;
    border-radius: 8px !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
    background: #ffffff !important;
}

.pkp_block, .sidebar .pkp_block {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    padding: 18px !important;
    margin-bottom: 20px !important;
}


/* ---------- 6. FOOTER CLEAN ---------- */

.pkp_brand_footer, footer .pkp_brand_footer {
    display: none !important;
    height: 0 !important;
}

.pkp_structure_footer {
    padding: 0 !important;
    margin: 0 !important;
}


/* ---------- 7. RESPONSIVE ---------- */

@media (max-width: 991px) {
    .pkp_navigation_search_wrapper,
    .pkp_navigation_search {
        position: static !important;
        transform: none !important;
        padding: 10px 20px !important;
        background: #1b1f29 !important;
    }
    ul.pkp_navigation_primary {
        white-space: normal !important;
    }
    ul.pkp_navigation_primary > li {
        display: block !important;
        width: 100% !important;
    }
}