:root {
	--main-primary: #2B4CAD;
	--main-secondary: #3B68ED;
	--main-tertiary: #C4D2FA;
	--main-primary-light: #EAEDF7;
	--main-black: #1F1F29;
	
	--info: #ddeeed;
	--success: #c9f8d7;
	--warning: #ffe4ad;
	--danger: #ffc6c2;
	--primary: #3B68ED;
	--primary-light: #EAEDF7;
	--secondary: #2B4CAD;
	--tertiary: #C4D2FA;
	--badge: #E15560;
	--gray: #ABABAB;
	
	--info-border: #2b4cad;
	--success-border: #003809;
	--warning-border: #5d3600;
	--danger-border: #7c3130;
	--primary-border: #06509e;
	--secondary-border: #b370a6;

	--bs-dropdown-link-hover-bg: #EAEDF7;
	--bs-border-radius: 5px;
	--bs-border-color-translucent: rgba(0,0,0,.08);
}

.text-main-primary { color: var(--main-primary); }
.text-main-secondary { color: var(--main-secondary); }
.text-main-tertiary { color: var(--main-tertiary); }
.text-primary { color: var(--primary) !important; }
.text-secondary { color: var(--secondary) !important; }
.text-tertiary { color: var(--tertiary) !important; }
.text-success { color: var(--success-border) !important; }
.text-danger { color: var(--danger-border) !important; }
.text-warning { color: var(--warning-border) !important; }
.text-info { color: var(--info-border) !important; }
.text-gray { color: var(--gray); }

.bkg-main-primary { background: var(--main-primary) !important; }
.bkg-main-secondary { background: var(--main-secondary) !important; }
.bkg-primary { background: var(--primary) !important; }
.bkg-secondary { background: var(--secondary) !important; }
.bkg-success { background: var(--success) !important; }
.bkg-danger { background: var(--danger) !important; }
.bkg-warning { background: var(--warning) !important; }
.bkg-info { background: var(--info) !important; }
.bkg-badge { background: var(--badge) !important; }

.badge-main-primary { background: var(--main-primary); color: white !important; }
.badge-main-secondary { background: var(--main-secondary); color: white !important; }
.badge-primary { background: var(--primary); color: var(--primary) !important; }
.badge-secondary { background: var(--secondary); color: var(--primary) !important; }
.badge-success { background: var(--success); color: var(--success-border) !important; }
.badge-danger { background: var(--danger); color: var(--danger-border) !important; }
.badge-warning { background: var(--warning); color: var(--warning-border) !important; }
.badge-info { background: var(--info); color: var(--info-border) !important; }
.badge-badge { background: var(--badge); color: white !important; }

.btn { border-width: 1px; border-style: solid; border-radius: var(--bs-border-radius); text-transform: uppercase; font-size: .75rem; font-weight: 500 !important; letter-spacing: 0.2px; line-height: 1.3rem; padding: 8px 16px; }
.btn-sm { font-size: .688rem; padding: 4px 8px; }
.btn-main-primary, .btn-main-primary.show, .btn-main-primary:focus, .btn-main-primary:focus-visible { color: var(--main-secondary); background: var(--main-primary-light); border-color: var(--main-primary-light); box-shadow: none !important; }
.btn-main-secondary, .btn-main-secondary:focus, .btn-main-secondary:focus-visible { color: var(--main-secondary); background: white; border-color: var(--main-tertiary); box-shadow: none !important; }
.btn-primary, .btn-primary.show, .btn-primary:focus, .btn-primary:active, .btn-primary:focus-visible, .btn-check:checked + .btn, .btn-check + .btn:hover { color: var(--primary); background: var(--primary-light); border-color: var(--primary-light); box-shadow: none !important; }
.btn-secondary, .btn-secondary.show, .btn-secondary:focus, .btn-secondary:focus-visible { color: var(--primary); background: white; border-color: var(--primary-light); box-shadow: none !important; }
.btn-dissuasive, .btn-dissuasive.show, .btn-dissuasive:focus, .btn-dissuasive:focus-visible, .cancelBtn { color: var(--primary); background: transparent; border-color: transparent; box-shadow: none !important; }
.btn-success, .btn-success.show, .btn-success:focus, .btn-success:focus-visible { color: var(--success-border); background: var(--success); border-color: var(--success); box-shadow: none !important; }
.btn-danger, .btn-danger.show, .btn-danger:focus, .btn-danger:focus-visible { color: var(--danger-border); background: var(--danger); border-color: var(--danger); box-shadow: none !important; }
.btn-warning, .btn-warning.show, .btn-warning:focus, .btn-warning:focus-visible { color: var(--warning-border); background: var(--warning); border-color: var(--warning); box-shadow: none !important; }
.btn-info, .btn-info.show, .btn-info:focus, .btn-info:focus-visible { color: var(--info-border); background: var(--info); border-color: var(--info); box-shadow: none !important; }
.btn-badge, .btn-badge:hover { color: white; background: var(--badge); border: none; line-height: 1.8rem; }
.btn-link, .btn-link:focus { color: var(--main-tertiary); background: transparent; border: none; }
.btn-special, .btn-special.show, .btn-special:focus, .btn-special:focus-visible { color: white; background: var(--main-secondary); border-color: var(--main-secondary); box-shadow: none !important; }

