/* ===== header-nav-overrides.css — FINAL (invisible icon buttons + equal spacing) ===== */

/* rechte Leiste */
.navbar.custom-justify-between { justify-content: space-between; }
.navbar .right-rail{
  display:flex;
  align-items:center;
  margin-left:auto;
  gap:.5rem;                         /* EIN Abstand für Login, Flagge, Lupe */
}
.navbar .right-rail .navbar-toggler{ margin-left:1.5rem; }

/* Basis */
#login, #searchbutton{ position:static; top:auto; right:auto; }
#login{ margin:0 !important; }       /* Abstand nur über gap */
#login i, #searchbutton i{ vertical-align:middle; }
#searchbutton{ color:#fff; }

/* Desktop: kein Zeilenumbruch der Menüpunkte */
@media (min-width: 992px){
  nav.navbar .navbar-nav{ flex-wrap:nowrap; }
}

/* <=1200px: Hamburger-Modus */
@media (max-width:1200px){
  nav.navbar.custom-justify-between.navbar-expand-lg .navbar-toggler{ display:block!important; }
  nav.navbar.custom-justify-between.navbar-expand-lg .navbar-collapse.collapse:not(.show){ display:none!important; }
  nav.navbar .d-lg-none#logo{ display:inline-flex!important; }
  nav.navbar .d-none.d-lg-block#logo{ display:none!important; }
  nav.navbar.custom-justify-between .navbar-collapse.show,
  nav.navbar.custom-justify-between .navbar-collapse.collapsing{ display:block!important; width:100%; }
  nav.navbar.custom-justify-between .navbar-collapse{ padding-left:0; }
  nav.navbar.custom-justify-between .navbar-collapse .navbar-nav{
    flex-direction:column!important; align-items:flex-start; width:100%;
    margin-top:.95rem; margin-bottom:0; padding-left:0; gap:0;
  }
  nav.navbar.custom-justify-between .navbar-collapse .navbar-nav .nav-item,
  nav.navbar.custom-justify-between .navbar-collapse .navbar-nav .dropdown{ margin:0!important; }
  nav.navbar.custom-justify-between .navbar-collapse .navbar-nav .nav-item + .nav-item{ margin-top:.6rem!important; }
  nav.navbar.custom-justify-between .navbar-collapse .nav-link{
    display:inline-block; width:auto!important; padding-left:0; padding-right:0; line-height:1.4; text-decoration:none!important;
  }
  nav.navbar.custom-justify-between .navbar-collapse .nav-link:hover,
  nav.navbar.custom-justify-between .navbar-collapse .nav-link:focus{ text-decoration:none!important; }
  nav.navbar.custom-justify-between .navbar-collapse .nav-link:not(.dropdown-toggle)::before,
  nav.navbar.custom-justify-between .navbar-collapse .nav-link:not(.dropdown-toggle)::after{ content:none!important; }
}

/* Login-Button in DGAI-Blau */
#login.btn{
  background-color:#143254; border-color:#143254; color:#fff;
}
#login.btn:hover, #login.btn:focus{ background-color:#0f2741; border-color:#0f2741; color:#fff; }
#login.btn:active{ background-color:#0b1c2e; border-color:#0b1c2e; }
#login.btn:focus{ outline:0; box-shadow:0 0 0 .2rem rgba(20,50,84,.35); }
#login i{ color:#fff; }

/* --------- Flagge & Lupe: unsichtbare .btn-Kacheln, optische Lücke = nur gap --------- */
.btn.lang-btn,
.btn.icon-btn{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  width:2.25rem; height:2.25rem;     /* ~ Standard-Buttonhöhe (1.5rem + .375 + .375) */
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  line-height:1 !important;
  box-shadow:none !important;
  margin:0 !important;
}
.btn.lang-btn:hover, .btn.lang-btn:focus,
.btn.icon-btn:hover, .btn.icon-btn:focus{
  background:rgba(255,255,255,.15);  /* dezente Hoverfläche */
  text-decoration:none;
}

/* Flaggenbild proportional */
.lang-flag{ height:1.25rem; width:auto; display:block; }

/* Lupe konsistent skalieren */
#searchbutton.icon-btn i{
  font-size:1.05rem; line-height:1; display:block; margin:0;
}

/* Alte/konfliktierende Regeln sicher neutralisieren */
#searchbutton{
  position: static !important;
  top:auto !important; right:auto !important;
  display:inline-flex !important;
  margin:0 !important;
}
#flagge-gb, #flagge-de{ display:none !important; } /* alte absolute Flaggen-IDs aus main.css */


/* Extra-Abstand NUR zwischen Login und Flagge */
.navbar .right-rail #login ~ .btn.lang-btn {
  margin-left: .25rem !important;  /* +0.25rem zusätzlich zum bestehenden gap */
}



