html {
  scroll-behavior: smooth;
}
.alert-debug {
  color: black;
  background-color: white;
  border-color: #d6e9c6;
}
.alert-error {
  color: #b94a48;
  background-color: #f2dede;
  border-color: #eed3d7;
}
.modal-footer {
  justify-content: center;
}
#id_remember_container {
  margin-left: 1.25rem;
}
ul.sidebar .disabled {
  font-style: italic;
  color: rgba(255, 255, 255, 0.4) !important;
}
#fascicolo_fasi,
#seduta_sezioni {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
#fascicolo_fasi li,
#seduta_sezioni li {
  flex: 1 1 auto;
  border: 1px solid #000000;
}
#fascicolo_fasi li + li,
#seduta_sezioni li + li {
  margin-left: -1px;
}
#fascicolo_fasi li span,
#fascicolo_fasi li a,
#seduta_sezioni li span,
#seduta_sezioni li a {
  display: block;
  height: 100%;
  padding: 1.5rem 0;
  background-color: #FFAAAA;
  color: #000000;
  text-align: center;
}
#fascicolo_fasi li span,
#seduta_sezioni li span #fascicolo_fasi li a:hover,
#seduta_sezioni li a:hover {
  text-decoration: none;
}
#fascicolo_fasi li a.closed,
#seduta_sezioni li a.closed {
  background-color: #AAFFAA;
}
h2 {
  margin-top: 3rem;
}
.actions {
  margin-bottom: 1rem;
  text-align: right;
}
input[type="checkbox"].form-control,
input[type="radio"].form-control,
input[type="file"].form-control {
  display: initial;
  width: auto;
  border: none;
}
.form-block .formset-subsection i {
  cursor: pointer;
}
.form-block .row {
  border: 1px solid lightgray;
  margin-top: -1px;
}
.form-block .row > * {
  padding: 0.5rem;
}
@media (min-width: 768px) {
  .form-block .row > * + * {
    border-left: 1px solid lightgray;
  }
}
.form-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.form-block ul.errorlist {
  margin-bottom: 0.5rem;
  color: #e02d1b;
}
.form-block table thead th:last-of-type {
  width: 5%;
}
.form-block .empty-form {
  display: none;
}
.form-block fieldset {
  padding-top: 0.5rem;
  padding-bottom: 1rem;
}
.form-block h3 {
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
}
button.add-item:disabled {
  display: none;
}
.false-value {
  border-radius: 50%;
  color: #de0e0e;
  font-size: 16px;
  line-height: 1;
  text-align: center;
  width: 20px;
  height: 20px;
  display: inline-block;
}
.true-value i {
  color: #00ff00;
}
/*# sourceMappingURL=project.css.46daa96ff58a.map */
.costo-fin-item {
  list-style: none;
  position: relative;
  padding-left: 1.2em;
  /* Imposta lo spazio per il marcaggio */
}
.costo-fin-marker {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0.8em;
  /* Imposta la dimensione del carattere */
  color: #999;
  /* Imposta il colore del carattere */
}
.highlighted {
  background-color: rgba(252, 233, 3, 0.48);
}
/* «VEDI DOCUMENTI» STA DENTRO UNA CELLA, e la larghezza della cella la decide la
   griglia. Con il corpo e l'imbottitura di un pulsante normale non ci entrava, e
   Tabulator lo tagliava a metà parola. Qui è un pulsante da tabella — più piccolo,
   imbottitura ridotta, su una riga sola — e le colonne che lo ospitano hanno una
   larghezza fissa che lo contiene. */
