/* Last edited: 2026-01-17 */

/* Remove the border from the directory icon */
[dir="ltr"] .md-nav__link .md-icon:last-child {
    margin-left: 0;
}

/* Change the base font size for the whole page */
/* Change from default 16px */
/*html {
 *  font-size: px;
 * }*/

/* Main text. Orig: .8rem (16px) */
/*.md-typeset {
 *  font-size: .9rem;
 * }*/

/* Sidebar. Orig: .7rem (14px) */
/*.md-nav {
 *  font-size: .8rem;
 * }*/

/* Main text link color */
/*.md-typeset a {
    color: var(--md-default-fg-color--light);
}*/

/* Rigth sidebar color */
/*.md-nav--secondary a {
  color: var(--md-default-fg-color--light);
}*/

/* KATEX */
/*.md-typeset .katex {
    font-size: 1.125em;
}*/

/* LIST */
/* Zero bottom margin for all li - CRUCIAL TO AVOID RESIDUAL SPACING */
.md-typeset ul li,
.md-typeset ol li {
  margin-bottom: 0;
}
/* Spacing BETWEEN list items (using MARGIN on li) - CONDITIONAL: Only if there is another li BEFORE AND IF the *FIRST CHILD* of THIS li is a <p> */
.md-typeset li + li > p:first-of-type { 
  /* Adjacent sibling selector (+) AND direct child selector (>) AND :first-of-type selector - CRUCIAL */
  margin-top: 0rem; /* Spacing between items WITH <p> - Adjust this value to control "one line" spacing */
}
/* Spacing ONLY for the FIRST sublist WITHIN a parent list item THAT HAS A PARAGRAPH */
.md-typeset li > p + ul,
.md-typeset li > p + ol {
  margin-top: 0rem;
}
/* Remove internal padding of paragraphs WITHIN LIs */
.md-typeset li > p {
  margin: 0;
  padding: 0;
}
/* Spacing between paragraphs WITHIN THE SAME list item */
.md-typeset li > p + p {
  margin-top: 0.5rem;
}
/* Remove extra margin on lists immediately after a paragraph outside the list */
.md-typeset > p + ul,
.md-typeset > p + ol {
  margin-top: 0.8rem;
}

/* CODE */
.md-typeset code:not([class]) {
  font-size: .875em;
}

/* FIGCAPTION */
.md-typeset figcaption:not([class]) {
  font-size: .875em;
  font-style: normal;
}

/* TABLE */
.md-typeset table:not([class]) {
  font-size: .875em;
  line-height: 1;
  border: none;
  border-collapse: collapse;
}
.md-typeset table:not([class]) td,
.md-typeset table:not([class]) th {
  border: 1px solid var(--md-typeset-table-color);
  vertical-align: middle;
}
.md-typeset table:not([class]) th {
  background-color: WhiteSmoke;
}

/* DEFINITION */
dfn, .term-highlight {
    font-style: normal;
    /* Define o tipo de sublinhado */
    text-decoration: underline dotted CornflowerBlue;
    text-underline-offset: 3px;
    /*text-decoration-thickness: 3px;*/
    /* Sinaliza que há informação adicional */
    cursor: help;
    /* Garante que a cor não seja confundida com um link padrão */
    color: inherit;
}
dfn:hover {
    background-color: #f0f8ff; /* Mudança sutil no hover */
                  text-decoration-style: dashed;
}

/* ANIMATIONS */
.typewriter {
  overflow: hidden; /* Garante que o texto fique escondido antes de aparecer */
  border-right: .15em solid orange; /* O cursor piscante */
  white-space: nowrap; /* Mantém em uma linha */
  margin: 0 auto; /* Centraliza */
  letter-spacing: .10em;
  
  /* Animação: digitação + cursor */
  animation: 
  typing 3.5s steps(40, end),
  blink-caret .75s step-end infinite;
}

/* Animação da largura crescendo */
@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

/* Animação do cursor piscando */
@keyframes blink-caret {
  from, to { border-color: transparent }
  50% { border-color: orange; }
}

/* Define a animação */
@keyframes pulse-attention {
  0% {
    box-shadow: 0 0 0 0 rgba(126, 87, 194, 0.7); /* Cor do seu tema */
  }
  70% {
    box-shadow: 0 0 0 10px rgba(126, 87, 194, 0); /* Expande e desaparece */
  }
  100% {
    box-shadow: 0 0 0 0 rgba(126, 87, 194, 0);
  }
}

/* Aplica ao botão específico. 
 *  Você pode adicionar uma classe específica no markdown: 
 *  [Inscrever-se](link){ .md-button .md-button--primary .btn-pulse } 
 */
.btn-pulse {
  animation: pulse-attention 2s infinite;
}

/* Adiciona transição suave para todos os cards */
.grid.cards > ul > li {
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  border: 1px solid transparent; /* Prepara para borda */
}

/* Estado Hover (ao passar o mouse) */
.grid.cards > ul > li:hover {
  transform: translateY(-7px); /* Move o card para cima */
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15), 
  0 5px 15px rgba(0,0,0,0.1); /* Sombra difusa */
  border-color: #7e57c2; /* Opcional: Borda colorida (roxo do tema) */
  z-index: 2;
}

.hero-banner {
  /* 1. O truque da clareza: Camada branca (0.85) sobre a imagem */
  background-image: 
  linear-gradient(rgba(255, 255, 255, 0.85), rgba(255, 255, 255, 0.85)),
  url('../img/foll-1920-1080.webp'); /* Ajuste o caminho da imagem */
  
  /* 2. Configurações de posicionamento */
  background-size: cover;      /* A imagem cobre toda a área */
  background-position: center; /* Centraliza a imagem */
  
  /* 3. Espaçamento e Alinhamento */
  padding: 1.5rem;     /* Altura do banner (cima/baixo) e laterais */
  /*text-align: center;*/          /* Centraliza o texto (opcional) */
  border-radius: 0.5rem;       /* Arredonda os cantos */
  /*margin-bottom: 2rem;*/         /* Espaço para o resto do texto */  
}

/* Aumentar e destaca o título dentro do banner */
.hero-banner h1 {
  margin-top: 0;
  font-weight: 700;
  color: #2c3e50; /* Cor do texto */
}
