/* ═══════════════════════════════════════
   WORKBENCH DATABASE — tables and local pull
   (WorkbenchDatabaseTemplates.js, WorkbenchLocalPull.js)
   ═══════════════════════════════════════ */

.wbdb-cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.wbdb-card-h {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--border);
}

.wbdb-card-h .wb-btn {
  margin-left: auto;
}

/* Wide tables scroll inside their card, so the page never scrolls sideways. */
.wbdb-grid {
  max-height: 420px;
  overflow: auto;
}

.wbdb-grid td {
  max-width: 320px;
  overflow: hidden;
  font: 12px var(--font-mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.wbdb-msg {
  padding: 12px 14px;
}

.wbdb-failed {
  color: var(--red);
}

.wbdb-list {
  max-height: 520px;
  margin: 4px 0 8px;
  overflow-y: auto;
}

.wbdb-list .wb-dim {
  margin-left: auto;
  font-size: 11.5px;
}

.wbdb-name {
  overflow: hidden;
  font: 12px var(--font-mono);
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ── Local pull ── */
.wbpl-cmd {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 6px 0;
}

.wbpl-cmd code {
  flex: 1;
  padding: 6px 8px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: var(--bg-primary);
  user-select: all;
}

.wbpl-after {
  color: var(--amber);
}

.wbpl-bar {
  height: 10px;
  margin: 6px 0;
  overflow: hidden;
  border-radius: 5px;
  background: var(--bg-tertiary);
}

.wbpl-bar > div {
  height: 100%;
  background: var(--accent);
  transition: width 0.3s ease;
}
