/* Shared NoGate navigation. Page layouts and access rules remain page-owned. */
:root { --ng-nav-bg:#242620; --ng-nav-text:#fffaf0; --ng-nav-hover:#3d4036; --ng-nav-focus:#ac3028; }
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button),
header > a:not(.brand):not(.wordmark):not([class*="brand"]) {
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:40px;
  max-width:100%;
  padding:9px 13px;
  border:1px solid var(--ng-nav-bg)!important;
  border-radius:6px!important;
  background:var(--ng-nav-bg)!important;
  color:var(--ng-nav-text)!important;
  font:600 13px/1.35 "Segoe UI",Arial,sans-serif!important;
  text-align:center;
  text-decoration:none;
  white-space:normal;
  cursor:pointer;
  box-shadow:none;
  transition:background-color .15s,border-color .15s;
}
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button):visited,
header > a:not(.brand):not(.wordmark):not([class*="brand"]):visited { color:var(--ng-nav-text)!important; }
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button):hover,
header > a:not(.brand):not(.wordmark):not([class*="brand"]):hover {
  background:var(--ng-nav-hover)!important;border-color:var(--ng-nav-hover)!important;color:var(--ng-nav-text)!important;text-decoration:none;
}
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button):focus-visible,
header > a:not(.brand):not(.wordmark):not([class*="brand"]):focus-visible {
  outline:3px solid var(--ng-nav-focus);outline-offset:3px;
}
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button)[aria-current="page"],
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) .is-active {
  border-color:var(--ng-nav-focus);box-shadow:inset 0 -3px var(--ng-nav-focus);
}
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button):disabled,
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) [aria-disabled="true"] {
  opacity:.55;cursor:not-allowed;
}
:is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) [hidden] { display:none!important; }
.nogate-navigation, header nav:not(.mobile-nav):not(.student-steps), .top-actions {
  gap:8px;
  flex-wrap:wrap;
}
.nogate-navigation { display:flex;align-items:center;margin-block:12px; }
@media (max-width:620px) {
  :is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button) { min-height:44px; }
}
@media (prefers-reduced-motion:reduce) {
  :is(.top-actions, .admin-switcher, .admin-inline-actions, .nogate-navigation, nav) :is(a, button) { transition:none; }
}
