.md-nav__title,
.md-nav__link--active {
  background-color: transparent !important;
  box-shadow: none !important;
}

:root {
  --night-sky-background-opacity: 80%;
  --shooting-time: 4000ms; /* duração das animações de estrelas cadentes */
  --cross-rotation: 0deg; /* ângulo da faixa de estrelas cruzadas */
  /* tamanhos base das estrelas em pixels para fácil ajuste */
  --star-size-min: 0.5px;
  --star-size-small: 1px;
  --star-size-medium: 1.5px;
  --star-size-large: 2px;
}

* {
  box-sizing: border-box;
}

.md-content .sky {
  /*
    Contêiner principal do céu.
    Posicionado fixo para cobrir toda a tela e ficar atrás do conteúdo.
  */
  position: fixed;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: -1;
  opacity: var(--night-sky-background-opacity);
  background: linear-gradient(
    to bottom,
    #060010 0%,
    #060010 2%,
    #070011 4%,
    #070012 6%,
    #080013 8%,
    #080014 10%,
    #090015 12%,
    #090016 14%,
    #0a0117 16%,
    #0a0118 18%,
    #0a0119 20%,
    #0b011a 22%,
    #0b011b 24%,
    #0b011c 26%,
    #0c011d 28%,
    #0c011e 30%,
    #0c011f 32%,
    #0d0120 34%,
    #0d0121 36%,
    #0d0122 38%,
    #0e0123 40%,
    #0e0124 42%,
    #0e0125 44%,
    #0f0126 46%,
    #0f0127 48%,
    #100128 50%,
    #100129 52%,
    #10012a 54%,
    #11012b 56%,
    #11012c 58%,
    #11012d 60%,
    #12012e 62%,
    #12012f 64%,
    #120130 66%,
    #130131 68%,
    #130132 70%,
    #140133 72%,
    #140134 74%,
    #150135 76%,
    #150136 78%,
    #160237 80%,
    #160238 82%,
    #160239 84%,
    #17023a 86%,
    #17023b 88%,
    #18023c 90%,
    #18023d 92%,
    #19023e 94%,
    #1a023f 96%,
    #1b0240 98%,
    #1c0242 100%
  );
  filter: progid:DXImageTransform.Microsoft.gradient(
    startColorstr="#060010",
    endColorstr="#1c0242",
    GradientType=0
  );
  transform: scale(1);
}

.stars {
  /* Camada onde as estrelas são posicionadas */
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  transition: all 10s linear;
}

/*
  Definição visual das estrelas. Cada classe representa um tamanho
  e coloração diferente para criar variedade no céu.
*/
.star {
  position: absolute;
  border-radius: 50%;
  opacity: 0.8;
}

.star-0 {
  /* Estrela mínima utilizada como fundo */
  height: var(--star-size-min);
  width: var(--star-size-min);
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 1) 0%,
    rgba(200, 200, 255, 0.5) 60%,
    rgba(150, 150, 255, 0) 100%
  );
}

.star-1 {
  /* Estrela pequena com leve brilho */
  height: var(--star-size-small);
  width: var(--star-size-small);
  background: radial-gradient(
    circle,
    rgba(255, 255, 230, 1) 0%,
    rgba(255, 255, 200, 0.5) 60%,
    rgba(255, 255, 150, 0) 100%
  );
}

.star-2 {
  /* Estrela média utilizada na maioria do fundo */
  height: var(--star-size-medium);
  width: var(--star-size-medium);
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 1) 0%,
    rgba(150, 200, 255, 0.5) 60%,
    rgba(100, 150, 255, 0) 100%
  );
}

.star-3 {
  /* Estrela um pouco maior para destacar áreas específicas */
  height: var(--star-size-large);
  width: var(--star-size-large);
  background: radial-gradient(
    circle,
    rgba(255, 255, 240, 1) 0%,
    rgba(255, 230, 180, 0.5) 60%,
    rgba(255, 200, 150, 0) 100%
  );
}

.star-4 {
  /* Estrela em formato de cruz, utilizada para brilhos mais fortes */
  position: absolute;
  right: var(--star4-right, 50%);
  top: var(--star4-top, 50%);
  width: 1px;
  height: 1px;
  background: radial-gradient(
    circle,
    rgba(213, 244, 254, 1) 0%,
    rgba(105, 155, 255, 0.5) 60%,
    rgba(0, 0, 255, 0) 100%
  );
  border-radius: 999px;
  filter: drop-shadow(0 0 6px rgba(105, 155, 255, 1));
  opacity: 1;
}

.star-4::before,
.star-4::after {
  /* Braços da estrela em cruz */
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 15px;
  height: 1px;
  background: linear-gradient(
    -45deg,
    rgba(0, 0, 255, 0),
    rgba(105, 155, 255, 1),
    rgba(0, 0, 255, 0)
  );
  border-radius: 100%;
  transform-origin: center;
  transform: translate(-50%, -50%);
}

.star-4::before {
  transform: translate(-50%, -50%) rotateZ(90deg);
}

.star-4::after {
  transform: translate(-50%, -50%) rotateZ(0deg);
}

