:root {
  --bg: #f0f6fb;
  --accent: #2a6bbf;
  --border: #c8dcea;
}

body {
  background: var(--bg);
  max-width: 560px;
  margin: 0 auto;
  padding: 2rem 1rem;
  font-family: "Figtree", sans-serif;
}

a {
  color: var(--accent);
}

a:visited {
  color: var(--accent);
}

table {
  width: 100%;
  border-collapse: collapse;
}

tr + tr td {
  border-top: 1px solid var(--border);
}

td {
  padding: 0.4rem 0;
  vertical-align: baseline;
}

td.date {
  width: 12.5ch;
  white-space: nowrap;
  font-family: "Inconsolata", monospace;
  font-size: 0.9em;
  font-weight: 500;
}

tr.current td {
  background: #b8d8f5;
  font-weight: 600;
}

td:first-child {
  padding-left: 0.4rem;
}

h1,
h2 {
  font-family: "Exo 2", sans-serif;
}

h1 {
  margin: 0;
  font-size: 1.8rem;
}

h2 {
  font-size: 1.4rem;
}

header p {
  margin: 0;
  font-family: "Comic Relief", sans-serif;
  font-size: 1em;
  color: #666;
}

nav {
  margin-top: 1.2rem;
}

footer {
  font-size: 0.8em;
}

.cloud {
  position: relative;
  margin-top: 2rem;
  width: 160px;
  height: 50px;
  background: #a0b0bc;
  border-radius: 50px;
  opacity: 0.3;
}

.cloud::before,
.cloud::after {
  content: "";
  position: absolute;
  background: #a0b0bc;
  border-radius: 50%;
}

.cloud::before {
  width: 80px;
  height: 80px;
  top: -40px;
  left: 18px;
}

.cloud::after {
  width: 60px;
  height: 60px;
  top: -30px;
  right: 22px;
}
