/* =========================================================
   A11y helper – eigene Klasse, kein Konflikt mit Drupal Core
   ========================================================= */
.ico-visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  clip: rect(0 0 0 0); overflow: hidden;
}

/* =========================================================
   Fix für eingeloggte Admins: Contextual Buttons & Links
   ========================================================= */

/* Trigger (Button) bleibt unsichtbar wie im Core */
.contextual .trigger.visually-hidden {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  width: 1px;
  overflow: hidden;
  white-space: nowrap;
}

/* Contextual Links standardmäßig ausblenden */
.contextual .contextual-links {
  display: none;
}

/* Sichtbar nur, wenn geöffnet */
.contextual.open .contextual-links,
.contextual .trigger[aria-pressed="true"] + .contextual-links {
  display: block;
}



/* ###################################### */
/*  Contextual on Menu display: none!!!   */
.navbar-header .contextual {
    display: none;
}
/*  toggle && quick edit button disable   */
.navbar-header,
.navbar-collapse .contextual {
    display: none;
}




/* =========================================================
   Burger-Button
   ========================================================= */
.burger {
  position: relative;
  width: 44px;
  height: 44px;
  border: 0;
  background: transparent;
  cursor: pointer;
  display: none; /* Desktop aus */
  color: currentColor;
  z-index: 1000; /* über dem Nav */
}

.burger__bar {
  position: absolute;
  left: 10px; right: 10px;
  height: 2px;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 200ms ease, opacity 200ms ease;
  background: currentColor;
}
.burger__bar:nth-child(1) { transform: translateY(-10px); }
.burger__bar:nth-child(2) { transform: translateY(-50%); }
.burger__bar:nth-child(3) { transform: translateY(8px); }

/* Geöffnet -> Kreuz */
.burger[aria-expanded="true"] .burger__bar:nth-child(1) {
  transform: translateY(-50%) rotate(45deg);
}
.burger[aria-expanded="true"] .burger__bar:nth-child(2) { opacity: 0; }
.burger[aria-expanded="true"] .burger__bar:nth-child(3) {
  transform: translateY(-50%) rotate(-45deg);
}

/* =========================================================
   Desktop
   ========================================================= */
@media (min-width: 768px) {
  nav[id^="block-"][id$="-main-menu"] .burger { display: none; }
  nav[id^="block-"][id$="-main-menu"] ul { display: block !important; }
}

/* =========================================================
   Mobile
   ========================================================= */
@media (max-width: 767.98px) {
  nav[id^="block-"][id$="-main-menu"] .burger { display: inline-block; }

  /* Hidden-Panel verbergen */
  nav[id^="block-"][id$="-main-menu"] ul[hidden] { display: none !important; }

  /* Collapsible Menü mit Animation */
  nav[id^="block-"][id$="-main-menu"] ul {
    display: block;
    max-height: 0;
    overflow: hidden;
    transition: max-height 200ms ease;
  }

  nav[id^="block-"][id$="-main-menu"] .burger[aria-expanded="true"] ~ ul {
    max-height: 75vh;
  }

  /* Liste mobil untereinander */
  nav[id^="block-"][id$="-main-menu"] ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  nav[id^="block-"][id$="-main-menu"] ul > li {
    border-top: 1px solid rgba(0,0,0,.08);
  }

  nav[id^="block-"][id$="-main-menu"] ul a {
    display: block;
    padding: 12px 16px;
    text-decoration: none;
  }
}
