:root {
  --cor-fundo: #d3b99f;
  --cor-texto: #210203;
  --cor-hover: #ede580;
  --cor-detalhe: #22ff00;
  --font-retro: "VT323", monospace;
  --cor-fundo-2: #A4AF69;
  --cor-fundo-update: #858585;
  --cor-titulo-update: #292344;
  --cor-azul-profundo: #0849FF;
}

/* === BASE === */
* {
  image-rendering: crisp-edges;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  scrollbar-color: cadetblue gainsboro;
  overscroll-behavior: none;
}

body {
  background-color: var(--cor-fundo);
  color: var(--cor-texto);
  font-family: var(--font-retro);
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

.bg-layer {
  position: fixed;
  inset: 0;
  background-image: url("imgs/background-tile.png");
  background-repeat: repeat;
  opacity: 0.15;
  z-index: -1;
}

header {
  text-align: center;
  padding: 1rem 0;
}

/* === GRID PRINCIPAL === */
.site-grid {
  display: grid;
  grid-template-columns: 20% 60% 20%;
  align-items: start;
  gap: 1rem;
  padding: 0rem;
  max-width: 1200px;
  margin: 0 auto;
}

.side {
  background-image: url("caderno.png");
  background-size: 100%;
  background-repeat: no-repeat;
  height: auto;
  margin-top: 1rem;
  padding: 2.5rem;
  border-radius: 12px;
}

.side-right {
  height: auto;
  border-radius: 12px;
}

.content {
  background: var(--cor-fundo-2);
  border: 2px solid var(--cor-texto);
  margin: 2rem;
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
}

footer {
  text-align: center;
  padding: 1rem;
  border-top: 1px dashed var(--cor-fundo-2);
  margin-top: 2rem;
}

.content-2, content-3 {
  color: var(--cor-fundo-2);
  background: var(--cor-texto);
  background-size: contain;
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
}

/* === MURAL DE NOTAS === */
.content-notes {
  grid: 60%;
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  padding: 20px;
  justify-content: center;
  background-color: #f0f0f0;
  background-size: 40px 40px;
  background-image: 
    linear-gradient(to right, #ccc 1px, transparent 1px),
    linear-gradient(to bottom, #ccc 1px, transparent 1px);
}

.nota {
  width: 180px; /* corrigido */
  height: 180px;
  background-color: #fff;
  box-shadow: 2px 2px 6px rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  font-weight: bold;
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
}

.nota img {
  filter: saturate(90%) sepia(1%) hue-rotate(30deg) brightness(91%) contrast(85%);
  transition: filter 0.5s;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.nota:hover {
  transform: translateY(-5px) scale(1.05);
  box-shadow: 4px 4px 10px rgba(0,0,0,0.5);
  border-color: #FF0080;
}

/* === CONTAINERS DE PROJETOS === */
.container {
  background-color: var(--cor-texto);
  color: var(--cor-fundo-2);
  display: flex;
  flex-direction: row;
  width: 100%;
  height: fit-content;
  gap: 30px;
  padding: 30px 30px 0 30px;
  overflow-x: scroll;
  flex-wrap: nowrap;
  border-top: solid;
  border-bottom: solid;
  border-width: 1px;
}

.container figure {
  width: 250px;
  flex-shrink: 0;
  margin: 0;
}

.container figure img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* === UPDATES === */
.updates {
  max-width: 250px;
  margin: 2rem auto;
}

.window {
  font-family: 'VT323', monospace;
  overflow: hidden;
}

.title-bar {
  background-color: #0013e9;
  border: 2px solid #000;
  color: white;
  padding: 0.5rem 1rem;
  font-weight: bold;
}

.window-content {
  background-color: #e0e0e0;
  border: 2px solid #000;
  padding: 1rem;
}

.note {
  background-color: #e0e0e0;
  color: #000;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}

/* === ASCII ART === */
.ascii {
  height: 100%;
  width: 100%;
  transition: width 2s;
}

.ascii:hover {
  width: 120%;
  transform: translateX(-5px) scale(1.05);
  shadow: 4px 4px 10px rgba(0,0,0,0.5);
}

/* === MURAL DE GIFS === */
.mural-gifs {
  max-width: 400px;
  font-family: var(--font-retro);
  color: var(--cor-fundo);
  height: fit-content;
  padding: 10px 20px 30px 400px;
  border: #000 2px;
  border-radius: 10px;
  background: var(--cor-texto);
}

.mural-gifs img {
  position: relative;
  left: 10px;
  max-width: 120px;
  gap: 20px;
  height: auto;
  display: flex;
}

.poemas {
  background: var(--cor-fundo-2);
  margin: 20px 20px 20px 20px;
  height: auto;
  width: 400px;
  padding: 20px;
  gap: 5px;
  height: fit-content;
  border: 2px solid;
  border-color: var(--verde-musgo);
  position: relative;
  z-index: 9999;
  display: inline-block;
}

.h1-poemas {
    background: var(--cor-fundo);
    width: 400px auto;
    max-width: 400px;
    color: var(--cor-texto);
    margin-inline: auto;
    padding-inline: 20px 20px;
    padding-block: 15px 15px;
    text-align: center;
    display: flex;
    border: 2px solid var(--cor-texto);
    border-radius: 25px;
    justify-content: center;
    align-items: center;
}



.divider {
  position: relative;
  font-weight: 200;
  font-size: 4em;
}

.divider .text-wrapper {
  position: relative;
  display: inline-block;
  padding-top: 0.2em;
  padding-right: 0.05em;
  padding-bottom: 0.1em;
  overflow: hidden;
}

.divider .letter {
  transform-origin: 50% 100%;
  display: inline-block;
  line-height: 1em;
}

.fundo-poemas {
  background-image: url("Imagens/core2.png");
  background-repeat: repeat;
  background-size: 40px;
  opacity: 80%;
}





/* === DARK MODE === */
@media (prefers-color-scheme: dark) {
  * {
    scrollbar-color: whitesmoke darkslategrey;
  }
}

@media (max-width: 768px) {

  html, body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .site-grid {
    grid-template-columns: 1fr;
    max-width: 100%;
    margin: 0;
    padding: 0 1rem;
  }

  .content,
  .content-2,
  .side {
    width: 100%;
    margin: 1rem 0;
    padding: 1rem;
    box-sizing: border-box;
    overflow-x: visible; /* 👈 permite o conteúdo aparecer */
    word-wrap: break-word; /* 👈 quebra textos longos */
  }

  .bio,
  .updates {
    width: 100%;
    max-width: 100%;
    overflow-x: auto; /* 👈 só essas partes podem rolar horizontalmente se for necessário */
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
  }

  .content-notes {
    flex-direction: column;
    align-items: center;
    padding: 10px;
    width: 100%;
  }

  .nota {
    width: 90%;
    max-width: 250px;
    height: auto;
  }

  .ascii,
  .ascii:hover {
    width: 100%;
    transform: none;
  }

  .mural-gifs img,
  .updates img,
  .bio img {
    max-width: 100%;
    height: auto;
    display: block;
  }

  img {
    max-width: 100%;
    height: auto;
    display: block;
  }
}



