/* ============================================================
   NURSING GENIUS JOURNAL
   HOMEPAGE HERO HEADER — OJS 3.4 + IMMERSION THEME
   Tujuan:
   1) Hilangkan judul putih ganda tetapi pertahankan H1 untuk aksesibilitas
   2) Tinggi hero desktop 420px
   3) Menu navigasi menjadi glass-overlay di bagian bawah banner
   4) Pertahankan Homepage Image sebagai visual utama
   ============================================================ */

/* =========================
   HOMEPAGE HERO
   ========================= */

body.page_index.op_index .main-header {
    position: relative !important;
    min-height: 420px !important;
    height: 420px !important;

    /* Immersion memakai Homepage Image sebagai background */
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;

    overflow: visible !important;
    isolation: isolate;
}

/* Subtle readability layer; tidak menutupi desain banner */
body.page_index.op_index .main-header::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background:
        linear-gradient(
            180deg,
            rgba(0, 20, 65, 0.02) 0%,
            rgba(0, 20, 65, 0.00) 58%,
            rgba(0, 20, 65, 0.16) 100%
        );
}

body.page_index.op_index .main-header > .container-fluid {
    position: relative !important;
    z-index: 1;
    width: 100% !important;
    max-width: none !important;
    min-height: 420px !important;
    height: 420px !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
}

/* ============================================================
   HILANGKAN JUDUL GANDA
   Jangan display:none agar H1 tetap tersedia bagi screen reader.
   ============================================================ */

body.page_index.op_index .main-header__title {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* Pastikan kotak putih bawaan Immersion tidak muncul */
body.page_index.op_index .main-header__title .is_text,
body.page_index.op_index .main-header__title .is_text span {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* ============================================================
   ADMIN / USER MENU — kanan atas
   ============================================================ */

body.page_index.op_index .main-header__admin {
    position: absolute !important;
    top: 16px !important;
    right: 22px !important;
    left: auto !important;
    z-index: 30 !important;

    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 6px !important;

    width: auto !important;
    margin: 0 !important;
}

body.page_index.op_index .main-header__admin a,
body.page_index.op_index .main-header__admin button,
body.page_index.op_index .main-header__admin .nav-link {
    background: rgba(4, 19, 67, 0.78) !important;
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,.30) !important;
    border-radius: 8px !important;
    padding: 8px 12px !important;
    text-decoration: none !important;
    box-shadow: 0 5px 18px rgba(0,0,0,.14) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

body.page_index.op_index .main-header__admin a:hover,
body.page_index.op_index .main-header__admin a:focus {
    background: rgba(9, 2, 106, .92) !important;
    color: #ffbd1a !important;
}

/* ============================================================
   NAVIGATION GLASS OVERLAY
   Pilihan C: overlay tipis dan rapi di atas bagian bawah hero
   ============================================================ */

body.page_index.op_index .main-header__nav {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    bottom: 16px !important;
    top: auto !important;
    transform: translateX(-50%) !important;

    z-index: 25 !important;

    width: min(1500px, calc(100% - 64px)) !important;
    max-width: 1500px !important;

    margin: 0 !important;
    padding: 8px 14px !important;

    border: 1px solid rgba(255,255,255,.35) !important;
    border-radius: 14px !important;

    background: rgba(4, 20, 72, .68) !important;
    box-shadow:
        0 10px 30px rgba(0,0,0,.20),
        inset 0 1px 0 rgba(255,255,255,.12) !important;

    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Pastikan menu utama mengambil ruang penuh dan berada di tengah */
body.page_index.op_index .main-header__nav #main-menu {
    width: 100% !important;
    justify-content: center !important;
}

body.page_index.op_index .main-header__nav .navbar-collapse {
    justify-content: center !important;
}

body.page_index.op_index #navigationPrimary {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    gap: 3px 5px !important;
}

/* Hilangkan box putih bawaan tiap menu */
body.page_index.op_index #navigationPrimary > li > a,
body.page_index.op_index .main-header__nav-link,
body.page_index.op_index .main-header__nav .nav-link {
    margin: 0 2px !important;
    padding: 9px 14px !important;

    border: 1px solid transparent !important;
    border-radius: 7px !important;

    background: transparent !important;
    color: #ffffff !important;

    font-family: "Roboto", Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;

    text-decoration: none !important;
    box-shadow: none !important;

    transition:
        background-color .18s ease,
        color .18s ease,
        border-color .18s ease,
        transform .18s ease !important;
}

body.page_index.op_index #navigationPrimary > li > a:hover,
body.page_index.op_index #navigationPrimary > li > a:focus,
body.page_index.op_index .main-header__nav-link:hover,
body.page_index.op_index .main-header__nav-link:focus {
    background: rgba(255, 184, 0, .16) !important;
    border-color: rgba(255, 196, 44, .65) !important;
    color: #ffd35a !important;
    transform: translateY(-1px);
}

/* Dropdown tetap jelas terbaca */
body.page_index.op_index .main-header__nav .dropdown-menu {
    margin-top: 7px !important;
    padding: 7px !important;

    border: 1px solid rgba(8, 34, 100, .14) !important;
    border-radius: 10px !important;

    background: rgba(255,255,255,.98) !important;
    box-shadow: 0 14px 35px rgba(0,0,0,.20) !important;
}

body.page_index.op_index .main-header__nav .dropdown-menu a {
    margin: 0 !important;
    padding: 9px 11px !important;
    border-radius: 6px !important;

    color: #09026a !important;
    background: transparent !important;

    font-size: 13px !important;
}

body.page_index.op_index .main-header__nav .dropdown-menu a:hover,
body.page_index.op_index .main-header__nav .dropdown-menu a:focus {
    color: #09026a !important;
    background: #eef6ff !important;
}

/* Jika Search muncul di nav */
body.page_index.op_index .main-header__nav .pkp_search,
body.page_index.op_index .main-header__nav [href*="/search"] {
    color: #ffffff !important;
}

/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 991px) {
    body.page_index.op_index .main-header,
    body.page_index.op_index .main-header > .container-fluid {
        min-height: 360px !important;
        height: 360px !important;
    }

    body.page_index.op_index .main-header {
        background-position: center center !important;
    }

    body.page_index.op_index .main-header__nav {
        width: calc(100% - 32px) !important;
        bottom: 12px !important;
        padding: 7px 10px !important;
    }

    body.page_index.op_index #navigationPrimary > li > a,
    body.page_index.op_index .main-header__nav-link,
    body.page_index.op_index .main-header__nav .nav-link {
        padding: 8px 10px !important;
        font-size: 13px !important;
    }
}

