body {
  /* background: url("https://www.toptal.com/designers/subtlepatterns/patterns/circles-and-roundabouts.png"); */
  /* background-color: #ABD5BD; */
  background-image: radial-gradient(rgb(13, 53, 75), #0A2737);
  font-family: 'Roboto', sans-serif;
  font-weight: 100;
}

hr {
  border-color: #0A2737;
}

.app-title {
  text-align: center;
  background-color: #0A2737;
  color: #fff;  
}

.hide-this {
  display: none;
}

#myBtnContainer {
  padding-bottom: 15px;
  text-align: center;
}

.filterDiv {
  display: none;
}

.filter-btn {
  background: #FC891B;
  color: #fff;
  border: 1px solid white;
  border-radius: 0;
  padding: 10px;
  margin: 0px 5px 0 0;
  width: 100px;
}

.filter-btn:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.go {
  background-color: rgba(0, 128, 0, 0.404);
  color: #0A2737
}

.stop {
  background-color: rgba(255, 0, 0, 0.493);
  color: #0A2737
}

.go:hover {
  background-color: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.stop:hover {
  background-color: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.show {
  display: block;
}

.card-header {
  border-radius: 0 !important;
}

#signed-in {
  text-align: center;
  color: #0A2737; 
  margin-top: 15px;
}

#signed-in-as {
  border-bottom: 1px solid #0A2737;
  padding-bottom: 5px;
}

#user-signed-in {
  text-align: center;
}

#email,
#password {
  border-radius: 0;
}

.welcome {
  margin-top: -15px;
  margin-bottom: -20px;
}

.sign-in-card {
  margin-top: 30px;
  margin-bottom: 15px;
  border-radius: 0;
  background: white;
  border: 0;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.sign-in-title {
  text-align: center;
  background-color: #0A2737;
  color: #fff;
}

.sign-in-btn {
  background: #FC891B;
  color: #fff;
  border: 1px solid white;
  border-radius: 0;
  width: 200px;
  margin-top: 5px;
}

.sign-in-btn:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.sign-out-btn {
  background: #FC891B;
  color: #fff;
  border: none;
  border: 1px solid white;
  border-radius: 0;  
  margin-top: -5px;
}

.sign-out-btn:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

#crna-add-date-card {
  border: 1px solid #0A2737;
  border-radius: 0;
}

.add-date-title {
  text-align: center;
  background-color: #0A2737;
  color: #fff;
  border-radius: 0;
  padding: 15px;
  font-weight: 100;
}

.calendar {
  margin-bottom: 30px;
  border-radius: 0;
  background: #0A2737;
  border: 0;
}

.prev, 
.next {
  font-size: 25px;
  color: white;
  border-radius: 50px;
}

.prev:hover {
  color: #FC891B;
}

.next:hover {
  color: #FC891B;
}

.weekday {
  width: 35px;
  height: 35px;
  text-align: center;
  border-radius: 50px;
  padding: 5px;
  margin: 2px;
  background: #0A2737;
  border: 1px solid #0A2737;
  color: white;
}

.weekday:hover {
  width: 35px;
  height: 35px;
  text-align: center;
  border-radius: 50px;
  padding: 5px;
  margin: 2px;
  background: #0A2737;
  border: 1px solid #0A2737;
  color: white;
}

.number {
  width: 35px;
  height: 35px;
  text-align: center;
  border-radius: 50px;
  padding: 5px;
  margin: 2px;
  background: #0A2737;
  border: 1px solid #0A2737;
  color: white;
}

.number:hover {
  background: #FC891B;
  box-shadow: 3px 3px 8px 1px rgb(6, 27, 37);
  border: 1px solid #0A2737;
}

.oct {
  width: 35px;
  height: 35px;
  text-align: center;
  border-radius: 50px;
  padding: 5px;
  margin: 2px;
  background: #0A2737;
  border: 1px solid #0A2737;
  color: rgba(255, 255, 255, 0.603);
}

.oct:hover {
  background: #0A2737;
  box-shadow: none;
  border: 1px solid #0A2737;
  color: rgba(255, 255, 255, 0.603);
}