.btn-main-primary:hover { color: var(--main-secondary) !important; background: var(--main-primary-light) !important; border-color: var(--main-secondary) !important; }
.btn-main-secondary:hover, .btn-main-secondary.show { color: var(--main-secondary) !important; background: white !important; border-color: var(--main-secondary); }
.btn-primary:hover { color: var(--primary); background: var(--primary-light); border: 1px solid var(--primary);  }
.btn-secondary:hover, .btn-secondary:active { color: var(--primary); background: white; border: 1px solid var(--primary); }
.btn-dissuasive:hover, .btn-dissuasive:active, .cancelBtn:hover { color: var(--primary); background: transparent; border: 1px solid var(--primary-light); }
.btn-success:hover, .btn-success:active { color: var(--success-border); background: var(--success); border-color: var(--success-border); }
.btn-danger:hover, .btn-danger:active { color: var(--danger-border); background: var(--danger); border-color: var(--danger-border); }
.btn-warning:hover, .btn-warning:active { color: var(--warning-border); background: var(--warning); border-color: var(--warning-border); }
.btn-info:hover, .btn-info:active { color: var(--info-border); background: var(--info); border-color: var(--info-border); }
.btn-badge:active { color: var(--badge); !important; }
.btn-link:hover, .btn-link:active { color: var(--main-secondary) !important; }
.btn-special:hover { color: var(--main-secondary) !important; background: white !important; border-color: var(--main-secondary) !important; }

.btn-main-primary:active { color: white !important; background: var(--main-primary) !important; border-color: var(--main-primary) !important; }
.btn-main-secondary:active { color: white !important; background: var(--main-secondary) !important; border-color: var(--main-secondary) !important; }
.btn-primary:active { color: var(--primary) !important; background: white !important; border-color: var(--primary) !important; }
.btn-secondary:active { color: var(--primary) !important; background: var(--primary-light) !important; border-color: var(--primary-light) !important; }
.btn-dissuasive:active { color: var(--primary) !important; background: transparent; !important; border-color: var(--primary) !important; }
.btn-success:active { color: var(--success-border) !important; background: white !important; border-color: var(--success-border) !important; }
.btn-danger:active { color: var(--danger-border) !important; background: white !important; border-color: var(--danger-border) !important; }
.btn-warning:active { color: var(--warning-border) !important; background: white !important; border-color: var(--warning-border) !important; }
.btn-info:active { color: var(--info-border) !important; background: white !important; border-color: var(--info-border) !important; }

.alert { font-weight: 500; font-size: .875rem; width: fit-content; border-radius: 10px; line-height: 1.3rem; padding:12px 20px 12px 16px; display: flex; align-items: center; /*animation: pulse 1s infinite;*/ }
.alert-primary { color: var(--primary); background: var(--primary-light); border-color: white; }
.alert-secondary { color: var(--primary); background: white; border-color: var(--primary-light); }
.alert-success { color: var(--success-border); background: var(--success); border-color: white; box-shadow: 0 0 10px 0 rgb(201, 248, 215); }
.alert-danger { color: var(--danger-border); background: var(--danger); border-color: white; box-shadow: 0 0 10px 0 rgba(255,198,194,1); }
.alert-warning { color: var(--warning-border); background: var(--warning); border-color: white; box-shadow: 0 0 10px 0 rgb(255, 228, 173); }
.alert-info { color: var(--info-border); background: var(--info); border-color: white; box-shadow: 0 0 10px 0 rgba(221,238,237,1); }
.alert-light { color: var(--main-black); background: white; border-color: var(--main-black); }
.alert-dark { color: white; background: var(--main-black); border-color: var(--main-black); }

.border-primary { border-color: var(--main-primary-border) !important; }
.border-secondary { border-color: var(--main-secondary-border) !important; }

.badge { --bs-badge-padding-x: 3px; --bs-badge-padding-y: 2px; --bs-badge-font-size: .625rem; --bs-badge-font-weight: 500; --bs-badge-color: white; padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x); font-size: var(--bs-badge-font-size); font-weight: var(--bs-badge-font-weight); color: var(--bs-badge-color); border-radius: 2px; text-transform: uppercase; padding-top: 1px; }

.progress, .progress-stacked { --bs-progress-height: 0.3rem; --bs-progress-bg: var(--primary-light); --bs-progress-border-radius: 50px; --bs-progress-bar-transition: width 0.6s ease; height: var(--bs-progress-height); background-color: var(--bs-progress-bg); border-radius: var(--bs-progress-border-radius); }
.progress-bar { border-radius: 50px; box-shadow: 2px 0px 8px 1px rgba(0,0,0,0.75); }

.card { --bs-card-spacer-y: .5em; --bs-card-spacer-x: 1.5em; --bs-card-title-spacer-y: 0.5rem; --bs-card-border-color: var(--bs-border-color-translucent); border-color: var(--bs-card-border-color); border-radius: 10px; }

.form-check { display: flex; align-items: flex-start; }
.form-check .form-check-input { margin-top: 2px; margin-right: 6px; }

