/*=========================================================
V2026 AI Premium Bottom Navigation
Part 2A
Core Layout + Glass UI
Google SEO 2026
AI Search Ready
=========================================================*/

/*==============================
Root Variables
==============================*/

:root{

    --jl-nav-height:74px;

    --jl-radius:28px;

    --jl-blur:22px;

    --jl-bg:rgba(18,18,20,.82);

    --jl-border:rgba(255,255,255,.08);

    --jl-shadow:
        0 10px 40px rgba(0,0,0,.35);

    --jl-active1:#FFD54F;

    --jl-active2:#FFB300;

    --jl-text:#ECECEC;

    --jl-text-light:#9CA3AF;

    --jl-hover:#ffffff;

    --jl-speed:.35s;

}

/*==============================
Reset
==============================*/

*{

    margin:0;

    padding:0;

    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:
    Inter,
    Arial,
    Helvetica,
    sans-serif;

    background:#0f1115;

    color:#fff;

    min-height:100vh;

    padding-bottom:110px;

}

/*==============================
Bottom Navigation Wrapper
==============================*/

.jl-bottom-nav{

    position:fixed;

    left:16px;

    right:16px;

    bottom:16px;

    z-index:999999;

    pointer-events:none;

}

/*==============================
Navigation Container
==============================*/

.jl-navbar{

    pointer-events:auto;

    width:100%;

    height:var(--jl-nav-height);

    background:var(--jl-bg);

    border-radius:var(--jl-radius);

    border:1px solid var(--jl-border);

    backdrop-filter:blur(var(--jl-blur));

    -webkit-backdrop-filter:blur(var(--jl-blur));

    box-shadow:var(--jl-shadow);

    overflow:hidden;

    position:relative;

}

/* Glass Reflection */

.jl-navbar::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

        180deg,

        rgba(255,255,255,.12),

        rgba(255,255,255,0)

    );

    pointer-events:none;

}

/*==============================
Navigation List
==============================*/

.jl-nav-list{

    list-style:none;

    display:flex;

    justify-content:space-between;

    align-items:center;

    width:100%;

    height:100%;

}

/*==============================
Navigation Item
==============================*/

.jl-nav-li{

    flex:1;

    height:100%;

}

.jl-nav-item{

    width:100%;

    height:100%;

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    gap:5px;

    text-decoration:none;

    color:var(--jl-text-light);

    position:relative;

    transition:

    color var(--jl-speed),

    transform var(--jl-speed);

    user-select:none;

    -webkit-tap-highlight-color:transparent;

}

/*==============================
Icon
==============================*/

.jl-icon{

    width:48px;

    height:48px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    transition:all var(--jl-speed);

    position:relative;

}

/* SVG */

.jl-icon svg{

    width:22px;

    height:22px;

    display:block;

    fill:currentColor;

}

/*==============================
Text
==============================*/

.jl-text{

    font-size:11px;

    font-weight:600;

    letter-spacing:.35px;

    transition:all var(--jl-speed);

}

/*==============================
Hover
==============================*/

.jl-nav-item:hover{

    color:var(--jl-hover);

}

.jl-nav-item:hover .jl-icon{

    transform:

    translateY(-4px)

    scale(1.05);

}

/*==============================
Active
==============================*/

.jl-nav-item.active{

    color:#111;

}

.jl-nav-item.active .jl-icon{

    background:

    linear-gradient(

        135deg,

        var(--jl-active1),

        var(--jl-active2)

    );

    transform:

    translateY(-14px);

    box-shadow:

    0 12px 30px rgba(255,193,7,.45);

}

.jl-nav-item.active .jl-text{

    color:var(--jl-active1);

}

/*==============================
Active Glow
==============================*/

.jl-nav-item.active .jl-icon::before{

    content:"";

    position:absolute;

    inset:-6px;

    border-radius:50%;

    background:

    radial-gradient(

        circle,

        rgba(255,213,79,.35),

        rgba(255,213,79,0)

    );

    z-index:-1;

}

/*==============================
Ripple Layer
==============================*/

.jl-icon::after{

    content:"";

    position:absolute;

    width:100%;

    height:100%;

    border-radius:50%;

    transform:scale(.6);

    opacity:0;

    background:rgba(255,255,255,.18);

    transition:

    transform .45s,

    opacity .45s;

}

.jl-nav-item:active .jl-icon::after{

    transform:scale(1.55);

    opacity:1;

}

/*==============================
Keyboard Accessibility
==============================*/

.jl-nav-item:focus-visible{

    outline:3px solid var(--jl-active1);

    outline-offset:4px;

    border-radius:18px;

}

/*==============================
Hidden AI Navigation Description
==============================*/

.jl-ai-navigation-description{

    position:absolute;

    width:1px;

    height:1px;

    left:-99999px;

    overflow:hidden;

    opacity:0;

}

/*==============================
Reduced Motion
==============================*/

@media (prefers-reduced-motion:reduce){

*{

    animation:none !important;

    transition:none !important;

}

}

/* Ripple Animation */
.jl-ripple::after{
    animation: jlRipple .45s ease;
}

@keyframes jlRipple{
    0%{
        transform:scale(.6);
        opacity:.35;
    }
    100%{
        transform:scale(1.6);
        opacity:0;
    }
}

/* Ready */
.jl-bottom-nav{
    opacity:0;
    transform:translateY(12px);
    transition:opacity .3s ease, transform .3s ease;
}

.jl-bottom-nav.jl-ready{
    opacity:1;
    transform:translateY(0);
}

/* Reduced Motion */
.reduced-motion *,
.reduced-motion *::before,
.reduced-motion *::after{
    animation:none !important;
    transition:none !important;
}