@import "parts/menu.css";
@import "parts/sidebar.css";

*::-webkit-input-placeholder {
    color: #666;
    opacity: 1;
}

*:-moz-placeholder {
    color: #666;
    opacity: 1;
}

*::-moz-placeholder {
    color: #666;
    opacity: 1;
}

*:-ms-input-placeholder {
    color: #666;
    opacity: 1;
}

:root {
    --text-color: #2f1446;
    --back-color: #f0f1f6;
    --blue-color: #4e64a0;

    --shadow-morf-in: 3px 3px 5px rgba(55, 84, 170, .15),
    -3px -4px 5px rgba(255, 255, 255, .4),
    inset 3px 3px 5px rgba(55, 84, 170, .15),
    inset -3px -3px 5px rgba(255, 255, 255, .4);

    --shadow-morf-out: 3px 3px 5px rgba(55, 84, 170, .15),
    -3px -4px 5px rgba(255, 255, 255, .4);

    --shadow-popup: 0 4px 16px rgb(175 188 220), 0 16px 64px rgba(75, 0, 189, .2);

    --font-1-regular: 'NunitoRegular', sans-serif;
    --font-1-meduim: 'NunitoMedium', sans-serif;
    --font-1-light: 'NunitoLight', sans-serif;
    --font-1-bold: 'NunitoBold', sans-serif;
    --font-1-extrabold: 'NunitoExtraBold', sans-serif;

    --font-2-regular: 'RobotoRegular', sans-serif;
    --font-2-meduim: 'RobotoMedium', sans-serif;
    --font-2-light: 'RobotoLight', sans-serif;
    --font-2-bold: 'RobotoBold', sans-serif;

    /*var(--text-color);*/
}

html {
    height: 100%;
}

a, a:focus, a:hover {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
}

svg {
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: auto;
    fill: #4E64A0;
}

hr {
    border: none;
    border-bottom: 1px solid rgb(216, 225, 245);
}

.link {
    cursor: pointer;
    color: #297bf6;
}

.link.dotted {
    padding-bottom: 2px;
    border-bottom: 1px dotted;
}

.pdz {
    padding: 0 !important;
}

.pdzl {
    padding-left: 0 !important;
}

.pdzr {
    padding-right: 0 !important;
}

.p10 {
    padding: 10px !important;
}

.p20 {
    padding: 20px !important;
}

.p30 {
    padding: 30px !important;
}

.mgz {
    margin: 0 !important;
}

.mglz {
    margin-left: 0 !important;
}

.mgrz {
    margin-right: 0 !important;
}

.center_text {
    text-align: center;
}

.w100 {
    width: 100%;
}

.w50 {
    width: 50%;
}

.w30 {
    width: 30%;
}

.w70 {
    width: 70%;
}

.w60 {
    width: 60%;
}

.w20 {
    width: 20%;
}

.w80 {
    width: 80%;
}

.jcfle {
    justify-content: flex-end;
}

.jcfls {
    justify-content: flex-start;
}

.jcspb {
    justify-content: space-between;
}

.jcspa {
    justify-content: space-around;
}

.flex {
    display: flex !important;
}

.fldc {
    flex-direction: column;
}

.fl30 {
    width: 33.33333%;
    float: left;
    padding: 5px;
}

.fl50 {
    width: 50%;
    float: left;
    padding: 5px;
}

.flg1 {
    flex-grow: 1;
}

.flg2 {
    flex-grow: 2;
}

.aic {
    align-items: center;
}

.aife {
    align-items: flex-end
}

.hidden {
    display: none !important;
}

.container,
.container-fluid {
    padding-right: 10px;
    padding-left: 10px;
}

.container-fluid {
    max-width: 1440px;
    margin: 0 auto;
}

.row {
    margin-right: -10px;
    margin-left: -10px;
}

body {
    /*color: var(--text-color);*/
    /*background-color: #e9ecef;*/
    /*background-color: #f6f8fa;*/
    /*background-color: #EEF0F8;*/
    /*background-color: #e9ecef;*/
    background-color: var(--back-color);
    font-size: 14px;
    min-width: 320px;
    position: relative;
    line-height: 1.1;
    font-family: var(--font-1-regular);
    margin: 0;
    overflow-x: hidden;
    max-height: 100%;
    height: 100%;
}

.main_section {
    padding: 60px 10px 40px 80px;
    min-height: 100%;
}

.main_section.menu {
    padding: 60px 20px;
}

.header_holder {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 20px 0 40px;
}

.logo_holder {
    position: absolute;
    display: flex;
    align-items: center;
    top: 10px;
    left: 20px;
}

.logo_holder img {
    margin-right: 10px;
    display: block;
}

