/* ******************************************************************** */
/* Simple Schedules style sheet                                         */
/* ******************************************************************** */

html,
body {
  margin: 0;
  padding: 0;
  text-align: center;
  font-family: Montserrat, sans-serif;
  font-size: 14px;
}

.copyright {
  display: grid;
}

.copyright p {
  font-family: 'Roboto', sans-serif;
  font-size: 12px;
  margin-bottom: 0;
  line-height: 24px;
  color: #333;
  padding-bottom: 2px;
  text-align: center;
}

/* body {
    background: url('../images/bg-tile.jpg') repeat-x #eaeaea;
} */

body > * {
  text-align: left;
}

.align-left,
.table td.align-left,
.table th.align-left {
  text-align: left;
}

.align-right,
.table td.align-right,
.table th.align-right {
  text-align: right;
}

.align-center,
.table td.align-center,
.table th.align-center {
  text-align: center;
}

.header-container {
  margin: 10px;
  width: 940px;
  position: relative;
}

#wrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media (min-width: 768px) {
  #wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

#header {
  margin-top: 10px;
}

#header .social-icons {
  margin-left: 5px;
}

#header .social-icon {
  height: 24px;
  width: 24px;
  display: inline-block;
  margin-right: 15px;
  background: transparent url('/images/social-icons.png') 0 0 no-repeat;
  overflow: hidden;
}

#header .social-icon.facebook {
}

#header .social-icon.twitter {
  background-position: -25px 0;
}

#header .social-icon.linkedin {
  background-position: -50px 0;
}

#header .social-icon.plusgoogle {
  background-position: -75px 0;
}

#header .social-icon.flickr {
  background-position: -100px 0;
}

#header .social-icon.pintrest {
  background-position: -125px 0;
}

#header .social-icon.foursquare {
  background-position: -150px 0;
}

#header .social-icon.tumblr {
  background-position: -175px 0;
}

#header .social-icon.website {
  background-position: -200px 0;
}

#header .login-button {
  margin: 5px 5px 5px 0;
  border-left: 1px #000 dotted;
  padding-left: 5px;
}

#header .store-info {
  margin: 5px;
}

#header .welcome-message {
  height: 17px;
  text-align: right;
}

.navbar-toggle {
  position: absolute;
  right: 0;
}

.navbar-toggle .icon-bar {
  background-color: #888;
}

@media (max-width: 767px) {
  #header .store-info {
    padding-left: 0;
  }
  #header .welcome-message {
    display: none;
  }
}

.schedule-posted {
  max-width: 260px;
}

.nav-container {
  position: relative;
}

.navbar-inner {
  min-height: 40px;
  padding-left: 20px;
  padding-right: 20px;
  background-color: rgb(100, 171, 51);
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(rgb(104, 178, 55)),
    to(rgb(93, 160, 44))
  );
  background-image: linear-gradient(
    to bottom,
    rgb(104, 178, 55),
    rgb(93, 160, 44)
  );
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#68b237', endColorstr='#5da02c', GradientType=0);
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25),
    inset 0 -1px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25), inset 0 -1px 0 rgba(0, 0, 0, 0.1);
}

.navbar-inner .container-fluid {
  padding: 0;
}

.navbar-nav .nav > li > a {
  float: none;
  padding: 11px 10px;
  line-height: 19px;
  color: #000;
  text-decoration: none;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.navbar-nav .nav > li > a:hover {
  background-color: transparent;
  color: #fff;
  text-decoration: none;
}

.navbar-nav .nav > li {
  display: block;
  position: relative;
}

.flexbox .nav-container .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.flexbox #navbar {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

@media (min-width: 768px) and (max-width: 1023px) {
  .flexbox .nav-container .row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.date-time {
  min-width: 180px;
  max-width: 230px;
  float: left;
}

@media (min-width: 768px) {
  .navbar-nav ul.nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    width: 100%;
  }
  .navbar-nav .nav > li {
    float: left;
  }
  .flexbox .nav-bar .nav > li {
    float: none;
  }
  .flexbox .navbar-nav .divider-vertical {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 991px) and (min-width: 768px) {
  #navbar {
    width: 100%;
  }
}

@media (min-width: 992px) {
  .no-flexbox #navbar {
    width: 80%;
  }
}