.main-card {
  margin-top: 30px;
  margin-bottom: 30px;
  box-shadow: 3px 5px 8px 2px #33333375;
  border-radius: 0;
  border: none;
  background-color: #fff;
  /* background-image: radial-gradient(#999999, #eeeeee); */
  /* background: url("https://www.toptal.com/designers/subtlepatterns/patterns/handmadepaper.png"); */
}



.days-selected-title {
  text-align: center;
  text-align: center;
  background-color: #0A2737;
  color: #fff;
  border-radius: 0;
  padding: 15px;
  font-weight: 100;
}

.days-selected {
  margin-bottom: 30px;
  border-radius: 0;
  background: white;
  border: 1px solid #0A2737;
  min-height: 500px;
}

#days-selected-footer {
  padding: 15px;
}

.card-footer {
  background: #0A2737;
  border-radius: 0 !important;
}

.speech-bubble {
	position: relative;
	background: #eeeeee;
  border-radius: .4em;
  padding: 15px; 
  color: #0A2737;
}

.speech-bubble-2 {
	position: relative;
	background: #eeeeee;
  border-radius: .4em;
  padding: 15px; 
  color: #0A2737;
  text-align: center;
}

#calendar {
  padding: 0 0 0 5px;
}

.morganbot {
  margin-bottom: 15px;
  overflow: hidden;
  border: 1px solid #0A2737;
  border-radius: 0;
  font-weight: 400 !important;
  max-width: 420px;
  box-shadow: 8px 8px 8px 2px #222222;
}

.morganbot-title {
  text-align: center;
  background-color: #0A2737;
  color: #fff;
  border-radius: 0;
  padding: 15px;
  font-weight: 100;
}

.morganbot-text-area {
  max-height: 325px;
  overflow: scroll;
  text-align: left !important;
}

.spinner-grow,
.spinner-grow-sm {
  color: #0A2737;
}

.modal-content {
  margin: 20px;
  color: #0A2737;
  margin-bottom: 30px;
  border-radius: 0;
  box-shadow: 10px 10px 25px 2px #3a3a3a6e;
  border: 0;
  min-height: 250px;
}

.modal-header {
  text-align: center !important;
  background-color: #0A2737;
  color: #fff;
  border-radius: 0;
}

.modal-title {
  text-align: center !important;
  font-weight: 100;
  font-size: 28px;
}

.modal-body {
  text-align: left;
}

.modal-footer {
  background: #0A2737;
  border-radius: 0 !important;
}

.close {
  display: none;
  color: #0A2737;
}

.close:hover {
  color:#FC891B;
}

.modal-close-btn  {
  background: #FC891B;
  color: #fff;
  float: right;
  border: 1px solid #0A2737;
  border-radius: 0;
  width: 100%;
  margin-top: 10px;
  margin-bottom: 10px;
}

.modal-close-btn:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.clear-dates {
  background: #FC891B;
  color: #fff;
  border: 1px solid #0A2737;
  border-radius: 0;
}

.clear-dates:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.submit-dates {
  background: #FC891B;
  color: #fff;
  border: none;
  border: 1px solid #0A2737;
  border-radius: 0;
}

.submit-dates:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

.days-scheduled-card {
  border-radius: 0;
  background: white;
  border: 1px solid #0A2737;
  margin-bottom: 10px;
}

.days-scheduled-title {
  text-align: center; 
  background: #0A2737;
  color:#fff; 
  font-weight: 100; 
}

#special-frame-div-id {
  min-height: 351px;
  min-width: 390px;
}

#date-list-calendar-frame {
  min-height: 351px;
  min-width: 390px;
  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%;
  margin-right: 15px;
}

.test-feedback {
  border: 1px solid #0A2737;
  padding: 10px;
}


.call-btn {
  background: #FC891B;
  color: #fff;
  float: right;
  border: 1px solid white;
  border-radius: 0;
  cursor: pointer;
  width: 100%;
  margin-top: 10px;
}
  
.call-btn:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}

/* Schedule Key */

.key {
  padding-bottom: 15px;
}

.key-all,
.key-submitted,
.key-available,
.key-tentative,
.key-scheduled,
.key-canceled {
  padding: 5px;
}

.key-scheduled {
  background-color: rgba(0, 128, 0, 0.404) !important;
}


.key-canceled {
  background-color: rgba(255, 0, 0, 0.493) !important;
}




/* Days Scheduled Style */