.logo_holder span {
    letter-spacing: 0.25em;
    line-height: initial;
}

.waves_holder {
    display: none;
    /*position: absolute;*/
    /*right: calc(50% - 150px);*/
    /*top: 5px;*/
    width: 300px;
    z-index: 450;
}

.waves_holder.active {
    display: block;
}

/*
|=============================================================
| WRAP CHECK
|=============================================================
*/

input[type="radio"],
input[type="checkbox"] {
    opacity: 0;
    margin: 0;
    padding: 0;
    min-height: unset;
    position: absolute;
    z-index: -1;
}

label {
    cursor: pointer;
}

label.error {
    font-size: 12px;
    color: red;
    margin-bottom: 10px;
    display: block;
}

label.option {
    display: flex;
    margin-bottom: 5px;
    align-items: center;
}

label.option:hover {
    color: #f25157;
}

label.option:hover .cr_holder {
    /*border: 1px solid #4e5791;*/
}

.cr_holder {
    margin-right: 10px;
}

.cr_holder span {
    border: 3px solid #fff;
    box-sizing: border-box;
    display: block;
    position: relative;
    height: 20px;
    width: 20px;
    background-color: rgba(216, 225, 245, .4);
    box-shadow: 3px 3px 5px rgba(216, 225, 245, .95),
    -3px -3px 5px rgba(255, 255, 255, 0.1);
}

.cr_holder.checkbox span {
    border-radius: 3px;
}

.cr_holder.radio span {
    border-radius: 50%;
}

.cr_holder input:checked + span {
    background-color: #96daab;
}

/*
|==============================================
| Rows
|==============================================
*/

.row_holder {
    display: flex;
    width: 100%;
}

select,
input,
textarea {
    background-color: rgba(255, 255, 255, 0.7);
    margin-bottom: 10px;
}

select,
input[type="text"],
input[type="time"],
input[type="number"],
input[type="password"],
textarea {
    font: inherit;
    resize: none;
    height: 50px;
    display: block;
    padding: 5px 10px;
    outline: none;
    /*color: inherit;*/
    color: var(--blue-color);
    border-radius: 8px;
    border: 1px solid rgba(216, 225, 245, .6);
}

.row_holder textarea {
    height: 100px;
    padding: 10px;
}

.row_holder textarea.tall {
    height: 130px;
}

.row_holder .long input,
.row_holder .long select {
    width: 310px;
}

.row_holder_single {
    width: 100%;
}

.row_holder_single .input_holder,
.row_holder_single .input_holder_pdz {
    width: 100%;
}

.row_holder.row_holder_single select,
.row_holder.row_holder_single textarea,
.row_holder.row_holder_single input[type="text"],
.row_holder.row_holder_single input[type="time"],
.row_holder.row_holder_single input[type="number"],
.row_holder.row_holder_single input[type="password"] {
    width: 100%;
}

.row_holder_twin {
    width: 100%;
    justify-content: space-between;
}

.row_holder_twin > .row_holder_single {
    width: calc(50% - 5px);
}

.row_holder_twin > .row_holder_twin {
    width: calc(50% - 5px);
}

.row_holder_twin > .input_holder {
    width: calc(50% - 5px);
}

.row_holder.row_holder_twin select,
.row_holder.row_holder_twin textarea,
.row_holder.row_holder_twin input[type="text"],
.row_holder.row_holder_twin input[type="time"],
.row_holder.row_holder_twin input[type="number"],
.row_holder.row_holder_twin input[type="password"] {
    width: 100%;
}

.row_holder_trip {
    width: 100%;
    justify-content: space-between;
}

.row_holder_trip .input_holder {
    width: calc(33.33333% - 5px);
}

.row_holder.row_holder_trip select,
.row_holder.row_holder_trip textarea,
.row_holder.row_holder_trip input[type="text"],
.row_holder.row_holder_trip input[type="time"],
.row_holder.row_holder_trip input[type="number"],
.row_holder.row_holder_trip input[type="password"] {
    width: 100%;
}

.row_holder_quad {
    width: 100%;
    justify-content: space-between;
}

.row_holder_quad .input_holder {
    width: calc(25% - 5px);
}

.row_holder.row_holder_quad select,
.row_holder.row_holder_quad textarea,
.row_holder.row_holder_quad input[type="text"],
.row_holder.row_holder_quad input[type="time"],
.row_holder.row_holder_quad input[type="number"],
.row_holder.row_holder_quad input[type="password"] {
    width: 100%;
}

.input_holder.number {
    width: 83px;
    max-width: 83px !important;
}

.form_frame {
    padding: 10px;
}

.form_block_holder {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px;
}

