/* ==========================================
   UFF BHABHI
   PREMIUM FLOATING NAVBAR
========================================== */

.navbar{

    position:fixed;

    top:18px;

    left:0;

    width:100%;

    z-index:9999;

    transition:.35s;
    isolation:auto;

}

/* ============================= */

.nav-container{

    width:min(1600px,94%);

    margin:auto;

    height:82px;

    padding:0 28px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    border-radius:24px;

    background:var(--glass-bg);

    backdrop-filter:blur(22px);
    -webkit-backdrop-filter:blur(22px);

    border:1px solid var(--glass-border);

    box-shadow:var(--shadow);

    transition:.35s;

}

/* ============================= */

.navbar.scrolled .nav-container{

    backdrop-filter:blur(28px);

    box-shadow:

        0 12px 35px rgba(0,0,0,.18),

        0 0 30px rgba(224,0,108,.08);

}

/* =======================================
LOGO
======================================= */

.logo{

    display:flex;

    align-items:center;

}

.logo img{

    height:62px;

    width:auto;

    transition:.35s;

}

.logo:hover img{

    transform:scale(1.05);

}

/* =======================================
MENU
======================================= */

.nav-menu{

    display:flex;

    align-items:center;

    gap:42px;

    list-style:none;

}

.nav-menu a{

    position:relative;

    font-size:15px;

    font-weight:600;

    color:var(--heading);

    transition:.35s;

}

.nav-menu a::after{

    content:"";

    position:absolute;

    left:50%;

    bottom:-8px;

    width:0;

    height:3px;

    border-radius:50px;

    background:linear-gradient(

        90deg,

        var(--primary),

        var(--secondary)

    );

    transition:.35s;

    transform:translateX(-50%);

}

/* Default */

.nav-menu a{

    position:relative;

    color:var(--heading);

}

/* Hover */

.nav-menu a:hover{

    color:var(--primary);

}

.nav-menu a:hover::after{

    width:100%;

}

/* Active Page */

/* Active Menu */

.nav-menu a.active{

    font-weight:700;

    background:linear-gradient(
        180deg,
        #E6C15A 0%,
        #C78A1C 35%,
        #8B5A00 100%
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;

}

.nav-menu a.active::after{

    width:100%;

    background:linear-gradient(
        90deg,
        #8B5A00,
        #C78A1C,
        #E6C15A
    );

}

.nav-menu a{

    color:var(--heading);

}

.nav-menu a:visited{

    color:var(--heading);

}

.nav-menu a:hover{

    background:linear-gradient(
        90deg,
        var(--primary),
        var(--secondary)
    );

    -webkit-background-clip:text;
    -webkit-text-fill-color:transparent;
    background-clip:text;
}

.nav-menu a.active{

    color:var(--gold);

    font-weight:700;
}

.nav-menu a.active::after{

    width:100%;

    background:var(--gold);
}

/* =======================================
RIGHT
======================================= */

.nav-right{

    display:flex;

    align-items:center;

    gap:14px;

}

/* =======================================
ICON BUTTONS
======================================= */

.icon-btn{

    width:46px;

    height:46px;

    display:flex;

    justify-content:center;

    align-items:center;

    border-radius:50%;

    cursor:pointer;

    border:none;

    background:rgba(255,255,255,.35);

    border:1px solid rgba(255,255,255,.55);

    transition:.35s;

}

.icon-btn:hover{

    transform:translateY(-3px);

    box-shadow:var(--shadow-magenta);

}

.icon-btn i{

    font-size:17px;

    color:var(--heading);

}

/* =======================================
LOGIN
======================================= */

.login-btn{

    display:flex;

    align-items:center;

    justify-content:center;

    padding:14px 28px;

    border-radius:16px;

    font-weight:600;

    color:#fff;

    background:

    linear-gradient(

        135deg,

        var(--primary),

        var(--primary-hover)

    );

    box-shadow:var(--shadow-magenta);

    transition:.35s;

}

.login-btn:hover{

    transform:translateY(-4px);

}

/* =======================================
MENU BUTTON
======================================= */

.menu-toggle{

    display:none;

    width:48px;

    height:48px;

    border:none;

    background:none;

    cursor:pointer;

    flex-direction:column;

    justify-content:center;

    gap:5px;

}

.menu-toggle span{
    
    width:26px;

    height:2px;

    background:var(--heading);

    transition:.35s;

}



/* =======================================
DARK
======================================= */

[data-theme="dark"] .icon-btn{

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.08);

}

