body {
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif, sans-serif;
  background-color: #f7f5ee5d;
  margin: 0;
  padding: 0;
}

h1 {
  color: #fff;
  background-color: #1976d2f5;
  padding: 1%;
  border-radius: 1%;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
}

h2 {
  color: #fff;
  background-color: #1976d2f5;
  padding: 1%;
  border-radius: 1%;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.2);
}

.logo {
  max-width: 7%;
  vertical-align: middle;
}

.logo1 {
  max-width: 85%;
  vertical-align: middle;
}

.justificado {
  text-align: justify;
}

footer {
  width: 100%;                 /* ocupa largura total */
  background-color: #f1f0f0;   /* cor de fundo cinza claro para visualização clara */
  margin: 0 !important;
  padding-left: 0;
  padding-right: 0;
}

footer a {
  word-break: break-word;
  overflow-wrap: break-word;
  text-decoration: none;
}

footer p {
  margin: 0;
  font-size: 14px;
}

.card-body .list-group-item:nth-child(odd) {
  background-color: #ffffff; /* branco para linhas ímpares */
}

.card-body .list-group-item:nth-child(even) {
  background-color: #f2f2f2; /* cinza claro para linhas pares */
}

#fonte {
  background-color: #95ec83e1;
}

.cad-otimo { color: #0277BD !important; font-weight: bold !important; }
.cad-bom { color: #009688 !important; font-weight: bold !important; }
.cad-suficiente { color: #f1cd3d !important; font-weight: bold !important; }
.cad-regular { color: #af1a1a !important; font-weight: bold !important; }

/* ACOMPANHAMENTO */
.acomp-otimo { color: #0277BD !important; font-weight: bold !important; }
.acomp-bom { color: #009688 !important; font-weight: bold !important; }
.acomp-suficiente { color: #f1cd3d !important; font-weight: bold !important; }
.acomp-regular { color: #af1a1a !important; font-weight: bold !important; }

/* RESULTADO FINAL */
.result-otimo { color: #0277BD !important; font-weight: bold !important; }
.result-bom { color: #009688 !important; font-weight: bold !important; }
.result-suficiente { color: #f1cd3d !important; font-weight: bold !important; }
.result-regular { color: #af1a1a !important; font-weight: bold !important; }

.fonte-dados {
  text-align: center;
  font-size: 0.9rem;
  margin-top: 30px;
  color: #444;
}

canvas {
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0px 2px 10px rgba(0,0,0,0.1);
}