/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 575px) {
    body.page_index.op_index .main-header,
    body.page_index.op_index .main-header > .container-fluid {
        min-height: 300px !important;
        height: 300px !important;
    }

    /* Fokus ke logo/tengah visual saat layar kecil */
    body.page_index.op_index .main-header {
        background-position: 46% center !important;
    }

    body.page_index.op_index .main-header > .container-fluid {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.page_index.op_index .main-header__admin {
        top: 8px !important;
        right: 8px !important;
        transform: scale(.90);
        transform-origin: top right;
    }

    body.page_index.op_index .main-header__nav {
        bottom: 8px !important;
        width: calc(100% - 18px) !important;
        padding: 6px 8px !important;
        border-radius: 10px !important;
    }

    body.page_index.op_index .main-header__nav .navbar-toggler {
        margin: 0 auto !important;
        border: 1px solid rgba(255,255,255,.35) !important;
        color: #fff !important;
        background: rgba(255,255,255,.08) !important;
    }

    /* Saat menu mobile dibuka, beri panel gelap agar terbaca */
    body.page_index.op_index .main-header__nav .navbar-collapse.show,
    body.page_index.op_index .main-header__nav .navbar-collapse.collapsing {
        margin-top: 8px !important;
        padding: 8px !important;
        border-radius: 8px !important;
        background: rgba(4,20,72,.94) !important;
        max-height: 210px;
        overflow-y: auto;
    }

    body.page_index.op_index #navigationPrimary {
        display: block !important;
    }

    body.page_index.op_index #navigationPrimary > li {
        display: block !important;
        width: 100% !important;
    }

    body.page_index.op_index #navigationPrimary > li > a {
        display: block !important;
        width: 100% !important;
        padding: 8px 10px !important;
    }
}
