md-dialog#PDFviewer {
  position: fixed;
  background: rgba(0, 0, 0, 0.8);
  width: 100%;
  max-width: 100%;
  height: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
  z-index: 50; }
  md-dialog#PDFviewer div.controls {
    background: grey;
    padding: .5em; }
    md-dialog#PDFviewer div.controls md-icon {
      padding-bottom: 5px;
      height: 1.2em;
      width: 1.2em;
      margin-top: .5em;
      float: left;
      margin-left: .1em; }
      md-dialog#PDFviewer div.controls md-icon svg path {
        fill: #FFF !important; }
    md-dialog#PDFviewer div.controls div.input {
      margin-left: 2em; }
  md-dialog#PDFviewer #dialogContent_PDFviewer, md-dialog#PDFviewer md-dialog-content#PDFviewer {
    height: 100%; }
  md-dialog#PDFviewer iframe {
    width: 100%;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    border: none; }

html {
  position: fixed;
  width: 100%;
  min-height: 100%;
  min-width: 320px; }
  html body {
    overflow: hidden;
    min-height: 100%; }

body > md-toolbar > .md-toolbar-tools {
  top: 0;
  padding-top: 1.2em;
  padding-bottom: 1.4em; }
  body > md-toolbar > .md-toolbar-tools h3 {
    font-size: 1em;
    color: #fff; }

md-tab-content.md-no-scroll {
  bottom: auto;
  overflow: hidden; }

md-toolbar md-tabs md-pagination-wrapper {
  height: 48px !important; }

md-toolbar md-tab-item {
  width: 25%; }

md-toolbar.single-layout md-tab-item {
  width: 33.33%; }

[md-tabs-template],
section#base-layout,
md-toolbar.md-default-theme,
md-tabs,
md-tabs-content-wrapper,
md-tab-content,
md-content {
  height: 100%; }

div#base-wrap {
  height: calc(100% - 50px); }