.star-5 {
  /* Estrela especial com brilho pulsante */
  height: 2.5px;
  width: 2.5px;
  background: radial-gradient(
    circle,
    rgba(255, 220, 220, 1) 0%,
    rgba(255, 150, 150, 0.5) 60%,
    rgba(255, 100, 100, 0) 100%
  );
  box-shadow: 0px 0px 6px 1px rgba(255, 150, 150, 0.7);
  animation: star5-glow 3s ease-in-out infinite;
}

/*
  Classes espectrais aproximadas para representar diferentes
  temperaturas de estrelas. Podem ser combinadas com outras
  classes de tamanho.
*/
.star-o {
  height: 2.5px;
  width: 2.5px;
  background: radial-gradient(
    circle,
    rgba(180, 210, 255, 1) 0%,
    rgba(100, 150, 255, 0.5) 60%,
    rgba(50, 100, 255, 0) 100%
  );
  box-shadow: 0 0 8px 2px rgba(100, 150, 255, 0.8);
}

.star-b {
  height: 2px;
  width: 2px;
  background: radial-gradient(
    circle,
    rgba(220, 230, 255, 1) 0%,
    rgba(180, 200, 255, 0.5) 60%,
    rgba(120, 150, 255, 0) 100%
  );
  box-shadow: 0 0 5px 1px rgba(150, 180, 255, 0.6);
}

.star-a {
  height: 1.8px;
  width: 1.8px;
  background: radial-gradient(
    circle,
    rgba(255, 255, 255, 1) 0%,
    rgba(230, 230, 255, 0.5) 60%,
    rgba(200, 200, 255, 0) 100%
  );
  box-shadow: 0 0 4px 1px rgba(200, 200, 255, 0.5);
}

.star-f {
  height: 1.5px;
  width: 1.5px;
  background: radial-gradient(
    circle,
    rgba(255, 255, 230, 1) 0%,
    rgba(255, 255, 200, 0.5) 60%,
    rgba(255, 255, 150, 0) 100%
  );
  box-shadow: 0 0 4px 1px rgba(255, 255, 180, 0.5);
}

.star-g {
  height: 1.5px;
  width: 1.5px;
  background: radial-gradient(
    circle,
    rgba(255, 255, 200, 1) 0%,
    rgba(255, 230, 150, 0.5) 60%,
    rgba(255, 200, 100, 0) 100%
  );
  box-shadow: 0 0 4px 1px rgba(255, 230, 150, 0.5);
}

.star-k {
  height: 1.8px;
  width: 1.8px;
  background: radial-gradient(
    circle,
    rgba(255, 210, 180, 1) 0%,
    rgba(255, 180, 120, 0.5) 60%,
    rgba(255, 150, 100, 0) 100%
  );
  box-shadow: 0 0 4px 1px rgba(255, 180, 120, 0.5);
}

.star-m {
  height: 1.5px;
  width: 1.5px;
  background: radial-gradient(
    circle,
    rgba(255, 180, 180, 1) 0%,
    rgba(255, 100, 100, 0.5) 60%,
    rgba(255, 50, 50, 0) 100%
  );
  box-shadow: 0 0 4px 1px rgba(255, 100, 100, 0.5);
}

.blink {
  animation: blink ease-in-out infinite;
}

@keyframes blink {
  50% {
    opacity: 0;
  }
}

@keyframes star5-glow {
  0%,
  100% {
    box-shadow: 0px 0px 4px 1px rgba(255, 120, 120, 0.4);
  }
  50% {
    box-shadow: 0px 0px 6px 2px rgba(255, 120, 120, 0.7);
  }
}

@keyframes star4-shine {
  0% {
    width: 0;
  }
  50% {
    width: 30px;
  }
  100% {
    width: 0;
  }
}

.stars-cross {
  /*
    Faixa principal que forma a "cruz" de estrelas
    atravessando diagonalmente o céu.
  */
  position: absolute;
  top: 10vh;
  left: 0;
  width: 120vw;
  height: 20vh;
  transform: rotate(var(--cross-rotation));
  transform-origin: top left;
}

.stars-cross-aux {
  /*
    Segunda faixa usada para reforçar o efeito de cruz.
    Fica deslocada para dar maior profundidade.
  */
  position: absolute;
  top: 0;
  left: 10vw;
  width: 120vw;
  height: 10vh;
  transform: rotate(var(--cross-rotation));
  transform-origin: top left;
}

.blur {
  /* Elemento genérico utilizado para criar halos de luz */
  position: absolute;
  border-radius: 50%;
  background-color: white;
  filter: blur(15px);
}

.stars-cross > .blur,
.stars-cross-aux > .blur {
  /* Ajustes específicos dos halos presentes na faixa em cruz */
  opacity: 1;
  width: 5px;
  height: 10px;
}

/* ----------------------------------------------------
   Cometas (shooting stars)
   ---------------------------------------------------- */
.night {
  /*
    Área utilizada para as estrelas cadentes.
    Fica rotacionada para que os rastros tenham ângulo natural.
  */
  position: absolute;
  top: 0;
  left: 0;
  width: 150%;
  height: 150%;
  transform: rotateZ(-210deg);
  opacity: var(--night-sky-background-opacity);
  pointer-events: none;
  z-index: 0;
}

/*
  Elementos de nebulosa gerados via JavaScript. A classe provê
  estilos básicos para que o script trabalhe apenas com
  propriedades variáveis como posição e cor.
*/
.nebulosa {
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
}
