:root {
    --main-danger: #dc3746;
    --main-danger-hover: #aa001e;
    --main-warning: #ffc305;
    --main-warning-hover: #c99f15;
    --main-success: #4baf50;
    --main-success-hover: #3c8c3c;
    --main-info: #2396f0;
    --main-info-hover: #0a6ebe;
    --main-grey: #f4f5f6;
    --main-grey-hover: #e1e6e8;
}

html,
body {
    max-width: 100%;
    overflow-x: hidden !important;
    font-weight: 400;
    font-size: 14px;
    color: var(--body-color) !important;
}

.day_icon{
    width: 30px;
    height: 30px;
    padding: 0.25rem 0.635rem;
    border: 1px solid var(--main-color);
    border-radius: 50%;
    color: var(--main-color);
    background: transparent;
}

.day_icon.active{
    background: var(--main-color) !important;
    color: #fff !important;
}

/* PER EVITARE L'HOVER LATO MOBILE */
@media (hover: hover) {
    .day_icon:hover{
        background: var(--main-color) !important;
        color: #fff !important;
    }

    .day_icon.active:hover{
        background: var(--main-dark) !important;
    }
}

.text-success {
    color: var(--main-success) !important
}

.text-warning {
    color: var(--main-warning) !important
}

.text-danger {
    color: var(--main-danger) !important
}

a {
    text-decoration: none;
    color: var(--main-color);
}

a:hover {
    color: var(--main-dark);
}

b,
strong {
    font-weight: 700 !important;
}

.grecaptcha-badge,
.super_hidden,
.note-editor .dropdown-toggle::after,
.note-statusbar {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    z-index: -2147483647 !important;
    pointer-events: none !important;
}

#fake_img {
    position: fixed;
    left: -9999px;
    bottom: -9999px;
    visibility: hidden !important;
    opacity: 0 !important;
    overflow: hidden !important;
    z-index: -2147483647 !important;
    pointer-events: none !important;
}

.overflow-hidden {
    overflow-x: hidden !important;
    overflow-y: hidden !important;
    overflow: hidden !important
}

.preloader {
    background-color: #000000d9;
    height: 100vh;
    width: 100vw;
    position: fixed;
    overflow: hidden;
    z-index: 2147483646;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    text-align: center
}

.preloader_calendar {
    background-color: #fff;
    height: 100%;
    width: 100%;
    position: absolute;
    overflow: hidden;
    z-index: 5;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    text-align: center
}

.swal2-container {
    z-index: 2147483647 !important;
}

.preloader .spinner,
.preloader_calendar .spinner {
    display: inline-block;
    width: 64px;
    height: 64px;
    top: 50%;
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
}

.preloader .spinner:after,
.preloader_calendar .spinner:after {
    content: " ";
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 4px solid var(--main-very-light);
    border-color: var(--main-very-light) transparent var(--main-very-light) transparent;
    animation: spinner 1.2s linear infinite;
}

.preloader span,
.preloader_calendar span {
    display: block;
    position: absolute;
    top: calc(50% + 40px);
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--main-very-light);
}

::-webkit-scrollbar {
    width: 4px !important;
    height: 0 !important
}

::-webkit-scrollbar-track {
    background: #fff
}

::-webkit-scrollbar-thumb {
    background: var(--main-very-light)
}

::-webkit-scrollbar-thumb:hover {
    background: var(--main-light)
}

::selection {
    background: var(--body-light-color)
}

.ease,
.focus-group::after,
.hov_link::before,
.hov_link::after,
.fc-daygrid-day-frame.fc-scrollgrid-sync-inner,
.fc-daygrid-event,
.note-btn.btn,
::-webkit-scrollbar-thumb,
.pw_strength>span::before,
.SumoSelect .select-all>span i,
.SumoSelect>.optWrapper.multiple>.options li.opt span i,
.horizontal_chart::after {
    -webkit-transition: all .25s ease;
    -moz-transition: all .25s ease;
    -ms-transition: all .25s ease;
    -o-transition: all .25s ease;
    transition: all .25s ease
}

.login_section {
    background-image: url("../../../media/images/components/login_bg.jpg");
    box-shadow: inset 0 0 0 2000px var(--main-color-t);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100vh;
}

.login_sec h2 {
    font-size: 20px;
    font-weight: 600;
}

.form-group>label {
    position: absolute;
    left: 1px;
    right: 1px;
    top: 18px;
    transform: translateY(-50%);
    cursor: text;
    z-index: 0;
}

.form-group>label.texarea_label {
    top: 0.5rem;
    transform: translateY(0);
}

span.main_color,
strong.main_color,
th.main_color {
    color: var(--main-color) !important;
}