.md-button.md-fab.md-fab-bottom-right {
  background-color: #FF3200; }
  .md-button.md-fab.md-fab-bottom-right ng-md-icon {
    height: 28px; }

button.md-fab.add {
  position: fixed;
  width: 4.4em !important;
  height: 4.4em !important; }

md-menu-item {
  color: #000 !important; }

button.search svg {
  width: 35px;
  height: 35px;
  margin-top: -7px;
  margin-left: -7px; }

md-toolbar .md-menu {
  margin: 0;
  padding: 0;
  position: relative;
  margin-right: -1.5em;
  left: -1.5em; }

md-toolbar button.md-button.main-menu svg {
  position: relative;
  top: -2px; }

md-toolbar button.md-button.search svg {
  position: relative;
  top: -1px; }

md-toolbar md-tabs {
  margin: 0;
  height: 100%; }
  md-toolbar md-tabs md-tabs-wrapper {
    border: 0 !important;
    position: relative;
    top: 1px; }
  md-toolbar md-tabs md-content {
    overflow-x: hidden; }
  md-toolbar md-tabs md-tab-item {
    padding: 12px 0 !important; }
    md-toolbar md-tabs md-tab-item md-icon {
      padding-bottom: 5px;
      height: 3.9em;
      width: 3.9em;
      margin-top: -1.3em; }
      md-toolbar md-tabs md-tab-item md-icon svg path {
        fill: #BA2C08 !important; }
    md-toolbar md-tabs md-tab-item.md-active md-icon svg path {
      fill: #FFF !important; }
  md-toolbar md-tabs md-pagination-wrapper {
    width: 100% !important; }
  md-toolbar md-tabs md-tabs-canvas {
    width: 90% !important;
    margin: auto; }
  md-toolbar md-tabs md-ink-bar {
    height: 3px;
    background-color: #FFF !important; }

md-toolbar ng-md-icon svg path {
  fill: #FFF !important; }

md-dialog md-toolbar .md-button {
  text-align: right;
  padding: .5em; }

.submenu {
  background: #191919; }

input.ng-dirty.ng-invalid {
  background: rgba(255, 0, 0, 0.2) !important; }

button.small {
  min-width: 35px !important;
  width: 35px; }

div.error {
  color: red;
  font-size: .75em;
  display: block;
  width: 100%;
  position: relative;
  margin-top: -1.5em; }

md-input-container, md-checkbox {
  width: 100%; }

md-input-container .md-input[disabled], [disabled] md-input-container .md-input {
  background: rgba(0, 0, 0, 0.1); }

form.white-bg input:-webkit-autofill {
  -webkit-text-fill-color: #000 !important;
  -webkit-box-shadow: 0 0 0px 1000px #FFF inset !important; }

form.white-bg input:focus:-webkit-autofill {
  -webkit-text-fill-color: #000 !important;
  -webkit-box-shadow: 0 0 0px 1000px #FFF inset !important; }

form.red-bg input:-webkit-autofill {
  -webkit-text-fill-color: #FFF !important;
  -webkit-box-shadow: 0 0 0px 1000px #FF3200 inset !important; }

form.red-bg input:focus:-webkit-autofill {
  -webkit-text-fill-color: #FFF !important;
  -webkit-box-shadow: 0 0 0px 1000px #FF3200 inset !important; }

.clear {
  display: block !important;
  clear: both !important; }

.left {
  float: left; }

.right {
  float: right; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.hide, .hidden {
  display: none !important; }

.link {
  cursor: pointer; }

.black {
  color: #000; }

.white {
  color: #FFF; }

html.layout-basic {
  height: auto;
  position: inherit; }
  html.layout-basic body {
    background-color: #FFF;
    overflow: auto;
    height: auto; }

html.layout-login {
  height: 100%;
  position: relative;
  overflow: auto;
  background: none !important; }
  html.layout-login body {
    height: 100%;
    overflow: auto;
    background: none !important; }

section#search {
  position: fixed;
  background: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 50; }
  section#search div.controls {
    background: grey;
    padding: .5em; }
    section#search div.controls md-icon {
      padding-bottom: 5px;
      height: 1.2em;
      width: 1.2em;
      margin-top: .5em;
      float: left;
      margin-left: .1em; }
      section#search div.controls md-icon svg path {
        fill: #FFF !important; }
    section#search div.controls div.input {
      margin-left: 2em; }

html.single-layout {
  overflow: auto;
  position: relative; }
  html.single-layout body {
    overflow: auto; }

md-toast {
  color: #000 !important;
  zoom: 1.4; }
  md-toast.md-toast-error-theme {
    background: #ff3200;
    border: 1px solid #FFF; }
  md-toast.md-toast-success-theme {
    background: #CEEBCC; }
  md-toast.md-toast-warning-theme {
    background: #FBF6E1; }
  md-toast.md-toast-info-theme {
    background: #ECF6FF; }

input:focus {
  outline: none; }

@font-face {
  font-family: SourceSansPro;
  src: url("/modules/base/fonts/source-sans-pro/SourceSansPro-Regular.otf") format("opentype"); }

@font-face {
  font-family: SourceSansPro;
  font-weight: bold;
  src: url("/modules/base/fonts/source-sans-pro/SourceSansPro-Semibold.otf") format("opentype"); }

body {
  color: #FFF;
  font-family: SourceSansPro;
  font-size: 18px; }

a.red-link {
  display: inline-block;
  color: #FF3200;
  font-weight: bold;
  cursor: pointer; }
  a.red-link.disabled {
    color: #9c9c9c;
    pointer-events: none; }

a {
  cursor: pointer; }

a.disabled {
  color: #999;
  pointer-events: none; }

section#collab-invite {
  max-width: 620px;
  margin: auto;
  color: #000;
  padding: 1em; }
  section#collab-invite div.intro {
    margin: 2em 0; }
  section#collab-invite div.invite-error {
    background: #FFD1D1;
    padding: .5em; }
  section#collab-invite fieldset {
    margin: 1em 0; }
  section#collab-invite div.done {
    background: #B5DEB5;
    padding: .5em;
    margin-top: .5em; }
  section#collab-invite form {
    padding-top: 1em;
    max-width: 590px; }
    section#collab-invite form div.login-error {
      background: #FFD1D1;
      padding: .5em;
      margin-bottom: 1em; }
    section#collab-invite form input[type=date] {
      margin-left: 0; }
    section#collab-invite form button.submit {
      margin-top: 2em; }
    section#collab-invite form a.passwordForgotten {
      font-size: .9em;
      margin: .5em 1em;
      font-style: italic;
      text-align: right; }

html {
  height: 100%;
  position: relative;
  background: none !important; }
  html body {
    background: none !important;
    overflow: hidden;
    max-width: 100%;
    max-height: 100%; }
    html body > md-content {
      background: none !important;
      overflow-y: auto;
      overflow-x: hidden; }
      html body > md-content section#signup {
        max-width: 720px;
        padding: 0.75em;
        margin: auto; }
        html body > md-content section#signup .intro {
          padding: 0 5px; }
        html body > md-content section#signup p {
          text-align: justify; }
        html body > md-content section#signup a {
          color: #BA2C08;
          text-decoration: none; }
        html body > md-content section#signup .hint {
          order: 999999;
          font-size: 12px;
          line-height: 14px;
          overflow: hidden;
          padding-top: 5px; }
        html body > md-content section#signup form {
          margin: auto;
          font-size: 1.1em; }
          @media (max-width: 644px) {
            html body > md-content section#signup form fieldset {
              border: 0;
              padding: 0;
              margin: 0; } }
          html body > md-content section#signup form .box {
            padding: 0 5px;
            margin-bottom: 10px;
            border: 1px solid rgba(0, 0, 0, 0.2);
            box-shadow: 0 3px 3px -2px #333; }
            @media (min-width: 600px) {
              html body > md-content section#signup form .box .border-right {
                border-right: 1px solid rgba(0, 0, 0, 0.05);
                padding-right: 5px; } }
            @media (max-width: 599px) {
              html body > md-content section#signup form .box .button-remove {
                margin: 10px 0; } }
          html body > md-content section#signup form .md-subheader {
            position: relative !important;
            background-color: transparent;
            font-weight: bold;
            font-size: 20px; }
            html body > md-content section#signup form .md-subheader .md-subheader-inner {
              padding-left: 0; }
          html body > md-content section#signup form .md-input-invalid, html body > md-content section#signup form .md-input {
            color: #000; }
          html body > md-content section#signup form md-input-container.md-input-invalid [ng-message], html body > md-content section#signup form md-input-container [ng-messages] :not(.md-char-counter) {
            color: #000; }
          html body > md-content section#signup form .md-input-focused .md-input {
            color: #000; }
          html body > md-content section#signup form md-icon {
            width: 36px;
            height: 36px; }