@media (max-width: 767px) {
  #navbar.navbar-nav.navbar-collapse.nav {
    position: absolute;
    z-index: 9;
    top: 8px;
    right: 60px;
  }
}

.navbar-nav .nav {
  margin: 0;
}

.navbar-inner {
  padding-left: 7px;
  padding-right: 7px;
}

.navbar-nav .nav > li .approval-count,
.navbar-nav .nav > li .msg-count,
.navbar-nav .nav > li .request-count {
  position: absolute;
  top: 4px;
  right: 0;
  color: #fff;
  font-size: 0.8em;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}

.nav > li > a:focus,
.nav > li > a:hover {
  background-color: inherit;
}

#footer {
  background: #ffffff;
  height: 150px;
  clear: both;
  display: block;
  margin-bottom: 20px;
  z-index: 2;
  border-right: 1px #dddddd solid;
  border-left: 1px #dddddd solid;
  border-bottom: 1px #dddddd solid;
  border-top: 2px #dddddd solid;
}

#footer .copyright {
  margin: 15px;
}

.date-time span {
  text-align: center;
  padding: 10px 0 0 0;
  display: inline-block;
  width: 100%;
}

.time {
  font-size: 13px;
}

.hidden {
  display: none !important;
}

/* ******************************************************************** */
/* bootstrap overrides                                                  */
/* ******************************************************************** */

.label {
  background: none;
  color: inherit;
  padding: 0 10px 0 0;
  text-shadow: none;
}

label.checkbox,
label.radio {
  padding-left: 20px;
}

input[readonly],
select[readonly],
textarea[readonly] {
  cursor: default;
}

fieldset {
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 0 15px;
  margin-top: 7px;
}

legend {
  display: inline;
  width: auto;
  padding: 0 5px;
  margin-bottom: 0;
  font-size: inherit;
  line-height: inherit;
  color: inherit;
  border: 0;
  border-bottom: 0;
}

.badge {
  font-size: 1.1rem;
}

/* ******************************************************************** */
/* Modal box                                                            */
/* ******************************************************************** */

div.send-note form#send_note_form div.header {
  color: #fff;
  font-weight: bolder;
  height: 20px;
  margin: 2px;
  padding-left: 10px;
  padding-top: 5px;
  text-transform: uppercase;
  background-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(51%, rgb(20, 20, 92)),
    color-stop(71%, rgb(53, 61, 212))
  );
  background-image: linear-gradient(
    to top,
    rgb(20, 20, 92) 51%,
    rgb(53, 61, 212) 71%
  );
  background-image: -ms-linear-gradient(
    bottom,
    rgb(20, 20, 92) 51%,
    rgb(53, 61, 212) 71%
  );
  background-image: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0.51, rgb(20, 20, 92)),
    color-stop(0.71, rgb(53, 61, 212))
  );
}

div.send-note {
  color: #000;
  text-align: left;
}

div.send-note .middle {
  margin: 15px 0 0 10px;
}

div.send-note .employee-group-select {
  width: 110px;
  height: 200px;
  border: 1px solid blue;
}

div.send-note .fields {
  width: 350px;
  height: 200px;
  border: 1px solid blue;
}

.important {
  color: #336699;
}

label {
  display: block;
}

/*.form-group label{display:inline-block}*/
form .controls {
  padding-bottom: 20px;
}

/* ******************************************************************** */
/* Clearfix: http://csscreator.com/attributes/containedfloat.php        */
/* ******************************************************************** */

.clearfix:after {
  content: '.';
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
}

/* Hides from IE-mac \*/

* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* End hide from IE-mac */

.clear {
  clear: both;
}

.top-bg {
  position: absolute;
  height: 315px;
  width: 1015px;
  margin: 0 auto;
  background: transparent url('/images/bg-top.jpg') no-repeat;
  z-index: -1;
  left: -18px;
  width: 30px;
}

.top-bg-right {
  right: -18px;
  background-position: right top;
  left: auto;
}

/*.container{
    min-width: 992px;
}*/

