@import url(https://fonts.googleapis.com/css?family=Nunito);/*!
 * Datetimepicker for Bootstrap 3
 * version : 4.17.47
 * https://github.com/Eonasdan/bootstrap-datetimepicker/
 */
.bootstrap-datetimepicker-widget {
  list-style: none;
}
.bootstrap-datetimepicker-widget.dropdown-menu {
  display: block;
  margin: 2px 0;
  padding: 4px;
  width: 19em;
}
@media (min-width: 576px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
@media (min-width: 768px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
@media (min-width: 992px) {
  .bootstrap-datetimepicker-widget.dropdown-menu.timepicker-sbs {
    width: 38em;
  }
}
.bootstrap-datetimepicker-widget.dropdown-menu:before,
.bootstrap-datetimepicker-widget.dropdown-menu:after {
  content: '';
  display: inline-block;
  position: absolute;
}
.bootstrap-datetimepicker-widget.dropdown-menu.bottom:before {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #ccc;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  top: -7px;
  left: 7px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.bottom:after {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-bottom: 6px solid white;
  top: -6px;
  left: 8px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.top:before {
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid #ccc;
  border-top-color: rgba(0, 0, 0, 0.2);
  bottom: -7px;
  left: 6px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.top:after {
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid white;
  bottom: -6px;
  left: 7px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.pull-right:before {
  left: auto;
  right: 6px;
}
.bootstrap-datetimepicker-widget.dropdown-menu.pull-right:after {
  left: auto;
  right: 7px;
}
.bootstrap-datetimepicker-widget .list-unstyled {
  margin: 0;
}
.bootstrap-datetimepicker-widget a[data-action] {
  padding: 6px 0;
}
.bootstrap-datetimepicker-widget a[data-action]:active {
  box-shadow: none;
}
.bootstrap-datetimepicker-widget .timepicker-hour,
.bootstrap-datetimepicker-widget .timepicker-minute,
.bootstrap-datetimepicker-widget .timepicker-second {
  width: 54px;
  font-weight: bold;
  font-size: 1.2em;
  margin: 0;
}
.bootstrap-datetimepicker-widget button[data-action] {
  padding: 6px;
}
.bootstrap-datetimepicker-widget .btn[data-action="incrementHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Increment Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="incrementMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Increment Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="decrementHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Decrement Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="decrementMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Decrement Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="showHours"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Show Hours";
}
.bootstrap-datetimepicker-widget .btn[data-action="showMinutes"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Show Minutes";
}
.bootstrap-datetimepicker-widget .btn[data-action="togglePeriod"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Toggle AM/PM";
}
.bootstrap-datetimepicker-widget .btn[data-action="clear"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Clear the picker";
}
.bootstrap-datetimepicker-widget .btn[data-action="today"]::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Set the date to today";
}
.bootstrap-datetimepicker-widget .picker-switch {
  text-align: center;
}
.bootstrap-datetimepicker-widget .picker-switch::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Toggle Date and Time Screens";
}
.bootstrap-datetimepicker-widget .picker-switch td {
  padding: 0;
  margin: 0;
  height: auto;
  width: auto;
  line-height: inherit;
}
.bootstrap-datetimepicker-widget .picker-switch td span,
.bootstrap-datetimepicker-widget .picker-switch td i {
  line-height: 2.5;
  height: 2.5em;
  width: 100%;
}
.bootstrap-datetimepicker-widget table {
  width: 100%;
  margin: 0;
}
.bootstrap-datetimepicker-widget table td,
.bootstrap-datetimepicker-widget table th {
  text-align: center;
  border-radius: 0.25rem;
  padding: 0.5em;
}
.bootstrap-datetimepicker-widget table th {
  height: 20px;
  line-height: 20px;
  width: 20px;
}
.bootstrap-datetimepicker-widget table th.picker-switch {
  width: 145px;
}
.bootstrap-datetimepicker-widget table th.disabled,
.bootstrap-datetimepicker-widget table th.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget table th.prev::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Previous Month";
}
.bootstrap-datetimepicker-widget table th.next::after {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  content: "Next Month";
}
.bootstrap-datetimepicker-widget table thead tr:first-child th {
  cursor: pointer;
}
.bootstrap-datetimepicker-widget table thead tr:first-child th:hover {
  background: #f8f9fa;
}
.bootstrap-datetimepicker-widget table td {
  height: 54px;
  line-height: 54px;
  width: 54px;
}
.bootstrap-datetimepicker-widget table td.cw {
  font-size: 0.8em;
  height: 20px;
  line-height: 20px;
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td.day {
  height: 20px;
  line-height: 20px;
  width: 20px;
}
.bootstrap-datetimepicker-widget table td.day:hover,
.bootstrap-datetimepicker-widget table td.hour:hover,
.bootstrap-datetimepicker-widget table td.minute:hover,
.bootstrap-datetimepicker-widget table td.second:hover {
  background: #f8f9fa;
  cursor: pointer;
}
.bootstrap-datetimepicker-widget table td.old,
.bootstrap-datetimepicker-widget table td.new {
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td.today {
  position: relative;
}
.bootstrap-datetimepicker-widget table td.today:before {
  content: '';
  display: inline-block;
  border: solid transparent;
  border-width: 0 0 7px 7px;
  border-bottom-color: #dee2e6;
  border-top-color: rgba(0, 0, 0, 0.2);
  position: absolute;
  bottom: 4px;
  right: 4px;
}
.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
  background-color: #dee2e6;
  color: #007bff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.bootstrap-datetimepicker-widget table td.active.today:before {
  border-bottom-color: #fff;
}
.bootstrap-datetimepicker-widget table td.disabled,
.bootstrap-datetimepicker-widget table td.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget table td span,
.bootstrap-datetimepicker-widget table td i {
  display: inline-block;
  width: 54px;
  height: 54px;
  line-height: 54px;
  margin: 2px 1.5px;
  cursor: pointer;
  border-radius: 0.25rem;
}
.bootstrap-datetimepicker-widget table td span:hover,
.bootstrap-datetimepicker-widget table td i:hover {
  background: #f8f9fa;
}
.bootstrap-datetimepicker-widget table td span.active,
.bootstrap-datetimepicker-widget table td i.active {
  background-color: #dee2e6;
  color: #007bff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.bootstrap-datetimepicker-widget table td span.old,
.bootstrap-datetimepicker-widget table td i.old {
  color: #dee2e6;
}
.bootstrap-datetimepicker-widget table td span.disabled,
.bootstrap-datetimepicker-widget table td i.disabled,
.bootstrap-datetimepicker-widget table td span.disabled:hover,
.bootstrap-datetimepicker-widget table td i.disabled:hover {
  background: none;
  color: #dee2e6;
  cursor: not-allowed;
}
.bootstrap-datetimepicker-widget.usetwentyfour td.hour {
  height: 27px;
  line-height: 27px;
}
.bootstrap-datetimepicker-widget.wider {
  width: 21em;
}
.bootstrap-datetimepicker-widget .datepicker-decades .decade {
  line-height: 1.8em !important;
}
.input-group.date .input-group-addon {
  cursor: pointer;
}
.input-group.date .input-group-text {
  cursor: pointer;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
/*!
 * FullCalendar v3.10.1
 * Docs & License: https://fullcalendar.io/
 * (c) 2019 Adam Shaw
 */
.fc {
  direction: ltr;
  text-align: left; }

.fc-rtl {
  text-align: right; }

body .fc {
  /* extra precedence to overcome jqui */
  font-size: 1em; }

/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-highlight {
  /* when user is selecting cells */
  background: #bce8f1;
  opacity: .3; }

.fc-bgevent {
  /* default look for background events */
  background: #8fdf82;
  opacity: .3; }

.fc-nonbusiness {
  /* default look for non-business-hours areas */
  /* will inherit .fc-bgevent's styles */
  background: #d7d7d7; }

/* Buttons (styled <button> tags, normalized to work cross-browser)
--------------------------------------------------------------------------------------------------*/
.fc button {
  /* force height to include the border and padding */
  box-sizing: border-box;
  /* dimensions */
  margin: 0;
  height: 2.1em;
  padding: 0 .6em;
  /* text & cursor */
  font-size: 1em;
  /* normalize */
  white-space: nowrap;
  cursor: pointer; }

/* Firefox has an annoying inner border */
.fc button::-moz-focus-inner {
  margin: 0;
  padding: 0; }

.fc-state-default {
  /* non-theme */
  border: 1px solid; }

.fc-state-default.fc-corner-left {
  /* non-theme */
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px; }

.fc-state-default.fc-corner-right {
  /* non-theme */
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px; }

/* icons in buttons */
.fc button .fc-icon {
  /* non-theme */
  position: relative;
  top: -0.05em;
  /* seems to be a good adjustment across browsers */
  margin: 0 .2em;
  vertical-align: middle; }

/*
  button states
  borrowed from twitter bootstrap (http://twitter.github.com/bootstrap/)
*/
.fc-state-default {
  background-color: #f5f5f5;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e6e6e6));
  background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
  background-repeat: repeat-x;
  border-color: #e6e6e6 #e6e6e6 #bfbfbf;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  color: #333;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05); }

.fc-state-hover,
.fc-state-down,
.fc-state-active,
.fc-state-disabled {
  color: #333333;
  background-color: #e6e6e6; }

.fc-state-hover {
  color: #333333;
  text-decoration: none;
  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
  transition: background-position 0.1s linear; }

.fc-state-down,
.fc-state-active {
  background-color: #cccccc;
  background-image: none;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05); }

.fc-state-disabled {
  cursor: default;
  background-image: none;
  opacity: 0.65;
  box-shadow: none; }

/* Buttons Groups
--------------------------------------------------------------------------------------------------*/
.fc-button-group {
  display: inline-block; }

/*
every button that is not first in a button group should scootch over one pixel and cover the
previous button's border...
*/
.fc .fc-button-group > * {
  /* extra precedence b/c buttons have margin set to zero */
  float: left;
  margin: 0 0 0 -1px; }

.fc .fc-button-group > :first-child {
  /* same */
  margin-left: 0; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover {
  position: absolute;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15); }

.fc-popover .fc-header {
  /* TODO: be more consistent with fc-head/fc-body */
  padding: 2px 4px; }

.fc-popover .fc-header .fc-title {
  margin: 0 2px; }

.fc-popover .fc-header .fc-close {
  cursor: pointer; }

.fc-ltr .fc-popover .fc-header .fc-title,
.fc-rtl .fc-popover .fc-header .fc-close {
  float: left; }

.fc-rtl .fc-popover .fc-header .fc-title,
.fc-ltr .fc-popover .fc-header .fc-close {
  float: right; }

/* Misc Reusable Components
--------------------------------------------------------------------------------------------------*/
.fc-divider {
  border-style: solid;
  border-width: 1px; }

hr.fc-divider {
  height: 0;
  margin: 0;
  padding: 0 0 2px;
  /* height is unreliable across browsers, so use padding */
  border-width: 1px 0; }

.fc-clear {
  clear: both; }

.fc-bg,
.fc-bgevent-skeleton,
.fc-highlight-skeleton,
.fc-helper-skeleton {
  /* these element should always cling to top-left/right corners */
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

.fc-bg {
  bottom: 0;
  /* strech bg to bottom edge */ }

.fc-bg table {
  height: 100%;
  /* strech bg to bottom edge */ }

/* Tables
--------------------------------------------------------------------------------------------------*/
.fc table {
  width: 100%;
  box-sizing: border-box;
  /* fix scrollbar issue in firefox */
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1em;
  /* normalize cross-browser */ }

.fc th {
  text-align: center; }

.fc th,
.fc td {
  border-style: solid;
  border-width: 1px;
  padding: 0;
  vertical-align: top; }

.fc td.fc-today {
  border-style: double;
  /* overcome neighboring borders */ }

/* Internal Nav Links
--------------------------------------------------------------------------------------------------*/
a[data-goto] {
  cursor: pointer; }

a[data-goto]:hover {
  text-decoration: underline; }

/* Fake Table Rows
--------------------------------------------------------------------------------------------------*/
.fc .fc-row {
  /* extra precedence to overcome themes w/ .ui-widget-content forcing a 1px border */
  /* no visible border by default. but make available if need be (scrollbar width compensation) */
  border-style: solid;
  border-width: 0; }

.fc-row table {
  /* don't put left/right border on anything within a fake row.
     the outer tbody will worry about this */
  border-left: 0 hidden transparent;
  border-right: 0 hidden transparent;
  /* no bottom borders on rows */
  border-bottom: 0 hidden transparent; }

.fc-row:first-child table {
  border-top: 0 hidden transparent;
  /* no top border on first row */ }

/* Day Row (used within the header and the DayGrid)
--------------------------------------------------------------------------------------------------*/
.fc-row {
  position: relative; }

.fc-row .fc-bg {
  z-index: 1; }

/* highlighting cells & background event skeleton */
.fc-row .fc-bgevent-skeleton,
.fc-row .fc-highlight-skeleton {
  bottom: 0;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-bgevent-skeleton table,
.fc-row .fc-highlight-skeleton table {
  height: 100%;
  /* stretch skeleton to bottom of row */ }

.fc-row .fc-highlight-skeleton td,
.fc-row .fc-bgevent-skeleton td {
  border-color: transparent; }

.fc-row .fc-bgevent-skeleton {
  z-index: 2; }

.fc-row .fc-highlight-skeleton {
  z-index: 3; }

/*
row content (which contains day/week numbers and events) as well as "helper" (which contains
temporary rendered events).
*/
.fc-row .fc-content-skeleton {
  position: relative;
  z-index: 4;
  padding-bottom: 2px;
  /* matches the space above the events */ }

.fc-row .fc-helper-skeleton {
  z-index: 5; }

.fc .fc-row .fc-content-skeleton table,
.fc .fc-row .fc-content-skeleton td,
.fc .fc-row .fc-helper-skeleton td {
  /* see-through to the background below */
  /* extra precedence to prevent theme-provided backgrounds */
  background: none;
  /* in case <td>s are globally styled */
  border-color: transparent; }

.fc-row .fc-content-skeleton td,
.fc-row .fc-helper-skeleton td {
  /* don't put a border between events and/or the day number */
  border-bottom: 0; }

.fc-row .fc-content-skeleton tbody td,
.fc-row .fc-helper-skeleton tbody td {
  /* don't put a border between event cells */
  border-top: 0; }

/* Scrolling Container
--------------------------------------------------------------------------------------------------*/
.fc-scroller {
  -webkit-overflow-scrolling: touch; }

/* TODO: move to agenda/basic */
.fc-scroller > .fc-day-grid,
.fc-scroller > .fc-time-grid {
  position: relative;
  /* re-scope all positions */
  width: 100%;
  /* hack to force re-sizing this inner element when scrollbars appear/disappear */ }

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.fc-event {
  position: relative;
  /* for resize handle and other inner positioning */
  display: block;
  /* make the <a> tag block */
  font-size: .85em;
  line-height: 1.3;
  border-radius: 3px;
  border: 1px solid #3a87ad;
  /* default BORDER color */ }

.fc-event,
.fc-event-dot {
  background-color: #3a87ad;
  /* default BACKGROUND color */ }

.fc-event,
.fc-event:hover {
  color: #fff;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */ }

.fc-event[href],
.fc-event.fc-draggable {
  cursor: pointer;
  /* give events with links and draggable events a hand mouse pointer */ }

.fc-not-allowed,
.fc-not-allowed .fc-event {
  /* to override an event's custom cursor */
  cursor: not-allowed; }

.fc-event .fc-bg {
  /* the generic .fc-bg already does position */
  z-index: 1;
  background: #fff;
  opacity: .25; }

.fc-event .fc-content {
  position: relative;
  z-index: 2; }

/* resizer (cursor AND touch devices) */
.fc-event .fc-resizer {
  position: absolute;
  z-index: 4; }

/* resizer (touch devices) */
.fc-event .fc-resizer {
  display: none; }

.fc-event.fc-allow-mouse-resize .fc-resizer,
.fc-event.fc-selected .fc-resizer {
  /* only show when hovering or selected (with touch) */
  display: block; }

/* hit area */
.fc-event.fc-selected .fc-resizer:before {
  /* 40x40 touch area */
  content: "";
  position: absolute;
  z-index: 9999;
  /* user of this util can scope within a lower z-index */
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  margin-left: -20px;
  margin-top: -20px; }

/* Event Selection (only for touch devices)
--------------------------------------------------------------------------------------------------*/
.fc-event.fc-selected {
  z-index: 9999 !important;
  /* overcomes inline z-index */
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); }

.fc-event.fc-selected.fc-dragging {
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.3); }

/* Horizontal Events
--------------------------------------------------------------------------------------------------*/
/* bigger touch area when selected */
.fc-h-event.fc-selected:before {
  content: "";
  position: absolute;
  z-index: 3;
  /* below resizers */
  top: -10px;
  bottom: -10px;
  left: 0;
  right: 0; }

/* events that are continuing to/from another week. kill rounded corners and butt up against edge */
.fc-ltr .fc-h-event.fc-not-start,
.fc-rtl .fc-h-event.fc-not-end {
  margin-left: 0;
  border-left-width: 0;
  padding-left: 1px;
  /* replace the border with padding */
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.fc-ltr .fc-h-event.fc-not-end,
.fc-rtl .fc-h-event.fc-not-start {
  margin-right: 0;
  border-right-width: 0;
  padding-right: 1px;
  /* replace the border with padding */
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

/* resizer (cursor AND touch devices) */
/* left resizer  */
.fc-ltr .fc-h-event .fc-start-resizer,
.fc-rtl .fc-h-event .fc-end-resizer {
  cursor: w-resize;
  left: -1px;
  /* overcome border */ }

/* right resizer */
.fc-ltr .fc-h-event .fc-end-resizer,
.fc-rtl .fc-h-event .fc-start-resizer {
  cursor: e-resize;
  right: -1px;
  /* overcome border */ }

/* resizer (mouse devices) */
.fc-h-event.fc-allow-mouse-resize .fc-resizer {
  width: 7px;
  top: -1px;
  /* overcome top border */
  bottom: -1px;
  /* overcome bottom border */ }

/* resizer (touch devices) */
.fc-h-event.fc-selected .fc-resizer {
  /* 8x8 little dot */
  border-radius: 4px;
  border-width: 1px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-color: inherit;
  background: #fff;
  /* vertically center */
  top: 50%;
  margin-top: -4px; }

/* left resizer  */
.fc-ltr .fc-h-event.fc-selected .fc-start-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-end-resizer {
  margin-left: -4px;
  /* centers the 8x8 dot on the left edge */ }

/* right resizer */
.fc-ltr .fc-h-event.fc-selected .fc-end-resizer,
.fc-rtl .fc-h-event.fc-selected .fc-start-resizer {
  margin-right: -4px;
  /* centers the 8x8 dot on the right edge */ }

/* DayGrid events
----------------------------------------------------------------------------------------------------
We use the full "fc-day-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-day-grid-event {
  margin: 1px 2px 0;
  /* spacing between events and edges */
  padding: 0 1px; }

tr:first-child > td > .fc-day-grid-event {
  margin-top: 2px;
  /* a little bit more space before the first event */ }

.fc-day-grid-event.fc-selected:after {
  content: "";
  position: absolute;
  z-index: 1;
  /* same z-index as fc-bg, behind text */
  /* overcome the borders */
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  /* darkening effect */
  background: #000;
  opacity: .25; }

.fc-day-grid-event .fc-content {
  /* force events to be one-line tall */
  white-space: nowrap;
  overflow: hidden; }

.fc-day-grid-event .fc-time {
  font-weight: bold; }

/* resizer (cursor devices) */
/* left resizer  */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer {
  margin-left: -2px;
  /* to the day cell's edge */ }

/* right resizer */
.fc-ltr .fc-day-grid-event.fc-allow-mouse-resize .fc-end-resizer,
.fc-rtl .fc-day-grid-event.fc-allow-mouse-resize .fc-start-resizer {
  margin-right: -2px;
  /* to the day cell's edge */ }

/* Event Limiting
--------------------------------------------------------------------------------------------------*/
/* "more" link that represents hidden events */
a.fc-more {
  margin: 1px 3px;
  font-size: .85em;
  cursor: pointer;
  text-decoration: none; }

a.fc-more:hover {
  text-decoration: underline; }

.fc-limited {
  /* rows and cells that are hidden because of a "more" link */
  display: none; }

/* popover that appears when "more" link is clicked */
.fc-day-grid .fc-row {
  z-index: 1;
  /* make the "more" popover one higher than this */ }

.fc-more-popover {
  z-index: 2;
  width: 220px; }

.fc-more-popover .fc-event-container {
  padding: 10px; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-now-indicator {
  position: absolute;
  border: 0 solid red; }

/* Utilities
--------------------------------------------------------------------------------------------------*/
.fc-unselectable {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

/*
TODO: more distinction between this file and common.css
*/
/* Colors
--------------------------------------------------------------------------------------------------*/
.fc-unthemed th,
.fc-unthemed td,
.fc-unthemed thead,
.fc-unthemed tbody,
.fc-unthemed .fc-divider,
.fc-unthemed .fc-row,
.fc-unthemed .fc-content,
.fc-unthemed .fc-popover,
.fc-unthemed .fc-list-view,
.fc-unthemed .fc-list-heading td {
  border-color: #ddd; }

.fc-unthemed .fc-popover {
  background-color: #fff; }

.fc-unthemed .fc-divider,
.fc-unthemed .fc-popover .fc-header,
.fc-unthemed .fc-list-heading td {
  background: #eee; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  color: #666; }

.fc-unthemed td.fc-today {
  background: #fcf8e3; }

.fc-unthemed .fc-disabled-day {
  background: #d7d7d7;
  opacity: .3; }

/* Icons (inline elements with styled text that mock arrow icons)
--------------------------------------------------------------------------------------------------*/
.fc-icon {
  display: inline-block;
  height: 1em;
  line-height: 1em;
  font-size: 1em;
  text-align: center;
  overflow: hidden;
  font-family: "Courier New", Courier, monospace;
  /* don't allow browser text-selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

/*
Acceptable font-family overrides for individual icons:
  "Arial", sans-serif
  "Times New Roman", serif

NOTE: use percentage font sizes or else old IE chokes
*/
.fc-icon:after {
  position: relative; }

.fc-icon-left-single-arrow:after {
  content: "\2039";
  font-weight: bold;
  font-size: 200%;
  top: -7%; }

.fc-icon-right-single-arrow:after {
  content: "\203A";
  font-weight: bold;
  font-size: 200%;
  top: -7%; }

.fc-icon-left-double-arrow:after {
  content: "\AB";
  font-size: 160%;
  top: -7%; }

.fc-icon-right-double-arrow:after {
  content: "\BB";
  font-size: 160%;
  top: -7%; }

.fc-icon-left-triangle:after {
  content: "\25C4";
  font-size: 125%;
  top: 3%; }

.fc-icon-right-triangle:after {
  content: "\25BA";
  font-size: 125%;
  top: 3%; }

.fc-icon-down-triangle:after {
  content: "\25BC";
  font-size: 125%;
  top: 2%; }

.fc-icon-x:after {
  content: "\D7";
  font-size: 200%;
  top: 6%; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-popover {
  border-width: 1px;
  border-style: solid; }

.fc-unthemed .fc-popover .fc-header .fc-close {
  font-size: .9em;
  margin-top: 2px; }

/* List View
--------------------------------------------------------------------------------------------------*/
.fc-unthemed .fc-list-item:hover td {
  background-color: #f5f5f5; }

/* Colors
--------------------------------------------------------------------------------------------------*/
.ui-widget .fc-disabled-day {
  background-image: none; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-popover > .ui-widget-header + .ui-widget-content {
  border-top: 0;
  /* where they meet, let the header have the border */ }

/* Global Event Styles
--------------------------------------------------------------------------------------------------*/
.ui-widget .fc-event {
  /* overpower jqui's styles on <a> tags. TODO: more DRY */
  color: #fff;
  /* default TEXT color */
  text-decoration: none;
  /* if <a> has an href */
  /* undo ui-widget-header bold */
  font-weight: normal; }

/* TimeGrid axis running down the side (for both the all-day area and the slot area)
--------------------------------------------------------------------------------------------------*/
.ui-widget td.fc-axis {
  font-weight: normal;
  /* overcome bold */ }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-slats .ui-widget-content {
  background: none;
  /* see through to fc-bg */ }

.fc.fc-bootstrap3 a {
  text-decoration: none; }

.fc.fc-bootstrap3 a[data-goto]:hover {
  text-decoration: underline; }

.fc-bootstrap3 hr.fc-divider {
  border-color: inherit; }

.fc-bootstrap3 .fc-today.alert {
  border-radius: 0; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap3 .fc-popover .panel-body {
  padding: 0; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap3 .fc-time-grid .fc-slats table {
  /* some themes have background color. see through to slats */
  background: none; }

.fc.fc-bootstrap4 a {
  text-decoration: none; }

.fc.fc-bootstrap4 a[data-goto]:hover {
  text-decoration: underline; }

.fc-bootstrap4 hr.fc-divider {
  border-color: inherit; }

.fc-bootstrap4 .fc-today.alert {
  border-radius: 0; }

.fc-bootstrap4 a.fc-event:not([href]):not([tabindex]) {
  color: #fff; }

.fc-bootstrap4 .fc-popover.card {
  position: absolute; }

/* Popover
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap4 .fc-popover .card-body {
  padding: 0; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-bootstrap4 .fc-time-grid .fc-slats table {
  /* some themes have background color. see through to slats */
  background: none; }

/* Toolbar
--------------------------------------------------------------------------------------------------*/
.fc-toolbar {
  text-align: center; }

.fc-toolbar.fc-header-toolbar {
  margin-bottom: 1em; }

.fc-toolbar.fc-footer-toolbar {
  margin-top: 1em; }

.fc-toolbar .fc-left {
  float: left; }

.fc-toolbar .fc-right {
  float: right; }

.fc-toolbar .fc-center {
  display: inline-block; }

/* the things within each left/right/center section */
.fc .fc-toolbar > * > * {
  /* extra precedence to override button border margins */
  float: left;
  margin-left: .75em; }

/* the first thing within each left/center/right section */
.fc .fc-toolbar > * > :first-child {
  /* extra precedence to override button border margins */
  margin-left: 0; }

/* title text */
.fc-toolbar h2 {
  margin: 0; }

/* button layering (for border precedence) */
.fc-toolbar button {
  position: relative; }

.fc-toolbar .fc-state-hover,
.fc-toolbar .ui-state-hover {
  z-index: 2; }

.fc-toolbar .fc-state-down {
  z-index: 3; }

.fc-toolbar .fc-state-active,
.fc-toolbar .ui-state-active {
  z-index: 4; }

.fc-toolbar button:focus {
  z-index: 5; }

/* View Structure
--------------------------------------------------------------------------------------------------*/
/* undo twitter bootstrap's box-sizing rules. normalizes positioning techniques */
/* don't do this for the toolbar because we'll want bootstrap to style those buttons as some pt */
.fc-view-container *,
.fc-view-container *:before,
.fc-view-container *:after {
  box-sizing: content-box; }

.fc-view,
.fc-view > table {
  /* so dragged elements can be above the view's main element */
  position: relative;
  z-index: 1; }

/* BasicView
--------------------------------------------------------------------------------------------------*/
/* day row structure */
.fc-basicWeek-view .fc-content-skeleton,
.fc-basicDay-view .fc-content-skeleton {
  /* there may be week numbers in these views, so no padding-top */
  padding-bottom: 1em;
  /* ensure a space at bottom of cell for user selecting/clicking */ }

.fc-basic-view .fc-body .fc-row {
  min-height: 4em;
  /* ensure that all rows are at least this tall */ }

/* a "rigid" row will take up a constant amount of height because content-skeleton is absolute */
.fc-row.fc-rigid {
  overflow: hidden; }

.fc-row.fc-rigid .fc-content-skeleton {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }

/* week and day number styling */
.fc-day-top.fc-other-month {
  opacity: 0.3; }

.fc-basic-view .fc-week-number,
.fc-basic-view .fc-day-number {
  padding: 2px; }

.fc-basic-view th.fc-week-number,
.fc-basic-view th.fc-day-number {
  padding: 0 2px;
  /* column headers can't have as much v space */ }

.fc-ltr .fc-basic-view .fc-day-top .fc-day-number {
  float: right; }

.fc-rtl .fc-basic-view .fc-day-top .fc-day-number {
  float: left; }

.fc-ltr .fc-basic-view .fc-day-top .fc-week-number {
  float: left;
  border-radius: 0 0 3px 0; }

.fc-rtl .fc-basic-view .fc-day-top .fc-week-number {
  float: right;
  border-radius: 0 0 0 3px; }

.fc-basic-view .fc-day-top .fc-week-number {
  min-width: 1.5em;
  text-align: center;
  background-color: #f2f2f2;
  color: #808080; }

/* when week/day number have own column */
.fc-basic-view td.fc-week-number {
  text-align: center; }

.fc-basic-view td.fc-week-number > * {
  /* work around the way we do column resizing and ensure a minimum width */
  display: inline-block;
  min-width: 1.25em; }

/* AgendaView all-day area
--------------------------------------------------------------------------------------------------*/
.fc-agenda-view .fc-day-grid {
  position: relative;
  z-index: 2;
  /* so the "more.." popover will be over the time grid */ }

.fc-agenda-view .fc-day-grid .fc-row {
  min-height: 3em;
  /* all-day section will never get shorter than this */ }

.fc-agenda-view .fc-day-grid .fc-row .fc-content-skeleton {
  padding-bottom: 1em;
  /* give space underneath events for clicking/selecting days */ }

/* TimeGrid axis running down the side (for both the all-day area and the slot area)
--------------------------------------------------------------------------------------------------*/
.fc .fc-axis {
  /* .fc to overcome default cell styles */
  vertical-align: middle;
  padding: 0 4px;
  white-space: nowrap; }

.fc-ltr .fc-axis {
  text-align: right; }

.fc-rtl .fc-axis {
  text-align: left; }

/* TimeGrid Structure
--------------------------------------------------------------------------------------------------*/
.fc-time-grid-container,
.fc-time-grid {
  /* so slats/bg/content/etc positions get scoped within here */
  position: relative;
  z-index: 1; }

.fc-time-grid {
  min-height: 100%;
  /* so if height setting is 'auto', .fc-bg stretches to fill height */ }

.fc-time-grid table {
  /* don't put outer borders on slats/bg/content/etc */
  border: 0 hidden transparent; }

.fc-time-grid > .fc-bg {
  z-index: 1; }

.fc-time-grid .fc-slats,
.fc-time-grid > hr {
  /* the <hr> AgendaView injects when grid is shorter than scroller */
  position: relative;
  z-index: 2; }

.fc-time-grid .fc-content-col {
  position: relative;
  /* because now-indicator lives directly inside */ }

.fc-time-grid .fc-content-skeleton {
  position: absolute;
  z-index: 3;
  top: 0;
  left: 0;
  right: 0; }

/* divs within a cell within the fc-content-skeleton */
.fc-time-grid .fc-business-container {
  position: relative;
  z-index: 1; }

.fc-time-grid .fc-bgevent-container {
  position: relative;
  z-index: 2; }

.fc-time-grid .fc-highlight-container {
  position: relative;
  z-index: 3; }

.fc-time-grid .fc-event-container {
  position: relative;
  z-index: 4; }

.fc-time-grid .fc-now-indicator-line {
  z-index: 5; }

.fc-time-grid .fc-helper-container {
  /* also is fc-event-container */
  position: relative;
  z-index: 6; }

/* TimeGrid Slats (lines that run horizontally)
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-slats td {
  height: 1.5em;
  border-bottom: 0;
  /* each cell is responsible for its top border */ }

.fc-time-grid .fc-slats .fc-minor td {
  border-top-style: dotted; }

/* TimeGrid Highlighting Slots
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-highlight-container {
  /* a div within a cell within the fc-highlight-skeleton */
  position: relative;
  /* scopes the left/right of the fc-highlight to be in the column */ }

.fc-time-grid .fc-highlight {
  position: absolute;
  left: 0;
  right: 0;
  /* top and bottom will be in by JS */ }

/* TimeGrid Event Containment
--------------------------------------------------------------------------------------------------*/
.fc-ltr .fc-time-grid .fc-event-container {
  /* space on the sides of events for LTR (default) */
  margin: 0 2.5% 0 2px; }

.fc-rtl .fc-time-grid .fc-event-container {
  /* space on the sides of events for RTL */
  margin: 0 2px 0 2.5%; }

.fc-time-grid .fc-event,
.fc-time-grid .fc-bgevent {
  position: absolute;
  z-index: 1;
  /* scope inner z-index's */ }

.fc-time-grid .fc-bgevent {
  /* background events always span full width */
  left: 0;
  right: 0; }

/* Generic Vertical Event
--------------------------------------------------------------------------------------------------*/
.fc-v-event.fc-not-start {
  /* events that are continuing from another day */
  /* replace space made by the top border with padding */
  border-top-width: 0;
  padding-top: 1px;
  /* remove top rounded corners */
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.fc-v-event.fc-not-end {
  /* replace space made by the top border with padding */
  border-bottom-width: 0;
  padding-bottom: 1px;
  /* remove bottom rounded corners */
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

/* TimeGrid Event Styling
----------------------------------------------------------------------------------------------------
We use the full "fc-time-grid-event" class instead of using descendants because the event won't
be a descendant of the grid when it is being dragged.
*/
.fc-time-grid-event {
  overflow: hidden;
  /* don't let the bg flow over rounded corners */ }

.fc-time-grid-event.fc-selected {
  /* need to allow touch resizers to extend outside event's bounding box */
  /* common fc-selected styles hide the fc-bg, so don't need this anyway */
  overflow: visible; }

.fc-time-grid-event.fc-selected .fc-bg {
  display: none;
  /* hide semi-white background, to appear darker */ }

.fc-time-grid-event .fc-content {
  overflow: hidden;
  /* for when .fc-selected */ }

.fc-time-grid-event .fc-time,
.fc-time-grid-event .fc-title {
  padding: 0 1px; }

.fc-time-grid-event .fc-time {
  font-size: .85em;
  white-space: nowrap; }

/* short mode, where time and title are on the same line */
.fc-time-grid-event.fc-short .fc-content {
  /* don't wrap to second line (now that contents will be inline) */
  white-space: nowrap; }

.fc-time-grid-event.fc-short .fc-time,
.fc-time-grid-event.fc-short .fc-title {
  /* put the time and title on the same line */
  display: inline-block;
  vertical-align: top; }

.fc-time-grid-event.fc-short .fc-time span {
  display: none;
  /* don't display the full time text... */ }

.fc-time-grid-event.fc-short .fc-time:before {
  content: attr(data-start);
  /* ...instead, display only the start time */ }

.fc-time-grid-event.fc-short .fc-time:after {
  content: "\A0-\A0";
  /* seperate with a dash, wrapped in nbsp's */ }

.fc-time-grid-event.fc-short .fc-title {
  font-size: .85em;
  /* make the title text the same size as the time */
  padding: 0;
  /* undo padding from above */ }

/* resizer (cursor device) */
.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer {
  left: 0;
  right: 0;
  bottom: 0;
  height: 8px;
  overflow: hidden;
  line-height: 8px;
  font-size: 11px;
  font-family: monospace;
  text-align: center;
  cursor: s-resize; }

.fc-time-grid-event.fc-allow-mouse-resize .fc-resizer:after {
  content: "="; }

/* resizer (touch device) */
.fc-time-grid-event.fc-selected .fc-resizer {
  /* 10x10 dot */
  border-radius: 5px;
  border-width: 1px;
  width: 8px;
  height: 8px;
  border-style: solid;
  border-color: inherit;
  background: #fff;
  /* horizontally center */
  left: 50%;
  margin-left: -5px;
  /* center on the bottom edge */
  bottom: -5px; }

/* Now Indicator
--------------------------------------------------------------------------------------------------*/
.fc-time-grid .fc-now-indicator-line {
  border-top-width: 1px;
  left: 0;
  right: 0; }

/* arrow on axis */
.fc-time-grid .fc-now-indicator-arrow {
  margin-top: -5px;
  /* vertically center on top coordinate */ }

.fc-ltr .fc-time-grid .fc-now-indicator-arrow {
  left: 0;
  /* triangle pointing right... */
  border-width: 5px 0 5px 6px;
  border-top-color: transparent;
  border-bottom-color: transparent; }

.fc-rtl .fc-time-grid .fc-now-indicator-arrow {
  right: 0;
  /* triangle pointing left... */
  border-width: 5px 6px 5px 0;
  border-top-color: transparent;
  border-bottom-color: transparent; }

/* List View
--------------------------------------------------------------------------------------------------*/
/* possibly reusable */
.fc-event-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 5px; }

/* view wrapper */
.fc-rtl .fc-list-view {
  direction: rtl;
  /* unlike core views, leverage browser RTL */ }

.fc-list-view {
  border-width: 1px;
  border-style: solid; }

/* table resets */
.fc .fc-list-table {
  table-layout: auto;
  /* for shrinkwrapping cell content */ }

.fc-list-table td {
  border-width: 1px 0 0;
  padding: 8px 14px; }

.fc-list-table tr:first-child td {
  border-top-width: 0; }

/* day headings with the list */
.fc-list-heading {
  border-bottom-width: 1px; }

.fc-list-heading td {
  font-weight: bold; }

.fc-ltr .fc-list-heading-main {
  float: left; }

.fc-ltr .fc-list-heading-alt {
  float: right; }

.fc-rtl .fc-list-heading-main {
  float: right; }

.fc-rtl .fc-list-heading-alt {
  float: left; }

/* event list items */
.fc-list-item.fc-has-url {
  cursor: pointer;
  /* whole row will be clickable */ }

.fc-list-item-marker,
.fc-list-item-time {
  white-space: nowrap;
  width: 1px; }

/* make the dot closer to the event title */
.fc-ltr .fc-list-item-marker {
  padding-right: 0; }

.fc-rtl .fc-list-item-marker {
  padding-left: 0; }

.fc-list-item-title a {
  /* every event title cell has an <a> tag */
  text-decoration: none;
  color: inherit; }

.fc-list-item-title a[href]:hover {
  /* hover effect only on titles with hrefs */
  text-decoration: underline; }

/* message when no events */
.fc-list-empty-wrap2 {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.fc-list-empty-wrap1 {
  width: 100%;
  height: 100%;
  display: table; }

.fc-list-empty {
  display: table-cell;
  vertical-align: middle;
  text-align: center; }

.fc-unthemed .fc-list-empty {
  /* theme will provide own background */
  background-color: #eee; }
.course-section {
  border-top: 1px solid #DFE2E6;
  padding-top: 20px;
}

.course-section .vdp-datepicker__calendar {
  z-index: 1050 !important;
}

.course-section .btn-collapse-header {
  width: 100%;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  border: none;
  background: transparent;
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  text-align: left;
  color: #4A4A4A;
  margin-bottom: 23px;
}

.course-section .btn-collapse-header .mdi {
  font-size: 40px;
}

.course-section .profile-upload__container {
  border: 1px dashed #ADADAD;
  border-radius: 4px;
}

.course-section .profile-upload__label-container p {
  font-size: 14px;
  line-height: 19px;
  text-align: center;
  color: #ADADAD;
}

.course-section .btn-close-period {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.course-section .btn-close-period span {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.course-section .btn-close-period .mdi {
  background: #C4C4C4;
  border-radius: 50%;
  font-weight: 800;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  width: 16px;
  height: 16px;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}

.course-section .btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.course-section .btn-check:checked ~ .btn {
  background: #17BEBB;
  color: #FFFFFF;
}

.course-section .form-group-disabilities {
  -webkit-transition: all;
  transition: all;
}

.course-section .form-group-disabilities.disabled {
  opacity: .33;
  pointer-events: none;
}

.course-section .form-group-disabilities.disabled .btn {
  border: 1px solid #E8E8E8;
  color: #E8E8E8 !important;
}

.course-section input[type="date"] {
  position: relative;
  padding-right: 1.5rem !important;
}

.course-section input[type="date"]::-webkit-inner-spin-button,
.course-section input[type="date"]::-webkit-calendar-picker-indicator {
  background-color: #e9ecef;
  position: absolute;
  top: 0;
  right: 0;
  padding: .45rem .5rem;
  height: 21px;
  border: 1px solid #dee2e6;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top: none;
  border-bottom: none;
  border-right: none;
}

.course-section input[type="time"]::-webkit-calendar-picker-indicator {
  background: none;
  display: none;
  -webkit-appearance: none;
}

.course-section .card {
  background: #F2F3FA;
}

.course-section .custom-radio-with-input-text .form-control {
  width: 20%;
  border-bottom: 1px solid #dee2e6;
  border-top: none;
  border-left: none;
  border-right: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  height: auto;
}

.course-section .custom-radio-with-input-text .mdi {
  color: #C4C4C4;
}

.course-section .lesson-date-container.disabled {
  pointer-events: none;
  opacity: 0.3;
}

.course-section .course-day-row.disabled {
  pointer-events: none;
  opacity: .3;
}

.course-section .course-day-slots-collapse {
  cursor: pointer;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
  color: #4A4A4A;
}

.course-section .form-group .btn.disabled {
  opacity: .3;
  pointer-events: none;
}

.course-section .custom-control-company-fee .custom-control-label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.course-section .custom-control-company-fee .custom-control-label:before,
.course-section .custom-control-company-fee .custom-control-label:after {
  top: 0;
}

.course-section .custom-control-company-fee span {
  display: inline-block;
  text-decoration: underline;
  cursor: pointer;
  font-weight: 600;
  font-size: 8px;
  line-height: 11px;
  color: #17BEBB;
}

.fixed-bottom-actions {
  background: #FFFFFF;
  padding: 15px 0;
  z-index: 1040;
}

.form-group-info {
  margin-top: 16px;
}

.form-group-info .control-label {
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.form-group-info .custom-control-label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.form-group-info span {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #9C9C9C;
}

.tooltip .arrow:before {
  display: none;
}

.tooltip .tooltip-inner {
  background: #FFFFFF;
  border: 1px solid #E8E8E8;
  box-sizing: border-box;
  border-radius: 4px;
  text-align: left;
  padding: 14px 20px;
  max-width: 290px;
}

.tooltip .tooltip-inner p.text-orange {
  color: #FD6E00;
  font-weight: 600;
}

.tooltip .tooltip-inner p:last-child {
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  margin-bottom: 0;
}

#addCompanyFeeModal .custom-control-inline {
  margin-right: 0.5rem;
}

#addCompanyFeeModal .text-muted {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #ADADAD;
}

#addCompanyFeeModal input[type="date"] {
  position: relative;
  padding-right: 1.5rem !important;
}

#addCompanyFeeModal input[type="date"]::-webkit-inner-spin-button,
#addCompanyFeeModal input[type="date"]::-webkit-calendar-picker-indicator {
  background-color: #e9ecef;
  position: absolute;
  top: 0;
  right: 0;
  padding: .45rem .5rem;
  height: 21px;
  border: 1px solid #dee2e6;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top: none;
  border-bottom: none;
  border-right: none;
}

#courseSmartModal .modal-title,
#duplicateCourseModal .modal-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #6E757C;
}

#courseSmartModal .btn-close-period,
#duplicateCourseModal .btn-close-period {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

#courseSmartModal .btn-close-period span,
#duplicateCourseModal .btn-close-period span {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

#courseSmartModal .btn-close-period .mdi,
#duplicateCourseModal .btn-close-period .mdi {
  background: #C4C4C4;
  border-radius: 50%;
  font-weight: 800;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  width: 16px;
  height: 16px;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}

#courseSmartModal .btn-delete,
#duplicateCourseModal .btn-delete {
  color: #4A4A4A;
  font-size: 19px;
}

#courseSmartModal .custom-radio-with-input-text .form-control,
#duplicateCourseModal .custom-radio-with-input-text .form-control {
  width: 20%;
  border-bottom: 1px solid #dee2e6;
  border-top: none;
  border-left: none;
  border-right: none;
  border-radius: 0;
  background: transparent;
  padding: 0;
  height: auto;
}

#courseSmartModal .custom-radio-with-input-text .mdi,
#duplicateCourseModal .custom-radio-with-input-text .mdi {
  color: #C4C4C4;
}

#courseSmartModal input[type="date"],
#duplicateCourseModal input[type="date"] {
  position: relative;
  padding-right: 1.5rem !important;
}

#courseSmartModal input[type="date"]::-webkit-inner-spin-button,
#courseSmartModal input[type="date"]::-webkit-calendar-picker-indicator,
#duplicateCourseModal input[type="date"]::-webkit-inner-spin-button,
#duplicateCourseModal input[type="date"]::-webkit-calendar-picker-indicator {
  background-color: #e9ecef;
  position: absolute;
  top: 0;
  right: 0;
  padding: .45rem .5rem;
  height: 21px;
  border: 1px solid #dee2e6;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top: none;
  border-bottom: none;
  border-right: none;
}

#courseSmartModal input[type="time"]::-webkit-calendar-picker-indicator,
#duplicateCourseModal input[type="time"]::-webkit-calendar-picker-indicator {
  background: none;
  display: none;
  -webkit-appearance: none;
}

#courseSmartModal .course-day-row {
  padding-bottom: .75rem;
}

#courseSmartModal .course-day-row + .course-day-row {
  padding-top: .75rem;
  border-top: 1px dashed #E8E8E8;
}

#editPendingModal .modal-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #6E757C;
  text-align: center;
}

#editPendingModal .modal-body p {
  font-weight: 600;
  font-size: 18px;
  line-height: 25px;
  text-align: center;
  color: #4A4A4A;
}

.dashboard-page {
  max-width: 1024px;
  margin: auto;
}

.dashboard-page img {
  width: 100%;
}

.dashboard-page .dashboard-shadow {
  box-shadow: 0px 0px 23px -7px rgba(20, 0, 0, 0.2);
}

.dashboard-page .border-5 {
  border-radius: 5px;
}

.dashboard-page .border-10 {
  border-radius: 10px;
}

.dashboard-page .border-15 {
  border-radius: 15px;
}

@media screen and (max-width: 500px) {
  .dashboard-page .border-15 {
    border-radius: 5px;
  }
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-margin-bottom:first-child {
    margin-bottom: 20px;
  }
}

.dashboard-page .dashboard-margin-bottom + .dashboard-margin-bottom {
  margin-top: 40px;
}

.dashboard-page .dashboard-buttons {
  border-radius: 10px;
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-buttons {
    border-radius: 100px;
  }
}

.dashboard-page .dashboard-banner-pro {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: 5px 0;
  background: #17BEBB;
  /* Card Shadow */
  text-align: center;
  font-size: 16px;
  box-shadow: 0px 0px 20px rgba(74, 74, 74, 0.2);
  border-radius: 5px;
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-banner-pro {
    display: block;
    padding: 12px 0;
  }
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-banner-pro .title {
    display: block;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #FFFFFF;
  }
}

.dashboard-page .dashboard-banner-pro p {
  color: #FFFFFF;
  line-height: 20px;
  margin-bottom: 0;
  margin-right: 0.20rem;
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-banner-pro p {
    margin-right: 0;
    padding: 0 5px;
  }
}

.dashboard-page .dashboard-banner-pro mark {
  background: transparent;
  border: 1px solid #FFFFFF;
  color: #FFFFFF;
  font-weight: bold;
  padding: 0px 2px;
}

.dashboard-page .dashboard-banner-pro .btn.btn-secondary {
  background: #FFFFFF;
  /* Secondary */
  color: #17BEBB;
  border: 1px solid #17BEBB;
  box-sizing: border-box;
  border-radius: 47px;
  text-transform: uppercase;
  font-weight: bold;
}

@media screen and (max-width: 500px) {
  .dashboard-page .dashboard-banner-pro .btn.btn-secondary {
    margin-top: 16px;
  }
}

.dashboard-page .banner-status-one {
  background: #CDF7DB;
  height: 100%;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: 5px 0;
  text-align: center;
  font-size: 16px;
  box-shadow: 0px 0px 20px rgba(74, 74, 74, 0.2);
  border-radius: 5px;
}

.dashboard-page .banner-status-one-title {
  font-size: 18px;
  padding-top: 10%;
}

.dashboard-page .banner-status-one-title span {
  color: #44C771;
  font-weight: bold;
}

.dashboard-page .banner-status-one-sub {
  font-size: 18px;
}

.dashboard-page .banner-status-one-sub span {
  font-weight: bold;
}

.dashboard-page .banner-status-one-button {
  width: 90%;
  border: 0px !important;
  border-radius: 22px  !important;
  background: #74C971 !important;
  text-transform: uppercase;
  font-weight: bold;
}

.dashboard-page .banner-status-two {
  background: #CDF7DB;
  height: 100%;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: 5px 0;
  text-align: center;
  font-size: 16px;
  box-shadow: 0px 0px 20px rgba(74, 74, 74, 0.2);
  border-radius: 5px;
}

.dashboard-page .banner-status-two-title {
  font-size: 18px;
  padding-top: 10%;
}

.dashboard-page .banner-status-two-title span {
  color: #44C771;
  font-weight: bold;
}

.dashboard-page .banner-status-two-sub {
  font-size: 18px;
}

.dashboard-page .banner-status-two-sub span {
  font-weight: bold;
}

.dashboard-page .banner-status-two-button {
  margin-top: 10px;
  color: white;
  width: 90%;
  margin-left: 5%;
  border: 0px !important;
  border-radius: 22px  !important;
  background: #A1D4AF !important;
  text-transform: uppercase;
  font-weight: bold;
}

.dashboard-page .banner-status-three {
  padding: 5px 0;
  background: #fff;
  height: 100%;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  text-align: center;
  font-size: 16px;
  border-radius: 5px;
  border: 2px solid #44C771;
  margin: 0 15px;
}

.dashboard-page .banner-status-three-title,
.dashboard-page .banner-status-four-title {
  font-size: 20px;
  padding-top: 10px;
}

.dashboard-page .banner-status-three-title span,
.dashboard-page .banner-status-four-title span {
  color: #17BEBB;
  font-weight: bold;
}

.dashboard-page .banner-status-three-button {
  margin-top: 20px;
  color: white;
  width: 140px;
  margin-left: 10%;
  border: 0px !important;
  border-radius: 25px  !important;
  background: #44C771 !important;
  display: inline-block;
  text-transform: uppercase;
  font-weight: bold;
  padding: 10px;
  position: absolute;
  left: 50%;
  margin-left: -70px;
}

.dashboard-page .banner-status-four {
  background: #fff;
  height: 100%;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  padding: 5px 0;
  text-align: center;
  font-size: 16px;
  border-radius: 5px;
  border: 2px solid #44C771;
  margin: 0 15px;
}

@media screen and (min-width: 992px) {
  .dashboard-page .banner-status-three,
  .dashboard-page .banner-status-four {
    margin: 0;
    padding-top: 10%;
  }
}

@media screen and (max-width: 992px) {
  .dashboard-page .banner-status-three,
  .dashboard-page .banner-status-four {
    min-height: 130px;
  }

  .dashboard-page .banner-status-four {
    min-height: 60px;
  }
}

.modules-create input[type="text"] {
  font-family: "Nunito", sans-serif !important;
}

.modules-create input[type="text"]::-webkit-input-placeholder,
.modules-create input[type="text"]:-ms-input-placeholder,
.modules-create input[type="text"]::-webkit-input-placeholder {
  color: #dee2e6;
}

.modules-create input[type="text"]::-webkit-input-placeholder,
.modules-create input[type="text"]:-ms-input-placeholder,
.modules-create input[type="text"]::placeholder {
  color: #dee2e6;
}

.modules-create .ql-editor {
  font-family: "Nunito", sans-serif !important;
}

.modules-create .ql-editor.ql-blank:before {
  color: #AFB5BC;
  font-style: unset;
}

.table-label {
  font-size: 8px;
  line-height: 11px;
  display: block;
}

#moduleActivities .form-group label {
  font-size: 15px;
  line-height: 20px;
}

#moduleActivities .form-group.disabled {
  opacity: .6;
  pointer-events: none;
}

#moduleActivities .select2-selection__choice {
  background: #FFFFFF !important;
  border: 1px solid #4A4A4A;
  box-sizing: border-box;
  border-radius: 20px;
  font-size: 10px;
  line-height: 12px;
  letter-spacing: -0.02em;
  color: #4A4A4A;
  padding: 5px 10px;
}

#moduleActivities .select2-selection__choice .select2-selection__choice__remove {
  color: #4A4A4A;
  font-size: 14px;
}

.modal-dialog .alert {
  word-break: break-all;
}

.module-apply--container .module-title {
  font-size: 30px;
  font-weight: 600;
}

@media screen and (max-width: 500px) {
  .module-apply--container .module-title {
    font-size: 24px;
    line-height: 30px;
  }
}

.module-apply--container .module-subtitle {
  font-weight: 600;
  font-size: 18px;
}

@media screen and (max-width: 500px) {
  .module-apply--container .module-subtitle {
    font-size: 14px;
    line-height: 21px;
    font-weight: 500;
  }
}

.module-apply--container .textarea-container {
  border: 0.5px solid #A6A4A4;
  border-radius: 2px;
  color: #4A4A4A;
  background-color: #F2F2F2;
  padding: 10px 40px 10px 15px;
  height: 250px;
  overflow-y: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */
}

.module-apply--container .textarea-container::-webkit-scrollbar {
  width: 5px;
}

.module-apply--container .textarea-container::-webkit-scrollbar-track {
  background: rgba(225, 225, 225, 0.5);
}

.module-apply--container .textarea-container::-webkit-scrollbar-thumb {
  background: #FD6E00;
  border-radius: 2.5px;
}

.module-apply--container .textarea-container::-webkit-scrollbar-thumb:hover {
  background: #4A4A4A;
}

.module-apply--container .textarea-container-white {
  border: 0.5px solid #dedede;
  border-radius: 2px;
  color: #4A4A4A;
  background-color: #fff;
  padding: 10px 40px 10px 15px;
  height: 250px;
  overflow-y: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */
}

.module-apply--container .textarea-container-white::-webkit-scrollbar {
  width: 5px;
}

.module-apply--container .textarea-container-white::-webkit-scrollbar-track {
  background: rgba(225, 225, 225, 0.5);
}

.module-apply--container .textarea-container-white::-webkit-scrollbar-thumb {
  background: #FD6E00;
  border-radius: 2.5px;
}

.module-apply--container .textarea-container-white::-webkit-scrollbar-thumb:hover {
  background: #4A4A4A;
}

.module-sent-list-filters label {
  font-weight: 600;
  font-size: 14.4407px;
  line-height: 20px;
}

.module-sent-list-filters .btn-link {
  color: #4A4A4A;
}

.module-sent-list-filters .btn-link:hover {
  text-decoration: underline;
}

.module-sent-list-filters .form-control:disabled,
.module-sent-list-filters .form-control[readonly] {
  background-color: #FFFFFF;
}

#moduleSendNew .modal-title {
  color: #4A4A4A;
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
}

#moduleSendNew .table-scrcoll {
  max-height: 350px;
  overflow-y: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */
}

#moduleSendNew .table-scrcoll::-webkit-scrollbar {
  width: 5px;
}

#moduleSendNew .table-scrcoll::-webkit-scrollbar-track {
  background: rgba(225, 225, 225, 0.5);
}

#moduleSendNew .table-scrcoll::-webkit-scrollbar-thumb {
  background: #4A4A4A;
  border-radius: 2.5px;
}

#moduleSendNew .table-scrcoll::-webkit-scrollbar-thumb:hover {
  background: #4A4A4A;
}

#moduleSendNew .table-scrcoll span.disabled {
  color: rgba(74, 74, 74, 0.33);
  pointer-events: none;
}

.invoice-create textarea {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.invoice-label {
  margin-bottom: 12px;
  margin-left: 1em;
  font-size: 12px;
}

.profile-upload__container {
  background: #fff;
  border: 1px solid rgba(123, 123, 123, 0.2);
  border-radius: 5px;
  box-sizing: border-box;
  min-height: 175px;
  max-height: 175px;
  height: 175px;
  overflow: hidden;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  position: relative;
}

.profile-upload__container p {
  color: rgba(74, 74, 74, 0.75);
}

.profile-upload__container input[type=file] {
  position: absolute;
  top: 0;
  bottom: 0;
  opacity: 0;
  cursor: -webkit-grab;
  cursor: grab;
  z-index: 1020;
}

.course-days-alert {
  -webkit-box-align: center;
          align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1050;
  background: rgba(255, 255, 255, 0.75);
  padding: 1.5rem;
}

.badge {
  display: inline-block;
  font-weight: 600;
  font-size: 13px;
  line-height: 18px;
  border-radius: 50px;
  padding: 0 9px;
}

.badge.badge-light-blue {
  background: #CDF7F6;
  color: #17BEBB;
}

.badge.badge-orange {
  background: #FFD8BA;
  color: #FD6E00;
}

.btn.active {
  pointer-events: none;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn.disabled {
  pointer-events: none;
}

.tab-pane {
  position: relative;
}

#listPartecipantModal .modal-header h5 {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
}

#listPartecipantModal .modal-header p {
  font-weight: bold;
  font-size: 14px;
  line-height: 19px;
  color: #8B8B8B;
}

#listPartecipantModal .modal-body .list-partecipants-badge span {
  display: block;
}

