body {
    display: grid;
    grid-template-columns: 250px 1fr;
    grid-template-rows: 80px 1fr 40px;
    grid-template-areas: 
        "header header"
        "sidebar content"
        "sidebar footer";
    height: 100vh;
    margin: 0;
    background-color: #DDD;
}

body.hide-sidebar {
    grid-template-columns: 1fr;
    grid-template-areas: 
        "header"
        "content"
        "footer";
}

header.header {
    
    grid-area: header;
    position: fixed;
    width: 100%;
    display: flex;
    background-color: #095bad;
    align-items: center;
    z-index: 10;
    box-shadow: 
        0 2px 4px -1px rgba(0, 0, 0, .2),
        0 4px 4px 0px rgba(0, 0, 0, .14),
        0 1px 10px 0px rgba(0, 0, 0, .12);
}
header.header-title {
    font-size: 2.5rem;
    color:white;
}
header.header .logo {
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    font-size: 2rem;
    flex-basis: 250px;
    height: 100%;
}

header.header .menu-toggle {
    color: white;
    cursor: pointer;
}

header.header .spacer {
    flex: 1;
}

header.header .dropdown {
    position: relative;
    height: 100%;
}

header.header .dropdown-button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    font-size: 1.1rem;
    color: white;
    cursor: pointer;
}
.header-red {
   
    color:rgb(24, 23, 23);
}
header.header .dropdown-content {
    display: none;
    position: absolute;
    min-width: 100%;
    background-color: #f9f9f9;
    padding: 15px 0px;
    z-index: 100;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, .2);
}

header.header .dropdown:hover .dropdown-content {
    display: block;
}

header.header .dropdown-content ul {
    list-style: none;
    padding-left: 0;
    margin-bottom: 0;
}

header.header .dropdown-content a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #222;
    padding: 7px;
    font-size: 1.1rem;
}

header.header .dropdown-content a:hover {
    background-color: rgba(0, 0, 0, .05);
}

header.header .dropdown:hover {
    background-color: rgba(0, 0, 0, .1);
}

header.header .avatar {
    height: 75%;
    border-radius: 50%;
    margin-left: 10px;
}

aside.sidebar {
 /*   position: fixed; */
    top:55px;
    height: 100vh;
    display: flex;
    color: white;
    flex-direction: column;
    align-items: center;
    grid-area: sidebar;
    box-shadow: -5px 0px 25px 1px rgba(0, 0, 0, 0.4);
    background-color: #2c2868;
}

aside.sidebar .menu {
    width: 100%;
    flex-grow: 1;
}

aside.sidebar .menu ul.nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

aside.sidebar .menu li.nav-item {
    margin: 0;
    padding: 10px 10px 10px 25px;
}

aside.sidebar .menu li.nav-item:hover {
    background-color: rgba(189, 220, 222, 0.1);
}


aside.sidebar .menu li.nav-item a {
    font-size: 1.2rem;
    color: #fafafa;
    text-decoration: none;
}

body.hide-sidebar aside.sidebar {
    display: none;
}

aside.sidebar .sidebar-widgets {
    position: sticky;
    bottom: 20px;
}

aside.sidebar .sidebar-widget {
    display: flex;
    align-items: center;
}

aside.sidebar .sidebar-widget .icon {
    font-size: 3.5rem;
    margin: 2px 10px 2px 0px;
}

aside.sidebar .sidebar-widget .info {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
}

.division {
    widows: 80%;
    border: solid 1px #EEE;
}

aside.sidebar .info .main {
    font-size: 2rem;
}

main.content {
    background-color: #FFF;
    flex-direction: row;
    grid-area: content;
    margin: 10px;
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.2);
}

main.content .content-title {
    display: flex;
    align-items: center;
    padding-bottom: 15px;
    border-bottom: 2px solid #CCC;
}

main.content .content-title .icon {
    font-size: 3rem;
}

main.content .content-title h1 {
    color: #444;
    font-size: 1.8rem;
    font-weight: 300;
    margin: 0;
}

main.content .content-title h2 {
    color: #888;
    font-size: 1.2rem;
    font-weight: 300;
    margin: 0;
}
.wellcome {
    font-size: 1.5rem;
    color:rgb(9, 3, 61);
}
footer.footer {
  /*  position: fixed; */
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 20px;
    font-size: 1.2rem;
    grid-area: footer;
    background-color: #777272;
    color: #FFF;
 /*   position:fixed;
  /*  bottom: 0;
  /*  flex:1; */
}

