.aggregate .loader {
  text-align: center;
}
.aggregate h1,
.aggregate h2,
.aggregate h3,
.aggregate h4,
.aggregate h5,
.aggregate h6 {
  margin: 0;
}
.aggregate p {
  margin: 0;
}
.aggregate p.message {
  text-align: center;
}
.aggregate .block {
  background-color: #ffffff;
  padding: 12px 24px;
}
.aggregate .heading-container {
  border-bottom: 1px #d9dadc solid;
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 12px 24px;
  overflow: auto;
}
.aggregate .heading-container h1 {
  font-weight: 600;
  text-transform: capitalize;
}
.aggregate .heading-container p {
  margin-top: 12px;
}
.aggregate .heading-container label {
  color: #b4b6b9;
  display: block;
  font-size: 1rem;
  text-transform: uppercase;
}
.aggregate .heading-container h1 + label {
  margin-top: -4px;
}
.aggregate .tabular-div-head div,
.aggregate context-row p,
.aggregate launch-row p,
.aggregate context-row button,
.aggregate launch-row button {
  float: left;
  text-align: left;
}
.aggregate context-row button {
  padding: 0px;
}
.aggregate .name-title {
  width: 103px;
  cursor: pointer;
}
.aggregate .title {
  color: #b4b6b9;
  font-weight: 800;
  padding: 12px 12px 12px 0px;
  white-space: nowrap;
}
.aggregate .attempts-title {
  width: 75px;
  cursor: pointer;
}
.aggregate .percent-title {
  width: 62px;
  cursor: pointer;
}
.aggregate item-icon {
  width: 45px;
}
.aggregate context-row-answers {
  transition-property: background-color;
}
.aggregate context-row-answers .response-row {
  overflow: hidden;
  display: flex;
}
.aggregate context-row-answers .response-row item-icon {
  cursor: pointer;
}
.aggregate context-row-answers .response-row item-icon:hover {
  opacity: .5;
}
.aggregate context-row-answers:nth-of-type(odd) {
  background-color: #ececed;
}
.aggregate context-row-answers:hover {
  background-color: #d9dadc;
}
.aggregate context-row-answers div {
  height: 45px;
}
.aggregate .display-message {
  padding: 5px 0 0 22px;
}
.aggregate .display-message .message-dropdown {
  border: none;
}
.aggregate .display-message .message-dropdown:focus {
  outline: none;
}
.aggregate .display-message .message-dropdown:hover {
  background-color: #ececed;
}
.aggregate .main-grid {
  display: grid;
  grid-template-columns: [left]auto [right]1fr;
  grid-template-rows: [summary]auto [header]auto [data]1fr;
  grid-auto-flow: column;
  overflow: auto;
}
.aggregate .main-grid .item-summary-labels {
  display: grid;
  grid-auto-flow: row;
  grid-row-gap: .5em;
  background-color: white;
  align-self: start;
  text-align: right;
  white-space: nowrap;
  position: sticky;
  left: 0px;
  border-right: 10px solid white;
  z-index: 10;
}
.aggregate .main-grid .item-summary-labels .header-space-fill {
  height: 69px;
}
.aggregate .main-grid .item-summary-labels .label {
  font-family: 'Open Sans', sans-serif;
  font-size: 1.4rem;
  font-weight: 800;
}
.aggregate .main-grid .item-summary-labels .label.correct {
  color: #7cb518;
}
.aggregate .main-grid .item-summary-labels .label.incorrect {
  color: #d62828;
}
.aggregate .main-grid .item-summary-labels .label.partialCorrect {
  color: #fdb414;
}
.aggregate .main-grid .item-summary-labels .label.skipped {
  color: #b4b6b9;
  border-bottom: 1px solid white;
}
.aggregate .main-grid .student-results-titles {
  display: flex;
  position: sticky;
  background-color: white;
  left: 0px;
  border-right: 10px solid white;
}
.aggregate .main-grid .student-results {
  display: grid;
  position: sticky;
  background-color: white;
  left: 0px;
  border-right: 10px solid white;
  z-index: 5;
}
.aggregate .main-grid .student-results .ellipsis {
  text-overflow: ellipsis;
  /* Required for text-overflow to do anything */
  white-space: nowrap;
  overflow: hidden;
}
.aggregate .main-grid .student-results .ellipsis:hover {
  z-index: 10;
  background-color: #d9dadc;
  position: fixed;
  width: auto !important;
}
.aggregate .main-grid .student-results context-row .student-name-wrapper {
  text-align: left;
  width: 120px;
  float: left;
  padding: 12px 12px 12px 0px;
}
.aggregate .main-grid .student-results context-row .student-name-wrapper .student-name {
  width: 120px;
  min-width: 120px;
}
.aggregate .main-grid .student-results context-row .student-name-wrapper span {
  margin-left: 12px;
}
.aggregate .main-grid .student-results context-row .p-attempts {
  width: 51px;
  padding: 12px;
}
.aggregate .main-grid .student-results context-row .p-percent {
  width: 57px;
  padding: 12px 12px 12px 0px;
}
.aggregate .main-grid .student-results context-row:nth-of-type(odd) {
  background-color: #ececed;
}
.aggregate .main-grid .student-results context-row:hover {
  background-color: #d9dadc;
}
.aggregate .main-grid .aggregate-title {
  left: 288px;
  max-width: 1px;
  position: sticky;
  white-space: nowrap;
}
.aggregate .main-grid .item-summary {
  overflow: hidden;
  display: flex;
  align-content: end;
  justify-items: center;
  margin-bottom: 25px;
}
.aggregate .main-grid .item-summary .data-column {
  width: 45px;
  display: grid;
  grid-auto-flow: row;
  grid-row-gap: .5em;
  justify-content: center;
}
.aggregate .main-grid .item-summary .data-column .column-title {
  font-weight: bold;
  border-bottom: none;
  position: sticky;
  top: 0;
}
.aggregate .main-grid .item-summary .data-column span {
  width: inherit;
  text-align: center;
}
.aggregate .main-grid .item-summary .data-column span.correct {
  border-bottom: 1px solid #7cb518;
}
.aggregate .main-grid .item-summary .data-column span.incorrect {
  border-bottom: 1px solid #d62828;
}
.aggregate .main-grid .item-summary .data-column span.partialCorrect {
  border-bottom: 1px solid #fdb414;
}
.aggregate .main-grid .item-summary .data-column span.skipped {
  border-bottom: 1px solid #b4b6b9;
}
.aggregate .main-grid .responses-grid {
  grid-row: data;
  grid-column: right;
  display: table;
}