#listPartecipantModal .modal-body .list-partecipants-badge span:first-child {
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  color: #8B8B8B;
}

#listPartecipantModal .modal-body .list-partecipants-badge span:last-child {
  font-weight: bold;
  font-size: 18px;
  line-height: 25px;
  color: #4A4A4A;
}

.fc-button {
  display: -webkit-box !important;
  display: flex !important;
  -webkit-box-align: center !important;
          align-items: center !important;
}

.select2-container .select2-selection--multiple .select2-selection__choice {
  display: inline-block;
  background: #17BEBB !important;
  border-radius: 3px;
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #FFFFFF;
}

.create-member-container .create-member-actions {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: end;
          justify-content: flex-end;
  text-align: right;
}

.create-member-container .create-member-actions p {
  margin-right: .75rem;
  margin-bottom: 0;
}

@media screen and (max-width: 500px) {
  .create-member-container .create-member-actions p {
    margin-right: 0;
    margin-bottom: .75rem;
  }
}

.create-member-container .create-member-actions .btn + .btn {
  margin-left: 0.75rem !important;
}

@media screen and (max-width: 500px) {
  .create-member-container .create-member-actions {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    text-align: center;
  }
}

.form-group-invalid .select2-selection {
  border-color: #fa5c7c;
}

.form-group-invalid .select2-container .select2-selection--single .select2-selection__arrow b {
  color: #fa5c7c;
}