md-dialog md-dialog-content {
  color: #000; }
  @media (max-width: 599px) {
    md-dialog md-dialog-content .md-dialog-content {
      padding: 16px; } }
  md-dialog md-dialog-content p {
    font-size: 16px; }
  md-dialog md-dialog-content h3 {
    margin-bottom: 5px; }
  md-dialog md-dialog-content table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ddd; }
    md-dialog md-dialog-content table thead {
      background-color: #cccccc; }
    md-dialog md-dialog-content table tr th, md-dialog md-dialog-content table tr td {
      text-align: left;
      padding: 5px 10px;
      border-right: 1px solid #dddddd; }
    md-dialog md-dialog-content table tbody tr:nth-child(even) {
      background-color: #f2f2f2; }

md-dialog#comment {
  color: #000;
  width: 90%;
  max-width: 380px; }
  md-dialog#comment md-toolbar h3 {
    color: #FFF;
    white-space: nowrap; }
  md-dialog#comment md-dialog-content {
    min-height: 160px;
    padding: .5em; }

#report-new {
  min-width: 280px;
  height: 90%;
  width: 90%;
  max-height: 700px;
  max-width: 380px; }
  #report-new .validation-errors {
    color: red;
    font-size: .75em;
    margin-top: .75em; }
    #report-new .validation-errors .validation-error {
      margin-top: 0.5em;
      display: block; }
  #report-new md-toolbar {
    height: 1em; }
    #report-new md-toolbar md-icon svg path {
      fill: #FFF; }
  #report-new div.loading-bar {
    height: 10px;
    overflow: hidden; }
  #report-new md-dialog-content {
    width: 100%;
    padding: 1em 0; }
    #report-new md-dialog-content div.attachment {
      overflow: hidden; }
      #report-new md-dialog-content div.attachment input[type=file] {
        opacity: 0;
        background-color: red;
        position: relative;
        top: -45px;
        width: 100%;
        padding: 10px; }
      #report-new md-dialog-content div.attachment div.preview {
        width: 6em;
        margin: .5em;
        height: 4em;
        border: 1px solid #c0c0c0;
        background: #eaeaea;
        background-size: cover;
        background-position: center; }
      #report-new md-dialog-content div.attachment div.attachment-preview {
        display: inline-block; }
      #report-new md-dialog-content div.attachment span.attachment {
        color: #333;
        font-size: .85em;
        padding: 4px;
        display: block; }
      #report-new md-dialog-content div.attachment div.upload-button {
        max-height: 2em;
        background: #FFF; }
        #report-new md-dialog-content div.attachment div.upload-button button {
          text-align: left;
          font-size: 1.1em;
          padding: 0;
          margin-left: 4px;
          text-transform: capitalize;
          font-weight: bold; }
      #report-new md-dialog-content div.attachment img.loading {
        position: absolute;
        margin-top: -1.5em;
        margin-left: 10em; }
      #report-new md-dialog-content div.attachment md-input-container {
        clear: both; }
    #report-new md-dialog-content form {
      padding: 1em;
      padding-top: 0;
      color: #000; }
      #report-new md-dialog-content form md-select {
        max-width: 18em; }
      #report-new md-dialog-content form div.error.title {
        top: -1em;
        position: relative;
        margin-bottom: 1em;
        margin-top: 0;
        margin-left: .5em; }
      #report-new md-dialog-content form fieldset {
        border: none;
        padding: 0;
        margin-bottom: 1em;
        margin-top: 2em; }
        #report-new md-dialog-content form fieldset legend {
          color: #000;
          font-size: .9em;
          font-weight: bold;
          margin-bottom: .5em; }
        #report-new md-dialog-content form fieldset md-radio-group div.md-label {
          color: #000; }
          #report-new md-dialog-content form fieldset md-radio-group div.md-label span.title {
            width: 2.8em;
            display: inline-block; }
          #report-new md-dialog-content form fieldset md-radio-group div.md-label span.title-upload {
            width: 6em;
            display: inline-block; }
          #report-new md-dialog-content form fieldset md-radio-group div.md-label span.sub {
            color: #999;
            font-size: .8em; }
        #report-new md-dialog-content form fieldset div.error {
          margin-top: 1em;
          margin-left: .5em; }
      #report-new md-dialog-content form md-checkbox {
        margin-left: 3px; }
      #report-new md-dialog-content form md-radio-button {
        margin-left: 3px;
        margin-bottom: 2px;
        margin-top: 8px; }
        #report-new md-dialog-content form md-radio-button div.md-label {
          margin-left: 10px !important; }
      #report-new md-dialog-content form md-autocomplete {
        background: none; }
        #report-new md-dialog-content form md-autocomplete md-autocomplete-wrap {
          background: #FFF;
          box-shadow: none;
          padding-bottom: 0;
          max-height: 1.9em;
          border-bottom: 1px solid #e1e1e1; }
          #report-new md-dialog-content form md-autocomplete md-autocomplete-wrap input {
            font-size: 1em;
            margin-left: -.7em; }
      #report-new md-dialog-content form a.get-location {
        color: #000;
        font-size: .9em;
        font-weight: bold;
        display: inline-block;
        margin-top: .75em; }
        #report-new md-dialog-content form a.get-location md-icon svg {
          width: 40px;
          height: 40px;
          fill: #000;
          margin-top: -10px;
          margin-left: -5px; }
      #report-new md-dialog-content form md-input-container.time-select {
        margin-top: 2.5em;
        margin-bottom: 1em; }
        #report-new md-dialog-content form md-input-container.time-select label {
          font-weight: bold;
          color: #000;
          font-size: 1.2em;
          margin-bottom: .25em; }
      #report-new md-dialog-content form a.red-link {
        font-size: 1.1em;
        margin-bottom: 1em; }

