/* ==========================================================================
 * Default settings
 * ==========================================================================*/
/* ==========================================================================
 * Mixins
 * ==========================================================================*/
/* ==========================================================================
 * Timetable
 * ==========================================================================*/
.timetable {
  box-sizing: border-box; }
  .timetable::after {
    clear: both;
    content: "";
    display: table; }
  .timetable *, .timetable *:before, .timetable *:after {
    box-sizing: inherit; }
  .timetable ul, .timetable li {
    margin: 0;
    padding: 0;
    list-style-type: none; }
  .timetable aside, .timetable section {
    float: left; }
  .timetable aside {
    width: 25%;
    padding: 0 !important;
    border-right: 5px solid transparent; }
    .timetable aside li {
      padding: 0 15px;
      background-color: #EFEFEF;
      line-height: 46px; }
      .timetable aside li:not(:last-of-type) {
        border-bottom: 1px solid white; }
    .timetable aside .row-heading {
      display: inline-block;
      max-width: 100%;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
      word-wrap: normal; }
    .timetable aside .location-header {
      font-weight: bold; }
  .timetable ul {
    list-style-type: none;
    margin: 0; }
  .timetable aside li, .timetable time li {
    height: 46px; }
  .timetable aside li.x2, .timetable time li.x2 {
    height: 92px !important; }
  .timetable aside li.x3, .timetable time li.x3 {
    height: 138px !important; }
  .timetable aside li.x4, .timetable time li.x4 {
    height: 184px !important; }
  .timetable section {
    width: 75%;
    padding: 0 !important;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch; }
    .timetable section time {
      white-space: nowrap;
      display: inline-block; }
    .timetable section header {
      height: 46px;
      transform-style: preserve-3d;
      font-size: 0; }
      .timetable section header::after {
        clear: both;
        content: "";
        display: table; }
      .timetable section header li {
        display: inline-block;
        font-size: 1rem;
        overflow: visible;
        width: 0;
        line-height: 46px;
        display: inline-block;
        position: relative; }
        .timetable section header li:not(:last-of-type) {
          width: 96px; }
        .timetable section header li .time-label {
          display: block;
          position: absolute;
          left: 0; }
        .timetable section header li:not(:first-of-type) .time-label {
          transform: translateX(-50%); }
        .timetable section header li:last-of-type .time-label {
          transform: translateX(-100%); }
  @media only screen and (max-width: 960px) {
    .timetable aside {
      width: 40%; }
    .timetable section {
      width: 60%; } }
  .timetable ul.room-timeline {
    border-left: none;
    position: relative;
    overflow: hidden; }
    .timetable ul.room-timeline li {
      position: relative;
      background-color: #F4F4F4; }
      .timetable ul.room-timeline li:nth-of-type(odd) {
        background-color: #FDFDFD; }
      .timetable ul.room-timeline li:first-of-type {
        border-top: 1px solid #E5E5E5; }
      .timetable ul.room-timeline li:last-of-type {
        border-bottom: 1px solid #E5E5E5; }
      .timetable ul.room-timeline li:not(:last-of-type) {
        border-bottom: none; }
      .timetable ul.room-timeline li:first-child .time-entry {
        height: 44px; }
      .timetable ul.room-timeline li:after, .timetable ul.room-timeline li:before {
        content: "";
        position: absolute;
        z-index: 1;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0; }
      .timetable ul.room-timeline li:before {
        background-image: linear-gradient(to right, #E5E5E5 1px, transparent 1px);
        background-size: 24px auto; }
      .timetable ul.room-timeline li:after {
        background-image: linear-gradient(to right, #E5E5E5, #E5E5E5 1px, #F4F4F4 1px, #F4F4F4 2px, #E5E5E5 2px, #E5E5E5 3px, transparent 3px, transparent);
        background-size: 96px auto;
        background-position: -2px 0; }
      .timetable ul.room-timeline li .time-entry {
        background-color: #EC6A5E;
        transition: 200ms background-color;
        height: 45px;
        display: block;
        position: absolute;
        z-index: 2;
        padding: 0 10px;
        white-space: normal;
        overflow: hidden;
        color: white;
        border: 1px solid #e32c1b;
        transform-style: preserve-3d; }
        .timetable ul.room-timeline li .time-entry span {
          position: relative;
          top: 50%;
          transform: translateY(-50%);
          display: block; }
        .timetable ul.room-timeline li .time-entry select.form-control {
          display: inline-block;
          width: auto; }
        .timetable ul.room-timeline li .time-entry label {
          cursor: pointer;
          margin-top: 5px; }
        .timetable ul.room-timeline li .time-entry input[type='checkbox'] {
          position: absolute;
          margin-top: 2px;
          margin-left: -13px; }
        .timetable ul.room-timeline li .time-entry:hover {
          background-color: #e74030; }

/*# sourceMappingURL=timetablejs.css.map */