.btn-multiple {
  font-weight: bold;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
}

.btn-multiple span {
  text-decoration: underline;
}

.btn-linked-field {
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
}

.flex-2 {
  -webkit-box-flex: 2;
          flex: 2;
}

.section-label-form {
  font-weight: bold;
  font-size: 20px;
  line-height: 27px;
  color: #4A4A4A;
}

.modal-dialog .modal-header .modal-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
}

.modal-dialog .modal-body .section-label-form {
  font-weight: bold;
  font-size: 16px;
  line-height: 22px;
  color: #4A4A4A;
}

.modal-dialog .modal-body .custom-control.disabled {
  pointer-events: none;
  opacity: 0.33;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.member-form-group-field .input-group .input-group-append .btn {
  border: 1px solid #E8E8E8;
  border-left: none;
}

.custom-checkbox .disabled {
  pointer-events: none;
  opacity: .4;
}

.dtbl-disabled {
  pointer-events: none;
}

.dtbl-disabled .text-disabled {
  opacity: .5;
}

.ransom-voucher-page .send-invoice-fixed_bottom {
  position: fixed;
  padding: 20px 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
  background-color: white;
  box-shadow: -4px -8px 83px -8px rgba(0, 0, 0, 0.45);
}

.ransom-voucher-page .card-total-divider {
  border-bottom: 1px dashed #DEDEDE;
  padding-bottom: 16px;
  margin-bottom: 20px;
}

.ransom-voucher-page .card-total {
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-partecipant-detail .voucher-partecipant-title {
  font-weight: 700;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  display: block;
}

.ransom-voucher-page .card-total .voucher-partecipant-detail .voucher-partecipant-product {
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-partecipant-detail ul li {
  display: block;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-partecipant-detail ul li + li {
  margin-top: 8px;
}

.ransom-voucher-page .card-total .voucher-partecipant-subtotal span {
  font-weight: 400;
  font-size: 12px;
  line-height: 20px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-partecipant-subtotal strong {
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-total-detail {
  text-align: right;
}

.ransom-voucher-page .card-total .voucher-total-detail span {
  display: block;
  font-weight: 400;
  font-size: 12px;
  line-height: 20px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-total .voucher-total-detail span.total {
  font-weight: 700;
  font-size: 20px;
  line-height: 20px;
}

.ransom-voucher-page .card-sportman-detail {
  color: #4A4A4A;
}

.ransom-voucher-page .card-sportman-detail ul li {
  display: block;
  font-weight: 400;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-sportman-detail ul li + li {
  margin-top: 8px;
}

.ransom-voucher-page .card-sportman-detail .sportman-item + .sportman-item {
  border-top: 1px solid #4A4A4A;
}

.ransom-voucher-page .card-sportman-detail h4 {
  font-weight: 700;
  font-size: 20px;
  line-height: 27px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-sportman-detail .card-body h5 {
  font-weight: 700;
  font-size: 16px;
  line-height: 22px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-responsible-detail {
  border-top: 1px dashed #DEDEDE;
  padding-top: 15px;
  color: #4A4A4A;
}

.ransom-voucher-page .card-sportman-detail .title,
.ransom-voucher-page .card-responsible-detail .title {
  display: block;
  font-weight: 700;
  font-size: 12px;
  line-height: 16px;
  text-transform: uppercase;
  color: #4A4A4A;
  margin-bottom: 15px;
}

.checkin-members-container h2 {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
}

.checkin-members-container p {
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
}

.checkin-members-container .table-striped .form-group label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.checkin-members-container input[type="time"]::-webkit-calendar-picker-indicator {
  background: none;
  display: none;
  -webkit-appearance: none;
}

.checkin-members-container .badge-counter {
  margin: 15px 0 15px 0;
  background: #CDF7F6;
  border-radius: 4px;
  padding: 5px 15px;
}

.checkin-members-container .badge-counter span {
  display: block;
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  color: #8B8B8B;
}

.checkin-members-container .badge-counter h3 {
  font-weight: bold;
  font-size: 18px;
  line-height: 25px;
  color: #4A4A4A;
  margin: 0;
}

.course-subscriptions-wrapper .badge {
  display: inline-block;
  font-weight: 600;
  font-size: 13px;
  line-height: 18px;
  border-radius: 50px;
  padding: 0 9px;
}

.course-subscriptions-wrapper .badge.badge-light-blue {
  background: #CDF7F6;
  color: #17BEBB;
}

.course-subscriptions-wrapper .badge.badge-orange {
  background: #FFD8BA;
  color: #FD6E00;
}

.course-subscriptions-wrapper .text-muted {
  display: block;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #ADADAD;
}

.course-subscriptions-wrapper strong {
  font-weight: 600;
}

.course-subscriptions-wrapper .filters .filters-label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.course-subscriptions-wrapper input[type="time"]::-webkit-calendar-picker-indicator {
  background: none;
  display: none;
  -webkit-appearance: none;
}

.course-subscriptions-wrapper .btn.active {
  pointer-events: none;
  background-color: #6c757d;
  border-color: #6c757d;
}

.course-subscriptions-wrapper .btn.disabled {
  pointer-events: none;
}

.course-info-container a:not(.btn) {
  color: #ffffff;
  text-decoration: underline;
  font-size: 14px;
  line-height: 16px;
}

.course-info-container .fw-600 {
  font-weight: 600;
}

#newAddPartecipantModal .modal-header .modal-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #6E757C;
  margin-bottom: 9px;
}

#newAddPartecipantModal .modal-header p {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  text-align: center;
  color: #4A4A4A;
}

.reservation-modal .alert {
  border-radius: 4px;
}

.reservation-modal .alert h2 {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  margin-bottom: 0;
}

.reservation-modal .alert.alert-primary {
  background: rgba(23, 190, 187, 0.1);
}

.reservation-modal .alert.alert-primary h2 {
  color: #17BEBB;
}

.reservation-modal .alert.alert-primary p {
  color: #17BEBB;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
}

.reservation-modal .alert.alert-danger {
  background: rgba(238, 75, 75, 0.1);
}

.reservation-modal .alert.alert-danger h2 {
  color: #EE4B4B;
}

.reservation-modal .alert.alert-danger p {
  color: #EE4B4B;
}

.reservation-modal .alert.alert-warning {
  background: rgba(253, 110, 0, 0.1);
}

.reservation-modal .alert.alert-warning h2 {
  color: #FD6E00;
}

.reservation-modal .alert.alert-warning p {
  color: #FD6E00;
}

.reservation-modal .reservation-more-infos h3 {
  font-weight: 600;
  font-size: 24px;
  line-height: 34px;
  text-align: center;
  letter-spacing: -0.5px;
  text-transform: uppercase;
}

.reservation-modal .reservation-more-infos .btn-primary {
  font-weight: 600;
}

.reservation-modal .reservation-more-infos .btn-primary.orange {
  background-color: #FD6E00;
  border-color: #FD6E00;
}

.reservation-modal .reservation-more-infos .form-group h3 {
  font-weight: 600;
  font-size: 20px;
  line-height: 34px;
  text-align: center;
  letter-spacing: -0.5px;
  color: #4A4A4A;
}

@media screen and (max-width: 500px) {
  .reservation-modal .reservation-more-infos .form-group h3 {
    font-size: 18px;
  }
}

.reservation-canceled {
  opacity: .4;
}

.modal-acceptance .modal-content {
  padding: 20px 30px;
}

.modal-acceptance .modal-content .modal-loader {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
  background: white;
  z-index: 100;
}

.modal-acceptance .modal-content .modal-loader .modal-loader-content {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: center;
          justify-content: center;
  -webkit-box-align: center;
          align-items: center;
}

.modal-acceptance .modal-content .modal-title {
  text-align: center;
  font-weight: normal;
  color: #4A4A4A;
  font-size: 20px;
  line-height: 27px;
}

.modal-acceptance .modal-content .form-group label {
  display: block;
  font-weight: normal;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.modal-acceptance .modal-content .modal-body {
  color: #4A4A4A;
}

.modal-acceptance .modal-content .modal-body .acceptance-form {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  -webkit-box-pack: justify;
          justify-content: space-between;
  min-height: 350px;
}

.modal-acceptance .modal-content .modal-body h3 {
  font-weight: bold;
  font-size: 24px;
  line-height: 28px;
  color: #4A4A4A;
}

.side-nav-item .badge {
  display: inline-block;
  padding: 0 !important;
  width: 18px;
  height: 18px;
  font-weight: 600;
  font-size: 13px;
  line-height: 18px;
}

.side-nav-item .badge.rounded {
  background: #EE4B4B;
  border-radius: 50px !important;
}

.contact-requests-table .badge.rounded {
  padding: 0 !important;
  background: #EE4B4B;
  border-radius: 50px !important;
  display: inline-block;
  width: 8px;
  height: 8px;
}

.contact-requests-table strong {
  font-weight: bold;
  font-size: 14px;
  line-height: 16px;
  color: #4A4A4A;
}

.contact-requests-table .form-group label {
  font-weight: bold;
  font-size: 14px;
  line-height: 16px;
  color: #4A4A4A;
}

.contact-requests-table .form-group textarea {
  background: #F2F3FA;
  border-radius: 0;
  resize: none;
  padding: 15px 30px;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.contact-requests-table .form-group textarea:placeholder {
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.contact-requests-table .list-group-contact-requests .list-group-item {
  border-radius: 0;
  border-top: 1px solid #DEDEDE;
  border-left: none;
  border-right: none;
  border-bottom: none;
  padding: 20px 15px;
}

.contact-requests-table .list-group-contact-requests .list-group-item.is-owner {
  border-top: none;
  background: #F2F3FA;
}

.contact-requests-table .list-group-contact-requests .list-group-item .mdi {
  margin-right: 7px;
}

.contact-requests-table .list-group-contact-requests .list-group-item .list-group-item-body p {
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.contact-requests-table .list-group-contact-requests .list-group-item .list-group-item-body label {
  margin-bottom: 0;
  display: block;
  font-weight: bold;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.member-configurator-container .btn-section-container {
  margin-top: 80px;
}

.member-configurator-container .btn-section-container .btn-section {
  font-weight: bold;
  font-size: 20px;
  line-height: 27px;
  color: #4A4A4A;
}

.member-configurator-container .btn-section-container .btn-section span {
  text-decoration: underline;
}

.member-configurator-container .member-configurator-header h2 {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
  margin-bottom: 0;
}

.member-configurator-container .member-configurator-header p {
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
}

.member-configurator-container .member-sections-configurator label {
  font-weight: bold;
  font-size: 20px;
  line-height: 27px;
  color: #4A4A4A;
  font-size: 20px;
  line-height: 27px;
  color: #4A4A4A;
  display: block;
  margin-bottom: 0;
}

.member-configurator-container .member-sections-configurator .custom-switch label {
  margin-bottom: 0;
}

.member-configurator-container .member-sections-configurator .custom-switch span {
  display: inline-block;
  font-size: 12px;
  line-height: 16px;
  color: rgba(0, 0, 0, 0.6);
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item {
  padding: 12px 10px;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
          align-items: center;
  border-radius: 0;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .mdi-drag-variant {
  cursor: move;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .text-muted {
  font-size: 12px;
  line-height: 16px;
  color: #BDBDBD;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .custom-control-input:not(:checked) ~ .custom-control-label::before {
  color: rgba(238, 75, 75, 0.6);
  background-color: rgba(238, 75, 75, 0.6);
  border: none;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .custom-control-input:not(:checked) ~ .custom-control-label::after {
  background-color: #EE4B4B;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .custom-control-input:checked ~ .custom-control-label::before {
  color: rgba(68, 199, 113, 0.6);
  border: none;
  background-color: rgba(68, 199, 113, 0.6);
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #44C771;
}

.member-configurator-container .member-sections-configurator .list-group-item-col .list-group-item .item-type {
  font-size: 12px;
  line-height: 16px;
  color: #BDBDBD;
}

.member-configurator-container .member-sections-configurator .section-row + .section-row {
  margin-top: 50px;
}

.member-configurator-container .member-sections-configurator .section-row .btn-link:last-child.text-primary {
  font-weight: bold;
  font-size: 14px;
  line-height: 19px;
}

.member-configurator-container .member-sections-configurator .section-row .btn-link:last-child.text-primary span {
  text-decoration: underline;
}

.member-configurator-container .member-sections-configurator .section-row .section-row-header .custom-control-input:checked ~ .custom-control-label::before {
  color: rgba(74, 74, 74, 0.6);
  background-color: rgba(74, 74, 74, 0.6);
  border: none;
}

.member-configurator-container .member-sections-configurator .section-row .section-row-header .custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #4A4A4A;
}

.cont-multi-options {
  height: 100px;
  overflow: auto;
  border: 1px solid #ddd;
  padding: 5px;
}

.cont-multi-options > span {
  display: inline-block;
  padding: 4px 10px 4px 5px;
  border: 1px solid #17bebb;
  margin-bottom: 4px;
  margin-right: 6px;
  background-color: #17bebb;
  border-radius: 4px;
}

.cont-multi-options > span label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
  color: #fff !important;
}

#configuratorCustomFields .modal-header .modal-title,
#configuratorCustomSections .modal-header .modal-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
}

#configuratorCustomFields .form-group-options-container,
#configuratorCustomSections .form-group-options-container {
  margin-top: 40px;
  max-height: 250px;
  overflow-y: auto;
  /* width */
  /* Track */
  /* Handle */
  /* Handle on hover */
}

#configuratorCustomFields .form-group-options-container .input-group .form-control,
#configuratorCustomSections .form-group-options-container .input-group .form-control {
  border-radius: 0.25rem;
}

#configuratorCustomFields .form-group-options-container .input-group .btn,
#configuratorCustomSections .form-group-options-container .input-group .btn {
  color: #4A4A4A;
}

#configuratorCustomFields .form-group-options-container::-webkit-scrollbar,
#configuratorCustomSections .form-group-options-container::-webkit-scrollbar {
  width: 5px;
}

#configuratorCustomFields .form-group-options-container::-webkit-scrollbar-track,
#configuratorCustomSections .form-group-options-container::-webkit-scrollbar-track {
  background: rgba(225, 225, 225, 0.5);
}

#configuratorCustomFields .form-group-options-container::-webkit-scrollbar-thumb,
#configuratorCustomSections .form-group-options-container::-webkit-scrollbar-thumb {
  background: #4A4A4A;
  border-radius: 2.5px;
}

#configuratorCustomFields .form-group-options-container::-webkit-scrollbar-thumb:hover,
#configuratorCustomSections .form-group-options-container::-webkit-scrollbar-thumb:hover {
  background: #4A4A4A;
}

#datatable-members .btn.btn-text-small {
  display: -webkit-inline-box;
  display: inline-flex;
  text-align: center;
  max-width: 57px;
  padding: 5px 5px;
}

#datatable-members .btn.btn-text-small span {
  display: block;
  line-height: 11px;
  font-size: 10px;
}

#datatable-members .btn.btn-success {
  background: #44C771;
}

#datatable-members .btn.btn-outline-danger {
  color: #EE4B4B;
  border-color: #EE4B4B;
}

#datatable-members .btn.btn-outline-danger:hover {
  color: #FFFFFF;
}

.member-infos {
  color: #4A4A4A;
}

.member-infos label {
  display: inline-block;
  font-weight: bold;
  font-size: 18px;
  line-height: 25px;
  color: #4A4A4A;
}

.member-infos-title {
  font-weight: bold;
  font-size: 24px;
  line-height: 33px;
  color: #4A4A4A;
  margin-bottom: 0;
}

.member-infos .member-infos-header .member-infos-version-title {
  display: inline-block;
  font-size: 12px;
  line-height: 16px;
}

.modal-versioning-member .list-group-item {
  border-radius: 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: justify;
          justify-content: space-between;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  padding: 10px 15px;
}

.modal-versioning-member .list-group-item .text-primary {
  display: inline-block;
  font-size: 12px;
  line-height: 16px;
}

.modal-versioning-member .list-group-item .btn {
  padding-bottom: 0;
  padding-top: 0;
}

.modal-versioning-member .list-group-item.current {
  background: rgba(23, 190, 187, 0.2);
}

.form-group-section p {
  font-weight: bold;
  font-size: 16px;
  line-height: 22px;
  color: #4A4A4A;
}

.form-group-section .form-group label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.form-group-section + .form-group-section {
  border-top: 1px solid #E8E8E8;
  padding-top: 20px;
}

.form-group-section .btn-close-period {
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.form-group-section .btn-close-period span {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.form-group-section .btn-close-period .mdi {
  background: #C4C4C4;
  border-radius: 50%;
  font-weight: 800;
  font-size: 14px;
  line-height: 19px;
  color: #4A4A4A;
  width: 16px;
  height: 16px;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
  -webkit-box-pack: center;
          justify-content: center;
}

.form-group-section .btn-delete {
  color: #4A4A4A;
  font-size: 19px;
}

.form-group-section .form-btn-check label {
  font-size: 14px;
  line-height: 19px;
  color: #17BEBB;
}

.form-group-section .form-btn-check label:hover {
  color: #FFFFFF;
}

.form-group-section .form-btn-check .btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.form-group-section .form-btn-check .btn-check:checked ~ .btn {
  background: #17BEBB;
  color: #FFFFFF;
}

.form-group-section input[type="date"] {
  position: relative;
  padding-right: 1.5rem !important;
}

.form-group-section input[type="date"]::-webkit-inner-spin-button,
.form-group-section input[type="date"]::-webkit-calendar-picker-indicator {
  background-color: #e9ecef;
  position: absolute;
  top: 0;
  right: 0;
  padding: .45rem .5rem;
  height: 21px;
  border: 1px solid #dee2e6;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top: none;
  border-bottom: none;
  border-right: none;
}

.form-group-section .sc-rounds-container label {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #4A4A4A;
}

.form-group-section .form-group.is-invalid .select2-selection--single,
.form-group-section .form-group.is-invalid .select2-selection {
  border-color: #fa5c7c !important;
}

.tooltip {
  background: #FFFFFF;
  box-shadow: 0px 12px 20px rgba(74, 74, 74, 0.1);
}

.tooltip .tooltip-inner {
  font-weight: 300;
  font-size: 9px;
  line-height: 11px;
  letter-spacing: -0.02em;
  color: #4A4A4A;
}

.summer-camp-form-container h4 {
  font-weight: bold;
  font-size: 18px;
  line-height: 25px;
  color: #4A4A4A;
}

.summer-camp-form-container .form-group.is-invalid .select2-selection {
  border-color: #fa5c7c !important;
}

.summer-camp-form-container .form-group-section .btn-outline-primary .mdi {
  background: #DEDEDE;
  border-radius: 50%;
  width: 20px;
  display: inline-block;
}

.summer-camp-form-container .form-group-section.dashed-divider {
  padding-bottom: 25px;
  border-bottom: 1px dashed #BDBDBD;
}

.summer-camp-form-container .form-group-section .form-group-section-label {
  background: #DDDEE4;
  font-weight: 700;
  font-size: 16px;
  line-height: 22px;
  color: #6E757C;
  padding: 8px 40px;
}

.summer-camp-form-container .form-group-section .ql-container p,
.summer-camp-form-container .form-group-section .ql-container .ql-editor {
  font-size: 14px;
}

.summer-camp-form-container .form-group-section .btn-outline-secondary {
  color: #4A4A4A;
  border-color: #4A4A4A;
}

.summer-camp-form-container .form-group-section .btn-outline-secondary:hover {
  color: #FFFFFF;
}

.summer-camp-form-container .form-group-section + .form-group-section {
  border-top: none;
}

.summer-camp-form-container .form-group-section .form-inline .form-group label {
  margin-bottom: 0.5rem;
}

.summer-camp-form-container .form-group-section .form-inline .form-group + .form-group {
  margin-left: 1.5rem;
}

.summer-camp-form-container .form-group-section .form-inline .form-inline .form-control + .form-control {
  margin-left: 1rem;
}

.summer-camp-form-container .form-group-section .row-modality + .row-modality {
  margin-top: 15px;
}

.summer-camp-form-container .form-group-section .custom-control-label:before,
.summer-camp-form-container .form-group-section .custom-control-label:after {
  top: 0;
}

.summer-camp-form-container .form-group-section .btn-close-period .mdi {
  background: transparent;
  border-radius: 0;
}

.summer-camp-form-container .fw-300 {
  font-weight: 300;
}

.summer-camp-form-container .nav {
  overflow-x: auto;
}

.summer-camp-form-container .nav .nav-item {
  text-align: center;
  border-bottom: 2px solid #17BEBB;
}

.summer-camp-form-container .nav .nav-item .nav-link {
  border-radius: 0;
  font-weight: 600;
  font-size: 15px;
  line-height: 20px;
  color: #4A4A4A;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  background: #FFFFFF;
}

.summer-camp-form-container .nav .nav-item .nav-link.active,
.summer-camp-form-container .nav .nav-item .nav-link:hover {
  color: #FFFFFF;
  font-weight: bold;
  background: #17BEBB;
}

.summer-camp-form-container .tab-content {
  padding-top: 20px;
}

.summer-camp-form-container .sc-age-ranges-container + .sc-age-ranges-container {
  margin-top: 1rem;
}

.summer-camp-form-container .condition-discount-container {
  background: #F2F3FA;
  padding: 20px 40px;
}

.summer-camp-form-container .condition-discount-container.without-container {
  padding: 0;
  background: transparent;
}

.summer-camp-form-container .condition-discount-container .btn-link-condition {
  font-weight: 600;
  font-size: 10px;
  line-height: 14px;
  color: #4A4A4A;
}

.summer-camp-form-container .condition-discount-container .btn-link-condition span {
  -webkit-text-decoration-line: underline;
          text-decoration-line: underline;
}

.summer-camp-form-container .condition-discount-container .btn-link-condition .mdi {
  border-radius: 50%;
  border: 1px solid #4A4A4A;
  width: 16px;
  display: inline-block;
}

.summer-camp-form-container .condition-discount-container .form-group-secondary {
  border: 1px solid #dee2e6;
}

.summer-camp-form-container .condition-discount-container .form-group-secondary:hover,
.summer-camp-form-container .condition-discount-container .form-group-secondary:visited,
.summer-camp-form-container .condition-discount-container .form-group-secondary:active {
  background: transparent;
  color: #4A4A4A;
}

.summer-camp-form-container .condition-discount-container .input-group .form-group-secondary {
  background-color: #e9ecef !important;
}

.summer-camp-form-container .condition-discount-container .input-group .form-group-secondary:hover,
.summer-camp-form-container .condition-discount-container .input-group .form-group-secondary:visited,
.summer-camp-form-container .condition-discount-container .input-group .form-group-secondary:active {
  background: #e9ecef !important;
  color: #4A4A4A;
}

.summer-camp-form-container .condition-discount-container .input-group .dropdown-menu {
  min-width: auto;
}

.summer-camp-form-container .condition-discount-container .input-group .dropdown-menu .dropdown-item {
  cursor: pointer;
}

.summer-camp-form-container .dropdown-toggle {
  white-space: normal !important;
}

.modal-copy-round .modal-content .modal-body p {
  font-weight: 600;
  font-size: 18px;
  line-height: 25px;
  text-align: center;
  color: #4A4A4A;
}

.modal-discount .modal-header h5 {
  font-weight: 700;
  font-size: 24px;
  line-height: 33px;
  color: #6E757C;
}

.modal-discount .modal-body .dropdown-menu {
  min-width: auto;
}

.modal-discount .modal-body .dropdown-menu .dropdown-item {
  cursor: pointer;
}

.modal-discount .modal-body .form-group label {
  display: block;
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  color: #BDBDBD;
}

.modal-discount .modal-body .form-group label.label-descr {
  color: #4A4A4A;
}

.modal-discount .modal-body .form-group .btn-link-condition {
  color: #4A4A4A;
  font-size: 20px;
}

.modal-discount .modal-body .form-group .form-group-secondary {
  background-color: #e9ecef;
  border: 1px solid #ced4da;
}

.modal-discount .modal-body .is-invalid .select2-selection--multiple {
  border-color: #fa5c7c !important;
}

.modal-discount .modal-body .btn-close-period {
  display: block;
  font-weight: 700;
  font-size: 12px;
  line-height: 17px;
}

#datatable-members {
  cursor: pointer;
}

#datatable-members tr:hover {
  background-color: #fefefe;
}

.dt-buttons {
  float: right !important;
}

.dataTables_filter {
  float: left !important;
}

#addCourseDayModal #datatable-reservations_wrapper .row:first-child .col-sm-12:first-child {
  display: none;
}

#datatable-reservations .badge {
  box-sizing: border-box;
  border-radius: 50px;
  font-weight: 600;
  font-size: 13px;
  line-height: 18px;
  padding: 2px 10px;
  background-color: #fff;
}

