/********************/
/* My custom colors */
/********************/
/********************************/
/*  Bootswatch - Color system   */
/********************************/
.calendar_wrapper {
  flex: 1;
  opacity: 0;
  transition: opacity 0.3s; }
  .calendar_wrapper.ready {
    opacity: 1; }

.calendar {
  /* NEW approach to calendar rows and columns */
  /* default datalist */ }
  .calendar button {
    outline: none; }
  .calendar .btn-indigo {
    background: #0A6CF1;
    color: #fff; }
    .calendar .btn-indigo:hover {
      background: #0961d9; }
    .calendar .btn-indigo.active {
      font-weight: bold;
      outline: 2px solid #0961d9; }
  .calendar .btn-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-bottom: 10px; }
    .calendar .btn-toolbar.extra_margin {
      margin-top: 20px;
      margin-bottom: 20px; }
    .calendar .btn-toolbar .btn-group-left {
      align-self: left; }
      .calendar .btn-toolbar .btn-group-left .btn-secondary:disabled, .calendar .btn-toolbar .btn-group-left .btn-secondary.active {
        outline: 1px solid #fff;
        background: #fff;
        border: 1px solid #d5d4d4; }
    .calendar .btn-toolbar .btn-group-right {
      align-self: right; }
    .calendar .btn-toolbar .nav-left {
      text-align: left; }
    .calendar .btn-toolbar .nav-right {
      text-align: right; }
    .calendar .btn-toolbar .btn-today {
      margin-left: 20px; }
  .calendar .calendar_person {
    padding: 10px;
    width: 100%;
    margin: 15px 0;
    background: #F04124;
    color: white;
    font-size: 16px;
    display: flex;
    justify-content: space-between;
    align-content: center; }
    .calendar .calendar_person .notice {
      align-self: flex-start; }
      .calendar .calendar_person .notice span {
        font-weight: bold; }
    .calendar .calendar_person .cancel {
      align-self: flex-end;
      cursor: pointer;
      opacity: 0.9; }
      .calendar .calendar_person .cancel:hover {
        opacity: 1; }
  .calendar .status-info-wrapper {
    margin-top: 10px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    color: #fff; }
    .calendar .status-info-wrapper .status-info .status-block {
      width: 30px;
      height: 16px;
      margin-right: 5px;
      display: inline-block;
      vertical-align: middle; }
      .calendar .status-info-wrapper .status-info .status-block.status0 {
        background-color: #888; }
      .calendar .status-info-wrapper .status-info .status-block.status1 {
        background-color: #30D0F0; }
      .calendar .status-info-wrapper .status-info .status-block.status2 {
        background-color: #75B103; }
      .calendar .status-info-wrapper .status-info .status-block.status3 {
        background-color: #FF9021; }
    .calendar .status-info-wrapper .status-info .status-text {
      display: inline-block;
      margin-right: 15px;
      vertical-align: middle; }
    .calendar .status-info-wrapper .status-info:last-of-type .status-text {
      margin-right: 0; }
  .calendar .scrollable {
    width: 100%; }
  .calendar .table-fixed {
    table-layout: fixed; }
  .calendar .no-event-label {
    font-weight: bold;
    color: darkgrey;
    text-align: center; }
  .calendar .event-detail-container {
    border-top: 2px darkgrey solid; }
    .calendar .event-detail-container .month-events-label {
      font-size: 16px;
      text-align: left;
      padding-left: 10px;
      padding-top: 5px;
      padding-bottom: 0.5rem;
      font-weight: bold;
      display: block;
      background-color: #0A6CF1;
      margin-bottom: 0;
      color: #fff; }
  .calendar .event-detail {
    cursor: pointer;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-weight: bold; }
    .calendar .event-detail .event-status {
      width: 30px;
      height: 16px;
      margin-right: 5px;
      display: inline-block;
      vertical-align: middle; }
      .calendar .event-detail .event-status.status0 {
        background-color: #888; }
      .calendar .event-detail .event-status.status1 {
        background-color: #30D0F0; }
      .calendar .event-detail .event-status.status2 {
        background-color: #75B103; }
      .calendar .event-detail .event-status.status3 {
        background-color: #FF9021; }
    .calendar .event-detail .event-text {
      display: inline-block;
      margin-right: 15px;
      vertical-align: middle; }
  .calendar .calendar-header {
    text-align: center;
    font-size: 1.2em;
    line-height: 2.4em; }
  .calendar .calendar-hour-column, .calendar .calendar-week-column {
    width: 50px; }
  .calendar .calendar-navbar {
    display: flex;
    flex-wrap: wrap;
    color: #fff;
    background: #0A6CF1; }
    .calendar .calendar-navbar .fa {
      outline: none;
      color: #fff; }
    .calendar .calendar-navbar .nav-left,
    .calendar .calendar-navbar .nav-right {
      display: flex;
      justify-content: center;
      width: 40px; }
      .calendar .calendar-navbar .nav-left .btn,
      .calendar .calendar-navbar .nav-right .btn {
        background: transparent; }
    .calendar .calendar-navbar .calendar-header {
      width: calc(100% - 80px); }
  .calendar .calendar-table {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    width: 100%; }
    .calendar .calendar-table .calendar-row {
      width: 14%;
      height: 60px; }
      .calendar .calendar-table .calendar-row .calendar-column {
        border: 1px solid blue; }
  .calendar .calendar-event-wrap {
    position: relative; }
  .calendar .calendar-event {
    position: absolute;
    padding: 0;
    cursor: pointer;
    min-height: 22px; }
    .calendar .calendar-event .resizer {
      width: 100%;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      height: 20%;
      min-height: 6px;
      max-height: 16px;
      cursor: ns-resize;
      background: transparent;
      z-index: 10; }
    .calendar .calendar-event .calendar-event-inner {
      background-color: #75B103;
      color: white;
      height: 100%;
      width: 100%;
      padding: 0;
      line-height: 15px;
      z-index: 9;
      text-align: center;
      position: relative;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none; }
      .calendar .calendar-event .calendar-event-inner:hover {
        background-color: #649803; }
      .calendar .calendar-event .calendar-event-inner.status0 {
        background-color: #888; }
      .calendar .calendar-event .calendar-event-inner.status1 {
        background-color: #30D0F0; }
      .calendar .calendar-event .calendar-event-inner.status2 {
        background-color: #75B103; }
      .calendar .calendar-event .calendar-event-inner.status3 {
        background-color: #FF9021; }
      .calendar .calendar-event .calendar-event-inner:hover.status0 {
        background-color: #6f6f6f; }
      .calendar .calendar-event .calendar-event-inner:hover.status1 {
        background-color: #10bbdd; }
      .calendar .calendar-event .calendar-event-inner:hover.status2 {
        background-color: #547f02; }
      .calendar .calendar-event .calendar-event-inner:hover.status3 {
        background-color: #ed7700; }
      .calendar .calendar-event .calendar-event-inner.vert_center_content {
        display: flex;
        justify-content: center;
        align-items: center; }
  .calendar .calendar-cell {
    padding: 0 !important;
    height: 60px;
    position: relative;
    z-index: -1;
    border-color: #dedede; }
    .calendar .calendar-cell span {
      position: absolute;
      width: 100%;
      border-bottom: 1px solid gray;
      opacity: 0.1;
      height: 25%; }
      .calendar .calendar-cell span:hover {
        background: rgba(29, 59, 150, 0.5); }
      .calendar .calendar-cell span:nth-child(1) {
        top: 0%; }
      .calendar .calendar-cell span:nth-child(2) {
        top: 25%; }
      .calendar .calendar-cell span:nth-child(3) {
        top: 50%; }
      .calendar .calendar-cell span:nth-child(4) {
        top: 75%; }
    .calendar .calendar-cell.dndDragover {
      background: rgba(136, 136, 136, 0.3); }
    .calendar .calendar-cell .dndPlaceholder {
      position: absolute;
      list-style: none; }
  .calendar .calendar_top {
    display: flex;
    flex: none;
    background: #fff; }
    .calendar .calendar_top .zero_day {
      white-space: nowrap;
      display: flex;
      flex: none;
      flex-direction: column; }
      .calendar .calendar_top .zero_day .zero_hours {
        visibility: hidden;
        overflow-y: hidden;
        height: 0;
        max-width: 80px; }
        .calendar .calendar_top .zero_day .zero_hours .zero_hour {
          box-sizing: border-box;
          min-width: 40px;
          padding: 4px;
          white-space: nowrap; }
    .calendar .calendar_top .title_days_wrapper {
      border-left: #e0e0e0 1px solid;
      margin-left: -1px;
      flex: 1 1 auto;
      display: flex;
      flex-direction: column;
      overflow: hidden;
      position: relative; }
      .calendar .calendar_top .title_days_wrapper .title_days {
        height: 60px;
        display: flex;
        flex: none;
        overflow: hidden; }
        .calendar .calendar_top .title_days_wrapper .title_days .title_days_row {
          flex: 1 1 auto;
          display: flex;
          overflow: hidden; }
          .calendar .calendar_top .title_days_wrapper .title_days .title_days_row .title_day {
            border-right: #e0e0e0 1px solid;
            overflow: hidden;
            box-sizing: border-box;
            flex: 1 1 0%;
            display: flex;
            justify-content: center; }
            .calendar .calendar_top .title_days_wrapper .title_days .title_days_row .title_day .day_wrapper {
              font-weight: 400;
              margin: 0; }
              .calendar .calendar_top .title_days_wrapper .title_days .title_days_row .title_day .day_wrapper .day_name {
                font-size: 1rem;
                line-height: 2rem;
                position: relative;
                z-index: 2;
                text-align: center; }
              .calendar .calendar_top .title_days_wrapper .title_days .title_days_row .title_day .day_wrapper .day_number {
                font-size: 2rem;
                line-height: 1.5rem;
                position: relative;
                z-index: 2; }
          .calendar .calendar_top .title_days_wrapper .title_days .title_days_row .scroller_space {
            overflow: scroll;
            visibility: hidden;
            flex: none; }
  .calendar .calendar_middle {
    position: relative;
    border-top: #eee 1px solid;
    flex: 1 1 60%;
    display: flex;
    flex-direction: column;
    overflow: hidden; }
    .calendar .calendar_middle .calendar_block {
      display: flex;
      overflow-y: scroll;
      flex: 1 1 auto;
      align-items: flex-start; }
      .calendar .calendar_middle .calendar_block .calendar_hours_wrapper {
        overflow-y: hidden;
        flex: none;
        display: flex;
        align-items: flex-start; }
        .calendar .calendar_middle .calendar_block .calendar_hours_wrapper .calendar_hours {
          position: relative;
          border-right: #e0e0e0 1px solid;
          background-color: #fff;
          box-sizing: border-box;
          min-width: 48px; }
          .calendar .calendar_middle .calendar_block .calendar_hours_wrapper .calendar_hours .zero_hour {
            position: relative;
            height: 24px;
            /* half of .calendar_hour height */ }
          .calendar .calendar_middle .calendar_block .calendar_hours_wrapper .calendar_hours .calendar_hour {
            position: relative;
            height: 48px;
            text-align: center; }
            .calendar .calendar_middle .calendar_block .calendar_hours_wrapper .calendar_hours .calendar_hour .calendar_hour_span {
              display: block;
              position: relative;
              top: -6px;
              font-size: 10px;
              color: #212121; }
      .calendar .calendar_middle .calendar_block .calendar_days_wrapper {
        flex: 1 1 auto; }
        .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days {
          display: flex;
          position: relative; }
          .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_lines .calendar_line {
            height: 48px; }
            .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_lines .calendar_line:after {
              content: '';
              border-bottom: #e0e0e0 1px solid;
              position: absolute;
              width: 100%;
              margin-top: -1px;
              z-index: 3;
              pointer-events: none; }
          .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column {
            border-right: #e0e0e0 1px solid;
            position: relative;
            padding-right: 12px;
            box-sizing: border-box;
            flex: 1 1 0%;
            /* match title hours here */ }
            .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_title {
              clip: rect(1px, 1px, 1px, 1px);
              height: 1px;
              overflow: hidden;
              position: absolute;
              white-space: nowrap;
              width: 1px; }
            .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events {
              position: relative;
              height: 100%;
              width: 100%; }
              .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event {
                cursor: pointer;
                position: absolute;
                -moz-border-radius: 2px;
                border-radius: 2px;
                outline: none;
                width: 100%;
                left: 0%;
                /* TODO - remove after adding overlap */
                z-index: 4;
                min-height: 19px;
                /* line-height 15px + padding-top 4px */ }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.status0 {
                  background-color: #888; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.status1 {
                  background-color: #30D0F0; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.status2 {
                  background-color: #75B103; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.status3 {
                  background-color: #FF9021; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info {
                  max-height: 100%;
                  overflow: hidden;
                  padding-left: 8px;
                  text-align: left;
                  -khtml-user-select: none;
                  -moz-user-select: none;
                  user-select: none; }
                  .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info .event_text {
                    font-size: 12px;
                    line-height: 15px;
                    overflow: hidden;
                    white-space: nowrap;
                    cursor: pointer;
                    color: #fff; }
                  .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info .event_name {
                    max-width: 100%;
                    display: flex;
                    align-items: center;
                    max-height: 15px;
                    padding-top: 4px;
                    word-wrap: break-word; }
                    .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info .event_name span {
                      overflow: hidden;
                      flex: 0 1 auto;
                      white-space: nowrap;
                      font-weight: 500; }
                  .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info .event_time {
                    max-width: 100%;
                    white-space: nowrap;
                    display: flex;
                    align-items: center; }
                  .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .event_info .event_short_time {
                    display: none; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event .resizer2 {
                  position: absolute;
                  bottom: 0;
                  left: 0;
                  right: 0;
                  height: 33%;
                  max-height: 16px;
                  cursor: ns-resize;
                  display: flex;
                  align-items: center;
                  justify-content: center; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.minimal .event_info .event_time {
                  display: none; }
                .calendar .calendar_middle .calendar_block .calendar_days_wrapper .calendar_days .calendar_column .column_events .column_event.minimal .event_info .event_short_time {
                  display: inline-block; }
  .calendar .monthview-primary-with-event {
    background-color: #888;
    color: white; }
  .calendar .monthview-selected {
    outline: 3px solid #0A6CF1;
    border-color: #75B103; }
  .calendar .monthview-today {
    border: 1px solid red; }
  .calendar .monthview-current {
    background-color: lightgrey; }
  .calendar .monthview-eventdetail-timecolumn {
    width: 150px;
    white-space: nowrap;
    overflow: hidden; }
  .calendar .monthview-dateCell {
    cursor: pointer; }
    .calendar .monthview-dateCell .text-muted {
      opacity: 0.3; }
  .calendar .monthview-has-confirmed {
    background: #75B103; }
  .calendar .monthview-secondary-with-event {
    background-color: #d7d9da; }
  .calendar .weekview-allday-label, .calendar .dayview-allday-label {
    float: left;
    height: 100%;
    line-height: 50px;
    text-align: center;
    width: 50px;
    border: 1px solid #ddd;
    border-right-width: 0; }
  .calendar .weekview-allday-content-wrapper, .calendar .dayview-allday-content-wrapper {
    margin-left: 50px;
    overflow-x: hidden;
    overflow-y: auto;
    height: 100%; }
  .calendar .weekview-header, .calendar .monthview-datetable {
    margin-bottom: 0; }
  .calendar .monthview-datetable tr th {
    background: #eee;
    border: 0 none; }
  .calendar .weekview-header th {
    overflow: hidden;
    white-space: nowrap;
    background: #eee;
    border: 0 none; }
  .calendar .weekview-table .table tr td:first-of-type {
    background: #eee;
    border: 0 none; }
  .calendar .calendar-hour-column {
    background: #eee;
    border: 0 none; }
  .calendar .weekview-allday-table, .calendar .dayview-allday-table {
    height: 52px; }
  .calendar .weekview-allday-content-table, .calendar .dayview-allday-content-table {
    min-height: 100%;
    margin-bottom: 0; }
  .calendar .gutter-column {
    padding-left: 0 !important;
    padding-right: 0 !important; }
  .calendar .modal.calendar-modal1, .calendar .modal.calendar-modal2 {
    display: block; }
  .calendar .custom_reminder {
    background: rgba(0, 0, 0, 0.3); }
    .calendar .custom_reminder.visible {
      display: block;
      z-index: 9999; }
    .calendar .custom_reminder .ng-invalid-min, .calendar .custom_reminder .ng-invalid-max {
      outline: 1px solid red; }
    .calendar .custom_reminder .modal-dialog {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      width: 350px;
      height: 250px; }
      .calendar .custom_reminder .modal-dialog .custom_reminder_body {
        display: flex;
        align-items: stretch;
        justify-content: space-around;
        width: 100%; }
  .calendar .calendar-modal1 {
    background: rgba(0, 0, 0, 0.3); }
    .calendar .calendar-modal1 .modal-dialog {
      max-width: inherit; }
    .calendar .calendar-modal1 .modal-header {
      border-bottom: 2px solid #888; }
      .calendar .calendar-modal1 .modal-header.status0 {
        border-color: #888; }
      .calendar .calendar-modal1 .modal-header.status1 {
        border-color: #30D0F0; }
      .calendar .calendar-modal1 .modal-header.status2 {
        border-color: #75B103; }
      .calendar .calendar-modal1 .modal-header.status3 {
        border-color: #FF9021; }
    .calendar .calendar-modal1 .modal_title_with_name {
      font-size: 18px;
      font-weight: bolder; }
    .calendar .calendar-modal1 .duration,
    .calendar .calendar-modal1 .status_select {
      display: block;
      margin-top: 5px;
      width: 200px; }
    .calendar .calendar-modal1 .modal-content {
      width: 650px;
      overflow-y: auto;
      margin: auto; }
    .calendar .calendar-modal1 .modal-header,
    .calendar .calendar-modal1 .modal-body,
    .calendar .calendar-modal1 .modal-footer {
      padding: 15px 30px; }
    .calendar .calendar-modal1 .modal-body .form-group.group_inline label {
      line-height: 32px;
      margin-bottom: 0; }
    .calendar .calendar-modal1 .modal-body .form-group.group_inline select {
      display: inline-block;
      margin-left: 10px;
      margin-top: 0; }
    .calendar .calendar-modal1 .modal-footer .create_event_buttons,
    .calendar .calendar-modal1 .modal-footer .modify_event_buttons {
      display: flex;
      justify-content: flex-end;
      width: 100%; }
      .calendar .calendar-modal1 .modal-footer .create_event_buttons .btn,
      .calendar .calendar-modal1 .modal-footer .modify_event_buttons .btn {
        margin-right: 15px; }
        .calendar .calendar-modal1 .modal-footer .create_event_buttons .btn:last-of-type,
        .calendar .calendar-modal1 .modal-footer .modify_event_buttons .btn:last-of-type {
          margin-right: 0; }
    .calendar .calendar-modal1 .gcalendar_notice .fa {
      color: #75B103;
      margin-right: 5px; }
    .calendar .calendar-modal1 .gcalendar_notice.not_ready {
      cursor: pointer; }
      .calendar .calendar-modal1 .gcalendar_notice.not_ready .fa {
        color: #F04124; }
    .calendar .calendar-modal1 .reminders_wrapper .badge {
      background: #2c2f39;
      cursor: pointer;
      text-transform: none;
      font-size: 12px;
      margin-right: 5px;
      margin-bottom: 5px; }
      .calendar .calendar-modal1 .reminders_wrapper .badge.badge-primary:hover .fa {
        color: #fff; }
      .calendar .calendar-modal1 .reminders_wrapper .badge.badge-primary .fa {
        color: #888; }
    .calendar .calendar-modal1 .reminders_wrapper .reminder_block {
      position: relative;
      display: inline-block; }
      .calendar .calendar-modal1 .reminders_wrapper .reminder_block .add_reminder {
        display: inline-block;
        cursor: pointer;
        background: white;
        border: 1px solid #2c2f39;
        color: #2c2f39;
        text-transform: uppercase;
        margin-right: 5px;
        margin-bottom: 5px;
        padding: 0.5rem 0.6rem;
        font-size: 12px;
        font-weight: 300;
        line-height: 1;
        text-align: center;
        white-space: nowrap;
        vertical-align: baseline;
        border-radius: 0;
        min-width: 80px;
        z-index: 995; }
        .calendar .calendar-modal1 .reminders_wrapper .reminder_block .add_reminder .fa {
          color: #2c2f39;
          padding-right: 3px; }
      .calendar .calendar-modal1 .reminders_wrapper .reminder_block .add_reminder_popup {
        bottom: 100%;
        border: 1px solid #2c2f39;
        top: inherit;
        left: -1px; }
        .calendar .calendar-modal1 .reminders_wrapper .reminder_block .add_reminder_popup.visible {
          display: block; }
        .calendar .calendar-modal1 .reminders_wrapper .reminder_block .add_reminder_popup .dropdown-item {
          font-size: 12px;
          padding: 0.5rem 1rem; }
  .calendar .well_with_bg {
    background: whitesmoke; }
  .calendar .unlock_wrapper .unlock_name {
    position: absolute;
    right: 5px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    padding: 10px 15px;
    /* more padding to sides so its easier to click */
    width: 15px;
    height: 15px;
    z-index: 9;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    display: flex; }
    .calendar .unlock_wrapper .unlock_name:hover .fa {
      color: #F04124; }
    .calendar .unlock_wrapper .unlock_name .fa {
      color: #2c2f39; }
  .calendar datalist {
    display: none !important; }
  .calendar .datalist-wrapper {
    position: relative; }
    .calendar .datalist-wrapper .datalist {
      display: none;
      position: absolute;
      top: 100%;
      width: 100%;
      min-height: 0;
      height: auto;
      max-height: 150px;
      overflow: auto;
      background: #fff;
      border: 1px solid grey;
      z-index: 99; }
      .calendar .datalist-wrapper .datalist.visible {
        display: block; }
      .calendar .datalist-wrapper .datalist .datalist-option {
        color: black;
        padding: 5px 20px;
        font-size: 0.8em;
        cursor: pointer; }
        .calendar .datalist-wrapper .datalist .datalist-option:hover {
          background-color: #eee; }
        .calendar .datalist-wrapper .datalist .datalist-option .user_email {
          color: #777777; }

:-webkit-full-screen .navbar,
:-webkit-full-screen .footer {
  display: none; }

:-webkit-full-screen .calendar_wrapper {
  margin-top: 30px; }
  :-webkit-full-screen .calendar_wrapper .calendar {
    width: 100%;
    max-width: 100%; }

:-moz-full-screen .navbar,
:-moz-full-screen .footer {
  display: none; }

:-moz-full-screen .calendar_wrapper {
  margin-top: 30px; }
  :-moz-full-screen .calendar_wrapper .calendar {
    width: 100%;
    max-width: 100%; }

:-ms-full-screen .navbar,
:-ms-full-screen .footer {
  display: none; }

:-ms-full-screen .calendar_wrapper {
  margin-top: 30px; }
  :-ms-full-screen .calendar_wrapper .calendar {
    width: 100%;
    max-width: 100%; }

:-o-full-screen .navbar,
:-o-full-screen .footer {
  display: none; }

:-o-full-screen .calendar_wrapper {
  margin-top: 30px; }
  :-o-full-screen .calendar_wrapper .calendar {
    width: 100%;
    max-width: 100%; }

:full-screen .navbar,
:full-screen .footer {
  display: none; }

:full-screen .calendar_wrapper {
  margin-top: 30px; }
  :full-screen .calendar_wrapper .calendar {
    width: 100%;
    max-width: 100%; }

@media (max-width: 750px) {
  .calendar_wrapper {
    margin-top: 70px; }
  .calendar .calendar-modal1 .modal-content {
    min-width: inherit;
    width: 100%; }
  .calendar .weekview-allday-label, .calendar .dayview-allday-label, .calendar .calendar-hour-column, .calendar .calendar-week-column {
    width: 32px; }
  .calendar .weekview-allday-label, .calendar .dayview-allday-label {
    padding-top: 4px; }
  .calendar .table > tbody > tr > td.calendar-hour-column, .calendar .table > thead > tr > th.weekview-header-label {
    padding-left: 0;
    padding-right: 0;
    font-size: 12px;
    line-height: 12px;
    vertical-align: middle; }
  .calendar .weekview-allday-label, .calendar .dayview-allday-label {
    line-height: inherit; }
  .calendar .weekview-allday-content-wrapper, .calendar .dayview-allday-content-wrapper {
    margin-left: 32px; }
  .calendar .calendar-event-inner {
    font-size: 12px; } }

.monthly_view .table-bordered td {
  border: 1px solid rgba(0, 0, 0, 0.2); }

.week_table_wrapper {
  position: relative;
  width: 100%; }

.week_table {
  display: flex;
  flex-direction: column; }
  .week_table.week_table_header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.4); }
  .week_table .week_row {
    width: 100%;
    height: 60px;
    display: flex;
    position: relative; }
    .week_table .week_row:after {
      position: absolute;
      width: 87.5%;
      left: 12.5%;
      bottom: 0;
      height: 1px;
      background: rgba(0, 0, 0, 0.1);
      display: block;
      content: ""; }
    .week_table .week_row.with_hidden_times:nth-of-type(1), .week_table .week_row.with_hidden_times:nth-of-type(2), .week_table .week_row.with_hidden_times:nth-of-type(3), .week_table .week_row.with_hidden_times:nth-of-type(4), .week_table .week_row.with_hidden_times:nth-of-type(5), .week_table .week_row.with_hidden_times:nth-of-type(6), .week_table .week_row.with_hidden_times:nth-of-type(7) {
      display: none; }
    .week_table .week_row .week_col {
      position: relative;
      flex: 1;
      width: calc(100% / 8);
      border-right: 1px solid #888; }
      .week_table .week_row .week_col.dndDragover {
        background: rgba(136, 136, 136, 0.3); }
      .week_table .week_row .week_col .dndPlaceholder {
        position: absolute;
        list-style: none; }
      .week_table .week_row .week_col.today {
        background: rgba(0, 0, 0, 0.2); }
      .week_table .week_row .week_col.week_col_header .day_wrapper {
        font-weight: 400;
        margin: 0;
        text-align: center; }
        .week_table .week_row .week_col.week_col_header .day_wrapper .day_name {
          font-size: 1rem;
          line-height: 2rem;
          position: relative;
          z-index: 2; }
        .week_table .week_row .week_col.week_col_header .day_wrapper .day_number {
          font-size: 1.6rem;
          line-height: 1.5rem;
          position: relative;
          z-index: 2; }
      .week_table .week_row .week_col.hour_column {
        font-size: 10px;
        padding-top: 25px;
        line-height: 10px;
        position: relative;
        text-align: center; }
      .week_table .week_row .week_col .week_col_event .calendar-event,
      .week_table .week_row .week_col .week_col_event .calendar-event-inner {
        z-index: 9; }
      .week_table .week_row .week_col .week_col_event:hover {
        background: #bbbbbb; }

.day_table {
  display: flex;
  flex-direction: column; }
  .day_table .day_row {
    width: 100%;
    height: 60px;
    display: flex;
    position: relative; }
    .day_table .day_row:after {
      position: absolute;
      width: 87.5%;
      left: 100px;
      bottom: 0;
      height: 1px;
      background: rgba(0, 0, 0, 0.1);
      display: block;
      content: ""; }
    .day_table .day_row.with_hidden_times:nth-of-type(1), .day_table .day_row.with_hidden_times:nth-of-type(2), .day_table .day_row.with_hidden_times:nth-of-type(3), .day_table .day_row.with_hidden_times:nth-of-type(4), .day_table .day_row.with_hidden_times:nth-of-type(5), .day_table .day_row.with_hidden_times:nth-of-type(6), .day_table .day_row.with_hidden_times:nth-of-type(7) {
      display: none; }
    .day_table .day_row .day_col {
      position: relative;
      width: calc(100% - 100px);
      border-right: 1px solid #888; }
      .day_table .day_row .day_col.day_col_hour {
        width: 100px;
        font-size: 10px;
        padding-top: 25px;
        line-height: 10px;
        position: relative;
        text-align: center; }
      .day_table .day_row .day_col.dndDragover {
        background: rgba(136, 136, 136, 0.3); }
      .day_table .day_row .day_col .dndPlaceholder {
        position: absolute;
        list-style: none; }
