/* Technetium PHP Framework version 2.9
   Author: Tony Leung
   E-mail: info@technetium.info
   
   This stylesheet contains style overrides of plugins.
 */

@charset "utf-8";

/* bootbox */
.bootbox .modal-title {
	font-size: 1.625rem;
	font-weight: 600;
}
.bootbox .modal-header {
	padding: 1.5rem 1.5rem 0 1.5rem;
	border-bottom: 0;
}
.bootbox .modal-body {
	padding: 1.5rem;
}
.bootbox .modal-footer {
	padding: 0 1.5rem 1.5rem 1.5rem;
	border-top: none;
	justify-content: center;
}
.bootbox .modal-footer .btn {
	margin: 0;
	padding: 0.625rem 1.5rem;
}
.bootbox .modal-footer .btn + .btn {
	margin-left: 1rem;
}

/* bootstrap > layout > containers */
.container .container {
	padding-left: 0;
	padding-right: 0;
}
@media print {
	.container {
		min-width: 0 !important;
		max-width: none !important;
	}
}

/* bootstrap > content > typography */
.small, small {
	font-size: 85%;
}

/* bootstrap > content > tables */
.table {
	--bs-table-theme: var(--bs-primary);
	--bs-table-border: var(--bs-white);
	margin-bottom: 1.25rem;
}
.table th,
.table td {
	padding: 10px 15px;
	border-top-width: 1px;
	border-top-color: var(--bs-table-border);
}
.table thead th {
	border-color: var(--bs-table-border);
	background: var(--bs-table-theme);
	color: var(--bs-white);
}
.table tbody th,
.table tbody td {
	background-color: var(--bs-primary-shadow);
	font-weight: normal;
}
.table tbody tr:last-child th,
.table tbody tr:last-child td {
	border-bottom: 1px solid var(--bs-table-border);
}
.table-bordered,
.table-bordered th,
.table-bordered td {
	border-color: var(--bs-table-border);
}
.table thead th:not(:first-child) {
	border-left-color: var(--bs-white);
}
.table thead th:not(:last-child) {
	border-right-color: var(--bs-white);
}
.table-primary {
	--bs-table-theme: var(--bs-primary);
	--bs-table-border: var(--bs-primary);
	background: none;
}
.table-secondary {
	--bs-table-theme: var(--bs-secondary);
	--bs-table-border: var(--bs-secondary);
	background: none;
}
@media (min-width: 992px) {
	.table th,
	.table td {
		padding: 0.875rem 1rem;
	}
}

/* bootstrap > components > badges */
.badge {
	padding: 0.25rem 0.625rem;
	font-size: 1em;
	font-weight: 500;
	line-height: 1.1;
}
.badge-warning {
	color: var(--bs-white);
}

/* bootstrap > components > buttons */
.btn {
	position: relative;
	padding: 1rem 2rem;
	border-radius: 0.5rem;
	font-size: 1.375rem;
	font-weight: 500;
	white-space: nowrap;
}
.btn.focus,
.btn:focus {
	box-shadow: none !important;
	outline: var(--wcag-focus-outline);
}
.btn.disabled,
.btn:disabled {
	cursor:not-allowed;
}
[class*="btn-outline-"] {
	background: var(--bs-white);
}
.btn-link {
	font-size: 1.1875rem;
	font-weight: normal;
}
.btn-rounded {
	border-radius: calc(1rem + 1.5em + 1px);
}
.btn-square {
	min-width: calc(2rem + 1.5em + 2px);
	padding-left: 1rem;
	padding-right: 1rem;
}
.btn-xs {
	padding: 0.25rem 0.625rem;
	border-radius: 0.25rem;
	font-size: 1em;
	line-height: 1.1;
}
.btn-sm {
	padding-top: 0.25rem;
	padding-bottom: 0.25rem;
	font-size: 1.1875rem;
}
.btn-sm.btn-rounded {
	border-radius: calc(0.5rem + 0.75em + 1px);
}
.btn-sm.btn-square {
	min-width: calc(0.5rem + 1.5em + 2px);
	padding-left: 0.25rem;
	padding-right: 0.25rem;
}
.btn .icon {
	font-size: 1.25em;
}
.btn .icon:not(:first-child) {
	margin-left: 0.25em;
}
.btn .icon:not(:last-child) {
	margin-right: 0.25em;
}