#datatable-reservations .badge.badge-success {
  border: 1px solid #44C771;
  color: #44C771;
}

#datatable-reservations .badge.badge-warning {
  color: #FEA500;
  border: 1px solid #FEA500;
}

#datatable-reservations .badge.badge-danger {
  border: 1px solid #EE4B4B;
  color: #EE4B4B;
}

#datatable-reservations .badge.badge-default {
  border: 1px solid #8B8B8B;
  color: #8B8B8B;
}

#datatable-reservations .badge.badge-secondary {
  background: #8B8B8B;
  border: 1px solid #8B8B8B;
  color: #FFF;
}

#datatable-reservations .remaining-places p {
  line-height: 16px;
}

.fc-day-grid-event {
  border-radius: 2px;
  border: none;
  cursor: move;
  font-size: .8125rem;
  margin: 5px 7px;
  padding: 5px 5px;
  text-align: center;
}

.fc-more-popover .fc-body.fc-widget-content {
  max-height: 150px;
  overflow: auto;
}

.contracts-scroll-container {
  border: 1px solid #adb5bd;
  border-radius: 2px;
}

#contracts_scroll {
  position: relative;
  height: 220px;
  overflow: auto;
  padding: 10px;
  border-radius: 2px;
  margin: 10px;
  /*overflow-y: scroll; */
}