textarea {
    resize: none !important;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

.form-control,
.note-editor.note-airframe,
.note-editor.note-frame {
    border-radius: 15px;
    box-shadow: none !important;
    border-color: #d2d2d2;
    background-color: transparent;
    z-index: 1;
    position: relative;
}

.input-group-text {
    border-color: #d2d2d2;
    border-radius: 15px;
}

.form-control:focus:not([type='file']):not([readonly]):not(.no_focus),
.form-control:hover:not([type='file']):not([readonly]):not(.no_focus) {
    border-color: var(--main-light);
    padding-left: 21px !important;
    background-color: transparent;
}

.form-control-lg[type='file'] {
    min-height: initial;
    font-size: 1rem;
}

/* .text-muted {
    color: var(--body-color-t)!important;
} */
*,
*:focus {
    outline: none !important;
}

.form-group.compiled>label,
.form-group:hover>label {
    font-size: 75%;
    top: 0;
    left: 7px;
    padding: 0 7px !important;
    right: initial;
    transform: translateY(-50%);
    z-index: 2;
}

.btn-success {
    background: var(--main-success);
    border: none;
    color: #fff;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-success:hover,
.btn-success:active {
    background: var(--main-success-hover);
}

.btn-info {
    background: var(--main-info);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-info:hover,
.btn-info:active {
    background: var(--main-info-hover);
}

.btn-warning {
    background: var(--main-warning);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-warning:hover,
.btn-warning:active {
    background: var(--main-warning-hover);
}

.btn-danger {
    background: var(--main-danger);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-danger:hover,
.btn-danger:active {
    background: var(--main-danger-hover);
}

.btn-theme {
    background: var(--main-color);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-theme:hover,
.btn-theme:active,
.btn-theme:focus {
    background: var(--main-very-dark) !important;
}

.btn-deny,
.cancel-btn {
    background: var(--body-color-t);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-deny:hover,
.btn-deny:active,
.cancel-btn:hover,
.cancel-btn:active {
    background: var(--body-color);
}

.btn-delete {
    background: var(--main-grey);
    border: none;
    color: #fff !important;
    font-weight: 600;
    border-radius: 15px;
    box-shadow: none !important;
}

.btn-delete:hover,
.btn-delete:active {
    background: var(--main-grey);
}

.main_bg {
    background: var(--main-color);
}

.login_sec {
    opacity: .85;
}

.login_sec:hover {
    opacity: 1;
}

input[readonly] {
    background: #fff !important;
}

img.white_img {
    filter: brightness(0) invert(1);
}

strong,
b {
    font-weight: 700;
}

.forgot_pw,
.show_hide_pw,
.search_icon,
span.remove_discount_sell_list,
span.remove_discount_supplier_list,
.copy_trigger {
    color: var(--body-color-t);
    z-index: 3;
}

.forgot_pw:hover,
.show_hide_pw:hover,
span.remove_discount_sell_list:hover,
span.remove_discount_supplier_list:hover,
.copy_trigger:hover {
    color: var(--body-color);
}

.show_hide_pw,
.search_icon,
.remove_discount_sell_list,
.remove_discount_supplier_list,
.copy_trigger {
    top: 50%;
    transform: translateY(-50%);
    right: 7px;
}

.SumoSelect.open>.search>label,
.SumoSelect.open>.search>span {
    visibility: visible;
}

input[type="date"],
input[type="datetime-local"] {
    padding-right: 2px !important;
}

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

.login_box {
    border-radius: 30px;
}

.login_signature {
    left: 50%;
    transform: translateX(-50%);
    bottom: 5px;
    font-size: 70%;
}

.login_signature a {
    font-weight: 600;
    color: var(--main-very-dark);
}

.login_signature a:hover {
    color: var(--main-light);
}

.sidebar {
    background-image: linear-gradient(var(--main-dark), var(--main-color));
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    /* box-shadow: 0 5px 20px 1px #00000005, 0 1px 4px #0000000d; */
    z-index: 6;
}

body.p-0 .sidebar {
    transform: translateX(-100%);
    box-shadow: none;
}

.top_nav span.fal {
    font-size: 20px;
}

.top_nav span.fal:hover {
    color: var(--main-dark) !important;
}

.menu_toggler::before {
    content: "\f053";
}

body.p-0 .menu_toggler::before {
    content: "\f0c9";
}

.go_full_screen::before {
    content: "\f065";
}

.remove_full_screen::before {
    content: "\f066";
}

.action_box {
    font-size: 25px;
    height: 75px;
    width: 75px;
    border-left: solid 3px transparent;
}

.action_box:hover,
.action_box.active {
    border-left: solid 3px #fff;
}

.action_box span {
    height: 25px;
    width: 25px;
}

.action_box img {
    height: 35px;
    width: 35px;
}

.action_box span::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.logo_box,
.action_box:first-child {
    height: calc(75px - 1.5rem);
}

.logo_box img {
    object-fit: contain;
    height: 100%;
    margin: auto;
    object-position: center;
}

body.closed_menu {
    padding-left: 0 !important;
}

body.closed_menu .sidebar {
    box-shadow: none;
    transform: translateX(-100%);
}

.right_part {
    width: 225px;
    background: var(--main-grey);
}

h6 {
    font-size: 18px;
}

.sidebar .left_part,
.sidebar .right_part {
    overflow-y: auto;
}

.a_list_right {
    background: #fff;
    color: var(--body-color-t);
}

.a_list_right:hover,
.a_list_right.active {
    background: var(--main-grey);
    color: var(--main-dark);
}

.wrapper {
    overflow-y: auto;
    overflow-x: hidden;
}

body.p-0 .top_nav {
    left: 0 !important;
}

.top_nav {
    top: 0;
    right: 0;
    z-index: 5;
    background: #fff;
}

.top_nav>div {
    z-index: 1;
}

.top_nav.after_scroll>div {
    background-color: #fff;
}

.after_scroll::after {
    content: '';
    z-index: 0;
    box-shadow: 0 5px 20px 15px #00000005, 0 1px 4px #0000000d;
    position: absolute;
    left: 50%;
    top: 0;
    border-radius: 100%;
    bottom: 0;
    height: 75%;
    width: 75%;
    transform: translateX(-50%);
}

button.disabled,
.change_state.disabled {
    opacity: .1 !important;
    pointer-events: none !important;
}

.pw_strength>span {
    height: 5px;
    background-color: var(--main-grey);
    border-radius: 15px;
}

.pw_strength>span::before {
    content: '';
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 0;
    background-color: var(--main-color);
    border-radius: 15px;
    background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}

.pw_strength.weak>span::before {
    width: 33%;
    background-color: var(--main-danger);
}

.pw_strength.medium>span::before {
    width: 66%;
    background-color: var(--main-warning);
}

.pw_strength.strong>span::before {
    width: 100%;
    background-color: var(--main-success);
}

.main-success {
    color: var(--main-success)
}

.main-warning {
    color: var(--main-warning)
}

.main-danger {
    color: var(--main-danger)
}

#password,
#repeat_password {
    padding-right: 1.65rem !important
}

.breadcrumb-item+.breadcrumb-item::before {
    color: var(--body-color);
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    content: "\f054";
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    float: initial;
    transform: scale(0.75);
    opacity: .5;
    z-index: -1;
    position: relative;
}

.gest_box {
    border-radius: 15px;
    /* box-shadow: 0 5px 20px 1px #00000005, 0 1px 4px #0000000d; */
}

.gest_box:hover {
    /* box-shadow: 0 5px 20px 1px #0000000d, 0 1px 4px #0000001a; */
}

.client_bg {
    background-image: linear-gradient(var(--main-very-dark), var(--main-color));
    border-radius: 15px;
}

h1 {
    font-size: 24px;
}

.ans {
    color: inherit;
}

.ans:hover {
    color: var(--main-color);
}

.tableFixHead {
    overflow-y: auto;
    height: 400px;
}

.small_small_table.tableFixHead {
    height: 100px;
}

.small_table.tableFixHead {
    height: 200px;
}

.medium_table.tableFixHead {
    height: 300px;
}

.big_medium_table.tableFixHead {
    height: 500px;
}

.big_table.tableFixHead {
    height: 600px;
}

.tableFixHead thead th {
    position: sticky;
    top: 0;
    background-color: #fff;
    white-space: nowrap;
    z-index: 2;
}

.small_th {
    width: 1%;
}

.wsnw {
    white-space: nowrap;
}

table {
    border-collapse: collapse;
    width: 100%;
}

.gest_box h2,
.gb_h2,
.title_line,
h5.modal-title {
    font-size: 16px;
    font-weight: 600;
}

.sort_trigger:hover {
    color: var(--main-color)
}

.table-striped>tbody>tr:nth-of-type(odd) {
    --bs-table-accent-bg: #f8f9fa;
    color: var(--body-color);
}

.table-striped>tbody>tr.cursor-pointer:hover * {
    color: #f8f9fa !important;
}

.table-striped>tbody>tr.cursor-pointer:hover>* {
    box-shadow: inset 0 0 0 9999px #ffffff00;
    background-color: var(--main-color) !important;
}

.table {
    color: var(--body-color);
}

.pagination_row>* {
    color: var(--body-color-t);
}

.pagination_row>*.active {
    color: var(--body-color);
    font-weight: 700;
}

.pagination_row>*:hover {
    color: var(--main-color);
}

.pbg:nth-child(1) {
    color: var(--main-info);
}

.pbg:nth-child(2) {
    color: var(--main-danger);
}

.pbg:nth-child(3) {
    color: var(--main-warning);
}

.pbg:nth-child(4) {
    color: var(--main-info);
}

.pbg:nth-child(5) {
    color: var(--main-success);
}

.pbg:nth-child(6) {
    color: var(--main-danger);
}

.nav-tabs .nav-item .nav-link {
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: solid 2px #dee2e6;
    color: var(--body-color-t);
    background: transparent;
    font-size: 16px;
}

.nav-tabs .nav-item .nav-link:hover {
    border-bottom: solid 2px var(--body-color);
    color: var(--body-color);
    background: transparent;
}

.nav-tabs .nav-item .nav-link.active {
    border-bottom: solid 2px var(--main-color);
    color: var(--main-color);
    font-weight: 700;
    background: transparent;
}

form .form_overlay {
    top: -8px;
    left: 0;
    right: 0;
    bottom: 0;
    height: calc(100% + 8px);
    width: 100%;
    background: #ffffff59;
    z-index: 3;
    cursor: not-allowed;
}

form .form_overlay::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 35px;
    width: 100%;
    background: #ffffffbf;
    z-index: 4;
}

.SumoSelect {
    width: 100%;
    display: block;
}

.SumoSelect>.CaptionCont {
    border-radius: 15px;
    box-shadow: none !important;
    border-color: #d2d2d2;
    background-color: transparent;
    z-index: 1;
    position: absolute;
    top: 0;
    overflow: hidden;
}

.SumoSelect.open>.CaptionCont {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-color: var(--main-light);
    padding-left: 21px !important;
    background-color: transparent;
}

.SumoSelect>.optWrapper {
    right: 0;
    top: 100%;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border: 1px solid #d2d2d2;
    box-shadow: 0 5px 20px 1px #00000005, 0 1px 4px #0000000d;
    overflow: hidden;
}

.SumoSelect>.CaptionCont>label>i {
    background-image: none;
    background-position: center center;
    color: var(--body-color-t);
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    opacity: 1;
}

.SumoSelect>.CaptionCont>label>i::before {
    content: "\f067";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.SumoSelect.open>.CaptionCont>label>i::Before {
    content: "\f068";
}

.SumoSelect>.CaptionCont>span {
    cursor: pointer;
}

.SumoSelect.open .search-txt {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    padding-right: 1rem !important;
    padding-left: 1rem !important;
}

.SumoSelect select {
    visibility: hidden !important;
    opacity: 0 !important;
    height: 37px !important;
    overflow: hidden !important;
    z-index: -2147483647 !important;
    pointer-events: none !important;
}

.SumoSelect .select-all>span i,
.SumoSelect>.optWrapper.multiple>.options li.opt span i {
    border: solid 1px #d2d2d2;
    border-radius: 5px;
    box-shadow: none !important;
}

.SumoSelect .select-all.partial>span i,
.SumoSelect .select-all.selected>span i,
.SumoSelect>.optWrapper.multiple>.options li.opt.selected span i {
    background-color: var(--main-color);
    border: solid 1px var(--main-color);
    box-shadow: none;
}

.tooltip,
.tooltip * {
    opacity: 1;
    display: block;
}

.tooltip-inner {
    background-color: var(--body-color);
    border-radius: 5px;
}

.tooltip.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--body-color);
}

.tooltip.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: var(--body-color);
}

.tooltip.bs-tooltip-start .tooltip-arrow::before {
    border-left-color: var(--body-color);
}

.tooltip.bs-tooltip-end .tooltip-arrow::before {
    border-right-color: var(--body-color);
}

.wrapper_404 {
    height: 100vh;
    width: 100vw;
}

.footer_cont,
.image_404 {
    left: 0;
    bottom: 0;
    right: 0;
}

.title_404 {
    font-weight: 600;
    line-height: 1;
    font-size: 60px;
}

.subtitle_404 {
    font-weight: 600;
    line-height: 1;
    font-size: 36px;
}

.text_404 {
    font-size: 18px;
}

/* .SumoSelect>.optWrapper.multiple.isFloating {
    padding-bottom: 0;
} */


.SumoSelect>.optWrapper.isFloating {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    bottom: unset;
    margin: 0;
    max-height: unset;
}

.SumoSelect>.optWrapper.multiple.isFloating>.MultiControls {
    display: none;
}

.form-switch .form-check-input:focus {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%2885, 135, 185, 0.25%29'/%3e%3c/svg%3e");
    box-shadow: 0 0 0 0.25rem rgb(85 135 185 / 25%);
}

.form-check-input:focus,
.form-switch .form-check-input:focus {
    border-color: var(--main-light);
}

.form-check-input:focus {
    box-shadow: none;
}

.form-switch .form-check-input:checked {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input:checked,
.form-check-input:checked {
    background-color: var(--main-color);
    border-color: var(--main-color);
}

.image-checkbox .form-check-input~label {
    opacity: .5;
}

.image-checkbox .form-check-input:checked~label {
    opacity: 1;
}

.client_bg img {
    width: auto !important;
    max-height: calc(100px + 3rem + 3rem) !important;
    max-width: 100% !important;
}

.business_name_title {
    font-weight: 600;
    line-height: 1;
    font-size: 35px;
}

.show_workers_filtered,
.show_companies_filtered,
.show_machinery_filtered,
.search_contents_div,
.show_filtered,
.show_company_lists_filtered,
.show_templates_filtered,
.show_newsletters_filtered {
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    border-right: solid 1px #d2d2d2;
    border-left: solid 1px #d2d2d2;
    border-bottom: solid 1px #d2d2d2;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    z-index: -2147483647 !important;
    pointer-events: none !important;
}

.show_workers_filtered>div,
.show_companies_filtered>div,
.show_machinery_filtered>div,
.search_contents_div>div,
.show_filtered>div,
.show_company_lists_filtered>div,
.show_newsletters_filtered>div,
.show_templates_filtered>div {
    max-height: 200px;
    overflow-y: auto;
}

.there_are_results .show_workers_filtered,
.there_are_results .show_companies_filtered,
.there_are_results .show_machinery_filtered,
.there_are_results .search_contents_div,
.there_are_results .show_filtered,
.there_are_results .show_company_lists_filtered,
.there_are_results .show_newsletters_filtered,
.there_are_results .show_templates_filtered {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: initial !important;
    height: initial !important;
    z-index: 5 !important;
    pointer-events: initial !important;
}

.there_are_results #search_objs {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.stat_box .fal {
    color: var(--main-very-light);
}

.stat_box .value {
    color: var(--main-color);
    font-size: 26px;
    line-height: 1;
}

.stat_box_bigger .value {
    font-size: 32px;
    color: var(--main-color);
}

.form-group.focus-group .form-control {
    position: relative;
}

.focus-group::after {
    content: '';
    position: absolute;
    left: 15px;
    right: 15px;
    bottom: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--main-very-light), var(--main-light), var(--main-color), var(--main-dark));
    z-index: 3;
}

.form-group.focus-group.compiled::after,
.form-group.focus-group:hover::after {
    opacity: 0;
}

.form-group.focus-group:not(.compiled):not(:hover)::after {
    opacity: 0;
}

.focus-group .search_icon {
    top: 0;
    bottom: 0;
    height: 100%;
    background-color: var(--main-dark);
    color: #fff;
    right: 0;
    width: 70px;
    left: calc(100% - 70px);
    transform: initial;
    border-top-right-radius: 15px;
    border-bottom-right-radius: 15px;
}

.focus-group .search_icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.focus-group .form-control {
    padding-right: 35px !important;
}

.there_are_results .search_icon {
    border-bottom-right-radius: 0;
}

.add_btn_col {
    height: 37px;
}

.add_btn,
.edit_btn,
.delete_btn,
.export_btn,
.accept_btn {
    border-radius: 15px !important;
    width: 37px;
    height: 37px;
    background-color: var(--main-color);
    display: block;
}

.add_btn_obj {
    height: 37px;
    background-color: var(--main-color);
    display: block;
    border-radius: 15px !important;
    font-weight: 600;
}

.export_btn {
    background: var(--body-color) !important;
}

.export_btn:hover {
    background: var(--body-color-t) !important;
}

.accept_btn {
    background: var(--main-success) !important;
}

.accept_btn:hover {
    background: var(--main-success-hover) !important;
}

.delete_document {
    height: 37px;
    background-color: var(--main-color);
    display: block;
    border-radius: 15px;
    font-weight: 600;
}

.delete_document {
    background-color: var(--main-danger);
}

.delete_document:hover {
    background-color: var(--main-danger-hover);
}

.delete_order {
    background-color: var(--main-danger);
}

.delete_order:hover {
    background-color: var(--main-danger-hover);
}

.delete_btn {
    background-color: var(--main-danger);
}

.delete_btn:hover {
    background-color: var(--main-danger-hover);
}

.go_back_btn {
    background-color: var(--body-color-t);
}

.go_back_btn:hover {
    background-color: var(--body-color) !important;
}

.add_btn:hover,
.edit_btn:hover,
.add_btn_obj:hover,
.add_depository:hover {
    background-color: var(--main-very-dark);
}

.add_btn:before,
.edit_btn::before,
.delete_btn::before,
.go_back_btn::before,
.export_btn::before,
.accept_btn::before {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.text-primary {
    color: var(--main-light) !important;
}

.modal-open,
.modal-open .wrapper {
    overflow-y: hidden !important;
    padding-right: 0 !important;
}

.modal-content {
    border-radius: 15px;
    border: none !important;
}

.close_modal {
    top: 0;
    bottom: 0;
    right: 0;
    width: 68px;
    opacity: .5;
    color: var(--body-color);
}

.close_modal::before {
    position: absolute;
    top: 50%;
    right: 1.5rem;
    transform: translateY(-50%);
}

.close_modal:hover {
    opacity: 1;
}

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

.modal-backdrop.show {
    opacity: 0.85;
}

.swal2-container.swal2-shown {
    background-color: rgba(0, 0, 0, .85);
}

.swal2-container:not(.swal2-top):not(.swal2-top-start):not(.swal2-top-end):not(.swal2-top-left):not(.swal2-top-right):not(.swal2-center-start):not(.swal2-center-end):not(.swal2-center-left):not(.swal2-center-right):not(.swal2-bottom):not(.swal2-bottom-start):not(.swal2-bottom-end):not(.swal2-bottom-left):not(.swal2-bottom-right):not(.swal2-grow-fullscreen)>.swal2-modal {
    border-radius: 15px !important;
}

.swal2-container {
    padding: 1rem !important;
}

.edit_span,
.delete_span,
.info_span,
.success_span,
.restore_span,
.form_span,
.warning_span,
.detail_span {
    color: #fff;
    border-radius: 15px;
    width: 30px;
    height: 30px;
    position: relative;
    font-size: 75%;
}

.edit_span::before,
.delete_span::before,
.info_span::before,
.success_span::before,
.restore_span::before,
.form_span::before,
.warning_span::before,
.detail_span::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.delete_span {
    background-color: var(--main-danger);
}

.delete_span:hover {
    background-color: var(--main-danger-hover);
}

.restore_span {
    background-color: var(--main-info);
}

.restore_span:hover {
    background-color: var(--main-info-hover);
}

.edit_span {
    background-color: var(--main-color);
}

.edit_span:hover {
    background-color: var(--main-very-dark);
}

.detail_span {
    background-color: var(--main-info);
}

.detail_span:hover {
    background-color: var(--main-info-hover);
}

.form_span {
    background-color: var(--body-light-color);
    color: var(--body-color);
}

.form_span:hover {
    background-color: var(--light-color);
    color: var(--main-color)
}

.warning_span {
    background-color: var(--main-warning);
    color: #fff;
}

.warning_span:hover {
    background-color: var(--main-warning-hover);
    color: var(--main-color)
}

.info_span {
    background-color: var(--main-info);
}

.info_span:hover {
    background-color: var(--main-info-hover);
}

.success_span {
    background-color: var(--main-success);
}

.success_span:hover {
    background-color: var(--main-success-hover);
}

.add_new_role:hover,
.add_new_type:hover,
.add_new_list:hover,
.add_new_category:hover,
.add_new_macrocategory:hover,
.add_new_causal:hover {
    color: var(--main-color);
}

.SumoSelect>.optWrapper:not(.multiple)>.options li.opt.selected {
    background: var(--main-color);
    color: #fff !important;
    border-color: transparent !important;
}

.signature_login {
    bottom: 0;
    left: 0;
    right: 0;
    color: #ffffffab;
}

.signature_login a {
    color: #fff !important;
}

.horizontal_chart,
.progress {
    height: 5px;
    background-color: var(--light-color);
    border-radius: 15px;
}

.progress.complete {
    background-color: var(--main-color);
}

.horizontal_chart::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    background-color: var(--main-color);
}

.h_chart_box:hover .horizontal_chart::after {
    background-color: var(--main-light);
}

.h_chart_box:hover .value {
    color: var(--main-light);
}

.h_chart_box .int {
    color: var(--body-color-t);
}

.h_chart_box:hover .int {
    color: var(--main-light);
}

.value small {
    font-size: 12px;
    color: var(--body-color-t);
}

.not_loaded::after {
    width: 0% !important;
}

.select_group.disabled {
    opacity: .5;
    pointer-events: none !important;
}

.art_container {
    padding-right: 1rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    background: #f8f9fa;
    margin-top: 1rem;
    border-radius: 15px;
}

.art_container .form-group>label {
    background-color: #f8f9fa !important;
}

.note-btn.btn {
    border: solid 1px #d2d2d2;
    border-radius: 5px !important;
}

.note-btn.btn.active {
    border: solid 1px var(--main-color);
    background: var(--main-color);
    color: #fff;
}

.note-placeholder {
    color: var(--body-color-t);
}

.panel-heading.note-toolbar {
    padding: 5px 10px 10px 10px;
}

h5:not(.modal-title) {
    color: var(--main-color);
}

form.disabled .modal-body {
    pointer-events: none !important;
    opacity: .75;
}

.content_section_detail {
    border-radius: 15px;
    background: var(--main-grey);
}

.title_line {
    border-bottom: solid 1px var(--main-grey-hover);
}

.border-bottom {
    border-bottom: solid 1px var(--main-grey);
}

.border-top {
    border-top: solid 1px var(--main-grey);
}

.content_section_item_link {
    color: var(--body-color-t);
    border-radius: 15px;
    background: #fff;
}

.content_section_item_link:hover {
    box-shadow: 0 3px 10px 0px rgba(0, 0, 0, .075);
    background: var(--main-light);
    color: #fff;
}

.hov_link::before,
.hov_link::after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 0%;
    bottom: 0;
    height: 100%;
    background: var(--body-color);
    opacity: .05;
    transform: skewX(20deg);
    transform-origin: bottom;
}