[data-theme="dark"] .nav-container{

    background:rgba(15,15,15,.72);

}

/* =======================================
RESPONSIVE
======================================= */

@media(max-width:992px){

.nav-menu{

display:none;

}

.login-btn{

display:none;

}

.menu-toggle{

display:flex;

}

}

@media(max-width:768px){

.nav-container{

height:74px;

padding:0 18px;

}

.logo img{

height:54px;

}

}

/* ==========================================
   THEME BUTTON
========================================== */

/* ==========================================
   PREMIUM THEME SWITCH
========================================== */

.theme-switch{

    width:92px;
    height:46px;

    padding:4px;

    display:flex;
    align-items:center;
    justify-content:space-between;

    position:relative;

    cursor:pointer;

    border-radius:100px;

    background:rgba(255,255,255,.55);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.75);

    transition:.4s;

    overflow:hidden;

}

.theme-icon{

    width:32px;
    height:32px;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:14px;

    z-index:2;

}

.theme-icon.sun{

    color:#F5C542;

}

.theme-icon.moon{

    color:#777;

}

.theme-slider{

    position:absolute;

    left:4px;
    top:4px;

    width:38px;
    height:38px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #FFD95B,
        #F5C542
    );

    display:flex;
    align-items:center;
    justify-content:center;

    transition:.45s cubic-bezier(.68,-0.55,.27,1.55);

    box-shadow:
        0 0 18px rgba(245,197,66,.45);

}

.theme-knob{

    width:38px;
    height:38px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    background:linear-gradient(
        135deg,
        #FFD95B,
        #F5C542
    );

    color:#fff;

    position:absolute;

    left:4px;
    top:4px;

    transition:all .45s cubic-bezier(.68,-0.55,.27,1.55);

    box-shadow:0 0 18px rgba(245,197,66,.35);

}

.theme-knob i{

    color:#fff;

    font-size:15px;

    transition:
        transform .45s ease,
        opacity .35s ease;

}

[data-theme="dark"] .theme-knob{

    left:50px;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--secondary)
    );

}

[data-theme="dark"] .theme-knob i{

    transform:rotate(360deg);

}


/* Dark Theme */

[data-theme="dark"] .theme-switch{

    background:rgba(25,25,25,.55);

    border:1px solid rgba(255,255,255,.08);

}

[data-theme="dark"] .theme-slider{

    transform:translateX(46px);

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--secondary)
    );

    box-shadow:
        0 0 22px rgba(224,0,108,.45);

}

/* ==========================================
   NAVBAR SEARCH
========================================== */

.nav-search{
    position: relative;
    display: flex;
    align-items: center;
}

.navbar-search-form{
    position: absolute;
    right: 45px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    transition: all .35s ease;
}

.navbar-search-form.active{
    width: 260px;
    opacity: 1;
    visibility: visible;
}

.navbar-search-form input{
    width: 100%;
    height: 42px;
    border: none;
    outline: none;
    border-radius: 50px;
    padding: 0 18px;
    font-size: 14px;
    background: var(--card-bg);
    color: var(--text-color);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(12px);
}

.navbar-search-form input::placeholder{
    color: var(--text-muted);
}

[data-theme="dark"] .navbar-search-form input{
    background: rgba(255,255,255,.06);
}

/* Mobile Menu */
/* ==========================================
   MOBILE DRAWER
========================================== */