#contracts_scroll::-webkit-scrollbar-track {
  border-radius: 20px;
  background-color: rgba(225, 225, 225, 0.5);
  margin: 10px 0;
}

#contracts_scroll::-webkit-scrollbar {
  width: 25px;
  background-color: #Ffffff;
}

#contracts_scroll::-webkit-scrollbar-thumb {
  border-radius: 20px;
  background-color: #17BEBB;
}

.contracts-modal-body {
  margin: 40px;
}

.contracts-modal-body__accept-button-container {
  padding: 10px;
}

.contracts-modal-dialog {
  width: 70%;
}

.contracts-modal-dialog .modal-content {
  background: #EFEFEF;
}

.contracts-modal-dialog .modal-content .modal-header,
.contracts-modal-dialog .modal-content .modal-body {
  padding-left: 25px;
  padding-right: 25px;
}

.contracts-modal-dialog .modal-content .modal-body .conditions p {
  color: rgba(74, 74, 74, 0.9);
}

.contracts-modal-dialog .modal-content .modal-body .terms {
  border: 0.5px solid rgba(156, 156, 156, 0.75);
}

.contracts-modal-dialog .modal-content .discard-terms {
  color: #ADADAD !important;
  font-size: 10px;
}

.accept-contract-button {
  width: 200px;
  height: 38px;
  color: #fff;
  font-size: 14px;
  background-color: #17BEBB;
  text-transform: uppercase;
  border-radius: 2px;
}

