/* Foundations and global element defaults. */

:root {
  --font-main:    "Noto Serif JP", serif;
  --font-heading: var(--font-main);
  --font-code:    "Fira Code", monospace;
  --content-width: 760px;
  --sidebar-width: 280px;
  --gap-width: 60px;
  --container-width: calc(var(--content-width) + var(--gap-width) + var(--sidebar-width));
}

* {
  box-sizing: border-box;
  scrollbar-width: thin;
}

body {
  margin: 0;
  padding: 0;
  font-family: var(--font-main);
  background-color: var(--bg-color);
  color: var(--text-color);
  line-height: 1.8;
}

h1, h2, h3, h4, h5, h6,
.article-title,
.widget-title,
.section-title {
  font-family: var(--font-heading);
}

a {
  color: var(--accent-color);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

img {
  max-width: 100%;
}

figure > img,
figure > svg,
figure > p > img,
figure > p > svg {
  display: block;
  margin-inline: auto;
}
