body {
  margin: 0;
  background: #ffffff;
  color: #24292f;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans JP", Helvetica, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
}

main {
  max-width: 980px;
  margin: 0 auto;
  padding: 32px 24px 48px;
  box-sizing: border-box;
}

h1,
h2,
h3 {
  margin-top: 24px;
  margin-bottom: 16px;
  font-weight: 600;
  line-height: 1.25;
}

h1 {
  margin-top: 0;
  padding-bottom: 0.3em;
  border-bottom: 1px solid #d8dee4;
  font-size: 2em;
}

h2 {
  padding-bottom: 0.3em;
  border-bottom: 1px solid #d8dee4;
  font-size: 1.5em;
}

h3 {
  font-size: 1.25em;
}

p,
ol,
ul,
pre,
table,
form {
  margin-top: 0;
  margin-bottom: 16px;
}

ol,
ul {
  padding-left: 2em;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  display: block;
  overflow-x: auto;
}

th,
td {
  padding: 6px 13px;
  border: 1px solid #d0d7de;
  text-align: left;
  vertical-align: top;
  background: #ffffff;
}

th {
  background: #f6f8fa;
  font-weight: 600;
}

.result-table th {
  width: 17rem;
  min-width: 12rem;
}

input,
select,
textarea,
button {
  font: inherit;
}

input[type="text"],
select,
textarea {
  width: min(100%, 42rem);
  box-sizing: border-box;
  padding: 5px 12px;
  color: #24292f;
  background: #ffffff;
  border: 1px solid #d0d7de;
  border-radius: 6px;
  box-shadow: inset 0 1px 0 rgba(208, 215, 222, 0.2);
}

input[type="text"]:focus,
select:focus,
textarea:focus {
  border-color: #0969da;
  outline: 2px solid rgba(9, 105, 218, 0.2);
  outline-offset: 0;
}

textarea {
  white-space: pre;
  resize: vertical;
}

button {
  padding: 5px 16px;
  color: #24292f;
  background: #f6f8fa;
  border: 1px solid rgba(27, 31, 36, 0.15);
  border-radius: 6px;
  box-shadow: 0 1px 0 rgba(27, 31, 36, 0.04);
  cursor: pointer;
}

button:hover {
  background: #f3f4f6;
}

button + button {
  margin-left: 8px;
}

pre {
  padding: 16px;
  overflow: auto;
  background: #f6f8fa;
  border-radius: 6px;
}

code,
textarea,
pre {
  font-family: ui-monospace, SFMono-Regular, SFMono-Regular, Consolas, "Liberation Mono", Menlo, monospace;
  font-size: 85%;
}

pre code {
  font-size: 100%;
}

a {
  color: #0969da;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

#status {
  min-height: 1.5rem;
  margin-bottom: 16px;
  font-weight: 600;
}

#status[data-state="error"] {
  color: #cf222e;
}

#status[data-state="success"] {
  color: #1a7f37;
}

#result-notes {
  padding-left: 2em;
}

#result-notes:empty::before {
  content: "特記事項はありません。";
  display: list-item;
}

#calculation-source-note,
#as-links-list p {
  color: #57606a;
}

@media (max-width: 720px) {
  main {
    padding: 24px 16px 32px;
  }

  .result-table th {
    width: auto;
    min-width: 9rem;
  }

  input[type="text"],
  select,
  textarea {
    width: 100%;
  }
}