.accept-contract-button-disabled {
  background-color: #dee2e6;
}

.bootstrap-datetimepicker-widget table td {
  height: 45px;
  line-height: 45px;
  width: 45px;
}

.bootstrap-datetimepicker-widget table td span,
.bootstrap-datetimepicker-widget table td i {
  height: 45px;
  line-height: 45px;
  width: 45px;
}

.loader {
  border: 16px solid #17BEBB;
  border-radius: 50%;
  border-top: 16px solid #17BEBB;
  width: 120px;
  height: 120px;
  -webkit-animation: spin 2s linear infinite;
  /* Safari */
  animation: spin 2s linear infinite;
}

/* Safari */

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

table .badge {
  border-radius: 50px;
  padding: 7px 14px;
  font-weight: 600;
  font-size: 13px;
  line-height: 18px;
}

table .badge.badge-primary-outline {
  border: 1px solid #17BEBB;
}

table .badge.badge-danger-outline {
  border: 1px solid #EE4B4B;
  color: #EE4B4B;
}

table .badge.badge-secondary {
  background: #BDBDBD;
  color: #FFFFFF;
}

table .dropdown-menu {
  padding: 6px 10px;
}

table .dropdown-menu .dropdown-item {
  padding: 0;
  display: block;
  text-align: right;
  font-size: 12px;
  line-height: 20px;
  color: #6A6A6A;
}

