* {
  box-sizing: border-box;
}

@font-face {
  src: url('./SIMSUN.ttf');
  font-family: 'SIMSUN';
  font-weight: 400;
  font-style: normal;
}

body {
  font-family: 'SIMSUN';
  margin: 0;
  padding: 0;
}

h1,
dd,
summary {
  margin: 0;
  text-wrap: balance;
}

section {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 600px;
}

section dd {
  margin: 0;
}

section dt {
  font-weight: 900;
}

section dt::before {
  content: '(';
}

section dt::after {
  content: ')';
}

section dt:not(:first-child) {
  margin-top: 20px;
}

main,
footer {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

main {
  gap: 12px;
  padding: 4svh 48px 0;
  min-height: 98svh;
}

summary {
  cursor: pointer;
}

details {
  min-height: 180px;
}

table {
  width: 100%;
}

th {
  border-bottom: 1px solid #000;
}

th:not(:first-child),
td:not(:first-child) {
  border-left: 1px solid #000;
}

pre {
  display: inline-block;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  main {
    min-height: auto;
    padding: 64px 40px;
    overflow-x: hidden;
  }

  pre {
    width: 100%;
    font-size: 0.5rem;
  }

  details {
    min-height: 0;
  }
}