.form_block_holder.inner {
    margin-bottom: 0;
}

.form_block {
    background-color: rgba(255, 255, 255, 0.08);
    border: 1px solid rgb(216, 225, 245);
    margin-bottom: 10px;
    border-radius: 8px;
    padding: 10px;
    width: 100%;
}

.form_block.clear {
    padding: 0;
    border: none;
}

.form_block.inner {
    border: none;
    padding: 10px;
    margin-bottom: 0;
}

.form_block_holder.twin > .form_block {
    width: calc(50% - 5px);
}

.form_block_holder.trip > .form_block {
    width: calc(33.33333% - 5px);
}

.form_block_holder.quad > .form_block {
    width: calc(25% - 5px);
}

.form_block.main {
    width: calc(100% - 300px);
    flex-grow: 1;
}

.form_block.side {
    width: 280px;
}

.form_block_header, .form_block_subheader {
    border-bottom: 1px solid #eee;
    margin-bottom: 10px;
    padding: 5px 0;
    line-height: 20px;
    font-size: 14px;
    text-transform: uppercase;
}

.form_block_subheader {
    font-size: 12px;
}

.custom_modal_form_item_inline form {
    display: flex;
}

.custom_modal_form_item_inline .form_block_holder {
    margin-bottom: 0;
}

.custom_modal_form_item_inline .form_frame {
    flex-grow: 1
}

.custom_modal_form_item_inline .form_block {
    margin-bottom: 0;
}

.custom_modal_form_item_inline .form_actions {
    display: block;
    width: initial;
}

.custom_modal_form_item_inline .form_actions .w50 {
    width: initial
}

/*
|=============================================================
| CLONE
|=============================================================
*/

.clone {
    cursor: pointer;
    font-size: 12px;
    text-align: right;
}

.cloned {
}

/*option.home_phone {display: none;}*/
/*option.work_phone {display: none;}*/
/*.cloned option.home_phone {display: initial;}*/
/*.cloned option.work_phone {display: initial;}*/

.remove_cloned {
    cursor: pointer;
    display: none;
    height: 50px;
    width: 50px;
    border: 1px solid rgb(216, 225, 245);
    background-color: rgba(78, 100, 160, .1);
    border-radius: 8px;
    justify-content: center;
    align-items: center;
    margin-bottom: 10px;
    margin-left: 10px;
    align-self: flex-end;
}

.cloned .remove_cloned {
    display: flex;
}