table .btn-warning {
  background: #FFDCC1;
  font-size: 14px;
  line-height: 19px;
  color: #FD6E00 !important;
  box-shadow: none;
}

table .btn-warning:hover {
  background: #FFDCC1;
  opacity: 1;
}

table .btn-warning.disabled {
  opacity: .3;
  pointer-events: none;
  background: #FCF1EA;
  color: #FBCCAA;
}

table .btn-warning.disabled:hover {
  background: #FCF1EA;
  opacity: .3;
}

table .btn-danger {
  background: #EE4B4B;
}

table .text-danger {
  color: #EE4B4B !important;
}

table td span {
  line-height: 18px;
}

table td .text-muted {
  font-weight: 600;
  font-size: 12px;
  line-height: 16px;
  margin-bottom: 0;
  color: #ADADAD;
}

table td.cell-status .btn {
  display: inline-block;
  font-weight: 600;
  font-size: 10px;
  line-height: 14px;
  text-decoration: underline;
}

table td.cell-info a {
  display: block;
  font-weight: bold;
  font-size: 13px;
  line-height: 18px;
}

.text-orange {
  color: #FD6E00 !important;
}

.select2-container .select2-selection--multiple .select2-selection__choice {
  background: #C4C4C4;
  border-radius: 2px;
  font-size: 12px;
  line-height: 16px;
  color: #FFFFFF;
}