.mobile-overlay{

    position:fixed;
    inset:0;

    background:rgba(0,0,0,.45);

    backdrop-filter:blur(6px);

    opacity:0;
    visibility:hidden;

    transition:.35s;

    z-index:9997;

}

.mobile-overlay.active{

    opacity:1;
    visibility:visible;

}

.mobile-drawer{

    position:fixed;

    top:0;
    right:-360px;

    width:320px;
    max-width:85vw;

    height:100vh;

    padding:30px 25px;

    display:flex;
    flex-direction:column;

    background:var(--glass-bg);

    backdrop-filter:blur(25px);
    -webkit-backdrop-filter:blur(25px);

    border-left:1px solid var(--glass-border);

    box-shadow:-10px 0 40px rgba(0,0,0,.18);

    transition:right .4s cubic-bezier(.22,1,.36,1);

    z-index:9998;

}

.mobile-drawer.active{

    right:0;

}

/* ========================= */

.mobile-drawer-header{

    text-align:center;

    margin-bottom:40px;

}

.mobile-drawer-header img{

    height:60px;
    width:auto;

}

/* ========================= */

.mobile-menu{

    list-style:none;

    display:flex;
    flex-direction:column;

    gap:8px;

    margin:0;
    padding:0;

}

.mobile-menu a{

    display:block;

    padding:15px 18px;

    border-radius:16px;

    font-size:16px;
    font-weight:600;

    color:var(--heading);

    transition:.3s;

}

.mobile-menu a:hover{

    background:rgba(255,255,255,.08);

    color:var(--primary);

    transform:translateX(8px);

}

.mobile-menu a.active{

    background:linear-gradient(
        135deg,
        rgba(224,0,108,.15),
        rgba(65,105,225,.15)
    );

    color:var(--gold);

}

/* ========================= */

.mobile-login-btn{

    margin-top:auto;

    display:flex;
    justify-content:center;
    align-items:center;

    height:54px;

    border-radius:18px;

    font-weight:700;

    color:#fff;

    background:linear-gradient(
        135deg,
        var(--primary),
        var(--primary-hover)
    );

    box-shadow:var(--shadow-magenta);

}

/* ========================= */

@media(min-width:993px){

    .mobile-drawer,
    .mobile-overlay{

        display:none;

    }

}

/* ==========================================
   HAMBURGER → X ANIMATION
========================================== */

.menu-toggle{

    position:relative;

}

.menu-toggle span{

    transform-origin:center;

    transition:
        transform .35s ease,
        opacity .25s ease,
        width .35s ease;

}

/* Top */

.menu-toggle.active span:nth-child(1){

    transform:
        translateY(7px)
        rotate(45deg);

}

/* Middle */

.menu-toggle.active span:nth-child(2){

    opacity:0;

    transform:scaleX(0);

}

/* Bottom */

.menu-toggle.active span:nth-child(3){

    transform:
        translateY(-7px)
        rotate(-45deg);

}

/* ======================================================
   Account Menu
   Premium Glassmorphic / Gold
====================================================== */

.account-menu{
    position:relative;
    z-index:1000;
}


/* ======================================================
   Account Button
====================================================== */

.account-btn{
    position:relative;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:9px;
    white-space:nowrap;

    min-width:190px;
    height:58px;

    padding:6px 15px 6px 8px;

    border-radius:16px;

    border:1px solid rgba(245,197,66,.75);

    background:
        linear-gradient(
            135deg,
            rgba(224,0,108,.92),
            rgba(190,0,95,.78)
        );

    color:#fff;

    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);

    box-shadow:
        0 0 0 1px rgba(245,197,66,.10),
        0 8px 25px rgba(224,0,108,.28),
        0 0 25px rgba(245,197,66,.12);

    cursor:pointer;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.account-btn:hover{

    transform:translateY(-2px);

    border-color:#F5C542;

    box-shadow:
        0 10px 30px rgba(224,0,108,.38),
        0 0 30px rgba(245,197,66,.22);
}


