﻿body {
  font-family: 'Roboto', sans-serif;
  background-color: #56585a;
}

.error {
  border-color: red !important;
}

.site-wrap {
  overflow: hidden;
  background: #ffffff;
}

.sub-head {
  color: #ff584c;
  font-style: italic;
}

.student-profile-box {
  width: 25%;
  float: left;
}

  .student-profile-box .panel {
    padding: 15px;
  }

.student-note {
  overflow-wrap: break-word;
  overflow: auto;
}

.student-note-elipsis {
  word-break: break-word;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -ms-box-orient: vertical;
  box-orient: vertical;
  -webkit-line-clamp: 5;
  -moz-line-clamp: 5;
  -ms-line-clamp: 5;
  line-clamp: 5;
  overflow: hidden;
}

.referral-quick-stats {
  text-align: center;
}

  .referral-quick-stats h4 {
    margin-bottom: 0px;
  }

.large-text {
  font-size: 40px;
}

.student-growth-tests {
  text-align: center;
}

.score-text {
  font-size: 25px;
}

.tabhost .tabhost-title {
  cursor: pointer;
  padding: 5px 15px;
  background: #3399ff;
  margin-top: 15px;
  color: #fff;
  font-size: 14px;
  position: relative;
}

.subscription-expired {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 40px;
  box-shadow: 0px 0px 10px #ccc;
}

  .subscription-expired h2 {
    margin-top: 0px !important;
  }

.host-annotation {
  position: absolute;
  right: 35px;
  text-align: right;
}

.tabhost .tabhost-summary {
  display: none;
}

.tabhost.active .tabhost-summary {
  display: block;
}

.tabhost .tabhost-title:after {
  content: "\25BA";
  float: right;
}

.tabhost.active .tabhost-title:after {
  content: "\25BC";
  float: right;
}

.tabhost .tabhost-summary {
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 5px 15px;
  font-size: 12px;
}

button.flat, a.flat, .btn.flat {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  border-radius: 0px !important;
}

.btn-default.flat {
  border: 1px solid #ddd;
  background: #f7f7f7;
  padding: 5px 15px;
}

  .btn-default.flat:hover {
    background: #d8d8d8;
  }

.panel-sub-links {
  overflow: hidden;
  text-overflow: ellipsis;
}

select.flat {
  border-radius: 0px;
  box-shadow: none;
  color: #888;
}

h2 .sub-head {
  font-size: 18px;
}

h4 .sub-head {
  font-size: 14px;
}

.site-wrap {
  min-width: 1200px;
}

.navbar {
  margin-bottom: 0px;
  position: relative;
  background: #fff;
}

.navbar-right.logged-in {
  background: #3399ff;
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 11px;
  padding-bottom: 11px;
  margin-right: 1px;
  padding-left: 10px;
  padding-right: 10px;
  margin-top: -1px;
  cursor: pointer;
}

  .navbar-right.logged-in img {
    margin-left: 10px;
  }

#logoutForm {
  position: relative;
}

.navbar-inverse .navbar-collapse, .navbar-inverse .navbar-form {
  box-shadow: none;
  background-color: none;
}

.navbar-inverse {
  background-color: none;
}

.account-menu-toggle {
  color: #fff !important;
}

.account-dropdown {
  position: absolute;
  right: 0;
  top: 64px;
  background: #fff;
  z-index: 9997;
  width: auto;
  white-space: nowrap;
  padding: 15px;
  max-width: 250px;
  text-overflow: ellipsis;
  overflow: hidden;
  border-left: 1px solid rgba(0,0,0,.2);
  border-right: 1px solid rgba(0,0,0,.2);
  border-bottom: 1px solid rgba(0,0,0,.2);
}

  .account-dropdown hr {
    margin-top: 7px;
    margin-bottom: 7px;
  }

.container {
  width: 1170px !important;
}

.navbar-nav {
  margin: 10.25px 0;
}

.nav > li > a {
  color: #56585a;
  font-size: 14px;
  padding: 10px;
  font-weight: 300;
}

  .nav > li > a:hover, .nav > li > a:focus {
    background-color: transparent;
  }

h1, h2, h3, h4 {
  font-weight: 300;
  font-family: roboto, sans-serif;
}

h5, .h5 {
  font-size: 16px;
  font-weight: 300;
}

table {
  margin-bottom: 10px;
}

  table td, table th {
    padding-right: 10px;
  }

/* Set padding to keep content from hitting the edges */
.body-content {
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
}

/* Override the default bootstrap behavior where horizontal description lists
   will truncate terms that are too long to fit in the left column
*/
.dl-horizontal dt {
  white-space: normal;
}

/* Set width on the form input elements since they're 100% wide by default */
input[type="text"],
input[type="date"],
input[type="number"],
select {
  width: 195px !important;
  padding-left: 5px !important;
}

.body-content h2 {
  font-weight: 300;
  margin-top: 40px;
  color: #999;
  font-size: 36px;
}

.body-content h4 {
  color: #999;
  font-size: 20px;
}

.page-title {
  margin-bottom: 20px;
  padding-bottom: 20px;
  font-weight: 300;
  margin-top: 40px;
  color: #999;
  font-size: 36px;
  border-bottom: 1px solid #f0f0f0;
}

select {
  padding: 8px;
  border: 1px solid #cccccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.form-horizontal .control-label {
  text-align: left;
  margin-left: 0px;
  padding-left: 0px;
}

.half textarea {
  max-width: 100%;
  width: 100%;
  resize: none;
  height: 300px;
}

.std .item {
  margin-left: 20px;
  margin-bottom: 5px;
}

.form-horizontal .form-group {
  margin-left: 0px;
  margin-right: 0px;
}


.actual-input {
  width: 100%;
}

.suggestion {
  border: 1px solid #f6f6f6;
  padding: 20px;
  border-radius: 5px;
  width: 100%;
  font-size: 12px;
  max-height: 350px;
  overflow-y: scroll;
  margin-top: 10px;
  display: none;
}

.person-add-form h5 {
  margin-top: 0px;
  border-bottom: 1px dashed #ccc;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.person-add-form table {
  width: 100%;
}

.person-table {
  max-height: 400px;
  margin-bottom: 10px;
  overflow-y: scroll;
}

.person-add-form th {
  padding-left: 10px;
  border-right: 1px solid #ccc;
}

.person-add-form td {
  padding-left: 10px;
  border-right: 1px solid #ccc;
}

  .person-add-form td:last-child, .person-add-form th:last-child {
    padding-left: 10px;
    border-right: 0px solid #ccc;
  }

.person-add-form tr:nth-child(even) {
  background: #e4f7ff;
}

.person-table::-webkit-scrollbar-track {
  background-color: #f0f0f0;
}

.person-table::-webkit-scrollbar {
  width: 5px;
  background-color: #F5F5F5;
}

.person-table::-webkit-scrollbar-thumb {
  border-radius: 50px;
  -webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
  background-color: #555;
}

#student-list {
  width: 100%;
  border: 1px solid #f1f1f1;
  background: #f9f9f9;
  padding: 20px;
  max-height: 200px;
  overflow-y: scroll;
  margin-top: 20px;
  margin-bottom: 20px;
}

  #student-list div {
    width: 25%;
    float: left;
    padding-top: 5px;
    padding-bottom: 5px;
  }

.slo-left {
  width: 420px;
  float: left;
  padding-left: 14px;
  padding-top: 15px;
}

.slo-right {
  width: 680px;
  float: right;
}

  .slo-right .stats {
    background: #f9f9f9;
    padding: 31px;
    border-radius: 5px;
    margin-left: 10px;
  }

    .slo-right .stats h4 {
      margin-top: 0px;
    }

    .slo-right .stats table {
      width: 100%;
      margin-top: 10px;
    }

.slo-left label {
  width: auto;
  float: left;
}

.slo-left .col-md-10 {
  width: auto;
  float: right;
}

.score-calcs table {
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 12px;
}

.score-calcs td, .score-calcs th {
  padding: 5px;
}

.section-head {
  width: 100%;
  padding: 15px;
  background: #b4b4b4;
  color: #fff;
}

.action-link {
  background: #0060d7;
  color: #fff !important;
  text-decoration: none !important;
  padding: 8px 12px;
  border-radius: 3px;
  margin-top: 5px;
  margin-bottom: 15px;
  display: inline-block;
}

.save-slo {
  padding: 8px 12px;
  margin-top: -2px;
  font-size: 14px;
  float: right;
}

.instruct {
  width: 100%;
  clear: both;
  font-size: 14px;
  padding-top: 5px;
  margin-bottom: 5px;
}

  .instruct b {
    display: block;
    margin-left: 10px;
  }

  .instruct ul {
    margin-top: 5px;
  }

.std-head {
  background: #942b2b;
  color: #fff;
  padding: 8px;
}

.std ol {
  padding-left: 15px;
}

  .std ol li {
    margin-left: 20px;
  }

.mce-notification {
  display: none !important;
}

.show-suggest {
  text-decoration: none !important;
  margin-top: 5px;
  display: inline-block;
}

.jumbotron {
  background-size: 100%;
  border-radius: 0px !important;
  background: #f2f2f2;
}

  .jumbotron h1 {
    font-weight: 400;
    font-size: 36px;
  }

.panel-heading .btn-success {
  color: #fff !important;
}

.panel-heading .btn-xs {
  text-decoration: none !important;
  margin-top: -2px;
  float: right;
}

p.lead {
  max-width: 400px;
}

.navbar-brand {
  color: #fff !important;
}