.hov_link:hover::before {
    width: 80%;
}

.hov_link:hover::after {
    width: 95%;
}

.hov_link>div {
    z-index: 3;
}

.fab {
    font-family: "Font Awesome 5 Brands" !important;
}

.cut_string,
.form-group>label,
.input-group-text {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    word-break: break-all;
}

.box_gest {
    border-left: solid 3px var(--main-color) !important;
    border-radius: 0 15px 15px 0;
}

.flag_lang {
    height: 14px;
    width: 14px;
}

.no_focus {}

.phpinfo td.v {
    word-break: break-all;
}

.phpinfo img {
    display: block;
}

.phpinfo table {
    border: 15px;
}

.preview img {
    display: block;
    max-width: 100%;
    max-height: 150px;
    border-radius: 15px;
}

label.color_label {
    height: 37px;
    border-radius: 15px;
}

[type="color"] {
    height: 0 !important;
    width: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: hidden !important;
    margin-top: -2px;
    display: block;
}

.disabled_form * {
    pointer-events: none !important;
}

.disabled_form {
    cursor: not-allowed !important;
}

.SumoSelect>.CaptionCont>span.placeholder {
    background-color: transparent !important;
    color: var(--body-color-t) !important;
    font-style: normal;
}

.alert.alert-warning {
    border-radius: 15px;
    --bs-alert-border-color: var(--bs-warning-bg-subtle);
    color: var(--body-color-t);
}

