/* Panel polish: interaction/z-index safety only. Visual rhythm is in panel-module-normalize.css */

.oc-panel-shell .panel-topbar {
  z-index: 2400 !important;
  overflow: visible !important;
}

html.oc-dialog-open:has(.oc-dialog-backdrop[data-oc-dialog-active="true"]) .oc-dialog-backdrop:not([data-oc-dialog-active="true"]),
body.oc-dialog-open:has(.oc-dialog-backdrop[data-oc-dialog-active="true"]) .oc-dialog-backdrop:not([data-oc-dialog-active="true"]) {
  pointer-events: none !important;
}

html.oc-dialog-open:has(.oc-dialog-backdrop[data-oc-dialog-active="true"]) .oc-dialog-backdrop:not([data-oc-dialog-active="true"]) .oc-dialog,
body.oc-dialog-open:has(.oc-dialog-backdrop[data-oc-dialog-active="true"]) .oc-dialog-backdrop:not([data-oc-dialog-active="true"]) .oc-dialog {
  pointer-events: none !important;
}

/* Dialog interaction is already isolated by backdrop/dialog layers.
   Do not globally disable topbar/sidebar pointer events here; it causes
   dropdown state glitches and visual regressions in fullscreen dialogs. */

/* Keep dialog interaction lock scoped. A global "*:not(.oc-dialog-backdrop)" lock
   causes visual regressions on some pages (blur/opacity artifacts). */

.oc-panel-shell .panel-sidebar {
  z-index: 2200 !important;
}

.oc-panel-shell .panel-mobile-overlay-sidebar {
  z-index: 2190 !important;
}

.oc-panel-shell .panel-content {
  position: relative;
  z-index: auto;
  min-width: 0;
}

.oc-panel-shell .panel-topbar .panel-dropdown {
  position: relative;
  isolation: isolate;
}

.oc-panel-shell .theme-icon--sun {
  display: none;
}

.dark .oc-panel-shell .theme-icon--sun {
  display: inline-block;
}

.dark .oc-panel-shell .theme-icon--moon {
  display: none;
}

.oc-panel-shell .panel-topbar .panel-dropdown-menu {
  z-index: 2660 !important;
  overflow: auto;
}

/* Keep topbar dropdown menus renderable; dialog overlay already blocks background interaction. */

@media (min-width: 1024px) {
  .oc-panel-shell .panel-mobile-overlay {
    display: none !important;
  }

  .oc-panel-shell .panel-topbar .panel-dropdown-menu--notifications,
  .oc-panel-shell .panel-topbar .panel-dropdown-menu--profile {
    position: absolute !important;
    top: calc(100% + 0.5rem);
    right: 0;
    max-height: min(520px, calc(100vh - 5rem));
  }

  .oc-panel-shell .panel-topbar .panel-dropdown-menu--notifications {
    width: min(380px, calc(100vw - 2rem));
  }

  .oc-panel-shell .panel-topbar .panel-dropdown-menu--profile {
    width: min(328px, calc(100vw - 2rem));
  }
}

@media (max-width: 1023.98px) {
  .oc-panel-shell .panel-mobile-overlay-notifications,
  .oc-panel-shell .panel-mobile-overlay-profile {
    z-index: 2650 !important;
  }

  .oc-panel-shell .panel-notification-drawer {
    z-index: 2665 !important;
  }

  .oc-panel-shell .panel-topbar .panel-dropdown-menu--profile {
    position: fixed !important;
    top: calc(4rem + 0.5rem);
    right: 0.75rem;
    width: min(336px, calc(100vw - 1rem));
    max-height: calc(100vh - 5rem);
  }
}
