/* ═══════════════════════════════════════════════════════════
   MinecraftFan — премиум-шапка сайта (header + main-nav).
   Перекрывает базовые стили из app.css.
═══════════════════════════════════════════════════════════ */

/* ═══ HEADER WRAPPER ═══ */
header{
    position:sticky;top:0;z-index:80;
    background:linear-gradient(180deg,rgba(14,14,22,.96) 0%,rgba(14,14,22,.92) 100%) !important;
    backdrop-filter:blur(14px) saturate(1.4);
    -webkit-backdrop-filter:blur(14px) saturate(1.4);
    border-bottom:1.5px solid rgba(255,255,255,.05) !important;
    box-shadow:0 8px 24px -12px rgba(0,0,0,.6) !important;
}
header::before{
    content:"";position:absolute;left:0;right:0;top:0;bottom:0;
    background:radial-gradient(600px 200px at 0% 0%,rgba(93,187,60,.06),transparent 60%),
               radial-gradient(500px 180px at 100% 0%,rgba(80,140,220,.04),transparent 60%);
    pointer-events:none;z-index:-1;
}
/* Снизу — тонкая accent-полоса */
header::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
    background:linear-gradient(90deg,transparent,rgba(93,187,60,.5) 30%,rgba(80,140,220,.4) 50%,rgba(245,166,35,.5) 70%,transparent);
    pointer-events:none;opacity:.65;
}

.header-top{
    display:flex !important;align-items:center;gap:18px;
    padding:12px 24px !important;max-width:1280px;margin:0 auto;
    position:relative;z-index:2;
}