.record {
    font-size: 2.2rem;
}
.titulo {
    font-size: 1.5rem;
    color: rgb(3, 0, 0);
}
.ladoAlado {
    display: inline-block;
    background-color: rgb(148, 179, 160);
}
.ladoAlado2 {
    display: inline-block;
    background-color: rgb(243, 142, 99);
}
.summary-boxes {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.summary-box {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    padding: 10px;
    border-radius: 10px;
    margin: 10px;
    min-width: 200px;
}

.summary-box .icon {
    font-size: 3.5rem;
}

.summary-box .title {
    font-size: 1.5rem;
}

.summary-box .value {
    font-size: 2rem;
}
.capag {
    color:rgb(13, 13, 13);
    background-color: #c6c5e8;
    width: 500px;
    padding: 10px;
    height: 250px;
    border-radius: 10px;
    border: 3px solid black;
    display: inline-block;
    box-shadow: 0px 8px 16px 0px rgba(204, 118, 118, 0.2);
}
.cauc {
    color:rgb(18, 19, 19);
    background-color: #b0b0bd;
    width: 500px;
    padding: 10px;
    height: 250px;
    border-radius: 10px;
    margin-left: 10px;
    border: 3px solid black;
    display: inline-block;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, .2);
}
.mesref {
    background-color: #6e8c6d;
    width: 500px;
    padding: 5px;
    color: white;
    display: flex;
}
.principal {
    width: 500px;
    padding: 5px;
    display: inline-block;
}
.analisa {
    width: 500px;
    padding: 5px;
    display: inline-block;
}
.inicio {
    display: flex;
    border-radius: 10px;
    height:500px;
    padding: 10px;
    font-size: 1.5rem;
    background-color: #d5ebda;
    box-shadow: 0px 0px 25px 0px rgba(228, 171, 171, 0.2);
}
.infoGeral{
    background-color: #e5ecf5;
    font-size: 1.5rem;
    height:550px;
    margin: 5px;
    padding: 10px;
    border-radius: 10px;
    box-shadow: 0px 0px 25px 0px rgba(228, 171, 171, 0.2);
}
.infoPrivacidade{
    background-color: #e5ecf5;
    font-size: 1.0rem;
   /* height:550px;*/
    margin: 5px;
    padding: 10px;
    border-radius: 10px;
    box-shadow: 0px 0px 25px 0px rgba(228, 171, 171, 0.2);
}
.botoes {
    width: 200px;
    display: inline-block;

}
.tracarlinha {
    width: 100%;
    border-bottom: 1px solid #000000;
  }

.carregando {
    width: 60px;
    height: 60px;
    background-color: transparent;
    border-radius: 50%;
    border: 12px solid #d10a0a ;
    border-top: 12px transparent;
    animation: loading 1s linear infinite;
}
/*@keyframes loading {
    0%{
    transform:    rotate(0deg);
    }
    100%{
    transform:     rotate (360deg);
    }
}
@media (max-width:768px) {
    .content {width:80% ; margin: 2 10%;}
     
}*/
.linha-horizontal {
    width: 100%;
    border-top: 4px solid #000;
}
.tabela {
    width: 200px;
}

.preloaderx {
    position: fixed;

    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.8);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}
  /* Estilos simples para o preloader */

  #preloader {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    font-size: 24px;
}

.spinner {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
}

    @keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
    }





 
.botao-flutuante {
    position: fixed;
}

/*---------------------*/
.educacao {
    font-size: 1.2rem;
    color:rgb(18, 19, 19);
    background-color: #dbe8e4;
    width: 550px;
    padding: 10px;
    height: 400px;
    border-radius: 5px;
    margin-left: 10px;
    border: 4px solid rgb(30, 29, 29);
    display: inline-block;
    vertical-align: top;
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, .2);
}

nav a {
  /*  margin: 0 15px;
    text-decoration: none;*/
    color: #e9d8d8;
}
nav a:hover {
    text-decoration: underline;
    color: #f4f7f4;
}

/* ----------------------------*/

/* Esconder a sidebar por padrão em dispositivos pequenos */
/*
@media screen and (max-width: 768px) {
    .sidebar {
      transform: translateX(-100%);
      position: absolute;
      top: 0;
      left: 0;
      height: 100%;
      background-color: #333;
      color: white;
      z-index: 1000;
    }
  
    .menu-icon {
      display: block;
      cursor: pointer;
      font-size: 24px;
      padding: 10px;
      background-color: #edc9c9;
      color: white;
    }
  }
  
  /* Mostrar a sidebar quando ativa 
  .sidebar.active {
    transform: translateX(0);
  }
 */
  /* gerado por ultimo pela IA 

@media (max-width: 768px) {
    .sidebar {
        display: none;
    }
    .menu-toggle {
        display: block;
    }
}
@media (max-width: 768px) {
    .main-content {
        width: 100%;
    }
}*/

/*    para fazer a sidebar alternar no celular (gerado pela IA) */

@media (max-width: 768px) {
    .sidebar {
        display: none;
    }

    .container {
        grid-template-columns: 1fr;
        width: 100%;
    }

    #toggleButton {
        display: block;
    }
}

#toggleButton {
  /*  display: none;*/
    position: fixed;
    top: 10px;
    right: 10px;
}