:root {
  color-scheme: light;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #111;
  background: #fff;
  font-size: 16px;
  line-height: 1.8;
}

* { box-sizing: border-box; }

body { margin: 0; }

main {
  max-width: 52rem;
  margin: 0 auto;
  padding: 40px 24px 64px;
  overflow-wrap: anywhere;
}

h1, h2, h3 {
  line-height: 1.5;
  font-weight: 600;
}

h1 { margin: 0 0 16px; font-size: 1.75rem; }
h2 { margin: 32px 0 12px; font-size: 1.25rem; }
h3 { margin: 24px 0 8px; font-size: 1.0625rem; }
p, ul, ol { margin: 12px 0; }
ul, ol { padding-left: 1.5em; }
li { margin: 6px 0; }
.dates { margin-bottom: 24px; }
a { color: inherit; text-underline-offset: 0.2em; }
a:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }

table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  margin: 16px 0;
}

th, td {
  border: 1px solid #bbb;
  padding: 10px 12px;
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
  word-break: normal;
}

th:first-child, td:first-child { width: 44%; }
th { font-weight: 600; }

@media (max-width: 480px) {
  main { padding: 24px 16px 40px; }
  h1 { font-size: 1.5rem; }
  th, td { padding: 8px; }
}

@media print {
  main { max-width: none; padding: 0; }
  h2, h3 { break-after: avoid; }
  tr { break-inside: avoid; }
}