.outer-container {
  position: relative;
  margin: 0 auto;
  border-right: 1px #dddddd solid;
  border-left: 1px #dddddd solid;
  /*    border-bottom: 1px #dddddd solid;*/
  background-color: #ffffff;
  text-align: left;
  /* width: 1170px; */
}

.inner-container {
  position: relative;
  min-height: 750px;
  width: 100%;
}

.navbar-nav .divider-vertical {
  display: inline-block;
  height: 1.8em;
  width: 1px;
  margin: 7px 10px;
  padding: 0;
  overflow: hidden;
  border-right: 1px dotted #00620c;
  border-left: none;
}

@media (max-width: 767px) {
  .navbar-nav .nav > li.divider-vertical {
    display: none;
  }
}

aside.sidebar {
  margin: 15px;
  margin-left: 0;
  width: 100%;
}

@media (max-width: 767px) {
  main.main-content {
    padding-left: 15px;
  }
  aside .admin-sidebar {
    height: 45px;
    overflow: hidden;
    padding-top: 12px;
  }
  aside .admin-sidebar .nav-header {
    cursor: pointer;
    padding-bottom: 10px;
  }
  aside .admin-sidebar.open {
    height: auto;
  }
}

@media (min-width: 768px) {
  main.main-content {
    padding-left: 0;
    margin: 15px 0;
    width: 100%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    float: right;
  }
  aside.sidebar {
    margin-top: 15px;
    min-width: 180px;
    max-width: 230px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    float: left;
  }
}

.bc-title {
  text-transform: uppercase;
  font-weight: bold;
  color: #094a74;
}

.create-btn {
  margin-bottom: 15px;
}

.errors,
.error {
  color: #990000;
}

.schedule .cal-header {
  background: #dddddd;
  font-weight: bold;
}

.schedule .cal-row {
  border-bottom: 1px solid #999;
}

.schedule .cell {
  height: 30px;
}

.schedule .cal-row div.date {
  height: 60px;
}

.schedule td.date-cell {
  vertical-align: middle;
}

.schedule td.shift-name {
  font-size: 10px;
}

.schedule .schedule-nav {
  width: 100%;
  margin-bottom: 10px;
  margin-top: 10px;
}

.schedule .schedule-nav .next {
  text-align: right;
}

.schedule .schedule-nav .previous {
  text-align: left;
}

/* ******************************************************************** */
/*                      requests styles                                 */
/* ******************************************************************** */

table.requests td.message {
  border-top: none;
}

table.requests tr.message {
  display: none;
}

/* ******************************************************************** */
/*                      messages styles                                 */
/* ******************************************************************** */

.messages td {
  cursor: pointer;
}

.msg-container {
  /*padding: 20px;*/
  text-align: left;
}

.msg-container .label {
  background-color: transparent;
  color: inherit;
  vertical-align: baseline;
  white-space: nowrap;
  text-shadow: none;
  width: 70px;
  display: inline-block;
  padding-left: 0px;
  font-size: 17px;
  text-align: right;
}

.msg-container .body {
  margin-top: 10px;
  min-height: 200px;
  overflow: auto;
}

.msg-container header {
  display: flex;
}

.msg-container header .section1 {
  flex-shrink: 0;
  flex-grow: 0;
  flex-basis: calc(100% - 150px);
}
.msg-container header .section2 {
  flex: 0 0 150px;
  text-align: right;
}

.broadcast-msg {
  display: none;
}

.log-container {
  padding: 20px;
  text-align: left;
}

.log-container .label {
  background-color: transparent;
  color: inherit;
  vertical-align: baseline;
  white-space: nowrap;
  text-shadow: none;
  width: 80px;
  display: inline-block;
  padding-left: 0px;
  text-align: right;
}

.log-container .body {
  margin-top: 10px;
  min-height: 200px;
  overflow: auto;
}

.schedule .pending {
  font-size: 10px;
  text-align: center;
  line-height: 9px;
  /*width: 77px;*/
  padding: 4px;
  margin-top: -4px;
  margin-bottom: -4px;
}

.release-window {
  width: 712px;
  height: 500px;
}

.release-reason,
.trade-reason {
  margin-left: 0px;
  margin-right: 0px;
  width: 100%;
  height: 100px;
}

