/* NAV */
.navbar{
    position:fixed;
    inset:0 0 auto;
    z-index:1000;
    height:var(--nav-h);
    background:rgba(5,10,20,.82);
    backdrop-filter:blur(16px);
    border-bottom:1px solid var(--card-border);
}

.nav-inner{
    height:100%;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:16px;
    min-width:0;
    overflow:visible;
}

.logo{
    display:flex;
    align-items:center;
    gap:12px;
    text-decoration:none;
    flex-shrink:0;
}

.logo img{
    width:48px;
    height:48px;
    border-radius:50%;
    object-fit:cover;
    border:2px solid rgba(255,255,255,.12);
}

.logo-text{
    display:flex;
    flex-direction:column;
    font-family:var(--font-primary);
    font-weight:800;
    letter-spacing:.04em;
}

.logo-text-line{
    display:block;
    white-space:nowrap;
}

.logo-text-line--sub{
    font-size:13px;
    line-height:1.15;
}

.logo-text-line:not(.logo-text-line--sub){
    font-size:18px;
    line-height:1.1;
}

/* Logo текст — mobile (navbar) */
@media(max-width:768px){
    .navbar .logo-text-line--sub{
        font-size:10px;
        line-height:1.1;
    }

    .navbar .logo-text-line:not(.logo-text-line--sub){
        font-size:14px;
        line-height:1.1;
    }
}

.nav-menu{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:nowrap;
    gap:20px;
    min-width:0;
    max-height:100%;
    overflow:hidden;
    align-self:center;
    justify-self:center;
    pointer-events:none;
}

.nav-menu a{
    text-decoration:none;
    font-family:var(--font-primary);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    color:rgba(255,255,255,.88);
    padding:6px 0;
    border-bottom:2px solid transparent;
    transition:color .2s,border-color .2s;
    white-space:nowrap;
    flex-shrink:0;
    pointer-events:auto;
}

.nav-menu a:hover,
.nav-menu a.is-active{
    color:#fff;
    border-bottom-color:var(--red);
}

.nav-right{
    display:flex;
    align-items:center;
    gap:8px;
    flex-shrink:0;
    position:relative;
    z-index:2;
}

.nav-right .nav-user,
.nav-right .nav-notifications,
.nav-right .search-btn,
.nav-right .nav-submit-icon{
    flex-shrink:0;
}

.nav-submit-btn{
    white-space:nowrap;
    flex-shrink:0;
    height:29px;
    padding:0 10px;
    font-size:9px;
    gap:5px;
}

.nav-submit-btn .icon{
    width:14px;
    height:14px;
}

/* По-компактни иконки и профил в header */
.navbar .search-btn,
.navbar .nav-notifications__toggle{
    width:29px;
    height:29px;
    border-radius:7px;
}

.navbar .search-btn .icon,
.navbar .nav-notifications__toggle .icon,
.navbar .nav-notifications__toggle svg{
    width:14px;
    height:14px;
    max-width:14px;
    max-height:14px;
}

.navbar .nav-user__toggle{
    height:29px;
    padding:0 7px 0 3px;
    gap:5px;
}

.navbar .nav-user__avatar{
    width:22px;
    height:22px;
}

.navbar .nav-user__name{
    font-size:10px;
    max-width:82px;
}

.navbar .nav-user__chevron{
    width:14px;
    height:14px;
}

.navbar .nav-user__chevron .icon{
    width:12px;
    height:12px;
}

@media (min-width:769px) and (max-width:1320px){
    .nav-menu{
        gap:12px;
    }

    .nav-menu a{
        font-size:11px;
        letter-spacing:.05em;
    }

    .nav-submit-btn{
        padding:0 8px;
        font-size:9px;
    }

    .nav-user__name{
        max-width:61px;
    }
}

.search-btn{
    width:29px;
    height:29px;
    border-radius:7px;
    border:1px solid var(--card-border);
    background:rgba(255,255,255,.04);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition:background .2s;
}

.search-btn:hover{background:rgba(255,255,255,.1)}

.search-btn .icon{width:14px;height:14px}

.search-btn.is-active{
    background:rgba(41,151,255,.2);
    border-color:rgba(77,168,255,.6);
    box-shadow:0 0 16px rgba(41,151,255,.45);
}

