/* The library keeps navigation in place; only equipment rows scroll. */
#add-sidebar {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 0;
  padding: 14px 12px 0;
  background: var(--camp-surface, #f7f4ee);
  border: 0;
}
#add-sidebar .drawer-title { display: none; }
#add-sidebar .add-tabs { flex: none; margin: 0 0 12px; }
#panel-products:not([hidden]) {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}
.library-searchbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 40px;
  align-items: center;
  gap: 6px;
  flex: none;
  padding: 0;
  margin-bottom: 8px;
  background: transparent;
}
.library-searchbar #product-search {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  height: 40px;
  padding: 0 11px;
  margin: 0;
  border: 1px solid var(--camp-line, #d6d3c8);
  border-radius: 7px;
  background: #fff;
  box-shadow: none;
  font-size: 13px;
}
.library-searchbar #product-category {
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 40px;
  padding: 0 28px 0 11px;
  margin: 0;
  background-color: #f1ede3;
  border: 0;
  border-radius: 5px;
  font-size: 13px;
}
#library-options { position: relative; min-width: 0; }
#library-options > summary {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  cursor: pointer;
  list-style: none;
  border-radius: 5px;
}
#library-options > summary::-webkit-details-marker { display: none; }
#library-options > :not(summary) {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  width: 210px;
  z-index: 12;
  padding: 12px;
  background: var(--camp-surface, #f7f4ee);
  border-radius: 8px;
  box-shadow: 0 8px 24px #26272026;
}
#library-options label { display: block; margin: 0 0 10px; font-size: 13px; }
#library-options label:last-child { margin-bottom: 0; }
#library-options select { width: 100%; margin: 6px 0 0; font-size: 13px; }
#equipment-library-list {
  flex: 1;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding: 0 3px 100px;
  scroll-padding-top: 38px;
}
#equipment-library-list .gear-section { margin: 0; padding: 0; border: 0; }
#equipment-library-list .gear-section-head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 38px;
  margin: 0;
  padding: 10px 5px 6px;
  background: var(--camp-surface, #f7f4ee);
}
#equipment-library-list .gear-section-head h2,
#equipment-library-list .gear-section-head h3 { margin: 0; font-size: 13px; font-weight: 650; }
#owned-gear-count { display: none; }
#product-catalog { margin: 0; }
#equipment-library-list .product-card {
  position: relative;
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) 36px 36px;
  gap: 4px;
  align-items: center;
  min-height: 62px;
  margin: 0;
  padding: 9px 4px;
  border: 0;
  border-radius: 7px;
  background: transparent;
}
#equipment-library-list .product-card:hover,
#equipment-library-list .product-card:focus-within { background: #f1ede3; }
#equipment-library-list .product-preview {
  width: 32px;
  height: 32px;
  padding: 2px;
  background: #ece7dc;
  border-radius: 6px;
}
#equipment-library-list .product-copy { min-width: 0; }
#equipment-library-list .product-copy strong,
#equipment-library-list .product-copy > span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  line-height: 1.6;
  font-size: 13px;
}
#equipment-library-list .product-copy strong { font-weight: 500; }
#equipment-library-list .product-copy > span { color: #74766a; }
#equipment-library-list .product-add {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: #e3e6d8;
  color: #4f5b3e;
  font-size: 15px;
}
#equipment-library-list .product-add[hidden] { display: none; }
#equipment-library-list .gear-card-menu > summary,
#equipment-library-list .product-info {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 0;
  font-size: 15px;
  opacity: 0;
  pointer-events: none;
}
#equipment-library-list .product-card:hover .gear-card-menu > summary,
#equipment-library-list .product-card:focus-within .gear-card-menu > summary,
#equipment-library-list .gear-card-menu[open] > summary,
#equipment-library-list .product-card:hover .product-info,
#equipment-library-list .product-card:focus-within .product-info {
  opacity: 1;
  pointer-events: auto;
}
#equipment-library-list .gear-card-menu[open] { z-index: 5; }
#equipment-library-list .gear-card-actions { right: 0; width: 160px; }
#equipment-library-list .gear-card-actions button { font-size: 13px; }
#equipment-library-list .gear-card-menu[data-direction="up"] .gear-card-actions { top: auto; bottom: 100%; }
#equipment-library-list .gear-empty { font-size: 13px; }
#panel-custom:not([hidden]), #panel-kits:not([hidden]) { min-height: 0; overflow: auto; padding-bottom: 24px; }
@media (hover: none), (max-width: 700px) {
  #equipment-library-list .gear-card-menu > summary,
  #equipment-library-list .product-info { opacity: 1; pointer-events: auto; }
}
@media (max-width: 700px) {
  #add-sidebar { padding: 12px 12px 0; }
  #add-sidebar .add-tabs { position: sticky; top: 0; z-index: 3; }
  .library-searchbar { grid-template-columns: minmax(0, 1fr) 44px; }
  .library-searchbar #product-search,
  .library-searchbar #product-category { height: 44px; font-size: 16px; }
  #library-options > summary { width: 44px; height: 44px; }
  #equipment-library-list .product-card { grid-template-columns: 32px minmax(0, 1fr) 44px 44px; }
  #equipment-library-list .product-add,
  #equipment-library-list .gear-card-menu > summary,
  #equipment-library-list .product-info { width: 44px; height: 44px; }
}

.gear-search-empty { grid-column: 1 / -1; padding: 12px 0; }
.gear-search-empty .gear-empty { margin: 0 0 8px; }
.gear-search-link { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid currentColor; border-radius: 6px; color: inherit; font-size: 13px; text-decoration: none; }
.gear-search-link:hover { text-decoration: underline; }
.gear-search-link:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
/* Web lookup note above catalog results and in the custom form: what was found, its sources, Google's search suggestions. */
.gear-lookup-note{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin:4px 0 10px;font-size:12px;line-height:1.5;color:#5f6a4c}
.gear-lookup-note a{color:#535f3f;text-decoration:underline;text-underline-offset:3px}
.gear-lookup-note .lookup-suggest{display:block;width:100%;height:46px;border:0;margin-top:2px;background:transparent}
#custom-gear-lookup{margin:2px 0 8px}
