/* ===== Layout base ===== */
html, body {
  height: 100%;
  margin: 0;
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  transition: padding-left 0.3s ease;
}

body{
font-family:Arial;
margin:0;
background:#f4f6f9;
}

 
main {
  flex: 1;
}

/* padrão global --> direto nas paginas com tabela*/
/* padrão global */
thead th {
  text-align: center;
}

/* reforço para DataTables */
table.dataTable thead th {
  text-align: center;
}


/* HEADER */

header{
background:#1b2a3a;
color:white;
padding:3px;
display:flex;
justify-content:space-between;
flex-wrap:wrap;
}

/* LOGO */

.logo{
display:flex;
align-items:center;
gap:10px; /* espaço entre as imagens */
border:2px solid;
border-radius:10px;
border-image:linear-gradient(60deg,#ffd700,#4da3ff) 1;
box-shadow:0 0 8px rgba(0,0,0,0.25);
padding:5px;
}

.logo img{
height:60px;
width:auto;
display:block;
}



/* TOPBAR */

.topbar{
display:flex;
justify-content:space-between;
align-items:center;
box-shadow:0 0 8px rgba(0,0,0,0.25);
padding:14px 30px;
border-bottom:4px solid #ffd700;
flex-wrap:wrap;
}

/* BOTÃO MOBILE */

.menu-toggle{
display:none;
font-size:32px;
cursor:pointer;
color:white;
}

/* MENU */

.menu{
display:flex;
gap:34px;
flex-wrap:wrap;
align-items:center;
}

/* LINKS */

.menu a{
color:white;
text-decoration:none;
font-weight:600;
font-size:17px;      /* aumentou a fonte */
letter-spacing:0.4px;
padding:8px 10px;
border-radius:6px;
transition:all .3s ease;
}

/* HOVER */

.menu a:hover{
color:#ffffff;
font-weight:800;
background:blue;
}

/* LINK ATIVO */

.menu a.active{
color:#ffd700;
border-bottom:3px solid #ffd700;
}


/* TITULOS */

.color-mind{
color:yellow;
margin:0;
}

.titulo-pagina{
font-size:20px;
text-align:center;
margin-top:5px;
font-weight:600;
color:white;
}

.mind-titulo{
font-weight:800;
font-size:40px;
color:#ffd700;
margin:0;
}

/* BANNER */

.banner{
margin-top:5px;
text-align:center;
padding:15px;
background:#0a5cb8;
color:white;
}

.banner h1{
font-size:36px;
}

/* CARDS */

.img-card{
height:70%;
width:auto;
display:block;
}

.cards{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:25px;
padding:5px;
}

.card{
background:white;
padding:10px;
border-radius:10px;
box-shadow:0 4px 10px rgba(0,0,0,0.2);
transition:0.3s;
height:88%;

}

.card:hover{
transform:translateY(-4px);
}

/* AUTORES */

.autores{
padding:40px;
display:flex;
gap:20px;
flex-wrap:wrap;
}

.autor img{
width:120px;
border-radius:50%;
}

/* FOOTER */

.footer{
background:#1c232b;
color:#ffffff;
padding:6px 40px;
font-size:14px;
}

.footer-container{
display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
}

.footer-esquerda{
text-align:left;
}

.footer-direita{
text-align:right;
}

.footer a{
color:#4db5ff;
text-decoration:none;
}

.data{
color:#ffcc00;
}

.responsavel{
color:#2ecc71;
}

/* ===================== */
/* RESPONSIVIDADE */
/* ===================== */

@media(max-width:1000px){

.menu{
gap:20px;
}

.menu a{
font-size:16px;
}


.mind-titulo{
font-size:26px;
}

}

/* MOBILE */

@media(max-width:768px){

.menu{
display:none;
flex-direction:column;
width:100%;
background:#1b2a3a;
padding:10px 0;
}

.menu a{
font-size:18px;
padding:12px 20px;
border-top:1px solid rgba(255,255,255,0.1);
width:100%;
}

.menu.active{
display:flex;
}

.menu-toggle{
display:block;
}

.topbar{
align-items:center;
}

.footer-direita{
text-align:left;
margin-top:10px;
}

}
