table {
  width:  auto;
  margin-bottom: 10px;
  border-collapse:collapse
}
th, td {
  border:thin solid gray;
  padding: 0.3em;
}
figure {
  margin: 2px;
  padding: 2px;
  border: 1px solid black;
}
.term-contents {
  box-shadow: 2px 2px 2px darkgray; 
  border-top: 1px solid lightgray;
  border-left: 1px solid lightgray;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 2px;
}
table.term-contents tr {
  border-bottom: 1px ridge lightgray;
}
tr.table-separator {
  height: 2px;
  border-bottom: dashed 2px lightgray;
}
table.term-contents tbody tr th {
  color: #333;
  border: none;
  font-family: monospace;
  font-size: 0.7rem;
}
table.term-contents tbody tr td {
  border: none;
}
tr.technical-detail {
  /*font-family: monospace;*/
}
.concept-list li {
  list-style-type: decimal;
}
.concept-list li ul li {
  list-style-type: lower-latin;
}
.concept-list li ul li ul li {
  list-style-type: decimal;
}
.concept-list li ul li ul li ul li {
  list-style-type: upper-latin;
}
.concept-list ul {
  border-left: 3px solid lightgray;
}
.list-hierarchy {
  border: 1px solid lightgray;
}
.toggle {
  cursor: pointer;
}
.toggle::before {
  display: inline-block;
  content: "+";
  background-color: lightgray;
  padding-left: 5px;
  padding-right: 5px;
  box-shadow: 1px 1px 1px #AAA;
}
.btn-hierarchy {
  padding-left: 5px;
  padding-top: 2px;
  font-family: monospace;
  font-size: 0.5rem;
  
}
.toggle.show::before { 
  content: "-";
  background-color: lightgray;
  padding-left: 5px;
  padding-right: 5px;
  box-shadow: 1px 1px 1px #AAA;
}
.concept-list ul li ul { display: none; }
.toggle.show + ul { display: block; }
.btn-expand, .btn-collapse {
  background-color: white;
  border: 1px solid darkgray;
  background-color: lightgray;
  padding-left: 5px;
  padding-right: 5px;
  box-shadow: 1px 1px 1px #AAA;
  margin-right: 5px;
}
.btn-expand:focus, .btn-collapse:focus {
  background-color: darkgray;
  border: 1px solid lightgray;
}
.copy-icon {
  position: absolute;
  top: 5px;
  right: 5px;
  font-size: 0.75rem;
  background: rgb(90,75,15,0.25);
  color: black;
  border: 1px solid #574b0f;
  border-radius: 3px;
  padding: 5px;
}
.copy-icon:active {
    transform: translate(2px, 2px);
    box-shadow: 5px 5px #574b0f;
}