section#report-stats-linecharts div.perspectives div.perspective {
  background: #F5F5F5;
  padding: 1em;
  border-radius: .5em;
  margin-bottom: 1em;
  margin-top: 1em; }
  section#report-stats-linecharts div.perspectives div.perspective div.icon {
    width: 2em;
    float: left;
    margin-top: .3em;
    margin-right: .5em; }
  section#report-stats-linecharts div.perspectives div.perspective div.title {
    font-size: 1.1em;
    white-space: nowrap;
    font-weight: bold; }
  section#report-stats-linecharts div.perspectives div.perspective div.period select {
    width: 100%;
    float: left;
    font-size: 1.5em; }
  section#report-stats-linecharts div.perspectives div.perspective div.chart-container {
    margin-top: 1em; }

section#report-stats-totals {
  padding: 0 1em 5em 1em; }
  section#report-stats-totals h3 {
    margin-bottom: .8em; }
  section#report-stats-totals div.period fieldset {
    border: none;
    margin: 0;
    padding: 0; }
    section#report-stats-totals div.period fieldset .md-label {
      width: 100%;
      font-size: .9em; }
    section#report-stats-totals div.period fieldset span.title {
      font-weight: bold; }
    section#report-stats-totals div.period fieldset span.count {
      float: right;
      padding-right: 1em;
      color: #ff3300;
      font-size: .9em;
      font-weight: bold; }
  section#report-stats-totals div.results {
    padding-bottom: 5em; }
    section#report-stats-totals div.results a.report {
      display: block;
      height: 0;
      float: left;
      background-size: cover;
      width: 33%;
      padding-bottom: 33%;
      cursor: pointer;
      border: 1px solid #FFF; }

section#student-profile {
  padding-bottom: 4em; }
  section#student-profile div.submenu {
    background-position: center;
    background-size: cover; }
    section#student-profile div.submenu div.inner {
      background: rgba(0, 0, 0, 0.7);
      height: 60px;
      padding: 10px 8px;
      font-size: .9em; }
      section#student-profile div.submenu div.inner button.edit {
        float: right;
        position: relative;
        top: 1.3em;
        width: 60px;
        height: 60px; }
        section#student-profile div.submenu div.inner button.edit md-icon.edit svg {
          width: 50px;
          height: 50px;
          position: relative;
          top: -15px;
          left: -12px; }
          section#student-profile div.submenu div.inner button.edit md-icon.edit svg path {
            fill: #FFF; }
        section#student-profile div.submenu div.inner button.edit md-icon.floppy svg {
          width: 50px;
          height: 60px;
          position: relative;
          top: -8px;
          left: -1px; }
          section#student-profile div.submenu div.inner button.edit md-icon.floppy svg path {
            fill: #FFF; }
      section#student-profile div.submenu div.inner button.md-button.avatar {
        width: 6.5em;
        height: 6.5em;
        background-color: #CDCDCD !important;
        background-position: center;
        background-size: cover;
        box-shadow: none; }
        section#student-profile div.submenu div.inner button.md-button.avatar md-icon {
          pointer-events: none;
          display: block;
          width: 62px;
          height: 70px;
          position: relative; }
        section#student-profile div.submenu div.inner button.md-button.avatar input {
          position: absolute;
          padding: 1em;
          left: -50%;
          font-size: 5em;
          top: -50%;
          opacity: 0;
          cursor: pointer; }
      section#student-profile div.submenu div.inner div.age {
        width: 100%;
        position: relative;
        text-align: center;
        color: #FFF;
        font-weight: bold;
        font-size: 1.2em;
        top: -4.4em; }
  section#student-profile form {
    padding: 3.2em 2em;
    font-size: .9em;
    margin-top: .5em; }
    section#student-profile form div.pane-edit, section#student-profile form div.pane-view {
      display: none; }
    section#student-profile form div.name #input-firstname {
      width: 40%; }
    section#student-profile form div.name #input-middlename {
      width: 20%; }
    section#student-profile form div.name #input-lastname {
      width: 40%; }
    section#student-profile form div.validation-error {
      margin-top: -2em;
      padding-bottom: 1em;
      padding-left: 42px; }
    section#student-profile form md-input-container {
      margin-bottom: .5em;
      height: 56px; }
      section#student-profile form md-input-container md-icon svg {
        width: 3em;
        height: 3em;
        position: relative;
        top: -1em;
        margin-left: -1.5em; }
        section#student-profile form md-input-container md-icon svg path {
          fill: #000;
          stroke-width: 1; }
  section#student-profile.edit form div.pane-edit {
    display: block; }
  section#student-profile.view form div.pane-view {
    display: block; }