/* ======================================================
   Avatar
====================================================== */

.account-avatar{
    width:42px;
    height:42px;

    flex-shrink:0;

    border-radius:50%;

    object-fit:cover;

    border:2px solid #F5C542;

    display:block;

    background:rgba(255,255,255,.10);

    box-shadow:
        0 0 0 3px rgba(245,197,66,.12),
        0 0 15px rgba(245,197,66,.28);

    transition:.25s ease;
}

.account-btn:hover .account-avatar{

    transform:scale(1.05);

    box-shadow:
        0 0 0 4px rgba(245,197,66,.16),
        0 0 20px rgba(245,197,66,.40);
}


/* ======================================================
   Username
====================================================== */

.account-btn span{

    max-width:110px;

    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;

    color:#fff;

    font-size:.90rem;
    font-weight:600;
}


/* ======================================================
   Chevron
====================================================== */

.account-btn > i{

    font-size:.72rem;

    color:#F5C542;

    transition:
        transform .25s ease,
        color .25s ease;
}

.account-menu.open .account-btn > i{

    transform:rotate(180deg);

    color:#fff;
}


/* ======================================================
   Account Dropdown
====================================================== */

.account-dropdown{

    position:absolute;

    top:calc(100% + 12px);

    right:0;

    width:235px;

    padding:10px;

    border-radius:18px;

    background:
        linear-gradient(
            145deg,
            rgba(28,18,27,.90),
            rgba(15,10,17,.86)
        );

    border:1px solid rgba(245,197,66,.45);

    backdrop-filter:blur(24px);
    -webkit-backdrop-filter:blur(24px);

    box-shadow:
        0 20px 50px rgba(0,0,0,.48),
        0 0 25px rgba(245,197,66,.10),
        0 0 35px rgba(224,0,108,.08);

    opacity:0;
    visibility:hidden;

    transform:
        translateY(-8px)
        scale(.97);

    transform-origin:top right;

    transition:
        opacity .22s ease,
        visibility .22s ease,
        transform .22s ease;

    z-index:1000;
}


/* ======================================================
   OPEN STATE
====================================================== */

.account-menu.open .account-dropdown{

    opacity:1;

    visibility:visible;

    transform:
        translateY(0)
        scale(1);
}


/* ======================================================
   Dropdown Links
====================================================== */

.account-dropdown a{

    display:flex;

    align-items:center;

    gap:13px;

    min-height:48px;

    padding:0 13px;

    border-radius:11px;

    color:rgba(255,255,255,.88);

    text-decoration:none;

    font-size:.90rem;

    font-weight:500;

    transition:
        background .22s ease,
        color .22s ease,
        transform .22s ease;
}

.account-dropdown a i{

    width:18px;

    flex-shrink:0;

    text-align:center;

    color:rgba(245,197,66,.78);

    font-size:.92rem;

    transition:.22s ease;
}

.account-dropdown a:hover{

    background:
        linear-gradient(
            90deg,
            rgba(224,0,108,.22),
            rgba(245,197,66,.08)
        );

    color:#fff;

    transform:translateX(3px);
}

.account-dropdown a:hover i{

    color:#F5C542;

    transform:scale(1.1);
}


/* ======================================================
   Divider
====================================================== */

.account-dropdown hr{

    margin:8px 4px;

    border:0;

    border-top:1px solid rgba(245,197,66,.18);
}


/* ======================================================
   Logout
====================================================== */

.account-dropdown a:last-child{

    color:rgba(255,255,255,.84);
}

.account-dropdown a:last-child i{

    color:#F5C542;
}

.account-dropdown a:last-child:hover{

    background:rgba(224,0,108,.18);

    color:#fff;
}

.account-dropdown a:last-child:hover i{

    color:#F5C542;
}


/* ======================================================
   Mobile
====================================================== */

@media (max-width:768px){

    .account-menu{
        display:none;
    }

}