/***********************************************************

Copyright (c) 2012-2013, The University of Edinburgh.
All Rights Reserved

************************************************************/

body {
  background-color: white;
  font-family: 'Open Sans', sans-serif;
  min-width: 780px;
}

a:link, a:visited {
  color: #66455e;
}

.flashMessage {
  background: #ccdbf0 linear-gradient(to bottom, #ccdbf0, #eef3fa);
  font-weight: bold;
  color: black;
  margin: 0.7em 0;
  padding: 0.8em;
  border: 2px solid #c80042;
  border-radius: 0.5em;
}

.errorMessage {
  color: #c80042;
  font-weight: bold;
  font-size: 1.2em;
  background: url(images/exclamation.png) 5px center no-repeat;
  padding-left: 24px;
}

.warningMessage {
  background: url(images/error.png) 5px center no-repeat;
  font-weight: bold;
  padding-left: 24px;
}

.hints {
  font-style: italic;
}

aside {
  font-style: italic;
}

.center {
  text-align: center;
}

.floatRight {
  float: right;
}

ul.footActions {
  float: right;
  text-align: right;
  list-style-type: none;
}

/* ========== Home Page ========== */

.homepage header {
  margin-bottom: 1.5em;
}

.homepage header h1 {
  font-family: 'Ubuntu', sans-serif;
  font-size: 80px;
  line-height: 120px;
  letter-spacing: -0.05em;
  background: url(images/bigcog.png) left center no-repeat;
  padding-left: 80px;
}

.homepage .intro {
  font-size: 1.62em;
  font-style: italic;
  font-weight: bold;
  color: #cd1753;
  margin: 1.0em 0;
}

.homepage footer {
  border-top: none;
}

/* ========== Old Sub-page Page Header ========== */

.page header.pageHeader {
  margin: 0.7em 0;
  font-family: 'Ubuntu', sans-serif;
}

.page header.pageHeader h1 {
  background: url(images/smallcog.png) left center no-repeat;
  margin: 0;
  font-size: 40px;
  line-height: 60px;
  letter-spacing: -0.05em;
  padding-left: 50px;
}

.page header.pageHeader h1 a:link, header.pageHeader h1 a:visited {
  color: black;
  text-decoration: none;
  vertical-align: middle;
}

.page header.pageHeader h1 a:hover {
  color: #66455e;
}

.page header.actionHeader {
  margin-bottom: 2em;
}

.page header.actionHeader h2 {
  font-size: 1.7em;
  border-bottom: 2px solid #ccdbf0;
  margin-bottom: 0.3em;
}

header.actionHeader h2 a,
header.actionHeader h2 a:link,
header.actionHeader h2 a:visited {
  text-decoration: none;
  color: black;
}

/* ========== LTI Instructor Mode header ========== */

.ltiExit {
  position: absolute;
  top: 0;
  right: 0;
  width: auto;
  z-index: 127;
  background: white url(images/bluegradient.png) left top repeat-x;
  border: 1px solid #ccdbf0;
  border-bottom-left-radius: 1em;
  padding: 0.5em 1em;
  color: #666666;
}

.ltipage header.pageHeader {
  font-family: 'Ubuntu', sans-serif;
  background: url(images/bigcog.png) left top no-repeat;
  height: 80px;
  margin: 15px 0 25px 0;
  padding: 0 0 15px 80px;
}

.ltipage header.pageHeader h1 {
  margin: 0;
  padding: 3px 0 0 0;
  height: 48px;
  font-size: 45px;
  line-height: 45px;
  letter-spacing: -0.08em;
}

.ltipage header.pageHeader h2 {
  margin: 0;
  padding: 0;
  height: 20px;
  font-size: 20px;
  line-height: 20px;
  font-weight: normal;
}

.ltipage header.pageHeader a:link,
.ltipage header.pageHeader a:visited {
  color: inherit;
  text-decoration: none;
  vertical-align: middle;
}

.ltipage header.pageHeader a:hover {
  color: #66455e;
}