div.calendar-row,
div.calendar-row ul.submitted, 
div.calendar-row ul.available,
div.calendar-row ul.tentative,
div.calendar-row ul.scheduled,
div.calendar-row ul.canceled {
  display: none;
}

/* Status Column */

.status-text {
  padding-left: 3px;
}

li {
  display: inline-block;
}

ul {
  padding-left: 0 !important;
}

.stat-progress-1,
.stat-progress-2,
.stat-progress-3 {
  width: 6px;
  border: 1px solid rgba(10, 39, 55, 0.5);
  border-radius: 3px;
  padding: 6px;
  margin: 3px 3px 0px 3px;
  background-color: white;
}

div.calendar-row.submitted,
div.calendar-row.available,
div.calendar-row.tentative,
div.calendar-row.scheduled,
div.calendar-row.canceled {
  display: flex;
}

div.calendar-row.available .stat-progress-1,
div.calendar-row.tentative .stat-progress-1,
div.calendar-row.scheduled .stat-progress-1,
div.calendar-row.canceled .stat-progress-1 {
  width: 6px;
  border: 1px solid rgba(10, 39, 55, 0.5);
  border-radius: 3px;
  padding: 6px;
  margin: 3px 3px 0px 3px;
  background-color: rgb(141, 247, 141);
}

div.calendar-row.tentative .stat-progress-2,
div.calendar-row.scheduled .stat-progress-2,
div.calendar-row.canceled .stat-progress-2 {
  width: 6px;
  border: 1px solid rgba(10, 39, 55, 0.5);
  border-radius: 3px;
  padding: 6px;
  margin: 3px 3px 0px 3px;
  background-color: rgb(54, 161, 54);
}

div.calendar-row.scheduled .stat-progress-3 {
  width: 6px;
  border: 1px solid rgba(10, 39, 55, 0.5);
  border-radius: 3px;
  padding: 6px;
  margin: 3px 3px 0px 3px;
  background-color: green;
}

div.calendar-row.canceled .stat-progress-3 {
  width: 6px;
  border: 1px solid rgba(10, 39, 55, 0.5);
  border-radius: 3px;
  padding: 6px;
  margin: 3px 3px 0px 3px;
  background-color: red;
}

/* Status Row Color */

div.calendar-row.scheduled {
  display: flex;
  background-color: rgba(0, 128, 0, 0.404) !important;
}

div.calendar-row.canceled {
  display: flex;
  background-color: rgba(255, 0, 0, 0.493) !important;
}

/* Facility Column */

div.calendar-row.submitted .facility,
div.calendar-row.available .facility,
div.calendar-row.tentative .facility {
  visibility: hidden;
}

div.calendar-row.scheduled .facility,
div.calendar-row.canceled .facility {
  visibility: visible;
}


/* Notes Column */

.notes-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 400px;
}

.notes-text:hover {
  color: #E68036;
}

.notes {
  cursor: pointer;
}


/* Days Processed card-body */

.days-processed {
  padding: 15px 30px 15px 30px;
}

.top-row {
  padding-top: 5px;
  padding-bottom: 5px;
  background: #0A2737;
  color: white;
  border: 1px solid #0A2737;
}

.calendar-row {
  padding-top: 15px;
  background: white;
  color: #0A2737;
  border: 1px solid #0A2737;
}

#month {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.date {
  padding-bottom: 15px;
}


#date-list-calendar-frame {
  margin: 0;
}



/* Button used to open the chat form - fixed at the bottom of the page */

.open-button {
  background: #FC891B;
  color: #fff;
  float: right;
  border: 1px solid white;
  border-radius: 0;
  cursor: pointer;
  width: 100%;
  margin-top: 10px;
}

.open-button:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}


/* The popup chat - hidden by default */

.chat-popup {
  display: none;
  position: absolute;
  bottom: -25px;
  right: 1px;
  border: 1px solid #0A2737;
  z-index: 9;
}

/* Add styles to the form container */
/* .form-container {
  max-width: 425px;
  padding: 10px;
  background-color: white;
  box-shadow: 3px 5px 10px 2px #999999;
} */

/* Full-width textarea */
/* .form-container textarea {
  width: 100%;
  padding: 15px;
  margin: 5px 0 22px 0;
  border: none;
  background: #f1f1f1;
  resize: none;
  min-height: 200px;
} */