/* SEARCH PANEL */
.search-panel{
    position:fixed;
    top:var(--nav-h);
    left:0;
    right:0;
    z-index:998;
    max-height:0;
    opacity:0;
    overflow:hidden;
    background:rgba(5,10,20,.96);
    border-bottom:1px solid transparent;
    box-shadow:0 12px 40px rgba(0,0,0,.35);
    transition:
        max-height .45s cubic-bezier(.4,0,.2,1),
        opacity .35s ease,
        border-color .35s ease;
    pointer-events:none;
}

.search-panel.is-open{
    max-height:140px;
    opacity:1;
    overflow:visible;
    border-bottom-color:rgba(41,151,255,.35);
    box-shadow:0 8px 32px rgba(41,151,255,.15);
    pointer-events:auto;
    z-index:1000;
}

.search-panel.is-open.pnv-site-search-panel--dropdown,
.search-panel.pnv-site-search-panel--dropdown.is-open{
    max-height:none;
}

.search-panel .container{
    padding-top:16px;
    padding-bottom:16px;
}

.search-panel .pnv-site-search{
    width:100%;
}

.search-panel .search-form.pnv-site-search__form{
    align-items:center;
    width:100%;
}

.search-form{
    display:flex;
    align-items:center;
    gap:12px;
    transform:translateY(-12px);
    opacity:0;
    transition:transform .4s cubic-bezier(.34,1.4,.64,1),opacity .35s ease .05s;
}

.search-panel.is-open .search-form{
    transform:translateY(0);
    opacity:1;
}

.search-input{
    flex:1;
    height:48px;
    padding:0 18px;
    border:1px solid rgba(77,168,255,.45);
    border-radius:10px;
    background:rgba(8,16,32,.9);
    color:#fff;
    font-family:var(--font-primary);
    font-size:15px;
    outline:none;
    box-shadow:0 0 20px rgba(41,151,255,.2),inset 0 0 12px rgba(41,151,255,.06);
    transition:border-color .25s,box-shadow .25s;
}

.search-input:focus{
    border-color:#6bb8ff;
    box-shadow:0 0 28px rgba(41,151,255,.45),inset 0 0 16px rgba(41,151,255,.1);
}