section#report-timeline {
  padding-bottom: 6em;
  min-height: 100%; }
  section#report-timeline .video {
    width: 100%;
    height: 400px;
    margin: 0 auto; }
  section#report-timeline .audio {
    width: 100%; }
  section#report-timeline .slider {
    position: relative; }
  section#report-timeline .prev, section#report-timeline .next {
    cursor: pointer;
    position: absolute;
    top: 50%;
    width: auto;
    padding: 16px;
    margin-top: -22px;
    color: white;
    font-weight: bold;
    font-size: 18px;
    transition: 0.6s ease;
    border-radius: 0 3px 3px 0;
    user-select: none;
    background-color: black; }
    section#report-timeline .prev:hover, section#report-timeline .next:hover {
      background-color: rgba(0, 0, 0, 0.5); }
  section#report-timeline .next {
    right: 0;
    border-radius: 3px 0 0 3px; }
  section#report-timeline .fade {
    -webkit-animation-name: fade;
    -webkit-animation-duration: 1.5s;
    animation-name: fade;
    animation-duration: 1.5s; }

@-webkit-keyframes fade {
  from {
    opacity: .4; }
  to {
    opacity: 1; } }

@keyframes fade {
  from {
    opacity: .4; }
  to {
    opacity: 1; } }
  @media only screen and (max-width: 300px) {
    section#report-timeline .prev, section#report-timeline .next, section#report-timeline .text {
      font-size: 11px; } }
  section#report-timeline.empty {
    background-image: url(/modules/student/images/no-reports.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center; }
  section#report-timeline div.loading {
    background-color: #FFF;
    background-image: url(/modules/base/images/loader.gif);
    background-repeat: no-repeat;
    background-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    section#report-timeline div.loading p {
      text-align: center;
      margin-top: 40%; }
  section#report-timeline a.single-report-notice {
    display: block;
    width: 100%;
    text-align: center;
    margin: 1em;
    font-size: .75em; }
  section#report-timeline ul.reports {
    list-style: none;
    padding: 0;
    margin: 0; }
    section#report-timeline ul.reports li.report {
      padding: 0;
      padding-bottom: 1em; }
      section#report-timeline ul.reports li.report div.submenu {
        max-height: 58px;
        padding: 10px;
        font-size: .9em;
        overflow: hidden; }
        section#report-timeline ul.reports li.report div.submenu div.usericon {
          float: left;
          display: inline-block;
          margin-top: .05em;
          width: 2.1em;
          height: 2.1em;
          overflow: hidden;
          border-radius: 50%;
          background-size: cover; }
        section#report-timeline ul.reports li.report div.submenu div.info {
          float: left;
          font-size: .8em;
          padding-left: 1em;
          margin-top: .1em;
          width: 60%; }
          section#report-timeline ul.reports li.report div.submenu div.info div.date {
            margin-top: 0;
            color: #7d7d7d; }
          section#report-timeline ul.reports li.report div.submenu div.info div.author-name {
            color: #FFF;
            font-size: 1em;
            font-weight: bold;
            margin-top: -0.1em;
            max-height: 1.2em;
            overflow: hidden; }
        section#report-timeline ul.reports li.report div.submenu div.type {
          float: right;
          color: #FF3200;
          height: 1em;
          font-size: 1em;
          padding-right: .5em;
          margin-top: -.5em; }
      section#report-timeline ul.reports li.report div.preview-wrap {
        overflow: hidden;
        background: #8f8f8f; }
        section#report-timeline ul.reports li.report div.preview-wrap img.image-preview {
          clear: both;
          width: 100%;
          height: auto;
          position: relative;
          margin-bottom: -1px; }
          section#report-timeline ul.reports li.report div.preview-wrap img.image-preview.no-attachment {
            background-size: auto 95%;
            background-repeat: no-repeat;
            background-position: center 40%; }
          section#report-timeline ul.reports li.report div.preview-wrap img.image-preview.has-attachment {
            background-position: center;
            background-size: cover; }
        section#report-timeline ul.reports li.report div.preview-wrap div.pdf-preview {
          background: #FFF;
          border-radius: 10px;
          margin: 10px;
          margin-bottom: 60px;
          position: relative;
          z-index: 10;
          padding: 20px; }
          section#report-timeline ul.reports li.report div.preview-wrap div.pdf-preview div.row.info {
            background-image: url(/modules/base/images/pdf-logo.png);
            background-repeat: no-repeat;
            background-position: left;
            background-size: 40px;
            padding-left: 60px;
            font-size: .8em; }
            section#report-timeline ul.reports li.report div.preview-wrap div.pdf-preview div.row.info div.filename {
              max-width: 10em;
              height: 1.3em;
              text-overflow: ellipsis;
              overflow-y: hidden; }
          section#report-timeline ul.reports li.report div.preview-wrap div.pdf-preview div.row.link a {
            font-size: 1em;
            padding-top: .5em;
            text-decoration: none; }
        section#report-timeline ul.reports li.report div.preview-wrap div.shadow-wrap {
          z-index: -1;
          background-position: center;
          overflow: hidden;
          height: 172px;
          top: -176px;
          margin-bottom: -176px;
          position: relative;
          background-image: url(/modules/base/images/shadow.png);
          background-position: bottom;
          background-repeat: repeat-x; }
          section#report-timeline ul.reports li.report div.preview-wrap div.shadow-wrap div.location {
            position: absolute;
            bottom: 1em;
            height: 1.5em;
            overflow: hidden;
            margin-left: .25em;
            color: #FFF;
            font-size: .7em; }
            section#report-timeline ul.reports li.report div.preview-wrap div.shadow-wrap div.location svg {
              width: 2.5em;
              height: 2.5em;
              position: relative;
              top: -.6em; }
              section#report-timeline ul.reports li.report div.preview-wrap div.shadow-wrap div.location svg path {
                fill: #FFF; }
            section#report-timeline ul.reports li.report div.preview-wrap div.shadow-wrap div.location span {
              line-height: 1.2em;
              padding-left: .5em;
              height: 1em; }
      section#report-timeline ul.reports li.report div.info-wrap {
        padding: 0 .75em; }
        section#report-timeline ul.reports li.report div.info-wrap div.title {
          position: relative;
          clear: both;
          width: 100%;
          color: #000; }
          section#report-timeline ul.reports li.report div.info-wrap div.title h2 {
            float: left;
            width: 85%;
            padding: .45em 0;
            margin: 0;
            font-size: 1.3em;
            max-height: 3em;
            overflow: hidden;
            font-weight: normal;
            line-height: 1.2em; }
          section#report-timeline ul.reports li.report div.info-wrap div.title .md-menu {
            float: right;
            margin-right: -1em;
            left: 0; }
            section#report-timeline ul.reports li.report div.info-wrap div.title .md-menu svg {
              width: 2em;
              height: 2em; }
              section#report-timeline ul.reports li.report div.info-wrap div.title .md-menu svg path {
                fill: #7f7f7f !important; }
        section#report-timeline ul.reports li.report div.info-wrap div.description {
          clear: both;
          color: #000;
          font-size: .85em; }
        section#report-timeline ul.reports li.report div.info-wrap div.comments {
          clear: both;
          margin: 1em 0; }
          section#report-timeline ul.reports li.report div.info-wrap div.comments div.comment {
            clear: both;
            margin-top: 1em;
            font-size: .8em;
            color: #000000; }
            section#report-timeline ul.reports li.report div.info-wrap div.comments div.comment div {
              color: #7D7D7D; }
        section#report-timeline ul.reports li.report div.info-wrap div.respond {
          padding-top: 1em; }
          section#report-timeline ul.reports li.report div.info-wrap div.respond a.comment {
            margin-top: 0;
            padding-top: 0;
            color: #FF3200 !important;
            font-weight: bold;
            cursor: pointer; }
        section#report-timeline ul.reports li.report div.info-wrap div.comment-panel {
          padding: 0 1em; }
          section#report-timeline ul.reports li.report div.info-wrap div.comment-panel textarea {
            margin-top: 1em; }
          section#report-timeline ul.reports li.report div.info-wrap div.comment-panel div.saved {
            color: green;
            font-weight: bold; }
          section#report-timeline ul.reports li.report div.info-wrap div.comment-panel a.cancel {
            color: #000; }
    section#report-timeline ul.reports li.empty span.empty-text {
      text-align: center;
      padding: 2em;
      font-style: italic; }
    section#report-timeline ul.reports li.empty img.empty-img {
      bottom: 190px;
      position: absolute;
      width: 100%;
      height: auto;
      margin-left: -15px;
      height: 50%; }

