/* ======================================================================
   MAJESTY JOURNAL | COMPACT OJS HEADER
   Perbaikan: hilangkan ruang putih di atas/bawah gambar logo;
   rapatkan header dengan navigasi; pertahankan cover, judul, dan E-ISSN.
   Direkomendasikan untuk banner 3300 x 300 piksel (rasio 11:1).
   Cocok untuk OJS 3.x dengan tema berbasis Default.
   ====================================================================== */

/* 1. Kesatuan warna header tanpa latar putih */
#headerNavigationContainer.pkp_structure_head,
#headerNavigationContainer .pkp_head_wrapper,
#headerNavigationContainer .pkp_site_name_wrapper,
#headerNavigationContainer .pkp_site_name,
#headerNavigationContainer .pkp_site_name > a,
#headerNavigationContainer .pkp_site_name .is_img {
    background-color: #100b38 !important;
    box-shadow: none !important;
}

#headerNavigationContainer.pkp_structure_head {
    border-bottom: 0 !important;
}

/* 2. Hapus jarak bawaan OJS (penyebab pita putih) */
#headerNavigationContainer .pkp_head_wrapper {
    position: relative !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 24px 0 0 !important; /* ruang tipis untuk login di desktop */
    box-sizing: border-box !important;
}

#headerNavigationContainer .pkp_site_name_wrapper {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
}

#headerNavigationContainer .pkp_site_name {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    white-space: normal !important;
    text-align: center !important;
    overflow: hidden !important;
}

/* Sering terlewat: tautan logo OJS memiliki padding atas-bawah. */
#headerNavigationContainer .pkp_site_name > a,
#headerNavigationContainer .pkp_site_name > a.is_img,
#headerNavigationContainer .pkp_site_name .is_img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
}

/* Banner tampil FULL tanpa crop maupun distorsi.
   Tinggi otomatis mengikuti gambar: pilih 3300x300 agar pendek. */
#headerNavigationContainer .pkp_site_name img,
#headerNavigationContainer .pkp_site_name .is_img img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    vertical-align: top !important;
}

/* 3. Navigasi menyatu langsung di bawah header */
@media (min-width: 992px) {
    #headerNavigationContainer .pkp_navigation_user_wrapper {
        position: absolute !important;
        top: 0 !important;
        right: 16px !important;
        left: auto !important;
        z-index: 25 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #headerNavigationContainer .pkp_navigation_user_wrapper > ul > li > a {
        color: #fff !important;
        font-size: 12px !important;
        padding: 2px 6px !important;
        line-height: 20px !important;
    }

    #headerNavigationContainer .pkp_site_nav_menu {
        display: block !important;
        position: static !important;
        top: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border-top: 2px solid #d4af52 !important;
        background: #1c507b !important;
        box-sizing: border-box !important;
    }

    #headerNavigationContainer .pkp_navigation_primary_row {
        margin: 0 !important;
        padding: 0 12px !important;
        background: #1c507b !important;
        box-sizing: border-box !important;
    }

    #headerNavigationContainer .pkp_navigation_primary_wrapper {
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
    }

    #headerNavigationContainer .pkp_navigation_primary > li > a,
    #headerNavigationContainer .pkp_navigation_search_wrapper > a {
        padding: 9px 12px !important;
        font-size: 12px !important;
        line-height: 20px !important;
        font-weight: 700 !important;
        color: #fff !important;
        text-decoration: none !important;
        border-bottom: 2px solid transparent !important;
    }

    #headerNavigationContainer .pkp_navigation_primary > li > a:hover,
    #headerNavigationContainer .pkp_navigation_primary > li > a:focus,
    #headerNavigationContainer .pkp_navigation_search_wrapper > a:hover,
    #headerNavigationContainer .pkp_navigation_search_wrapper > a:focus {
        color: #ffe3a3 !important;
        border-bottom-color: #d4af52 !important;
    }

    /* Dropdown tetap kontras dan mudah dibaca. */
    #headerNavigationContainer .pkp_navigation_primary ul,
    #headerNavigationContainer .pkp_navigation_user ul ul {
        background: #fff !important;
    }
    #headerNavigationContainer .pkp_navigation_primary ul a {
        color: #20395e !important;
    }
}

/* 4. Mobile: jangan menutupi tombol menu / hamburger OJS */
@media (max-width: 991px) {
    #headerNavigationContainer .pkp_head_wrapper {
        padding-top: 0 !important;
    }

    #headerNavigationContainer .pkp_site_name_wrapper {
        padding: 0 0 0 50px !important;
        min-height: 50px !important;
        box-sizing: border-box !important;
    }

    #headerNavigationContainer .pkp_site_nav_toggle {
        z-index: 80 !important;
    }

    #headerNavigationContainer .pkp_site_nav_menu {
        z-index: 90 !important;
    }
}

/* Aksesibilitas */
#headerNavigationContainer .pkp_site_name a:focus-visible {
    outline: 2px solid #d4af52 !important;
    outline-offset: -2px !important;
}
