/* ==========================================================
   Piattaforma Professionisti — token di base
   Palette Diskover: azzurro dominante, giallo di accento,
   antracite per il testo. Condiviso da tutte le pagine.
   ========================================================== */
:root {
  --antracite: #3B3B3D;
  --azzurro:   #2E9FE6;
  --azzurro-scuro: #1E8AD0;
  --giallo:    #F5A623;
  --bianco:    #FFFFFF;
  --grigio-bg: #F4F7FA;
  --grigio-testo: #5A5A5E;
  --grigio-bordo: #D8E0E8;
  --errore:    #C0392B;
  --errore-bg: #FBEDEB;
  --wa-verde:  #DCF8C6;
  --wa-header: #075E54;
}

* { margin: 0; padding: 0; box-sizing: border-box; }

html { height: 100%; }

body {
  font-family: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  color: var(--antracite);
  background: var(--bianco);
  min-height: 100%;
}

a { color: var(--azzurro); }

/* Bottone primario condiviso (CTA hero e submit login) */
.btn-primario {
  display: inline-block;
  width: auto;
  background: var(--azzurro);
  color: var(--bianco);
  font-size: 16px;
  font-weight: 700;
  font-family: inherit;
  padding: 14px 32px;
  border: none;
  border-radius: 8px;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

.btn-primario:hover:not(:disabled) {
  background: var(--azzurro-scuro);
  transform: translateY(-2px);
}

.btn-primario:disabled {
  opacity: 0.55;
  cursor: default;
}

.btn-primario:focus-visible,
a:focus-visible,
input:focus-visible {
  outline: 3px solid var(--giallo);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  * { transition: none !important; animation: none !important; }
}
