body {
  height: auto;
  /* fix (hack) extra space at bottom caused by fixed menu and header */
}
/* Use a pointer icon when hovering over tabs*/
.tabular .item {
  cursor: pointer;
}
.strikethrough {
  text-decoration: line-through;
}
.ui.dropdown.small {
  height: 31px;
  font-size: 12px;
}
.ui.positive.message.mandrill {
  margin-bottom: .5em !important;
}
.ui.negative.message.mandrill {
  margin-bottom: .5em !important;
}
.metricdropdown--options {
  height: 100px !important;
  border-radius: 5px;
  background: #e8e8e8;
  border: none !important;
  line-height: 26px;
}
.metricdropdown--options option {
  padding: 4px 2px 1px 6px;
  min-height: 20px;
}
.metricdropdown--options-closed {
  height: 26px !important;
}
.info_ownerenquiryactions:before {
  font-size: 16px;
  position: relative;
  top: 3px;
  cursor: help;
}
.metricdropdown {
  border-radius: 5px;
  background: #e8e8e8;
  border: none !important;
  height: 26px !important;
  line-height: 26px;
}
.metricdropdown input {
  background: none !important;
  border: none !important;
  height: 26px !important;
  line-height: 26px;
}
.ui.form .field > label {
  font-size: 0.85em !important;
  color: #767676 !important;
  display: block;
}
.inline.field > div {
  display: inline-block;
}
.inline.field .ui.search .ui.input input {
  height: 38px;
  padding: .5em;
  border: 1px solid rgba(34, 36, 38, 0.15);
  visibility: visible;
}
.ui.form .column > label {
  font-size: 0.85em !important;
  color: #767676 !important;
  display: inline-block;
  text-align: right;
  width: 100%;
  text-transform: lowercase;
}
.popup .ui.form .field > label {
  font-size: 0.85em !important;
  color: #767676 !important;
  width: 40px !important;
}
.ui.form .required.field > .checkbox:after,
.ui.form .required.field label:first-child:after,
.ui.form .required.fields.grouped > label:after,
.ui.form .required.fields:not(.grouped) > .field > .checkbox:after,
.ui.form .required.fields:not(.grouped) > .field > label:after {
  margin: -0.2em 0 0 0.2em;
  content: '*';
  color: #A63133;
}
.ui.form .field.indent {
  margin-left: 4rem;
}
.ui.form .field {
  padding: 0.25em;
  margin: 0;
}
.ui.form.wide .field {
  padding: 0;
  margin: 0;
  width: 100%;
}
.ui.form .grid {
  margin: 0;
}
.withBorder {
  border: 1px solid #ddd !important;
  width: 100%;
  padding: 15px;
  background-color: #fff;
}
.icon.button {
  /*padding: 0.5em !important;*/
}
.buttons.potentialcancellations {
  width: 100%;
}
.buttons.potentialcancellations > .button.potentialcancellation {
  margin-bottom: 1em;
}
.buttons.potentialcancellations > .button.potentialcancellation:last-of-type {
  margin-bottom: 0;
}
.buttons.spaced {
  font-size: 14px;
}
.buttons.spaced > .button {
  margin-left: 3px;
}
.inline.field .icon.button.right {
  float: right;
  margin-top: -3px;
}
.editable {
  position: relative;
}
.editable.icon {
  color: #00799E;
  background: none !important;
  visibility: hidden;
  margin: 0 0 0 0.4em !important;
  padding: 0 !important;
}
.editable.icon :hover {
  color: #00799E;
}
.editable.icon.EditBlock {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
}
.ui.table.withactions > thead > tr > td:last-child,
.ui.table.withactions > tbody > tr > td:last-child {
  text-align: right;
}
.td-report-wrapper {
  word-break: break-word;
}
.editable:hover .editable.icon {
  visibility: visible;
}
textarea {
  width: 100%;
}
/* Used for headers with optional right floated buttons, may well need to change */
.ui.clearing.segment {
  box-shadow: none;
  margin: 0;
  padding: 0;
  border-radius: 0;
  border: 0;
  background: none;
  width: 100%;
}
.ui.clearing.segment.dividing {
  box-shadow: none;
  margin: 0 0 12px 0;
  padding: 0;
  border-radius: 0;
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
  background: none;
}
.ui.dimmer {
  z-index: 3;
}
.ui.hidden.divider {
  margin: 0;
}
/* Status panel */
.grid.withRowDividers {
  margin-bottom: 1rem;
}
.grid.withRowDividers .row {
  border-bottom: 1px solid rgba(34, 36, 38, 0.15);
  padding: 0.5rem 0;
}
.grid.withRowDividers .row.extraPadding {
  padding: 1rem 0;
}
.grid.withRowDividers .row:last-child {
  border: 0;
}
.ui.accordion .item {
  background: #fff;
}
/* documents */
.drop-zone {
  border: 1px dashed #CCC;
  padding: 40px;
  text-align: center;
}
.drop-zone.dragOver {
  background-color: #FF9;
}
.ui.segment.tabsPanel > .drop-zone {
  margin-bottom: 1rem;
}
.ui.items > .item > .content > .header {
  font-weight: 300;
  width: 100%;
}
.ui.header .icon:only-child {
  margin: 0;
}
.ui.voucher-hp {
  padding-left: 3.5px;
}
.ui.voucher-restricted {
  padding-left: 18px;
}
/** Remove top margin from tabular menu when it is within a panel **/
.segment > .tabular.menu {
  margin-top: 0;
}
.ui.form .editMode {
  background: #f5f5f5;
  margin: 10px 0;
  padding: 7px 0;
}
label {
  font-size: 0.85em;
  color: #767676;
  text-transform: lowercase;
}
label.preserveCase {
  text-transform: none !important;
}
abbr {
  font-size: 0.85em;
  text-transform: lowercase;
}
.chartSelect {
  margin: 10px 0;
}
.keyToggle {
  text-transform: uppercase;
  font-weight: 300;
  color: #00799E;
  cursor: pointer;
}
.availabilityKey .keyBlock {
  display: inline-block;
  border: 1px solid #767676;
  width: 16px;
  height: 16px;
  vertical-align: top;
}
.availabilityKey span {
  line-height: 16px;
  text-transform: uppercase;
  font-size: 0.8em;
}
.popupHack {
  width: 100%;
  height: 500px;
}
.bookingPopup,
.helpPopup {
  width: 400px;
  font-size: 0.85em;
  text-transform: none;
  text-align: left;
}
.bookingPopup {
  width: 225px;
}
.popupHeader {
  text-align: center;
}
.warning {
  text-transform: uppercase;
  color: #A63133;
}
.bookingHeader {
  font-size: 0.95em;
}
.bookingHeader .ui.grid > .column:not(.row) {
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}
.bookingHeader label {
  display: inline-block;
}
.largeBookingDates {
  font-weight: 300;
  font-size: 1.5rem;
  text-align: center;
}
.popupTrigger {
  cursor: pointer;
}
.ui.form .field.paymentDetail {
  display: none;
}
/* Hack to allow sorting on dates where the format displayed breaks sort ordering */
.invisSort {
  display: none;
}
.priceInput,
.ui.form input.priceInput {
  width: 80px;
}
/* Google Maps */
.gm-style {
  font-family: inherit;
}
.gm-style .gm-style-iw {
  font-weight: normal;
}
.gm-style-iw > div {
  overflow: hidden !important;
}
td.isMinimumPrice {
  color: #f44;
}
.ui.table tr td.tableTotal {
  border-top: 1px solid black;
}
.isOverridePrice {
  color: #44c;
}
input {
  vertical-align: middle;
}
.ui.header > .icon.help-ecru,
.ui.header > .icon.question,
.ui.header > .icon.question-circle {
  font-size: 1em;
  margin-bottom: 8px;
  opacity: 0.5;
  cursor: help;
}
.ui.header > .icon.question {
  font-size: 1em;
  margin-bottom: 8px;
  opacity: 0.5;
  cursor: help;
}
/* Change cursor to a hand when over a row that can be dragged */
[draggable=true] {
  cursor: move;
}
.closeButton {
  position: absolute;
  top: 12px;
  right: 12px;
}
.closeButton.panelAlignRight {
  position: static;
  display: block;
  margin: -7px 0 0 auto;
}
.tableActions {
  white-space: nowrap;
}
/* Property descriptions, note texts, template elements, etc */
.plainText,
.note .notetext {
  white-space: pre-wrap;
  word-break: break-word;
}
.ellipses {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Changes from the Ecru feedback, need to tidy up */
.viewContactField .ui.grid .row {
  padding: 0.25em;
}
.center.align {
  text-align: center;
  display: inline-block;
  width: 100%;
}
.searchResultsText {
  line-height: 42px;
}
select.ui.button {
  -webkit-appearance: button;
  -moz-appearance: button;
}
.ui.grid .row.notoppad {
  padding-top: 0px;
}
.ui.grid .row.nobottompad {
  padding-bottom: 0px;
}
.ui.grid > .row.flex {
  gap: 1rem;
}
.ui.grid > .row.flex > * {
  margin-top: 0;
  margin-bottom: 0;
}
.ui.grid > .row.flex > button {
  align-self: flex-end;
}
.ui.basic.segment.nopadding {
  padding: 0px;
}
.tabscontextmenu:before {
  display: none;
}
@media only screen and (min-width: 768px) {
  .adminSidebar {
    position: fixed;
    overflow: auto;
    top: 147px;
    bottom: 0;
    width: 25%;
    left: 0;
    padding: 1em 1em 1em 2em;
  }
}
.prev_next_group {
  position: absolute;
  top: -27px;
  right: 0;
}
.wordbreak {
  word-break: break-word;
}
.button.help {
  position: fixed;
  bottom: 1rem;
  right: 1rem;
  border-radius: 50%;
  height: 2rem;
  width: 2rem;
  line-height: 1rem;
  padding: 0;
  margin: 0;
  font-weight: bold;
}
.tabs-sidebar--toggle,
.tabs-sidebar--drawer {
  position: fixed;
  z-index: 9999;
}
.tabs-sidebar--toggle {
  top: 1rem;
  right: 1rem;
  cursor: pointer;
}
@media only screen and (min-width: 768px) {
  .tabs-sidebar--toggle {
    bottom: 1rem;
    top: auto;
  }
}
.tabs-sidebar--drawer {
  top: 0;
  right: -100%;
  width: 100%;
}
@media only screen and (min-width: 768px) {
  .tabs-sidebar--drawer {
    right: -50%;
    width: 50%;
  }
}
.tabs-sidebar--drawer,
.tabs-sidebar--drawer > * {
  height: 100%;
  overflow-y: auto;
}
.tabs-sidebar--drawer[open] {
  right: 0;
}
.tabs-card {
  border-radius: 3px;
  background: white;
  width: 100%;
  box-shadow: 0 1px 3px 0 #d4d4d5, 0 0 0 1px #d4d4d5;
}
.tabs-card + .tabs-card {
  margin-top: 1rem;
}
.tabs-card > .content {
  padding: 1rem;
  width: 100%;
  display: block;
}
.tabs-card > .content > .tabsHeader > .header:first-of-type {
  font-weight: bold;
}
.tabs-card > .content pre {
  white-space: pre-line;
  font-family: Lato;
}
.tabs-card > .content .img {
  display: block;
  width: 100%;
  max-height: 300px;
  overflow: hidden;
}
.tabs-card > .content .img img {
  max-width: 100%;
}
.tabs-card > .content > *:not(.tabsHeader) {
  margin-bottom: 1rem;
}
.tabs-card > .content > *:last-child {
  margin-bottom: 0;
}
.tabs-card > .content + .content {
  border-top: 1px solid #d4d4d5;
  background: #EEE;
}
.tabs-card .meta {
  font-size: 1em;
  color: rgba(0, 0, 0, 0.4);
}
.selectfilterfield--withfilter {
  word-break: break-all;
}
.button-grid {
  display: flex;
  flex-wrap: wrap;
}
.button-grid > * {
  width: 50%;
  padding-bottom: 1rem;
}
.button-grid > *:nth-child(odd) {
  padding-right: 1rem;
}
.button-grid > * .button {
  width: 100%;
  display: block;
}
.drop-zone + .withRowDividers {
  margin-top: 1rem;
}
.ui.form .monaco-editor textarea {
  padding: inherit;
  background: inherit;
  border: inherit;
  color: inherit;
  border-radius: inherit;
  box-shadow: inherit;
  margin: inherit;
  transition: inherit;
  resize: inherit;
}
.ui.form .monaco-editor textarea:not([rows]) {
  min-height: inherit;
  max-height: inherit;
}
.ui.form .monaco-editor input[type=checkbox],
.ui.form .monaco-editor textarea {
  vertical-align: inherit;
}
.monaco-form-field section {
  border: 1px solid #eee;
}
.tabs__app-actions {
  position: fixed;
  bottom: 1rem;
  left: 2rem;
  z-index: 2;
  display: flex;
  align-items: flex-end;
}
.tabs__app-actions > .tabsPanel {
  width: 400px;
  display: inline-block;
  box-shadow: 5px 5px 5px #CCC;
  padding: 0;
  margin-bottom: 0;
  max-height: 75vh;
  display: flex;
  flex-direction: column;
}
.tabs__app-actions > .tabsPanel .tabsHeader {
  background-color: #00799e;
  flex: 0 0 auto;
}
.tabs__app-actions > .tabsPanel .tabsHeader .divider {
  border: 0 none;
  margin: 0;
}
.tabs__app-actions > .tabsPanel .tabsHeader .header {
  color: white;
  margin: 0 !important;
  font-weight: bold;
}
.tabs__app-actions > .tabsPanel .tabsHeader,
.tabs__app-actions > .tabsPanel .tabsPanel__content {
  padding: 1rem;
  overflow: auto;
}
.tabs__app-actions > .tabsPanel .tabsHeader p,
.tabs__app-actions > .tabsPanel .tabsPanel__content p {
  margin-bottom: .5em;
}
.tabs__app-actions > .tabsPanel .tabsPanel__content.hidden {
  display: none;
}
.tabs__app-actions > .tabsPanel + .tabsPanel {
  margin-left: 1rem;
}
.icon.floated.right {
  float: right;
}
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
.align-content-center {
  align-content: center;
}
/* slightly hacky tweaks for responsive menus, to be rolled into semantic proper where possible. */
.ui.grid > .row.menu.top {
  padding: 0;
}
.ui.grid > .row.menu.top .logo {
  width: 75px;
  height: 42px;
}
.ui.grid > .row.menu.bottom {
  padding: 0;
}
.ui.grid > .row.menu.bottom .logo {
  width: 40px;
}
.ui.grid > .row.menu.bottom .desc,
.ui.grid > .row.menu.bottom .header.item {
  display: none;
}
.pageHeader {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  z-index: 4;
  top: 64px;
  left: 0;
  right: 0;
  padding-top: 8px;
}
.pageHeaderFixed {
  position: fixed;
}
@media only screen and (min-width: 768px) {
  .pageHeader .grid .row {
    padding: 0.5rem 0;
  }
  .mainPage {
    margin-top: 150px;
    padding-top: 0.5rem;
  }
  .mainPage.testing {
    margin-top: -158px;
  }
}
.ui.menu.fixed {
  z-index: 5;
}
.ui.breadcrumb {
  text-transform: uppercase;
}
.ui.breadcrumb:first-child {
  margin-top: 8px;
}
.menu.top .item {
  text-transform: uppercase;
  font-size: 0.85rem;
}
.ui.menu.top .dropdown.item .menu {
  font-size: 1rem;
  overflow: auto;
  max-height: calc(100vh - 64px);
}
.capitalize {
  text-transform: capitalize;
}
@media only screen and (max-width: 767px) {
  .pageHeader {
    background-color: #fff;
    position: relative;
    top: 0;
    height: auto;
    padding-bottom: 0.5rem;
    margin-bottom: 2rem;
  }
  .ui.container.mainPage {
    margin-top: 0 !important;
  }
  .bottomMenuPad {
    height: 45px;
  }
  body {
    padding-bottom: 30px;
  }
}
.ui.inverted.menu .item.menuActive {
  background: #555;
}
.marginTop {
  margin-top: 1rem;
}
.menuActive:after {
  content: ' ';
  width: 0px;
  height: 10px;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-bottom: 6px solid white;
  display: inline-block;
  position: absolute;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  left: 0;
  right: 0;
}
ul.ui.list {
  margin: 0;
}
.ui.small.loader {
  font-size: 14px;
  width: 33px;
  height: 30px;
}
.changeHistoryLink {
  margin-top: 1em;
}
.searchfilter.ui.form .field > label {
  text-align: left;
}
.searchfilter_accordion_field label,
.searchfilter_accordion_field select,
.searchfilter_accordion_field input[type=text] {
  width: 50% !important;
}
/* Availability */
/* Modifiers for when lodge children still have availability - must be a better way of doing this */
.availMonth .day,
.availGrid .day {
  border: solid 1px #999;
  background: #fff;
  margin: 1px;
  text-align: left;
  color: black;
  overflow: hidden;
}
.availMonth .day.potential,
.availGrid .day.potential {
  background-color: #C9E0AB;
}
.availMonth .day.cancelledconfirmed,
.availGrid .day.cancelledconfirmed {
  background-color: #e1d940;
}
.availMonth .day.webbooking,
.availGrid .day.webbooking {
  background-color: #56A3AD;
}
.availMonth .day.flexiletbooking,
.availGrid .day.flexiletbooking {
  background-color: #D6C2DE;
}
.availMonth .day.specialofferavailable,
.availGrid .day.specialofferavailable {
  border: 2px solid #AF182C !important;
}
.availMonth .day.specialofferunavailable,
.availGrid .day.specialofferunavailable {
  border: 2px solid #1C64AC !important;
}
.availMonth .day.transferred,
.availGrid .day.transferred {
  background-color: #edf5e3;
}
.availMonth .day.owner,
.availGrid .day.owner {
  background-color: #7BAFDE;
}
.availMonth .day.invalid,
.availGrid .day.invalid {
  background-color: red;
}
.availMonth .day.unavailable,
.availGrid .day.unavailable {
  background: repeating-linear-gradient(45deg, #7BAFDE, #7BAFDE 4px, #b8d4ed 4px, #b8d4ed 7px);
}
.availMonth .day.unavailable.stillavailability,
.availGrid .day.unavailable.stillavailability {
  background: repeating-linear-gradient(45deg, #f5f9fd, #f5f9fd 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day.unavailablenonlet,
.availGrid .day.unavailablenonlet {
  background: repeating-linear-gradient(45deg, #FF6600, #FF6600 4px, #ff944d 4px, #ff944d 7px);
}
.availMonth .day.unavailablenonlet.stillavailability,
.availGrid .day.unavailablenonlet.stillavailability {
  background: repeating-linear-gradient(45deg, #ffc299, #ffc299 4px, #fff0e6 4px, #fff0e6 7px);
}
.availMonth .day.cancelled,
.availGrid .day.cancelled {
  background: repeating-linear-gradient(45deg, #efeb98, #efeb98 4px, #fdfcf0 4px, #fdfcf0 7px);
}
.availMonth .day.cancelled.stillavailability,
.availGrid .day.cancelled.stillavailability {
  background: repeating-linear-gradient(45deg, #ffffff, #ffffff 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day.cancelledpriority,
.availGrid .day.cancelledpriority {
  background: repeating-linear-gradient(45deg, #e1d940, #e1d940 4px, #b8b01d 4px, #b8b01d 7px);
}
.availMonth .day.cancelledpriority.stillavailability,
.availGrid .day.cancelledpriority.stillavailability {
  background: repeating-linear-gradient(45deg, #f6f3c4, #f6f3c4 4px, #ebe682 4px, #ebe682 7px);
}
.availMonth .day.confirmed,
.availGrid .day.confirmed {
  background-color: #66AC56;
}
.availMonth .day.confirmed.stillavailability,
.availGrid .day.confirmed.stillavailability {
  background-color: #c3debd;
}
.availMonth .day.provisional,
.availGrid .day.provisional {
  background: repeating-linear-gradient(45deg, #FFBF00, #FFBF00 4px, #ffd24d 4px, #ffd24d 7px);
}
.availMonth .day.provisional.stillavailability,
.availGrid .day.provisional.stillavailability {
  background: repeating-linear-gradient(45deg, #ffe599, #ffe599 4px, #fff9e6 4px, #fff9e6 7px);
}
.availMonth .day.provisionalaccepted,
.availGrid .day.provisionalaccepted {
  background: repeating-linear-gradient(45deg, #66AC56, #66AC56 4px, #94c589 4px, #94c589 7px);
}
.availMonth .day.provisionalaccepted.stillavailability,
.availGrid .day.provisionalaccepted.stillavailability {
  background: repeating-linear-gradient(45deg, #c3debd, #c3debd 4px, #f1f8f0 4px, #f1f8f0 7px);
}
.availMonth .day.bookingbuffer,
.availGrid .day.bookingbuffer {
  background: repeating-linear-gradient(45deg, #7EAFAA, #7EAFAA 4px, #adccc9 4px, #adccc9 7px);
}
.availMonth .day.bookingbuffer.stillavailability,
.availGrid .day.bookingbuffer.stillavailability {
  background: repeating-linear-gradient(45deg, #dceae8, #dceae8 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day.fade,
.availGrid .day.fade {
  border: 1px solid #ddd;
  cursor: default;
}
.availMonth .day.fade .afternoon.cod,
.availGrid .day.fade .afternoon.cod {
  border-color: #aaa;
}
.availMonth .day.fade .dayNum,
.availGrid .day.fade .dayNum {
  color: #ccc;
}
.availMonth .day.today,
.availGrid .day.today {
  border: 2px solid #000;
}
.availMonth .day.today .dayNum,
.availGrid .day.today .dayNum {
  color: #000;
  font-weight: bold;
}
.availMonth .day .morning,
.availGrid .day .morning,
.availMonth .day .afternoon,
.availGrid .day .afternoon {
  position: absolute;
  width: 142%;
  height: 142%;
  top: 100%;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  transform-origin: 0 0;
  overflow: hidden;
}
.availMonth .day .morning.unavailable,
.availGrid .day .morning.unavailable,
.availMonth .day .afternoon.unavailable,
.availGrid .day .afternoon.unavailable {
  background: repeating-linear-gradient(90deg, #7BAFDE, #7BAFDE 4px, #b8d4ed 4px, #b8d4ed 7px);
}
.availMonth .day .morning.unavailable.stillavailability,
.availGrid .day .morning.unavailable.stillavailability,
.availMonth .day .afternoon.unavailable.stillavailability,
.availGrid .day .afternoon.unavailable.stillavailability {
  background: repeating-linear-gradient(90deg, #f5f9fd, #f5f9fd 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day .morning.unavailablenonlet,
.availGrid .day .morning.unavailablenonlet,
.availMonth .day .afternoon.unavailablenonlet,
.availGrid .day .afternoon.unavailablenonlet {
  background: repeating-linear-gradient(90deg, #FF6600, #FF6600 4px, #ff944d 4px, #ff944d 7px);
}
.availMonth .day .morning.unavailablenonlet.stillavailability,
.availGrid .day .morning.unavailablenonlet.stillavailability,
.availMonth .day .afternoon.unavailablenonlet.stillavailability,
.availGrid .day .afternoon.unavailablenonlet.stillavailability {
  background: repeating-linear-gradient(90deg, #ffc299, #ffc299 4px, #fff0e6 4px, #fff0e6 7px);
}
.availMonth .day .morning.cancelled,
.availGrid .day .morning.cancelled,
.availMonth .day .afternoon.cancelled,
.availGrid .day .afternoon.cancelled {
  background: repeating-linear-gradient(90deg, #e1d940, #e1d940 4px, #efeb98 4px, #efeb98 7px);
}
.availMonth .day .morning.cancelled.stillavailability,
.availGrid .day .morning.cancelled.stillavailability,
.availMonth .day .afternoon.cancelled.stillavailability,
.availGrid .day .afternoon.cancelled.stillavailability {
  background: repeating-linear-gradient(90deg, #f6f3c4, #f6f3c4 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day .morning.cancelledpriority,
.availGrid .day .morning.cancelledpriority,
.availMonth .day .afternoon.cancelledpriority,
.availGrid .day .afternoon.cancelledpriority {
  background: repeating-linear-gradient(90deg, #e1d940, #e1d940 4px, #b8b01d 4px, #b8b01d 7px);
}
.availMonth .day .morning.cancelledpriority.stillavailability,
.availGrid .day .morning.cancelledpriority.stillavailability,
.availMonth .day .afternoon.cancelledpriority.stillavailability,
.availGrid .day .afternoon.cancelledpriority.stillavailability {
  background: repeating-linear-gradient(90deg, #f6f3c4, #f6f3c4 4px, #ebe682 4px, #ebe682 7px);
}
.availMonth .day .morning.provisional,
.availGrid .day .morning.provisional,
.availMonth .day .afternoon.provisional,
.availGrid .day .afternoon.provisional {
  background: repeating-linear-gradient(90deg, #FFBF00, #FFBF00 4px, #ffd24d 4px, #ffd24d 7px);
}
.availMonth .day .morning.provisional.stillavailability,
.availGrid .day .morning.provisional.stillavailability,
.availMonth .day .afternoon.provisional.stillavailability,
.availGrid .day .afternoon.provisional.stillavailability {
  background: repeating-linear-gradient(90deg, #ffe599, #ffe599 4px, #fff9e6 4px, #fff9e6 7px);
}
.availMonth .day .morning.provisionalaccepted,
.availGrid .day .morning.provisionalaccepted,
.availMonth .day .afternoon.provisionalaccepted,
.availGrid .day .afternoon.provisionalaccepted {
  background: repeating-linear-gradient(45deg, #66AC56, #66AC56 4px, #94c589 4px, #94c589 7px);
}
.availMonth .day .morning.provisionalaccepted.stillavailability,
.availGrid .day .morning.provisionalaccepted.stillavailability,
.availMonth .day .afternoon.provisionalaccepted.stillavailability,
.availGrid .day .afternoon.provisionalaccepted.stillavailability {
  background: repeating-linear-gradient(45deg, #c3debd, #c3debd 4px, #f1f8f0 4px, #f1f8f0 7px);
}
.availMonth .day .morning.bookingbuffer,
.availGrid .day .morning.bookingbuffer,
.availMonth .day .afternoon.bookingbuffer,
.availGrid .day .afternoon.bookingbuffer {
  background: repeating-linear-gradient(90deg, #7EAFAA, #7EAFAA 4px, #adccc9 4px, #adccc9 7px);
}
.availMonth .day .morning.bookingbuffer.stillavailability,
.availGrid .day .morning.bookingbuffer.stillavailability,
.availMonth .day .afternoon.bookingbuffer.stillavailability,
.availGrid .day .afternoon.bookingbuffer.stillavailability {
  background: repeating-linear-gradient(90deg, #dceae8, #dceae8 4px, #ffffff 4px, #ffffff 7px);
}
.availMonth .day .morning.confirmed,
.availGrid .day .morning.confirmed,
.availMonth .day .afternoon.confirmed,
.availGrid .day .afternoon.confirmed {
  background-color: #66AC56;
}
.availMonth .day .morning.confirmed.stillavailability,
.availGrid .day .morning.confirmed.stillavailability,
.availMonth .day .afternoon.confirmed.stillavailability,
.availGrid .day .afternoon.confirmed.stillavailability {
  background-color: #c3debd;
}
.availMonth .day .warning,
.availGrid .day .warning {
  position: absolute;
  top: 0;
  right: 0;
  background-color: red;
  width: 30px;
  height: 12px;
  transform: rotate(45deg);
  transform-origin: 26px 20px;
}
.availMonth .day *,
.availGrid .day * {
  pointer-events: none;
}
.availMonth .day .morning,
.availGrid .day .morning {
  left: -100%;
  top: 0;
  transform-origin: 1px 0;
  overflow: hidden;
}
.availMonth .day .morning .cancelled,
.availGrid .day .morning .cancelled {
  width: 100%;
  height: 20%;
  transform: rotate(45deg);
  position: absolute;
  bottom: -13%;
}
.availMonth .day .afternoon.cod,
.availGrid .day .afternoon.cod {
  border: 1px solid #777;
}
.availMonth .day .afternoon .cancelled,
.availGrid .day .afternoon .cancelled {
  width: 100%;
  height: 20%;
  transform: rotate(45deg);
  position: absolute;
  top: -4%;
}
.availMonth .day .dayNum,
.availGrid .day .dayNum {
  padding: 3px;
  position: absolute;
  top: 0;
  background: transparent;
  font-size: 0.75em;
  line-height: 1em;
}
.availMonth .day .weekPrice,
.availGrid .day .weekPrice {
  position: absolute;
  bottom: 0;
  width: 100%;
  line-height: 1.2em;
  background-color: #777;
  color: #fff;
  text-align: right;
  padding-right: 1px;
  font-size: 0.75em;
}
.availMonth .day .changeDayFrom,
.availGrid .day .changeDayFrom {
  position: absolute;
  bottom: 3px;
  right: -3px;
}
.availMonth .day .changeDayFrom.fade,
.availGrid .day .changeDayFrom.fade {
  opacity: 0.4;
}
.availMonth .day .changeDayTo,
.availGrid .day .changeDayTo {
  position: absolute;
  bottom: 3px;
  left: 1px;
}
.availMonth .day .changeDayTo.fade,
.availGrid .day .changeDayTo.fade {
  opacity: 0.6;
}
.availMonth .day .changeDayConditions,
.availGrid .day .changeDayConditions {
  position: absolute;
  top: 0px;
  right: -2px;
}
.bookingType {
  padding: 2px 10px;
  display: block;
  text-align: center;
}
.potential {
  background-color: #C9E0AB;
}
.cancelledconfirmed {
  background-color: #e1d940;
}
.webbooking {
  background-color: #56A3AD;
}
.flexiletbooking {
  background-color: #D6C2DE;
}
.specialofferavailable {
  border: 2px solid #AF182C !important;
}
.specialofferunavailable {
  border: 2px solid #1C64AC !important;
}
.transferred {
  background-color: #edf5e3;
}
.owner {
  background-color: #7BAFDE;
}
/* todo: are any of these actually needed? */
.unavailable {
  background: repeating-linear-gradient(45deg, #7BAFDE, #7BAFDE 4px, #b8d4ed 4px, #b8d4ed 7px);
}
.unavailablenonlet {
  background: repeating-linear-gradient(45deg, #FF6600, #FF6600 4px, #ff944d 4px, #ff944d 7px);
}
.cancelled {
  background: repeating-linear-gradient(45deg, #efeb98, #efeb98 4px, #fdfcf0 4px, #fdfcf0 7px);
}
.cancelledpriority {
  background: repeating-linear-gradient(45deg, #e1d940, #e1d940 4px, #b8b01d 4px, #b8b01d 7px);
}
.confirmed {
  background-color: #66AC56;
}
.provisional {
  background: repeating-linear-gradient(45deg, #FFBF00, #FFBF00 4px, #ffd24d 4px, #ffd24d 7px);
}
.provisionalaccepted {
  background: repeating-linear-gradient(45deg, #66AC56, #66AC56 4px, #94c589 4px, #94c589 7px);
}
.bookingbuffer {
  background: repeating-linear-gradient(45deg, #7EAFAA, #7EAFAA 4px, #adccc9 4px, #adccc9 7px);
}
/* temporary rule to highlight 'invalid' bookings */
.invalid {
  background-color: red;
}
.availGridProperties {
  margin-top: 1em;
  margin-bottom: 1.5em;
}
.availGridProperty a {
  display: block;
  overflow: hidden;
  padding: 1em 0;
  margin-bottom: 1px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
#availability-report .availGridProperty {
  height: 24px;
}
.availGrid {
  margin: -1.9em 0 0;
  overflow: auto;
  white-space: nowrap;
}
.availGrid .dates {
  color: #999;
  text-transform: uppercase;
}
.availGrid .dates .month,
.availGrid .dates .date {
  display: inline-block;
}
.availGrid .dates .month {
  background: white;
  margin-right: -2px;
  padding-left: 2px;
  white-space: normal;
}
.availGrid .dates .monthName {
  margin-bottom: 4px;
  white-space: nowrap;
  width: 0;
}
.availGrid .dates .month .days {
  white-space: nowrap;
}
.availGrid .dates .month .date {
  color: #999;
  font-size: .75em;
  width: 48px;
}
.availGrid .row {
  height: 48px;
}
.availGrid .dayWrapper {
  display: inline-block;
}
.availGrid .day {
  border: 1px solid #ccc;
  display: inline-block;
  height: 44px;
  margin: 0 2px;
  overflow: hidden;
  position: relative;
  width: 44px;
}
.hasPopup {
  cursor: pointer;
}
.availMonth {
  display: block;
  width: 292px;
  float: left;
  margin-bottom: 10px;
}
.availMonth .header {
  margin: 0 auto;
  color: #333;
  text-align: center;
  font-size: 16px;
  font-weight: 300;
  padding: 0.5rem;
  text-transform: uppercase;
}
.availMonth .daysofweek .title {
  float: left;
  width: 40px;
  font-size: 0.8em;
  text-align: center;
  color: #999;
  text-transform: uppercase;
}
.availMonth .week {
  width: 292px;
  margin: 0 auto;
}
.availMonth .week .blankDay,
.availMonth .week .day {
  float: left;
  position: relative;
  width: 38px;
  height: 38px;
}
.availMonth .week .blankDay {
  width: 38px;
  margin: 1px;
}
.availMonth .week .blankDay span {
  display: none;
}
.availabilityHeader {
  margin-top: 10px;
}
.availabilityHeader .yearTitle {
  display: inherit;
  margin: 0 auto;
  width: 100px;
  font-size: 24px;
  font-weight: 200;
  text-align: center;
}
.calendarWrapper,
.adminCalendarWrapper {
  width: 278px;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .calendarWrapper {
    width: 584px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 992px) {
  .calendarWrapper {
    width: 876px;
    margin: 0 auto;
  }
  .adminCalendarWrapper {
    width: 590px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1260px) {
  .calendarWrapper {
    width: 1168px;
    margin: 0 auto;
  }
  .adminCalendarWrapper {
    width: 882px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1650px) {
  .calendarWrapper {
    width: 1460px;
    margin: 0 auto;
  }
  .adminCalendarWrapper {
    width: 1174px;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 1836px) {
  .calendarWrapper {
    width: 1752px;
    margin: 0 auto;
  }
  .adminCalendarWrapper {
    width: 1174px;
    margin: 0 auto;
  }
}
#property-availabilities {
  margin-top: 40px;
}
.availabilityreport .availGridProperty a {
  display: block;
  overflow: hidden;
  padding: 0px;
  line-height: 23px;
  margin-bottom: 1px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.availabilityreport .availGrid .row {
  height: 24px;
}
.availabilityreport .availGrid .day {
  height: 22px;
  width: 22px;
  margin: 0 1px;
}
.bookingEnquiryStatus {
  margin: 0 auto;
  padding-top: 6px;
}
.ui.form.row.showFullPricing {
  border: 1px solid #999;
}
/* TODO: need to consistantly align monetary values on all tables etc. */
.RJvalue {
  width: 65px;
  text-align: right;
}
.truncateContact {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.grid.reducedMargins {
  margin-bottom: 1rem;
}
.grid.reducedMargins .row {
  padding: 0.35rem 0;
}
.viewContactField .row {
  line-height: 24px;
  padding: 3px 0;
}
.inactiveOwner {
  background: #ccc;
  margin: 10px 0;
}
.EditAddress {
  z-index: 2;
}
.ui.form .compact.fields {
  margin: 0 -0.15em 0.15em 0;
}
.ui.form .compact.fields .wide.field {
  padding-left: 0.15em;
  padding-right: 0.15em;
}
@media only screen and (max-width: 991px) {
  .dashChart {
    width: 325px;
    height: 200px;
    margin: 0 auto;
  }
  .dashChart.pie {
    width: 200px;
  }
  .dashChartSmall {
    display: none;
  }
}
@media only screen and (min-width: 992px) {
  .dashChartSmall {
    width: 195px;
    height: 200px;
    margin: 0 auto;
  }
  .dashChartSmall.pie {
    margin-top: 25px;
    width: 150px;
    height: 175px;
  }
  .dashChart {
    display: none;
  }
}
.grid.availList {
  margin: 0;
}
.grid.availList h4 {
  font-weight: normal;
  margin-bottom: 0.5em;
}
.grid.availList h4 > span {
  color: #999;
  font-size: .75em;
  text-transform: uppercase;
  margin-left: 0.5em;
}
.grid.availList .features {
  margin-bottom: 0.5em;
}
.grid.availList .features .feature {
  margin-right: 1em;
}
.grid.availList .ref {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.grid.availList .priceRange {
  margin-bottom: 0.5em;
}
.grid.availList .links a {
  margin-right: 0.5em;
}
.grid.availList .urls .copy {
  margin-right: 0.5em;
}
.availList > .row:nth-child(even) {
  background-color: #f6f6f6;
}
/* Note filter */
.noteFilter .ui.button.mini {
  padding: 0.75em 0.6em;
  background-color: #767676;
  margin: 2px;
}
.noteFilter .ui.button.mini.active,
.noteFilter .ui.button.mini:active,
.noteFilter .ui.button.mini:focus {
  color: #fff;
  background-color: #00799E;
}
.noteFilter .filterSelect label {
  padding: 0 10px;
}
.note .grid .row {
  padding: 0.25rem 0;
}
.note .subject {
  width: 85%;
}
.note .ui.grid.noteTextActions {
  margin-top: 0.25em;
}
.ui.items > .note.item .meta {
  margin: 0;
  font-size: 0.85em;
  color: #767676;
}
.ui.items > .note.item .meta .ui.label {
  padding: 0.3em;
}
.ui.items > .note.item .description {
  margin: 0.2em 0 0.3em 0;
  word-break: break-all;
}
.ui.items .note-highlight,
tr.note-highlight {
  background: #DCCC77;
}
.ui.items .note-highlight {
  border: 5px solid #DCCC77;
}
.ui.divided.items > .item.note-highlight:first-child {
  border-top: 10px solid #DCCC77;
}
.tabsPanel .tabsHeader .ui.header {
  margin-bottom: 5px;
}
.tabsPanel .tabsHeader .divider {
  margin-top: 0.3em;
}
.tabsPanel.inverted .tabsHeader .header {
  color: white;
}
.tabsPanel__content {
  position: relative;
}
.tabsPanel__content > *:last-child {
  margin-bottom: 0 !important;
}
.tabsPanel--haspanelwarning {
  min-height: 200px;
}
.custom-margin-keytag {
  margin-bottom: 5px !important;
  padding: 7px !important;
}
.ui.tabular.menu .item.complaint {
  background-color: #a63133;
  color: #fff;
}
.panelwarning {
  position: absolute;
  top: 0;
  left: 0;
  background: white;
  height: 100%;
  width: 100%;
  z-index: 1;
  text-align: center;
  padding-top: 2rem;
}
.panelwarning__content {
  max-width: 1024px;
  margin: 0 auto;
}
.panelwarning__content table {
  table-layout: fixed;
}
.panelwarning__content table tr:first-of-type td {
  font-weight: bold;
}
.panelwarning__content table tr td {
  width: 20%;
}
.amount {
  text-align: right;
}
.amount.red {
  color: #A63133;
}
/* Mobile */
@media only screen and (max-width: 767px) {
  [class*="mobile hidden"],
  [class*="tablet only"]:not(.mobile),
  [class*="computer only"]:not(.mobile),
  [class*="large monitor only"]:not(.mobile),
  [class*="widescreen monitor only"]:not(.mobile),
  [class*="or lower hidden"] {
    display: none !important;
  }
}
/* Tablet / iPad Portrait */
@media only screen and (min-width: 768px) and (max-width: 991px) {
  [class*="mobile only"]:not(.tablet),
  [class*="tablet hidden"],
  [class*="computer only"]:not(.tablet),
  [class*="large monitor only"]:not(.tablet),
  [class*="widescreen monitor only"]:not(.tablet),
  [class*="or lower hidden"]:not(.mobile) {
    display: none !important;
  }
}
/* Computer / Desktop / iPad Landscape */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  [class*="mobile only"]:not(.computer),
  [class*="tablet only"]:not(.computer),
  [class*="computer hidden"],
  [class*="large monitor only"]:not(.computer),
  [class*="widescreen monitor only"]:not(.computer),
  [class*="or lower hidden"]:not(.tablet):not(.mobile) {
    display: none !important;
  }
}
/* Large Monitor */
@media only screen and (min-width: 1200px) and (max-width: 1919px) {
  [class*="mobile only"]:not([class*="large monitor"]),
  [class*="tablet only"]:not([class*="large monitor"]),
  [class*="computer only"]:not([class*="large monitor"]),
  [class*="large monitor hidden"],
  [class*="widescreen monitor only"]:not([class*="large monitor"]),
  [class*="or lower hidden"]:not(.computer):not(.tablet):not(.mobile) {
    display: none !important;
  }
}
/* Widescreen Monitor */
@media only screen and (min-width: 1920px) {
  [class*="mobile only"]:not([class*="widescreen monitor"]),
  [class*="tablet only"]:not([class*="widescreen monitor"]),
  [class*="computer only"]:not([class*="widescreen monitor"]),
  [class*="large monitor only"]:not([class*="widescreen monitor"]),
  [class*="widescreen monitor hidden"],
  [class*="widescreen monitor or lower hidden"] {
    display: none !important;
  }
}
.ReactModal__Body--open {
  overflow: hidden;
}
.ui.modal > .header {
  position: relative;
}
.modal iframe {
  border: 0;
}
.modal embed {
  width: 100%;
  height: calc(100vh - 10em);
}
.modal.fixed {
  width: 100%;
  height: 100%;
}
.modal.fixed,
.modal.fixed > .actions {
  position: fixed !important;
}
.modal.fixed > .content {
  padding-bottom: 12rem;
  overflow-y: scroll;
  height: 100%;
}
.modal.fixed > .actions {
  bottom: 0;
  width: 100%;
  z-index: 1;
}
.modal.fixed > .actions .buttons {
  text-align: center;
}
.ui.item.basic.label {
  font-weight: normal;
  padding: 0.25em 0.5em;
  margin-bottom: 0.25em;
}
.ui.item.basic.label .header {
  color: inherit;
}
.ui.pointing.label.contact {
  margin-top: 0.5em;
  color: inherit;
  font-weight: inherit;
  white-space: normal;
}
.primaryContact {
  color: #44c;
}
.customerEmail {
  display: inline-block;
  padding-right: 5px;
}
.ui.grid .PhotoBlock {
  padding: 10px;
}
.ui.grid .PhotoBlock .imgSelect {
  float: left;
  margin: 50px 10px 0 0;
}
.ui.grid .PhotoBlock .imgWrapper {
  float: right;
}
.ui.grid .PhotoBlock .imgWrapper .imageName {
  font-size: 12px;
  width: 150px;
  background: #ccc;
  text-align: center;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.propertyimage img {
  max-width: 100%;
  height: auto;
}
@media only screen and (min-width: 310px) and (max-width: 768px) {
  .ui.menu.compact.left.transition.visible {
    bottom: 55px !important;
    top: auto;
  }
}
.lmfooter {
  display: flex;
  margin: auto;
  justify-content: space-around;
}
.lmfooter a.buttonlm {
  display: block;
  padding: 0.35em 1.2em;
  border: 2px solid grey;
  margin: 0 auto 10px auto;
  box-sizing: border-box;
  text-decoration: none;
  font-family: 'Roboto', sans-serif;
  font-weight: 300;
  color: #29332c;
  text-align: center;
  transition: all 0.2s;
  cursor: pointer;
  height: 33px;
  width: 100px;
}
.lmfooter a.buttonlm:hover {
  color: white;
  font-weight: bold;
  background-color: black;
  border: 2px solid black;
  cursor: pointer;
}
.lmfooter a.buttonlm.disabled {
  pointer-events: none;
  visibility: hidden;
}
.ui.tab.loading.lmfooter:before,
.ui.tab.loading.lmfooter:after {
  top: 50% !important;
}
.rbc-btn {
  color: inherit;
  font: inherit;
  margin: 0;
}
button.rbc-btn {
  overflow: visible;
  text-transform: none;
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled].rbc-btn {
  cursor: not-allowed;
}
button.rbc-input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.rbc-calendar {
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.rbc-calendar *,
.rbc-calendar *:before,
.rbc-calendar *:after {
  box-sizing: inherit;
}
.rbc-abs-full,
.rbc-row-bg {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.rbc-ellipsis,
.rbc-event-label,
.rbc-row-segment .rbc-event-content,
.rbc-show-more {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rbc-rtl {
  direction: rtl;
}
.rbc-off-range {
  color: #999999;
}
.rbc-off-range-bg {
  background: #e6e6e6;
}
.rbc-header {
  overflow: hidden;
  flex: 1 0 0%;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding: 0 3px;
  text-align: center;
  vertical-align: middle;
  font-weight: bold;
  font-size: 90%;
  min-height: 0;
  border-bottom: 1px solid #DDD;
}
.rbc-header + .rbc-header {
  border-left: 1px solid #DDD;
}
.rbc-rtl .rbc-header + .rbc-header {
  border-left-width: 0;
  border-right: 1px solid #DDD;
}
.rbc-header > a,
.rbc-header > a:active,
.rbc-header > a:visited {
  color: inherit;
  text-decoration: none;
}
.rbc-row-content {
  position: relative;
  user-select: none;
  -webkit-user-select: none;
  z-index: 4;
}
.rbc-today {
  background-color: #eaf6ff;
}
.rbc-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 10px;
  font-size: 16px;
}
.rbc-toolbar .rbc-toolbar-label {
  flex-grow: 1;
  padding: 0 10px;
  text-align: center;
}
.rbc-toolbar button {
  color: #373a3c;
  display: inline-block;
  margin: 0;
  text-align: center;
  vertical-align: middle;
  background: none;
  background-image: none;
  border: 1px solid #ccc;
  padding: .375rem 1rem;
  border-radius: 4px;
  line-height: normal;
  white-space: nowrap;
}
.rbc-toolbar button:active,
.rbc-toolbar button.rbc-active {
  background-image: none;
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  background-color: #e6e6e6;
  border-color: #adadad;
}
.rbc-toolbar button:active:hover,
.rbc-toolbar button:active:focus,
.rbc-toolbar button.rbc-active:hover,
.rbc-toolbar button.rbc-active:focus {
  color: #373a3c;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.rbc-toolbar button:focus {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.rbc-toolbar button:hover {
  color: #373a3c;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.rbc-btn-group {
  display: inline-block;
  white-space: nowrap;
}
.rbc-btn-group > button:first-child:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.rbc-btn-group > button:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.rbc-rtl .rbc-btn-group > button:first-child:not(:last-child) {
  border-radius: 4px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.rbc-rtl .rbc-btn-group > button:last-child:not(:first-child) {
  border-radius: 4px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.rbc-btn-group > button:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.rbc-btn-group button + button {
  margin-left: -1px;
}
.rbc-rtl .rbc-btn-group button + button {
  margin-left: 0;
  margin-right: -1px;
}
.rbc-btn-group + .rbc-btn-group,
.rbc-btn-group + button {
  margin-left: 10px;
}
.rbc-event {
  border: none;
  box-sizing: border-box;
  box-shadow: none;
  margin: 0;
  padding: 2px 5px;
  background-color: #3174ad;
  border-radius: 5px;
  color: #fff;
  cursor: pointer;
  width: 100%;
  text-align: left;
}
.rbc-slot-selecting .rbc-event {
  cursor: inherit;
  pointer-events: none;
}
.rbc-event.rbc-selected {
  background-color: #265985;
}
.rbc-event:focus {
  outline: 5px auto #3b99fc;
}
.rbc-event-label {
  font-size: 80%;
}
.rbc-event-overlaps {
  box-shadow: -1px 1px 5px 0px rgba(51, 51, 51, 0.5);
}
.rbc-event-continues-prior {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.rbc-event-continues-after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.rbc-event-continues-earlier {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.rbc-event-continues-later {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.rbc-row {
  display: flex;
  flex-direction: row;
}
.rbc-row-segment {
  padding: 0 1px 1px 1px;
}
.rbc-selected-cell {
  background-color: rgba(0, 0, 0, 0.1);
}
.rbc-show-more {
  background-color: rgba(255, 255, 255, 0.3);
  z-index: 4;
  font-weight: bold;
  font-size: 85%;
  height: auto;
  line-height: normal;
}
.rbc-month-view {
  position: relative;
  border: 1px solid #DDD;
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  width: 100%;
  user-select: none;
  -webkit-user-select: none;
  height: 100%;
}
.rbc-month-header {
  display: flex;
  flex-direction: row;
}
.rbc-month-row {
  display: flex;
  position: relative;
  flex-direction: column;
  flex: 1 0 0;
  flex-basis: 0px;
  overflow: hidden;
  height: 100%;
}
.rbc-month-row + .rbc-month-row {
  border-top: 1px solid #DDD;
}
.rbc-date-cell {
  flex: 1 1 0;
  min-width: 0;
  padding-right: 5px;
  text-align: right;
}
.rbc-date-cell.rbc-now {
  font-weight: bold;
}
.rbc-date-cell > a,
.rbc-date-cell > a:active,
.rbc-date-cell > a:visited {
  color: inherit;
  text-decoration: none;
}
.rbc-row-bg {
  display: flex;
  flex-direction: row;
  flex: 1 0 0;
  overflow: hidden;
}
.rbc-day-bg {
  flex: 1 0 0%;
}
.rbc-day-bg + .rbc-day-bg {
  border-left: 1px solid #DDD;
}
.rbc-rtl .rbc-day-bg + .rbc-day-bg {
  border-left-width: 0;
  border-right: 1px solid #DDD;
}
.rbc-overlay {
  position: absolute;
  z-index: 5;
  border: 1px solid #e5e5e5;
  background-color: #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.25);
  padding: 10px;
}
.rbc-overlay > * + * {
  margin-top: 1px;
}
.rbc-overlay-header {
  border-bottom: 1px solid #e5e5e5;
  margin: -10px -10px 5px -10px;
  padding: 2px 10px;
}
.rbc-agenda-view {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  overflow: auto;
}
.rbc-agenda-view table.rbc-agenda-table {
  width: 100%;
  border: 1px solid #DDD;
  border-spacing: 0;
  border-collapse: collapse;
}
.rbc-agenda-view table.rbc-agenda-table tbody > tr > td {
  padding: 5px 10px;
  vertical-align: top;
}
.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell {
  padding-left: 15px;
  padding-right: 15px;
  text-transform: lowercase;
}
.rbc-agenda-view table.rbc-agenda-table tbody > tr > td + td {
  border-left: 1px solid #DDD;
}
.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody > tr > td + td {
  border-left-width: 0;
  border-right: 1px solid #DDD;
}
.rbc-agenda-view table.rbc-agenda-table tbody > tr + tr {
  border-top: 1px solid #DDD;
}
.rbc-agenda-view table.rbc-agenda-table thead > tr > th {
  padding: 3px 5px;
  text-align: left;
  border-bottom: 1px solid #DDD;
}
.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead > tr > th {
  text-align: right;
}
.rbc-agenda-time-cell {
  text-transform: lowercase;
}
.rbc-agenda-time-cell .rbc-continues-after:after {
  content: ' »';
}
.rbc-agenda-time-cell .rbc-continues-prior:before {
  content: '« ';
}
.rbc-agenda-date-cell,
.rbc-agenda-time-cell {
  white-space: nowrap;
}
.rbc-agenda-event-cell {
  width: 100%;
}
.rbc-time-column {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.rbc-time-column .rbc-timeslot-group {
  flex: 1;
}
.rbc-timeslot-group {
  border-bottom: 1px solid #DDD;
  min-height: 40px;
  display: flex;
  flex-flow: column nowrap;
}
.rbc-time-gutter,
.rbc-header-gutter {
  flex: none;
}
.rbc-label {
  padding: 0 5px;
}
.rbc-day-slot {
  position: relative;
}
.rbc-day-slot .rbc-events-container {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  margin-right: 10px;
  top: 0;
}
.rbc-day-slot .rbc-events-container.rbc-rtl {
  left: 10px;
  right: 0;
}
.rbc-day-slot .rbc-event {
  border: 1px solid #265985;
  display: flex;
  max-height: 100%;
  min-height: 20px;
  flex-flow: column wrap;
  align-items: flex-start;
  overflow: hidden;
  position: absolute;
}
.rbc-day-slot .rbc-event-label {
  flex: none;
  padding-right: 5px;
  width: auto;
}
.rbc-day-slot .rbc-event-content {
  width: 100%;
  flex: 1 1 0;
  word-wrap: break-word;
  line-height: 1;
  height: 100%;
  min-height: 1em;
}
.rbc-day-slot .rbc-time-slot {
  border-top: 1px solid #f7f7f7;
}
.rbc-time-view-resources .rbc-time-gutter,
.rbc-time-view-resources .rbc-time-header-gutter {
  position: sticky;
  left: 0;
  background-color: white;
  border-right: 1px solid #DDD;
  z-index: 10;
  margin-right: -1px;
}
.rbc-time-view-resources .rbc-time-header {
  overflow: hidden;
}
.rbc-time-view-resources .rbc-time-header-content {
  min-width: auto;
  flex: 1 0 0;
  flex-basis: 0px;
}
.rbc-time-view-resources .rbc-time-header-cell-single-day {
  display: none;
}
.rbc-time-view-resources .rbc-day-slot {
  min-width: 140px;
}
.rbc-time-view-resources .rbc-header,
.rbc-time-view-resources .rbc-day-bg {
  width: 140px;
  flex: 1 1 0;
  flex-basis: 0 px;
}
.rbc-time-header-content + .rbc-time-header-content {
  margin-left: -1px;
}
.rbc-time-slot {
  flex: 1 0 0;
}
.rbc-time-slot.rbc-now {
  font-weight: bold;
}
.rbc-day-header {
  text-align: center;
}
.rbc-slot-selection {
  z-index: 10;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  font-size: 75%;
  width: 100%;
  padding: 3px;
}
.rbc-slot-selecting {
  cursor: move;
}
.rbc-time-view {
  display: flex;
  flex-direction: column;
  flex: 1;
  width: 100%;
  border: 1px solid #DDD;
  min-height: 0;
}
.rbc-time-view .rbc-time-gutter {
  white-space: nowrap;
}
.rbc-time-view .rbc-allday-cell {
  box-sizing: content-box;
  width: 100%;
  height: 100%;
  position: relative;
}
.rbc-time-view .rbc-allday-cell + .rbc-allday-cell {
  border-left: 1px solid #DDD;
}
.rbc-time-view .rbc-allday-events {
  position: relative;
  z-index: 4;
}
.rbc-time-view .rbc-row {
  box-sizing: border-box;
  min-height: 20px;
}
.rbc-time-header {
  display: flex;
  flex: 0 0 auto;
  flex-direction: row;
}
.rbc-time-header.rbc-overflowing {
  border-right: 1px solid #DDD;
}
.rbc-rtl .rbc-time-header.rbc-overflowing {
  border-right-width: 0;
  border-left: 1px solid #DDD;
}
.rbc-time-header > .rbc-row:first-child {
  border-bottom: 1px solid #DDD;
}
.rbc-time-header > .rbc-row.rbc-row-resource {
  border-bottom: 1px solid #DDD;
}
.rbc-time-header-cell-single-day {
  display: none;
}
.rbc-time-header-content {
  flex: 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  border-left: 1px solid #DDD;
}
.rbc-rtl .rbc-time-header-content {
  border-left-width: 0;
  border-right: 1px solid #DDD;
}
.rbc-time-header-content > .rbc-row.rbc-row-resource {
  border-bottom: 1px solid #DDD;
  flex-shrink: 0;
}
.rbc-time-content {
  display: flex;
  flex: 1 0 0%;
  align-items: flex-start;
  width: 100%;
  border-top: 2px solid #DDD;
  overflow-y: auto;
  position: relative;
}
.rbc-time-content > .rbc-time-gutter {
  flex: none;
}
.rbc-time-content > * + * > * {
  border-left: 1px solid #DDD;
}
.rbc-rtl .rbc-time-content > * + * > * {
  border-left-width: 0;
  border-right: 1px solid #DDD;
}
.rbc-time-content > .rbc-day-slot {
  width: 100%;
  user-select: none;
  -webkit-user-select: none;
}
.rbc-current-time-indicator {
  position: absolute;
  z-index: 3;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #74ad31;
  pointer-events: none;
}