.notification-right a {
  background: green;
  color: #fff;
  padding: 10px 15px;
  border-radius: 3px;
  box-shadow: 0px 0px 5px #ccc;
  text-decoration: none;
}

.invite-warning {
  background: orange;
  color: #fff;
  padding: 15px;
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 10px;
}

  .invite-warning a {
    background: #fff;
    color: orange;
    padding: 5px 10px;
    display: inline-block;
    border-radius: 5px;
  }

.warning {
  background: red;
  color: #fff;
  padding: 15px;
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 10px;
}

  .warning input {
    margin-top: 10px;
    color: #555;
    background: #ddd;
    border: none;
    border-radius: 5px;
    padding: 10px 15px;
  }

.dboard .title a {
  color: #fff !important;
  text-decoration: none;
}

.dboard .item {
  height: 240px;
  background: #f1f1f1;
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  display: inline-block;
  margin: 0px 10px 20px 10px;
  margin-top: 0px;
}

  .dboard .item .inner {
    padding: 15px;
  }

.panel a.block-link {
  display: block;
  margin-top: 5px;
  margin-bottom: 5px;
  padding: 10px;
  border: 1px solid #eee;
  border-radius: 3px;
}

  .panel a.block-link:hover {
    text-decoration: none;
    background: #f8f8f8;
  }

.dboard .item.third {
  width: 366px;
  padding: 0px;
}

.dboard .item:first-child {
  margin-left: 0px;
}

.dboard .item:last-child {
  margin-right: 0px;
}

.dboard .item .title {
  background: #0060d7;
  color: #fff;
  padding: 10px 15px;
  font-size: 16px;
  font-weight: 300;
}

.empty-text {
  font-style: italic;
  font-size: 12px;
  color: #ccc;
}

.days-since {
  float: right;
  text-decoration: none;
  font-style: italic;
  color: #ccc !important;
}

.panel-sub-links {
  margin-left: 20px;
}

.third {
  width: 33%;
  padding: 15px;
  float: left;
}

.full {
  width: 100%;
  clear: both;
  padding-right: 15px;
}

.summary table {
  margin-top: 10px;
  width: 100%;
}

.inline-form-element {
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin-right: 5px;
}

.invite {
  background: #eee;
  padding: 15px;
  width: 600px;
  margin: 0 auto;
  margin-top: 20px;
  border-radius: 10px;
  text-align: center;
}

.accept {
  display: inline-block;
  color: #fff;
  padding: 10px 15px;
  font-size: 16px;
  background: #0bc10e;
  border-radius: 5px;
  border: 0px;
}

  .accept:hover {
    color: #fff;
    text-decoration: none;
    background: #888;
  }

.left {
  width: 50%;
  float: left;
}

.right {
  width: 50%;
  float: right;
}

.notification {
  border: 1px solid #ccc;
  margin-bottom: 10px;
  margin-top: 10px;
  padding: 10px;
  border-radius: 5px;
}

.notification-right {
  float: right;
}

.form-control {
  width: auto !important;
  height: auto !important;
}

.upload {
  border-top: 1px solid #f3f3f3;
  border-bottom: 1px solid #f3f3f3;
  padding: 15px;
}

.admins td, .admins th {
  padding: 5px 10px;
}

.submissionHistory {
  width: 210px;
  float: right;
  margin-top: -7px;
}

.slo-details .horizontal {
  width: 910px;
  float: left;
}

.status-bar {
  margin-bottom: 5px;
}

.time {
  font-size: 12px;
}

.status {
  background: #ccc;
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 8px;
  vertical-align: middle;
  margin-right: 5px;
}

.submission {
  padding: 8px;
  background: #f9f9f9;
  border: 1px solid #f0f0f0;
  margin-top: 10px;
  border-radius: 5px;
}


.slo-response {
  display: block;
  padding: 15px;
  margin-top: 10px;
  margin-bottom: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

  .slo-response .left {
    width: 200px;
  }

  .slo-response .right {
    width: 800px;
    float: left;
  }

  .slo-response textarea {
    border: 1px solid #ccc;
    border-radius: 5px;
    width: 900px;
    height: 100px;
    font-size: 14px;
    padding: 5px;
  }

  .slo-response .radio-group {
    font-size: 16px;
  }

.objective-statistics .rating td {
  padding: 3px 10px 3px 10px;
}

.objective-statistics .rating tr.current {
  background: #fefc9b;
}

.objective-statistics h5 {
  margin-top: 15px;
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 15px;
}

.tabs {
  margin-left: 1px;
  margin-top: 15px;
}

.tab {
  padding: 10px 15px;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
  border-right: 1px solid #ccc;
  display: inline-block;
  margin-left: -1px;
  background: #f9f9f9;
  color: #333;
}

  .tab:hover, .tab:focus {
    text-decoration: none !important;
    background: #fff;
    color: #555;
    cursor: pointer;
  }

  .tab .status {
    float: right;
    margin-left: 15px;
    margin-top: 3px;
  }

  .tab.active {
    background: #fff;
    border-bottom: 1px solid #fff;
  }

.received-slos {
  border: 1px solid #ccc;
  padding: 15px;
  margin-top: -1px;
}

tr.failed {
  background: #ffcdcd !important;
}

tr.exempt {
  background: #eeeeee !important;
  text-decoration: line-through;
}

tr.met {
  background: #c2ffc4 !important;
}

.red {
  color: #e4141d !important;
}

.green {
  color: #4eca4c !important;
}

.detailTrue {
  font-size: 25px;
  color: #4eca4c !important;
}

.detailFalse {
  font-size: 25px;
  color: #e4141d !important;
}

.detailPending {
  font-size: 25px;
  color: #6bb8e4 !important;
}

.detailExempt {
  font-size: 25px;
  color: #7f8a90 !important;
}

.standards {
  font-weight: bold;
}

.full-width-details .horizontal {
  width: 100% !important;
}

.full-width-settings .horizontal {
  padding-left: 15px;
  padding-bottom: 15px;
  width: 100% !important;
}

.pad15 {
  padding-left: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}

th[data-sort] {
  cursor: pointer;
}

span.arrow {
  width: 12px;
  margin-left: 6px;
  font-size: 12px;
  color: #bbb;
  display: inline-block;
}

.dataTables_filter input {
  border: 1px solid #ccc;
  padding: 5px 10px;
  border-radius: 5px;
}

  .dataTables_filter input:focus {
    border-radius: 5px;
  }

.dataTables_length select {
  padding: 5px;
  width: 70px !important;
  font-size: 14px;
}

.paginate_button {
  padding: 0.2em .4em !important;
}

.student-add-form {
  width: 900px;
  float: left;
  border-right: 1px solid #f1f1f1;
  padding-right: 25px;
}

.current-students {
  width: 200px;
  float: right;
}

  .current-students .student {
    padding: 5px 10px;
    padding-top: 7px;
    border-bottom: 1px solid #f7f7f7;
  }

    .current-students .student:last-child {
      border-bottom: 0px;
    }

    .current-students .student .remove {
      background: #ff8e8e;
      color: #fff;
      float: right;
      padding-left: 4px;
      padding-right: 4px;
      border-radius: 3px;
      vertical-align: middle;
      display: inline-block;
      margin-top: -3px;
      cursor: pointer;
    }

    .current-students .student:hover > .remove {
      visibility: visible;
    }

  .current-students .list {
    margin-bottom: 10px;
  }

.standards-list .standard {
  margin-bottom: 5px;
}

  .standards-list .standard .grades {
    font-size: 12px;
    font-weight: bold;
  }

.jurisdiction {
  font-size: 14px;
  font-weight: bold;
}

.jurisdiction {
  font-weight: bold;
}

.subject {
  font-weight: bold;
}

.grades {
  font-weight: bold;
}

.standards {
  font-weight: bold;
}

.subject {
  font-weight: bold;
}

.grades {
  font-weight: bold;
}

.standards-list .standard .description {
  font-size: 12px;
  vertical-align: middle;
  font-weight: bold;
}

.standards-list .standard .statementNotation {
  font-size: 12px;
  vertical-align: middle;
  color: #bbb;
  font-style: italic;
  font-weight: bold;
}

select {
  background-color: #fff !important;
}

.error-heading {
  color: #bd0000 !important;
}

.levels {
  padding-left: 15px;
}

  .levels .level {
    padding-bottom: 5px;
  }

div, tr {
  page-break-inside: avoid !important;
}

.current-editor {
  font-size: 14px;
  text-align: center;
}

.take-over-control {
  background: #00a1f3;
  color: #fff;
  display: inline-block;
  padding: 5px 10px;
  margin-left: 40px;
}

.lightbox {
  display: none;
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100% !important;
  height: 100%;
  background: rgba(0,0,0,.8);
  z-index: 9999;
}

  .lightbox .inner {
    position: absolute;
    left: 50%;
    top: 50%;
    background: #fff;
    padding: 15px;
    transform: translate(-50%,-50%);
    max-height: 100%;
    overflow-y: auto;
    z-index: 9999;
  }

img.remove-im-score {
  width: 15px;
  margin-left: 3px;
  margin-top: -3px;
  opacity: .4;
  cursor: pointer;
}

  img.remove-im-score:hover {
    opacity: .9;
  }

span.name.limited {
  max-width: 240px;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: -7px;
}

table.scores input[type=number] {
  width: 60px !important;
}

.progress-tabs table {
  border: 1px solid #ccc;
  margin-top: -1px;
}

.progress-tab-link {
  display: inline-block;
  padding: 5px 10px;
  cursor: pointer;
  border: 1px solid #ccc;
}

  .progress-tab-link.active {
    background: #f9f9f9;
    border-bottom: 1px solid #f9f9f9;
  }

.hasPersonalLicense {
  background: #00f100;
}

input[type="checkbox"].hasPersonalLicense {
  padding-right: 0px;
  width: 16px;
}

.timeline-node.timeline-text-truncate:after {
  font-size: 14px !important;
}

.timeline-node {
  height: auto !important;
  font-size: 14px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  padding-left: 10px !important;
}

::-webkit-scrollbar {
  width: 12px; /* for vertical scrollbars */
  height: 12px; /* for horizontal scrollbars */
}

::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.1);
}

