@charset "utf-8";
/* CSS Document */
html, body {
	min-height: 100vh;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
    /*overflow-x: hidden;*/
}

.modal-backdrop.show {
    opacity: 0.8;
}

.offcanvas-top {
    height: auto;
    bottom: unset;
}

.offcanvas-top .btn-close{
    width: unset;
    height: unset;
    background: transparent;
    padding: unset;
    margin: unset;
    opacity: 1;
}

.modal-open .modal {
    background-color: rgba(0,0,0,0.8);
}
.modal-backdrop.show {
    opacity: 0;
}

#main_c {
	max-width: 100vw;
	overflow-x: hidden;
}

.note-editor.note-frame {
	width: 100%;
}

.form-switch.swt-md .form-check-input {
    width: 3em;
    height: 1.5em;
}

.form-switch.swt-lg .form-check-input {
    width: 4em;
    height: 2em;
}

.form-check-input.chk-secondary:not(.is-valid):not(.is-invalid):checked {
    border-color: #9CA2AA;
    background-color: #9CA2AA;
}
.form-check-input.chk-success:not(.is-valid):not(.is-invalid):checked {
    border-color: #00B74A;
    background-color: #00B74A;
}
.form-check-input.chk-danger:not(.is-valid):not(.is-invalid):checked {
    border-color: #F93154;
    background-color: #F93154;
}
.form-check-input.chk-warning:not(.is-valid):not(.is-invalid):checked {
    border-color: #FFA900;
    background-color: #FFA900;
}
.form-check-input.chk-info:not(.is-valid):not(.is-invalid):checked {
    border-color: #0dcaf0;
    background-color: #0dcaf0;
}

.input-group .sp-original-input-container.sp-colorize-container {
    flex: 1 1 auto;
    border-radius: 0.5rem;
}
.input-group input.spectrum.sp-colorize {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.file-input.theme-fas {
    flex: 1 1 auto;
}
.file-input.theme-fas .file-drop-zone{
    min-height: unset;
}
.file-input.theme-fas .file-drop-zone .file-drop-zone-title {
    font-size: 0.9em;
}
.file-input.theme-fas .file-drop-zone .file-preview-thumbnails {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.kv-preview-thumb[data-template="image"] .kv-file-content {
	background-color: #e9ecef;
}

.input-group .bootstrap-duallistbox-container {
    flex: 1 1 auto;
}
.input-group .bootstrap-duallistbox-container select {
    border-radius: 0.5rem;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-color: #ced4da;
}

.recap > div {
    height: 64px !important;
}

.recerror .parsley-errors-list.filled {
    display: inline-block;
}

.recap > div > div {
	-webkit-transform: scale(0.77);
	-ms-transform: scale(0.77);
	-moz-transform: scale(0.77);
	transform: scale(0.77);
	-webkit-transform-origin: top;
	-ms-transform-origin: top;
	-moz-transform-origin: top;
	transform-origin: top;
    backface-visibility: hidden;
    -webkit-font-smoothing: subpixel-antialiased;
}

#loader {
	overflow: hidden;
	display: flex;
	top: 0px;
	left: 0px;
	background-color: rgba(0,0,0,0.6);
	z-index: 99999;
}

#loader .drop_anime {	
	background-image: url("../images/drop.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0% 2px;	
	opacity: 0.6;
}

#loader .drop_anime.on {	
	-webkit-animation-duration: 1.2s;
	-ms-animation-duration: 1.2s;
	-moz-animation-duration: 1.2s;
	animation-duration: 1.2s;	
	-webkit-animation-iteration-count: 1;
	-ms-animation-iteration-count: 1;
	-moz-animation-iteration-count: 1;
	animation-iteration-count: 1;
	-webkit-animation-timing-function: steps(20);
	-ms-animation-timing-function: steps(20);
	-moz-animation-timing-function: steps(20);
	animation-timing-function: steps(20);
	-webkit-animation-name: drop;
	-ms-animation-name: drop;
	-moz-animation-name: drop;
    animation-name: drop;
}
#loader .drop_anime.on.inf {
    -webkit-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-iteration-count: infinite;    

}
@-webkit-keyframes drop {
   100% { background-position: 100% 2px; }
}
@-ms-keyframes drop {
   100% { background-position: 100% 2px; }
}
@-moz-keyframes drop {
   100% { background-position: 100% 2px; }
}
@keyframes drop {
   100% { background-position: 100% 2px; }
}

