/* /textures/header.css */
:root{
  --vn-text:#eaf0ff;
  --vn-muted:rgba(234,240,255,.72);
  --vn-muted2:rgba(234,240,255,.55);
  --vn-border:rgba(148,163,184,.18);
  --vn-accent:#38bdf8;
  --vn-bgA:rgba(2,6,23,.88);
  --vn-bgB:rgba(2,6,23,.60);
}

.vn-header, .vn-header *{ box-sizing:border-box; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.vn-header a{ color:inherit; text-decoration:none; }

.vn-header{
  position:sticky; top:0; z-index:30;
  backdrop-filter: blur(10px);
  background:linear-gradient(180deg, var(--vn-bgA) 0%, var(--vn-bgB) 100%);
  border-bottom:1px solid var(--vn-border);
}

.vn-header-inner{
  max-width:1200px;
  margin:0 auto;
  padding:12px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.vn-brand{
  display:flex; align-items:center; gap:12px;
  min-width:220px;
}
.vn-brand img{
  height:34px; width:auto; display:block;
  filter: drop-shadow(0 0 18px rgba(56,189,248,.25));
}
.vn-brand-txt b{
  display:block;
  letter-spacing:.22em;
  text-transform:uppercase;
  font-size:12px;
  line-height:1;
  color:var(--vn-text);
}
.vn-brand-txt span{
  display:block;
  font-size:12px;
  color:var(--vn-muted2);
  margin-top:4px;
  line-height:1;
}

.vn-nav{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.vn-link{ color:var(--vn-muted); font-size:14px; }
.vn-link:hover{ color:var(--vn-text); }

.vn-btn{
  border:none;
  cursor:pointer;
  border-radius:999px;
  padding:10px 16px;
  font-size:14px;
  font-weight:850;
  display:inline-flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
}
.vn-btn-primary{
  background:linear-gradient(135deg,#0ea5e9,#38bdf8);
  color:#06101f;
  box-shadow:0 0 20px rgba(56,189,248,.30);
}
.vn-btn-ghost{
  background:rgba(2,6,23,.40);
  border:1px solid var(--vn-border);
  color:var(--vn-text);
}

/* Desktop vs Mobile */
.vn-menu{ display:flex !important; }
.vn-burger{ display:none !important; }

/* Language switch */
.vn-lang{
  display:inline-flex;
  gap:6px;
  align-items:center;
  border:1px solid var(--vn-border);
  border-radius:999px;
  padding:4px;
  background:rgba(2,6,23,.50);
}
.vn-lang a{
  font-size:12px;
  padding:6px 10px;
  border-radius:999px;
  color:var(--vn-muted);
  line-height:1;
}
.vn-lang a.active{
  background:rgba(56,189,248,.14);
  color:var(--vn-text);
  border:1px solid rgba(56,189,248,.30);
}

/* Dropdown (desktop) - Klick statt Hover */
.vn-dd{
  position:relative;
  z-index:40;
}

.vn-dd-btn{
  background:transparent;
  border:none;
  color:var(--vn-muted);
  font-size:14px;
  cursor:pointer;
  display:inline-flex;
  gap:8px;
  align-items:center;
  padding:10px 12px;
  border-radius:12px;
}
.vn-dd-btn:hover{ color:var(--vn-text); background:rgba(255,255,255,.03); }
.vn-caret{ opacity:.8; font-size:12px; }

.vn-dd-menu{
  display:none;
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  min-width:220px;
  background:rgba(10,16,35,.92);
  border:1px solid var(--vn-border);
  border-radius:14px;
  padding:8px;
  box-shadow:0 22px 70px rgba(0,0,0,.45);
  z-index:60;
}

.vn-dd-menu a{
  display:block;
  padding:10px 10px;
  border-radius:12px;
  color:var(--vn-muted);
  font-size:14px;
}
.vn-dd-menu a:hover{ color:var(--vn-text); background:rgba(56,189,248,.10); }

/* ✅ öffnet nur, wenn .open gesetzt wird (per JS) */
.vn-dd.open .vn-dd-menu{ display:block; }

/* optional: aktiver Button */
.vn-dd.open .vn-dd-btn{
  color:var(--vn-text);
  background:rgba(255,255,255,.03);
}

/* Mobile panel */
.vn-mobile{
  max-width:1200px;
  margin:0 auto;
  padding:10px 18px 16px;
  border-top:1px solid var(--vn-border);
  background:rgba(2,6,23,.82);
}

.vn-mobile-top{ margin-bottom:10px; }

/* Mobile language: compact (nicht riesig, nicht eng) */
.vn-lang-mobile{
  width:max-content;
  padding:4px;
}
.vn-lang-mobile a{ padding:6px 10px; }

/* Mobile links: sauber untereinander */
.vn-mobile-list a{
  display:block;
  padding:12px 2px;
  color:var(--vn-muted);
  font-size:15px;
}
.vn-mobile-list a:hover{ color:var(--vn-text); }

.vn-mobile-cta{ margin-top:10px; }
.vn-mobile-cta .vn-btn{ width:100%; justify-content:center; }

/* Mobile dropdown variant (Klick, wie vorher) */
.vn-dd-mobile{ margin-top:2px; }
.vn-dd-mobile .vn-dd-btn{
  width:100%;
  justify-content:space-between;
  padding:12px 10px;
  border:1px solid var(--vn-border);
  background:rgba(2,6,23,.35);
  color:var(--vn-text);
  border-radius:14px;
}
.vn-dd-mobile .vn-dd-menu{
  position:static;
  display:none;
  min-width:auto;
  margin-top:8px;
  background:rgba(10,16,35,.55);
}
.vn-dd-mobile.open .vn-dd-menu{ display:block; }
.vn-dd-mobile .vn-dd-menu a{ padding:12px 10px; }

/* Breakpoint */
@media (max-width: 980px){
  .vn-menu{ display:none !important; }
  .vn-burger{ display:inline-flex !important; }
}

.vn-link.active{ color: var(--vn-text); }