#shift_header {
  table-layout: fixed;
  width: 100%;
}

.release-window,
.trade-window {
  max-width: 600px;
  width: 100%;
  margin: auto;
}
.release-window div,
.trade-window div {
  margin-bottom: 20px;
}

.release-window .scrollContent,
.trade-window .scrollContent {
  max-height: 110px;
  overflow-y: auto;
  display: block;
  width: 100%;
  margin-bottom: 15px;
}
.release-window .shift-table tbody tr td span.shift {
  text-transform: capitalize;
}
.trade-window .shift-table tr > * {
  width: 24%;
}
.release-window .shift-table tr > th.radio-cell,
.release-window .shift-table tr > td.radio-cell,
.trade-window .shift-table tr > th.radio-cell,
.trade-window .shift-table tr > td.radio-cell {
  width: 4%;
}

@media screen and (max-width: 599px) {
  .release-window .shift-table,
  .trade-window .shift-table {
    font-size: 12px;
  }
}

table#shifts {
  table-layout: fixed;
  width: auto;
}

#shifts.scrollContent,
.fixedHeader {
  display: block;
}

.fixedHeader .radio,
#shifts .radio {
  width: 15px;
}

.fixedHeader .name,
#shifts .name {
  width: 150px;
}

.fixedHeader .shift-name,
#shifts .shift-name {
  width: 150px;
}

.fixedHeader .position,
#shifts .position {
  width: 150px;
}

.fixedHeader .location,
#shifts .location {
  width: 140px;
}

.trade-alert,
.release-alert {
  width: 90%;
}

/**
 * next shift alert
 */
@-webkit-keyframes slidein {
  10% {
    top: 0;
  }
  90% {
    top: 0;
  }
  100% {
    top: -100px;
  }
}
@keyframes slidein {
  10% {
    top: 0;
  }
  90% {
    top: 0;
  }
  100% {
    top: -100px;
  }
}

.shift-alert {
  position: fixed;
  top: -100px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  padding: 20px;
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
  background: -webkit-gradient(
    linear,
    left bottom,
    left top,
    color-stop(0, #549028),
    color-stop(55%, #68b237)
  );
  background: linear-gradient(to top, #549028 0, #68b237 55%);
  color: #ffffff;
  -webkit-animation-name: slidein;
  animation-name: slidein;
  -webkit-animation-duration: 6s;
  animation-duration: 6s;
}

.td-label {
  padding-right: 10px;
  font-size: 16px;
  text-align: right;
  font-weight: 600;
}

/* ******************************************************************** */
/*                      settings styles                                  */
/* ******************************************************************** */

textarea.announcement-text {
  width: 655px;
  height: 400px;
}

.settings .success {
  color: #468847;
  clear: both;
}

.form-horizontal .form-group {
  margin-bottom: 5px;
  margin-right: 0;
  margin-left: 0;
}

.form-horizontal .control-label {
  text-align: left;
}

label,
input,
button,
select,
textarea {
  font-size: 14px;
  font-weight: normal;
  line-height: 18px;
}

.saving-msg {
  width: 60px;
  text-align: center;
  padding: 5px;
  display: inline-block;
}

.saving-msg .label {
  padding: 2px;
}

table.block-calendar td {
  padding: 0;
}

table.block-calendar div.day {
  padding: 5px;
}

table.block-calendar div.day:hover {
  background-color: #cccccc;
}

table.block-calendar div.selected:hover {
  background-color: #d893a1;
  color: #ffffff;
}

table.block-calendar div.selected {
  background-color: #990000;
  color: #ffffff;
}

table.block-calendar th.head {
  border: none;
}

.text_field {
  width: 220px;
}

.panel {
  margin-bottom: 5px;
}

.panel-title {
  font-size: 1rem;
}

.panel-default > .panel-heading {
  background: transparent;
  border: 0;
  padding: 0;
}

.panel-heading a {
  display: block;
  /*border: 1px solid #999;*/
  padding: 10px;
  border-radius: 4px;
  /*margin-bottom: 5px;*/
  color: #444;
}

.panel-heading a[aria-expanded='true'] {
  color: #fff;
  background-color: rgb(100, 171, 51);
  background-image: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(rgb(104, 178, 55)),
    to(rgb(93, 160, 44))
  );
  background-image: linear-gradient(
    to bottom,
    rgb(104, 178, 55),
    rgb(93, 160, 44)
  );
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#68b237', endColorstr='#5da02c', GradientType=0);
}

.panel-inner {
  min-height: 150px;
  /*padding: 15px;*/
}

a.panel-toggle {
  text-decoration: none;
}

.panel-toggle .divider-vertical {
  border-left: 1px solid #000000;
  margin-left: 10px;
  margin-right: 8px;
  width: 1px;
}

.ui-datepicker-header select {
  padding: 0px 6px;
  height: 22px;
}

#bcmessage input#title {
  width: 100%;
}

textarea.bcm-text {
  width: 100%;
  height: 100px;
}

.form-group.buttons {
  margin-bottom: 0;
  padding-top: 15px;
  clear: both;
}

.form-title {
  font-size: 1.2em;
  width: 100%;
  border-bottom: 1px solid #ccc;
  margin-bottom: 15px;
}

.form-control.hasDatepicker {
  background-color: #fff;
}

#employee_groups div.form-group {
  float: left;
  margin-right: 10px;
}