::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.5);
}

.lightbox-form {
  display: none;
  min-width: 400px;
}

  .lightbox-form .col-md-10 {
    width: 200px;
  }

  .lightbox-form .col-md-2 {
    width: 160px;
  }

  .lightbox-form textarea {
    width: 195px;
    border: 1px solid #ddd;
    -webkit-box-shadow: none;
    box-shadow: none;
  }

  .lightbox-form input[type="submit"] {
    float: right;
  }

.featherlight {
  z-index: 4000 !important;
}

  .featherlight .add-log-form {
    display: block !important;
  }


.lightbox-form .minicolors-theme-default .minicolors-swatch {
  top: -5px !important;
  left: 0px !important;
  width: 30px !important;
  height: 30px !important;
}

.lightbox-form .minicolors-position-top .minicolors-panel {
  top: -158px;
}

.week .day {
  min-height: 150px;
  float: left;
  margin-left: 5px;
  margin-right: 5px;
  border-radius: 5px;
  position: relative;
  padding-bottom: 60px;
  background: #fff;
}

.multiple-class-day {
  width: 224px;
  float: left;
  margin-left: 2px;
  margin-right: 2px;
  border-radius: 0px;
  position: relative;
  padding-bottom: 10px;
  background: #f7f7f7;
}

  .multiple-class-day .multi-plan-date {
    text-align: center;
    padding: 5px;
    font-size: 14px;
    font-weight: bold;
  }

.day .section {
  background: #fff;
  position: relative;
  word-wrap: break-word;
}

.day .popover {
  width: 300px;
}

.popover-content {
  cursor: text;
}

.day .section .draghandle {
  height: 100%;
  width: 8px;
  cursor: pointer;
  left: 0px;
  top: 0px;
  background: #ccc;
  display: none;
  position: absolute;
}

.day .section:hover .draghandle {
  display: block;
}

.day .sections .section {
  padding-top: 5px;
  padding-bottom: 5px;
  position: relative;
}

.day input {
  background: none;
  padding-left: 0px !important;
  padding-right: 0px;
}

.day div.plan-topic {
  box-shadow: none;
  -webkit-box-shadow: none;
  font-size: 18px;
  font-weight: bold;
  color: #777474;
  padding-top: 4px;
  padding-bottom: 4px;
  line-height: 1.3;
}

.day input:focus, .day textarea:focus {
  outline: none;
}

.public-section p {
  margin-bottom: 0px;
}

.day div.title {
  font-size: 16px;
  font-weight: bold;
  color: #777474;
  clear: both;
  width: 100%;
  border-bottom: 1px solid #eaeaea;
  padding-top: 4px;
  padding-bottom: 4px;
  line-height: 1.3;
}

.day a.action {
  color: #fff;
  text-transform: uppercase;
  padding: 5px;
  padding-left: 8px;
  padding-right: 8px;
  background: #3399ff;
  margin-bottom: 5px;
  margin-top: 8px;
  font-size: 10px;
  display: inline-block;
}

.day textarea {
  border: 0px !important;
  width: 100% !important;
  margin-top: 5px;
  background: none;
  overflow-y: hidden;
  resize: none;
  box-shadow: none;
  -webkit-box-shadow: none;
  line-height: 20px;
  font-size: 14px;
}

img.options {
  vertical-align: middle;
  float: right;
  width: 23px;
  margin-right: -5px;
  cursor: pointer;
}


.options-menu-wrap {
  position: absolute;
  right: 0px;
  top: 33px;
  z-index: 3000;
}

.section-menu {
  float: right;
}

.options-menu {
  display: none;
  padding: 5px;
  background: rgba(0,0,0,.4);
  margin-bottom: 0px;
}

  .options-menu li {
    list-style-type: none;
    padding-left: 5px;
    padding-right: 5px;
    cursor: pointer;
    font-size: 12px;
  }

    .options-menu li ul, .week-menu li ul, .day-menu li ul {
      margin-left: 5px;
      padding-left: 0px;
    }

.options-toggle {
  padding: 5px 17px;
}

  .options-toggle.active, .options-toggle:hover {
    background: rgba(0,0,0,.4);
  }

.ui-dialog {
  z-index: 20001 !important;
}

.day .date {
  padding: 5px 15px 5px 15px;
  background: #3399ff;
  color: #fff;
  margin-bottom: 10px;
  position: relative;
  word-break: break-all;
}

.section {
  padding-left: 15px;
  padding-right: 15px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

  .section:hover {
    border-top: 1px solid #f1f1f1;
    border-bottom: 1px solid #f1f1f1;
  }

  .section .toolbar {
    display: none;
  }

    .section .toolbar img#add-edit {
      margin-right: 2px;
      margin-left: 2px;
    }

  .section:hover .toolbar {
    display: inline;
    position: absolute;
    z-index: 1200;
    top: 0;
    right: 0px;
    background: #ccc;
    padding-top: 5px;
    padding-bottom: 6px;
    padding-left: 3px;
    padding-right: 2px;
  }

  .section .toolBarOptions {
    display: none;
    display: none;
    background: #ccc;
    padding-top: 7px;
    padding-left: 3px;
    padding-right: 2px;
  }

.toolbar:hover .toolBarOptions {
  display: inline;
}



.toolbar .icon {
  display: inline-block;
  width: 18px;
  height: 18px;
  background-size: 100% !important;
  cursor: pointer;
  margin-left: 2px;
  margin-right: 2px;
}

  .toolbar .icon:hover {
    opacity: 0.4;
  }

.visible-note .icon {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-size: 100% !important;
  vertical-align: middle;
  opacity: .6;
}

.visible-note {
  font-size: 12px;
  text-align: center;
}

.week-menu li a, .options-menu li a, .day-menu li a {
  color: #fff;
  text-decoration: none;
  display: block;
}

.sub-head .options {
  font-size: 14px !important;
  font-style: normal;
  color: #555;
  position: relative;
  top: -5px;
  left: 5px;
}

  .sub-head .options select {
    font-size: 14px !important;
    padding: 5px;
  }

  .sub-head .options #academicYear {
    width: 100px !important;
  }

.icon {
}

  .icon.dots {
    height: 14px;
    width: 14px;
  }

  .icon.minimize {
    height: 18px;
    width: 18px;
  }

.table.table-columns td {
  border-top: 0px;
  border-bottom: 0px;
  border-left: 1px solid #ccc;
}

  .table.table-columns td input.timepicker {
    width: 100px !important;
  }

.day .lightbox input[type=text], .mondayDatePicker {
  margin: 5px !important;
  border: 0px solid #ccc !important;
  border-bottom: 1px solid #ccc !important;
  box-shadow: none !important;
}

.section-content.minimized {
  display: none;
}


.icon.web {
  background: url(/Images/public_black.png);
}

a.add-section {
  display: block;
  position: absolute;
  bottom: 0px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  color: #2196F3;
  background: #fff;
  width: 100%;
}

  a.add-section:hover, ul.options-menu ul li:hover, ul.week-menu ul li:hover, ul.day-menu ul li:hover {
    background: rgba(255,255,255,.2);
  }

span.section-header {
  display: block;
  font-size: 14px;
}

a.add-section:focus {
  text-decoration: none !important;
}

.plan-date {
  width: 100%;
  font-size: 26px;
  text-align: center;
  margin-bottom: 20px;
}

.circle-plus {
  border: 2px solid #2196F3;
  border-radius: 100px;
  padding: 0px 6px 0px 6px;
  color: #2196F3;
  margin-right: 5px;
}

.col-tl-3 {
  width: 25%;
  float: left;
}

.add-section:hover {
  text-decoration: none;
}

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
  color: #b7b7b7;
}

.bill-info {
  width: 500px;
  float: right;
  clear: both;
  margin-top: 10px;
}

.btn-semiprime {
  background-color: #23669a;
  color: #fff !important;
}

  .btn-semiprime:hover {
    background-color: #46759a;
    color: #fff;
  }

.btn-primary.small {
  font-size: 12px;
  padding-top: 2px;
  padding-bottom: 2px;
  margin-top: -4px;
  margin-left: 3px;
}

:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  color: #b7b7b7;
  opacity: 1;
}

::-moz-placeholder { /* Mozilla Firefox 19+ */
  color: #b7b7b7;
  opacity: 1;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #b7b7b7;
}

::-ms-input-placeholder { /* Microsoft Edge */
  color: #b7b7b7;
}

.ui-dialog .ui-dialog-titlebar-close {
  position: absolute;
  right: .3em;
  top: 50%;
  width: 20px;
  margin: -10px 0 0 0;
  padding: 1px;
  height: 20px;
  line-height: 16px;
}

  .ui-dialog .ui-dialog-titlebar-close:before {
    content: 'X';
  }

