.v2-quick-index {
  --surface: #fff;
  --dim: #395579;
  --accent: #0b4ea2;
  --border: #c8d9ef;
  max-width: 980px;
  margin: 1rem auto 1.25rem;
  font-family: var(--font-sans);
}

.v2-quick-index h3 {
  margin: 0 0 0.5rem;
  text-align: center;
  color: var(--accent);
}

.v2-quick-index table {
  width: 100%;
  border-collapse: collapse;
  background: var(--surface);
  border: 1px solid var(--border);
}

.v2-quick-index th,
.v2-quick-index td {
  padding: 0.55rem 0.7rem;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: middle;
  font-size: 0.9rem;
}

.v2-quick-index th {
  background: #e6effb;
  color: var(--accent);
}

.v2-quick-index td {
  color: var(--dim);
}

.v2-full-index {
  --surface: #fff;
  --dim: #395579;
  --accent: #0b4ea2;
  --border: #c8d9ef;
  max-width: 980px;
  margin: 1rem auto 1.4rem;
  font-family: var(--font-sans);
}

.v2-full-index h3 {
  margin: 0 0 0.5rem;
  text-align: center;
  color: var(--accent);
}

.v2-full-index table {
  width: 100%;
  border-collapse: collapse;
  background: var(--surface);
  border: 1px solid var(--border);
}

.v2-full-index th,
.v2-full-index td {
  padding: 0.55rem 0.7rem;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: middle;
  font-size: 0.9rem;
  line-height: 1.35;
}

.v2-full-index th {
  background: #e6effb;
  color: var(--accent);
}

.v2-full-index td {
  color: var(--dim);
}

.v2-full-index th *,
.v2-full-index td * {
  font-size: inherit;
  line-height: inherit;
}

.v2-full-index tr:last-child td {
  border-bottom: 0;
}

@media (max-width: 960px) {
  .v2-quick-index,
  .v2-full-index {
    max-width: 100%;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
  }

  .v2-quick-index table,
  .v2-full-index table {
    width: max-content;
    min-width: 100%;
    table-layout: auto;
  }
}