#employee_groups div.form-group.save {
  clear: both;
}

.form-group .small {
  font-size: 0.7em;
}

/* ******************************************************************** */
/*                          SIDE MENU                                   */
/* ******************************************************************** */

/*.sidebar-nav li a{
    padding-left: 40px;
    background-image: url(../images/sprite-toolbar.png);
    background-repeat: no-repeat;
}
.sidebar-nav li a.today{
   background-position: -4px -188px;
}
.sidebar-nav li a.my-schedule{
    background-position: -4px -221px;
}
.sidebar-nav li a.my-request{
    background-position: -6px -33px;
}
.sidebar-nav li a.employess{
    background-position: -1px -1px;
}
.sidebar-nav li a.messages{
    background-position: -4px -104px;
}
.sidebar-nav li a.documents{
    background-position: -5px -321px;
}
.sidebar-nav li a.my-info{
    background-position: -9px -179px;
}
.sidebar-nav li a.help{
    background-position: -6px -142px;
}*/

.sidebar-nav li a {
  padding-left: 0;
  padding-right: 0;
}
.sidebar-nav li a i {
  margin-right: 5px;
}

/* ******************************************************************** */
/*                      POSTED SCHEDULE                                 */
/* ******************************************************************** */

.schedule-posted {
  text-align: center;
  padding-top: 5px;
  padding-bottom: 5px;
}

.schedule-posted a {
  text-decoration: none;
  display: grid;
  grid-template-columns: auto 30px;
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px;
  align-items: center;
  justify-items: center;
  column-gap: 0.5rem;
}

.schedule-posted div.date-range {
  font-size: 0.95rem;
}

.schedule-posted > div > a > div.title {
  border-top: 1px solid #aaa;
  padding-top: 0.5rem;
  width: 100%;
}

.schedule-posted > div > a > div.icon {
  grid-area: 1 / 2 / 3 / 3;
}

.schedule .btn-group-xs > .btn,
.schedule .btn-xs btn-primary {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px;
}

@media (max-width: 767px) {
  .mobile-hide {
    display: none !important;
  }
}

/* ******************************************************************** */
/*                      printer styles                                  */
/* ******************************************************************** */

@media print {
  /*hide the left column when printing*/
  #leftcol {
    display: none;
  }
  #twocols,
  #maincol {
    width: 100%;
    float: none;
  }
}

/* ******************************************************************** */
/*                  font awesome styles                                 */
/* ******************************************************************** */

.schedule-posted .fa-calendar:before {
  margin-left: 8px;
}

.help-tip {
  background-color: #336699;
  color: #ffffff;
  border-radius: 50%;
  padding: 0 0.6em;
  display: inline-block;
}

.help-tip:hover {
  color: #ffffff;
}

.tooltip-inner {
  background-color: #336699;
}

.tooltip.top .tooltip-arrow {
  border-top-color: #336699;
}

.print-btn {
  float: right;
}

footer .legal-links {
  display: inline-grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 2rem;
  margin: auto;
  text-align: center;
}