.search-input::-webkit-input-placeholder{color:#6b7d92}
.search-input:-moz-placeholder{color:#6b7d92}
.search-input::-moz-placeholder{color:#6b7d92}
.search-input:-ms-input-placeholder{color:#6b7d92}

.search-submit{
    flex-shrink:0;
    height:48px;
    padding:0 22px;
}


.nav-login{
    font-family:var(--font-primary);
    font-size:12px;
    font-weight:700;
    letter-spacing:.08em;
    text-decoration:none;
    color:rgba(255,255,255,.9);
    padding:0 4px;
}

.nav-login:hover{color:#fff}

.nav-toggle{
    display:none;
    width:40px;
    height:40px;
    border-radius:10px;
    border:1px solid var(--card-border);
    background:rgba(255,255,255,.04);
    color:#fff;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    flex-shrink:0;
    padding:0;
}

.nav-toggle .icon{width:22px;height:22px}

.nav-desktop-only{display:inline-flex}

.nav-mobile-only{display:none}

.nav-submit-icon{
    width:29px;
    height:29px;
    border-radius:7px;
    background:var(--red);
    color:#fff;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    text-decoration:none;
    border:1px solid transparent;
    box-shadow:0 4px 16px var(--red-glow);
    transition:background .2s,box-shadow .2s;
}

/* Само мобилна: на десктоп остава скрита (виж responsive-mobile.css) */
.nav-submit-icon.nav-mobile-only{
    display:none;
}

.nav-submit-icon .icon{
    width:14px;
    height:14px;
}

.nav-submit-icon:hover{
    background:#d41414;
    color:#fff;
    box-shadow:0 4px 20px var(--red-glow);
}

/* User menu (header) */
.nav-user{
    position:relative;
    flex-shrink:0;
}

.nav-user__toggle{
    display:inline-flex;
    align-items:center;
    gap:5px;
    height:29px;
    padding:0 7px 0 3px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.14);
    background:rgba(255,255,255,.04);
    color:#fff;
    cursor:pointer;
    font-family:var(--font-primary);
    transition:border-color .2s,background .2s,box-shadow .2s;
}

.nav-user__toggle:hover,
.nav-user.is-open .nav-user__toggle{
    border-color:rgba(77,168,255,.55);
    background:rgba(41,151,255,.12);
    box-shadow:0 0 16px rgba(41,151,255,.2);
}

.nav-user__avatar{
    width:22px;
    height:22px;
    border-radius:50%;
    object-fit:cover;
    flex-shrink:0;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(0,0,0,.35);
}

.nav-user__name{
    font-size:13px;
    font-weight:700;
    letter-spacing:.02em;
    color:rgba(255,255,255,.95);
    max-width:120px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.nav-user__chevron{
    display:flex;
    align-items:center;
    justify-content:center;
    width:18px;
    height:18px;
    color:rgba(255,255,255,.72);
    transition:transform .2s ease;
}

.nav-user__chevron .icon{
    width:16px;
    height:16px;
}

.nav-user.is-open .nav-user__chevron{
    transform:rotate(180deg);
}

.nav-user__dropdown{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    z-index:1005;
    min-width:220px;
    max-width:min(280px,calc(100vw - 24px));
    max-height:min(70vh,520px);
    overflow-y:auto;
    padding:6px;
    border-radius:12px;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(8,14,28,.98);
    box-shadow:0 16px 40px rgba(0,0,0,.45),0 0 0 1px rgba(41,151,255,.12);
}

.nav-user__dropdown[hidden]{
    display:none;
}

.nav-user__dropdown a{
    display:block;
    padding:10px 12px;
    border-radius:8px;
    text-decoration:none;
    font-family:var(--font-primary);
    font-size:13px;
    font-weight:600;
    letter-spacing:.02em;
    color:rgba(255,255,255,.92);
    transition:background .15s,color .15s;
}

.nav-user__dropdown a:hover{
    background:rgba(255,255,255,.08);
    color:#fff;
}

.nav-user__divider{
    height:1px;
    margin:4px 8px;
    background:rgba(255,255,255,.1);
}

.nav-user__dropdown .nav-user__logout{
    color:#ffb4b4;
}

.nav-user__dropdown .nav-user__logout:hover{
    background:rgba(227,24,24,.15);
    color:#fff;
}

/* Mobile drawer */
.nav-backdrop{
    display:none;
    position:fixed;
    top:var(--nav-h);
    left:0;right:0;bottom:0;
    z-index:1001;
    background:rgba(0,0,0,.65);
    opacity:0;
    pointer-events:none;
    transition:opacity .3s ease;
}

.nav-drawer{
    display:none;
    position:fixed;
    top:var(--nav-h);
    left:0;
    bottom:0;
    z-index:1002;
    width:min(300px,88vw);
    background:#080e18;
    border-right:1px solid var(--card-border);
    padding:20px 18px 28px;
    overflow-y:auto;
    transform:translateX(-105%);
    transition:transform .35s cubic-bezier(.4,0,.2,1);
    box-shadow:8px 0 40px rgba(0,0,0,.45);
}

.nav-drawer-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:20px;
    font-family:var(--font-primary);
    font-size:12px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--muted);
}

.nav-drawer-close{
    width:36px;
    height:36px;
    border-radius:8px;
    border:1px solid var(--card-border);
    background:rgba(255,255,255,.04);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    padding:0;
}

.nav-drawer-submit{
    margin-bottom:16px;
}

.nav-drawer-submit .btn{
    width:100%;
    height:46px;
}

.nav-drawer-links{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.nav-drawer-links a{
    display:block;
    padding:12px 10px;
    border-radius:8px;
    text-decoration:none;
    font-family:var(--font-primary);
    font-size:13px;
    font-weight:700;
    letter-spacing:.06em;
    color:rgba(255,255,255,.9);
    border-left:3px solid transparent;
}

.nav-drawer-links a:hover,
.nav-drawer-links a.is-active{
    background:rgba(255,255,255,.05);
    color:#fff;
    border-left-color:var(--red);
}

.nav-drawer-actions{
    margin-top:24px;
    padding-top:20px;
    border-top:1px solid var(--card-border);
    display:flex;
    flex-direction:column;
    gap:12px;
}

.nav-drawer-actions .btn{
    width:100%;
    height:46px;
}

.nav-drawer-actions .nav-login{
    text-align:center;
    padding:12px;
    font-size:13px;
}

body.nav-open{overflow:hidden}

body.nav-open .navbar{
    z-index:1105;
}

body.nav-open .nav-backdrop{
    display:block;
    opacity:1;
    pointer-events:auto;
    visibility:visible;
    z-index:1100;
}

body.nav-open .nav-drawer{
    display:block;
    transform:translateX(0);
    visibility:visible;
    z-index:1102;
}

body.nav-open .nav-toggle{
    border-color:rgba(227,24,24,.5);
    background:rgba(227,24,24,.15);
}

/* Фаза 6 — известия */
.nav-notifications{
    position:relative;
    display:flex;
    align-items:center;
}

.nav-notifications__toggle{
    position:relative;
    width:29px;
    height:29px;
    border-radius:7px;
    border:1px solid var(--card-border);
    background:rgba(255,255,255,.04);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    padding:0;
}

.nav-notifications__toggle:hover{
    border-color:rgba(255,255,255,.25);
    background:rgba(255,255,255,.08);
}

.nav-notifications__toggle .icon,
.nav-notifications__toggle svg{
    width:14px;
    height:14px;
    max-width:14px;
    max-height:14px;
    flex-shrink:0;
    display:block;
}

.nav-notifications__badge{
    position:absolute;
    top:-4px;
    right:-4px;
    min-width:18px;
    height:18px;
    padding:0 5px;
    border-radius:999px;
    background:var(--red);
    color:#fff;
    font-size:10px;
    font-weight:800;
    line-height:18px;
    text-align:center;
}

.nav-notifications__panel{
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    width:min(360px, calc(100vw - 24px));
    max-height:min(420px, 70vh);
    overflow:hidden;
    display:flex;
    flex-direction:column;
    border-radius:12px;
    border:1px solid var(--card-border);
    background:#0c1528;
    box-shadow:0 16px 40px rgba(0,0,0,.5);
    z-index:120;
}

/* display:flex по-горе надвива браузърното [hidden] — панелът оставаше винаги видим */
.nav-notifications__panel[hidden]{
    display:none !important;
}

.nav-notifications__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    border-bottom:1px solid rgba(255,255,255,.08);
    font-size:12px;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.nav-notifications__actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:10px 12px;
    text-transform:none;
    letter-spacing:normal;
}

.nav-notifications__settings-link,
.nav-notifications__read-all{
    border:none;
    background:transparent;
    color:#7eb8ff;
    font-size:11px;
    font-weight:600;
    cursor:pointer;
    padding:0;
    text-decoration:none;
    white-space:nowrap;
}

.nav-notifications__settings-link:hover,
.nav-notifications__read-all:hover{
    color:#fff;
    text-decoration:underline;
}

.nav-notifications__list{
    list-style:none;
    margin:0;
    padding:0;
    overflow-y:auto;
    flex:1;
}

.nav-notifications__item{
    border-bottom:1px solid rgba(255,255,255,.06);
}

.nav-notifications__link{
    display:block;
    padding:12px 14px;
    text-decoration:none;
    color:#e8edf5;
}

.nav-notifications__link:hover{
    background:rgba(255,255,255,.05);
}

.nav-notifications__item.is-unread .nav-notifications__link{
    background:rgba(26,95,180,.15);
}

.nav-notifications__link strong{
    display:block;
    font-size:13px;
    margin-bottom:4px;
}

.nav-notifications__body{
    display:block;
    font-size:12px;
    opacity:.85;
    line-height:1.4;
}

.nav-notifications__time{
    display:block;
    margin-top:6px;
    font-size:11px;
    opacity:.55;
}

.nav-notifications__empty,
.nav-notifications__loading{
    padding:16px 14px;
    margin:0;
    font-size:13px;
    opacity:.7;
}

.nav-notifications__footer{
    padding:10px 14px 12px;
    border-top:1px solid rgba(255,255,255,.08);
    text-align:center;
    flex-shrink:0;
}

.nav-notifications__view-all{
    display:inline-block;
    font-size:12px;
    font-weight:600;
    color:#7eb8ff;
    text-decoration:none;
}

.nav-notifications__view-all:hover{
    color:#fff;
    text-decoration:underline;
}