.anirota {
	-webkit-animation-duration: 20s;
	-ms-animation-duration: 20s;
	-moz-animation-duration: 20s;
	animation-duration: 20s;
	-webkit-animation-timing-function: linear;
	-ms-animation-timing-function: linear;
	-moz-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	-ms-animation-iteration-count: infinite;
	-moz-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	-webkit-animation-name: anirota;
	-ms-animation-name: anirota;
	-moz-animation-name: anirota;
    animation-name: anirota;
}
.anirota.reverse {
	-webkit-animation-direction: reverse;
	-ms-animation-direction: reverse;
	-moz-animation-direction: reverse;
	animation-direction: reverse;
}
.anirota.flip img {
	-moz-transform: scaleX(-1);
	-o-transform: scaleX(-1);
	-webkit-transform: scaleX(-1);
	transform: scaleX(-1);
	filter: FlipH;
	-ms-filter: "FlipH";
}
@-webkit-keyframes anirota {
   from {
	   -webkit-transform: rotate(0deg);
	   -ms-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	   transform: rotate(0deg);
	} to {
		-webkit-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@-ms-keyframes anirota {
   from {
	   -webkit-transform: rotate(0deg);
	   -ms-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	   transform: rotate(0deg);
	} to {
		-webkit-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@-moz-keyframes anirota {
   from {
	   -webkit-transform: rotate(0deg);
	   -ms-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	   transform: rotate(0deg);
	} to {
		-webkit-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes anirota {
   from {
	   -webkit-transform: rotate(0deg);
	   -ms-transform: rotate(0deg);
	   -moz-transform: rotate(0deg);
	   transform: rotate(0deg);
	} to {
		-webkit-transform: rotate(360deg);
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
#paralal .rama {
	top: 0px;
	left: 0px;
	background-image: url("../images/rama.svg");
	background-repeat: no-repeat;
	background-position: right center;
	background-size: contain;
}

#barra_nav {
    z-index: 1030;
}

#left_bar .second_menu {
    width: 240px;
}

#left_bar .second_menu.men_hide {
    left: -280px;
}

#left_bar .second_menu.men_show {
    left: 0px;
}

#left_bar .main_menu.mmen_hide {
    right: 100%;
}

#left_bar .main_menu.mmen_show {
    right: auto;
}

#left_bar .items_menu > a.active {
	color: #fff !important;
}
#left_bar .items_menu > a.active .fa-stack-1x, #left_bar .items_menu > a.active small.fw-bold > span {
	color: #6c757d !important;
}


.log-in {
    display: none;
}

.dropdown-toggle.dropdown-noarrow::after {
    content: none;
}

.text-responsive {
	font-size: 80%;
	display: block;
}

.clock_hide {
    display: none;
}

.clock_show .clock_hide {
    display: block;
}

.gray-100 {
    background-color: #f8f9fa;
}
.gray-200 {
    background-color: #e9ecef;
}
.gray-300 {
    background-color: #dee2e6;
}
.gray-400 {
    background-color: #ced4da;
}
.gray-500 {
    background-color: #adb5bd;
}
.gray-600 {
    background-color: #6c757d;
}
.gray-700 {
    background-color: #495057;
}
.gray-800 {
    background-color: #343a40;
}
.gray-900 {
    background-color: #212529;
}

.form-group > .flatpickr-wrapper {
    width: 100%;
}

.fixed-size {
	width: 100% !important;
	height: auto !important;
}

table.data-table {
    font-size: 0.7rem;
    border-collapse: collapse !important;
}
table.data-table thead th {
    vertical-align: middle;
}
table.data-table > :not(:last-child) > :last-child > * {
    border-bottom-color: inherit;
}