section#student-list {
  height: 100%; }
  section#student-list div.bg {
    background: #191919; }
    section#student-list div.bg div.groupings {
      overflow-y: hidden; }
      section#student-list div.bg div.groupings div.inner {
        padding: 0;
        padding-top: 0;
        white-space: nowrap;
        background: #000; }
        section#student-list div.bg div.groupings div.inner li {
          display: inline-block;
          background: #000;
          float: none; }
          section#student-list div.bg div.groupings div.inner li a {
            cursor: pointer;
            display: inline-block;
            padding: 16px 1.1em;
            border: 0;
            font-weight: bold;
            color: #7d7d7d;
            text-decoration: none; }
          section#student-list div.bg div.groupings div.inner li.active a {
            color: #fff;
            border-bottom: 3px solid #fff;
            padding-bottom: 14px; }
  section#student-list div.students {
    background: #FFF;
    padding-bottom: 4em;
    margin-top: -.5em; }
    section#student-list div.students ul {
      padding: 0;
      list-style: none; }
      section#student-list div.students ul li {
        display: block;
        margin-bottom: .1em; }
        section#student-list div.students ul li a {
          display: block;
          padding: .25em;
          cursor: pointer; }
          section#student-list div.students ul li a span {
            pointer-events: none; }
          section#student-list div.students ul li a span.col-left {
            float: left;
            width: 5em; }
            section#student-list div.students ul li a span.col-left span.avatar {
              display: inline-block;
              border-radius: 50%;
              width: 4.5em;
              height: 4.5em;
              overflow: hidden;
              background-size: cover;
              background-position: center;
              margin-left: .5em; }
          section#student-list div.students ul li a span.col-right {
            float: left;
            padding: .4em .2em;
            position: absolute;
            margin-left: 6em;
            left: 0; }
            section#student-list div.students ul li a span.col-right label {
              display: block;
              text-align: left;
              color: #000;
              font-size: 1em;
              font-weight: normal;
              margin-top: .25em; }
            section#student-list div.students ul li a span.col-right span.info {
              color: #7d7d7d;
              font-size: .8em;
              position: relative;
              display: block; }
              section#student-list div.students ul li a span.col-right span.info strong {
                font-size: .2em;
                position: relative;
                top: -1.1em;
                padding-left: 1.1em;
                padding-right: 1.1em; }
        section#student-list div.students ul li.active label {
          color: red !important; }

