/**
 * OJS Navbar Layout - SIBATIK Style (Layout Only)
 * Mengatur posisi navbar dan search button tanpa mengubah warna drastis
 * Using !important to override OJS default styles
 */

/* ===== FULL WIDTH BANNER ===== */
/* Buat logo/banner menempel penuh di atas header */
.pkp_structure_head .pkp_site_name_wrapper {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.pkp_structure_head .pkp_site_name {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.pkp_structure_head .pkp_site_name .is_img {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.pkp_structure_head .pkp_site_name .is_img img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Hapus padding head wrapper agar banner benar-benar menempel atas */
.pkp_structure_head .pkp_head_wrapper {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* ===== FORCE HORIZONTAL NAVIGATION LAYOUT ===== */
.pkp_structure_head .pkp_navigation_primary_row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 20px !important;
    background: transparent !important;
    background-color: transparent !important;
}

.pkp_structure_head .pkp_navigation_primary_wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 0 !important;
    flex: 1 !important;
}

/* Primary Menu Items - FORCE Horizontal Layout */
.pkp_structure_head .pkp_navigation_primary,
.pkp_structure_head ul.pkp_navigation_primary {
    display: flex !important;
    flex-direction: row !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
}

.pkp_structure_head .pkp_navigation_primary > li {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.pkp_structure_head .pkp_navigation_primary > li > a {
    display: block !important;
    padding: 15px 20px !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
    background-color: transparent !important;
}


/* ===== SEARCH BUTTON POSITIONING ===== */
.pkp_structure_head .pkp_navigation_search_wrapper {
    margin-left: auto !important;
    padding-left: 20px !important;
    display: block !important;
}

.pkp_structure_head .pkp_search,
.pkp_structure_head a.pkp_search {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 8px 20px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #003d82 !important;
    border: 1px solid #003d82 !important;
    box-shadow: none !important;
}

.pkp_structure_head .pkp_search:hover,
.pkp_structure_head a.pkp_search:hover {
    background: #003d82 !important;
    background-color: #003d82 !important;
    color: #ffffff !important;
    border-color: #003d82 !important;
    box-shadow: 0 2px 4px rgba(0,61,130,0.2) !important;
}

.pkp_structure_head .pkp_search .fa-search {
    font-size: 14px !important;
}

/* ===== REMOVE DEFAULT OJS VERTICAL STACKING ===== */
.pkp_structure_head .pkp_navigation_primary_wrapper::after {
    content: none !important;
    display: none !important;
}

.pkp_structure_head .pkp_navigation_primary::after,
.pkp_structure_head .pkp_navigation_primary::before {
    content: none !important;
    display: none !important;
}

/* Clear any floats */
.pkp_structure_head .pkp_navigation_primary > li {
    clear: none !important;
}


/* ===== ULTRA SPECIFIC TRANSPARENT BACKGROUND OVERRIDES ===== */
/* Force transparent background on ALL navigation elements */
.pkp_structure_head .pkp_navigation_primary_row,
.pkp_structure_head div.pkp_navigation_primary_row,
header.pkp_structure_head .pkp_navigation_primary_row,
#headerNavigationContainer .pkp_navigation_primary_row {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

/* Ensure navigation wrapper is also transparent */
.pkp_structure_head .pkp_navigation_primary_wrapper,
.pkp_structure_head div.pkp_navigation_primary_wrapper {
    background: transparent !important;
    background-color: transparent !important;
}

/* Force transparent on UL elements */
.pkp_structure_head .pkp_navigation_primary,
.pkp_structure_head ul.pkp_navigation_primary,
.pkp_structure_head ul.pkp_nav_list,
.pkp_structure_head .pkp_nav_list {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

/* Force transparent on all link elements - LIGHT THEME */
.pkp_structure_head .pkp_navigation_primary > li > a,
.pkp_structure_head ul.pkp_navigation_primary > li > a,
.pkp_structure_head ul.pkp_nav_list > li > a,
.pkp_structure_head .pkp_nav_list > li > a,
header.pkp_structure_head .pkp_navigation_primary > li > a,
#headerNavigationContainer .pkp_navigation_primary > li > a,
.pkp_structure_head .pkp_navigation_primary li a,
.pkp_structure_head ul.pkp_navigation_primary li a,
.pkp_structure_head ul.pkp_nav_list li a,
.pkp_structure_head .pkp_nav_list li a {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #ffffff !important;
    text-shadow: none !important;
    font-weight: 600 !important;
    border-bottom: 2px solid transparent !important;
}

/* Hover states - subtle light background with white/blue accent */
.pkp_structure_head .pkp_navigation_primary > li > a:hover,
.pkp_structure_head .pkp_navigation_primary > li > a:focus,
.pkp_structure_head .pkp_navigation_primary > li > a:active,
.pkp_structure_head .pkp_nav_list > li > a:hover,
.pkp_structure_head .pkp_nav_list > li > a:focus,
.pkp_structure_head .pkp_nav_list > li > a:active {
    background: rgba(255,255,255,0.15) !important;
    background-color: rgba(255,255,255,0.15) !important;
    background-image: none !important;
    color: #ffffff !important;
    text-shadow: none !important;
    border-bottom: 2px solid #ffffff !important;
}

/* Active/current page - slightly lighter background with white border */
.pkp_structure_head .pkp_navigation_primary > li.current > a,
.pkp_structure_head .pkp_navigation_primary > li.active > a,
.pkp_structure_head .pkp_nav_list > li.current > a,
.pkp_structure_head .pkp_nav_list > li.active > a {
    background: rgba(255,255,255,0.2) !important;
    background-color: rgba(255,255,255,0.2) !important;
    background-image: none !important;
    color: #ffffff !important;
    text-shadow: none !important;
    border-bottom: 3px solid #ffffff !important;
    font-weight: 700 !important;
}

/* Dropdown menus - dark background for readability */
.pkp_structure_head .pkp_navigation_primary li.has_submenu ul,
.pkp_structure_head .pkp_navigation_primary li ul.dropdown-menu,
.pkp_structure_head .dropdown-menu {
    background: rgba(26, 26, 46, 0.95) !important;
    background-color: rgba(26, 26, 46, 0.95) !important;
    border: 1px solid rgba(79, 195, 247, 0.3) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.5) !important;
}

.pkp_structure_head .dropdown-menu li a {
    background: transparent !important;
    color: #ffffff !important;
}

.pkp_structure_head .dropdown-menu li a:hover {
    background: rgba(79, 195, 247, 0.2) !important;
    color: #4fc3f7 !important;
}





/* ===== USER NAVIGATION BUTTONS (Login, Register, Admin) ===== */

/* Style for user navigation links (Login, Register, Admin, etc.) */
.pkp_structure_head .pkp_navigation_user_wrapper a,
.pkp_structure_head .pkp_navigation_user a,
.pkp_structure_head ul.pkp_navigation_user > li > a {
    display: inline-flex !important;
    align-items: center !important;
    padding: 8px 18px !important;
    border-radius: 4px !important;
    background: #003d82 !important;
    background-color: #003d82 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    border: 1px solid #003d82 !important;
}

/* Hover state for user navigation buttons */
.pkp_structure_head .pkp_navigation_user_wrapper a:hover,
.pkp_structure_head .pkp_navigation_user a:hover,
.pkp_structure_head ul.pkp_navigation_user > li > a:hover {
    background: #002a5c !important;
    background-color: #002a5c !important;
    border-color: #002a5c !important;
    color: #ffffff !important;
}


/* Fix user navigation positioning to prevent overlap with logo */
/* CRITICAL: pointer-events:none prevents this absolute-positioned element from blocking clicks */
.pkp_structure_head .pkp_navigation_user_wrapper {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
    padding-right: 20px !important;
    pointer-events: none !important;
}

/* But allow clicks on actual links/buttons inside the wrapper */
.pkp_structure_head .pkp_navigation_user_wrapper a,
.pkp_structure_head .pkp_navigation_user_wrapper button,
.pkp_structure_head .pkp_navigation_user_wrapper ul,
.pkp_structure_head .pkp_navigation_user_wrapper li {
    pointer-events: auto !important;
}


/* Ensure proper spacing in header */
.pkp_structure_head .pkp_head_wrapper {
    min-height: 120px !important;
    overflow: visible !important;
    position: relative !important;
}

/* CRITICAL: Ensure header does not block clicks on page content */
.pkp_structure_head {
    overflow: visible !important;
    position: relative !important;
    z-index: 100 !important;
}

/* CRITICAL FIX: Prevent footer from floating up over page content */
/* The main content and sidebar use CSS floats, so the content wrapper needs clearfix */
.pkp_structure_content {
    overflow: hidden !important;
    clear: both !important;
}

/* Ensure footer stays below content */
.pkp_structure_footer_wrapper {
    clear: both !important;
    position: relative !important;
}

/* Remove border from additional content section */
.pkp_page_index .additional_content {

    border-top: none !important;
}


/* ===== ADMIN DROPDOWN MENU STYLING ===== */

/* Dropdown menu container */
.pkp_structure_head .pkp_navigation_user ul.dropdown-menu,
.pkp_structure_head .pkp_navigation_user .dropdown-menu {
    background: #003d82 !important;
    border: 1px solid #003d82 !important;
    border-radius: 4px !important;
    box-shadow: 0 4px 12px rgba(0,61,130,0.3) !important;
    padding: 0 !important;
    margin-top: 5px !important;
    min-width: 200px !important;
}

/* Dropdown menu items */
.pkp_structure_head .pkp_navigation_user ul.dropdown-menu li,
.pkp_structure_head .pkp_navigation_user .dropdown-menu li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}

.pkp_structure_head .pkp_navigation_user ul.dropdown-menu li:last-child,
.pkp_structure_head .pkp_navigation_user .dropdown-menu li:last-child {
    border-bottom: none !important;
}

/* Dropdown menu links */
.pkp_structure_head .pkp_navigation_user ul.dropdown-menu li a,
.pkp_structure_head .pkp_navigation_user .dropdown-menu li a {
    display: block !important;
    width: 100% !important;
    padding: 12px 20px !important;
    background: transparent !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

/* Dropdown menu links hover */
.pkp_structure_head .pkp_navigation_user ul.dropdown-menu li a:hover,
.pkp_structure_head .pkp_navigation_user .dropdown-menu li a:hover {
    background: rgba(255,255,255,0.15) !important;
    color: #ffffff !important;
    transform: none !important;
}

/* Task count badge in dropdown */
.pkp_structure_head .pkp_navigation_user .dropdown-menu .task_count {
    background: #ff5722 !important;
    color: #ffffff !important;
    font-weight: bold !important;
    padding: 2px 6px !important;
    border-radius: 10px !important;
    font-size: 11px !important;
    margin-left: 8px !important;
}




/* ===== LOGIN MODAL STYLING ===== */

/* Remove gray line above login modal */
.pkp_page_login .pkp_structure_head,
.pkp_page_login header.pkp_structure_head {
    border-bottom: none !important;
}

/* Hide welcome back message */
.pkp_page_login .page p:contains('Welcome back'),
.pkp_page_login .page p:contains('Please login') {
    display: none !important;
}

/* ===== FIX HOVER GAP BUG =====
 * Root cause: OJS head.less uses [data-toggle="dropdown"]:hover + .dropdown-menu
 * When mouse moves from toggle button DOWN to dropdown, there is a gap where
 * mouse leaves the toggle button but hasn't reached the dropdown yet.
 * This causes the dropdown to flash/disappear before the user can click.
 *
 * Fix 1: Remove margin gap between button and dropdown (margin-top was 5px)
 * Fix 2: Add pseudo-element on toggle button to fill the gap with invisible area
 * Fix 3: Also keep dropdown visible when li.profile is hovered
 */

/* Remove the gap - dropdown is flush with button */
.pkp_structure_head .pkp_navigation_user .dropdown-menu,
.pkp_structure_head .pkp_navigation_user ul.dropdown-menu {
    margin-top: 0 !important;
}

/* Extend hover zone downward on the toggle button using ::after pseudo-element
   This creates an INVISIBLE bridge that keeps the :hover active as mouse moves down */
.pkp_structure_head .pkp_navigation_user [data-toggle="dropdown"]::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    height: 10px !important;
    background: transparent !important;
    border: none !important;
    pointer-events: none !important;
    z-index: -1 !important;
}

/* Also show dropdown when the li.profile itself is hovered (broader zone) */
.pkp_structure_head .pkp_navigation_user li.profile:hover > .dropdown-menu,
.pkp_structure_head .pkp_navigation_user li.profile:hover > ul {
    display: block !important;
}

/* Ensure the toggle button has relative positioning for the ::after bridge */
.pkp_structure_head .pkp_navigation_user [data-toggle="dropdown"] {
    position: relative !important;
}

