

details {
  margin: 1em 0;
  max-width: 40em;
  line-height:1.1em;
}

details span {
  padding: 0.125em;
}

.hide-show {
  text-align:center;
  padding:0.5em;
  border:1px solid #333;
  border-radius: 0.25em;
  background-color:#efe;
}

h2 {
  font-size: 1em;
}

fieldset {
  margin-top: 1em;
  max-width: 60em;
}

fieldset + div {
  margin:1em;
}

fieldset + div + div
{
  margin: 1em 0 0 3em;
}

label {
  text-align: right;
  vertical-align: top;
  padding: 0.25em 0.5em;
  margin:0.1em;
}

input[type="text"] {
  display: inline-block;
  width:10em;
}

table {
  margin: 0;
  border: 0;
  border-collapse: collapse;
  padding: 0;
}

thead {
  background-color:#eef;
}

#num-courses {
  padding: 0.5em;
  background-color: white;
  color:#a00;
  border-radius:0.5em;
  text-align: center;
}


#grouping-div {
  margin-top: 0.5em;
}

#show-sending, #show-receiving {
  font-size: 1.0rem;
}

#transfers-map-table {
  border-collapse: collapse;
}

td, th {
  border: 1px solid #333;
  padding:0.5em;
  text-align: center;
}

.rule:hover {
  cursor: pointer;
}

.missing-rule {
  background-color: #faa;
  color: black;
}

.bogus-rule {
  background-color: #aaf;
  color: black;
}

.self-rule {
  background-color: #333;
  color:#999;
}

.blanket-credit {
  background-color:#ff0;
  color:#00c;
}

.inactive-course {
  background-color: #ccc;
  color: black;
}

.scrollable tbody {
  background-color: #cfc;
}

#loading {
  color:#933;
  background-color:#ffe;
  padding:0.5em;
  border-radius:0.25em;
  border: 1px solid #333;
  font-size: 1.1em;
}

#dismiss-bar {
  width: 100%;
  text-align:right;
  background-color:#999;
  color: #333;
  padding: 0 0.5em;
  font-size: 1.1em;
  cursor:default;
  position: relative;
  top: -0.5em;
  left: -0.5em;
  border-top: 1px solid #111;
  border-bottom: 1px solid #111;
  border-radius: 0.25em 0.25em 0 0;
}

#dismiss-bar:hover {
  background-color:#bbb;
  color: #e00;
}

#pop-up-div { /* is draggable */
  border: 1px solid #333;
  border-radius: 0.25em;
  background-color: #eee;
  color: #111;
  position: fixed !important;
  width:auto;
  height:auto;
  top: 100px;
  left: 50%;
  margin-left: -15em;
  padding: 0.5em;
}

#pop-up-container { /* should be resizable */
  width: 100%;
  height: 11.5em;
}

#pop-up-content {
  height: 10em;
  max-width: 40em;
  overflow-x: scroll;
  overflow-y: scroll;
}

.catalog-entry {
  margin: 0;
}

.credit-mismatch {
  background-color: #ffa;
  color: black;
}

.rule td:nth-child(3n+2) {
  text-align: left;
}
#catalogs-for-rule>:nth-child(1) {
  width:45%;
  float: left;
}

#catalogs-for-rule>:nth-child(2) {
  width:45%;
  float: right;
}