.btn-group>:not(.btn-check:first-child)+.note-btn {
    margin-left: 2px !important;
}

.change_paid.disabled,
.edit_state_obj.disabled {
    opacity: .25;
    pointer-events: none;
}

.print_footer {
    opacity: .5;
}

.print_header {
    min-height: 290px;
}

.print_body {
    min-height: 670px;
}

.print_section *:not(h1) {
    font-size: 11px;
}

.print_section .table>:not(caption)>*>* {
    padding: 0.25rem 0.25rem;
}

.img_td img {
    height: auto;
    width: auto;
    max-width: 50px;
    max-height: 50px;
}

.set_img_dim {
    object-fit: cover;
    object-position: center;
}

@media only screen and (min-width: 1200px) {
    .modal-xxl {
        max-width: 1400px;
    }

    .mid.tableFixHead {
        height: calc(80vh - 21px - 21px - 37px - 21px - 21px - 21px);
    }

    #calendar_operators_to_assign_det {
        min-height: 65vh;
    }
}

@media only screen and (max-width: 1200px) {
    .fc .fc-toolbar-title {
        text-transform: uppercase !important;
        margin-top: 10px;
        font-size: 14px !important;
        font-weight: 700 !important;
        line-height: 0.4 !important;
    }

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

    .close_modal::before {
        right: 1rem;
    }

    body:not(.p-0) .wrapper {
        width: 100vw;
        top: 0;
        bottom: 0;
        z-index: 1;
    }

    body:not(.p-0) .wrapper .content {
        pointer-events: none !important;
    }

    .top_nav {
        width: 100vw;
    }

    .tooltip {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        z-index: -2147483647 !important;
        pointer-events: none !important;
    }
}