.file-list {
  width: 100%;
}

  .file-list a.file-dl {
    color: #999 !important;
  }

  .file-list tr, .file-list th {
    border-bottom: 1px solid #f8f8f8;
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 14px;
    font-weight: 300;
  }

  .file-list td {
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .file-list td, .file-list th {
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
  }

    .file-list td.title img {
      opacity: .5;
      padding-right: 10px;
    }

  .file-list tr:hover {
    text-decoration: none;
    cursor: pointer;
    background: #f8f8f8;
  }

  .file-list td.check, .file-list th.check {
    width: 35px;
    padding-left: 10px;
    padding-right: 0px;
  }

a.file-options {
  display: block;
  width: 100%;
  text-align: center;
}

  a.file-options img {
    opacity: .6;
  }

.detach-file-btn {
  display: none;
  cursor: pointer;
  position: absolute;
  right: 8px;
  top: 0px;
}

.attachment {
  padding-left: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 20px;
  position: relative;
}

  .attachment a {
    text-decoration: none;
  }

  .attachment:hover {
    background: #eee;
  }

    .attachment:hover .detach-file-btn {
      display: inline;
    }

.file-menu {
  position: absolute;
  left: 50%;
  margin-left: -33px;
  top: 40px;
  background: #fff;
  z-index: 9999;
  padding-left: 0px;
  border: 1px solid #f1f1f1;
}

  .file-menu li {
    list-style-type: none;
    border-bottom: 1px solid #f4f4f4;
    padding: 2px 10px;
    font-size: 12px;
  }

.folder-browser {
  height: 120px;
  overflow-y: scroll;
  background: #f1f1f1;
  margin-bottom: 10px;
  margin-top: 10px;
  padding: 10px;
}

  .folder-browser .folder {
    cursor: pointer;
    padding: 3px;
  }

    .folder-browser .folder:hover {
      background: #888;
      color: #fff;
    }

    .folder-browser .folder.selected {
      color: #fff;
      background: #5e7aff;
    }

.featherlight .finder {
  display: block !important;
}

.file-menu li:hover {
  background: #f4f4f4;
}

.file-menu li:last-child {
  border-bottom: 0px;
}

.pmt-source {
  width: 500px;
  padding: 20px;
  background: #f8f8f8;
  border-radius: 10px;
  margin-bottom: 7px;
}

div#card-element {
  width: 400px;
  background: #efefef;
  padding: 10px;
}

.file-list tr input[type=checkbox] {
  display: none;
}

  .file-list tr input[type=checkbox]:checked {
    display: block;
  }

.file-list tr:hover input[type=checkbox] {
  display: block;
}

.calendarDatePickerTrigger {
  width: 26px;
  opacity: .4;
  margin-top: -5px;
  margin-left: 10px;
  cursor: pointer;
}

.day .standard-section {
  padding: 0px !important;
  position: relative;
  height: 25px;
  border-bottom: 1px solid #f0f0f0;
}

  .day .standard-section .inner {
    padding: 3px;
  }

  .day .standard-section .description {
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
  }

.standards-finder-lightbox.lightbox-form.featherlight-inner {
  width: 700px;
}

.day.full input, .day.full textarea {
  width: 100% !important;
}

.single-day .multiple-class-day {
  width: 85%;
  margin: 0 auto;
  float: none;
}

.day .standard-section:hover {
  cursor: pointer;
}

.day.off .date {
  background: #ccc !important;
}

.day.off .options-menu, .day.off .options-toggle.active, .day.off .options-toggle:hover {
  background: #666 !important;
}

.day .standard-section:hover .description {
}

.day .standard-section:hover .inner, .day .standard-section .inner:hover {
  -webkit-box-shadow: 0 0 5px #888;
  box-shadow: 0 0 5px #888;
}

img.week-menu-toggle {
  width: 24px;
  margin-top: -4px;
  margin-left: 10px;
  background: #b6b7b2;
  padding: 2px;
  cursor: pointer;
}

img.day-menu-toggle {
  position: absolute;
  width: 19px;
  right: 19px;
  padding: 2px;
  top: 8px;
  cursor: pointer;
  opacity: .6
}

.plan-date .dates {
  padding-left: 60px;
  display: inline;
  position: relative;
}

.plan-type-menu {
  background: #eaeaea;
  float: right;
  padding-left: 0px;
  margin-top: 40px;
}

  .plan-type-menu li {
    float: left;
    border: 1px solid #ccc;
    list-style-type: none;
    margin-left: -1px;
  }

    .plan-type-menu li a {
      color: #919292;
      display: block;
      font-size: 16px;
      background: #eaeaea;
      padding: 5px 25px;
      cursor: pointer;
      text-decoration: none;
    }

    .plan-type-menu li.active a, .plan-type-menu li:hover a {
      -moz-box-shadow: inset 0 0 5px #bbb;
      -webkit-box-shadow: inset 0 0 5px #bbb;
      box-shadow: inset 0 0 5px #bbb;
    }

.full.day {
  width: 80%;
  margin: 0 auto;
  position: relative;
  min-height: 250px;
  padding-right: 0px;
  padding-bottom: 60px;
  background: #fff;
}

.multiple-class-day ul.day-menu {
  position: absolute;
  right: 0px;
  top: 28px;
  z-index: 3300;
  background: #696969;
  padding: 5px;
  color: #fff;
  display: none;
  font-weight: 400;
}

  .multiple-class-day ul.day-menu li {
    list-style-type: none;
    font-size: 12px;
    cursor: pointer;
    padding: 4px;
    text-align: left;
  }

.plan-date .dates ul.week-menu {
  position: absolute;
  right: 0px;
  top: 28px;
  z-index: 3300;
  background: #b6b7b2;
  padding: 5px;
  color: #fff;
  display: none;
}

  .plan-date .dates ul.week-menu li {
    list-style-type: none;
    font-size: 12px;
    cursor: pointer;
    padding: 4px;
    text-align: left;
  }

.week-menu a:hover {
  text-decoration: none;
}

.plan-date a.prev-week {
  float: left;
}

.plan-date a.next-week {
  float: right;
}

.plan-date .date-shift {
  background: #b6b7b2;
  padding: 5px 10px;
  text-decoration: none;
  font-size: 14px;
  color: #fff;
}

img.day-menu-toggle:hover {
  opacity: .8;
}


img.week-menu-toggle:hover, .plan-date .date-shift:hover {
  background: #b6b7b2;
}

.public-wrap {
  background: #f8f8f8;
  padding-bottom: 100px;
}

  .public-wrap .container {
    background: #fff;
    padding-bottom: 30px;
  }

.public-section {
  padding-left: 10px;
  padding-right: 10px;
  padding-bottom: 0px;
}

  .public-section .title {
    font-weight: bold;
    font-size: 16px;
    color: #ff584c;
    border-bottom: 1px solid #ddd;
    padding-bottom: 5px;
    margin-bottom: 5px;
  }


.public-wrap .topic {
  font-size: 16px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #ddd;
}

.public-wrap .topic-section {
  margin-top: 20px;
}

.mce-tinymce-inline {
  position: fixed !important;
  top: 10px !important;
  left: 0 !important;
  right: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 1140px !important;
  background: none !important;
  background-color: transparent !important;
  border: 0px !important;
  box-shadow: none !important;
}

.observation-table td, .observation-table th {
  width: 20%;
  font-size: 12px;
}

.observation-submission .observation-table input[type="radio"] {
  cursor: default;
}

.total-score {
  width: 100%;
  padding: 5px;
  border: 1px solid #ccc;
  margin-top: 12px;
  margin-bottom: 12px;
  padding-left: 15px;
}

table.final-eval td {
  width: 25%;
}

.div-texarea {
  min-height: 150px;
  border: 1px solid #ccc;
}

.mce-tinymce-inline .mce-abs-layout:nth-child(1) {
  background-color: #fff !important;
  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  border: 1px solid #ccc;
}

.mce-edit-focus {
  outline: 0px !important;
}

.observation-table tr:nth-child(1) th {
  border-top: 0px;
}

.content-editor.empty:before {
  content: attr(data-placeholder);
  color: #b3b3b3;
  cursor: text;
  float: left;
  clear: left;
  pointer-events: none;
}

.content-editor.empty:focus:before {
  display: none;
}

.expandable-text {
  min-height: 20px;
  padding-top: 5px;
  font-size: 14px;
  position: relative;
  line-height: 1.3;
}

.preload {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
  display: none;
}

.expandable-text ul {
  padding-left: 22px;
}

.mce-content-body, .expandable-text {
  margin-top: 0px !important;
}

  .mce-content-body p, .expandable-text p {
    margin-bottom: 0px;
  }

.table-cell-vertical > tbody > tr > td {
  vertical-align: middle;
  font-size: 14px;
}

.table-cell-vertical textarea {
  background-color: transparent;
}

.discipline-referral {
  font-size: 16px;
}

.right-menu-buttons {
  text-align: right;
  display: inline-block;
  float: right;
}

  .right-menu-buttons .btn {
    margin-left: 15px;
  }

.mce-inline {
  min-height: 150px;
  font-size: 14px;
  padding: 15px;
  margin-bottom: 15px;
}

label.full-width-label {
  font-size: 16px;
  padding-bottom: 5px;
}

.action-title {
  margin-top: 30px;
}

  .action-title .title {
    width: 50%;
    float: left;
  }

  .action-title h2 {
    margin-top: 0px;
  }


.submittable-form {
  width: 870px;
  float: left;
}

#addReferralModalBody {
  padding-top: 20px !important;
}

  #addReferralModalBody .col-md-8 .submittable-form {
    width: 100% !important;
    float: none !important;
  }

#referralViewOnlyContent {
  padding-top: 20px !important;
}

  #referralViewOnlyContent .col-md-8 .submittable-form {
    width: 100% !important;
    float: none !important;
  }

.mce-display {
  line-height: 1.3;
}

  .mce-display p {
    margin-bottom: 0px;
  }