html {
  height: 100%;
  position: relative;
  background-color: #FF3200; }
  html body {
    background-color: #FF3200;
    overflow: hidden;
    max-width: 100%;
    max-height: 100%; }
    html body > md-content {
      background-color: #FF3200;
      overflow-y: auto;
      overflow-x: hidden; }
      html body > md-content div.invite-error {
        max-width: 620px;
        margin: auto;
        background: #FFD1D1;
        padding: .5em; }
      html body > md-content section#account-extend {
        max-width: 720px;
        padding: 0.75em;
        margin: auto; }
        html body > md-content section#account-extend .intro {
          padding: 0 5px; }
        html body > md-content section#account-extend p {
          text-align: justify; }
        html body > md-content section#account-extend a {
          color: #BA2C08;
          text-decoration: none; }
        html body > md-content section#account-extend form {
          margin: auto;
          font-size: 1.1em; }
          @media (max-width: 644px) {
            html body > md-content section#account-extend form fieldset {
              border: 0;
              padding: 0;
              margin: 0; } }
          html body > md-content section#account-extend form .box {
            padding: 0 5px;
            margin-bottom: 10px;
            border: 1px solid rgba(0, 0, 0, 0.2);
            box-shadow: 0 3px 3px -2px #333; }
            @media (min-width: 600px) {
              html body > md-content section#account-extend form .box .border-right {
                border-right: 1px solid rgba(0, 0, 0, 0.05);
                padding-right: 5px; } }
            @media (max-width: 599px) {
              html body > md-content section#account-extend form .box .button-remove {
                margin: 10px 0; } }
          html body > md-content section#account-extend form .md-subheader {
            position: relative !important;
            background-color: transparent;
            font-weight: bold;
            font-size: 20px; }
            html body > md-content section#account-extend form .md-subheader .md-subheader-inner {
              padding-left: 0; }
          html body > md-content section#account-extend form label {
            color: #BA2C08; }
          html body > md-content section#account-extend form .md-input-invalid, html body > md-content section#account-extend form .md-input {
            border-color: #BA2C08; }
          html body > md-content section#account-extend form md-icon {
            width: 36px;
            height: 36px; }

section#auth-login {
  max-width: 460px;
  margin: auto; }
  section#auth-login div.logo-wrap {
    padding-top: 1em;
    text-align: center; }
    section#auth-login div.logo-wrap img {
      max-height: 11em; }
  section#auth-login a {
    color: black;
    text-decoration: underline; }
  section#auth-login form {
    max-width: 90%;
    margin: auto;
    font-size: 1.1em; }
    section#auth-login form md-content {
      overflow-x: hidden; }
    section#auth-login form span.conditions {
      font-size: 90%; }
      section#auth-login form span.conditions a {
        font-weight: bold;
        text-decoration: underline; }
    section#auth-login form md-icon {
      color: #000;
      height: 2em;
      width: 2em;
      margin-top: -.3em;
      margin-left: -.3em; }
    section#auth-login form .md-input-invalid, section#auth-login form .md-input {
      border-color: #000;
      color: #000; }
    section#auth-login form .md-input-focused .md-input {
      color: #000; }
    section#auth-login form .md-button {
      text-transform: capitalize;
      float: right;
      color: #000;
      margin-top: 0;
      margin-right: -1em;
      font-weight: bold;
      font-size: .9em; }
    section#auth-login form div.options {
      padding: 1.5em 0.8em;
      font-size: .8em; }
      section#auth-login form div.options a {
        display: block;
        margin-top: 1em; }

#doorbell-button {
  z-index: 10;
  margin-right: 60px; }

#doorbell-form {
  border-radius: 0 !important;
  color: #333; }
  #doorbell-form #intro-text {
    color: #000;
    font-size: .9em;
    margin-bottom: 1em; }
  #doorbell-form #doorbell-submit-button {
    background: #FF3200;
    color: #FFF;
    border: 0;
    margin: 1em 0; }
  #doorbell-form #doorbell-powered-by {
    display: none; }
  #doorbell-form #doorbell-close {
    color: #000; }

