body {
  max-width: 800px;
  margin: auto;
  padding: 1em;
  line-height: 1.5;
  background-color: #121212; /* Fondo oscuro */
  color: #e0e0e0; /* Texto claro */
}

/* header and footer areas */
.menu { padding: 0; }
.menu li { display: inline-block; }
.article-meta, .menu a {
  text-decoration: none;
  background: #333; /* Fondo oscuro intermedio */
  color: #ffffff; /* Blanco para enlaces en el menú */
  padding: 5px;
  border-radius: 5px;
}

/* Enlaces en el menú específicos: siempre blancos */
.menu a, .menu a:visited {
  color: #ffffff; /* Blanco */
}
.menu a:hover {
  color: #cccccc; /* Gris claro al pasar el cursor */
}

.menu, .article-meta, footer { text-align: center; }
.title { font-size: 1.1em; }
footer a {
  text-decoration: none;
  color: #1973e8; /* Azul para enlaces fuera del menú */
}

/* Enlaces generales (fuera del menú): azul */
a, a:visited {
  color: #1973e8; /* Azul */
  text-decoration: none;
}
a:hover {
  color: #529efb; /* Azul más claro al pasar el cursor */
}

hr {
  border-style: dashed;
  color: #444; /* Línea tenue */
}

/* Bloques de código */
pre {
  background-color: #282828; /* Fondo oscuro */
  color: #ebdbb2;           /* Texto claro */
  border: 1px solid #3c3836; /* Borde */
  padding: 1em;
  overflow-x: auto;
  border-radius: 4px;
}

/* Código inline */
code {
  background-color: #3c3836; /* Fondo intermedio */
  /* color: #fabd2f;           /\* Amarillo para texto inline *\/ */
  /* padding: 0.2em 0.4em; */
  /* border-radius: 4px; */
}

/* Sintaxis específica (adaptado de Gruvbox) */
.token.comment,
.token.block-comment { color: #928374; } /* Comentarios: Gris */
.token.keyword { color: #fb4934; }      /* Palabras clave: Rojo */
.token.string { color: #b8bb26; }       /* Strings: Verde */
.token.function { color: #fabd2f; }     /* Funciones: Amarillo */
.token.variable { color: #83a598; }     /* Variables: Azul */
.token.number { color: #d3869b; }       /* Números: Magenta */
.token.operator { color: #fe8019; }     /* Operadores: Naranja */

pre code { background: none; }

/* misc elements */
img, iframe, video { max-width: 100%; }
main { hyphens: auto; }
blockquote {
  background: #2d2d2d; /* Fondo oscuro para citas */
  border-left: 5px solid #1973e8; /* Línea azul */
  padding: 3px 1em 3px;
  color: #e0e0e0; /* Texto claro */
}

table {
  margin: auto;
  border-top: 1px solid #444;
  border-bottom: 1px solid #444;
  background: #1e1e1e; /* Fondo oscuro para tablas */
}
table thead th { 
  border-bottom: 1px solid #555;
  color: #e0e0e0; /* Texto claro */
}
th, td { 
  padding: 5px; 
  color: #e0e0e0; /* Texto claro */
}
thead, tfoot, tr:nth-child(even) { 
  background: #2d2d2d; /* Fondo oscuro intermedio para filas pares */
}