/* ═══ LOGO ═══ */
.logo{
    display:inline-flex !important;align-items:center;gap:12px;
    text-decoration:none;color:inherit;flex-shrink:0;
    transition:transform .2s cubic-bezier(.2,.7,.2,1);
}
.logo:hover{transform:translateY(-1px)}
.logo-icon{
    width:42px;height:42px;flex-shrink:0;
    border-radius:10px;overflow:hidden;
    box-shadow:0 6px 20px -4px rgba(93,187,60,.5),inset 0 1px 0 rgba(255,255,255,.15);
    transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s;
    transform:rotate(-3deg);
}
.logo:hover .logo-icon{transform:rotate(2deg) scale(1.05);box-shadow:0 10px 28px -6px rgba(93,187,60,.7)}
.logo-icon svg{width:100%;height:100%;display:block}
.logo-text{display:flex;flex-direction:column;line-height:1.1}
.logo-name{
    font-family:'Press Start 2P',monospace !important;
    font-size:14px !important;color:#fff !important;font-weight:900 !important;
    letter-spacing:.5px;line-height:1.4 !important;
    text-shadow:0 2px 12px rgba(93,187,60,.3);
}
.logo-name span{
    background:linear-gradient(90deg,#7ed957,#5dbb3c);
    background-clip:text;-webkit-background-clip:text;color:transparent;
}
.logo-sub{
    font-size:10px !important;color:var(--muted) !important;
    font-weight:700;margin-top:3px;letter-spacing:.02em;
}

/* ═══ SEARCH BAR ═══ */
.search-bar{
    flex:1;max-width:480px;display:flex !important;
    background:rgba(255,255,255,.04) !important;
    border:1.5px solid rgba(255,255,255,.08) !important;
    border-radius:11px !important;overflow:hidden;
    transition:border-color .2s,background .2s,box-shadow .2s;
    backdrop-filter:blur(8px);
}
.search-bar:focus-within{
    border-color:rgba(93,187,60,.5) !important;
    background:rgba(93,187,60,.06) !important;
    box-shadow:0 0 0 3px rgba(93,187,60,.12);
}
.search-bar input{
    flex:1;padding:10px 16px !important;
    background:transparent !important;border:none !important;
    color:#fff !important;font-size:13px !important;font-family:inherit;outline:none;
    font-weight:600;
}
.search-bar input::placeholder{color:var(--muted);font-weight:600}
.search-bar button{
    padding:0 18px !important;
    background:linear-gradient(135deg,#5dbb3c,#3d8a26) !important;
    border:none !important;cursor:pointer;
    color:#fff !important;font-weight:900;
    display:inline-flex !important;align-items:center;justify-content:center;
    transition:filter .15s,transform .15s;
}
.search-bar button svg{flex-shrink:0;width:16px;height:16px;stroke:#fff !important;fill:none !important;display:block}
.search-bar button:hover{filter:brightness(1.1)}
.search-bar button:active{transform:scale(.96)}

/* ═══ HEADER ACTIONS ═══ */
.header-actions{
    display:flex !important;align-items:center;gap:8px;flex-shrink:0;
}

/* Social buttons */
.btn-social{
    display:inline-flex !important;align-items:center;gap:6px;
    padding:8px 13px !important;border-radius:9px !important;
    font-size:12.5px !important;font-weight:900 !important;text-decoration:none;
    transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s,filter .2s;
    line-height:1;border:none !important;
}
.btn-social svg{flex-shrink:0;width:15px;height:15px;fill:currentColor;display:block}
.btn-tg{
    background:linear-gradient(135deg,#2aabee,#0088cc) !important;
    color:#fff !important;
    box-shadow:0 4px 14px -4px rgba(42,171,238,.5),inset 0 1px 0 rgba(255,255,255,.2);
}
.btn-tg:hover{transform:translateY(-2px);box-shadow:0 8px 22px -4px rgba(42,171,238,.65);filter:brightness(1.06)}
.btn-vk{
    background:linear-gradient(135deg,#5b7fbb,#4c75a3) !important;
    color:#fff !important;
    box-shadow:0 4px 14px -4px rgba(91,127,187,.5),inset 0 1px 0 rgba(255,255,255,.2);
}
.btn-vk:hover{transform:translateY(-2px);box-shadow:0 8px 22px -4px rgba(91,127,187,.65);filter:brightness(1.06)}

/* Notification bell */
.btn-notif{
    width:38px !important;height:38px !important;border-radius:9px !important;
    background:rgba(255,255,255,.04) !important;
    border:1.5px solid rgba(255,255,255,.08) !important;
    color:#fff !important;
    display:inline-flex !important;align-items:center;justify-content:center;
    text-decoration:none;flex-shrink:0;
    transition:border-color .2s,background .2s,transform .2s !important;
    position:relative;
}
.btn-notif svg{flex-shrink:0;width:18px;height:18px;stroke:#fff !important;fill:none !important;display:block}
.btn-notif:hover{
    border-color:rgba(93,187,60,.5) !important;
    background:rgba(93,187,60,.08) !important;
    transform:translateY(-2px);
}
.btn-notif svg{transition:transform .25s}
.btn-notif:hover svg{transform:rotate(-12deg)}
.btn-notif #notifBadge{
    box-shadow:0 0 0 2px rgba(14,14,22,.95),0 4px 10px rgba(239,68,68,.5);
    animation:notifPulse 1.8s ease-in-out infinite;
}
@keyframes notifPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

/* Login / register / logout buttons */
.btn-login{
    display:inline-flex !important;align-items:center;gap:5px;
    padding:9px 16px !important;border-radius:9px !important;
    background:rgba(255,255,255,.04) !important;
    border:1.5px solid rgba(255,255,255,.1) !important;
    color:#fff !important;font-size:12.5px !important;font-weight:900 !important;
    text-decoration:none;line-height:1;backdrop-filter:blur(6px);
    transition:all .2s cubic-bezier(.2,.7,.2,1);
}
.btn-login:hover{
    border-color:#5dbb3c !important;
    background:rgba(93,187,60,.1) !important;
    color:#aef88b !important;transform:translateY(-2px);
}
.btn-register{
    display:inline-flex !important;align-items:center;gap:5px;
    padding:9px 16px !important;border-radius:9px !important;
    background:linear-gradient(135deg,#7ed957 0%,#5dbb3c 50%,#3d8a26 100%) !important;
    color:#fff !important;font-size:12.5px !important;font-weight:900 !important;
    border:none !important;text-decoration:none;line-height:1;cursor:pointer;
    box-shadow:0 6px 18px -6px rgba(93,187,60,.55),inset 0 1px 0 rgba(255,255,255,.25),inset 0 -2px 0 rgba(0,0,0,.18);
    transition:transform .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s,filter .2s;
    position:relative;overflow:hidden;font-family:inherit;
}
.btn-register::before{
    content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
    animation:btnRegShine 4s ease-in-out infinite;pointer-events:none;
}
@keyframes btnRegShine{0%,80%{left:-100%}90%{left:100%}100%{left:100%}}
.btn-register:hover{transform:translateY(-2px);box-shadow:0 10px 24px -6px rgba(93,187,60,.7);filter:brightness(1.06)}

/* Burger menu (mobile) */
.burger-btn{
    display:none;width:38px;height:38px;border-radius:9px;
    background:rgba(255,255,255,.04);
    border:1.5px solid rgba(255,255,255,.08);
    color:#fff;cursor:pointer;align-items:center;justify-content:center;
    transition:border-color .2s,background .2s;
}
.burger-btn:hover{border-color:rgba(93,187,60,.4);background:rgba(93,187,60,.08)}

/* ═══ MAIN NAV ═══ */
.main-nav{
    background:rgba(0,0,0,.25) !important;
    border-top:1px solid rgba(255,255,255,.04) !important;
    position:relative;z-index:1;
}
.nav-inner{
    display:flex !important;align-items:center;gap:2px;flex-wrap:wrap;
    padding:8px 24px !important;max-width:1280px;margin:0 auto;
}
.main-nav a{
    display:inline-flex !important;align-items:center;gap:5px;
    padding:7px 12px !important;border-radius:8px !important;
    font-size:12.5px !important;font-weight:800 !important;
    color:#c4c4c4 !important;text-decoration:none;
    transition:all .18s cubic-bezier(.2,.7,.2,1);
    border:1.5px solid transparent !important;line-height:1;
}
.main-nav a:hover{
    color:#fff !important;background:rgba(93,187,60,.08) !important;
    border-color:rgba(93,187,60,.25) !important;transform:translateY(-1px);
}
.main-nav a.active{
    color:#fff !important;
    background:linear-gradient(135deg,rgba(93,187,60,.18),rgba(93,187,60,.06)) !important;
    border-color:#5dbb3c !important;
    box-shadow:0 4px 14px -6px rgba(93,187,60,.5),inset 0 1px 0 rgba(255,255,255,.05);
}

/* CTA "Сообщество" - выделенная кнопка */
.main-nav a.nav-lenta-cta{
    background:linear-gradient(135deg,#7ed957 0%,#5dbb3c 50%,#3d8a26 100%) !important;
    color:#fff !important;border:none !important;
    padding:7px 14px !important;
    box-shadow:0 6px 16px -6px rgba(93,187,60,.55),inset 0 1px 0 rgba(255,255,255,.25),inset 0 -2px 0 rgba(0,0,0,.18) !important;
    margin-right:6px !important;position:relative;overflow:hidden;
    transition:transform .2s,box-shadow .2s,filter .2s !important;
}
.main-nav a.nav-lenta-cta::before{
    content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
    animation:btnRegShine 4s ease-in-out infinite;pointer-events:none;
}
.main-nav a.nav-lenta-cta:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 22px -6px rgba(93,187,60,.7) !important;
    filter:brightness(1.06);
}
.main-nav a.nav-lenta-cta span{
    background:#fff !important;color:#3d8a26 !important;
    padding:2px 6px !important;font-size:9px !important;font-weight:900 !important;
    border-radius:6px !important;letter-spacing:.06em !important;
    box-shadow:0 2px 6px rgba(0,0,0,.25);
}

/* ═══ RESPONSIVE ═══ */
@media(max-width:980px){
    .header-top{padding:10px 16px !important;gap:10px}
    .logo-text{display:none}
    .logo-icon{width:38px;height:38px}
    .search-bar{max-width:none}
    .btn-social{padding:8px !important}
    .btn-social svg{width:14px;height:14px}
    .btn-social span,.btn-social{font-size:0 !important}
    .btn-social svg{font-size:14px}
}
@media(max-width:780px){
    .btn-social,.btn-login,.btn-register{display:none !important}
    .header-actions .btn-notif{display:inline-flex !important}
    .burger-btn{display:inline-flex !important}
    .main-nav{display:none}
    .main-nav.is-open{display:block}
    .nav-inner{flex-direction:column;align-items:stretch;padding:8px 16px !important;gap:4px}
    .main-nav a{width:100%;justify-content:flex-start}
}
@media(max-width:520px){
    .header-top{padding:8px 12px !important}
}
