.theme-switcher {
    display: flex;
    position: fixed;
    top: 15px;
    right: 15px;
    padding: 6px 3px;
    background: var(--dark-bg-color);
    border-radius: 50px;
	z-index: 999
}

.icon,
.theme-switcher .btn {
    background-size: 14px;
    background-position: center;
    background-repeat: no-repeat
}

.theme-switcher .btn {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-size: 20px;
	margin: 0 3px
}

.theme-switcher .light {
    background-image: url("data:image/svg+xml, %3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='mode-switch' viewBox='0 0 16 16'%3E%3Cpath d='M8 11a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm0 1a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM8 0a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 0zm0 13a.5.5 0 0 1 .5.5v2a.5.5 0 0 1-1 0v-2A.5.5 0 0 1 8 13zm8-5a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2a.5.5 0 0 1 .5.5zM3 8a.5.5 0 0 1-.5.5h-2a.5.5 0 0 1 0-1h2A.5.5 0 0 1 3 8zm10.657-5.657a.5.5 0 0 1 0 .707l-1.414 1.415a.5.5 0 1 1-.707-.708l1.414-1.414a.5.5 0 0 1 .707 0zm-9.193 9.193a.5.5 0 0 1 0 .707L3.05 13.657a.5.5 0 0 1-.707-.707l1.414-1.414a.5.5 0 0 1 .707 0zm9.193 2.121a.5.5 0 0 1-.707 0l-1.414-1.414a.5.5 0 0 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .707zM4.464 4.465a.5.5 0 0 1-.707 0L2.343 3.05a.5.5 0 1 1 .707-.707l1.414 1.414a.5.5 0 0 1 0 .708z' fill='%23ffffff'%3E%3C/path%3E%3C/svg%3E")
}

.theme-switcher .dark {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='mode-switch' viewBox='0 0 16 16'%3E%3Cpath d='M6 .278a.768.768 0 0 1 .08.858 7.208 7.208 0 0 0-.878 3.46c0 4.021 3.278 7.277 7.318 7.277.527 0 1.04-.055 1.533-.16a.787.787 0 0 1 .81.316.733.733 0 0 1-.031.893A8.349 8.349 0 0 1 8.344 16C3.734 16 0 12.286 0 7.71 0 4.266 2.114 1.312 5.124.06A.752.752 0 0 1 6 .278zM4.858 1.311A7.269 7.269 0 0 0 1.025 7.71c0 4.02 3.279 7.276 7.319 7.276a7.316 7.316 0 0 0 5.205-2.162c-.337.042-.68.063-1.029.063-4.61 0-8.343-3.714-8.343-8.29 0-1.167.242-2.278.681-3.286z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M10.794 3.148a.217.217 0 0 1 .412 0l.387 1.162c.173.518.579.924 1.097 1.097l1.162.387a.217.217 0 0 1 0 .412l-1.162.387a1.734 1.734 0 0 0-1.097 1.097l-.387 1.162a.217.217 0 0 1-.412 0l-.387-1.162A1.734 1.734 0 0 0 9.31 6.593l-1.162-.387a.217.217 0 0 1 0-.412l1.162-.387a1.734 1.734 0 0 0 1.097-1.097l.387-1.162zM13.863.099a.145.145 0 0 1 .274 0l.258.774c.115.346.386.617.732.732l.774.258a.145.145 0 0 1 0 .274l-.774.258a1.156 1.156 0 0 0-.732.732l-.258.774a.145.145 0 0 1-.274 0l-.258-.774a1.156 1.156 0 0 0-.732-.732l-.774-.258a.145.145 0 0 1 0-.274l.774-.258c.346-.115.617-.386.732-.732L13.863.1z' fill='%23ffffff'%3E%3C/path%3E%3C/svg%3E")
}

.btn {
    display: inline-block;
    background-color: var(--red);
    color: var(--white);
    font-size: 1rem;
    padding: .8rem 1rem;
    text-align: center;
    text-transform: uppercase;
    border-radius: var(--border-radius);
    border: none;
    cursor: pointer;
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition)
}

.btn:hover,
.btn.active,
.input-group > .input-file:not(.disabled):hover .btn {
    background-color: var(--d-red);
    color: var(--white)
}

.btn.second {
    background-color: var(--blue);
}

.btn.second:hover {
    background-color: var(--d-blue);
}

.disabled {
    pointer-events: none
}

form .btn.disabled,
.btn[disabled],
*.disabled .btn {
    background: var(--d-gray)
}

.success {
    color: var(--green);
    margin: 0
}

.error {
    color: var(--red);
    margin: 0
}