md-scroll-mask {
  z-index: 0 !important; }

md-toolbar-tools {
  top: 0;
  padding-top: 1.2em;
  padding-bottom: 1.2em; }

span.highlight {
  background-color: yellow; }

a.md-button.md-default-theme.md-warn.md-raised, a.md-button.md-warn.md-raised, a.md-button.md-default-theme.md-warn.md-fab, a.md-button.md-warn.md-fab, .md-button.md-default-theme.md-warn.md-raised, .md-button.md-warn.md-raised, .md-button.md-default-theme.md-warn.md-fab, .md-button.md-warn.md-fab {
  background-color: #FF3200; }

body.md-dialog-is-showing md-toolbar md-button .md-icon {
  float: right !important; }

body.md-dialog-is-showing md-toolbar md-content {
  overflow: hidden;
  position: relative; }

input[type=date] {
  margin-left: 2em;
  margin-top: -2px; }

md-toolbar.md-default-theme:not(.md-menu-toolbar), md-toolbar:not(.md-menu-toolbar) md-icon {
  color: #FFF; }

input[disabled], textarea[disabled],
select[disabled='disabled'], input:disabled,
textarea:disabled {
  -webkit-text-fill-color: #848484;
  -webkit-opacity: 1;
  color: #848484;
  background: white; }

.row .col-md-6, .row .col-xs-6, .row .col-6 {
  float: left;
  width: 50%; }

md-menu-content md-icon svg {
  width: 2.5em;
  height: 2.5em;
  position: relative;
  top: -.5em;
  margin-left: -.3em; }
  md-menu-content md-icon svg path {
    fill: #000;
    stroke-width: 1; }

md-backdrop {
  opacity: .75 !important; }

md-backdrop.md-menu-backdrop {
  background: rgba(0, 0, 0, 0.75); }

md-input-container textarea[md-no-autogrow].md-input {
  height: inherit;
  overflow-y: auto; }

md-menu-content.bottom {
  display: block !important;
  width: 100%;
  position: fixed;
  bottom: 0;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
  left: 0; }

.md-open-menu-container {
  margin-top: -100px; }

md-menu-content a {
  color: #000;
  text-decoration: none; }

.md-button.md-warn[type=submit] {
  color: #FF3200 !important; }

div.md-select-menu-container md-content {
  min-height: 100px !important; }

.md-autocomplete-suggestions-container {
  max-height: 170px !important; }

section#payment-confirmed {
  max-width: 460px;
  padding-top: 5rem;
  margin: auto; }

#user-profile {
  min-width: 260px;
  height: 90%;
  width: 90%;
  max-height: 700px;
  max-width: 380px;
  overflow-x: hidden;
  color: #000; }
  #user-profile md-toolbar {
    height: 1em; }
    #user-profile md-toolbar md-icon svg path {
      fill: #FFF; }
  #user-profile div.loading-bar {
    height: 3px;
    overflow: hidden; }
  #user-profile div.col-left {
    width: 6em;
    height: 6em; }
    #user-profile div.col-left div.preview {
      width: 5em;
      margin: .5em;
      height: 4em;
      border: 1px solid #c0c0c0;
      background: #eaeaea;
      background-size: cover;
      background-position: center; }
  #user-profile md-option {
    color: #000; }
  #user-profile div.col-right {
    height: 6em; }
    #user-profile div.col-right div.role {
      padding: .5em .7em; }
  #user-profile form input[type=file] {
    opacity: 0;
    background-color: red;
    position: relative;
    top: -45px;
    width: 100%;
    padding: 10px; }
  #user-profile form div.validation-error {
    margin-top: -1em;
    padding-left: 4px; }
  #user-profile form a.submit {
    margin-top: 1em;
    margin-bottom: 1em; }
  #user-profile form md-select span {
    color: #000; }
  #user-profile form input[type=date] {
    margin-left: 0; }
  #user-profile md-dialog-content {
    padding: 1em; }

section#user-reset-password-confirm {
  max-width: 760px;
  margin: auto; }
  section#user-reset-password-confirm div.logo-wrap {
    padding-top: 1em;
    text-align: center; }
    section#user-reset-password-confirm div.logo-wrap img {
      max-height: 11em; }
  section#user-reset-password-confirm a {
    text-decoration: none; }
  section#user-reset-password-confirm div.info {
    margin-top: 1em;
    margin-bottom: 1.5em; }
  section#user-reset-password-confirm form {
    max-width: 90%;
    margin: auto;
    font-size: 1.1em; }
    section#user-reset-password-confirm form md-content {
      overflow-x: hidden; }
    section#user-reset-password-confirm form div.error {
      font-size: .75em;
      display: block;
      width: 100%;
      position: relative;
      margin-top: -1em;
      margin-bottom: 1em;
      margin-left: 2em; }
    section#user-reset-password-confirm form md-icon {
      color: #000;
      height: 2em;
      width: 2em;
      margin-top: -.3em;
      margin-left: -.3em; }
    section#user-reset-password-confirm form a.submit {
      margin-top: 1em; }

md-dialog#user-reset-password-request md-dialog-content {
  color: #000;
  padding: 0em 1em 1em 1em; }