.common_header {
    font-size: 16px;
    margin-bottom: 10px;
    padding-bottom: 5px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.common_header.bordered {
    border-bottom: 1px solid rgba(78, 100, 160, .2);
}

.context_menu_holder {
    background: #5380a8;
    position: absolute;
    border-radius: 8px;
    overflow: hidden;
    width: 220px;
    display: none;
    box-shadow: 0 4px 16px rgba(75, 0, 189, .1);
    z-index: 10000;
}

.context_menu_item {
    background-color: rgb(255, 255, 255);
    padding: 10px 15px;
    border-top: 1px solid rgba(78, 100, 160, .2);
    cursor: pointer;
    transition: .5s all;
    -moz-transition: .5s all;
    -webkit-transition: .5s all;
}

.context_menu_item:hover {
    background-color: rgb(216, 225, 245);
}

.context_menu_item.cont_menu_link.blank {
    width: 40px;
    padding: 5px 10px;
    display: flex;
}

.context_menu_selected_name {
    font-size: 12px;
    text-align: center;
    padding: 0 5px;
    background: #4e64a0;
    color: #fff;
    line-height: 40px;
    height: 40px;
    overflow: hidden;
}

.cont_menu, .menu_link {
    cursor: pointer;
}

.tab_content {
    display: none;
}

.tab_links {
    display: inline-flex;
    margin-bottom: 10px;
    overflow: hidden;
}

.tab_link {
    background-color: #fff;
    /*border: 1px solid rgba(78, 100, 160, 0.2);*/
    /*border-top: 1px solid rgba(78, 100, 160, 0.2);*/
    /*border-right: 1px solid rgba(78, 100, 160, 0.2);*/
    border-bottom: 1px solid rgba(78, 100, 160, 0.2);
    align-items: center;
    justify-content: center;
    cursor: pointer;
    display: flex;
    font-family: var(--font-1-meduim);
    min-height: 40px;
    padding: 0 20px;
    position: relative;
    text-align: center;
}

.tab_link:first-child {
    border-radius: 8px 0 0 8px;
    /*border-left: 1px solid rgba(78, 100, 160, 0.2);*/
}

.tab_link:last-child {
    border-radius: 0 8px 8px 0;
}

.tab_link.active {
    background-color: rgb(216, 225, 245);
    /*border-top: 1px solid rgb(216, 225, 245);*/
    /*border-right: 1px solid rgb(216, 225, 245);*/
    /*border-bottom: 1px solid rgb(216, 225, 245);*/
    opacity: 1;
}

.tab_link.active:first-child {
    /*border-left: 1px solid rgb(216, 225, 245);*/
}

.tab_content.active {
    display: flex;
    flex-wrap: wrap;
}


.x_info_holder {
    border-radius: 8px;
    overflow: hidden;
    padding: 20px;
    background-color: #fff;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
    /*box-shadow: 0 4px 8px rgba(75, 0, 189, .08);*/
}

.x_info_controls {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
    padding: 5px 0;
    border-radius: 8px;
}

.x_info_controls .common_header {
    margin-bottom: 0;
    padding-bottom: 0;
}

.x_info_controls .common_controls {
    display: flex;
}

.x_info_action {
    cursor: pointer;
    border: 1px solid rgba(78, 100, 160, .4);
    border-radius: 8px;
    padding: 5px 10px;
    margin-left: 10px;
    opacity: .6;
}

.x_info_controls .form-control {
    margin-bottom: 0 !important;
    height: 30px !important;
}

.x_info_holder .custom_modal_form_item_inline {
    width: 100%;
    background: #fff;
    border-radius: 8px;
    margin-top: 10px;
    box-shadow: 0 2px 6px rgba(75, 0, 189, .08);
    overflow: hidden;
    margin-bottom: 10px;
}

.x_info_controls .form_frame {
    padding: 10px;
    margin: 0;
}

.x_info_header {
}

.x_info_header > tr {
    background-color: #d8e1f5;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
    border-top: 1px solid rgba(78, 100, 160, .1);
    /*box-shadow: 0 2px 6px rgba(75, 0, 189, .08);*/
    border-radius: 8px;
    margin: 0 0 2px;
    padding: 10px 0;
    display: flex;
}

.x_info_header > tr .x_cell_common {
    border-right: 1px solid #fff;
    font-weight: initial;
    font-family: var(--font-1-bold);
}

.x_info_search {
    flex-grow: 1;
    margin: 0 20px;
}

.x_info_search input {
    width: 100%;
    height: 30px;
    margin: 0;
}

.x_info_item {
    background-color: rgba(255, 255, 255, 1);
    border-bottom: 1px solid rgb(217 226 245);
    position: relative;
    border-radius: 8px;
    min-height: 50px;
    padding: 10px 0;
    display: flex;
}

.x_info_item:hover {
    background-color: rgba(217, 226, 245, .2);
}


.x_info_item.red {
    border-left: 3px solid #e1424c;
}

.x_info_item.green {
    border-left: 3px solid #2ed23a;
}

.x_info_item.blue {
    border-left: 3px solid #46619f;
}

.x_info_item.orange {
    border-left: 3px solid #e6b12b;
}

.x_cell_common {
    align-items: center;
    border-right: 1px solid #D8E1F5;
    display: flex;
    float: left;
    min-height: 15px;
    min-width: 40px;
    padding: 0 15px;
}

.x_cell_number {
    width: 60px;
    text-align: center;
}

.x_cell_checkbox {
    display: flex;
    height: 40px;
    min-width: 40px;
    align-items: center;
    justify-content: center;
}

.x_cell_date {
    width: 180px;
}

.page_controls .actions_item,
.x_info_controls .actions_item {
    display: flex;
    color: #f0f1f6;
    margin: 0 5px;
    cursor: pointer;
    padding: 0 10px;
    font-size: 12px;
    min-height: 30px;
    align-items: center;
    line-height: initial;
    font-family: var(--font-1-meduim);
    border-radius: 8px;
    justify-content: center;
    background-color: #46619f;
}

/*
|==============================================
| Buttons
|==============================================
*/

button,
.button
{
    font-weight: 600;
    cursor: pointer;
    border: none;
    display: block;
    height: 60px;
    padding: 5px 10px;
    outline: none;
    width: 100%;
    min-width: 150px;
}

.button {
    display: flex;
    max-width: 100%;
    align-items: center;
    justify-content: center;
    font-family: var(--font-1-meduim);
}

button:active {
    background-color: rgb(168, 185, 222);
    box-shadow: 0 0 5px inset rgba(75, 0, 189, .2);
}

.btn_y {
    background-color: rgb(216, 225, 245);
}

.btn_m {
    background-color: #6d3763;
}

.btn_c {
    background-color: coral;
}

.btn_n {
    background-color: rgb(246, 248, 250);
}

.mini_button,
.tiny_button {
    width: 50px;
    height: 50px;
    display: flex;
    min-width: 50px;
    border-radius: 8px;
    align-items: center;
    justify-content: center;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
}

.tiny_button {
    width: 26px;
    height: 26px;
    min-width: 26px;
}

.inline_button {
    height: 50px;
    border-radius: 8px;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
}

/*
|==============================================
| Popups
|==============================================
*/

.notify_holder {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background-color: rgba(38, 38, 38, 0.6);
    box-shadow: 0 4px 16px rgba(0, 0, 0, .1);
    position: fixed;
    top: 30px;
    right: calc(50% - 300px);
    width: 600px;
    z-index: 200;
    border-radius: 8px;
    overflow: hidden;
}

.notify_content {
    background-color: #fff;
    width: 100%;
    max-width: 600px;
    position: relative;
}

.notify_close {
    cursor: pointer;
    align-items: center;
    border-radius: 50%;
    color: #fff;
    cursor: pointer;
    display: flex;
    font-size: 8px;
    height: 14px;
    justify-content: center;
    margin: 0 2px;
    width: 14px;
    float: right;
    background-color: #f25157;
    border: 1px solid #e1424c;
}

.notify_message_holder {
    padding: 20px;
}

.notify_message {
    padding: 20px;
    max-height: calc(100vh - 260px);
}

.custom_modal_holder {
    display: none;
    justify-content: flex-start;
    padding: 40px 30px;
    align-items: center;
    flex-direction: column;
    /*background-color: rgba(38, 38, 38, 0.6);*/
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    flex-wrap: wrap;
    overflow-y: auto;
    max-height: 100%;
    z-index: 150;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.custom_modal_holder.active {
    display: flex;
}

.custom_modal_holder.active:before {
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    backdrop-filter: blur(1px);
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.custom_modal_holder.active.minimized {
    background-color: rgba(38, 38, 38, 0);
    transform: translateY(60px);
    overflow-y: hidden;
    max-height: 35px;
    padding: 0;
    z-index: 160;
    left: 50%;
}

.custom_modal_holder.active.minimized:before {
    opacity: 0;
}

.custom_modal_content {
    max-width: 100%;
    position: relative;
    border-radius: 8px;
    box-shadow: 0 16px 64px rgba(0, 0, 0, .2);
    /*overflow: hidden;*/
    /*-webkit-backdrop-filter: saturate(180%) blur(15px);*/
    /*backdrop-filter: saturate(180%) blur(15px);*/
}

.custom_modal_holder.active.minimized .custom_modal_content {
    box-shadow: none;
}

.custom_modal_content form {
    background-color: #fff;
    margin-bottom: 0;
}

.custom_modal_content_holder:empty {
    padding: 0;
}

.custom_modal_content_holder {
    max-width: 600px;
    padding: 20px;
    overflow-wrap: break-word;
}

.custom_modal_header {
    border-radius: 8px 8px 0 0;
    background-color: #efefef;
    border-bottom: 1px solid #c1c1c1;
    display: flex;
    justify-content: space-between;
    /*margin-bottom: 10px;*/
    height: 35px;
    padding: 10px;
    background: linear-gradient(180deg, #efefef 0%, #e5e5e5 100%);
    background: -moz-linear-gradient(180deg, #efefef 0%, #e5e5e5 100%);
    background: -webkit-linear-gradient(270deg, #efefef 0%, #e5e5e5 100%);
    background: -o-linear-gradient(180deg, #efefef 0%, #e5e5e5 100%);
}

.custom_modal_name {
    font-size: 13px;
    letter-spacing: .06em;
    opacity: .8;
}

.custom_modal_cont {
    display: flex;
    justify-content: space-between;
    margin-left: 20px;
}

.modal_cont {
    align-items: center;
    border-radius: 50%;
    color: #fff;
    position: relative;
    cursor: pointer;
    display: flex;
    font-size: 8px;
    height: 16px;
    justify-content: center;
    margin: 0 2px;
    width: 16px;
    filter: grayscale(.6);
    opacity: .6;
}

.modal_cont:hover {
    filter: grayscale(0);
    opacity: 1;
}

.custom_modal_minimize {
    background-color: #fac637;
    border: 1px solid #e6b12b;
}

.custom_modal_maximize {
    background-color: #3aea4a;
    border: 1px solid #2ed23a;
}

.custom_modal_close {
    background-color: #f25157;
    border: 1px solid #e1424c;
}

.modal_cont:before,
.modal_cont:after {
    content: '';
    display: block;
    position: absolute;
}

.custom_modal_minimize:before {
    border-top: 3px solid transparent;
    border-right: 3px solid transparent;
    border-bottom: 3px solid #343a3f;
    border-left: 3px solid #343a3f;
    transform: translate(-3px, 3px) rotate(180deg);
}

.custom_modal_minimize:after {
    border-top: 3px solid #343a3f;
    border-right: 3px solid #343a3f;
    border-bottom: 3px solid transparent;
    border-left: 3px solid transparent;
    transform: translate(3px, -3px) rotate(180deg);
}

.custom_modal_maximize:before {
    border-top: 3px solid transparent;
    border-right: 3px solid transparent;
    border-bottom: 3px solid #343a3f;
    border-left: 3px solid #343a3f;
    transform: translate(-1px, 1px);
}

.custom_modal_maximize:after {
    border-top: 3px solid #343a3f;
    border-right: 3px solid #343a3f;
    border-bottom: 3px solid transparent;
    border-left: 3px solid transparent;
    transform: translate(1px, -1px);
}


.custom_modal_close:before {
    width: 3px;
    height: 10px;
    background-color: #343a3f;
    transform: rotate(45deg);
}

.custom_modal_close:after {
    width: 3px;
    height: 10px;
    background-color: #343a3f;
    transform: rotate(-45deg);
}

.modal_cont svg {
    opacity: 0;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.modal_cont:hover svg {
    opacity: 1;
}

.custom_modal_form_item {
    display: none;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.custom_modal_form_item.active {
    display: block;
    overflow: hidden;
    border-radius: 0 0 8px 8px;
}

.custom_modal_form_item.minimized {
    /*height: 1px;*/
}

.custom_modal_info {
    background-color: #fff;
    max-height: calc(100vh - 160px);
    overflow-y: auto;
}

.preview_item_holder {
    max-width: 900px;
    min-width: 460px;
    word-break: break-all;
    background-color: #fff;
}

.preview_item {
    padding: 10px 20px;
}

.preview_item:nth-child(even) {
    background-color: #f0f1f6;
}

.preview_item_name {
    opacity: .6;
    font-size: 12px;
    margin-bottom: 5px;
}

.preview_item_value {
    font-family: var(--font-1-meduim);
}

.labellike {
    height: 20px;
    display: flex;
    font-size: 12px;
    align-items: center;
}

.file_label {
    cursor: pointer;
    display: flex;
    align-items: center;
    white-space: unset;
    position: relative;
    padding: 0 10px;
    background-color: rgba(216, 225, 245, .2);
    margin-bottom: 10px;
    border-radius: 8px;
    border: 1px solid rgb(216, 225, 245);
    height: 50px;
}

.file_label span.file_field_name {
    border-bottom: 1px dashed #4e64a0;
    display: inline-block;
    white-space: nowrap;
}

.file_del {
    display: none;
}

.file_label.filed .file_del {
    cursor: pointer;
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 40px;
    height: 100%;
    text-align: center;
    background-image: url('../img/icon_close.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px;
}

.file_label input {
    display: block;
    width: 1px;
    height: 1px;
    opacity: 0;
    position: absolute;
}

/*
|==============================================
| Module actions
|==============================================
*/

.module_actions_holder_outer {
    position: fixed;
    top: 0;
    height: 1px;
    display: flex;
    justify-content: center;
    width: 100%;
    z-index: 100;
}

.module_actions_holder {
    border-bottom: 1px solid rgba(78, 100, 160, .4);
    border-top: none;
    display: flex;
    align-items: center;
    justify-content: center;
    /*opacity: .6;*/
    background-color: rgb(216, 225, 245);
    border-radius: 0 0 40px 40px;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    height: 40px;
    padding: 0 25px;
}

.module_actions_holder:hover {
    opacity: 1;
}

.module_actions_item {
    text-align: center;
    margin: 0 14px;
    cursor: pointer;
    position: relative;
}

.module_actions_icon {
    width: 40px;
    height: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transform: scale(0.9);
    -webkit-transition: .2s ease;
    -moz-transition: .2s ease;
    -ms-transition: .2s ease;
    -o-transition: .2s ease;
    transition: .2s ease;
}

.module_actions_icon img {
    max-height: 100%;
}

.module_actions_indicator {
    font-family: var(--font-1-bold);
    position: absolute;
    color: #fff;
    right: 0;
    top: 0;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: red;
    font-size: 10px;
    display: flex;
    z-index: 100;
    align-items: center;
    justify-content: center;
}

.module_actions_indicator:empty {
    display: none;
}

.module_actions_name {
    width: 100px;
    min-width: 100px;
    min-height: 100px;
    font-size: 12px;
    border-radius: 8px;
    left: -25px;
    position: absolute;
    opacity: 0;
    top: -2px;
    transform: translateY(-45px);
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -ms-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

.module_actions_name img,
.module_actions_name svg {
    max-width: 40px;
    min-width: 40px;
    min-height: 40px;
    display: block;
    border: none;
    margin: 5px auto 10px;
}

.module_actions_item:hover .module_actions_icon {
    opacity: 1;
    transform: scale(1.1);
}

.module_actions_item:hover .module_actions_name {
    /*opacity: 1;*/
    background-color: rgb(255, 255, 255);
    border-bottom: 1px solid rgba(255, 255, 255, .6);
    box-shadow: 0 2px 15px rgba(75, 0, 189, .1);
    z-index: 150;
    padding: 10px;
    animation: module_actions_name .3s forwards;
}

@keyframes module_actions_name {
    from {
        transform: translateY(0);
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.breadcrumbs {
    display: flex;
    height: 20px;
    align-items: center;
    line-height: normal;
}

.breadcrumb {
    font-size: 12px;
}

.breadcrumb a {
    border-bottom: 1px dotted rgba(78, 100, 160, .6);
}

.breadcrumb img {
    width: 8px;
    display: inline-block;
    margin: 0 5px;
}


/*
|==============================================
| Login
|==============================================
*/

.login_form_holder {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
}

.login_error_holder {
    text-align: center;
    margin-bottom: 20px;
}

.login_form_holder input[type="text"],
.login_form_holder input[type="time"],
.login_form_holder input[type="number"],
.login_form_holder input[type="password"] {
    width: 100%;
}

.login_form_holder .add_button {
    width: 100%;
    margin: auto;
}

.login_form_holder button {
    border-radius: 8px;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
}

/*
|==============================================
| Access
|==============================================
*/

.access_create_form {
    min-width: 800px;
}

.access_options_holder {
    max-height: 300px;
}

.access_options_item {
    margin-bottom: 10px;
    border-radius: 8px;
    padding: 10px;
    background-color: rgba(216, 225, 245, .2);
    border: 1px solid #d8e1f5;
}

.access_options_item .form_block_header {
    font-family: var(--font-1-bold);
}

/*
|==============================================
| Users
|==============================================
*/

.user_create_form {
    min-width: 900px;
}

/*
|==============================================
| CONTENT
|==============================================
*/
.content_holder_outer {
    margin-bottom: 10px;
}

.content_holder {
    border-radius: 8px;
    background-color: rgba(255, 255, 255, 1);
    /*box-shadow: 0 2px 16px rgba(75, 0, 189, .08);*/
    border-bottom: 1px solid rgba(78, 100, 160, .4);
    /*overflow: hidden;*/
    height: 100%;
}

.content_holder.auto_height {
    height: auto;
}

.content_holder_header {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 10px 20px;
    background-color: #d8e1f5;
}

.content_holder_inner {
    padding: 10px 20px;
}

.content_item {
    padding: 10px 20px;
    display: flex;
    justify-content: space-between;
}

.content_item:nth-child(even) {
    background-color: rgb(239, 245, 253);
}

.content_item_name {
    opacity: .8;
    font-size: 12px;
    /*margin: 5px 0;*/
}

.content_item_value {
    font-family: var(--font-1-meduim);
}


/*
|=============================================================
| SEARCH
|=============================================================
*/

.search_holder_form {
    min-width: 800px;
    min-height: 300px;
    background-color: #fff;
}

.search_select_holder {
    width: calc(100% - 160px);
}

.search_select_holder .select2-container {
    margin-bottom: 0;
}

.search_button_holder {
    width: 150px;
    margin-left: 10px;
}

.search_button_holder button {
    height: 50px;
    border-radius: 8px;
    border-bottom: 1px solid rgba(78, 100, 160, .4);
}

/*
|=============================================================
| PAGINATION
|=============================================================
*/

.pagination_holder {
    display: flex;
    align-items: center;
    justify-content: center;
}

.pagination {
    padding: 5px;
    margin: 20px auto;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
}

.pagination:empty {
    margin: 0;
    padding: 0;
}

.page_item {
    cursor: pointer;
    width: 46px;
    min-width: 46px;
    height: 30px;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    border: 1px solid transparent;
    margin: 0 1px;
    border-radius: 8px;
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -ms-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

.page_item:hover,
.page_item.active {
    background-color: rgba(217, 226, 245, .4);
}

.page_item img {
    max-width: 16px;
}

/*
|=============================================================
| OTHER
|=============================================================
*/

.collapsed {
    cursor: pointer;
    white-space: nowrap;
    margin: 0 5px;
    overflow: hidden;
    position: relative;
    padding: 5px 15px;
    border-radius: 8px;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    width: 100%;
}

.collapsed:hover {
    background-color: rgba(216, 225, 245, .4);
}

.collapsed:after {
    content: '';
    position: absolute;
    right: 15px;
    top: 13px;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.collapsed:hover:after {
    /*transform: rotate(90deg);*/
    /*transform-origin: center;*/
}

.expanded {
    position: relative;
    overflow: hidden;
}

.expanded.active {
    height: auto !important;
}

.expander {
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
    width: 30px;
    height: 30px;
    background-color: #fff;
    display: flex;
    transform: rotate(90deg);
    z-index: 12;
    align-items: center;
    justify-content: center;
    border-radius: 0 0 8px 0;
    box-shadow: 0 0 6px rgba(75, 0, 189, .08);
}

.expander.active {
    /*transform: rotate(-90deg);*/
}

/*
|=============================================================
| NOTIFICATIONS
|=============================================================
*/

.notifications_holder {
    max-width: 600px;
    width: 600px;
}

.notification_item {
    padding: 10px 15px;
}

.notification_item:nth-child(even) {
    background-color: rgb(247, 247, 253);
}

.notification_item:nth-child(even) .notification_time {
    background-color: #fff;
}

.notification_header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    border-bottom: 1px dotted rgba(78, 100, 160, .2);
    padding-bottom: 10px;
}

.notification_name {
    font-family: var(--font-1-meduim);
}

.notification_time {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80px;
    min-width: 80px;
    max-height: 80px;
    max-width: 80px;
    border-radius: 50%;
    margin-right: 20px;
    background-color: #f7f7fd;
    text-align: center;
    border: 3px solid #fff;
    box-shadow: 3px 3px 5px rgba(216, 225, 245, .95),
    -3px -3px 5px rgba(255, 255, 255, 0.1),
    inset 3px 3px 5px rgba(216, 225, 245, .95);
    font-size: 12px;
}

.notification_content {
    display: flex;
    margin-bottom: 15px;
    justify-content: space-between;
}

.notification_desc {
    flex-grow: 1;
    display: flex;
    margin-right: 20px;
    flex-direction: column;
    justify-content: center;
}

.notification_link {
    display: flex;
    align-items: center;
}

.notification_link a {
    font-size: 12px;
    border-bottom: 1px dotted;
    display: inline-block;
}

.read_notifications {

}

.dark_b {
    background-color: rgba(216, 225, 245, .2);
    border: 1px solid #d8e1f5;
}

.loader_holder_outer {
    top: 0;
    left: 0;
    bottom: 0;
    opacity: 0;
    width: 100%;
    height: 100%;
    display: none;
    z-index: 1500;
    position: fixed;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -ms-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.loader_holder_outer.active {
    background-color: rgba(78, 100, 160, .2);
    display: flex;
    opacity: 1;
}

.loader_holder {
    display: flex;
    flex-wrap: wrap;
    /*width: 80px;*/
    /*height: 80px;*/
}

.lds-default {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px;
}

.lds-default div {
    position: absolute;
    width: 5px;
    height: 5px;
    background: #fff;
    border-radius: 50%;
    animation: lds-default 1.2s linear infinite;
}

.lds-default div:nth-child(1) {
    animation-delay: 0s;
    top: 29px;
    left: 53px;
}

.lds-default div:nth-child(2) {
    animation-delay: -0.1s;
    top: 18px;
    left: 50px;
}

.lds-default div:nth-child(3) {
    animation-delay: -0.2s;
    top: 9px;
    left: 41px;
}

.lds-default div:nth-child(4) {
    animation-delay: -0.3s;
    top: 6px;
    left: 29px;
}

.lds-default div:nth-child(5) {
    animation-delay: -0.4s;
    top: 9px;
    left: 18px;
}

.lds-default div:nth-child(6) {
    animation-delay: -0.5s;
    top: 18px;
    left: 9px;
}

.lds-default div:nth-child(7) {
    animation-delay: -0.6s;
    top: 29px;
    left: 6px;
}

.lds-default div:nth-child(8) {
    animation-delay: -0.7s;
    top: 41px;
    left: 9px;
}

.lds-default div:nth-child(9) {
    animation-delay: -0.8s;
    top: 50px;
    left: 18px;
}

.lds-default div:nth-child(10) {
    animation-delay: -0.9s;
    top: 53px;
    left: 29px;
}

.lds-default div:nth-child(11) {
    animation-delay: -1s;
    top: 50px;
    left: 41px;
}

.lds-default div:nth-child(12) {
    animation-delay: -1.1s;
    top: 41px;
    left: 50px;
}

@keyframes lds-default {
    0%, 20%, 80%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.5);
    }
}