.form-label {
    color: var(--label-color);
    font-size: .9rem
}

textarea {
    min-height: 200px;
    max-height: 400px
}

.input-group {
    position: relative;
    width: 100%
}

.input-group > .form-control,
.input-group > .form-select,
.input-group > .input-file .text,
.chosen-container-single .chosen-single {
    position: relative;
    width: 100%;
    min-width: 0;
    padding: .8rem 1rem;
    font-size: 1rem;
    background-color: var(--input-bg);
	background-color: var(--dark-bg-color);
    color: var(--text-color);
	border: 1px solid transparent;
    border-radius: var(--border-radius-sm);
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition)
}

.chosen-container-single .chosen-single {
	display: block;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M441.9 167.3l-19.8-19.8c-4.7-4.7-12.3-4.7-17 0L224 328.2 42.9 147.5c-4.7-4.7-12.3-4.7-17 0L6.1 167.3c-4.7 4.7-4.7 12.3 0 17l209.4 209.4c4.7 4.7 12.3 4.7 17 0l209.4-209.4c4.7-4.7 4.7-12.3 0-17z' fill='rgb(51, 51, 51)'/%3E%3C/svg%3E");
	background-repeat: no-repeat !important;
    background-size: 16px;
    background-position: center right 15px
}

html[data-theme=dark] .chosen-container-single .chosen-single {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M441.9 167.3l-19.8-19.8c-4.7-4.7-12.3-4.7-17 0L224 328.2 42.9 147.5c-4.7-4.7-12.3-4.7-17 0L6.1 167.3c-4.7 4.7-4.7 12.3 0 17l209.4 209.4c4.7 4.7 12.3 4.7 17 0l209.4-209.4c4.7-4.7 4.7-12.3 0-17z' fill='rgb(255, 255, 255)'/%3E%3C/svg%3E");
}

.input-group > .input-file .text {
	display: block;
	width: 100%;
	cursor: pointer;
	overflow: hidden
}

.input-group > .input-file .text span {
	color: var(--label-color)
}

.input-group > .input-file .btn {
	position: absolute;
    right: 0;
    top: 0
}

.input-group > .input-file input[type=file] {
	position: absolute;
	z-index: -1;
	opacity: 0;
	display: block;
	width: 0;
	height: 0
}

.input-group > .form-control.icon {
    background-position: left 1rem center;
    padding-left: calc(2rem + 14px)
}

.input-group > .form-control.error,
.input-group > .form-select.error {
    border: 1px solid var(--red)
}

.checkbox {
	display: block;
    cursor: pointer
}

.checkbox > input {
    position: absolute;
    z-index: -1;
    opacity: 0
}

.checkbox > span {
    display: inline-flex;
    align-items: center;
    user-select: none;
    color: var(--label-color)
}

.checkbox > span::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    flex-grow: 0;
    border: 1px solid var(--label-color);
    border-radius: var(--border-radius-sm);
    margin-right: .5rem;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition)
}

.checkbox > input:not(:disabled):not(:checked) + span:hover::before {
    border-color: var(--blue);
    -moz-box-shadow: 0 0 5px var(--blue);
    -webkit-box-shadow: 0 0 5px var(--blue);
    box-shadow: 0 0 5px var(--blue)
}

.checkbox > input:not(:disabled):active + span::before {
    background-color: var(--bg-color);
    border-color: var(--blue)
}

.checkbox > input:focus:not(:checked) + span::before {
    border-color: var(--blue)
}

.checkbox > input:checked + span::before {
    border-color: var(--blue);
    background-color: var(--blue);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 25' fill='none'%3E%3Cpath d='M4 12.5L9.5 18.5L20 6.5' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' stroke='%23ffffff'%3E%3C/path%3E%3C/svg%3E")
}

.checkbox > input:disabled + span::before {
    background-color: var(--gray)
}

.input-group > .form-control:focus,
.chosen-container-active.chosen-with-drop .chosen-single {
	border: 1px solid var(--blue);
	-moz-box-shadow: 0 0 5px var(--blue);
	-webkit-box-shadow: 0 0 5px var(--blue);
	box-shadow: 0 0 5px var(--blue)
}

.form-group .chosen-disabled a {
	background: var(--l-gray) !important;
    cursor: not-allowed;
	opacity: 1
}

.chosen-container.disabled {
	pointer-events: none
}

.chosen-container.chosen-with-drop .chosen-drop {
	background-color: var(--input-bg);
	clip: auto;
	-webkit-clip-path: none;
	clip-path: none
}

