body {
  font-family: verdana, arial, sans-serif, helvetica;
  font-size: 10pt;
  color: #000000;

  padding: 80px;

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 16px;
}

header, main, footer, #player {
  box-sizing: border-box;
  width: 660px;
}

@media (max-width: 660px) {
  body {
    padding: 8px;
  }

  header, main, footer, #player {
    width: 100%;
  }

  main > .call {
    padding-inline-start: 0 !important;
    border-left: none !important;
  }

  #player.active {
    display: block;
  }
}

header {
  border: 1px solid #003399;
  background: #d5e8fb;
  padding: 12px;
}

footer {
  padding: 4px;
}

main {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.day {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.date {
  color: #FF6600;
}

.calls {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.calls > .call {
  padding-inline-start: 12px;
  border-left: 1px dashed #ddd;
}

.call .audio-clip {
  text-decoration: none;
  font-weight: bold;
  color: blue;
}

.call .from {
  font-weight: bold;
}

.call .description {
  font-style: italic;
  margin-inline-start: 12pt;
  margin-block: 4px;
}

.call .replies {
  margin-inline-start: 12pt;
  margin-block-start: 8px;
}

footer {
  background: #F9D6B4;
}

#title {
  font-weight: bold;
  margin-block-end: 12px;
}

#player {
  display: none;
}

