body {
  color: #000;
  font-family: sans-serif, arial, serif;
  margin: 15px 0 0 0;
  padding: 0;
  font-size: 12pt;
}

a {
  color: blue;
}

div#container {
  width: 955px;
  margin: 0 auto;
  padding: 0;
}

div#footer {
  width: 935px;
  height: 30px;
  margin: 0 auto;
  padding: 0 10px;
}

div#footer p {
  font-size: 11pt;
  margin: 2px 0 0 0;
  padding: 0;
  float: right;
}

div#heading {
  width: 935px;
  height: 80px;
  padding: 0 10px;
}

div#heading h1 {
  font-size: 23pt;
  margin: 0;
  padding: 0;
}

div#heading h3 {
  font-size: 12pt;
  font-weight: normal;
  margin: 6px 0;
  padding: 0;
}

div#content {
  width: 935px;
  padding: 0 10px;
}

div#content h2 {
  margin: 0;
  padding: 2px 0;
  font-size: 12pt;
  color: #000044;
  width: 100%;
  border-bottom: 1px solid #001166;
  background-color: #ddd;
}

div#content div#registers {
  text-align: center;
  width: 92px;
  float: left;
  margin-right: 10px;
  border: 1px solid #001166;
  background: #eee;
}

div#content div#registers table {
  padding-left: 26px;
}

div#content div#main_memory {
  text-align: center;
  width: 625px;
  float: left;
  border: 1px solid #001166;
  background: #eee;
}

div#content div#control {
  width: 188px;
  float: left;
  margin-left: 10px;
}

div#content div#control div#control_panel,
div#content div#control div#stdout,
div#content div#control div#stderr,
div#content div#control div#legend {
  text-align: center;
  width: 188px;
  border: 1px solid #001166;
  background: #eee;
}

div#content div#control div#stdout,
div#content div#control div#stderr,
div#content div#control div#legend {
  margin: 10px 0;
}

div#stdout p,
div#stderr p {
  margin: 10px 0;
}

table.cells {
  border: 0;
  margin 0;
  padding: 0;
}

table.cells tr {
  margin: 0;
  padding: 0;
}

table.cells tr td {
  text-align: center;
}

table.cells tr td div,
div.empty_cell,
div.populated_cell,
div.program_cell,
div.selected_cell {
  margin: 4px;
  padding-top: 8px;
  border: 1px solid #555;
  background-color: #ccddff;
  width: 29px;
  height: 20px;
  cursor: pointer;
  position: relative
}

div.populated_cell {
  background-color: #ccbbff !important;
}

div.program_cell {
  background-color: #ffccaa !important;
}

div.selected_cell {
  background-color: #ccbbaa !important;
}

div#control_panel ul,
div#legend ul {
  margin: 10px 0;
  padding: 0;
  list-style-type: none;
}

div#control_panel ul li {
  padding: 3px;
}

div#control_panel ul li form {
  margin: 0;
  padding: 0;
}

div#control_panel ul li form input[type='submit'], 
div#control_panel ul li form button {
  width: 135px;
}

div#legend ul li {
  clear: both;
  height: 33px;
  text-align: left;
}

div#legend ul li label {
  display: block;
  float: left;
  padding-top: 10px;
}

div#legend ul li div {
  float: left;
  margin-right: 6px;
}

.cellcontents {
  height: 13px;
  width: 20px;
  padding: 0;
}

#main_memory_heading {
  position: relative;
}

#cell_indicator {
  position: absolute;
  top: 0px;
  right: 3px;
  font-weight: normal;
}

table.cells tr td div span.hex {
  position: absolute;
  top: 1px;
  left: 1px;
  font-size: 7px;
}

.thickbox_error,
#error_message {
  background-color: #ffcccc;
  border: 1px solid #ff0000;
  padding: 6px;
  margin: 6px 0;
}

#error_message {
  position: relative;
  margin-top: 0;
  font-weight: bold;
}

#error_message a {
  display: block;
  position: absolute;
  top: 7px;
  right: 5px;
  font-size: 10pt;
}

#TB_window h3 {
  font-size: 16pt;
  margin: 10px 0;
}

form.frm ul { 
  margin-top: 8px;
  list-style: none;
}

form.frm ul li {
  padding: 3px;
}

form.frm ul li label {
  float: left;
  width: 120px;
}

form.frm ul li input[type='text'], form.frm ul li textarea, form.frm ul li select {
  width: 160px;
}

form.frm ul li input.sml, form.frm ul li select.sml {
  width: 80px;
}

form.frm ul li input.med, form.frm ul li select.med {
  width: 120px;
}

form.frm ul li input.lrg, form.frm ul li select.lrg {
  width: 180px;
}

form.frm ul li input.xlrg, form.frm ul li select.xlrg {
  width: 265px;
}

form.frm ul li textarea {
  width: 300px;
  height: 120px;
}

form.frm ul li.last {
  margin-left: 120px;
  padding-top: 17px;
}

div.tip {
  margin-bottom: 10px;
}

div.tip span {
  color: #8b0000;
  font-weight: bold;
}

ol {
  margin: 20px 0;
  list-style-type: none;
}

ol > li {
  padding: 8px 0;
  margin-bottom: 10px;
  width: 100%;
}

li h4 {
  font-weight: bold;
  background-color: #eee;
  border-bottom: 1px solid #777;
}

ol li p {
  margin: 10px 0;
}

ul.spec {
 list-style-type: disc;
 margin: 10px 0 0 35px;
}

ul.spec li {
  padding: 3px 0;
}

a#flush_stdout {
  font-size: 10pt;
}

table#operations_list {
  border: 0;
  margin: 10px 0;
  padding: 0;
}

table#operations_list tr th {
  width: 100px;
  font-weight: bold;
  text-align: center;
}

table#operations_list tr th.desc {
  text-align: left;
  width: 750px;
}

table#operations_list tr td {
  text-align: center;
  vertical-align: top;
  padding: 5px 3px;
}

table#operations_list tr td ul {
  list-style: none;
}

table#operations_list tr td.desc {
  text-align: left;
}