.chosen-container * {
	-webkit-box-sizing:border-box;
	box-sizing:border-box
}

.chosen-container {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.chosen-container-single .chosen-single span {
	font-family: var(--font-normal);
	display: block;
	overflow: hidden;
	margin-right: 26px;
	text-overflow: ellipsis;
	white-space: nowrap
}

.chosen-container-single .chosen-single div {
	position: absolute;
	top: calc(50% - 15px);
	right: 0;
	width: 30px;
	height: 30px;
	display: block
}

.chosen-container .chosen-drop {
	position: absolute;
	top: 100%;
	z-index: 1010;
	width: 100%;
	border: 1px solid var(--blue);
	border-top: 0;
	-moz-box-shadow: 0 0 5px var(--blue);
	-webkit-box-shadow: 0 0 5px var(--blue);
	box-shadow: 0 0 5px var(--blue);
	background: var(--white);
	clip: rect(0,0,0,0);
	-webkit-clip-path: inset(100% 100%);
	clip-path: inset(100% 100%)
}

.chosen-container-single .chosen-drop {
	border-radius: 0 0 5px 5px;
	background-clip: padding-box
}

.chosen-container-single .chosen-search {
	position: relative;
	z-index: 1010;
	margin: 0;
	padding: 5px;
	white-space: nowrap
}

.chosen-container-single .chosen-search input[type=text] {
	margin: 1px 0;
	padding: 4px 20px 4px 5px;
	width: 100%;
	height: auto;
	outline: 0;
	border: 1px solid var(--blue);
	line-height: normal;
	border-radius: 5px
}

.chosen-container .chosen-results {
	position: relative;
	overflow-x: hidden;
	overflow-y: auto;
	margin: 0 4px 4px 0;
	padding: 0 0 0 4px;
	max-height: 240px;
	-webkit-overflow-scrolling: touch
}

.chosen-container .chosen-results li {
	display: none;
	margin: 0;
	padding: 5px 6px;
	list-style: none;
	line-height: 15px;
	word-wrap: break-word;
	-webkit-touch-callout: none
}
.chosen-container .chosen-results li.active-result {
	display: list-item;
	cursor: pointer
}

.chosen-container .chosen-results li.disabled-result {
	display: list-item;
	color: var(--d-gray);
	cursor: not-allowed
}

.chosen-container .chosen-results li.highlighted {
	background-color: var(--blue);
	color: var(--white)
}

.chosen-container .chosen-results li.no-results {
	color: var(--d-gray);
	display: list-item
}

.datepicker {
    background: var(--bg-color);
    border: 1px solid var(--d-gray);
    font-family: var(--font-normal);
    color: var(--text-color);
    box-shadow: none
}

.datepicker--time-current-hours:after,
.datepicker--time-current-minutes:after {
    background: var(--input-bg)
}

.datepicker--pointer {
    background: var(--bg-color);
    border-top: 1px solid var(--d-gray);
    border-right: 1px solid var(--d-gray)
}

.datepicker--day-name {
    font-family: var(--font-medium);
    color: var(--blue)
}

.datepicker--cell.-focus-,
.datepicker--nav-title:hover,
.datepicker--nav-action:hover {
    background: var(--input-bg)
}

.datepicker--cell.-selected- {
    background: var(--blue)
}

.datepicker--cell.-selected-.-focus- {
    background: var(--blue)
}

.datepicker--cell-day.-other-month-,
.datepicker--cell-year.-other-decade-,
.datepicker--cell-day.-other-month-:hover,
.datepicker--cell-year.-other-decade-:hover {
    color: var(--label-color)
}

.datepicker--cell.-disabled-,
.datepicker--cell.-disabled-.-focus- {
    cursor: not-allowed;
    color: var(--red);
    background: none
}

#message {
	max-width: calc(100% - 60px);
    position: fixed;
    bottom: 30px;
    right: 30px;
    border-radius: var(--border-radius-lg);
    padding: 15px;
    opacity: 0;
    visibility: hidden;
    color: var(--blue);
    background: var(--vl-blue);
    z-index: 9999;
    -webkit-transition: var(--transition);
    -o-transition: var(--transition);
    transition: var(--transition)
}

#message p {
    margin: 0
}

#message.show {
    opacity: 1;
    visibility: visible
}

#message.error {
    color: var(--red);
    background: var(--l-red)
}

#message.success {
    color: var(--green);
    background: var(--l-green)
}

.d-hide {
	display: none !important
}

@media (max-width: 991px) {
	.theme-switcher {
		background: var(--bg-color)
	}

	.d-hide {
		display: block !important
	}
}

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */

/* */