/*!
 * db-controls.css — styling for the sort <select> (db-sort.js) and the
 * grid/list view toggle (db-view-toggle.js) used on database listing pages.
 * Auto-injected toolbar (#db-toolbar) mirrors the look of the existing
 * .db-filter-bar search/rarity bar on wiki/items.html so it fits in
 * whether or not that bar is already present on the page.
 */
.db-toolbar-auto {
  background: var(--color-surface, rgba(255,255,255,.03));
  border: 1px solid var(--color-border, rgba(255,255,255,.08));
  border-radius: 10px;
  padding: .75rem 1rem;
  margin-bottom: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  align-items: center;
}

.db-sort-select {
  background: var(--color-bg, #0a0a0f);
  color: var(--color-text, #e8e0d5);
  border: 1px solid var(--color-border, rgba(255,255,255,.15));
  border-radius: 6px;
  font-family: var(--font-body, inherit);
  font-size: .85rem;
  padding: .35rem .6rem;
  cursor: pointer;
}
.db-sort-select:focus {
  outline: none;
  border-color: var(--color-gold, #c8a84b);
}

.db-view-toggle {
  display: inline-flex;
  border: 1px solid var(--color-border, rgba(255,255,255,.15));
  border-radius: 6px;
  overflow: hidden;
  margin-left: auto;
}

.db-view-btn {
  background: transparent;
  color: var(--color-text-muted, rgba(232,224,213,.6));
  border: none;
  font-family: var(--font-gothic, inherit);
  font-size: .72rem;
  letter-spacing: .04em;
  padding: .38rem .75rem;
  cursor: pointer;
  transition: background .15s, color .15s;
}
.db-view-btn + .db-view-btn {
  border-left: 1px solid var(--color-border, rgba(255,255,255,.15));
}
.db-view-btn:hover {
  background: rgba(255,255,255,.06);
  color: var(--color-text, #e8e0d5);
}
.db-view-btn.active {
  background: rgba(200,168,75,.15);
  color: var(--color-gold, #c8a84b);
}

/* Grid view (default) just uses the container's existing flex/grid layout. */
[data-db-list].db-view-grid {
  display: flex;
  flex-wrap: wrap;
}

/* List view: one entry per row, more breathing room for name + meta. */
[data-db-list].db-view-list {
  display: flex;
  flex-direction: column;
  gap: .35rem;
}
[data-db-list].db-view-list > * {
  width: 100%;
  min-width: 0;
  flex-direction: row !important;
  justify-content: space-between;
  align-items: center;
}
