@import url("/css/fonts.css");
:root {
  --color-background: white;
  --color-surface: var(--color-background);
  --color-surface-dark: #f0f0f0;
  --color-text: black;
  --color-text-contrast: white;
  --color-text-on-highlight: var(--color-text-contrast);
  --color-text-on-surface: var(--color-text);
  --color-highlight: hsl(129, 100%, 42%);
  --color-highlight-lighter: hsl(116, 85%, 62%);
  --color-highlight-darker: hsl(116, 65%, 40%);
  --color-header: #c3ffc5;
  --color-header-text: #27972a;
  --color-link: var(--color-highlight);
  --color-link-hover: var(--color-highlight-lighter);
  --color-line: #e0e0e0;
  --color-bar: #f5f5f5;
  --color-bar-lighter: #dfdfdf;
  --color-bar-deep: #dbdbdb;
  --shadow-surface: 0 4px 10px rgba(0, 0, 0, 0.2);
  --roundness: 8px;
  --screen-max-compact: 530px;
}

* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  font-family: "Noto Sans", "Roboto", sans-serif;
  background: var(--color-background);
  color: var(--color-text);
  line-height: 1.75;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Caveat", "Noto Serif", "Roboto", serif;
  margin: 0;
}

h1 {
  font-size: 2rem;
}

h2 {
  font-size: 1.8rem;
}

h3 {
  font-size: 1.6rem;
}

h4 {
  font-size: 1.4rem;
}

h5 {
  font-size: 1.2rem;
}

h6 {
  font-size: 1rem;
}

a, a:link, a:visited {
  color: var(--color-link);
  text-decoration: none;
}

a:hover {
  color: var(--color-link-hover);
  text-decoration: underline;
}

p {
  margin: 0.5em 0;
}

span.hint {
  text-decoration: underline;
  text-decoration-style: dotted;
}

.page-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 40px;
}
.page-content section {
  margin-bottom: 2em;
}

.container {
  position: relative;
}
.container > .container-content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
}