/* database.css -- Sidebar + scroll-spy layout */

.db-layout {
  display: grid;
  grid-template-columns: 1fr 240px;
  gap: var(--s-48);
  align-items: start;
}

.db-content {
  min-width: 0;
}

.db-section {
  margin-bottom: var(--s-64);
  scroll-margin-top: calc(var(--header-h) + var(--s-24));
}

.db-section__title {
  margin-bottom: var(--s-16);
}

.db-section__desc {
  color: var(--c-text-dim);
  font-size: 0.9375rem;
  line-height: 1.75;
  margin-bottom: var(--s-24);
  max-width: 640px;
}

/* Sidebar */
.db-sidebar {
  position: sticky;
  top: calc(var(--header-h) + var(--s-24));
}

.db-sidebar__title {
  font-family: var(--f-heading);
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--c-text-dim);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: var(--s-16);
}

.db-sidebar__link {
  display: block;
  font-size: 0.8125rem;
  color: var(--c-text-dim);
  text-decoration: none;
  padding: var(--s-8) var(--s-12);
  border-left: 2px solid transparent;
  transition: color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}

.db-sidebar__link:hover {
  color: var(--c-text);
}

.db-sidebar__link--active {
  color: var(--c-accent);
  border-left-color: var(--c-accent);
}
