body, html {
  margin: 0;
  padding: 0;
  font-family: monospace;
  font-size: 1.2em;
  font-weight: bold;
  color: #002B5C; 
  background-color: #f8f9fb;
}

body {
  padding-top: 4em; /* regola in base all'altezza effettiva della navbar */
}


a {
  color: #0054A6; 
  text-decoration: none;
  transition: color 0.2s ease, text-decoration 0.2s ease;
}

a:hover {
  color: #0078D7; 
  text-decoration: underline;
}

nav {
  position: fixed;        /* fissa la navbar in alto */
  top: 0;                 /* posizione in cima alla finestra */
  left: 50%;              /* centro orizzontale della finestra */
  transform: translateX(-50%); /* centra il nav esattamente */
  width: 100%;            /* occupa tutta la larghezza della pagina */
  max-width: 40em;        /* ma il contenuto resta limitato come prima */
  padding: 2em 3em 0 3em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #f8f9fb; /* stesso colore di sfondo della pagina */
  z-index: 1000;          /* sta sopra agli altri elementi */
  box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* opzionale, per dare profondità */
}

#Lettere {
  margin-bottom: 4em; /* crea spazio prima di DOCUMENTI */
}

#header-logo {
  width: 10em;
}

#nav-navigation {
  display: flex;
}

#nav-navigation p {
  padding: 0 1em;
}

section {
  max-width: 40em;
  margin: auto;
  padding: 1em 3em;
  scroll-margin-top: 4em; /* altezza della navbar + padding extra */
}


section h1 {
  text-align: center;
  border-radius: 1em;
  color: white;
  background-color: #0054A6;
}

.indented {
  padding-left: 2em;
}

.red_unipd {
  color: #B5121B;
}

#last-update {
  text-align: center;
  font-size: 0.7em;
  color: gray;
}

#Copyright {
  text-align: center;
}

#link-github {
  word-break: break-word;
}

.tag-versione {
  font-size: 0.8em;
  color: gray;
}

@media (max-width: 600px) {
  #nav-navigation {
    display: none;
  }

  nav {
    position: static;  /* scorre con la pagina */
    transform: none;
    box-shadow: none;
    width: auto;
    max-width: 100%;
    padding: 0; /* niente padding extra */
  }

  /* Mostra solo il logo al posto della navbar */
  #header-logo {
    display: block;
    margin: 1em auto; /* centrato */
    width: 9em;
  }

  body {
    padding-top: 0; /* niente spazio extra */
  }

  section {
    padding: 0.8em 1em;
  }
}


.toggle-section::before {
  content: "▼ ";
  display: inline-block;
  margin-right: 0.5em;
  transition: transform 0.2s ease;
}

.toggle-section.collapsed::before {
  transform: rotate(-90deg);
}

.toggle-subsection::before {
  content: "▼ ";
  display: inline-block;
  margin-right: 0.5em;
  transition: transform 0.2s ease;
}

.toggle-subsection.collapsed::before {
  transform: rotate(-90deg);
}

.email-link {
  font-family: monospace;
  color: #0054A6;
  text-decoration: none;
  transition: color 0.2s;
}

.email-link:hover {
  color: #0078D7;
  text-decoration: underline;
}