.submission.full {
  padding: 15px;
  padding-top: 5px;
}

  .submission.full hr {
    margin-top: 5px;
    margin-bottom: 5px;
  }

.slo-response .mce-inline {
  min-height: 90px;
  border-radius: 5px;
  padding: 10px 15px;
  border: 1px solid #ccc;
}

.evaluation-header table {
}

.evaluation-header .action-title {
  margin-top: 15px;
}

.evaluation-header table tr:nth-child(1) {
  background: aliceblue;
  box-shadow: 0px 0px 3px #ccc;
  color: #868686;
}

.evaluation-form {
  padding: 15px;
  padding-top: 0px;
}

.discipline-form {
  padding: 15px;
  padding-top: 0px;
}

.evaluation-header table tr:nth-child(1) a {
  color: #868686;
  padding: 5px;
  border: 1px solid #e5f7fb;
  border-radius: 3px;
  background: #ffffff;
  text-decoration: none;
}

.evaluation-header table tr:nth-child(1) td {
  text-align: center;
}

.evaluation-header table td {
}

.evaluation-header table tr:nth-child(2) td {
  border-top: 0px;
  padding: 15px;
}

.check-table {
  width: 100%;
}

.disabled-form input[type="checkbox"], .disabled-form input[type="radio"] {
  cursor: default !important;
}

.check-table td {
  width: 33.333%;
  padding-top: 3px;
  vertical-align: top;
  padding-right: 15px;
}

.eval-status {
  display: inline-block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  background-image: url(/Images/plus.png);
  background-color: #ccc;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50%;
}

.scroll-plan {
  height: 150px;
  overflow-y: scroll;
  overflow-x: hidden;
}

.eval-item .tooltip.in {
  opacity: 1;
  filter: alpha(opacity=1);
}

.eval-status.waiting {
  background-image: url(/Images/supervisor.png);
}

.status.Pending {
  background: #ffc300;
}

.status.Initial-Approved {
  background: #1cfff1;
}

.status.Final-Approved {
  background: #1ab103;
}

.status.Needs-Revision {
  background: #e40000;
}

.eval-status.Final-Approved {
  background-image: url(/Images/check_white.png);
  background-color: #1ab103;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50%;
}

.eval-status.Pending {
  background-image: url(/Images/check_white.png);
  background-color: #ffc300;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50%;
}

.eval-status.Initial-Approved {
  background-image: url(/Images/check_white.png);
  background-color: #1cfff1;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50%;
}

.eval-status.Needs-Revision {
  background: #1ab103 url(/Images/x.png) no-repeat;
  background-color: #e40000;
  background-repeat: no-repeat;
  background-size: 60%;
  background-position: 50% 50%;
}

.eval-items {
  position: relative;
  display: table;
  padding-bottom: 30px;
  min-width: 100%;
}

.eval-item-title {
  height: 46px;
}

.eval-item {
  white-space: normal;
  display: inline-block;
  text-align: center;
  height: 250px;
  min-width: 95px;
  position: relative;
}

  .eval-item .tooltip-inner {
    overflow: hidden;
  }

  .eval-item.restricted .eval-status {
    background-color: #ff9d6e
  }

.eval-template {
  white-space: nowrap;
  overflow-x: auto;
  overflow-y: visible;
}

.eval-item .inner {
  width: 100%;
}

.eval-item.admin .inner {
  position: absolute;
  bottom: 0;
}

.eval-item .eval-item-title {
  position: relative;
  width: 80%;
  margin: 0 auto;
  word-break: break-word;
}

.eval-item-title .text {
  display: block;
  width: 100%;
}

.eval-item.teacher .eval-item-title .text {
  position: absolute;
  bottom: 5px;
}

.eval-item.teacher .inner {
  position: absolute;
  top: 0;
}

.eval-progress-bar {
  width: 100%;
  background: #ccc;
  border-radius: 5px;
  height: 6px;
  position: absolute;
  top: 50%;
  margin-top: -23px;
}

.bar-inner {
  width: 0%;
  background: #1ab103;
  border-radius: 5px;
  height: 6px;
}

.form-items-menu {
  width: 20%;
  float: left;
}

.form-preview {
  width: 79%;
  padding-left: 1%;
  float: right;
}

.add-edit-form {
  background: #FFF;
  box-shadow: 0px 0px 10px #ccc;
  width: 400px;
  padding: 20px;
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 1050;
}

  .add-edit-form .field {
    margin-bottom: 5px;
  }

  .add-edit-form label {
    width: 140px;
  }

  .add-edit-form input[type="submit"], .add-edit-form button.cancel {
    float: right;
    margin-left: 10px;
  }

.featherlight {
  background: rgba(0, 0, 0, 0.8) !important;
}

.tl-field {
  margin-bottom: 25px;
  position: relative;
  background: #fff;
  padding-left: 2px;
  padding-right: 2px;
}

.bootstrap-datetimepicker-widget {
}

.tl-label {
  min-width: 200px;
}

.tl-label-upload {
  font-size: 18px;
  margin-bottom: 10px;
}

.add-edit-form .options {
  max-height: 119px;
  overflow-y: auto;
}

img.clickable-action {
  max-height: 20px;
  margin-right: 5px;
  cursor: pointer;
  opacity: .6;
}

  img.clickable-action:hover {
    opacity: 1;
  }

.options-hub {
  background: #ccc;
  position: absolute;
  right: 2px;
  top: 0;
  padding: 5px;
}

  .options-hub img {
    max-height: 16px;
    max-width: 20px;
  }

  .options-hub a {
    margin-left: 5px;
    margin-right: 5px;
  }

.edit-wrap {
  padding: 10px;
  border: 1px solid #ccc;
}

  .edit-wrap.ex-section {
    background: #d8f2ff;
  }



/*------------ Toggle Switch ----------------*/

.onoffswitch {
  position: relative;
  width: 40px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.onoffswitch-checkbox {
  display: none;
}

.onoffswitch-label {
  display: block;
  overflow: hidden;
  cursor: pointer;
  height: 18px;
  padding: 0;
  line-height: 18px;
  border: 2px solid #999999;
  border-radius: 18px;
  background-color: #EEEEEE;
  transition: background-color 0.3s ease-in;
  margin-bottom: 3px;
}

  .onoffswitch-label:before {
    content: "";
    display: block;
    width: 18px;
    margin: 0px;
    background: #FFFFFF;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 23px;
    border: 2px solid #999999;
    border-radius: 18px;
    transition: all 0.3s ease-in 0s;
  }

.onoffswitch-checkbox:checked + .onoffswitch-label {
  background-color: #B9CC14;
}

  .onoffswitch-checkbox:checked + .onoffswitch-label, .onoffswitch-checkbox:checked + .onoffswitch-label:before {
    border-color: #B9CC14;
  }

    .onoffswitch-checkbox:checked + .onoffswitch-label:before {
      right: 0px;
    }

.required-fields {
  border-top: 1px solid #ff5454;
  border-bottom: 1px solid #ff5454;
  margin-bottom: 20px;
}

  .required-fields h5 {
    color: red;
  }


.tt-menu {
  background: #fff;
  width: 195px;
  margin-top: 3px;
  border: 1px solid #ccc;
}

.tt-suggestion {
  padding: 5px;
  cursor: pointer;
}

  .tt-suggestion:hover {
    background: #e0f0ff;
    cursor: pointer;
  }

  .tt-suggestion:nth-child(n+2) {
    border-top: 1px solid #eee;
  }

span.stid {
  position: absolute;
  left: 210px;
  top: 30px;
  font-size: 12px;
  color: #aaa;
  font-style: italic;
}

.validation-errors {
  width: 100%;
  padding: 5px;
  text-align: center;
  background: #ff8080;
  color: #fff;
  margin-bottom: 25px;
}

tr.form.default {
  background: #daffda;
}

span.default {
  display: inline-block;
  padding: 7px;
  background: #daffda;
}

#ui-datepicker-div {
  z-index: 9999 !important;
}



.bootstrap-datetimepicker-widget table td.old, .bootstrap-datetimepicker-widget table td.new {
  color: #ccc !important;
}

.choose-template {
  width: 500px;
  margin: 0 auto;
  margin-top: 20px;
  text-align: center;
  padding: 15px;
  box-shadow: 0px 0px 5px;
  padding-bottom: 50px;
  margin-bottom: 30px;
  background-color: white;
}

.quick-stats-table th, .quick-stats-table td {
  text-align: center;
}

input[type="radio"]:disabled:checked:before, .radio input[type="radio"]:disabled:checked:before, .radio-inline input[type="radio"]:disabled:checked:before {
  background-color: #111;
}

input[type="radio"]:disabled:after, .radio input[type="radio"]:disabled:after, .radio-inline input[type="radio"]:disabled:after, input[type="radio"]:disabled:checked:after, .radio input[type="radio"]:disabled:checked:after, .radio-inline input[type="radio"]:disabled:checked:after {
  border-color: #111;
}

div[data-type="SLO_SCORES"] table th, div[data-type="SLO_SCORES"] table td,
div[data-type="WEIGHTED_SCORES"] table th, div[data-type="WEIGHTED_SCORES"] table td {
  width: 28%;
}

  div[data-type="SLO_SCORES"] table th:last-child, div[data-type="SLO_SCORES"] table td:last-child,
  div[data-type="WEIGHTED_SCORES"] table th:last-child, div[data-type="WEIGHTED_SCORES"] table td:last-child {
    width: 16%;
  }

input[type="checkbox"]:disabled:checked:after, .checkbox input[type="checkbox"]:disabled:checked:after, .checkbox-inline input[type="checkbox"]:disabled:checked:after {
  background-color: #000;
}