@keyframes spinner {
    0% {
        transform: rotate(0deg);
    }

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

.gest_box {
    border-radius: 15px;
    box-shadow: 0 5px 20px 1px #00000005, 0 1px 4px #0000000d;
}


.accordion.accordion_branches {
    /* --bs-accordion-btn-active-icon: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e); */
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem var(--main-color-t);
    box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
}

.accordion-button:not(.collapsed) {
    color: #fff;
    background-color: var(--main-color);
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.title-card-company {
    font-size: 1.2rem;
    color: var(--main-color) !important;
    padding-top: 2rem !important;
    padding-bottom: 1rem !important;
}

.detail_span.card {
    background-color: var(--bs-orange) !important;
}

.detail_span.card:hover {
    color: #fff !important;
}

/********* AGENDA ******/
.fc .fc-daygrid-event {
    padding: 5px !important;
}

.fc-event .fc-event-main {
    white-space: normal;
}

.fc .fc-toolbar-title {
    text-transform: capitalize;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;
}

.fc-daygrid-event {
    border-radius: 10px;
    padding: 3px 7px;
    cursor: pointer;
    filter: grayscale(.5);
    white-space: normal;
}

.fc-daygrid-event:hover {
    filter: grayscale(0);
}

.fc-daygrid-day-frame.fc-scrollgrid-sync-inner {
    cursor: pointer;
}

.fc-daygrid-day-frame.fc-scrollgrid-sync-inner:hover {
    background-color: var(--light-color);
}

.fc-daygrid-day-frame.fc-scrollgrid-sync-inner:has(.post_event_data_not_completed) {
    background: #f4433630;
}

.delete_document_post_event {
    height: 37px;
    background-color: var(--main-danger);
    display: block;
    border-radius: 15px;
    font-weight: 600;
}


tr.add_bg_tr_to_unionize{
    background-color: #f8c92f33;
}

/********* AGENDA ******/

.add_btn_obj.add_obj_unionize.color_warning {
    background-color: var(--main-warning) !important;
}

.SumoSelect .select-all {
    height: 37px;
    z-index: 2;
}

.notes_tb {
    max-width: 400px;
    overflow-y: auto;
    overflow-x: hidden;
    white-space: normal;
    word-break: break-word;
}

.event-icon{
    font-size: 2em;
}

.item-event{
    display: block;
}
@media (max-width: 768px) {
    .grid-2-cols-md {
        grid-template-columns: 1fr 1fr;
    }

    .border-md-top {
        border-top: solid 1px var(--bs-secondary-border-subtle);
    }

    .pt-md-20 {
        padding-top: 20px;
    }
    .truncate-md {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .w-full-md{
        width: 100%;
    }
    .flex-wrap-md{
        flex-wrap: wrap;
    }
    .event-icon{
        font-size: 1.33333em;
        line-height: .75em;
    }
    .item-event{
        display: none;
    }
    .show-events-items .item-event{
        display: block !important;
    }
    .show-events-items .flex-wrap-md{
        flex-wrap: unset !important;
    }
    .show-events-items .truncate-md{
      white-space: normal !important;
    }

}

@media (max-width: 576px) {
    .grid-1-cols-xs {
        grid-template-columns: 1fr;
    }

    .fc .fc-toolbar.fc-header-toolbar {
        display: flex;
        flex-direction: column;
        align-items: start;
        gap: 5px;
    }
}

.fc-toolbar-chunk{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.fc-toolbar-chunk .fc-button-group{
    margin: 0 !important;
}
.event-main-title {
    /* position: relative; */
}

.float-right {
    /* position: absolute;
    top: 0;
    right: 0; */
    float: right;
}

.flex-1{
    flex: 1;
}

.shadow-sm-custom{
    box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 2px 0px;
}

/* Fix per Bootstrap 5 */
.bootstrap-select .dropdown-toggle:focus {
    outline: none !important;
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25) !important; /* Focus ring di BS5 */
}

.bootstrap-select .dropdown-toggle {
    border: 1px solid #ced4da; /* Bordo standard input BS5 */
    background-color: #fff;
}

/* Sistema l'icona della freccia che in BS5 è cambiata */
.bootstrap-select .dropdown-toggle::after {
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
    margin-left: auto; /* Spinge la freccia a destra */
}

/* Per evitare che il menu vada sotto altri elementi */
.bootstrap-select .dropdown-menu {
    z-index: 9999 !important;
}

.SumoSelect>.optWrapper.isFloating>.options {
    max-height: 350px !important;
    height: calc(100% + 60px) !important;
}
.SumoSelect>.optWrapper.multiple.isFloating>.MultiControls {
    display: block;
}