/* JouleSpecs — Tabella Specifiche Tecniche (design guide v2.0 §4.5)
   Vive nel flusso della pagina: riga d'inchiostro in testa, righe carta fra i dati. */

.tabella-specs {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--text-sm);
}

.tabella-specs thead tr {
  border-bottom: 2px solid var(--color-ink);
}

.tabella-specs thead th {
  font-family: var(--font-mono);
  font-size: var(--text-xs);
  font-weight: 500;
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-text-tertiary);
  padding: 10px 12px 10px 0;
  text-align: left;
  background: transparent;
}

.tabella-specs tbody tr {
  border-bottom: var(--rule);
}

.tabella-specs tbody tr:last-child {
  border-bottom: var(--rule-strong);
}

.tabella-specs td {
  padding: 12px 12px 12px 0;
  vertical-align: baseline;
  background: transparent;
}

/* L'etichetta di riga come <th>, dove la tabella e` fatta di coppie
   etichetta-valore (l'enciclopedia): si legge come la prima colonna delle schede. */
.tabella-specs tbody th {
  padding: 12px 12px 12px 0;
  vertical-align: baseline;
  text-align: left;
}

.tabella-specs td:first-child,
.tabella-specs tbody th,
.tabella-specs__label {
  color: var(--color-text-secondary);
  font-weight: 400;
}

.tabella-specs td:nth-child(2),
.tabella-specs__value {
  color: var(--color-text-primary);
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
}

.tabella-specs__unit {
  color: var(--color-text-tertiary);
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.tabella-specs__nd {
  color: var(--color-text-disabled);
  font-style: italic;
}

/* Un dato che manca e` un trattino con il motivo nella colonna della fonte:
   «Non dichiarato», col link a dove abbiamo guardato, non sembra una mancanza
   nostra (J12). Resta in tabella, in tono piu` basso, perche` e` informazione
   — sul produttore, non sul prodotto. */
.tabella-specs__riga--assente td:first-child {
  color: var(--color-text-tertiary);
}

.tabella-specs__assenza {
  color: var(--color-text-tertiary);
}

/* Banner cloud-dependency — sopra la sezione specifiche */
.specs-cloud-warning {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: 12px 16px;
  background: var(--color-warning-subtle);
  border-left: 3px solid var(--color-warning);
  margin-bottom: var(--space-6);
  font-size: var(--text-sm);
  color: var(--color-text-primary);
}

/* Su mobile: scroll orizzontale, mai collasso in accordion */
.tabella-specs-wrapper {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Tabelle di soli numeri dopo l'etichetta: allineati a destra, in colonna,
   cosi` minimo e massimo si confrontano a colpo d'occhio. */
.tabella-specs--numeri td {
  padding-left: 12px;
  font-family: var(--font-mono);
  font-variant-numeric: tabular-nums;
  color: var(--color-text-primary);
  text-align: right;
}

.tabella-specs--numeri thead th:not(:first-child) {
  text-align: right;
}

.tabella-specs--numeri td:last-child,
.tabella-specs--numeri thead th:last-child {
  padding-right: 0;
}
