:root {
  --background-color: #ffffff;
  --text-color: #000000;
  --menu-bg: #ccc;
  --border-color: #ddd;
  --box-shadow: #eee;
  --code-bg: #e8e8e8;
  --href-link: #007bff;
}

.dark-theme {
	--background-color: #2e2f30;
	--text-color: #dcdbd8;
	--menu-bg: #46494b;
	--menu-bg: #4e5354;
	--border-color: #3e4143;
	--box-shadow: #363839;
	--code-bg: #393b3d;
    --href-link: #44a2f0;
}

body {
  max-width: 950px;
  margin: auto;
  padding: 1em;
  line-height: 1.5;
  background: var(--background-color);
  color: var(--text-color);
}

/* header and footer areas */
.menu { padding: 0; }
.menu li { display: inline-block;}
.article-meta, .menu a {
  text-decoration: none;
  background: var(--menu-bg);
  color: var(--text-color);
  padding: 5px;
  border-radius: 5px;
}
.article-meta, footer { text-align: center; }

hr {
  border-style: dashed;
  color: var(--border-color);
}

/* code */
pre {
  border: 1px solid var(--border-color);
  box-shadow: 5px 5px 5px var(--box-shadow);
  padding: 1em;
  overflow-x: auto;
}
code { background: var(--code-bg); }
pre code { background: none; }

/* misc elements */
img, iframe, video { max-width: 100%; }
main { hyphens: auto; }
blockquote {
  background: var(--code-bg);
  border-left: 5px solid var(--menu-bg);
  padding: 3px 1em 3px;
}

table {
  margin: auto;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}
table thead th { border-bottom: 1px solid var(--border-color); }
th, td { padding: 5px; }
thead, tfoot { background: var(--box-shadow); }