.ltiContextWarning {
  border: 1px solid #c80042;
  border-radius: 0.5em;
  padding: 0.5em;
  background: #ffffcc url(images/exclamation.png) 5px center no-repeat;
  padding-left: 28px;
}

.ltipage .actionHeader h2 {
  font-size: 1.7em;
  border-bottom: 2px solid #ccdbf0;
  margin-bottom: 0.3em;
}

.ltipage .actionHeader {
  margin-bottom: 2em;
}

/* ========== LTI dashboard (new) ========== */

table.dashboard {
  width: 100%;
  background: #ccdbf0 linear-gradient(to bottom, #ccdbf0, #eef3fa);
  border-collapse: separate;
  border-radius: 0.8em;
  border: 2px solid #ccdbf0;
  margin-bottom: 3em;
}

.dashboard .indicator {
  vertical-align: middle;
  text-align: center;
  padding: 0 0.2em;
  font-weight: bold;
  font-size: 3em;
}

.dashboard .statusError .indicator:before {
  color: red;
  content: '\2731';
}

.dashboard .statusWarning .indicator:before {
  color: #ff9900;
  content: '!';
}

.dashboard .statusGood .indicator:before {
  color: #33cc33;
  content: '\2713';
}

.dashboard .statusOk .indicator:before {
}

.dashboard .category {
  vertical-align: middle;
  padding: 1em 0;
}

.dashboard .category .name {
  font-size: 1.0em;
}

.dashboard .category .value {
  font-weight: bold;
  font-size: 1.2em;
}

.dashboard .actions {
  text-align: right;
  vertical-align: middle;
  padding: 0 0.5em;
}

.actions a {
  border-radius: 1em;
  border: 2px solid #ccdbf0;
  background: #eef3fa;
  text-decoration: none;
  padding: 0.5em;
}

.actions a:link,
.actions a:visited {
}

.actions a:hover {
  border: 2px solid #c80042;
  background: #eef3fa;
}

.actions a:before {
  content: '\25b6';
  color: #33cc33;
  font-size: 1.2em;
  line-height: 1.0em;
}

.actions.scary {
  opacity: 0.7;
}

.actions.scary:hover {
  opacity: 1;
}

.actions.scary a:before {
  content: '';
}

/* ========== Misc LTI/Instructor stuff ========== */

.assessmentLabel {
  background-color: #c80042;
  color: white;
  font-size: 0.5em;
  padding: 0.2em;
  border-radius: 0.5em;
  opacity: 0.5;
}

.deliveryLabel {
  background-color: #0042c8;
  color: white;
  font-size: 0.5em;
  padding: 0.2em;
  border-radius: 0.5em;
  opacity: 0.5;
}

.assessmentTitle {
  font-weight: normal;
  color: #333333;
}

.bigStatus {
  line-height: 40px;
  font-size: 40px;
  font-weight: bold;
}

ul.menu ul {
  margin: 0;
}

h3 {
  margin-top: 1em;
  margin-bottom: 0.3em;
  border-bottom: 2px solid #ccdbf0;
}

table.cellTable {
  width: 100%;
  margin-bottom: 2em;
  margin-top: 1em;
  border: 5px solid #ccdbf0;
  border-collapse: separate;
  border-radius: 1em;
}

table.cellTable th {
  background: url(images/bluegradient.png) left top repeat-x;
}

table.cellTable th,
table.cellTable td {
  padding: 0.6em 0.3em;
  border: 1px solid #ccdbf0;
  vertical-align: middle;
}

table.cellTable td h4 {
  font-size: 1.2em;
  margin: 0;
}

.cellTable tr.selected {
  background-color: #ccdbf0;
}

table.listTable {
  width: 100%;
  margin-bottom: 2em;
  margin-top: 1em;
  border: 5px solid #ccdbf0;
  border-collapse: separate;
  border-radius: 1em;
}

table.listTable th {
  background: url(images/bluegradient.png) left top repeat-x;
}

table.listTable th,
table.listTable td {
  padding: 0.6em 0.3em;
  border-top: 1px solid #ccdbf0;
  border-bottom: 1px solid #ccdbf0;
  vertical-align: middle;
}

