/**
 * ANF Cinemateca - Admin Toolbar Compatibility
 * Fixes menu display when Gin admin toolbar is present
 */

/* ULTRA-AGGRESSIVE: Force slideshow to be visible for logged-in users */
html body.user-logged-in .slideshow-test-container,
html body.user-logged-in div.slideshow-test-container,
html body.toolbar-horizontal .slideshow-test-container,
html body.toolbar-vertical .slideshow-test-container,
html body.user-logged-in .region-slideshow,
html body.user-logged-in div.region-slideshow,
html body.user-logged-in [class*="slideshow"] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  height: auto !important;
  width: 100% !important;
  max-width: 950px !important;
  margin: 0 auto !important;
  overflow: visible !important;
}

html body.user-logged-in .slideshow-test-container *,
html body.user-logged-in .slideshow-test-container div,
html body.user-logged-in .region-slideshow *,
html body.user-logged-in .region-slideshow div,
html body.user-logged-in .views-element-container,
html body.user-logged-in .views-element-container *,
html body.user-logged-in .slideshow-slide,
html body.user-logged-in div.slideshow-slide,
html body.user-logged-in .views-field,
html body.user-logged-in .views-field-field-media-image,
html body.user-logged-in .field-content {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
}

html body.user-logged-in .slideshow-slide img,
html body.user-logged-in .slideshow-test-container img,
html body.user-logged-in .views-field img,
html body.user-logged-in .field-content img,
html body.user-logged-in img[src*="slideshow"],
html body.user-logged-in img[alt*="Slide"] {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-width: 950px !important;
  margin: 0 !important;
  position: relative !important;
}

/* Force menu to be visible for all users */
#menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
}

.region-primary-menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.main-navigation {
  display: block !important;
  visibility: visible !important;
}

/* Ensure menu is visible when toolbar is present */
body.toolbar-horizontal #page-wrapper {
  margin-top: 0;
}

body.toolbar-horizontal #menu,
body.toolbar-vertical #menu {
  display: block !important;
  visibility: visible !important;
  position: relative;
  z-index: 100;
}

/* Fix z-index conflicts with admin toolbar */
body.toolbar-horizontal .region-primary-menu,
body.toolbar-vertical .region-primary-menu {
  position: relative;
  z-index: 100;
  display: block !important;
}

/* Ensure dropdowns appear above other content but below toolbar */
body.toolbar-horizontal .main-navigation ul ul,
body.toolbar-vertical .main-navigation ul ul {
  z-index: 501;
}

/* Fix toolbar overlay issues */
body.toolbar-horizontal .site-header-wrapper,
body.toolbar-vertical .site-header-wrapper {
  position: relative;
  z-index: 99;
}

/* Ensure menu doesn't get hidden by Gin toolbar */
body.gin--vertical-toolbar #menu,
body.gin--classic-toolbar #menu,
body.gin--horizontal-toolbar #menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.gin--vertical-toolbar .region-primary-menu,
body.gin--classic-toolbar .region-primary-menu,
body.gin--horizontal-toolbar .region-primary-menu {
  display: block !important;
  visibility: visible !important;
}

/* Fix for horizontal Gin toolbar */
body.gin--horizontal-toolbar #page-wrapper {
  margin-top: 0;
}

/* Dropdown menu improvements for logged-in users */
body.user-logged-in .main-navigation ul ul {
  z-index: 500;
}

/* Ensure menu wrapper is visible */
body.user-logged-in #menu,
body.user-logged-in .region-primary-menu,
body.user-logged-in .main-navigation {
  display: block !important;
  visibility: visible !important;
}

/* Mobile admin toolbar fixes - MAXIMUM SPECIFICITY */
@media screen and (max-width: 768px) {
  /* Remove padding added by admin toolbar */
  html body.toolbar-fixed,
  html body.toolbar-horizontal,
  html body.toolbar-vertical,
  html body.gin--vertical-toolbar,
  html body.gin--horizontal-toolbar,
  html body.gin--classic-toolbar,
  html body.user-logged-in {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  /* Ensure admin toolbar doesn't push content */
  html body.user-logged-in #page-wrapper,
  html body.user-logged-in div#page-wrapper {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* Fix menu toggle button - CRITICAL - MAXIMUM SPECIFICITY */
  html body.user-logged-in .menu-toggle,
  html body.user-logged-in button.menu-toggle,
  html body.toolbar-fixed .menu-toggle,
  html body.gin--horizontal-toolbar .menu-toggle,
  html body .region-primary-menu .menu-toggle {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative;
    z-index: 9998;
    width: 100% !important;
    max-width: none !important;
  }

  /* Ensure menu wrapper appears - MAXIMUM SPECIFICITY */
  html body.user-logged-in #menu,
  html body.user-logged-in div#menu,
  html body.user-logged-in .region-primary-menu {
    display: block !important;
    visibility: visible !important;
    position: relative;
    z-index: 9998;
    margin-top: 0 !important;
    width: 100% !important;
  }

  /* Main navigation must be visible - MAXIMUM SPECIFICITY */
  html body.user-logged-in .main-navigation,
  html body.user-logged-in nav.main-navigation,
  html body.user-logged-in #primary-menu {
    display: block !important;
    visibility: visible !important;
  }

  /* CRITICAL: Menu ul hidden by default - MAXIMUM SPECIFICITY */
  html body.user-logged-in .main-navigation ul.menu,
  html body.user-logged-in .main-navigation > div > nav > ul,
  html body.user-logged-in .main-navigation ul.menu--main,
  html body.user-logged-in #primary-menu ul.menu {
    display: none !important;
    visibility: hidden !important;
  }

  /* CRITICAL: Show ONLY top-level menu when opened - MAXIMUM SPECIFICITY */
  html body.user-logged-in .main-navigation.is-open > ul.menu,
  html body.user-logged-in .main-navigation.is-open > div > nav > ul,
  html body.user-logged-in .main-navigation.is-open > ul.menu--main,
  html body.user-logged-in #primary-menu.is-open > ul.menu {
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Hide ALL submenus by default - MAXIMUM SPECIFICITY */
  html body.user-logged-in .main-navigation ul ul,
  html body.user-logged-in .main-navigation ul.menu ul,
  html body.user-logged-in .main-navigation.is-open ul ul,
  html body.user-logged-in .main-navigation.is-open ul.menu ul,
  html body.user-logged-in #primary-menu ul ul,
  html body.user-logged-in #primary-menu.is-open ul ul {
    display: none !important;
    visibility: hidden !important;
  }

  /* Show submenu ONLY when parent li is open - MAXIMUM SPECIFICITY */
  html body.user-logged-in .main-navigation.is-open li.is-open > ul,
  html body.user-logged-in #primary-menu.is-open li.is-open > ul {
    display: flex !important;
    flex-direction: column !important;
    visibility: visible !important;
  }

  /* Admin toolbar highest z-index */
  #toolbar-administration,
  .gin-toolbar,
  #gin_sidebar {
    z-index: 10000 !important;
  }

  /* No margin on header */
  body.user-logged-in #header,
  body.user-logged-in .site-header-wrapper {
    margin-top: 0 !important;
  }
}