.select2-container .select2-selection__rendered > *:first-child.select2-search--inline {
  width: 100% !important;
}

.select2-container .select2-selection__rendered > *:first-child.select2-search--inline .select2-search__field {
  width: 100% !important;
}

.profile-upload__container .upload-image-container {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: center;
          justify-content: center;
  z-index: 1040;
  flex-wrap: wrap;
}

.profile-upload__container .upload-image-container .upload-image-item {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  position: relative;
  z-index: 1050;
  cursor: pointer;
}

.profile-upload__container .upload-image-container .upload-image-item img {
  display: block;
  height: 110px;
  width: 110px;
  min-width: 110px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 4px;
}

.profile-upload__container .upload-image-container .upload-image-item + .upload-image-item {
  margin-left: 13px;
}

.profile-upload__container .upload-image-container .upload-image-item .btn {
  font-size: 12px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  border-radius: 4px;
}

.profile-upload__container.multiple {
  max-height: inherit;
  height: auto;
}

.pac-container {
  z-index: 500000 !important;
}

.pac-container:after {
  background-image: none !important;
  height: 0px;
}

.pac-container .pac-item {
  white-space: unset !important;
  line-height: 20px !important;
  position: relative;
}

.pac-container .pac-item > span:nth-child(3) {
  display: inline-block;
  width: 100% !important;
  margin-left: 30px;
  text-transform: uppercase;
  font-size: 12px;
  line-height: 18px;
  letter-spacing: -0.3px;
  color: #7B7B7B;
}

.pac-container .pac-item-query {
  display: inline-block;
  margin-top: 5px;
  width: 100% !important;
  margin-left: 30px;
  font-weight: 500;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: -0.3px;
  color: rgba(74, 74, 74, 0.9);
}

.pac-container .pac-icon {
  position: absolute;
  left: 5px;
  top: 0px;
  margin-left: 2px !important;
  margin-right: 2px !important;
}

.dropdown-item.disabled {
  pointer-events: none;
  color: #D3D4D6 !important;
}

.table-responsive {
  position: relative;
}

.table-responsive.table-overlay:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.6);
  z-index: 1050;
}

.btn-promotion {
  background: #91EDB1;
  color: #219653;
}

.btn-promotion-disabled {
  background: #DEDEDE;
  pointer-events: none;
  color: #ACACAC;
}

#hubspot-messages-iframe-container {
  left: 10px !important;
}

body {
  font-family: "Nunito", sans-serif !important;
}

.side-nav .side-nav-forth-level li a,
body[data-leftbar-theme="light"] .side-nav .side-nav-second-level li a.disabled {
  color: #bababa !important;
}

.member-avatar {
  max-width: 250px;
  max-height: 100px;
}

.h-40 {
  min-height: 40px;
}

.table-striped .form-control[readonly] {
  background: #fff;
}

.font-10 {
  font-size: 10px !important;
}

.font-11 {
  font-size: 11px !important;
}

.font-12 {
  font-size: 12px !important;
}

.font-13 {
  font-size: 13px !important;
}

.font-14 {
  font-size: 14px !important;
}

.font-15 {
  font-size: 15px !important;
}

.font-16 {
  font-size: 16px !important;
}

.font-17 {
  font-size: 17px !important;
}

.font-18 {
  font-size: 18px !important;
}

.font-19 {
  font-size: 19px !important;
}

.font-20 {
  font-size: 20px !important;
}

.font-21 {
  font-size: 21px !important;
}

.font-22 {
  font-size: 22px !important;
}

.font-23 {
  font-size: 23px !important;
}

.font-24 {
  font-size: 24px !important;
}

.font-25 {
  font-size: 25px !important;
}

.font-26 {
  font-size: 26px !important;
}

.font-27 {
  font-size: 27px !important;
}

.font-28 {
  font-size: 28px !important;
}

.font-29 {
  font-size: 29px !important;
}

.font-30 {
  font-size: 30px !important;
}

.font-31 {
  font-size: 31px !important;
}

.font-32 {
  font-size: 32px !important;
}

.font-34 {
  font-size: 34px !important;
}

.font-36 {
  font-size: 36px !important;
}

.font-72 {
  font-size: 72px !important;
}

.cursor-pointer {
  cursor: pointer;
}

.text-underline {
  text-decoration: underline;
}

.banner-phone-background {
  background-color: #D4F3F2;
  min-height: 200px;
  border-radius: 5px;
  padding: 5px 20px 10px;
}

.banner-phone-background .btn.btn-secondary {
  background: #FFFFFF;
  /* Secondary */
  color: #17BEBB;
  border: 1px solid #17BEBB;
  box-sizing: border-box;
  border-radius: 50px;
  text-transform: uppercase;
  font-weight: bold;
  margin-top: 16px;
}

.fw-600 {
  font-weight: 600;
}

.fw-700 {
  font-weight: 700;
}

.w-150 {
  min-width: 150px;
}

.line-height-16 {
  line-height: 16px;
}

.line-height-18 {
  line-height: 18px;
}

.banner-phone-container-large > div > .banner-phone-background {
  background-color: #D4F3F2;
  min-height: 200px;
  border-radius: 8px;
}

@media screen and (max-width: 1200px) {
  .banner-phone-container-large > div > .banner-phone-background {
    background-image: url(/theme/images/banner-phone.png) !important;
  }
}

.banner-phone-container-large > div > .banner-phone-background .btn.btn-secondary {
  background: #FFFFFF;
  /* Secondary */
  color: #17BEBB;
  border: 1px solid #17BEBB;
  box-sizing: border-box;
  border-radius: 47px;
  text-transform: uppercase;
  font-weight: bold;
  margin-left: 10px;
  position: absolute;
  bottom: 50px;
  right: 100px;
}

@media screen and (max-width: 1200px) {
  .banner-phone-container-large > div > .banner-phone-background .btn.btn-secondary {
    bottom: 10px;
    left: 20px;
  }
}

@media screen and (max-width: 500px) {
  .banner-phone-container-large > div > .banner-phone-background .btn.btn-secondary {
    margin-top: 16px;
  }
}

.banner-tour-background {
  background-image: url(/theme/images/banner-tour.png);
  background-color: linear-gradient(to bottom, #D4F3F2, white);
  background-size: auto 100%;
  /* height: 160px; */
  -o-object-fit: contain;
  object-fit: contain;
  min-height: 200px;
  background-position: right;
  background-repeat: no-repeat;
  background-color: #D4F3F2;
  border-radius: 8px;
}

.banner-tour-background .btn.btn-secondary {
  background: #17BEBB;
  /* Secondary */
  color: #FFFFFF;
  border: 1px solid #17BEBB;
  box-sizing: border-box;
  border-radius: 47px;
  text-transform: uppercase;
  font-weight: bold;
  margin-left: 10px;
  position: absolute;
  bottom: 10px;
}

@media screen and (max-width: 500px) {
  .banner-tour-background .btn.btn-secondary {
    margin-top: 16px;
    bottom: 30px;
  }
}

@media screen and (max-width: 1000px) {
  .banner-tour-background .btn.btn-secondary {
    bottom: 30px;
  }
}

.banner-phone-container-large > div > .banner-phone-background > .banner-phone-title {
  display: none;
}

.banner-phone-container-large > div > .banner-phone-background > .banner-phone-sub {
  padding-top: 40px;
  padding-left: 10px;
  font-size-adjust: 70% !important;
  font-size: medium;
}

.banner-phone-title {
  font-weight: bold;
  padding-top: 10px;
  padding-left: 10px;
  font-size-adjust: 88% !important;
  font-size: large;
}

.banner-phone-title > span {
  color: #70D5D3;
}

.banner-phone-sub {
  padding-top: 10px;
  padding-left: 10px;
  font-size-adjust: 70% !important;
  font-size: medium;
}

.banner-phone-sub > span {
  font-weight: bold;
}

@media only screen and (max-width: 1000px) {
  .banner-tour-background {
    margin: 15px 15px;
  }

  .banner-phone-background {
    margin: 0px 15px;
  }
}

.banner-tour-title {
  padding-top: 10px;
  padding-left: 10px;
  font-size-adjust: 70% !important;
  font-size: medium;
}

.banner-tour-title > span {
  font-weight: bold;
  background: #65C0BB;
  padding: 2px;
  color: #fff;
}

.banner-tour-sub {
  padding-top: 10px;
  padding-left: 10px;
  font-size-adjust: 70% !important;
  width: 60%;
  font-size: medium;
}

.line-clamp-2 {
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.lbl-filter-members {
  display: inline-block !important;
  width: 100%;
  font-size: .8em;
  color: #888;
}

.input-no-arrow::-webkit-outer-spin-button,
.input-no-arrow::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

.module-apply--container label {
  display: block;
  font-size: 16px;
  line-height: 20px;
  color: #8B8B8B;
}

@media (min-width: 768px) {
  .text-md-right {
    text-align: right !important;
  }
}

.password-container {
  position: relative;
}

.password-container .showHidePassword {
  cursor: pointer;
  position: absolute;
  top: 11px;
  right: 25px;
  color: #999;
}

.acl-disabled {
  cursor: pointer !important;
}

.acl-disabled:not(.btn) {
  color: #a2a3a2 !important;
}

.acl-disabled.btn-outline-primary {
  color: #17bebb !important;
}

.acl-disabled.btn-outline-primary:hover {
  color: #fff !important;
}

.acl-disabled.btn-primary {
  color: #fff !important;
}