/* When the textarea gets focus, do something */
/* .form-container textarea:focus {
  background-color: #ddd;
  outline: none;
} */

/* Set a style for the submit/send button */
/* .form-container .btn {
  background-color: #4CAF50;
  color: white;
  padding: 16px 20px;
  border: none;
  cursor: pointer;
  width: 100%;
  margin-bottom:10px;
  opacity: 0.8;
} */

/* Add a red background color to the cancel button */
/* .form-container .cancel {
  background-color: red;
} */

.cancel {
  background: #FC891B;
  color: #fff;
  float: right;
  border: 1px solid #0A2737;
  border-radius: 0;
  width: 100%;
  margin-top: 15px;
  margin-bottom: 15px;
}

.cancel:hover {
  background: #fff;
  color: #0A2737;
  border: 1px solid #0A2737;
}





/* RESPONSIVE STYLES */

/* Extra small devices (portrait phones, less than 576px) */
@media (min-width: 300px) and (max-width: 374px) { 

  .top-bar {
    text-align: center;
  }
  
  .logo {
    width: 250px !important;
  }

  .sign-in-btn {
    float: none;
    text-align: center;
    width: 100%;
  }

  #month {
    font-size: 16px;
  }

  .weekday {
    width: 22px;
    height: 22px;
  }

  .number {
    width: 25px;
    height: 22px;
    font-size: 16px;
    padding: 0;
    margin: 0;
  }

  .spinner-grow, .spinner-grow-sm {
    width: 10px;
    height: 10px;
  }

  .footer-text {
    font-size: 15px;
    line-height: 15px;
    text-align: center;
    padding-top: 17px;
    padding-bottom: 17px;
  }

  .days-selected-title {
   text-align: center;
   background-color: #0A2737;
   color: #fff;
  }

  #special-frame-div-id {
    min-height: 340px;
    min-width: 225px;
    margin: -15px;
  }

  .filter-btn {
    margin: 20px 0 0 0;
    width: 97px;
  }

  /* Days Processed */

  .days-processed {
    padding: 0 25px 10px 25px;
  }

  .top-row {
    display: none;
  }

  .calendar-row {
    padding-top: 0;
    margin-top: 10px;
  }

  .date {
    padding: 5px;
    margin-bottom: 20px;
    background: #0A2737;
    color: white;
    text-align: center;
  }

  .status {
    text-align: center;
    margin-top: -10px;
    margin-bottom: -10px;
  }

  .notes,
  .facility {
    margin-bottom: 10px;
    text-align: center;
  }

  label {
    font-size: 15px;
  }

  #add-date-form {
    height: 450px;
  }

  #date-list-calendar-frame {
    min-height: 360px;
    min-width: 225px;
    padding-top: 30px !important;
    margin: 0;
    border-radius: 5px;
  }

  .wrapper .full-size {
    width: 225px;
  }

  .open-button {
    float: none;
  }
  
  #morganbot-button {
    text-align: center;
    margin-top: 10px;
  }

}

@media (min-width: 375px) and (max-width: 500px) { 

  .top-bar {
    text-align: center;
  }
  
  .logo {
    width: 300px !important;
  }

  .sign-in-btn {
    float: none;
    text-align: center;
    width: 100%;
  }

  #month {
    font-size: 22px;
  }

  .weekday {
    width: 30px;
    height: 30px;
  }

  .number {
    width: 30px;
    height: 30px;
  }

  .footer-text {
    font-size: 18px;
    text-align: center;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  /* Calendar input iframe  */

  #special-frame-div-id {
    min-height: 340px;
    min-width: 225px;
  }

  #add-date-form {
    height: 450px;
  }

  #date-list-calendar-frame {
    min-height: 360px;
    min-width: 220px;
    padding-top: 30px !important;
    overflow: hidden;
    margin: 0;
    border-radius: 5px;
  }

  .wrapper .full-size {
    width: 275px;
  }

  .filter-btn {
    margin: 20px 10px 0 0;
    width: 100px;
  }

  /* Days Processed */

  .days-processed {
    padding: 0 25px 10px 25px;
  }

  .top-row {
    display: none;
  }

  .calendar-row {
    padding-top: 0;
    margin-top: 10px;
  }

  .date {
    padding: 5px;
    margin-bottom: 20px;
    background: #0A2737;
    color: white;
    text-align: center;
  }

  .status {
    text-align: center;
    margin-top: -10px;
    margin-bottom: -10px;
  }

  .notes,
  .facility {
    margin-bottom: 10px;
    text-align: center;
  }

  .open-button {
    float: none;
  }
  
  .morganbot-button {
    text-align: center;
    margin-top: 10px;
  }
    
}

