@font-face {
    font-family: 'Raleway';
    src: url('/webfonts/Raleway-Regular.woff');
    font-weight: 400;
}
@font-face {
    font-family: 'Raleway';
    src: url('/webfonts/Raleway-SemiBold.woff');
    font-weight: 600;
}

body {
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 400;
    /* background: var(--bs-tertiary-bg); */
}

h1, h2, h3, h4, h5, h6 {
    font-family: "Raleway", sans-serif;
    font-weight: 400;
    color: var(--bs-secondary-text-emphasis);
}

h1 { font-size: 1.5rem }
h2 { font-size: 1.4rem }
h3 {
    font-size: 1.3rem;
    font-weight: 600;
}
h4 { font-size: 1.2rem }
h5 { font-size: 1.0rem }
h6 { font-size: 1.0rem }

a {
    color: var(--bs-body-color);
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

a:hover,
a:focus,
a:active  {
    color: var(--bs-emphasis-color);
    -webkit-transition: all 0.2s easeout;
    transition: all 0.2s ease-out;
}

label {
    font-size: 80%;
    display: inline;
}

small {
    font-size: 0.8rem;
}

.navbar-light .navbar-brand {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--bs-danger);
}

.navbar-light .navbar-brand span {
    color: var(--bs-secondary-text-emphasis);
}

.navbar .nav-item a {
    font-size: 1.1rem;
    margin: 0 0.5rem;
}

.card, .card-header, .card-footer {
    border: 0;
}
.card-header, .card-footer {
    /* background-color: var(--bs-secondary-bg); */
}

.card h5 {
    cursor: pointer;
}

.card-header .fas {
    /* color: var(--bs-secondary-text-emphasis); */
}

/*.card .card {
    border-radius: 0px;
    border-left: none;
    border-right: none;
}*/

.required label:first-child:not(.disabled)::after {
    content: ' *';
    color: var(--bs-danger);
}

label.disabled:after {
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font-family: 'Font Awesome 6 Free';
    font-size: 0.7rem;
    vertical-align: text-bottom;
    font-weight: 900;
    content: '\f023';
    margin-left: 0.3rem;
}

.pagination {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0 0 1rem;
}

.pagination li a {
    color: inherit;
}

.page-item.active .page-link {
    background-color: #5a6268;
    border: 1px solid #5a6268;
}

.page-item.disabled a,
.page-item.disabled a {
    cursor: not-allowed;
    color: #606c76;
}

select {
    -webkit-appearance: none;
}

.form-control[readonly] {
    pointer-events: none;
}

.error-message {
    color: var(--bs-danger-text-emphasis);
    font-size: 80%;
    background-color: var(--bs-danger-bg-subtle);
    border: 1px solid var(--bs-danger-border-subtle);
    border-radius: 5px;
    padding: .3rem 0.5rem;
    margin-top: 0.5em;
}

.error-message ul {
	list-style: none;
	padding: 4px;
	margin: 0;
}



/**
 * js-year-calendar overrides
 */
.calendar {
    overflow: inherit;
}

.calendar .calendar-header {
    border: 0;
}

.calendar .calendar-header table th:hover {
    background-color: var(--bs-secondary-bg);
}
@media (max-width: 991px) {
    .calendar .calendar-header .year-neighbor2 {
        display: none;
    }
    .calendar .calendar-header .year-neighbor {
        display: block;
    }
}

.calendar .calendar-header th.prev::before {
    content: '\3008';
}
.calendar .calendar-header th.next::after {
    content: '\3009';
}

.calendar .month-container {
    min-width: 300px;
    height: 350px;
}

.calendar table.month {
    border-collapse: separate;
    border-spacing: 0px 5px;
}

.calendar table td, .calendar table th {
    width: 40px;
    height: 30px;
}

.calendar table.month td.disabled,
.calendar table.month td.disabled:hover {
    color: var(--bs-secondary);
}

.calendar .round-left {
    -webkit-border-top-left-radius: 15px !important;
    -moz-border-top-left-radius: 15px !important;
    border-top-left-radius: 15px !important;
    -webkit-border-bottom-left-radius: 15px !important;
    -moz-border-bottom-left-radius: 15px !important;
    border-bottom-left-radius: 15px !important;
}

.calendar .round-right {
    -webkit-border-top-right-radius: 15px !important;
    -moz-border-top-right-radius: 15px !important;
    border-top-right-radius: 15px !important;
    -webkit-border-bottom-right-radius: 15px !important;
    -moz-border-bottom-right-radius: 15px !important;
    border-bottom-right-radius: 15px !important;
}



/**
 * bootstrap tempus dominus datetime picker overrides
 */

.tempus-dominus-widget.dark {
    width: 100%;
    padding: var(--bs-gutter-x);
    color: var(--bs-body-color) !important;
    background-color: var(--bs-tertiary-bg) !important;
    border-radius: var(--bs-border-radius);
    box-shadow: none;
}

.tempus-dominus-widget.dark .old,
.tempus-dominus-widget.dark .new {
    color: var(--bs-body-color) !important;
}
.tempus-dominus-widget.dark .disabled {
    color: var(--bs-tertiary-color) !important;
}

.tempus-dominus-widget.dark .date-container-days,
.tempus-dominus-widget.dark .date-container-months {
    grid-auto-rows: 3em;
}

.tempus-dominus-widget.dark .date-container-days .dow {
    color: inherit !important;
}

.tempus-dominus-widget.dark .date-container-days .day:hover:not(.disabled, .range-start, .range-end),
.tempus-dominus-widget.dark .date-container-months .day:hover:not(.disabled) {
    background-color: var(--bs-secondary-border-subtle) !important;
}

.tempus-dominus-widget.dark .date-container-days div:not(.no-highlight).today::before {
    border: 0;
}
.tempus-dominus-widget.dark .date-container-days .day.today {
    box-shadow: 0px 0px 0px 2px var(--bs-danger);
}

.tempus-dominus-widget.dark .date-container-days .day.range-start,
.tempus-dominus-widget.dark .date-container-days .day.range-end {
    color: var(--bs-body-color) !important;
    background-color: var(--bs-info-border-subtle) !important;
}

.tempus-dominus-widget.dark .date-container-days .day.range-in {
    color: var(--bs-body-color) !important;
    background-color: var(--bs-primary-border-subtle) !important;
    box-shadow: -5px 0 0 var(--bs-primary-border-subtle), 5px 0 0 var(--bs-primary-border-subtle);
}

.tempus-dominus-widget.dark .date-container-days .day.disabled.range-in {
    background-color: var(--bs-danger-border-subtle) !important;
    box-shadow: -5px 0 0 var(--bs-danger-border-subtle), 5px 0 0 var(--bs-danger-border-subtle);
}

#loading-in-progress {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 2000;
}
#loading-in-progress svg {
    width: 250px;
    height: 250px;
    fill: transparent;
    stroke-width: 6;
    stroke: var(--bs-secondary);
}
#loading-in-progress svg path {
    stroke-dasharray: 6;
    animation: dash 1s linear infinite;
}
@keyframes dash {
    from {
        stroke-dashoffset: 0;
    }
    to {
        stroke-dashoffset: 60;
    }
}