table.listTable td h4 {
  font-size: 1.2em;
  margin: 0;
}

.listTable tr.selected {
  background-color: #ccdbf0;
}

td.bigStatus {
  text-align: center;
  padding: 0 !important;
}

td.plus {
  text-align: center;
}

td.plus:before {
  content: '\271a';
  line-height: 40px;
  font-size: 40px;
  font-weight: bold;
}

/* ========== Footer ========== */

footer {
  margin-top: 4em;
  border-top: 1px solid #ccdbf0;
  padding: 2em 0;
}

footer .logos {
  float: right;
}

footer .logos img {
  margin-left: 0.5em;
}

footer .copyright {
  color: #666666;
  font-size: smaller;
}

footer .copyright p {
  margin: 0;
}

footer .copyright a, footer .copyright a:hover {
  color: #666666;
}

/* ========== Breadcrumbs & page title ========== */

nav.breadcrumbs a {
  color: black;
  text-decoration: none;
}

nav.breadcrumbs a:hover {
  color: black;
  text-decoration: underline;
}

/* ========== QTI samples listing ========== */

div.sampleList {
  margin-bottom: 2em;
}

div.sampleList h3 {
  border-bottom: 1px solid #dddddd;
}

div.sampleList ul {
  margin-top: 1em;
  list-style: none;
}

div.sampleList li {
  margin: 0;
  padding: 0.2em 0;
}

div.sampleList li h4 {
  font-size: 1.2em;
  margin: 0;
}

div.sampleList .launch {
  vertical-align: middle;
  height: 40px;
}

.buttonLink {
  font-family: 'Open Sans', sans-serif;
  height: 40px;
  line-height: 40px;
}

.buttonLink:before {
  content: '\25b6';
  color: #33cc33;
  font-size: 18px;
  line-height: 18px;
}

/* ========== Box Launch Buttons ========== */

.boxes {
  margin-top: 2em;
}

.box {
  background: white url(images/bluegradient.png) repeat-x top center;
  border: 1px solid #ccdbf0;
  border-radius: 0.5em;
  text-align: center;
}

.box a.boxButton {
  padding: 1em;
  display: block;
  color: black;
  text-decoration: none;
}

.box:hover {
  border: 1px solid #c80042;
}

.box .boxButton h3 {
  font-family: 'Ubuntu', Sans-Serif;
  font-weight: normal;
  color: #2466bf;
  border: none;
}

.box .boxButton h3:after {
  display: block;
  font-size: 75px;
  color: #2466bf;
}

.boxButton.about h3:after {
  content: '\27b2'; /* Arrow thing */
}

.boxButton.run h3:after {
  content: '\25b6'; /* Play symbol */
}

.boxButton.samples h3:after {
  content: '\2708'; /* Aeroplane */
}

.boxButton.validator h3:after {
  content: '\2714'; /* Tick symbol */
}

.boxButton.demos h3:after {
  content: '\261b'; /* Finger */
}

.boxButton.signup h3:after {
  content: '\2709'; /* Envelope */
}

.boxButton.login h3:after {
  content: '\2710'; /* Pencil */
}

.boxButton.assessments h3:after {
  content: '\2615'; /* Hot beverage */
}

.boxButton.deliveries h3:after {
  content: '\2620'; /* Skull and Crossbones(!) */
}

.boxButton.deliverysettings h3:after {
  content: '\2672'; /* Recycling symbol */
}

.boxButton.itemdeliverysettings h3:after {
  content: '\2022'; /* Bullet */
}

.boxButton.testdeliverysettings h3:after {
  content: '\2746'; /* Snowflake */
}

.boxButton div {
  min-height: 4em;
  vertical-align: middle;
}

/* ========== QTI Examples ========== */

.sampleIndex {
  text-align: center;
  line-height: 40px;
  font-size: 40px;
  font-weight: bold;
}

/* ========== Author debug view ========== */

.debugMathsContent {
  display: none;
}

ul.summary {
  background: white url(images/bluegradient.png) left top repeat-x;
  border: 1px solid #ccdbf0;
  border-radius: 0.5em;
  list-style: none;
  margin: 0;
  padding: 1em;
}

