/* Shared dark navigation for all public-facing pages. */
.nav-menu { display: flex; align-items: center; gap: 4px; }
.nav-dropdown { position: relative; flex-shrink: 0; }
.nav-dropdown > summary {
  list-style: none; cursor: pointer; display: inline-flex; align-items: center;
  gap: 12px; user-select: none; white-space: nowrap;
}
.nav-dropdown > summary::-webkit-details-marker { display: none; }
.nav-dropdown > summary::marker { content: ''; }
.nav-dropdown-chevron { display: inline-block; width: 7px; height: 7px;
  border-bottom: 2px solid currentColor; border-right: 2px solid currentColor;
  transform: rotate(45deg); margin-top: -4px; transition: transform .18s ease; }
.nav-dropdown[open] .nav-dropdown-chevron { transform: rotate(225deg); margin-top: 4px; }
.nav-dropdown-menu { position: absolute; top: calc(100% + 10px); left: 0; z-index: 1200;
  min-width: 205px; padding: 8px; border: 1px solid rgba(96, 165, 250, .25);
  border-radius: 14px; background: #0c1729; box-shadow: 0 22px 50px rgba(0, 0, 0, .44); }
.nav-dropdown-link { display: flex; padding: 11px 12px; border-radius: 9px;
  font-size: .81rem; font-weight: 650; color: #a9bad2; text-decoration: none; white-space: nowrap; }
.nav-dropdown-link:is(:hover, .active) { color: #fff; background: rgba(96, 165, 250, .14); }
.nav-dropdown .hidden, .nav-dropdown-menu .hidden { display: none !important; }
.nav-item:focus-visible, .nav-dropdown-link:focus-visible, .mobile-menu-toggle:focus-visible {
  outline: 2px solid #6ca6ff; outline-offset: 2px;
}
.mobile-menu-toggle { display: none; align-items: center; justify-content: center;
  width: 40px; height: 40px; padding: 0; font-size: 20px; font-weight: 700;
  color: #cfe0ff; cursor: pointer; border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 10px; background: rgba(79, 140, 255, .08); }
@media (max-width: 1180px) {
  .island-nav { position: relative; }
  .nav-left { min-width: 0; }
  .nav-menu { display: none; position: absolute; top: calc(100% + 10px);
    left: 0; right: 0; flex-direction: column; align-items: stretch;
    gap: 3px; padding: 10px; border: 1px solid rgba(148, 163, 184, .18);
    border-radius: 16px; background: #0a1626; box-shadow: 0 18px 45px rgba(0, 0, 0, .4); }
  .nav-menu.mobile-open { display: flex; }
  .nav-menu .nav-item, .nav-dropdown, .nav-dropdown > summary { width: 100%; }
  .nav-menu .nav-item { display: flex; align-items: center; min-height: 40px; }
  .nav-dropdown > summary { justify-content: space-between; }
  .nav-dropdown-menu { position: static; width: 100%; margin-top: 6px; min-width: 0; box-shadow: none; }
  .mobile-menu-toggle { display: inline-flex; }
}
@media (max-width: 520px) {
  .nav-left { gap: 6px; }
  .brand-copy h1 { max-width: 130px; overflow: hidden; text-overflow: ellipsis; }
  .nav-right { gap: 5px; }
  .nav-right .btn, .nav-right .logout-btn { padding-left: 9px; padding-right: 9px; }
}
