*:focus {
  outline: solid 0.2rem #00f;
  outline-offset: 0.2rem;
}
body {
  margin: 2rem;
  font-size: large;
}
.bold, .componentID {
  font-weight: 700;
}
button {
  min-height: 44px;
  min-width: 44px;
  padding: 0.5rem;
  border: solid 0.2rem #03a;
  border-radius: 1rem;
  font-size: inherit;
  font-weight: 700;
  color: #fff;
  background-color: #03a;
}
button:disabled, button:disabled:hover {
  color: #666;
  background-color: #ccc;
  border-color: #666;
}
button:hover {
  color: #000;
  background-color: #9df;
}
caption {
  margin: 1rem 0;
  font-weight: 700;
  font-style: italic;
}
.center {
  text-align: center;
}
code {
  font-family: sans-serif;
  color: #832703;
}
details {
  padding: 0.5rem;
  border: solid #000 1px;
}
.error {
  font-weight: 700;
  color: #c00;
}
fieldset {
  width: max-content;
  margin-top: 1rem;
}
.firstCellRight td:nth-child(1) {
  text-align: right;
}
form {
  margin-top: 1rem;
}
h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0;
}
h2 {
  font-size: 1.8rem;
  margin: 1rem auto 0.5rem auto;
  color: #006666;
}
h3 {
  font-size: 1.6rem;
}
h3.bars {
  border-top: solid black 0.1rem;
  padding-top: 1rem;
}
h4 {
  font-size: 1.4rem;
}
h5 {
  font-size: 1.2rem;
}
h6 {
  font-size: 1rem;
}
input {
  margin: 0.5rem 0;
  font-size: inherit;
}
legend {
  font-weight: 700;
}
pre {
  white-space: break-spaces;
}
.secondCellRight td:nth-child(2) {
  text-align: right;
}
section:not(.wide) {
  max-width: 36rem;
}
#synopsis > p {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
}
table.allBorder th {
  padding-bottom: 0;
}
table.allBorder th, table.allBorder td, tbody td {
  border: 1px gray solid;
}
tbody th {
  padding-right: 1rem;
  text-align: right;
}
td, th {
  padding: 0 0.5rem;
}
thead th {
  padding-bottom: 1rem;
}
.thirdCellRight td:nth-child(3) {
  text-align: right;
}
