/* ==========================================================================
   NAVBAR PUBLIK
   ========================================================================== */


/* ==========================================================================
   1. NAVBAR UTAMA
   ========================================================================== */

.navbar {

    background: linear-gradient(
        135deg,
        #0f6cb9 0%,
        #06416e 100%
    );

    border-bottom: 1px solid rgba(255, 255, 255, 0.15);

    box-shadow:
        0 4px 18px rgba(104, 190, 255, 0.18);

    transition: all 0.3s ease;

}


/* ==========================================================================
   2. BRAND / LOGO
   ========================================================================== */

.navbar-brand {

    text-decoration: none;

    transition: transform 0.2s ease;

}


.navbar-brand:hover {

    transform: translateY(-1px);

}


.navbar-brand img {

    object-fit: contain;

}


/* ==========================================================================
   3. MENU NAVBAR
   ========================================================================== */

.navbar .nav-link {

    position: relative;

    margin: 0 3px;

    padding: 10px 14px !important;

    color: rgba(255, 255, 255, 0.90);

    font-weight: 500;

    border-radius: 8px;

    transition:
        color 0.25s ease,
        background-color 0.25s ease,
        transform 0.25s ease;

}


/* ==========================================================================
   4. MENU HOVER
   ========================================================================== */

.navbar .nav-link:hover {

    color: #ffffff;

    background: rgba(255, 255, 255, 0.15);

    transform: translateY(-1px);

}


/* ==========================================================================
   5. GARIS BAWAH MENU
   ========================================================================== */

.navbar .nav-link::after {

    content: "";

    position: absolute;

    left: 50%;
    bottom: 4px;

    width: 0;
    height: 2px;

    background: #ffffff;

    border-radius: 10px;

    transform: translateX(-50%);

    transition: width 0.25s ease;

}


.navbar .nav-link:hover::after {

    width: 25px;

}


/* ==========================================================================
   6. MENU AKTIF
   ========================================================================== */

.navbar .nav-link.active {

    color: #ffffff;

    background: rgba(255, 255, 255, 0.18);

    font-weight: 600;

}


.navbar .nav-link.active::after {

    width: 25px;

}


/* ==========================================================================
   7. DROPDOWN MENU
   ========================================================================== */

.dropdown-menu {

    margin-top: 8px;

    padding: 7px;

    background: #ffffff;

    border: 1px solid #dceaf5;

    border-radius: 10px;

    box-shadow:
        0 10px 30px rgba(30, 100, 160, 0.15);

}


/* ==========================================================================
   8. ITEM DROPDOWN
   ========================================================================== */

.dropdown-item {

    padding: 9px 14px;

    color: #334155;

    border-radius: 7px;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        padding-left 0.2s ease;

}


.dropdown-item:hover {

    padding-left: 18px;

    background: #eaf4ff;

    color: #1677c8;

}


/* ==========================================================================
   9. DROPDOWN ANIMATION
   ========================================================================== */

@keyframes dropdownFade {

    from {

        opacity: 0;

        transform: translateY(-5px);

    }

    to {

        opacity: 1;

        transform: translateY(0);

    }

}


/* ==========================================================================
   10. DROPDOWN HOVER - DESKTOP
   ==========================================================================
   
   Pada komputer:
   
   - Tidak perlu klik
   - Cukup arahkan mouse ke menu
   - Dropdown langsung muncul
   
   Bootstrap tetap digunakan untuk mobile.
   
   ========================================================================== */

@media (min-width: 992px) {


    /* --------------------------------------------------------------
       Area menu dropdown
       -------------------------------------------------------------- */

    .navbar .nav-item.dropdown {

        position: relative;

    }


    /* --------------------------------------------------------------
       Kondisi awal dropdown
       -------------------------------------------------------------- */

    .navbar .nav-item.dropdown > .dropdown-menu {

        display: block;

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        margin-top: 0;

        transform:
            translateY(10px)
            scale(0.98);

        transform-origin: top center;

        transition:
            opacity 0.2s ease,
            transform 0.2s ease,
            visibility 0.2s ease;

    }


    /* --------------------------------------------------------------
       Mouse diarahkan ke menu parent
       -------------------------------------------------------------- */

    .navbar .nav-item.dropdown:hover > .dropdown-menu {

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform:
            translateY(0)
            scale(1);

    }

}


/* ==========================================================================
   11. MOBILE NAVBAR
   ==========================================================================
   
   Pada HP:
   
   - Menu tetap menggunakan Bootstrap
   - Dropdown dibuka dengan tap / klik
   - Hover tidak digunakan
   
   ========================================================================== */

@media (max-width: 991.98px) {


    /* --------------------------------------------------------------
       Menu utama
       -------------------------------------------------------------- */

    .navbar .nav-link {

        margin: 2px 0;

        padding: 10px 0 !important;

    }


    /* --------------------------------------------------------------
       Matikan efek naik ketika hover
       -------------------------------------------------------------- */

    .navbar .nav-link:hover {

        transform: none;

    }


    /* --------------------------------------------------------------
       Garis bawah menu tidak diperlukan di mobile
       -------------------------------------------------------------- */

    .navbar .nav-link::after {

        display: none;

    }


    /* --------------------------------------------------------------
       Dropdown mobile
       -------------------------------------------------------------- */

    .dropdown-menu {

        margin-top: 0;

        border: none;

        box-shadow: none;

        background: rgba(255, 255, 255, 0.08);

    }


    /* --------------------------------------------------------------
       Item dropdown
       -------------------------------------------------------------- */

    .dropdown-item {

        color: #ffffff;

    }


    .dropdown-item:hover {

        background: rgba(255, 255, 255, 0.15);

        color: #ffffff;

    }

}


/* ==========================================================================
   12. MOBILE KECIL
   ========================================================================== */

@media (max-width: 575.98px) {


    /* --------------------------------------------------------------
       Sembunyikan tulisan kecil pada brand
       -------------------------------------------------------------- */

    .navbar-brand small {

        display: none;

    }


    /* --------------------------------------------------------------
       Ukuran logo
       -------------------------------------------------------------- */

    .navbar-brand img {

        height: 40px;

    }

}