.form-control { border-width: 0 0 1px; border-radius: 0; padding: 2px; font-size: .875rem; font-weight: 500; }
.form-control:disabled { background-color: #F5F5FA; padding-left: 8px; border-bottom: none; padding-bottom: 4px; }

[type=radio], [type=checkbox]:not([data-type='switch']) { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
[type=radio], [type=checkbox]:not([data-type='switch']) { width: 17px; height: 17px; border: solid 1px #cccccc; margin-right: 8px; position: relative; }
[type=radio]:checked::before { content: ""; width: 9px; height: 9px; background-color: var(--primary); position: absolute; top: 2px; left: 2px; }
[type="radio"]:checked + label, [type=checkbox]:not([data-type='switch']):checked + label, [type=checkbox]:checked + label { font-weight: 600; }
[type=radio], [type=radio]:checked::before{ border-radius: 100%; }
[type=radio]:checked { background-color: white; border-color: var(--secondary); border-width: 2px; }
[type=checkbox]:not([data-type='switch']):checked { background-color: var(--primary-light); border-color: var(--primary); }
.btn-check { position: absolute; clip: rect(0,0,0,0); pointer-events: none; }
.form-switch .form-check-input:checked { background-color: var(--primary-light); border-color: var(--primary); }
.form-check-input:focus { box-shadow: 0px 0px 4px 2px rgba(13,110,253,.25); }
.form-switch .form-check-input:focus { --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); }
.form-switch .form-check-input:focus[type="checkbox"] { box-shadow: none; border-color: var(--primary); }
.form-switch .form-check-input:checked { --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgb%2859, 104, 237%29'/%3e%3c/svg%3e"); }
.form-check-input:checked[type="checkbox"] { --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%233B68ED' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e"); }

textarea { resize: none; }
table { width: 100% !important; font-size: .875rem; line-height: 1rem; }
a[data-toggle="collapse"] { position: relative; }
hr { opacity: 1 !important; margin: 0; }
::placeholder { color: var(--main-black) !important; opacity: 0.4 !important; font-weight: 400; }
*{ font-family: 'IBM Plex Sans', sans-serif; }
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 { color: var(--main-black); }
.h6, h6 { text-transform: uppercase; color: var(--secondary) !important; font-weight: 700; }
a { color: var(--primary); }
p { font-size: .875rem; }
.lh-1 { line-height: 1rem !important; }
tbody, td, tfoot, th, thead, tr { border-color: transparent; }

.modal-xxl { --bs-modal-width: 96%; }
.modal-xlg { --bs-modal-width: 80%; }
.select2-container--open { z-index: 2000; margin-right: 16px; }
.notifyjs-corner { z-index: 99999 !important; }
.has-error .select2-selection { border: 1px solid #a94442; border-radius: 4px; }
.language_box_edit_divider { display: block; overflow: auto; width: 100%; height: 50px; }
.server_infos .center { text-align: center; padding-top: 20px; }
.server_logs { position: relative; }
.server_logs .btn-transparent { position: absolute; top: -10px; right: 16px; border-radius: 100px; padding: 7px 9px 6px; background: transparent; color: var(--primary); border: 2px solid; cursor: pointer; font-size: 12px; }
.code-viewer { height: 500px; background: black; padding: 10px; color: white; margin-top: 10px; display: block; overflow: auto; width: 100%; font-family: "Courier New", monospace; white-space: preserve; word-break: break-word; }
.flashit { -webkit-animation: flash linear 1s 2 forwards; animation: flash linear 1s 2 forwards; background-color: var(--success); }
.grecaptcha-badge { display: none !important; }
.navbar-brand { width: 250px; }
.navbar-brand img { max-height: 40px; }
#navbar_company_name { line-height: 2.5rem; }
.flag-icon { width: 22px; }
.align-items-stretch { -webkit-box-align: stretch !important; -ms-flex-align: stretch !important; align-items: stretch !important; }
#sidebar-items-container { overflow-x: hidden !important; }
#sidebar { min-width: 250px; max-width: 250px; background: var(--main-primary); color: white; -webkit-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s; position: relative; border-radius: 0 75px 0 0; }
#sidebar .h6 { color: white; }
#sidebar.active { margin-left: -240px; border-radius: 0 15px 0 0; /*margin-right: 16px;*/ }
#sidebar.active .custom-menu { margin-right: -48px; }
#sidebar h1 { margin-bottom: 20px; font-weight: 700; }
#sidebar h1 .logo { color: white; }
#sidebar ul.components { padding: 0; }
#sidebar > #sidebar-items-container > ul > li { font-size: .875rem; position: relative; display: block; }
#sidebar > #sidebar-items-container > ul > li.active { margin: 8px 0 4px !important; }
#sidebar.active .menu-item > ul.left-submenu-items > li { width: 9px; overflow: hidden; }
#sidebar ul li > ul li { font-size: .875rem; }
#sidebar ul li a { position: relative; padding: 6px 0px 0px 40px; display: block; overflow: hidden; color: white; text-decoration: none; width: 100%; transition: all 0.5s; }
#sidebar ul li a > i { position: absolute; }
#sidebar.active ul li a { white-space: nowrap; width: 34px; transition: all 0.25s; }
#sidebar ul li a:hover { color: var(--tertiary); }
#sidebar ul li a > i { position: absolute; left: 6px; top: 5px; }
#sidebar ul li.active a > i { left: 14px; top: 6px; }
#sidebar ul li.active > a { background: white; color: var(--secondary); border-radius: 50px 0 0 50px; padding-left: 46px; margin-left: -8px; width: calc(100% + 8px); transition: all 0.3s; padding-bottom: 6px; padding-top: 6px; }
#sidebar .custom-menu { display: inline-block; position: absolute; top: 0; right: 16px; margin-right: -20px; -webkit-transition: 0.3s; -o-transition: 0.3s; transition: 0.3s; z-index: 2; }
#sidebar .custom-menu .btn { width: 40px; height: 40px; border-radius: 50%; }
#sidebar .custom-menu .btn.btn-primary { background: var(--primary); border-color: white; border-width: 2px; }
#sidebar .custom-menu .btn.btn-primary:hover, #sidebar .custom-menu .btn.btn-primary:focus { background: var(--primary) !important; border-color: white !important; }
#sidebar .badge { margin-left: 8px; top: 9px; position: absolute; }
#sidebar.active .badge { left: 14px; top: 2px; width: 8px; border-radius: 50px; height: 8px; color: transparent !important; }
#main-page-container { padding-bottom: 100px; }
.scroll-button { width: 40px; height: 40px; background: var(--main-secondary); border-radius: 100px; border-color: white; border-width: 2px; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.scroll-button:hover, .scroll-button:active { background: white; border-color: var(--main-secondary) !important; }
.scroll-button:hover i, .scroll-button:active i { color: var(--main-secondary) !important; }
.dropdown-toggle::after { content: "\f107" !important; border: none !important; font-family: 'Font Awesome 6 Pro' !important; font-weight: 900 !important; font-size: .625rem !important; vertical-align: .05em !important; }
.menu-item .dropdown-toggle[aria-expanded="true"]::after { rotate: -180deg !important; }
#sidebar .menu-item .dropdown-toggle[aria-expanded="true"]::after { padding-bottom: 3px; padding-right: 8px; }
.table_actions { padding: 0; list-style: none; display: block; width: 100%; max-width: 200px; text-align: right; float: right; margin-bottom: 0; }
.table_actions > li { display: inline-block; margin: 2px 2px; }
.table_actions > li > .btn { min-width: 35px !important; }
.modal-header > button.close[data-bs-dismiss="modal"] { float: right; width: 30px; height: 30px; background: transparent; margin-left: auto; border: 0px; font-size: 1.25rem; line-height: 1.25rem; padding-bottom: 6px; text-align: center; color: var(--badge); }
.select2-results__option[aria-disabled="true"] { display: none; }
.static-divider { border-top: 1px solid var(--primary); width: 100%; margin: 16px auto 16px; }
.divider-title { margin-bottom: -12px; margin-top: 20px; }
.form-group { position: relative; padding-bottom: 15px; flex-direction: column; display: flex; }
span.help-block { position: absolute; right: 8px !important; top: 52px !important; color: red; font-size: 0.525rem; text-transform: uppercase; font-weight: 500; z-index: 1; }
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 1.625rem; padding: 0 2px; color: var(--main-black); opacity: 0.4; }
.select2-container .select2-selection--single { height: 26px; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 26px; }
.upload-container { display: flex; overflow: auto; width: 100%; position: relative; height: 165px; align-items: center; justify-content: center; }
.upload-area:hover { cursor: pointer; }
.upload-area { width: 100%; border: 2px dashed var(--secondary); border-radius: 5px; margin: 0 auto; text-align: center; overflow: auto; padding-top: 100px; padding-bottom: 60px; background: rgba(59,104,237,0.1); z-index: 99; position: absolute; top: 0px; left: 0px; opacity: 0.5; }
.upload-container .drag-message { text-align: center; font-weight: 500; font-size: 1rem; color: var(--secondary); position: absolute; width: 100%; z-index: 9; line-height: 3.125rem; display: flex; flex-direction: column; margin-bottom: -10px; }
.upload-dimension { font-size: .875rem; color: var(--main-black); line-height: 1rem; font-weight: 400; }
.draghere-button { border: 1px solid black; padding: 10px; }
#unencrypted-files { display: none; }
.disabled-files-inputs{ top: 0; left: 0; background-color: rgba(222,222,222,0.2); }
.card-body.expired { background: var(--danger); border-radius: 5px; color: var(--danger-border); }
.modify-new, .modify-old { background: var(--success); padding: 1px 4px 2px; border-radius: 3px; color: var(--success-border); }
.modify-old { background: var(--danger); color: var(--danger-border); }
#profile-menu-container > img { width: 120px; height: 120px; font-size: 3.75rem; font-weight: bold; margin: 0 auto 15px; border-radius: 100px; display: block; text-align: center; line-height: 7.5rem; }
#profile-menu-user-buttons { padding: 0px; width: 100%; display: flex; overflow: auto; text-align: center; margin-bottom: 0; }
#profile-menu-user-buttons > li { display: inline-block; }
#profile-menu-items > li { margin-bottom: 12px; text-align: right; }
#profile-menu-items > li > a { text-decoration: none; color: var(--main-black); font-size: .875rem; transition: 0.2s; }
#profile-menu-items > li > a:hover { padding: 4px 8px; border-radius: 5px; }
#profile-menu-items > li > a > i { color: var(--main-tertiary); font-size: 1rem; }
#profile-menu .separator { border-bottom: 1px solid var(--main-secondary); }
#profile-menu-container li a { min-width: 96px; }
#top-profile-icon > img { width: 30px; height: 30px; display: block; border-radius: 100px; font-size: 1.25rem; font-weight: bold; }
#user_avatar { width: 100%; display: block; overflow: auto; max-width: 200px; height: 100%; max-height: 200px; text-align: center; font-size: 5.625rem; line-height: 12.5rem; font-weight: bold; border-radius: 400px; }
.daterangepicker .ranges li.active { background-color: var(--primary); }
.daterangepicker td.active, .daterangepicker td.active:hover { background-color: var(--primary); }
.datepicker-days { font-size: .75rem; }
.datepicker table tr td.active.active, .datepicker table tr td.active.disabled, .datepicker table tr td.active.disabled.active, .datepicker table tr td.active.disabled.disabled, 
.datepicker table tr td.active.disabled:active, .datepicker table tr td.active.disabled:hover, .datepicker table tr td.active.disabled:hover.active, .datepicker table tr td.active.disabled:hover.disabled, 
.datepicker table tr td.active.disabled:hover:active, .datepicker table tr td.active.disabled:hover:hover, .datepicker table tr td.active.disabled:hover[disabled], 
.datepicker table tr td.active.disabled[disabled], .datepicker table tr td.active:active, .datepicker table tr td.active:hover, .datepicker table tr td.active:hover.active, 
.datepicker table tr td.active:hover.disabled, .datepicker table tr td.active:hover:active, .datepicker table tr td.active:hover:hover, .datepicker table tr td.active:hover[disabled], 
.datepicker table tr td.active[disabled] { background-color: var(--primary); background-image: none !important; border-color: transparent !important; text-shadow: none !important; }
.datepicker td, .datepicker th { width: 32px; height: 27px; }
.datepicker th.prev { color: transparent !important; }
.datepicker th.prev::before { content: '\f104'; color: var(--primary); font-family: 'Font Awesome 6 Pro'; }
.datepicker th.next { color: transparent !important; }
.datepicker th.next::before { content: '\f105'; color: var(--primary); font-family: 'Font Awesome 6 Pro'; }
.datepicker-dropdown, .daterangepicker { border: none; box-shadow: 0 0.25rem 1rem rgba(0, 0, 0, 0.15); border-radius: 10px; padding: 8px; }
.daterangepicker { padding: 8px 8px 0px 0; }
.datepicker .datepicker-switch:hover, .datepicker .next:hover, .datepicker .prev:hover, .datepicker tfoot tr th:hover, .datepicker table tr td.day:hover, .daterangepicker .ranges li:hover { background: var(--bs-dropdown-link-hover-bg); }
.datepicker table tr td span.focused, .datepicker table tr td span.focused:hover, .daterangepicker .active:hover { background: var(--primary) !important; color: white; }
.datepicker table tr td span:hover { background: var(--bs-dropdown-link-hover-bg); }
.datepicker span.month, .datepicker span.year, .datepicker span.decade, .datepicker span.century { text-transform: uppercase; font-weight: 500; font-size: 12px; line-height: 2rem !important; height: auto !important; }
.datepicker-dropdown::before, .daterangepicker::before { border-bottom: 0; }
.datepicker-dropdown.datepicker-orient-top::before, .daterangepicker::before { border-bottom: 0; border-top: 0; }
.datepicker table tbody tr td:first-child, .datepicker table tbody tr td:last-child, .daterangepicker table tbody tr td:first-child, .daterangepicker table tbody tr td:last-child { border-radius: 5px; padding: 6px 8px; }
.daterangepicker .ranges li { font-size: 14px; font-weight: 500; }
.daterangepicker .calendar-table td { font-size: .875rem; width: auto; line-height: 1.5rem; padding: 6px 7px 6px 9px; letter-spacing: -0.2px; min-width: 0; }
.daterangepicker td.start-date { border-radius: 5px 0 0 5px;  }
.daterangepicker td.start-date.end-date { border-radius: 5px; }
.daterangepicker .drp-selected { font-size: 14px; padding: 8px 16px; border: 1px solid var(--primary); border-radius: 5px; background-color: var(--primary); line-height: 1.1rem; margin-right: 40px; color: white; }
.drp-buttons { padding: 12px 8px !important; }
.in-range.available { border-radius: 0 !important; }
.in-range.available.end-date { border-radius: 0 5px 5px 0 !important; }
.daterangepicker .calendar-table .next span, .daterangepicker .calendar-table .prev span { border-color: var(--primary); padding: 2.8px; }
.daterangepicker .prev.available, .daterangepicker .next.available { padding-top: 0; }
.notifyjs-bootstrap-base > span[data-notify-text] { display: block; overflow: auto; width: 100%; white-space: break-spaces; padding-left: 30px; font-weight: 500; }
.notifyjs-bootstrap-base { background-image: none !important; min-width: 180px !important; max-width: 800px !important; border-radius: 10px !important; font-size: .875rem !important; font-weight: normal !important; text-shadow: none !important; cursor: default !important; position: relative; padding: 10px 15px 10px 15px !important; }
.notifyjs-bootstrap-info { background-color: var(--info) !important; color: var(--info-border) !important; border-color: white !important; box-shadow: 0px 2px 10px 0px rgba(221,238,237,1); }
.notifyjs-bootstrap-info:before { position: absolute; width: 28px; height: 28px; line-height: 2.5rem; font-family: 'Font Awesome 6 Pro'; content: '\f05a'; left: 8px; top: 6px; font-size: 1.125rem; background-color: white; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-weight: 300; }
.notifyjs-bootstrap-success { background-color: var(--success) !important; color: var(--success-border) !important; border-color: white !important; box-shadow: 0px 2px 10px 0px rgb(201, 248, 215); }
.notifyjs-bootstrap-success::before { position: absolute; width: 28px; height: 28px; line-height: 2.5rem; font-family: 'Font Awesome 6 Pro'; content: '\f2f7'; left: 8px; top: 6px; font-size: 1.125rem; background-color: white; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-weight: 300; }
.notifyjs-bootstrap-warning { background-color: var(--warning) !important; color: var(--warning-border) !important; border-color: white !important; box-shadow: 0 2px 10px 0 rgb(255, 228, 173); }
.notifyjs-bootstrap-warning:before { position: absolute; width: 28px; height: 28px; line-height: 2.5rem; font-family: 'Font Awesome 6 Pro'; content: '\f256'; left: 8px; top: 6px; font-size: 1.125rem; background-color: white; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-weight: 300; }
.notifyjs-bootstrap-danger { background-color: var(--danger) !important; color: var(--danger-border) !important; border-color: white !important; box-shadow: 0px 2px 10px 0px rgba(255,198,194,1); }
.notifyjs-bootstrap-danger:before { position: absolute; width: 28px; height: 28px; line-height: 2.5rem; font-family: 'Font Awesome 6 Pro'; content: '\f714'; left: 8px; top: 6px; font-size: 1.125rem; background-color: white; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-weight: 300; }
.black-color { color: var(--main-black) !important; }
.light-sky-color { color: var(--main-tertiary) !important; }
.border-color-sky { border-color: var(--main-secondary) !important; }
.py-mezzo { padding-bottom: 2px !important; padding-top: 2px !important; }
.fs-7 { font-size: .875rem !important; }
.fs-8 { font-size: .75rem !important; }
.fs-9 { font-size: .625rem !important; }
.active .fa-solid.fa-angle-left { transform: rotate(180deg) !important; padding-right: 2px; }
#sidebar .dropdown-toggle::after { padding-left: 8px; float: left; padding-top: 4px; }
#sidebar ul li a i { width: 20px; justify-content: center; display: flex; float: left; height: 22px; align-content: center; align-items: center; margin-right: 8px; font-size: 1rem; }
.badge > i { margin-right: 0 !important; font-size: .625rem !important; width: 10px !important; height: 12px !important; }
ul.dropdown-menu.show li a i { width: 24px; justify-content: center; display: flex; float: left; height: 22px; align-items: center; }
.menu-section { padding: 8px 0 4px; font-weight: 500; color: var(--tertiary); display: flex; align-items: center; text-transform: uppercase; flex-direction:row; font-size: .75rem !important; }
.divider{ flex-grow:1; height: 1px; background-color: var(--tertiary); margin-left: 8px; }
#sidebar ul.collapse li a, #sidebar ul.collapsing li a { width: fit-content; padding: 2px 0; display: flex; align-items: center; }
#homeSubmenu { margin-bottom: 4px; margin-top: 4px; }
.active #homeSubmenu { margin: 0; }
.dropdown-menu { --bs-dropdown-min-width: 7rem; }
.dropdown-item { min-width: max-content; }
.card-custom { width: 100%; border-width: 0; }
.card-header { background-color: transparent; border-width: 0 0 1px; padding: 8px 0 !important; }
.card-toolbar { display: flex; justify-content: flex-end; }
table.table.dataTable { width: 100% !important; }
#sidebarCollapse:hover { border-color: white !important; }
.fixed-bottom { z-index: 1001; }
.shadow-blue { -webkit-box-shadow: 0px 0px 30px -4px rgba(43,76,173,1); -moz-box-shadow: 0px 0px 30px -4px rgba(43,76,173,1); box-shadow: 0px 0px 30px -4px rgba(43,76,173,1); }
.btn.close, .btn.close:active, .btn.close:visited { border: none; }
.no-after:after { display: none; }
#user-info p { margin-bottom: -4px; }
.no-after img:hover, .no-after.show img { outline: 2px solid var(--main-secondary); outline-offset: 2px; }
.separator { border-bottom: 1px solid var(--bs-border-color-translucent); }
.separator-card { margin-left: -8px; width: calc(100% + 16px); }
.form-check-label { font-size: .875rem; }
.col-form-label { color: var(--primary); font-weight: 500; font-size: .75rem; margin-bottom: -4px; line-height: .8rem; }
.form-control:focus { color: var(--bs-body-color); border-color: var(--primary); box-shadow: none; }
.input-group-text { background-color: white; border-radius: 0; border: none; border-bottom: 1px solid var(--bs-border-color) !important; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
input:focus + .input-group-text, .form-control:focus + .input-group-text { border-color: var(--primary) !important; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
.input-group { flex-direction: row-reverse; }
.input-group-text { font-size: .8rem; }
.select2-container--default .select2-selection--single { border-radius: 0; border-width: 0 0 1px 0; border-color: var(--bs-border-color); }
.select2-selection__arrow b { display: none; }
.select2-selection__arrow::after { content: '\f107'; font-family: 'Font Awesome 6 Pro'; font-size: .75rem; margin-top: 6px; display: block; }
.select2 { font-size: .875rem; line-height: 1.2rem; }
#sidebarCollapse:hover { background-color: var(--main-secondary) !important; color: white !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { opacity: 1; font-weight: 500; }
.select2-container--default.select2-container--focus .select2-selection--multiple { border: solid var(--primary) 1px; }
.select2-container--default .select2-selection--multiple { border: solid var(--bs-border-color) 1px; border-radius: 0; margin-top: 4px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice { background-color: #F5F5FA; border: 1px solid var(--primary-light); border-radius: 4px; padding: 2px 8px; }
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color: var(--badge); margin-right: 6px; opacity: 0.8; }
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { color: var(--badge); opacity: 1; }
#button-top-bottom { z-index: 10; bottom: 40px; right: 16px; }
.select2-results__option { font-size: .875rem; }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: var(--primary); }
.select2-container--default .select2-search--dropdown .select2-search__field { border-radius: 5px; }
.select2-container--default .select2-results__option[aria-selected="true"] { background-color: var(--primary-light); color: var(--main-black); border-radius: 3px; }
.select2-dropdown { border: 1px solid var(--primary-border); border-radius: 5px; }
.table-striped > tbody > tr:nth-of-type(2n+1) > * { box-shadow: none; background-color: #F5F5FA; }
table.table.dataTable.table-striped > tbody > tr:nth-of-type(2n+1) > * { box-shadow: none !important; }
.table > :not(caption) > * > * { border-bottom-width: inherit; }
table tbody tr td:first-child { border-radius: 10px 0 0 10px; padding-left: 16px; }
table tbody tr td:last-child { border-radius: 0 10px 10px 0; padding-right: 16px; }
table tbody tr td { padding: .5em .5em .6em; vertical-align: middle !important; line-height: 1.2rem; }
table thead tr th, .datatable-container table thead tr td { text-transform: uppercase; font-size: .75rem; color: var(--secondary) !important; font-weight: 700; }
table.dataTable thead > tr > th.dt-orderable-asc:hover, table.dataTable thead > tr > th.dt-orderable-desc:hover, table.dataTable thead > tr > td.dt-orderable-asc:hover, table.dataTable thead > tr > td.dt-orderable-desc:hover { outline: unset; color: var(--primary) !important; }
table thead tr th .dt-column-order:before { content: '\f106' !important; font-family: 'Font Awesome 6 Pro'; opacity: .25 !important; bottom: 16px !important; }
table thead tr th .dt-column-order:after { content: '\f107' !important; font-family: 'Font Awesome 6 Pro'; opacity: .25 !important; top: auto !important; bottom: 8px; }
.dt-ordering-asc .dt-column-order:before { display: none !important; }
.dt-ordering-asc .dt-column-order:after { content: '\f063' !important; font-family: 'Font Awesome 6 Pro'; opacity: 1 !important; bottom: 12px !important; }
.dt-ordering-desc .dt-column-order:after { display: none !important; }
.dt-ordering-desc .dt-column-order:before { content: '\f062' !important; font-family: 'Font Awesome 6 Pro'; opacity: 1 !important; bottom: 12px !important; }
#password_input span.help-block { right: 32px; bottom: 6px; }
#password_input .input-group.p-0:focus { border-bottom: 1px solid var(--primary); }
.card-custom .card-body { padding: 8px 0 8px 4px; }
.card-custom .card-body > div > div:first-child, .card-body > div > div:nth-child(2), .card-body > div > div:last-child { font-size: .875rem; }
.card-custom .card-body > div > div:first-child > div { display: flex; align-items: center; width: 33%; }
#documents_table_wrapper > div:first-child > div { width: auto; }
.card-custom .card-body > div > div:first-child > div:nth-child(2) { justify-content: center; }
div.dt-container div.dt-search input { width: inherit; max-width: 400px; min-width: 240px; }
div.dt-container div.dt-search { text-align: center; display: flex; align-items: center; }
.form-control-sm { min-height: 16px !important; }
table.table.dataTable.table-hover > tbody > tr:hover > * { box-shadow: none; }
#users_table_wrapper div.dt-search { width: 100%; }
.card-custom .card-body > div > div:first-child { justify-content: space-between; }
.card-custom .card-body > div > div:first-child > div:last-child { justify-content: end; }
.card-body .dt-container .row:first-child { margin-top: 0 !important; }
#users_table_info { padding-top: 0.25em; padding-bottom: 1em; }
div.dt-container div.dt-search label { font-weight: 600; text-transform: uppercase; color: var(--primary); }
div.dt-container div.dt-search::after { content: '\f002'; opacity: .5; font-family: 'Font Awesome 6 Pro'; font-size: .75rem; line-height: 1.6rem; margin-left: -12px; }
.page-link { font-size: .75rem; text-transform: uppercase; font-weight: 500; line-height: 1.3rem; }
.active .page-link { font-size: .875rem; }
.dt-paging.paging_full_numbers { display: flex; justify-content: end; }
.dt-container > div:last-child { align-items: center; margin-top: 8px; }
div.dt-container div.dt-info { padding-top: 0; }
.page-link { border-width: 0; color: var(--secondary); }
.page-link:hover { color: var(--primary); background-color: transparent; }
.page-link:focus { box-shadow: none; }
.active > .page-link, .page-link.active { background-color: var(--secondary); border-color: var(--secondary); border-radius: 5px; }
.dt-paging-button.page-item.disabled { opacity: .5; }
.form-select { background-position: right 0.25rem bottom 0.5rem; background-size: 16px 10px; padding-right: 24px; }
div.dt-container div.dt-length select { max-width: 60px; margin-left: .5rem; }
table.dataTable thead > tr > th.dt-orderable-asc, table.dataTable thead > tr > th.dt-orderable-desc, table.dataTable thead > tr > th.dt-ordering-asc, table.dataTable thead > tr > th.dt-ordering-desc, table.dataTable thead > tr > td.dt-orderable-asc, table.dataTable thead > tr > td.dt-orderable-desc, table.dataTable thead > tr > td.dt-ordering-asc, table.dataTable thead > tr > td.dt-ordering-desc { padding-right: 10px; min-width: 56px; }
.dt-orderable-none .dt-column-order { display: none; }
.dt-ordering-desc, .dt-ordering-asc { padding-right: 30px !important; }
table.dataTable th.dt-type-numeric { text-align: left; }
tbody tr td img { border-radius: 50px; width: 40px !important; height: 40px !important; border: 1px solid white; }
.column-last_connection { padding-bottom: 14px !important; line-height: 1.2rem; }
table.dataTable thead > tr > th:last-child { text-align: right; padding-right: 16px; }
.column-avatar img:hover { background-color: var(--main-secondary) !important; color: white !important; }
.icon_box { width: 18px; justify-content: center; display: flex; float: left; height: 19px; align-content: center; align-items: center; margin-right: 4px; font-size: .875rem; }
.modal-content { border-radius: 15px; padding: 16px 16px 8px; }
.modal-footer { border-top-width: 0; padding-top: 0; }
.alert-icon { font-size: 16px; width: 20px; color: white; display: flex; height: 20px; align-items: center; justify-content: center; border-radius: 5px; padding: 12px; margin-right: 8px; }
.alert-icon-info { font-size: 24px; width: 20px; display: flex; height: 20px; align-items: center; justify-content: center; border-radius: 5px; padding: 0; margin-right: 8px; }
#sidebar.active #sidebar-items-container { padding-left: .8rem !important; padding-top: 40px !important; overflow: visible !important; }
#sidebar.active { margin-left: 0px; border-radius: 0 75px 0 0; min-width: 50px; }
#sidebar.active .menu-item.my-1 { width: fit-content; min-height: 32px; }
#sidebar.active .custom-menu { margin-right: -12px; }
#sidebar.active ul li.active > a { height: 32px; width: 46px; transition: all 0.2s; min-height: 32px; }
#sidebar.active #homeSubmenu { position: absolute; background-color: var(--main-primary); left: 54px; z-index: 1; top: 0; border-radius: 5px; padding: 7px 11px 8px 15px !important; }
#sidebar.active #homeSubmenu::before { background-color: var(--main-primary); content: ''; width: 10px; height: 10px; position: absolute; top: 13px; transform: rotate(-45deg) !important; left: -5px; }
#sidebar.active #homeSubmenu li { width: max-content; }
#sidebar.active .divider { margin-left: 0; }
#sidebar li.menu-item > a > .menu-text { display: block; width: fit-content; transition: all 1s; float: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#sidebar.active li.menu-item > a > .menu-text { display: block; }
#sidebar li.menu-item > a.dropdown-toggle .menu-text::after { position: absolute; left: 8px; top: 10px; }
#sidebar li.menu-item > a.dropdown-toggle.collapsed .menu-text::after { left: 8px; }
#sidebar.active li.menu-item > a > .menu-text, .active a::after { width: 0px; transition: all 0.1s; }
#sidebar.active .menu-section .flex-grow-0 { display: none; }
#sidebar.active .dropdown-toggle::after { margin-top: -15px; display: none; margin-left: 18px; }
#sidebar.active ul li a i { width: 16px; }
#sidebar.active ul li.active a > i { top: 6px;}
.jconfirm-buttons button { border-width: 1px !important; border-style: solid !important; border-radius: var(--bs-border-radius) !important; font-size: .75rem !important; font-weight: 500 !important; line-height: 1.3rem !important; padding: 8px 16px !important; }
.confirm-success { border-color: var(--success) !important; }
.confirm-danger { border-color: var(--danger) !important; }
.confirm-success:hover { border-color: var(--success-border) !important; }
.confirm-danger:hover { border-color: var(--danger-border) !important; }
.jconfirm-title { text-transform: uppercase; font-weight: 500; color: var(--warning-border); }
.jconfirm-icon-c { border: 5px solid white; border-radius: 50px; padding: 16px; background-color: var(--warning); color: var(--warning-border); position: fixed; left: calc(50% - 40px); top: -36px; font-size: 32px !important; }
.jconfirm-box { box-shadow: 0 0 10px 0 rgb(255, 228, 173) !important; border-radius: 15px !important; padding: 48px 32px 2px !important; text-align: center; }
.jconfirm.jconfirm-white .jconfirm-box .jconfirm-buttons, .jconfirm.jconfirm-light .jconfirm-box .jconfirm-buttons { float: unset; }
.jconfirm-box-container { width: fit-content; max-width: 100vw; }
.refresh-container button i { margin-right: 8px; font-size: 14px; }
.refresh-container button { display: flex; align-items: center; }
.disabled > .page-link, .page-link.disabled { background-color: transparent; }
#user-image { font-size: 120px; width: 200px; height: 200px; border: 1px solid var(--main-secondary); }
.accordion-item { margin: 8px 0 16px 0; border-width: var(--bs-border-width); border-color: var(--bs-border-color-translucent); box-shadow: var(--bs-box-shadow-sm) !important; }
.accordion-button.collapsed { border-radius: 10px; }
.accordion-button:focus { box-shadow: none; }
#languages_table p { margin: 8px 0; display: flex; align-items: flex-start; }
#languages_table p:first-child { border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color); padding-bottom: 8px; }
#languages_table img { width: 14px !important; height: 14px !important; margin-right: 8px; margin-top: 3px; border: none; }
textarea.form-control { border: 1px solid var(--bs-border-color); margin-top: 4px; padding-left: 6px; padding-right: 6px; }
#modal_container .dt-container { font-size: .875rem; }
.tag-label { color: var(--secondary); font-weight: 500; }
table.align-table-top tbody tr td { vertical-align: top!important; }
.cursor-pointer:before { cursor: pointer; }
.recap-applied { display: flex; padding: 0; overflow: auto; width: 100%; list-style: none; margin: 0px; position: relative; }
.recap-element { display: flex; width: fit-content; font-size: 12px; justify-content: space-around; align-items: center; padding: 8px 16px; }
.recap-applied i { float: right; color: red; }
.applied-filter-text { display: block; overflow: auto; width: 100%; text-align: center; margin-top: 0px; font-size: 20px; opacity: 0.3; padding: 0px 5px 0px; }
.accordion-button::after { width: auto; height: auto; content: "\2b"; background-image: none; font-family: 'Font Awesome 6 Pro'; border: 2px solid var(--primary); border-radius: 50px; padding: 5px 8px; color: var(--main-black); }
.accordion-button { text-transform: uppercase; font-weight: 700; color: var(--secondary); }
.accordion-button:not(.collapsed)::after { background-image: none; content: "\f068"; }
.accordion-item:not(:first-of-type) { border-top: 1px solid; border-width: var(--bs-border-width); border-color: var(--bs-border-color-translucent); }

.form-group.input-icon > input.m-input { padding-left: 30px; }
.form-group.input-icon > i { position: absolute; padding-bottom: 20px; bottom: 0px; left: 20px; color: var(--gray); }

#dark_screen { display: none; position: fixed; width: 100%; height: 100%; background: #0000007d; top: 0; left: 0; z-index: 999999; text-align: center; }
#loading_icon { margin-top: 16%; color: white; }
#loading_title { margin-top: 30px; font-size: 25px; color: white; }

/* ======== Media Query ========== */

@media (max-width: 991.98px) {
	#sidebar { margin-left: -250px; }
	#sidebar.active { margin-left: 0; }
	#sidebar .custom-menu { margin-right: -50px !important; top: 10px !important; }
}
@media (prefers-reduced-motion: reduce) {
	#sidebar .custom-menu { -webkit-transition: none; -o-transition: none; transition: none; }
}

@media (max-width: 991.98px) {
	#sidebarCollapse span { display: none; }
	.navbar-brand { width: auto; }
	#sidebarCollapse { position: fixed; left: 6px; top: 56px; }
	nav:not(.active) .fa-angle-left::before { content: "\f0c9"; }
	.active .fa-solid.fa-angle-left { transform: rotate(0deg) !important; padding-right: 0; }
	nav.navbar { box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075); }
}

@media (min-width: 1600px) {
	.modal-xlg { --bs-modal-width: 1240px; }
	.modal-xxl { --bs-modal-width: 1540px; }
}

@media (max-width: 767px) {
	#sidebarCollapse { top: 93px; }
	.notifyjs-corner { right: auto !important; left: 0px !important; max-width: 97vw; }
	.datatable-container { display: block; overflow: auto; }
	.card-custom .card-body > div > div:first-child > div { width: 100%; }
	.card-custom .card-body > div > div:first-child > div:last-child { justify-content: flex-start; margin-bottom: 0.5em; margin-top: 1em; }
	#users_table_info { text-align: left; }
	div.dt-container div.dt-search { align-items: center; }
	div.dt-container div.dt-info { text-align: left; }
	.dt-paging.paging_full_numbers { justify-content: flex-start; width: max-content; }
	.card-custom .card-body > div > div:last-child { overflow: auto; display: block; }
	#button-top-bottom { bottom: 44px; right: 8px; }
	.daterangepicker .drp-selected { margin-bottom: 8px; }
	#sidebar.active #sidebar-items-container { padding-top: 24px !important; }
	div.dt-container div.dt-search input { min-width: 200px; }
	#main-page-container { overflow: auto; }
	.dt-paging-button.page-item { max-width: 65px; display: block; }
}


/* ======== Effects ============= */

@-webkit-keyframes flash {
	0% { opacity: 1; }
	50% { opacity: .1; }
	100% { opacity: 1; }
}

@keyframes flash {
	0% { opacity: 1; }
	50% { opacity: .1; }
	100% { opacity: 1; }
}