:root {
  --base-font-size: 16px;
  --base-color: #111111;

  --link-color: #1756a9;
  --link-color-hover: #111111;

  --label-color: #828282;

  --border-color: #eeeeee;

  --badge-background-color: #eeeeee;
  --badge-label-color: #111111;
}

* {
  box-sizing: border-box;
}

body {
  background: white;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
  color: var(--base-color);
  font-size: var(--base-font-size);
  line-height: 1.5em;
  padding: 0;
  margin: 0;
}


/* width of the page */

.wrapper {
  max-width: 800px;
  margin: 0 auto;
}


/* headings */

h1 { font-size: 220%; }
h2 { font-size: 180%; }
h3 { font-size: 160%; }
h4 { font-size: 140%; }
h5 { font-size: 120%; }
h6 { font-size: 100%; }

h1[itemtype="headline"] {
  padding-bottom: 0;
  margin-bottom: 20px;
  font-size: 260%;
  line-height: 1.2em;
}


/* header navigation */

.navigation {
  border-bottom: 1px solid var(--border-color);
  margin-bottom: 50px;
}

.navigation header {
  display: flex;
  align-items: center;
}

.navigation header .home {
  font-size: 130%;
}

.navigation header .home a {
  text-decoration: none;
  color: var(--base-color);
}

.navigation header .home a:hover {
  text-decoration: underline;
}

.navigation header nav {
  flex-grow: 1;
  text-align: right;
}

.navigation header nav a {
  padding: 0 10px;
  text-decoration: none;
  color: var(--link-color-hover);
}

.navigation header nav a:hover {
  text-decoration: underline;
  color: var(--link-color-hover);
}


/* index post list */

.post-list {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.post-list li {
  margin: 0 0 30px 0;
  text-decoration: none;
}

.post-list li a {
  text-decoration: none;
  color: var(--link-color);
}

.post-list li a:hover {
  text-decoration: underline;
  color: var(--link-color-hover);
}

.post-list li a h2 {
  font-weight: 400;
  font-size: 140%;
  margin: 0;
}


/* tag badges */

.tags {
  margin-top: 5px;
}

.tags a {
  font-size: 80%;
  padding: 2px 10px;
  border-radius: 20px;

  background: var(--badge-background-color);
  color: var(--badge-label-color) !important;
  text-decoration: none !important;
}

.tags a:hover {
  filter: brightness(90%);
  text-decoration: none !important;
}


/* helpers */

.top-margin {
  margin-top: 60px;
}

pre {
  font-size: 14px;
}

img {
  max-width: 100%;
}

time {
  color: var(--label-color);
  font-size: 90%;
}

/* footer */

.footer {
  border-top: 1px solid var(--border-color);
  margin-top: 70px;
  padding-top: 20px;
  padding-bottom: 50px;
}


.footer_col_1 {
	float: left;
	width: 33.33%;
	word-wrap: break-word;
}

.relevant-media-list {
	list-style: none;
	margin-left: 0;
	margin-top: 0;
	padding-left: 0px;	/* for ul */
}

/* responsive */

@media only screen and (max-width: 960px) {
  main { padding: 0 20px; }
  footer { padding: 0 20px; }
  .navigation header { padding: 0 20px; }
}


.social-buttons {
	width: 20px;
	height: 20px;
	display: inline-block;
	padding-right: 5px;
	vertical-align: text-top;
}

/* light/dark mode */

@media (prefers-color-scheme: light) { }

@media (prefers-color-scheme: dark) { }