button.vedi-documenti {
  display: inline-block;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid transparent;
  padding: 0.15rem 0.55rem;
  font-size: 0.8125rem;
  line-height: 1.4;
  border-radius: 0.35rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  color: #fff;
  background-color: #4e73df;
  border-color: #4e73df;
}
/* Stile del pulsante "Vedi documenti" quando il mouse ci passa sopra */
button.vedi-documenti:hover {
  background-color: #3d5ace;
}
.topbar .dropdown-list {
  width: 35rem !important;
}
#sezioni_programmazione {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
}
#sezioni_programmazione li {
  flex: 1 1 auto;
  border: 1px solid #000000;
}
#sezioni_programmazione li + li {
  margin-left: -1px;
}
#sezioni_programmazione li span,
#sezioni_programmazione li a {
  display: block;
  height: 100%;
  padding: 1.5rem 0;
  background-color: #b7bcd7;
  color: #000000;
  text-align: center;
}
#sezioni_programmazione li span {
  cursor: default;
}
#sezioni_programmazione li a:hover {
  text-decoration: none;
}
#sezioni_programmazione li a.closed {
  background-color: #AAFFAA;
}
.ag-cell-wrapper {
  line-height: 1.5em !important;
}
td,
th {
  /*width: 100px;*/
  word-wrap: break-word;
}
label {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
label:hover {
  text-overflow: initial;
  white-space: normal;
}
table {
  width: 100%;
  border-collapse: collapse;
}
th,
td {
  padding: 8px;
  text-align: left;
  border: 1px solid #ddd;
}
.django-ckeditor-widget {
  width: 100%;
  display: block !important;
}
div.row li {
  list-style-type: square;
  padding-left: 10px;
  margin-left: 20px;
}
td li {
  list-style-type: square;
  padding-left: 10px;
  margin-left: 20px;
}
.odg-inline-form .row {
  border: none!important;
}
.odg-inline-form .form-group {
  margin-bottom: 0;
}
.odg-inline-form label {
  text-align: right;
}
.odg-inline-form div,
.odg-inline-form label {
  border-left: none!important;
}
.odg-inline-form input[name$="-punto"] {
  white-space: nowrap;
  min-width: 80px;
  text-overflow: clip;
}
button.add-item:disabled {
  display: none;
}
.ag-cell-wrapper {
  line-height: 1.5em !important;
}
span.headline {
  font-weight: bold;
  background-color: #fbe6b1;
}
.helptext {
  font-style: italic;
}

/* LA PAGINA «INFORMAZIONI». La misura tipografica: una riga di prosa oltre le 70
   battute circa costringe l'occhio a cercare l'inizio della riga dopo, e le carte
   di questa pagina sono larghe quanto lo schermo. Si applica al testo che si legge,
   non alle tabelle. */
.misura-testo {
  max-width: 68ch;
}
.col-30p {
  width: 30%;
}
.col-25p {
  width: 25%;
}

/* Il punto che separa il copyright dal collegamento alla pagina «Informazioni».
   È decorativo — porta `aria-hidden` nel template — quindi il suo colore non
   risponde al requisito di contrasto del testo. */
.footer-separatore {
  margin: 0 0.4rem;
  color: #858796;
}

/* L'ELENCO DELLE NOTIFICHE. Lette e non lette si distinguono come facevano
   quando la tabella era scritta nel template: sfondo tenue per le lette, testo
   in evidenza per quelle ancora da leggere. I selettori nominano anche la riga
   di Tabulator, che porta i propri colori alternati. */
.tabulator-row.notifica-letta {
  background-color: rgb(242, 246, 252);
}
.tabulator-row.notifica-da-leggere {
  font-weight: bolder;
}

/* L'INTESTAZIONE DELLE PAGINE DI ELENCO, IN UNA FASCIA SOLA.
   Prima della prima riga di dati ce n'erano quattro, sovrapposte: il titolo con
   la sua descrizione, il pulsante «Crea nuovo…» su una riga tutta sua, i pulsanti
   di scarico su un'altra, e la testata della carta che ripeteva il titolo — utile
   solo perché porta il numero di righe. Su un portatile se ne andava buona parte
   dell'altezza dello schermo, e alla tabella restavano quattro o cinque righe.
   Ora sono una fascia sola: il titolo con il numero e la descrizione a sinistra,
   i pulsanti a destra; sotto i 36rem i pulsanti vanno a capo e restano allineati
   a sinistra, invece di stringersi. */
.intestazione-elenco {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.5rem 1rem;
  padding: 0.75rem 1.25rem;
}
.intestazione-elenco-testo {
  min-width: 0;
  /* Cresce per prendere lo spazio che i pulsanti non usano, ma non a loro spese:
     è `.intestazione-elenco-azioni` a dire per prima quanto le serve. */
  flex: 1 1 18rem;
}
/* La descrizione è una riga di servizio, non prosa: sta sotto il titolo in
   piccolo, e non porta il margine che i paragrafi hanno per definizione. */
.intestazione-elenco-istruzione {
  margin: 0.15rem 0 0;
  font-size: 0.85rem;
  color: #6c757d;
}
.intestazione-elenco-azioni {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  /* `flex: 0 0 auto` è la riga che tiene i pulsanti in fila. Senza, il blocco di
     testo accanto — che ha `flex-grow: 1` — si prende tutto lo spazio, e i
     pulsanti si restringono fino alla larghezza del più largo impilandosi uno
     sull'altro: nell'Anagrafica delle persone, che di pulsanti ne ha quattro,
     l'intestazione diventava più alta di quella che doveva sostituire. Così
     invece i pulsanti dichiarano per primi quanto spazio gli serve, e il testo
     prende il resto; quando davvero non ci stanno, il ritorno a capo è del
     contenitore e li manda tutti insieme sulla riga sotto. */
  flex: 0 0 auto;
}
/* L'etichetta che fa da pulsante per caricare il modello XLS: la casella del
   file è nascosta, e il clic arriva attraverso l'etichetta. */
.carica-template {
  cursor: pointer;
}

/* Un pulsante dentro una cella della griglia non va a capo: la cella è stretta e
   l'a capo lo taglierebbe in due righe dentro un'altezza fatta per una. */
.una-riga {
  white-space: nowrap;
}

/* I RECAPITI SOTTO IL NOME, NELLA SCHEDA DI UN COMPONENTE. Erano una riga per
   contatto più un elenco puntato per gli indirizzi della direzione tecnica:
   quattro o cinque righe per tre informazioni. Qui l'etichetta sta sopra il
   valore, in piccolo, e le voci si affiancano finché c'è spazio. */
.metadati-scheda {
  display: flex;
  flex-wrap: wrap;
  gap: 0.1rem 1.75rem;
  margin: 0.4rem 0 0;
}
.metadati-scheda dt {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #6c757d;
  margin: 0;
}
.metadati-scheda dd {
  margin: 0;
  font-size: 0.9rem;
}

/* LE LINGUETTE DELLA SCHEDA. Le pillole di Bootstrap stanno attaccate l'una
   all'altra e appoggiate sul contenuto: un filetto sotto le separa da quello che
   aprono, e un po' di distanza fra loro le rende cinque cose invece di una
   striscia sola. */
.linguette-scheda {
  gap: 0.35rem;
  border-bottom: 1px solid #e3e6f0;
  padding-bottom: 0.6rem;
  margin-bottom: 1.1rem;
}
.linguette-scheda .nav-link {
  padding: 0.3rem 0.9rem;
  font-size: 0.9rem;
}
.linguette-scheda .nav-link:not(.active) {
  color: #6c757d;
  background-color: #f8f9fc;
  border: 1px solid #e3e6f0;
}
.linguette-scheda .nav-link:not(.active):hover {
  background-color: #eaecf4;
  color: #3a3b45;
}

