/* =====================================================================
   Tipografia brand UnLead Cloud
   - Archivo (800/900) ....... titoli e display
   - Inter (400/500/600) ..... testo corrente
   - IBM Plex Mono (400/500) . etichette, specifiche tecniche, numeri
   ===================================================================== */
:root {
  --font-display: 'Archivo', sans-serif;
  --font-body: 'Inter', sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;
}

body {
  background-color: #f4f6f9;
  font-family: var(--font-body);
}

/* Titoli e display: Archivo, pesi alti */
h1, h2, h3, h4, h5, h6,
.navbar-brand,
.modal-title,
.card-header strong,
.login-card h4 {
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: -0.01em;
}
h1, .navbar-brand { font-weight: 900; }

/* Numeri grandi nelle card statistiche della dashboard: display, peso 900 */
.stat-card .display-6 {
  font-family: var(--font-display);
  font-weight: 900;
}

/* Pulsanti e nav: Inter medio, leggermente più leggibile dei default Bootstrap */
.btn, .nav-link, .form-label {
  font-family: var(--font-body);
  font-weight: 500;
}

/* Etichette, specifiche tecniche e numeri: IBM Plex Mono */
code, kbd, pre, samp,
.badge,
.text-mono,
table code {
  font-family: var(--font-mono);
}

/* Piccole etichette informative (form-text, id, date tecniche) */
.form-text,
small.text-muted,
.text-nowrap.small {
  font-family: var(--font-mono);
  font-weight: 400;
}

/* =====================================================================
   Layout esistente
   ===================================================================== */
.card { border: none; box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.login-wrapper { min-height: 100vh; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg,#1e293b,#334155); }
.login-card { width: 380px; }
table.dataTable td, table.dataTable th { vertical-align: middle; }
.text-light-50 { color: rgba(255,255,255,.7) !important; }

/* Stato di caricamento sui bottoni (vedi app.js): blocca i click via CSS
   invece di usare l'attributo disabled, che se impostato troppo presto
   farebbe perdere il valore del bottone nei dati inviati dal form. */
.btn-loading {
  pointer-events: none;
  opacity: .75;
  cursor: wait;
}

/* Intestazioni di tabella: Archivo maiuscolo leggero, in stile "specifiche tecniche" */
.table thead th {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: #475569;
}
