/* c0l0r4 dashboard — solo gli aggiustamenti locali. Token e componenti: str4tum-ds via CDN. */
body {
  background: var(--bg-base);
  color: var(--text-primary);
  font-family: var(--font-mono);
  margin: 0;
}

.skip-link {
  position: absolute;
  left: -9999px;
}
.skip-link:focus {
  left: var(--space-4);
  top: var(--space-4);
  padding: var(--space-2) var(--space-3);
  background: var(--bg-panel);
  z-index: 10;
}

.nav-tabs a.nav-tab { text-decoration: none; }

.sezione-titolo {
  font-size: var(--fs-lg);
  margin: var(--space-6) 0 var(--space-4);
}
.sotto-titolo {
  font-size: var(--fs-base);
  font-weight: var(--fw-semibold);
  margin: var(--space-6) 0 var(--space-2);
}

.tabella-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table td, .table th { vertical-align: top; }
/* Il DS sottolinea <strong> (enfasi): qui i titoli non sono link, i link sì. */
.table tbody td strong { border-bottom: none; }
.table td:first-child { min-width: 14ch; }
a.text-link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
.col-num { text-align: right; white-space: nowrap; }
.table .tag { min-height: 0; white-space: nowrap; }

.avviso {
  margin: var(--space-4) 0;
  padding: var(--space-4);
  border-left: 3px solid var(--accent-negative);
}
.avviso ul { margin: var(--space-2) 0 0; padding-left: var(--space-5); }

.gruppo-materiale {
  margin-bottom: var(--space-4);
  padding: var(--space-4);
}
.gruppo-materiale .sotto-titolo { margin-top: 0; }
.lista-voci { list-style: none; margin: 0; padding: 0; }
.lista-voci li {
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--border-subtle);
}
.lista-voci li:last-child { border-bottom: none; }
.lista-voci .tag { min-height: 0; }
.percorso {
  font-size: var(--fs-xs);
  color: var(--text-muted);
  word-break: break-all;
}

@media (max-width: 640px) {
  .page { padding: var(--space-4); }
  .page-header { flex-direction: column; }
}
