:root{
    --fth2-bg:#111318;
    --fth2-panel:#191d24;
    --fth2-border:#2d333d;
    --fth2-text:#f7f8fa;
    --fth2-muted:#aeb6c2;
    --fth2-accent:#249dff;
}

#fth2-header,
#fth2-header *{
    box-sizing:border-box;
}

#fth2-header{
    width:100%;
    background:var(--fth2-bg);
    border-bottom:1px solid var(--fth2-border);
    position:relative;
    z-index:99999;
    font-family:Arial,Helvetica,sans-serif;
}

#fth2-header .fth2-inner{
    width:min(1180px,calc(100% - 28px));
    margin:0 auto;
    padding:14px 0 0;
}

#fth2-header .fth2-logo{
    display:block;
    width:max-content;
    margin:0 auto 13px;
    color:#fff;
    font-size:29px;
    line-height:1;
    font-weight:900;
    letter-spacing:-1.2px;
    text-decoration:none;
}

#fth2-header .fth2-logo span{
    color:var(--fth2-accent);
}

#fth2-header .fth2-search{
    display:flex;
    width:min(760px,100%);
    margin:0 auto 13px;
    border:1px solid var(--fth2-border);
    border-radius:5px;
    overflow:hidden;
    background:var(--fth2-panel);
}

#fth2-header .fth2-search input{
    flex:1;
    min-width:0;
    height:43px;
    padding:0 14px;
    border:0;
    outline:0;
    background:transparent;
    color:var(--fth2-text);
    font-size:15px;
}

#fth2-header .fth2-search input::placeholder{
    color:var(--fth2-muted);
}

#fth2-header .fth2-search button{
    border:0;
    padding:0 21px;
    background:var(--fth2-accent);
    color:#fff;
    font-weight:800;
    cursor:pointer;
}

#fth2-header .fth2-menu{
    min-height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    position:relative;
}

#fth2-header .fth2-menu > a,
#fth2-header .fth2-cat-button{
    min-height:50px;
    display:flex;
    align-items:center;
    gap:7px;
    padding:0 15px;
    border:0;
    background:transparent;
    color:var(--fth2-text);
    text-decoration:none;
    font-size:14px;
    font-weight:800;
    cursor:pointer;
}

#fth2-header .fth2-menu > a:hover,
#fth2-header .fth2-menu > a:focus,
#fth2-header .fth2-cat-button:hover,
#fth2-header .fth2-cat-button:focus{
    color:var(--fth2-accent);
    background:rgba(255,255,255,.035);
}

#fth2-header .fth2-hamb{
    font-size:18px;
    line-height:1;
}

#fth2-header .fth2-arrow{
    font-size:11px;
    transition:transform .2s ease;
}

#fth2-header .fth2-cat-button[aria-expanded="true"] .fth2-arrow{
    transform:rotate(180deg);
}

#fth2-header .fth2-categories{
    position:relative;
}

#fth2-header .fth2-category-panel{
    display:none;
    position:absolute;
    left:0;
    top:100%;
    width:min(820px,calc(100vw - 28px));
    padding:14px;
    background:#15181e;
    border:1px solid var(--fth2-border);
    border-radius:0 0 8px 8px;
    box-shadow:0 14px 35px rgba(0,0,0,.35);
}

#fth2-header .fth2-category-panel.is-open{
    display:block;
}

#fth2-header .fth2-category-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:7px;
    max-height:380px;
    overflow:auto;
}

#fth2-header .fth2-category-link{
    display:block;
    padding:10px 11px;
    border-radius:5px;
    background:#1c2028;
    color:#e9edf3;
    text-decoration:none;
    font-size:13px;
    font-weight:700;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

#fth2-header .fth2-category-link:hover,
#fth2-header .fth2-category-link:focus{
    color:#fff;
    background:var(--fth2-accent);
}

#fth2-header .fth2-empty{
    grid-column:1/-1;
    padding:12px;
    color:var(--fth2-muted);
}

@media (max-width:760px){
    #fth2-header .fth2-inner{
        width:calc(100% - 18px);
        padding-top:12px;
    }

    #fth2-header .fth2-logo{
        font-size:25px;
    }

    #fth2-header .fth2-menu{
        justify-content:flex-start;
        overflow:visible;
    }

    #fth2-header .fth2-menu > a,
    #fth2-header .fth2-cat-button{
        padding:0 11px;
        font-size:13px;
    }

    #fth2-header .fth2-category-panel{
        position:fixed;
        left:9px;
        right:9px;
        top:auto;
        width:auto;
    }

    #fth2-header .fth2-category-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        max-height:55vh;
    }
}

@media (max-width:460px){
    #fth2-header .fth2-menu{
        flex-wrap:wrap;
        justify-content:center;
    }

    #fth2-header .fth2-search button{
        padding:0 14px;
    }
}