textarea[disabled], textarea.form-control[disabled], input.form-control[disabled], input[type=text][disabled], input[type=password][disabled], input[type=email][disabled], input[type=number][disabled], [type=text].form-control[disabled], [type=password].form-control[disabled], [type=email].form-control[disabled], [type=tel].form-control[disabled], [contenteditable].form-control[disabled], textarea[readonly], textarea.form-control[readonly], input.form-control[readonly], input[type=text][readonly], input[type=password][readonly], input[type=email][readonly], input[type=number][readonly], [type=text].form-control[readonly], [type=password].form-control[readonly], [type=email].form-control[readonly], [type=tel].form-control[readonly], [contenteditable].form-control[readonly] {
  background: #f8f8f8;
}

table.weighted-score .total {
  background: #eeffd3;
}

table.weighted-score tbody > tr > td {
  border-top: 0px;
}

table.weighted-score tbody > tr > th {
  border-bottom: 1px solid #ddd;
}

.public-links {
  font-size: 17px;
  height: 40px;
  clear: both;
}

  .public-links span {
    padding-top: 4px;
    width: 280px;
    float: left;
  }

  .public-links .onoffswitch-container {
    float: left;
    margin: 9px;
  }

.public-links-default {
  display: none;
}

.public-links-prior {
  display: none;
}

.public-links-all {
  display: none;
}

.public-links-featherlight {
  width: 400px;
}

  .public-links-featherlight h5 {
    font-weight: bold;
  }

  .public-links-featherlight input {
    width: 100% !important;
  }

.last-saved-time-italic {
  padding-right: 20px;
  border-right: 1px solid #CCC;
  margin-right: 15px;
  font-style: italic;
}

.bootstrap-tagsinput {
  background-color: #fff !important;
  border: 0px !important;
  border-bottom: 1px solid #ddd !important;
  border-radius: 0px !important;
  box-shadow: none !important;
  padding: 0px !important;
}

  .bootstrap-tagsinput .tag {
    margin-right: 2px;
    color: white;
    font-size: 11px;
    font-weight: normal;
  }

.email-validation {
  position: absolute;
  left: 210px;
  top: 33px;
  font-size: 12px;
  font-style: italic;
  color: #ffaaaa;
}

.referral-table td:nth-child(5) {
  max-width: 200px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

input.loading {
  background-color: #ffffff;
  background-image: url("/images/load.gif");
  background-size: 15px 15px;
  background-position: 98% 50%;
  background-repeat: no-repeat;
}

.evaluation-header #academicYear {
  padding: 0;
  width: 120px !important;
  font-size: 12px;
}

.copy-cut-dialog {
  padding: 10px;
  float: left;
}

.planbooks-remove-standard {
  display: block;
  float: right;
  text-align: center;
  width: 20px;
  background-color: #ddd;
  border: 1px solid #aaa;
  margin: -3px 10px;
  padding: 2px 0px;
}

  .planbooks-remove-standard:hover {
    background-color: #ac3f3f;
    color: #fff;
  }

.easy-compliance {
  height: 400px;
  position: relative;
}

.standard-section .popover-title {
  padding: 8px 0px 8px 14px;
}

.landing-text {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 500px;
  z-index: 5;
}

.home-slider {
  position: relative;
  top: 0;
  right: 0;
  height: 100%;
}

  .home-slider li {
    list-style-type: none;
  }

.slide img {
  width: 100%;
}

.home-slider .slide {
  width: 760px;
  float: right;
  position: absolute;
  right: 0;
  bottom: -9px;
  z-index: 10;
}

.all-features {
  background-color: #f0f3f6;
  height: 500px;
  position: relative;
  padding: 50px 0;
}

.feature {
  width: 33%;
  float: left;
  text-align: center;
}

.info {
  margin: 10px 20px;
}

.feature img {
  width: 150px;
}

.why-teachlink {
  height: 400px;
  margin-top: 60px;
}

  .why-teachlink .left {
    width: 500px;
    float: left;
  }

  .why-teachlink .right {
    width: 560px;
    float: right;
  }

.blue-banner {
  position: absolute;
  top: 0;
  left: -500px;
  right: -500px;
  bottom: 0;
  background-color: #f0f3f6;
  padding-top: 40px;
}

.free-demo {
  font-weight: bold;
  padding: 10px 0;
}

.number {
  font-weight: normal;
  color: #97a60a;
}

.features-trial {
  margin: 10px 0;
}

.btn-bl-wh, .btn-wh-bl:hover {
  padding: 5px 20px;
  color: #fff !important;
  background-color: #62b3e1;
  border: 0;
  border: 2px solid #62b3e1;
  display: inline-block;
  text-decoration: none;
}

  .btn-wh-bl, .btn-bl-wh:hover {
    padding: 5px 20px;
    color: #62b3e1 !important;
    background-color: #fff;
    border: 2px solid #62b3e1;
    display: inline-block;
    text-decoration: none;
  }

.btn-wh-gr, btn-gr-wh:hover {
  padding: 5px 20px;
  color: #c9d0d5;
  background-color: #fff;
  border: 2px solid #c9d0d5;
  display: inline-block;
  text-decoration: none;
}

  .btn-gr-wh, .btn-wh-gr:hover {
    padding: 5px 20px;
    color: #fff;
    background-color: #c9d0d5;
    border: 2px solid #c9d0d5;
    display: inline-block;
    text-decoration: none;
  }


.paperPlanToggle {
  color: #999;
}

  .paperPlanToggle sup {
    font-size: 8px;
  }

  .paperPlanToggle .onoffswitch-container {
    position: relative;
    top: 7px;
    margin-left: 7px;
    margin-right: 7px;
    display: inline-block;
  }

.info .sub-title {
  font-weight: bold;
  font-size: 18px;
  color: #272829;
  padding: 10px 0;
}

.info .learn-more {
  padding-top: 5px;
  text-decoration: underline;
}

  .info .learn-more a {
    color: #272829;
  }

footer {
  box-shadow: 0 50vh 0 50vh #56585a;
}

.footer-list {
  margin: 20px 0 0 0;
  list-style: none;
}

  .footer-list li {
    display: inline;
    color: white;
    margin: 0 20px;
  }

    .footer-list li a {
      text-decoration: none;
      color: #62b3e1;
    }

.copyright {
  color: #999fa3;
}

.start-trial {
  float: right;
}

  .start-trial a {
    color: #969b9f;
    text-decoration: none;
    margin: 20.25px 10px;
  }

.day .lesson-form .sections {
  min-height: 40px;
}

.feature-section .section-img {
  width: 50%;
  background-size: cover !important;
  height: 240px;
  box-shadow: 0px 0px 5px #ccc;
}

.feature-section .section-text {
  width: 50%;
}

.feature-section:nth-child(even) .section-img, .feature-section:nth-child(odd) .section-text {
  float: right;
}

.feature-section:nth-child(odd) .section-img, .feature-section:nth-child(even) .section-text {
  float: left;
}

.feature-section .section-text .inner {
  padding: 15px;
}

.feature-section {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #eee;
}

  .feature-section:last-child {
    border-bottom: none;
  }

  .feature-section.slo .section-img {
    background: url("/Images/test-results.png");
  }

  .feature-section.lesson-plans .section-img {
    background: url("/Images/lesson-plans.png");
  }

  .feature-section.referrals .section-img {
    background: url("/Images/discipline.png");
  }

  .feature-section.evals .section-img {
    background: url("/Images/evals.png");
  }

  .feature-section.contacts .section-img {
    background: url("/Images/call-logs.png");
  }

  .feature-section.filemanager .section-img {
    background: url("/Images/file-manager.png");
  }

  .feature-section.standards .section-img {
    background: url("/Images/standards.png");
  }

  .feature-section.analytics .section-img {
    background: url("/Images/discipline-analytics.png");
  }

.btn-xs.btn-label {
  margin-top: -5px;
  margin-left: 10px;
  display: inline-block;
  position: absolute;
  font-size: 10px;
}

.user-avatar {
  width: 200px;
  height: 200px;
  margin-top: 5px;
  margin-bottom: 5px;
}

  .user-avatar.default {
    background: #ccc;
    color: #fff;
    font-size: 60px;
    text-align: center;
    line-height: 200px;
  }

  .user-avatar.set {
    background-size: cover;
    background-position: 50% 50%;
  }

.jq-Core-Standards .set .set .set .title {
  color: #909090;
}

.jq-Core-Standards .set table {
  margin-bottom: 0px !important;
}

  .jq-Core-Standards .set table td {
    vertical-align: top !important;
  }

#download-pdf {
  width: 100%;
  margin: 20px auto 0;
  display: block;
}

