/* Data table — tableau de données générique avec 2 variantes :
   - sans entête : style "spec" (border-top marine, label gris/valeur marine)
   - avec entête (.data-table--with-header) : tableau classique avec thead. */

.data-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: var(--gap-m);
  font-size: 1rem;
}

/* ===== Variante sans entête : style spec (label/valeur) ===== */
.data-table:not(.data-table--with-header) {
  border-top: 2px solid var(--marine);
}
.data-table:not(.data-table--with-header) tbody tr {
  border-bottom: 1px solid var(--hairline);
}
.data-table:not(.data-table--with-header) th[scope="row"] {
  text-align: left;
  font-weight: 400;
  color: var(--ink-2);
  padding: 0.85rem 1rem 0.85rem 0;
  font-family: var(--font-body);
}
.data-table:not(.data-table--with-header) td {
  text-align: right;
  padding: 0.85rem 0;
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--ink);
}

/* ===== Variante avec entête : tableau classique ===== */
.data-table--with-header {
  background: var(--card-bg);
  border: var(--card-border);
  box-shadow: var(--card-shadow);
  border-radius: var(--radius-l);
  overflow: hidden;
}
.data-table--with-header thead {
  background: var(--marine);
  color: #fff;
}
.data-table--with-header thead th {
  padding: 0.85rem 1.25rem;
  text-align: left;
  font-family: var(--font-display);
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.data-table--with-header tbody tr {
  border-bottom: 1px solid var(--hairline);
}
.data-table--with-header tbody tr:last-child {
  border-bottom: 0;
}
.data-table--with-header tbody td {
  padding: 0.95rem 1.25rem;
  color: var(--ink);
  font-size: 1rem;
}
.data-table--with-header tbody td:first-child {
  font-family: var(--font-display);
  font-weight: 600;
  color: var(--marine);
}