ul.summary li {
  margin: 0;
  padding: 0.3em 0 0.3em 32px;
}

li.errorSummary {
  background: url(images/exclamation.png) 5px center no-repeat;
  padding-left: 25px;
}

li.warnSummary {
  background: url(images/error.png) 5px center no-repeat;
  padding-left: 25px;
}

li.infoSummary {
  background: url(images/information.png) 5px center no-repeat;
  padding-left: 25px;
}

.buttonBar {
}

.buttonBar ul {
  list-style: none;
  margin: 1em;
  text-align: center;
}

.buttonBar li {
  display: inline;
  padding: 0.2em;
}

.buttonBar li form {
  display: inline;
}


/* ========== Expandable Tree result panels ========== */

.resultPanel {
  border-top-left-radius: 2em;
  background: white url(images/bluegradient.png) left top repeat-x;
  margin: 1em 0;
  padding-right: 0.5em;
}

.resultPanel .resultPanel {
  margin-left: 2em;
}

.resultPanel > h4 {
  margin: 0;
  padding: 0.4em 0 0.4em 28px;
  color: black;
  font-size: 1.25em;
}

.resultPanel.info > h4 {
  background: url(images/information.png) 5px center no-repeat;
  color: black;
}

.resultPanel.success > h4 {
  background: url(images/accept.png) 5px center no-repeat;
  color: black;
}

.resultPanel.warning > h4,
.resultPanel.warnings > h4 {
  background: url(images/error.png) 5px center no-repeat;
  color: #cd6800;
}

.resultPanel.failure > h4 {
  background: url(images/exclamation.png) 5px center no-repeat;
  color: #cd1753;
}

.resultPanel .details {
  padding: 0 0.5em 0em 0.5em;
  margin-bottom: 0.5em;
}

.resultPanel table {
  width: 100%;
  border-collapse: collapse;
  margin: 1em;
}

.resultPanel table th,
.resultPanel table td {
  padding: 0.5em;
  border: 1px solid #ccdbf0;
}

.resultPanel table td.center,
.resultPanel table th.center {
  text-align: center;
}

.resultPanel table th {
  background-color: #ccdbf0;
}

.toggler {
  float: right;
  color: black;
}

.toggler.plus {
  float: right;
}

.toggler.minus {
  float: right;
  display: none;
}

.resultPanel.expandable h4:hover {
  cursor: hand;
  cursor: pointer;
}

/* ========== Delivery Settings selector ========== */

ul.dsSelector {
  list-style: none;
}

ul.dsSelector li {
  margin: 0;
  padding: 0;
}

ul.dsSelector li div.dsPrompt {
  display: none;
}

/* ========== Form Stuff ========== */

/* Form error messages */
.formErrors {
  margin: 1em 0;
  color: #c80042;
  font-weight: bold;
  font-size: 1.1em;
}

.required {
  color: #c80042;
}

.expandy {
  width: 100%;
}

fieldset {
}

.stdFormRow {
  line-height: 40px;
}

form.deliverySettings fieldset {
  margin: 1em 0;
  border-top: 2px solid #ccdbf0;
  padding: 1em 0;
}

form.deliverySettings fieldset legend {
  padding: 0 1em 0 0;
  font-size: 1.3em;
  font-weight: bold;
}

form.deliverySettings .stdFormRow {
  line-height: inherit;
  margin: 0.5em 0;
}

/* ========== Instructor Assessment Info ========== */

.infoBox {
  border: 2px solid #ccdbf0;
  padding: 0.5em;
  margin-bottom: 1em;
  background: url(images/bluegradient.png) left top repeat-x;
}

.infoBox .cat {
  display: block;
  font-size: smaller;
}

.infoBox .value {
  display: block;
  font-weight: bold;
  font-size: 1.3em;
}

/* ========== Random ========== */

pre.xmlSource {
  border: 1px solid #ccdbf0;
  font-size: smaller;
  overflow-x: auto;
  background: #f7f7ff;
}