table.dataTable.table-sm .sorting:before, table.dataTable.table-sm .sorting_asc:before, table.dataTable.table-sm .sorting_desc:before {    
    right: .75em;
    font-size: 0.8rem;
    top: 50%;
    bottom: 0px;
    margin-top: -8px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f309";
}
table.dataTable.table-sm .sorting:after, table.dataTable.table-sm .sorting_asc:after, table.dataTable.table-sm .sorting_desc:after {
    right: .3em;
    font-size: 0.8rem;
    top: 50%;
    bottom: 0px;
    margin-top: -8px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f30c";
}
div.dataTables_wrapper div.dataTables_filter label, div.dataTables_wrapper div.dataTables_length label {
    width: 100%;    
}
div.dataTables_wrapper .butonera, div.dataTables_wrapper .butonera > .btn-group {
    width: 100%;
}
div.dataTables_wrapper div.dataTables_info {
    padding-top: 0px;
}
table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before, table.dataTable.dtr-inline.collapsed>tbody>tr>th.dtr-control:before {
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    font-size: 1rem;
    top: 50% !important;
    margin-top: -8px;    
    left: 6px;
    height: auto;
    width: auto;
    display: block;
    position: absolute;   
    border: none;
    border-radius: unset;
    box-shadow: none;
    box-sizing: content-box;
    text-align: center;
    text-indent: 0 !important;    
    line-height: 1rem;    
    background-color: transparent;
    content: '\f055';
    color: #868e96;
}
table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before, table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before {    
    content: '\f056';
    background-color: transparent;
}
div.dataTables_wrapper div.dataTables_length {
    text-align: left;
}
div.dataTables_wrapper div.dataTables_filter {
    text-align: right;
}
div.dataTables_wrapper .data_fi {
    max-width: 60%;
}
div.dataTables_wrapper .data_le {
    max-width: 40%;
}
table.dataTable>:not(:first-child) {
    border-top: 1px solid currentColor;
}

.input-group {
   flex-wrap: nowrap; 
}

.dropdown-menu {
    padding: 0px;
    overflow: hidden;
}
.dropdown-item {
   border-top: solid 1px transparent; 
}
.dropdown-item.active, .dropdown-item:active {    
    border-top: solid 1px rgba(0, 0, 0, 0.05);
}

.fa, .fas {
	vertical-align: middle;
}

#mod-360 .men360 {
	margin-right: -25%;
}

#mod-360 .men360.open {
	margin-right: 0px;
}

#mod-360 .men360 .men360_cont a.active {
	color: #fff !important;
}


@media (min-width: 576px) {
    div.dataTables_wrapper div.dataTables_filter label, div.dataTables_wrapper div.dataTables_length label {
        width: auto;    
    }
    div.dataTables_wrapper .butonera, div.dataTables_wrapper .butonera > .btn-group {
        width: auto;
    }
    div.dataTables_wrapper .data_fi {
        max-width: unset;
    }
    div.dataTables_wrapper .data_le {
        max-width: unset;
    }  
}
@media (min-width: 768px) {
    .text-responsive {
		font-size: 90%;
	}
    #left_bar .second_menu {
        width: 260px;
    }
    #left_bar .second_menu.men_hide {
        left: -300px;
    }
	.responsive_ratio {
		--bs-aspect-ratio: calc(9 / 21 * 100%);
	}
}
@media (min-width: 992px) {
    .text-responsive {
		font-size: 100%;
	}
    #left_bar .second_menu {
        width: 280px;
    }
    #left_bar .second_menu.men_hide {
        left: -320px;
    }
}
@media (min-width: 1200px) {
  
}
@media (min-width: 1400px) {
  
}

@supports(padding: max(0px)) {
    .fitCont {
        padding-left: max(0px, env(safe-area-inset-left)) !important;
        padding-right: max(0px, env(safe-area-inset-right)) !important;
    }
    .fitCont-left {
        padding-left: max(0px, env(safe-area-inset-left)) !important;        
    }
    .fitCont-right {        
        padding-right: max(0px, env(safe-area-inset-right)) !important;
    }
}

