/* Header search bar + instant dropdown (shared across all pages) */
.nav-search { position: relative; flex: 0 0 auto; }
.nav-search-input {
  width: 240px; padding: 0.45rem 0.85rem 0.45rem 2.05rem;
  border: 1.5px solid var(--border); border-radius: 8px;
  font-size: 0.88rem; font-family: inherit; line-height: 1.4;
  background: var(--card-bg, #fff); color: var(--text);
  outline: none; transition: border-color 0.15s, box-shadow 0.15s;
}
.nav-search-input:focus { border-color: var(--accent); box-shadow: 0 0 0 3px rgba(37,99,235,0.12); }
.nav-search-input::placeholder { color: var(--text-muted); }
.nav-search-icon {
  position: absolute; left: 0.68rem; top: 50%; transform: translateY(-50%);
  width: 16px; height: 16px; color: var(--text-muted); pointer-events: none;
}
.nav-search-results {
  position: absolute; top: calc(100% + 6px); right: 0; width: 360px; max-width: 86vw;
  background: #fff; border: 1px solid var(--border); border-radius: 10px;
  box-shadow: 0 10px 30px rgba(15,23,42,0.14); max-height: 70vh; overflow-y: auto;
  display: none; z-index: 1200; padding: 0.3rem;
}
.nav-search-results.open { display: block; }
.nav-search-group-label {
  font-size: 0.67rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
  color: var(--text-muted); padding: 0.55rem 0.6rem 0.25rem;
}
.nav-search-item {
  display: flex; align-items: center; justify-content: space-between; gap: 0.75rem;
  padding: 0.5rem 0.6rem; border-radius: 7px; text-decoration: none; color: var(--text);
}
.nav-search-item:hover, .nav-search-item.active { background: #f1f5f9; }
.nav-search-item .nsi-name { font-size: 0.9rem; font-weight: 600; line-height: 1.25; }
.nav-search-item .nsi-sub { font-size: 0.76rem; color: var(--text-muted); white-space: nowrap; flex: 0 0 auto; }
.nav-search-empty { padding: 0.85rem 0.6rem; font-size: 0.85rem; color: var(--text-muted); }

/* Keep logo pinned left so search + links group on the right */
.main-nav .logo { margin-right: auto; }
.main-nav-links { gap: 1.5rem; }

@media (max-width: 600px) {
  /* EquipDB-style: logo + hamburger on top row, search full-width below */
  .main-nav .logo { order: 1; }
  .nav-toggle { order: 2; }
  .nav-search { order: 3; flex: 1 0 100%; width: 100%; margin-top: 0.7rem; }
  .nav-search-input { width: 100%; }
  .nav-search-results { width: 100%; right: 0; left: 0; max-width: none; }
  .main-nav-links { order: 4; }
}