/* bootstrap > components > card */
.card {
	overflow: hidden;
	margin-bottom: 24px;
	border-color: #DDDDDD;
	border-radius: 0.625rem;
}
a.card {
	color: inherit;
	-webkit-transition-property: box-shadow;
	-moz-transition-property: box-shadow;
	transition-property: box-shadow;
}
a.card:after {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border: 2px solid transparent;
	border-radius: inherit;
	-webkit-transition-property: border-color;
	-moz-transition-property: border-color;
	transition-property: border-color;
}
a.card:hover {
	box-shadow: 0 0 20px 5px rgba(0,0,0,0.1);
	color: inherit;
}
a.card:hover:after {
	border-color: var(--bs-primary);
}
.card-body {
	padding: 30px;
}
.card-title {
	margin-bottom: 15px;
	font-size: 1.375rem;
	color: var(--bs-primary);
	line-height: 1.5;
}
.card-title a {
	color: inherit;
}
.card-meta {
	margin-bottom: 1rem;
	padding: 0;
	font-size: 1rem;
	font-weight: 600;
	color: var(--bs-secondary-text);
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.card-meta li {
	padding-left: 0;
}
.card-meta li:not(:last-child) {
	margin-right: 1.25rem;
}
.card-title + .article-meta {
	margin-top: -1.15625rem;
}
.card-image > .img-holder {
	height: 0;
	text-indent: -999em;
	box-shadow: 0 0 20px 0px rgba(0, 0, 0, 0.1);
}
.card-actions {
	width: 100%;
	padding-top: 1.875rem;
}
@media (max-width: 991px) {
	.card {
		margin-bottom: 12px;
		padding: 15px;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	.card-image {
		width: 8rem;
		overflow: hidden;
		border-radius: 5px;
		flex-shrink: 0;
	}
	.card-body {
		overflow: hidden;
		padding: 0;
		flex-basis: 0;
		flex-grow: 1;
	}
	.card-image + .card-body {
		padding-left: 15px;
	}
	.card-meta {
		margin-bottom: 5px;
	}
	.card-title + .card-meta {
		margin-top: -12px;
	}
}

/* bootstrap > components > collapse */
.accordion > .card {
	overflow: visible;
	margin-bottom: 1.25rem;
	padding: 0;
	border: none;
	flex-direction: column;
	align-items: normal;
}
.accordion > .card:not(:first-of-type),
.accordion > .card:not(:last-of-type) {
	border-radius: 0.625rem;
}
.accordion > .card > .card-header {
	width: 100%;
	margin-bottom: 0;
	padding: 0;
	border-bottom: none;
}
.accordion > .card > .card-header > .card-title {
	font-size: 1.25rem;
	font-weight: 500;
}
.accordion > .card > .card-header > .card-title a {
	position: relative;
	padding: 1.25rem 1.75rem;
	border: 1px solid var(--bs-primary);
	border-radius: 0.625rem;
	background: var(--bs-white);
	color: var(--bs-primary);
	display: flex;
	-webkit-transition-property: border-radius, background-color, color;
	-moz-transition-property: border-radius, background-color, color;
	transition-property: border-radius, background-color, color;
}
.accordion > .card > .card-header > .card-title a .title {
	min-width: 0; /* Fix flexbox and truncated text: https: //css-tricks.com/flexbox-truncated-text/ */
	margin-right: 1em;
	flex-grow: 1;
}
.accordion > .card > .card-header > .card-title a .nav-opener {
	margin-left: auto;
	align-self: flex-start;
	flex-shrink: 0;
}
.accordion > .card > .card-header > .card-title a .nav-opener span:before,
.accordion > .card > .card-header > .card-title a .nav-opener span:after {
	background: var(--bs-primary);
	-webkit-transition-property: background-color, -webkit-transform;
	-moz-transition-property: background-color, -moz-transform;
	transition-property: background-color, transform;
}
.accordion > .card > .card-header > .card-title a .nav-opener span:before {
	width: 1.25em;
	height: 4px;
	top: calc(50% - 2px);
	left: calc(50% - 0.625em);
}
.accordion > .card > .card-header > .card-title a .nav-opener span:after {
	width: 4px;
	height: 1.25em;
	top: calc(50% - 0.625em);
	left: calc(50% - 2px);
}
.accordion > .card > .card-header > .card-title a[aria-expanded=true] {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
	background: var(--bs-primary);
	color: var(--bs-white);
}
.accordion > .card > .card-header > .card-title a[aria-expanded=true] .nav-opener span:before,
.accordion > .card > .card-header > .card-title a[aria-expanded=true] .nav-opener span:after {
	background: var(--bs-white);
}
.accordion > .card > .collapse > .card-body,
.accordion > .card > .collapse > .card-actions,
.accordion > .card > .collapsing > .card-body,
.accordion > .card > .collapsing > .card-actions {
	padding: 1.25rem 1.75rem;
	background: #F7F7F7;
}
.accordion > .card > .collapse > .card-body + .card-actions,
.accordion > .card > .collapsing > .card-body + .card-actions {
	padding-top: 0
}
.accordion > .card > .collapse > .card-table,
.accordion > .card > .collapsing > .card-table {
	padding: 0;
}


/* bootstrap > components > dropdowns */
.dropdown-item {
	padding: 0.75rem 1.25rem;
	color: var(--bs-primary);
}
.dropdown-item:focus,
.dropdown-item:hover {
	background: none;
	color: var(--bs-secondary);
}
.dropdown-item .icon {
	width: 1.25em;
	font-size: 1.2em;
	text-align: center;
	display: inline-block;
}
.dropdown-menu {
	margin-top: 0.625rem;
	padding: 0 1.25rem;
	box-shadow: 0 0 1.25rem rgba(0,0,0,0.1);
	border: none;
	border-radius: 0;
	font-size: inherit;
}
.dropdown-menu li {
	margin: 0;
}
.dropdown-menu li:not(:last-child) {
	border-bottom: 1px solid var(--bs-primary);
}
.dropdown-menu li .dropdown-item {
	width: calc(100% + 2.5rem);
	margin: 0 -1.25rem;
}
.dropdown-menu li.active > .dropdown-item {
	color: var(--bs-secondary);
}

/* bootstrap > components > forms */
.col-form-label {
	padding-top: 0;
	padding-bottom: calc(1rem + 1px);
}
.col-form-label.col,
.col-form-label.col-1,
.col-form-label.col-2,
.col-form-label.col-3,
.col-form-label.col-4,
.col-form-label.col-5,
.col-form-label.col-6,
.col-form-label.col-7,
.col-form-label.col-8,
.col-form-label.col-9,
.col-form-label.col-10,
.col-form-label.col-11,
.col-form-label.col-12,
.col-form-label.col-auto {
	padding-top: calc(1rem + 1px);
	text-align: right;
}
@media (min-width: 576px) {
	.col-form-label.col-sm,
	.col-form-label[class*="col-sm-"] {
		padding-top: calc(1rem + 1px);
		text-align: right;
	}
}
@media (min-width: 768px) {
	.col-form-label.col-md,
	.col-form-label[class*="col-md-"] {
		padding-top: calc(1rem + 1px);
		text-align: right;
	}
}
@media (min-width: 992px) {
	.col-form-label.col-lg,
	.col-form-label[class*="col-lg-"] {
		padding-top: calc(1rem + 1px);
		text-align: right;
	}
}
@media (min-width: 1200px) {
	.col-form-label.col-xl,
	.col-form-label[class*="col-xl-"] {
		padding-top: calc(1rem + 1px);
		text-align: right;
	}
}
@media (min-width: 1600px) {
	.col-form-label.col-xxl,
	.col-form-label[class*="col-xxl-"] {
		padding-top: calc(1rem + 1px);
		text-align: right;
	}
}
.form-control {
	height: calc(1.5em + 2rem + 2px);
	padding: 1rem 1.25rem;
	border-color: var(--bs-primary);
	border-radius: calc(0.75em + 1rem + 1px);
	background-color: #F7F7F7;
	font-size: 1.1875rem;
}
.form-control:focus {
	box-shadow: var(--wcag-focus-shadow);
	border-color: var(--bs-primary);
	background-color: #F7F7F7;
}
.form-control::placeholder {
	color: #BABABA;
	text-shadow: none;
}
.form-control.has-error {
	border-color: var(--bs-danger);
}
.form-control-sm {
	height: calc(1.5em + 1rem + 2px);
	padding: 0.5rem 0.875rem;
}
.form-check {
	margin-bottom: 0.75rem;
	padding-left: 20px;
}
.form-check > .form-check:first-of-type {
	margin-top: 0.75rem;
}
.form-check-input {
	margin-left: -20px;
}
.form-check .form-check-label {
	margin-bottom: 0;
	font-weight: 400;
	color: var(--bs-dark);
}
.form-check-inline {
	margin-bottom: 0;
	padding-left: 0;
}
.form-group {
	margin-bottom: 1.875rem;
}
.form-group label {
	margin-bottom: 0.625rem;
	font-weight: 500;
	color: var(--bs-primary);
}
.form-group label .required {
	color: var(--wws-holiday-red);
}
.form-group .col-form-label {
	margin: 0;
}

/* bootstrap > components > input group */
.input-group-text {
	padding: 1rem 1.25rem;
	border-color: var(--bs-primary);
	border-radius: calc(0.75em + 1rem + 1px);
	background-color: #F7F7F7;
	font-size: 1.1875rem;
}
.input-group-prepend,
.input-group-append {
	position: relative;
}

/* bootstrap > components > modals */
.modal-content {
	overflow: hidden;
	border: none;
}
.modal-content > .table {
	margin-bottom: 0;
}
.modal-title {
	color: var(--bs-dark);
}

/* bootstrap > components > navs */
.nav-item {
	margin: 0;
	padding: 0;
}
.nav-pills {
	overflow: hidden;
	border: 1px solid #BABABA;
	border-radius: 0.625rem;
	font-size: 1.375rem;
}
.nav-pills .nav-item:not(:last-child) {
	border-right: 1px solid #BABABA;
}
.nav-pills .nav-link {
	height: 100%;
	padding: 1rem;
	border-radius: 0;
	color: var(--bs-dark);
	display: flex;
	align-items: center;
	justify-content: center;
}
.nav-pills .nav-link:hover {
	color: var(--bs-secondary);
}
.nav-pills .nav-link.active {
	background: var(--bs-secondary);
	color: var(--bs-white);
}
.nav-tabs {
	font-size: 1.5rem;
	font-weight: 500;
	justify-content: center;
}
.nav-tabs .nav-link {
	position: relative;
	margin: 0;
	padding: 10px 20px 12px 20px;
	border: none;
	color: #909090;
}
.nav-tabs .nav-link:not(:last-child) {
	margin-right: 10px;
}
.nav-tabs .nav-link:after {
	content: '';
	height: 4px;
	position: absolute;
	bottom: 0;
	left: 50%;
	right: 50%;
	background: var(--bs-secondary);
	-webkit-transition-property: left, right;
	-moz-transition-property: left, right;
	transition-property: left, right;
}
.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link:hover,
.nav-tabs .nav-link.active {
	color: var(--bs-secondary);
}
.nav-tabs .nav-item.show .nav-link:after,
.nav-tabs .nav-link.active:after {
	left: 20px;
	right: 20px;
}
.nav-scroller {
	overflow: auto;
	border-bottom: 1px solid #dee2e6;
	text-align: center;
}
.nav-scroller .nav-tabs {
	border-bottom: none;
	display: inline-flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
}
.nav-scroller .nav-tabs .nav-link {
	white-space: nowrap;
}

/* bootstrap > components > pagination */
ul.pagination {
	justify-content: center;
}
.page-item {
	margin: 0;
	padding: 0;
}
.page-item + .page-item {
	margin-left: 0.75rem;
}
.page-item:nth-child(2),
.page-item:last-child {
	margin-left: 2.5rem;
}
.page-link {
	width: 2.625rem;
	height: 2.625rem;
	padding-left: 0.25rem;
	padding-right: 0.25rem;
	border: 2px solid transparent;
	border-radius: 50%;
	font-size: 1.625rem;
	color: var(--bs-primary);
	line-height: calc(1.625rem - 4px);
	text-align: center;
	-webkit-transition-property: border-color;
	-moz-transition-property: border-color;
	transition-property: border-color;
}
.page-link:hover {
	border-color: var(--bs-primary);
	background-color: transparent;
	color: var(--bs-primary);
}
.page-link:focus {
	box-shadow: none;
	outline: var(--wcag-focus-outline);
}
.page-item:first-child .page-link,
.page-item:last-child .page-link {
	border-radius: 50%;
	font-size: 1.25rem;
}
.page-item.active .page-link {
	border-color: var(--bs-primary);
	background-color: var(--bs-primary);
}
.page-prev .page-link,
.page-next .page-link {
	border-color: var(--bs-primary);
}
.page-prev.disabled .page-link,
.page-next.disabled .page-link {
	border-color: #BABABA;
	color: #BABABA;
}

/* bootstrap > components > popovers */
.popover {
	max-width: 300px;
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	border-color: var(--bs-primary);
	border-radius: 0.625rem;
	font-family: inherit;
	font-size: 1rem;
}
.popover .arrow {
	width: 2rem;
	height: 1rem;
}
.bs-popover-auto[x-placement^="top"],
.bs-popover-top {
	margin-bottom: 1rem;
}
.bs-popover-auto[x-placement^="top"] > .arrow,
.bs-popover-top > .arrow {
	bottom: calc(-1rem - 1px);
}
.bs-popover-auto[x-placement^="top"] > .arrow:before,
.bs-popover-top > .arrow:before {
	border-width: 1rem 1rem 0 1rem;
	border-top-color: var(--bs-primary);
}
.bs-popover-auto[x-placement^="top"] > .arrow:after,
.bs-popover-top > .arrow:after {
	border-width: 1rem 1rem 0 1rem;
}
.bs-popover-auto[x-placement^="bottom"],
.bs-popover-bottom {
	margin-top: 1rem;
}
.bs-popover-auto[x-placement^="bottom"] > .arrow,
.bs-popover-bottom > .arrow {
	top: calc(-1rem - 1px);
}
.bs-popover-auto[x-placement^="bottom"] > .arrow:before,
.bs-popover-bottom > .arrow:before {
	border-width: 0 1rem 1rem 1rem;
	border-bottom-color: var(--bs-primary);
}
.bs-popover-auto[x-placement^="bottom"] > .arrow:after,
.bs-popover-bottom > .arrow:after {
	border-width: 0 1rem 1rem 1rem;
}
.bs-popover-auto[x-placement^="left"],
.bs-popover-left {
	margin-right: 1rem;
}
.bs-popover-auto[x-placement^="left"] > .arrow,
.bs-popover-left > .arrow {
	width: 1rem;
	height: 2rem;
	right: calc(-1rem - 1px);
}
.bs-popover-auto[x-placement^="left"] > .arrow:before,
.bs-popover-left > .arrow:before {
	border-width: 1rem 0 1rem 1rem;
	border-left-color: var(--bs-primary);
}
.bs-popover-auto[x-placement^="left"] > .arrow:after,
.bs-popover-left > .arrow:after {
	border-width: 1rem 0 1rem 1rem;
}
.bs-popover-auto[x-placement^="right"],
.bs-popover-right {
	margin-left: 1rem;
}
.bs-popover-auto[x-placement^="right"] > .arrow,
.bs-popover-right > .arrow {
	width: 1rem;
	height: 2rem;
	left: calc(-1rem - 1px);
}
.bs-popover-auto[x-placement^="right"] > .arrow:before,
.bs-popover-right > .arrow:before {
	border-width: 1rem 1rem 1rem 0;
	border-right-color: var(--bs-primary);
}
.bs-popover-auto[x-placement^="right"] > .arrow:after,
.bs-popover-right > .arrow:after {
	border-width: 1rem 1rem 1rem 0;
}
.popover-header {
	padding: 1.25rem;
	border-bottom: none;
	background: none;
	font-size: 1.375rem;
}
.popover-body {
	padding: 0 1.25rem 1.25rem 1.25rem;
}
.popover-body dl > dt {
	max-width: calc(var(--bs-gutter) * 0.5 + 1.2rem);
	padding-right: 0;
}
.popover-body dl dt .icon {
	color: var(--bs-primary);
}
.popover-body dl > dd {
	min-width: calc(100% - var(--bs-gutter) * 0.5 - 1.5rem);
	margin-bottom: 0.5rem;
}
.popover-body .btn {
	font-size: 1.1875rem;
	font-weight: normal;
}
.popover-mask {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 998;
}

/* bootstrap > utilities > colors */
.bg-secondary-alt {
	background-color: var(--bs-secondary-darker) !important;
}
.text-secondary-alt {
	color: var(--bs-secondary-darker) !important;
}
.bg-white {
	background-color: var(--bs-white) !important;
}
.text-white {
	color: var(--bs-white) !important;
}

/* bootstrap datepicker */
.datepicker-dropdown {
	padding: 1.25rem 1.875rem;
	box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
	border: none;
	border-radius: 0.5rem;
}
.datepicker-dropdown:before,
.datepicker-dropdown:after {
	display: none;
}
.datepicker .datepicker-switch,
.datepicker .next,
.datepicker .prev {
	color: var(--bs-primary);
}
.datepicker td,
.datepicker th {
	width: 3.25rem;
	height: auto;
	padding: 0.5rem 0.875rem;
	border-radius: 1.25rem;
}
.datepicker th {
	font-weight: 500;
}
.datepicker table tr td span {
	border-radius: 1.25rem;
}
.datepicker table tr td.day.focused,
.datepicker table tr td.day:hover,
.datepicker table tr td.day.active,
.datepicker table tr td.day.active:hover,
.datepicker table tr td.day.active:active,
.datepicker table tr td.day.active:hover:active,
.datepicker table tr td span.focused,
.datepicker table tr td span:hover,
.datepicker table tr td span.active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover:active {
	background: var(--bs-primary) !important;
	color: var(--bs-white);
	text-shadow: none;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover,
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
	background: none !important;
	color: #B2B0B0;
}

/* form.js */
.input-error {
	margin-top: 0.625rem;
	color: var(--bs-danger);
}

/* full calendar */
.fc {
	--fc-border-color: transparent;
	--fc-button-border-color: var(--bs-primary);
	--fc-button-bg-color: var(--bs-white);
	--fc-button-text-color: var(--bs-primary);
	--fc-button-hover-border-color: transparent;
	--fc-button-hover-bg-color: var(--bs-primary);
	--fc-button-hover-text-color: var(--bs-secondary-text);
	--fc-button-active-border-color: transparent;
	--fc-button-active-bg-color: var(--bs-primary);
	--fc-button-active-text-color: var(--bs-secondary-text);
	--fc-today-bg-color: var(--bs-primary);
	--fc-today-text-color: var(--bs-white);
	--fc-daygrid-event-dot-width: 4px;
	--fc-list-event-dot-width: 1.5rem;
	--fc-list-event-hover-bg-color: #EAF3E6;
}
@media (min-width: 992px) {
	.fc {
		--fc-border-color: #E6E6E6;
		--fc-button-border-color: #BABABA;
		--fc-button-text-color: var(--bs-dark);
		--fc-button-hover-bg-color: var(--bs-secondary);
		--fc-button-active-bg-color: var(--bs-secondary);
		--fc-today-bg-color: var(--bs-beige);
		--fc-daygrid-event-dot-width: 10px;
	}
}
.fc .fc-button {
	width: calc(3rem + 2px);
	height: calc(3rem + 2px);
	padding: 0.5rem 0.25rem;
	border-radius: 0.5rem;
	-webkit-transition-property: border-color, background-color, color;
	-moz-transition-property: border-color, background-color, color;
	transition-property: border-color, background-color, color;
}
.fc .fc-button-primary:hover {
	color: var(--fc-button-hover-text-color);
}
.fc .fc-button-primary:not(:disabled).fc-button-active,
.fc .fc-button-primary:not(:disabled):active {
	color: var(--fc-button-active-text-color);
}
.fc .fc-button:focus {
	box-shadow: none !important;
}
.fc .fc-button .fc-icon {
	line-height: 1.25rem;
}
.fc .fc-button .fc-icon-filter:before {
	content: '\e91f';
	font-family: wws-icons;
}
.fc .fc-prev-button,
.fc .fc-next-button {
	padding: 0;
	font-size: 2.5rem;
	border: none;
	background: none;
	color: var(--bs-primary);
	line-height: 1.2;
}
.fc .fc-prev-button:before,
.fc .fc-next-button:before {
	font-family: wws-icons;
}
.fc .fc-prev-button:hover,
.fc .fc-next-button:hover,
.fc .fc-prev-button:focus,
.fc .fc-next-button:focus,
.fc .fc-prev-button:not(:disabled).fc-button-active:focus,
.fc .fc-next-button:not(:disabled).fc-button-active:focus,
.fc .fc-prev-button:not(:disabled):active:focus,
.fc .fc-next-button:not(:disabled):active:focus {
	background: none;
	color: var(--bs-primary-darker);
}
.fc .fc-prev-button:before {
	content: '\e908';
}
.fc .fc-next-button:before {
	content: '\e907';
}
.fc .fc-prev-button:disabled,
.fc .fc-next-button:disabled {
	background: none;
	color: #BABABA;
}
.fc .fc-toolbar-chunk {
	display: flex;
	align-items: center;
}
.fc .fc-toolbar-title {
	min-width: 7.5em;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.fc .fc-toolbar.fc-header-toolbar {
	margin-bottom: 1.25rem;
}
.fc-direction-ltr .fc-toolbar > * > :not(:first-child) {
	margin-left: 0.75rem;
}
.fc .fc-col-header-cell {
	background: var(--bs-primary);
}
.fc .fc-col-header-cell-cushion {
	padding: 1rem;
	font-weight: 500;
	color: var(--bs-white);
	text-align: center;
}
.fc .fc-daygrid-day {
	background: #F7F7F7;
}
.fc .fc-daygrid-day-frame {
	padding: 0.5rem 0.625rem;
}
.fc .fc-daygrid-day-top {
	margin-bottom: 0.75rem;
}
.fc .fc-daygrid-day-number {
	padding: 0;
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--bs-primary);
}
.fc .fc-daygrid-day-events {
	min-height: calc(4.875rem + 8px) !important;
	margin-top: 0;
	margin-bottom: 0 !important;
}
.fc .fc-daygrid-day-bottom {
	position: absolute;
	bottom: calc(100% + 1.21875rem);
	font-size: 0.875rem;
}
.fc .fc-day-sun .fc-daygrid-day-number {
	color: var(--wws-holiday-red);
}
.fc .fc-day-other {
	background: var(--bs-white);
}
.fc .fc-day-other .fc-daygrid-day-top {
	opacity: 1;
}
.fc .fc-day-other .fc-daygrid-day-events {
	opacity: 0.5;
}
.fc .fc-day-other .fc-daygrid-day-number {
	color: var(--bs-light);
}
.fc-liquid-hack th,
.fc-liquid-hack td {
	position: static;
}
.fc .fc-daygrid-event {
	font-size: 0.75rem;
	font-weight: normal;
	color: var(--bs-dark);
	-webkit-transition-property: background-color;
	-moz-transition-property: background-color;
	transition-property: background-color;
}
.fc .fc-daygrid-event:hover {
	color: var(--bs-dark);
}
.fc .fc-daygrid-event-dot {
	margin-right: 0;
}
.fc .fc-daygrid-event .fc-event-time {
	max-width: calc(100% - var(--fc-daygrid-event-dot-width, 8px) - 4px);
	overflow: hidden;
	margin: 0;
	padding: 0 3px;
	text-overflow: ellipsis;
}
.fc .fc-daygrid-dot-event {
	flex-wrap: wrap;
	cursor: pointer;
}
.fc .fc-daygrid-dot-event .fc-event-title {
	padding: 0 3px;
	font-size: 0.875rem;
	font-weight: inherit;
	text-overflow: ellipsis;
	flex-basis: 100%;
}
.fc .fc-daygrid-more-link {
	color: var(--bs-primary);
	text-decoration: underline;
}
.fc-direction-ltr .fc-daygrid-event.fc-event-start,
.fc-direction-rtl .fc-daygrid-event.fc-event-end {
	margin-left: 0;
}
.fc-direction-ltr .fc-daygrid-event.fc-event-end,
.fc-direction-rtl .fc-daygrid-event.fc-event-start {
	margin-right: 0;
}
.fc .fc-more-popover .fc-more-popover-misc {
	display: none;
}
.fc .fc-list-day-text {
	font-weight: 500;
	color: inherit;
}
.fc .fc-list-table td {
	padding: 1.25rem 0.75rem;
}
.fc .fc-list-table td:first-child {
	padding-left: 1.5rem;
}
.fc .fc-list-table td:last-child {
	padding-right: 1.5rem;
}
.fc .fc-list-event {
	font-size: 1.375rem;
	cursor: pointer;
}
.fc .fc-list-event:hover,
.fc .fc-list-event.active {
	background-color: var(--fc-list-event-hover-bg-color,#f5f5f5);
}
.fc .fc-list-day + .fc-list-event td {
	border-top: none;
}
.fc .fc-list-event-dot {
	margin-top: calc((2.0625rem - var(--fc-list-event-dot-width)) * 0.5);
}
.fc .fc-list-event-detail {
	background: #F7F7F7;
	display: none;
}
.fc .fc-list-event-detail dl dt {
	font-weight: normal;
	color: var(--bs-primary);
}
.fc .fc-list-event-detail .btn {
	font-size: 1.1875rem;
	font-weight: normal;
}
.fc .fc-list-event.active .fc-list-event-title:after {
	-webkit-transform: scaleY(-1);
	-moz-transform: scaleY(-1);
	transform: scaleY(-1);
}
.fc .fc-list-event.active + .fc-list-event-detail,
.fc .fc-list-event.active + .fc-list-event-detail > td {
	display: block;
}
.fc .fc-list-event.fc-event-forced-url:hover a {
	text-decoration: none;
}
.fc .fc-list-event-detail td {
	border: none;
}
.fc .fc-list-empty {
	background: none;
}
.fc-theme-standard .fc-list,
.fc-theme-standard .fc-list-day th {
	border: none;
}
.fc-theme-standard .fc-list-day-cushion {
	padding: 1rem 1.5rem;
	border-radius: 0.625rem;
	background: var(--bs-primary);
	color: var(--bs-white);
}
.fc-direction-ltr .fc-list-table .fc-list-event-graphic,
.fc-direction-rlt .fc-list-table .fc-list-event-graphic {
	padding-left: 0.75rem;
	padding-right: 0.75rem;
}
.fc .fc-popover {
	z-index: 99;
}
@media (max-width: 991px) {
	.fc .fc-toolbar-title {
		font-size: 1.666667rem;
	}
	.fc .fc-header-toolbar .fc-button-active {
		display: none;
	}
	.fc .fc-dayGridMonth-button,
	.fc .fc-listMonth-button {
		position: relative;
		line-height: 1.5rem;
		text-indent: -999em;
	}
	.fc .fc-dayGridMonth-button:before,
	.fc .fc-listMonth-button:before {
		position: absolute;
		top: 50%;
		left: 50%;
		font-family: wws-icons;
		font-size: 1.484375rem;
		text-indent: 0;
		-webkit-transform: translate(-50%,-50%);
		-moz-transform: translate(-50%,-50%);
		transform: translate(-50%,-50%);
	}
	.fc .fc-dayGridMonth-button:before {
		content: '\e91e';
	}
	.fc .fc-listMonth-button:before {
		content: '\e921';
	}
	.fc .fc-col-header-cell {
		background: none;
	}
	.fc .fc-col-header-cell-cushion {
		color: #BABABA;
	}
	.fc .fc-daygrid-day {
		background: none;
	}
	.fc .fc-daygrid-day:not(.fc-day-other) {
		cursor: pointer;
	}
	.fc .fc-daygrid-day-frame {
		position: relative;
		padding-left: 0.25rem;
		padding-right: 0.25rem;
	}
	.fc .fc-daygrid-day-frame:after {
		content: '';
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 9;
	}
	.fc .fc-daygrid-day-top {
		margin-bottom: 0;
		text-align: center;
		display: block;
	}
	.fc .fc-daygrid-day-events {
		min-height: var(--fc-daygrid-event-dot-width) !important;
		margin-top: 4px;
	}
	.fc .fc-daygrid-day-bottom {
		display: none;
	}
	.fc .fc-daygrid-event {
		padding: 0;
		justify-content: center;
	}
	.fc .fc-daygrid-event-harness:not(:first-child) {
		position: absolute;
		visibility: hidden;
	}
	.fc .fc-daygrid-event-dot {
		margin: 0;
		border-color: var(--bs-primary) !important;
	}
	.fc .fc-daygrid-event .fc-event-time,
	.fc .fc-daygrid-dot-event .fc-event-title {
		display: none;
	}
	.fc .fc-daygrid-day.fc-day-today {
		background: none;
	}
	.fc .fc-day-today .fc-daygrid-day-number {
		padding: 0 0.75rem;
		border-radius: 1.125rem;
		background: var(--fc-today-bg-color);
		color: var(--fc-today-text-color);
	}
	.fc .fc-day-other {
		visibility: hidden;
	}
	.fc .fc-list-table > tbody,
	.fc .fc-list-day,
	.fc .fc-list-day > th {
			display: block;
	}
	.fc .fc-list-event {
		width: 100%;
		position: relative;
		padding: 1.5rem 5rem 1.5rem 1.5rem;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.fc .fc-list-event:after {
		content: '\e910';
		position: absolute;
		top: calc(50% - 1rem);
		right: 1.5rem;
		font-family: wws-icons;
		font-size: 2rem;
		line-height: 1;
		color: var(--bs-primary);
		transition-property: transform;
	}
	.fc .fc-list-event.active:after {
		transform: scaleY(-1);
	}
	.fc .fc-list-event td {
		width: auto;
		padding: 0;
		border: none;
		display: block;
	}
	.fc .fc-list-event td:first-child,
	.fc .fc-list-event td:last-child {
		padding: 0;
	}
	.fc .fc-list-event + .fc-list-event,
	.fc .fc-list-event-detail + .fc-list-event {
		border-top: 1px solid #DDDDDD;
	}
	.fc .fc-list-event-dot {
		margin: 0 0.75rem 0 0;
	}
	.fc .fc-list-event .fc-list-event-graphic {
		line-height: var(--fc-list-event-dot-width);
	}
	.fc .fc-list-event .fc-list-event-time {
		font-size: 1.333333rem;
		font-weight: normal;
		color: #909090;
	}
	.fc .fc-list-event .fc-list-event-title {
		width: 100%;
		padding-top: 0;
		padding-left: calc(0.75rem + var(--fc-list-event-dot-width)) !important;
		font-size: 1.5rem;
		order: 1;
	}
}
@media (max-width: 575px) {
	.fc-theme-standard .fc-list {
		margin-left: calc(var(--bs-gutter) * -0.5);
		margin-right: calc(var(--bs-gutter) * -0.5);
	}
	.fc-theme-standard .fc-list-day-cushion {
		border-radius: 0;
	}
}
@media (min-width: 576px) {
	.fc .fc-toolbar-title {
		min-width: 9em;
	}	
}
@media (min-width: 992px) {
	.fc .fc-button {
		width: auto;
		height: auto;
		padding: 1rem 2rem;
		border-radius: calc(1rem + 1.5em + 1px);
	}
	.fc .fc-prev-button,
	.fc .fc-next-button {
		padding: 0;
	}
	.fc .fc-filter-button {
		display: none;
	}
	.fc-theme-standard .fc-list-day-cushion {
		padding-left: 3rem;
		padding-right: 3rem;
	}
	.fc .fc-list-table td:first-child {
		padding-left: 3rem;
	}
	.fc .fc-list-table td:last-child {
		padding-right: 3rem;
	}
	.fc .fc-list-event .fc-list-event-title {
		padding-right: 3.75rem;
	}
	.fc .fc-list-event .fc-list-event-title:last-child {
		padding-right: 7rem;
	}
	.fc .fc-list-event.active + .fc-list-event-detail {
		display: table-row;
	}
	.fc .fc-list-event.active + .fc-list-event-detail > td {
		display: table-cell;
	}
	.fc .fc-list-event-title:after {
		content: '\e911';
		position: absolute;
		right: 0.75rem;
		margin: -0.21875rem 0;
		font-family: wws-icons;
		font-size: 2.5rem;
		color: var(--bs-primary);
		line-height: 1;
		-webkit-transition-property: -webkit-transform;
		-moz-transition-property: -moz-transform;
		transition-property: transform;
	}
	.fc .fc-list-event-title:last-child:after {
		right: 3rem;
	}
	.fc .fc-list-event-title a {
		max-width: calc(100% - 2.5rem);
		float: left;
		text-decoration: none !important;
	}
	.fc-direction-ltr .fc-toolbar > * > :not(:first-child) {
		margin-left: 1.25rem;
	}
}
@media (min-width: 1600px) {
	.fc .fc-daygrid-day-frame {
		padding: 0.625rem 1rem;
	}
}

/* highcharts */
.highcharts-container {
	font-family: inherit;
	font-size: 1rem;
}
.highcharts-title {
	fill: var(--bs-grey);
	font-size: 1.1875rem;
	font-weight: 500;
}
.highcharts-color-0 {
	color: var(--bs-grey);
	fill: var(--bs-grey);
	stroke: var(--bs-grey);
}
.highcharts-color-1,
.highcharts-color-primary {
	color: var(--bs-primary);
	fill: var(--bs-primary);
	stroke: var(--bs-primary);
}
.highcharts-color-2,
.highcharts-color-secondary {
	color: var(--bs-secondary);
	fill: var(--bs-secondary);
	stroke: var(--bs-secondary);
}
.highcharts-color-3,
.highcharts-color-success {
	color: var(--bs-success);
	fill: var(--bs-success);
	stroke: var(--bs-success);
}
.highcharts-color-4,
.highcharts-color-warning {
	color: var(--bs-warning);
	fill: var(--bs-warning);
	stroke: var(--bs-warning);
}
.highcharts-color-5,
.highcharts-color-danger {
	color: var(--bs-danger);
	fill: var(--bs-danger);
	stroke: var(--bs-danger);
}
.highcharts-axis-line {
	stroke: #909090;
}
.highcharts-yaxis .highcharts-axis-line {
	stroke-width: 1px;
}
.highcharts-grid-line {
	stroke: #DDDDDD;
}
.highcharts-graph {
	stroke-width: 1px;
}
.highcharts-tick {
	stroke: transparent;
}
.highcharts-tooltip {
	color: var(--bs-dark);
	stroke: #BABABA;
}
.highcharts-tooltip-box {
	fill: var(--bs-white);
	fill-opacity: 1;
}
.highcharts-tooltip text {
	fill: var(--bs-dark);
}
.highcharts-tooltip .highcharts-header {
	margin-bottom: 0.25rem;
	font-size: 1.1875rem;
	font-weight: 500;
	text-align: center;
}
.highcharts-tooltip .highcharts-series-name {
	font-size: inherit;
}
.highcharts-tooltip .highcharts-point-value {
	padding-left: 0.5em;
	font-size: 1.625rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: right;
}
.highcharts-tooltip .highcharts-point-value-suffix {
	padding-left: 0.25em;
	font-size: inherit;
}

/* jquery stylish select */
.stylish-select {
	--stylish-select-bg: #f7f7f7;
	--stylish-select-caret-color: var(--bs-primary);
}

/* responsive ui */
.hamburger {
	--hamburger-stroke-height: 4px;
	--hamburger-color: var(--bs-primary);
	--hamburger-hover-color: var(--bs-primary);
}

/* swiper */
.swiper-wrapper,
.swiper-pagination {
	z-index: auto;
}
.swiper-pagination-bullet {
	width: 1rem;
	height: 1rem;
	border: 1px solid var(--bs-primary);
	border-radius: 0.625rem;
	background-color: var(--bs-primary-shadow);
	opacity: 1;
}
.swiper-container-horizontal > .swiper-pagination-bullets {
	bottom: 3.75%;
	display: flex;
	justify-content: center;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 0.625rem;
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet-active {
	background-color: var(--bs-primary);
}
