/**
 * @file
 * GB Global Theme - Admin Toolbar Compatibility
 * Styles to ensure proper display when Drupal admin toolbar is present
 */

/* ========================================
   Admin Toolbar Compatibility
   ======================================== */

/* Adjust z-index hierarchy for admin toolbar */
body.toolbar-horizontal {
  /* Admin toolbar uses z-index: 1000 */
  /* Our site header should be below it */
}

body.toolbar-horizontal .site-header {
  /* Lower z-index when admin toolbar is present */
  z-index: 500;
  /* Adjust top position to account for admin toolbar */
  top: 39px;
}

/* When toolbar is in vertical/tray mode */
body.toolbar-vertical.toolbar-tray-open .site-header {
  z-index: 500;
  top: 39px;
}

/* Fixed positioning adjustments for toolbar */
body.toolbar-fixed .site-header {
  top: 39px;
}

/* For Gin admin theme (if used) */
body.gin--vertical-toolbar .site-header {
  z-index: 500;
}

/* Ensure admin toolbar dropdowns appear above content */
#toolbar-administration {
  z-index: 1500 !important;
}

#toolbar-administration * {
  z-index: auto;
}

.toolbar-tray {
  z-index: 1499 !important;
}

/* Adjust social media icons z-index to not interfere */
body.toolbar-horizontal .social-media-icons {
  z-index: 499;
}

/* Adjust back-to-top button */
body.toolbar-horizontal .back-to-top {
  z-index: 498;
}

/* Ensure smooth scrolling accounts for both toolbars */
body.toolbar-horizontal.toolbar-tray-open {
  padding-top: 0 !important;
}

/* Fix for admin menu dropdown visibility */
.toolbar-menu {
  z-index: 1501 !important;
}

.toolbar-menu .toolbar-menu {
  z-index: 1502 !important;
}

/* Contextual links should appear above site content */
.contextual-region .contextual {
  z-index: 600;
}

.contextual-region .contextual.open {
  z-index: 601;
}

/* Ensure toolbar items are clickable */
#toolbar-bar,
#toolbar-administration {
  pointer-events: auto !important;
}

/* Mobile toolbar adjustments */
@media (max-width: 767px) {
  body.toolbar-horizontal .site-header {
    top: 39px;
  }

  body.toolbar-tray-open.toolbar-vertical .site-header {
    top: 39px;
  }
}

/* When both admin toolbar and Gin admin theme are active */
body.gin--edit-form .site-header {
  z-index: 100;
}

/* Ensure Messages don't hide behind header */
body.toolbar-horizontal .messages {
  margin-top: 1rem;
}

/* Fix for toolbar tabs dropdown */
.toolbar-tab > .toolbar-item {
  z-index: 1501 !important;
}

.toolbar-tab > .toolbar-menu {
  z-index: 1500 !important;
}

/* Ensure admin toolbar is always on top */
body.toolbar-horizontal #toolbar-administration,
body.toolbar-vertical #toolbar-administration {
  z-index: 1500 !important;
}

/* Fix for toolbar tray dropdown menus */
.toolbar-tray-horizontal .toolbar-menu:not(.root),
.toolbar-tray-horizontal .toolbar-menu .toolbar-menu {
  z-index: 1502 !important;
}

/* Ensure overlay/modal compatibility */
.ui-widget-overlay {
  z-index: 700;
}

.ui-dialog {
  z-index: 701;
}

/* CKEditor toolbar should appear above everything in edit mode */
.cke_top {
  z-index: 800 !important;
}

/* ========================================
   Responsive Adjustments for Admin Toolbar
   ======================================== */

/* Tablet and up */
@media (min-width: 768px) {
  body.toolbar-horizontal .site-header {
    top: 39px;
  }

  body.toolbar-horizontal.toolbar-tray-open .site-header {
    top: 79px;
  }
}

/* Desktop */
@media (min-width: 992px) {
  body.toolbar-vertical.toolbar-tray-open .site-header {
    top: 39px;
    /* No left margin needed for vertical toolbar */
  }
}

/* Ensure content is not hidden behind sticky header + toolbar */
body.toolbar-horizontal main {
  scroll-margin-top: calc(39px + 60px); /* toolbar + header */
}

body.toolbar-horizontal.toolbar-tray-open main {
  scroll-margin-top: calc(79px + 60px); /* toolbar + tray + header */
}