@media (min-width: 501px) and (max-width: 820px){

  .top-bar {
    text-align: center;
  }

  .logo {
    width: 300px !important;
    padding-top: 15px;
  }
  
  .sign-in-btn {
    float: none;
    text-align: center;
    width: 100%;
  }

  .days-selected-title {
    text-align: center;
  }

  .open-button {
    float: none;
  }
  
  .morganbot-button {
    text-align: center;
    margin-top: 10px;
  }

  /* Calendar input iframe  */

  #add-date-form {
    height: 450px;
  }

  #date-list-calendar-frame {
    min-height: 360px;
    min-width: 375px;
    padding-top: 30px !important;
    overflow: hidden;
    margin: 0;
    border-radius: 5px;
  }

  .wrapper .full-size {
    width: 375px;
  }

  .filter-btn {
    margin: 20px 10px 0 0;
    width: 150px;
  }

  /* Days Processed */

  .days-processed {
    padding: 0 25px 10px 25px;
  }

  .top-row {
    display: none;
  }

  .calendar-row {
    padding-top: 0;
    margin-top: 10px;
  }

  .date {
    padding: 5px;
    margin-bottom: 20px;
    background: #0A2737;
    color: white;
    text-align: center;
  }

  .status {
    text-align: center;
    margin-top: -10px;
    margin-bottom: -10px;
  }

  .notes,
  .facility {
    margin-bottom: 10px;
    text-align: center;
  }

  .wkday {
    width: 40px;
    text-align: center;
    font-weight: bold;
    margin-left: 20px;
  }

  .day {
    width: 40px;
    text-align: center;
    border: 1px solid #eeeeee; 
    border-radius: 100px;
    margin-left: 20px;
  }

  .footer-text {
    text-align: center;
  }

}

@media (min-width: 768px) and (max-width: 821px) {
  #signed-in {
    margin: 0;
  }

  .filter-btn {
    margin: 20px 0 0 0;
    width: 150px;
  }

  /* Days Processed */

  .days-processed {
    padding: 0 25px 10px 25px;
  }

  .top-row {
    display: none;
  }

  .calendar-row {
    padding-top: 0;
    margin-top: 10px;
  }

  .date {
    padding: 5px;
    margin-bottom: 10px;
    background: #0A2737;
    color: white;
    text-align: center;
  }

  .status {
    text-align: center;
    margin-top: 1px;
    margin-bottom: -10px;
  }

  .notes,
  .facility {
    margin-bottom: 10px;
    text-align: center;
  }

}



@media (min-width: 821px) and (max-width: 991px){
  
  .top-bar {
    text-align: center;
  }

  .logo {
    width: 300px !important;
    padding-top: 15px;
  }

  #signed-in {
    margin: 0;
  }

  #month {
    font-size: 22px;
  }

  .weekday {
    width: 30px;
    height: 30px;
  }

  .number {
    width: 30px;
    height: 30px;
  }

  .footer-text {
    font-size: 18px;
    text-align: center;
  }

  .days-selected-title {
    text-align: center;
  }

  .filter-btn {
    margin: 20px 10px 0 0;
    width: 150px;
  }

  /* Days Processed */

  .days-processed {
    padding: 0 25px 0 25px;
  }

  .top-row {
    display: none;
  }

  .calendar-row {
    padding-top: 0;
    margin-top: 10px;
  }

  .date {
    padding: 5px;
    margin-bottom: 20px;
    background: #0A2737;
    color: white;
    text-align: center;
  }

  .status {
    text-align: center;
    margin-top: -10px;
    margin-bottom: -10px;
  }

  .notes,
  .facility {
    margin-bottom: 10px;
    text-align: center;
  }

}

@media (min-width: 992px) {
  #signed-in {
    width: 98%;
  }

}