@media (min-width: 1140px) {
  .slim {
    width: auto !important;
    margin-left: calc(-100vw / 2 + 1170px / 2) !important;
    margin-right: calc(-100vw / 2 + 1170px / 2) !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}

.slim .multiple-class-day {
  width: 19.8%;
  margin: .1%;
}

.slim .single-day .multiple-class-day {
  width: 1140px;
  margin: 0 auto;
}

.slim .day div.plan-topic {
  font-size: 14px;
  padding-top: 3px;
  padding-bottom: 1px;
}

.slim .section .action {
  display: none;
}

.slim .day div.title {
  font-size: 14px;
}

.slim .day {
  margin-bottom: 5px !important;
}

.slim .section-content.standards {
  text-align: center;
}

.standard-clickbox {
  padding: 5px;
  background: #eee;
  margin-right: 4px;
  margin-top: 4px;
  display: inline-block;
  border-radius: 2px;
  font-size: 11px;
  box-shadow: 0px 0px 2px #f0f0f0;
}

.slim .toolbar {
  padding-top: 4px !important;
  padding-bottom: 5px !important;
}

.slim .day div.title {
  padding-bottom: 5px;
}

.slim .day {
  padding-bottom: 10px;
}

.slim .date .add-section {
  padding: 8px;
  float: right;
  padding-top: 4px;
  padding-bottom: 6px;
  margin-left: 10px;
  cursor: pointer;
  margin-top: -5px;
}

  .slim .date .add-section:hover {
    background: rgba(0,0,0,.4);
  }

.options-toggle {
  float: right;
  margin-right: -15px;
  margin-top: -5px;
  padding: 5px 5px;
  padding-right: 10px;
  cursor: pointer;
}

.slim .day {
  min-height: 0px;
}

.day.minimized .lesson-form, .day.minimized a.add-section {
  display: none;
}

.day.minimized .date {
  margin-bottom: 0px;
}

.day.minimized {
  padding-bottom: 0px;
  min-height: 0;
  margin-bottom: 5px !important;
}

.day .date {
  cursor: cell;
}

.public-wrap .day .date {
  cursor: default;
}

.slim .day {
  padding-bottom: 0px;
}

  .slim .day .date {
    margin-bottom: 0px;
  }

  .slim .day div.title {
    border-bottom: 0px;
    padding-bottom: 0px;
  }

.slim {
  margin-bottom: 150px;
}

  .slim .section-content.standards {
    padding-top: 4px;
  }

  .slim .standards-full {
    display: none;
  }

.section.blank {
  display: none;
}

.standard-clickbox {
  cursor: pointer;
}

.slim .public-links-default iframe, .slim .public-links-prior iframe, .slim .public-links-all iframe {
  width: 100% !important;
  box-shadow: 0px 0px 10px #ccc;
}

.public-wrap .slim {
  background: #fff;
  padding-bottom: 170px;
  margin-bottom: -50px;
}

input.color-picker.minicolors-input {
  margin-left: 30px;
  width: 160px !important;
  margin-right: 5px;
  margin-top: 3px;
}

.color-preview {
  width: 25px;
  height: 25px;
  display: inline-block;
  vertical-align: middle;
}

.recent-classes {
  height: 300px;
  overflow-y: scroll;
  background: #f8f8f8;
  padding: 20px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/*--------------------- Help Pages ---------------------*/

.help-page-wrapper {
  padding-top: 20px;
  padding-bottom: 20px;
}

.help-content {
  float: right;
  width: 77%;
}

.border-bottom {
  border-bottom: 2px solid #ddd;
  padding-left: 100px;
}

.help-section .title {
  font-size: 20px;
  padding-left: 15px;
  color: #444;
  font-family: 'Roboto';
  cursor: pointer;
  border-top: 1px solid #ddd;
  padding-top: 15px;
}


.help-section .help-text {
  display: none;
  font-size: 14px;
  padding: 15px;
}

.help-button {
  float: right;
  border: 1px solid #ddd;
  color: black;
  padding: 8px 12px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  cursor: pointer;
}

.help-item-arrow {
  float: right;
  font-size: 24px
}

.delete-button {
  background-color: #ddd;
  border: 1px solid #ddd;
  color: black;
  padding: 1px 5px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 14px;
  font-family: 'Roboto';
  margin: 2px 1px;
  cursor: pointer;
  background-color: white;
}

.help-section .title a, .help-section .title i {
  margin-left: 5px;
  opacity: .5;
}

  .help-section .title a:hover, .help-section .title i:hover {
    opacity: 1;
  }

.edit-button {
  border: 1px solid #ddd;
  color: black;
  padding: 12px 18px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  margin: 2px 1px;
  cursor: pointer;
}

.trash-can {
  float: right;
}

.help-sidebar {
  float: left;
  width: 20%;
  border-right: 1px solid #ddd;
  padding-bottom: 110px;
  padding-right: 15px;
}

  .help-sidebar a {
    color: grey;
    font-family: 'Roboto';
    font-size: 16px;
    margin-bottom: 2px;
    display: block;
  }

    .help-sidebar a.active {
      color: #2196F3;
      font-size: 22px;
    }

    .help-sidebar a:hover {
      color: #2196F3;
      text-decoration: none;
    }

.text-specs {
  font-size: 30px;
  font-weight: bold;
  color: black;
}

.header-optics {
  font-family: 'Roboto';
}

.editpage-textboxes {
  font-family: 'roboto';
  font-size: 16px;
  color: grey;
}

span.eval-status.finalized {
  opacity: .6;
}

.lesson-plan-notice {
  background-color: #2196F3;
  font-size: 24px;
  font-family: 'Roboto';
  color: white;
  font-style: italic;
  margin-top: 10px;
  margin-left: 10px;
  margin-bottom: 20px;
}

.stats-box {
  background: #eeeeee;
  padding-top: 10px;
  border-radius: 8px;
}

.stats-box-heading {
  padding: 0;
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  color: rgb(127 140 141);
}

.stats-box-value {
  font-weight: bold;
  color: black;
}

.chart-box {
  background: #eeeeee;
  padding: 10px 0;
  border-radius: 8px;
}

.chart-heading {
  text-align: center;
  padding: 0 0 10px 0;
  margin: 0;
  font-size: 14px;
  font-weight: 500;
  color: rgb(127 140 141);
}

.section-heading {
  font-weight: bold;
  margin-top: 30px;
  font-size: 15px;
}

.action-button {
  float: right;
  font-size: 12px;
  padding: 0px 15px !important;
  text-transform: unset;
  height: 22px;
}

.col-padding {
  padding: 0 10px;
}

.view-all-button {
  font-weight: 400;
}

.fa-external-link {
  color: #2196f3;
  cursor: pointer;
  padding-left: 7px;
}

/* Import Results Table Styles */
.table-container {
  max-height: 452px;
  overflow-y: auto;
  margin-bottom: 20px;
}

  .table-container thead th {
    position: sticky;
    top: 0;
    background: #eeeeee;
    z-index: 1;
  }

/* Referral Styles */
.discipline-referral-search {
  position: relative;
}

.referral-results {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #ccc;
  border-top: none;
  max-height: 200px;
  overflow-y: auto;
  z-index: 1000;
}

.referral-result {
  padding: 8px 12px;
  cursor: pointer;
  border-bottom: 1px solid #eee;
}

  .referral-result:hover {
    background-color: #f5f5f5;
  }

  .referral-result:last-child {
    border-bottom: none;
  }

.referral-validation {
  color: red;
  margin-top: 5px;
  font-size: 0.9em;
}

.discipline-referral-search {
  position: relative;
}

.referral-results {
  position: absolute;
  background: white;
  border: 1px solid #ddd;
  border-radius: 4px;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  max-height: 300px;
  overflow-y: auto;
  width: 420px;
  min-width: 420px;
  z-index: 1000;
  margin-top: 2px;
}

.referral-result {
  padding: 10px;
  border-bottom: 1px solid #eee;
  cursor: pointer;
}

  .referral-result:last-child {
    border-bottom: none;
  }

  .referral-result:hover {
    background-color: #f5f5f5;
  }

  .referral-result .time-location {
    color: #333;
    font-weight: 500;
    margin-bottom: 4px;
  }

  .referral-result .student-details {
    color: #666;
    font-size: 0.9em;
  }

.referral-details {
  padding-left: 210px;
  display: block;
  margin-top: 5px;
  color: #bbb;
  font-size: 0.95em;
  font-style: italic;
  line-height: 1.4;
}

  .referral-details .time {
    display: block;
    margin-bottom: 2px;
  }

  .referral-details .location {
    display: block;
  }


/* Typeahead dropdown styling - works in all browsers */
.tt-menu, .tt-dropdown-menu {
  max-height: 150px;
  overflow-y: auto;
  overflow-x: hidden;
}

/* Discipline Referral Search Styling */
.discipline-referral-search {
  margin-bottom: 120px;
}

  .discipline-referral-search .referral-details:not(:empty) {
    margin-bottom: 60px;
    display: block;
  }

    .discipline-referral-search .referral-details:not(:empty) ~ .referral-results {
      margin-bottom: 60px;
    }

  .discipline-referral-search:has(.referral-details:not(:empty)) {
    margin-bottom: 30px;
  }

.referral-search:disabled {
  background-color: #f5f5f5;
  cursor: not-allowed;
}

  .referral-search:disabled:hover {
    cursor: not-allowed;
  }

.form-error {
  color: red;
  margin: 0 0 0 10px;
  line-height: 1.5;
  min-height: 30px;
}
/* Ellipsis in Note content - Student Details */
table td.note-content {
  max-width: 100%;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  padding-bottom: 5px !important;
}

.add-note-studentDetail, .add-accommodation-studentDetail {
  margin-top: 10px !important;
  margin-right: 10px !important;
  color: #fff !important;
}

/* WellBeingManage Styles */
/* Modal styles */
.modal-dialog {
  margin: auto !important;
  display: flex;
  align-items: center;
  min-height: 100vh;
  justify-content: center;
}

.modal-content {
  box-shadow: 0 8px 32px rgba(60,60,60,0.18);
  border: none;
  background: #fff;
  padding: 0;
  border-radius: 0 !important;
}

.modal-header {
  border-bottom: none;
  padding: 20px 24px 0 24px;
  position: relative;
  display: block;
  min-height: 0;
}

.modal-title {
  font-size: 24px;
  font-weight: 700;
  color: #222;
  margin: 0;
  text-align: left;
  line-height: 1.2;
  display: block;
}

.modal-header .close {
  position: absolute;
  right: 18px;
  top: 18px;
  font-size: 2.1rem;
  color: #888;
  opacity: 0.7;
  z-index: 2;
  padding: 0;
  margin: 0;
  background: none;
  border: none;
  outline: none;
  box-shadow: none;
  font-weight: 400;
  line-height: 1;
  transition: color 0.2s, opacity 0.2s;
}

  .modal-header .close:hover {
    color: #e53935;
    opacity: 1;
  }

.modal-body {
  padding: 16px 28px 0 28px;
}

.modal-footer {
  border-top: none;
  justify-content: flex-end;
  gap: 10px;
  padding: 16px 28px 20px 28px;
  background: none;
}

/* Form styles */
.form-group-question {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.question-label {
  font-weight: 600;
  margin-bottom: 6px;
  display: block;
}

.custom-textarea {
  border: 1.5px solid #d1d5db;
  border-radius: 7px;
  font-size: 16px;
  min-height: 90px;
  padding: 14px 16px;
  width: 100%;
  max-width: 100%;
  max-height: 600px;
  box-sizing: border-box;
  resize: both;
  outline: none;
  background: #fff;
  margin-top: 6px;
}

  .custom-textarea:focus {
    border-color: #1976d2;
    box-shadow: 0 0 0 2px #1976d220;
  }

/* Weekday button styles */
.weekday-btn {
  outline: none !important;
  background: #f5f6fa;
  color: #444;
  border: 1.5px solid #d1d5db;
  transition: background 0.2s, color 0.2s, border 0.2s;
  font-size: 14px;
  padding: 6px 10px !important;
  min-width: 50px;
  border-radius: 5px;
  margin-right: 4px;
  margin-bottom: 4px;
  font-weight: 500;
}

  .weekday-btn.btn-primary,
  .weekday-btn.active {
    background: #1976d2 !important;
    color: #fff !important;
    border: 1.5px solid #1976d2 !important;
  }

#weekday-buttons {
  margin-top: 8px;
}

/* Toggle switch styles */
.switch {
  position: relative;
  display: inline-block;
  width: 46px;
  height: 24px;
}

  .switch input {
    display: none;
  }

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: .4s;
  border-radius: 24px;
}

  .slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    transition: .4s;
    border-radius: 50%;
  }

input:checked + .slider {
  background-color: #1976d2;
}

  input:checked + .slider:before {
    transform: translateX(22px);
  }

/* Header section styles */
.header-section {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 8px;
}

  .header-section h2 {
    margin-bottom: 0;
    font-size: 2rem;
    font-weight: 700;
    color: #222;
    line-height: 1.1;
  }

.header-controls {
  display: flex;
  align-items: center;
  gap: 12px;
}


/* Weekday tag styles */
.weekday-tag {
  display: inline-block;
  padding: 2px 6px;
  margin-right: 4px;
  margin-bottom: 2px;
  border: 1px solid #ececec;
  min-width: 44px;
  text-align: center;
}

  .weekday-tag.active {
    background: #f0f4fa;
    color: #3b5bdb;
    font-weight: 600;
    opacity: 1;
  }

  .weekday-tag:not(.active) {
    background: #f5f5f5;
    color: #bbb;
    font-weight: 400;
    opacity: 0.7;
  }

/* Info message styles */
.info-message {
  margin-top: 8px;
  color: #888;
  font-size: 13px;
}

.alert-warning {
  background: #fff4e5;
  color: #b26a00;
  border: 1px solid #ffe0b2;
}

/* Action button styles */
.edit-question .glyphicon-edit {
  color: #1976d2;
}

.delete-form {
  display: inline;
}

  .delete-form button {
    background: none;
    border: none;
    padding: 0;
    margin-left: 10px;
  }

.disableToggleModal {
  max-width: 500px;
}

.wellbeing-modal-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.wellbeing-modal-icon {
  font-size: 20px;
  color: #ff9800;
}

.wellbeing-modal-title {
  font-size: 1.5em;
  font-weight: bold;
}

.disableToggleModal .modal-header {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.wellbeing-row {
  display: flex;
  flex-wrap: nowrap;
  gap: 24px;
  width: 100%;
}

.wellbeing-col-3-23, .wellbeing-col-3-30 {
  flex: 1 1 0;
  min-width: 180px;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0;
}

.wellbeing-col-3-23 {
  flex-basis: 23.33%;
}

.wellbeing-col-3-30 {
  flex-basis: 30%;
}

@media (max-width: 1100px) {
  .wellbeing-row {
    flex-wrap: wrap;
    gap: 16px;
  }

  .wellbeing-col-3-23, .wellbeing-col-3-30 {
    flex: 1 1 100%;
    min-width: 0;
    max-width: 100%;
  }
}

.wellbeing-mb-3 {
  margin-bottom: 1rem;
}

.wellbeing-mt-3 {
  margin-top: 1rem;
}

.wellbeing-d-flex {
  display: flex;
}

.wellbeing-justify-content-between {
  justify-content: space-between;
}

.wellbeing-w-100 {
  width: 100%;
}

.wellbeing-filter-section label {
  font-weight: 500;
  margin-bottom: 4px;
  display: block;
}

/* Ensure date inputs and selects take full width */ /* Ensure date inputs and selects take full width */
.wellbeing-filter-section input[type="date"],
.wellbeing-filter-section select {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

/* Status Indicators */
.status-yes {
  color: #28a745;
  font-weight: bold;
  background-color: #e8f5e9;
  padding: 4px 12px;
  border-radius: 12px;
  display: inline-block;
  width: 45px;
  text-align: center;
}

.status-no {
  color: #dc3545;
  font-weight: bold;
  background-color: #ffebee;
  padding: 4px 12px;
  border-radius: 12px;
  display: inline-block;
  width: 45px;
  text-align: center;
}

/* Button Link Styles */
.btn-link {
  background: none;
  border: none;
  padding: 0;
  color: #007bff;
  text-decoration: underline;
  cursor: pointer;
}

  .btn-link:hover,
  .btn-link:focus,
  .btn-link:visited,
  .btn-link:active {
    color: #0056b3 !important;
    text-decoration: underline !important;
  }

.wellbeing-select-input {
  border: 1px solid #cccccc !important;
  border-radius: 4px !important;
  padding: 6px 12px !important;
  font-size: 14px !important;
  color: #333 !important;
  background-color: #fff !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out !important;
  height: 34px !important;
}

.select2-container--default .select2-selection--multiple {
  border: 1px solid #cccccc !important;
}

/* Collaborative editing lock styles */
.section {
  position: relative;
}

.toast-lock-notify {
  position: fixed;
  top: 24px;
  right: 24px;
  z-index: 9999;
  min-width: 260px;
  max-width: 350px;
  background: #343a40;
  color: #fff;
  padding: 14px 20px;
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.18);
  font-size: 15px;
  opacity: 0.97;
  display: flex;
  align-items: center;
  gap: 10px;
}

  .toast-lock-notify .fa-lock {
    color: #ffc107;
    font-size: 18px;
  }



.day {
  position: relative;
}

  /* When hovering over day, increase z-index so tooltip appears on top */
  .day:hover {
    z-index: 1000;
  }

  .day .editable-focus {
    border: 2px solid #28a745 !important;
    box-shadow: 0 0 0 2px #e6ffe6 !important;
  }

.lesson-plan-global-lock-overlay {
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(255, 140, 0, 0.25);
  border: 3px solid #ff9800;
  z-index: 100;
  pointer-events: auto;
  display: none;
  align-items: flex-start;
  justify-content: flex-end;
  transition: background 0.2s;
  overflow: visible;
}

  .lesson-plan-global-lock-overlay.is-visible {
    display: flex;
  }

  .lesson-plan-global-lock-overlay .lock-icons-container {
    position: absolute;
    top: 18px;
    right: 0px;
    display: flex;
    align-items: baseline;
    gap: 6px;
  }

  .lesson-plan-global-lock-overlay .editing-icon {
    position: relative;
    width: 28px;
    height: 28px;
    background: #fff3e0;
    border-radius: 50%;
    border: 2px solid #ff9800;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    color: #ff9800;
    box-shadow: 0 2px 8px rgba(0,0,0,0.10);
    flex-shrink: 0;
    top: -16px;
    right: -16px
  }

  .lesson-plan-global-lock-overlay .editor-initial-badge {
    position: absolute;
    width: 26px;
    height: 26px;
    background: #4caf50;
    color: #fff;
    border-radius: 50%;
    border: 2px solid #fff3e0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 1em;
    box-shadow: 0 1px 4px rgba(0,0,0,0.10);
    z-index: 2;
  }

  .lesson-plan-global-lock-overlay .editing-label {
    position: relative;
    right: -29px;
    font-size: 13px;
    color: #fff;
    font-weight: 500;
    background: #ff9800;
    border-radius: 4px;
    padding: 6px 10px;
    border: none;
    line-height: 1;
    white-space: nowrap;
  }

.accommodation-form-fields {
  min-width: 250px !important;
}

.lesson-plan-global-lock-tooltip {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 320px;
  background: #fff;
  color: #333;
  border-radius: 10px;
  border: 2px solid #ff9800;
  box-shadow: 0 4px 24px rgba(0,0,0,0.18);
  padding: 24px 32px 18px 32px;
  z-index: 1001;
  text-align: center;
}
  /* Adjust selector so tooltip appears when hovering over .day instead of .date */
  .day:hover .lesson-plan-global-lock-tooltip,
  .lesson-plan-global-lock-tooltip:hover {
    display: block;
  }