/* Clase para estilo de alertas */
.alert-success.new {
	background: none;
	border: none;
	border-left: 4px solid green;
	border-radius: 0;
	background: #fff;
	box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
}

.alert-success.new2 {
	background: #f3f8f3;
	border: none;
	border-left: 4px solid #45D298;
	border-radius: 0;
	box-shadow: 1px 1px 4px rgba(0, 0, 0, .2);
}

.alert-success.new2.p-4 {
	padding: 0.75rem 0.75rem !important;
}

.alert-success.new2 .fa {
	color: #45D298;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	font-size: 40px;
}

.alert-success .alert-body {
	padding-left: 0.75rem;
	display: table-cell;
	color: rgba(0, 0, 0, 0.5);
}

.alert-success .alert-header {
	font-weight: 700;
	color: #45D298;
	padding: 0;
	margin: 0;
}


.toast-area {
	position: fixed;
	right: 0;
	z-index: 5000;
}

.toast-box {
	position: absolute;
	right: 0;
	top: 0;
	min-width: 250px;
}


.toast-box .alert {
	width: fit-content !important;
}


/** NOTIFICACIONES FLOTANTES **/
.alert.totem{
    position: fixed;
	max-width: 100%;
    /* padding-right: 55px;
    width: 300px;
    margin-top: 40px;
    border-radius: 15px;
    background-color: #FFF;
    color: #283896; */
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.75);
    box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.75);
}
/*alert-success*/
/* .alert.totem.alert-success button{
    background-color: #008ECF;
    color:#FFF;
} */

.alert.totem.alert-success hr{
        border-color: #008ECF;
}
/**/
/*alert-warning*/
/* .alert.totem.alert-warning button{
    background-color: #E5A218;
    color:#FFF;
} */

.alert.totem.alert-warning hr{
        border-color: #E5A218;
}
/**/
/*alert-error*/
/* .alert.totem.alert-error button{
    background-color: #FF0000;
    color:#FFF;
} */

.alert.totem.alert-error hr{
    border-color: #FF0000;
}
/**/

.alert.totem .hr-alert {
    margin-top: 0px;
    margin-bottom: 10px;
    border: 0;
    border-top: 4px solid #eee;
}

.alert.totem.pull-right {
    position: fixed;
    right: 5%;
} 

.alert.totem.pull-top {
    position: fixed;
    top: 3%;
}

.alert.totem.pull-bottom {
    position: fixed;
    bottom: 1%;
}

.alert.totem.pull-left {
    position: fixed;
    left: 1%;
}  




/** OTROS **/
.cursor-no-drop {
	cursor: no-drop !important;
}

.pointer-event-none {
	pointer-events: none !important;
}

.noselect {
	-webkit-touch-callout: none;
	/* iOS Safari */
	-webkit-user-select: none;
	/* Safari */
	-khtml-user-select: none;
	/* Konqueror HTML */
	-moz-user-select: none;
	/* Old versions of Firefox */
	-ms-user-select: none;
	/* Internet Explorer/Edge */
	user-select: none;
	/* Non-prefixed version, currently
	supported by Chrome, Edge, Opera and Firefox */
}

.link-muted {
	cursor: pointer !important;
	color: #868e96;
}

.link-muted:hover {
	color: #595959;
}


.m-height-xs {
	max-height: 5rem;
}

.m-height-sm {
	max-height: 10rem;
}

.m-height-lg {
	max-height: 15rem;
}

.m-height-xl {
	max-height: 20rem;
}

.m-height-xlg {
	max-height: 25rem;
}



.status.status-none:before {
	display: none;
}


.fa-slow-spin {
	-webkit-animation: fa-spin 6s infinite linear;
	animation: fa-spin 6s infinite linear;
}

.fa-fast-spin {
	-webkit-animation: fa-spin 0.7s infinite linear;
	animation: fa-spin 0.7s infinite linear;
}


@media (min-width: 576px) {
	.width-sm-85 {
		max-width: 85% !important;
	}

	.width-sm-100 {
		max-width: 100% !important;
	}
}

@media (min-width: 768px) {
	.width-md-85 {
		max-width: 85% !important;
	}

	.width-md-100 {
		max-width: 100% !important;
	}
}

@media (min-width: 992px) {
	.width-lg-85 {
		max-width: 85% !important;
	}

	.width-lg-100 {
		max-width: 100% !important;
	}
}

@media (min-width: 1399px) {
	.width-xl-85 {
		max-width: 85% !important;
	}

	.width-xl-100 {
		max-width: 100% !important;
	}
}


.modal-dialog-right-xxl {
	position: absolute;
	top: 0;
	right: 0;
	min-width: 120%;
	width: 120%;
	height: 100%;
	margin: 0 !important;
	border-width: 0px;
}

.modal-dialog-right-xxl .modal-content {
	min-height: 100%;
	border-width: 0;
	border-radius: 0;
}

.modal.fade .modal-dialog-right-xxl {
	-webkit-transform: translate(25%, 0);
	transform: translate(25%, 0);
}

.card-img-center-crop {
	width: 100%;
	height: 15vw;
	object-position: center center;
	object-fit: cover;
}

.card-img-top-crop {
	width: 100%;
	height: 15vw;
	object-position: center top;
	object-fit: cover;
}

.vertical-center {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;

	-webkit-box-align: center;
	-webkit-align-items: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	align-items: center;

	justify-content: center;
	/*only if you have a small text as ,example I' otherwise for long text you don't need this line*/
}

.nowrap {
	white-space: nowrap;
}

.nowrap-important {
	white-space: nowrap !important;
}

.tooltip-inner-nowrap {
	max-width: none !important;
	white-space: nowrap !important;
}

.text-truncate-none {
	text-overflow: unset !important;
	overflow: visible !important;
	/* text-overflow: clip !important; */
	white-space: nowrap !important;
}

.bg-info-10 {
	background-color: #d9eeff;
	color: rgba(0, 0, 0, 0.8);
}

.bg-info-25:hover {
	color: rgba(0, 0, 0, 0.8);
}

.bg-info-25 {
	background-color: #bde1ff;
	color: rgba(0, 0, 0, 0.8);
}

.bg-info-25:hover {
	color: rgba(0, 0, 0, 0.8);
}



/* .DTFC_LeftHeadWrapper:before,
.DTFC_LeftBodyWrapper:before, */
.DTFC_LeftFootWrapper:before {
	border: none !important;
	background: transparent !important;
}


/* .dataTables_wrapper tr.children td.children {
	padding: 0; }
	.dataTables_wrapper tr.children td.children .dtr-details {
		padding: 1rem 1rem 1.5rem 1.95rem;
		position: relative; }
		.dataTables_wrapper tr.children td.children .dtr-details:before {
			content: "\f149";
			font-family: 'Font Awesome 5 Pro';
			color: red;
			width: 20px;
			height: 30px;
			position: absolute;
			top: -15px;
			right: 0px;
			font-size: 1.2rem; }
		.dataTables_wrapper tr.children td.children .dtr-details:after {
			content: "";
			position: absolute;
			top: 0;
			bottom: 0;
			left: 0;
			width: 1rem;
			background: purple; } */




.opacity-0 {
	opacity: 0 !important;
}

.opacity-1 {
	opacity: 0.2 !important;
}

.opacity-2 {
	opacity: 0.4 !important;
}

.opacity-3 {
	opacity: 0.6 !important;
}

.opacity-4 {
	opacity: .8 !important;
}

/* .opacity-5 {
	opacity:1!important;
} */





.mb-7,
.my-7 {
	margin-bottom: 3rem !important;
}

.mb-8,
.my-8 {
	margin-bottom: 3.5rem !important;
}

.mb-9,
.my-9 {
	margin-bottom: 4rem !important;
}

.mb-10,
.my-10 {
	margin-bottom: 4.5rem !important;
}


.overlay-modal {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	width: 100%;
	transition: .5s ease;
	background-color: #008CBA;
}

.overlay-modal.text {
	color: white;
	font-size: 20px;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-align: center;
}

/* .select2-results__options .select2-results__option[hidden] {
	display: none;
} */



.prevent-text-highlighting {
	-webkit-touch-callout: none;
	/* iOS Safari */
	-webkit-user-select: none;
	/* Safari */
	-khtml-user-select: none;
	/* Konqueror HTML */
	-moz-user-select: none;
	/* Old versions of Firefox */
	-ms-user-select: none;
	/* Internet Explorer/Edge */
	user-select: none;
	/* Non-prefixed version, currently
									supported by Chrome, Edge, Opera and Firefox */
}

/** CHILD DEFAULT **/
table.dataTable>tbody>tr.child ul.dtc-details {
	display: inline-block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

table.dataTable>tbody>tr.child ul.dtc-details>li {
	border-bottom: 1px solid #efefef;
	padding: 0.5em 0;
}

table.dataTable>tbody>tr.child ul.dtc-details>li:first-child {
	padding-top: 0;
}

table.dataTable>tbody>tr.child ul.dtc-details>li:last-child {
	border-bottom: none;
}

table.dataTable>tbody>tr.child ul.dtc-details {
	width: 100%;
}

.dataTables_wrapper tr.child td.child .dtc-details {
	padding: 1rem 1rem 1.5rem 1.95rem;
	position: relative;
}

.dataTables_wrapper tr.child td.child .dtc-details:before {
	content: "\f149";
	font-family: 'Font Awesome 5 Pro';
	color: #8f8f8f;
	width: 20px;
	height: 30px;
	position: absolute;
	top: -15px;
	right: 0px;
	font-size: 1.2rem;
}

.dataTables_wrapper tr.child td.child .dtc-details:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1rem;
	background: #888888;
}

.dataTables_wrapper tr.child td.child .dtc-details:before {
	color: #9b9b9b !important;
}

.dataTables_wrapper tr.child td.child .dtc-details:after {
	background: #dbdbdb !important;
}


/** CHILD WARNING **/
table.dataTable>tbody>tr.child ul.dtr-note-warning {
	/* background-color: red !important; */
	display: inline-block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

table.dataTable>tbody>tr.child ul.dtr-note-warning>li {
	border-bottom: 1px solid #db9b10 !important;
	padding: 0.5em 0;
}

table.dataTable>tbody>tr.child ul.dtr-note-warning>li.border-0 {
	border-bottom: none !important;
}

table.dataTable>tbody>tr.child ul.dtr-note-warning>li:first-child {
	padding-top: 0;
}

table.dataTable>tbody>tr.child ul.dtr-note-warning>li:last-child {
	border-bottom: none;
}

table.dataTable>tbody>tr.child ul.dtr-note-warning {
	width: 100%;
}

.dataTables_wrapper tr.child td.child .dtr-note-warning {
	padding: 1rem 1rem 1.5rem 1.95rem;
	position: relative;
}

.dataTables_wrapper tr.child td.child .dtr-note-warning:before {
	content: "\f149";
	font-family: 'Font Awesome 5 Pro';
	color: #c78905 !important;
	width: 20px;
	height: 30px;
	position: absolute;
	top: -15px;
	right: 0px;
	font-size: 1.2rem;
}

.dataTables_wrapper tr.child td.child .dtr-note-warning:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1rem;
	background: #db9b10 !important;
}

.dataTables_wrapper tr.child td.child .dtr-note-warning:before {
	color: #c78905 !important;
}

.dataTables_wrapper tr.child td.child .dtr-note-warning:after {
	background: #c78905 !important;
}


/** CHILD NONE **/
table.dataTable>tbody>tr.child ul.dtr-none {
	/* background-color: red !important; */
	display: inline-block;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

table.dataTable>tbody>tr.child ul.dtr-none>li {
	/* border-bottom: 1px solid #db9b10 !important; */
	padding: 0.5em 0;
}

table.dataTable>tbody>tr.child ul.dtr-none>li.border-0 {
	border-bottom: none !important;
}

table.dataTable>tbody>tr.child ul.dtr-none>li:first-child {
	padding-top: 0;
}

table.dataTable>tbody>tr.child ul.dtr-none>li:last-child {
	border-bottom: none;
}

table.dataTable>tbody>tr.child ul.dtr-none {
	width: 100%;
}

.dataTables_wrapper tr.child td.child .dtr-none {
	padding: 1rem 1rem 1.5rem 1.95rem;
	position: relative;
}

.dataTables_wrapper tr.child td.child .dtr-none:before {
	content: "\f149";
	font-family: 'Font Awesome 5 Pro';
	color: #4c4c57 !important;
	width: 20px;
	height: 30px;
	position: absolute;
	top: -15px;
	right: 0px;
	font-size: 1.2rem;
}

.dataTables_wrapper tr.child td.child .dtr-none:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1rem;
	/* background: #db9b10 !important; */
}

.dataTables_wrapper tr.child td.child .dtr-none:before {
	color: transparent !important;
}

.dataTables_wrapper tr.child td.child .dtr-none:after {
	background: transparent !important;
}



/** MEGAMENU **/
.mega-dropdown {
	position: static !important;
	width: 100%;
}

.mega-dropdown-menu {
	padding: 20px 0px;
	width: 100%;
	box-shadow: none;
	-webkit-box-shadow: none;
}

.mega-dropdown-menu:before {
	content: "";
	border-bottom: 15px solid #fff;
	border-right: 17px solid transparent;
	border-left: 17px solid transparent;
	position: absolute;
	top: -15px;
	left: 285px;
	z-index: 10;
}

.mega-dropdown-menu:after {
	content: "";
	border-bottom: 17px solid #ccc;
	border-right: 19px solid transparent;
	border-left: 19px solid transparent;
	position: absolute;
	top: -17px;
	left: 283px;
	z-index: 8;
}

.mega-dropdown-menu>li>ul {
	padding: 0;
	margin: 0;
}

.mega-dropdown-menu>li>ul>li {
	list-style: none;
}

.mega-dropdown-menu>li>ul>li>a {
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: normal;
	line-height: 1.428571429;
	color: #999;
	white-space: normal;
}

.mega-dropdown-menu>li ul>li>a:hover,
.mega-dropdown-menu>li ul>li>a:focus {
	text-decoration: none;
	color: #444;
	background-color: #f5f5f5;
}

.mega-dropdown-menu .dropdown-header {
	color: #428bca;
	font-size: 18px;
	font-weight: bold;
}

.mega-dropdown-menu form {
	margin: 3px 20px;
}

.mega-dropdown-menu .form-group {
	margin-bottom: 3px;
}

/* BREADCRUMB DROPDOWN */
.breadcrumb-dropdown-small {
	font-size: 10px;
}

.breadcrumb-drop-container:hover .breadcrumb-drop {
	display: block;
}

.breadcrumb-drop-container .breadcrumb-drop {
	display: none;
	position: absolute;
	top: 20px;
	left: 8px;
}

.breadcrumb-drop-container .breadcrumb-drop a {
	display: block;
	padding: 8px 16px;
}




.select2-results__option--highlighted>div>div>.text-muted {
	color: white !important;
}

.megamenu {
	position: static !important;
}

.megamenu .dropdown-menu {
	background: none !important;
	border: none !important;
	width: 100% !important;
}

.text-shadow-none {
	text-shadow: none !important;
}




.tags li {
	display: inline-block;
	margin-right: 5px
}

.tags li:last-child {
	margin-right: 0
}


.remove-dropdown-arrow::after {
    content: none !important;
}



.custom-control-input.custom-control-success:checked ~ .custom-control-label::before {
    color: #fff;
    border-color: #21dfcb!important;
    background-color: #1dc9b7!important; }

.custom-control-input.custom-control-danger:checked ~ .custom-control-label::before {
	color: #fff;
	border-color: #ca3b7e!important;
	background-color: #fd3995!important; }


.bg-danger-25 {
	background-color: #f8dcea;
	color: rgba(0, 0, 0, 0.8); }
	.bg-danger-25:hover {
		color: rgba(0, 0, 0, 0.8); }





.dropzone {
	width: 98%;
	margin: 1%;
	border: 2px dashed #3498db !important;
	border-radius: 5px;
	transition: 0.2s;
}

.dropzone.dz-drag-hover {
	border: 2px solid #3498db !important;
}

.dz-message.needsclick img {
	width: 50px;
	display: block;
	margin: auto;
	opacity: 0.6;
	margin-bottom: 15px;
}

span.plus {
	display: none;
}

.dropzone.dz-started .dz-message {
	display: inline-block !important;
	width: 120px;
	float: right;
	border: 1px solid rgba(238, 238, 238, 0.36);
	border-radius: 30px;
	height: 120px;
	margin: 16px;
	transition: 0.2s;
}
.dropzone.dz-started .dz-message span.text {
	display: none;
}
.dropzone.dz-started .dz-message span.plus {
	display: block;
	font-size: 70px;
	color: #AAA;
	line-height: 110px;
}


/* BOTONES */
.btn:focus {
	outline: none !important;
	box-shadow: none !important;
}




.w-i-100 {
	min-width: 200rem !important;
	width: 200rem !important;
}


/* SEPARADOR */ 
.separator {
	border: 0 !important;
	max-width: 100% !important;
	background-position: 50% !important;
	box-sizing: border-box !important;
}
  
.flair {
	width: 65% !important;
	height: 2px !important;
	border-style: solid !important;
	border-color: hsla(0, 0%, 75%, 0.9) !important;
	border-width: 1px 0 0 0 !important;
}


.prevent-select {
	-webkit-user-select: none !important; /* Safari */
	-ms-user-select: none !important; /* IE 10 and IE 11 */
	user-select: none !important; /* Standard syntax */
}



/* CONVERTED DOCUMENTS OVERLAY */
.overlay-convert {  
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	z-index: 200;
	opacity: 0;
	background: rgba(39, 42, 43, 0.8);
	margin: -15px 0 0 -15px;
}
  


/* Disable Select text from page */
.disable-select-content{
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

[contenteditable] {
	outline: 0px solid transparent;
}

/* [contentEditable].service-description:empty:not(:focus):before */
[contentEditable].service-description:empty:before {
	content: attr(data-placeholder)
}

/* Contemplar */
.section-divider {								/* minor cosmetics */
	display: table; 
	font-size: 24px; 
	text-align: center; 
	width: 75%; 						/* divider width */
	margin: 40px auto;					/* spacing above/below */
}
.section-divider span { display: table-cell; position: relative; }
.section-divider span:first-child, .section-divider span:last-child {
	width: 50%;
	top: 18px;							/* adjust vertical align */
	-moz-background-size: 100% 2px; 	/* line width */
	background-size: 100% 2px; 			/* line width */
	background-position: 0 0, 0 100%;
	background-repeat: no-repeat;
}
.section-divider span:first-child {				/* color changes in here */
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(transparent), to(#c2c2c2));
	background-image: -webkit-linear-gradient(180deg, transparent, #c2c2c2);
	background-image: -moz-linear-gradient(180deg, transparent, #c2c2c2);
	background-image: -o-linear-gradient(180deg, transparent, #c2c2c2);
	background-image: linear-gradient(90deg, transparent, #c2c2c2);
}
.section-divider span:nth-child(2) {
	color: #c2c2c2; padding: 0px 5px; width: auto; white-space: nowrap;
}
.section-divider span:last-child {				/* color changes in here */
	background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#c2c2c2), to(transparent));
	background-image: -webkit-linear-gradient(180deg, #c2c2c2, transparent);
	background-image: -moz-linear-gradient(180deg, #c2c2c2, transparent);
	background-image: -o-linear-gradient(180deg, #c2c2c2, transparent);
	background-image: linear-gradient(90deg, #c2c2c2, transparent);
}


/* FUERZA DE CONTRASEÑA */
.password-strength-group .password-strength-meter {
  width: 100%;
  transition: height 0.3s;
  display: flex;
  justify-content: stretch;
}
.password-strength-group .password-strength-meter .meter-block {
  height: 4px;
  background: #ccc;
  margin-right: 6px;
  flex-grow: 1;
}
.password-strength-group .password-strength-meter .meter-block:last-child {
  margin: 0;
}
.password-strength-group .password-strength-message {
  font-weight: 20px;
  height: 1em;
  text-align: right;
  transition: all 0.5s;
  margin-top: 3px;
  position: relative;
}
.password-strength-group .password-strength-message .message-item {
  font-size: 12px;
  position: absolute;
  right: 0;
  opacity: 0;
  transition: opacity 0.2s;
}
.password-strength-group[data-strength="1"] .meter-block:nth-child(-n+1) {
  background: #cc3d04;
}
.password-strength-group[data-strength="1"] .message-item:nth-child(1) {
  opacity: 1;
}
.password-strength-group[data-strength="2"] .meter-block:nth-child(-n+2) {
  background: #ffc43b;
}
.password-strength-group[data-strength="2"] .message-item:nth-child(2) {
  opacity: 1;
}
.password-strength-group[data-strength="3"] .meter-block:nth-child(-n+3) {
  background: #9ea60a;
}
.password-strength-group[data-strength="3"] .message-item:nth-child(3) {
  opacity: 1;
}
.password-strength-group[data-strength="4"] .meter-block:nth-child(-n+4) {
  background: #289116;
}
.password-strength-group[data-strength="4"] .message-item:nth-child(4) {
  opacity: 1;
}


/* AUTO COMPLETADO */
.tt-input{
	padding-right: 1.25rem;
}

.typeahead {
    z-index: 1051;
}


/*If using icon span before input, like <i class="fa fa-asterisk prefix"></i>*/
span.twitter-typeahead {
	/* width: calc(100% - 4rem) !important; */
    max-width: 70% !important;
	width: 70% !important;
    /* margin-left: 3rem; */
}


/* Aspect of the dropdown of results*/
.typeahead.dropdown-menu,
span.twitter-typeahead .tt-menu {
    min-width: 100%;
	background: white;
    /*as large as input*/
    border: none;
    box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .16), 0 2px 10px 0 rgba(0, 0, 0, .12);
    border-radius: 0;
    /* font-size: 1.2rem; */
}


/*Aspect of results, done*/

span.twitter-typeahead .tt-suggestion {
    color: var(--theme-info-900) !important;
    cursor: pointer;
    /* padding: 1rem; */
    text-transform: capitalize;
    font-weight: 400;
}


/*Hover a result, done*/

span.twitter-typeahead .active.tt-suggestion,
span.twitter-typeahead .tt-suggestion.tt-cursor,
span.twitter-typeahead .active.tt-suggestion:focus,
span.twitter-typeahead .tt-suggestion.tt-cursor:focus,
span.twitter-typeahead .active.tt-suggestion:hover,
span.twitter-typeahead .tt-suggestion.tt-cursor:hover {
    background-color: var(--theme-info-200) !important;
    color: #fff !important;
}

label.active {
    color: var(--theme-info-50) !important;
}


/* TD none-focus */
td.none-focus {
	background-color: transparent !important;
	-webkit-box-shadow: none !important;
	-moz-box-shadow: none !important;
	box-shadow: none !important;
}

/* MODAL MATERIAL */
@media (min-width:992px) {
    .modal .modal-side {
        position: absolute;
        right: 10px;
        bottom: 10px;
        margin: 0;
        width: 400px
    }
}
@media (min-width:768px) {
    .modal .modal-dialog.modal-top {
        top: 0
    }

    .modal .modal-dialog.modal-left {
        left: 0
    }

    .modal .modal-dialog.modal-right {
        right: 0
    }

    .modal .modal-dialog.modal-bottom {
        bottom: 0
    }

    .modal .modal-dialog.modal-top-left {
        top: 10px;
        left: 10px
    }

    .modal .modal-dialog.modal-top-right {
        top: 10px;
        right: 10px
    }

    .modal .modal-dialog.modal-bottom-left {
        left: 10px;
        bottom: 10px
    }

    .modal .modal-dialog.modal-bottom-right {
        right: 10px;
        bottom: 10px
    }
}


.absolute-top-left {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3980; /* Ensure it appears above other elements */
	width: 100%; /* Adjust width as needed */
	max-width: 300px; /* Optional: Limit the max width */
	padding: 15px; /* Add padding */
	background-color: var(--theme-light); /* Bootstrap primary color with transparency */
	/* color: #fff; /* White text for contrast */
}

.absolute-top-center {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%); /* Center horizontally */
	z-index: 3980; /* Ensure it appears above other elements */
	width: 100%; /* Full width */
	max-width: 300px; /* Optional: Limit the max width */
	padding: 15px;
	text-align: center; /* Center text/content inside */
	background-color: var(--theme-light); /* Bootstrap primary color with transparency */
}

.check-container {
	padding: 20px;
	border: 2px solid #ccc;
	background: #f9f9f9;
	border-radius: 10px;
}
.negative-balance {
	color: red;
	font-weight: bold;
}
.check-background {
	background: repeating-linear-gradient(
		45deg,
		#e6ffe6,
		#e6ffe6 10px,
		#ccffcc 10px,
		#ccffcc 20px
	);
	padding: 15px;
	border-radius: 5px;
}

/* FILL SPACE IN LETTERS */
.fill-space-check {
	flex-grow: 1;
	overflow: hidden;
	white-space: nowrap;
}
.fill-space-check::before {
	content: "*****************************************************************************************************************************************************************************************************************************************************";
	display: inline-block;
	width: 100%;
}


/* MIN HEIGHT */
.min-h-10 { min-height: 10px !important; }
.min-h-20 { min-height: 20px !important; }
.min-h-30 { min-height: 30px !important; }
.min-h-40 { min-height: 40px !important; }
.min-h-50 { min-height: 50px !important; }
.min-h-60 { min-height: 60px !important; }
.min-h-70 { min-height: 70px !important; }
.min-h-80 { min-height: 80px !important; }
.min-h-90 { min-height: 90px !important; }
.min-h-100 { min-height: 100px !important; }
.min-h-110 { min-height: 110px !important; }
.min-h-120 { min-height: 120px !important; }
.min-h-130 { min-height: 130px !important; }
.min-h-140 { min-height: 140px !important; }
.min-h-150 { min-height: 150px !important; }
.min-h-160 { min-height: 160px !important; }
.min-h-170 { min-height: 170px !important; }
.min-h-180 { min-height: 180px !important; }
.min-h-190 { min-height: 190px !important; }
.min-h-200 { min-height: 200px !important; }
.min-h-210 { min-height: 210px !important; }
.min-h-220 { min-height: 220px !important; }
.min-h-230 { min-height: 230px !important; }
.min-h-240 { min-height: 240px !important; }
.min-h-250 { min-height: 250px !important; }
.min-h-260 { min-height: 260px !important; }
.min-h-270 { min-height: 270px !important; }
.min-h-280 { min-height: 280px !important; }
.min-h-290 { min-height: 290px !important; }
.min-h-300 { min-height: 300px !important; }
.min-h-310 { min-height: 310px !important; }
.min-h-320 { min-height: 320px !important; }
.min-h-330 { min-height: 330px !important; }
.min-h-340 { min-height: 340px !important; }
.min-h-350 { min-height: 350px !important; }
.min-h-360 { min-height: 360px !important; }
.min-h-370 { min-height: 370px !important; }
.min-h-380 { min-height: 380px !important; }
.min-h-390 { min-height: 390px !important; }
.min-h-400 { min-height: 400px !important; }

/* FLUID TABS */
.nav-tabs.nav-fluid {
	display: flex;
	flex-wrap: wrap;
}
.nav-item.nav-item-fluid {
	flex: 1;
	text-align: center;
	white-space:nowrap;
}


/* CUSTOM COMBOBOX WITH TABLE */
.combo-container {
	width: 250px; /* Input width */
	/* margin: 50px auto; */
	position: relative;
}

.combo-container .dropdown-menu.custom-wide {
	width: 600px !important; /* Dropdown width */
	max-height: 300px;
	overflow-y: auto;
	padding: 0;
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 1000;
}

.table-combo-header, .combo-container .dropdown-item {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1.5fr 1.5fr 0.7fr;
	padding: 8px 10px;
	align-items: center;
	font-size: 0.9rem;
}

.table-combo-header {
	background-color: #f8f9fa;
	font-weight: bold;
	border-bottom: 1px solid #dee2e6;
}

.combo-container .dropdown-item:hover {
	background-color: #f1f1f1;
	cursor: pointer;
}

.combo-container .form-control-clear {
	cursor: pointer;
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	font-size: 1.3rem;
	color: #aaa;
}

/* ANIMATION LOGOS XPRESSPAGO */
.data-transfer-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding-bottom: 20px;
}

.data-transfer-container>.logo {
  width: 40px;
  height: 40px;
  object-fit: contain;
}

.data-transfer-container>.transfer-animation {
  position: relative;
  width: 120px;
  height: 20px;
}

.data-transfer-container>.transfer-animation>.data-packet {
  position: absolute;
  width: 12px;
  height: 12px;
  background-color: #f33b3b;
  border-radius: 50%;
  opacity: 0;
}

/* Animation for the data packets */
.data-transfer-container>.transfer-animation>.data-packet:nth-child(1) {
  animation: transfer 2s infinite;
}
.data-transfer-container>.transfer-animation>.data-packet:nth-child(2) {
  animation: transfer 2s infinite 0.4s;
}
.data-transfer-container>.transfer-animation>.data-packet:nth-child(3) {
  animation: transfer 2s infinite 0.8s;
}

@keyframes transfer {
  0% {
    left: 0;
    opacity: 0;
    transform: scale(0.5);
  }
  20% {
    opacity: 1;
    transform: scale(1);
  }
  80% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    left: 100%;
    opacity: 0;
    transform: scale(0.5);
  }
}

/* Optional pulsing effect on logos */
.sender {
  animation: pulse-send 1s infinite;
}

.receiver {
  animation: pulse-receive 1s infinite 0.5s;
}

@keyframes pulse-send {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 rgba(74, 144, 226, 0));
  }
  50% {
    transform: scale(1.05);
    filter: drop-shadow(0 0 8px rgba(189, 18, 18, 0.7));
  }
}

@keyframes pulse-receive {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 rgba(15, 197, 100, 0));
  }
  50% {
    transform: scale(1.05);
    filter: drop-shadow(0 0 8px rgba(173, 15, 15, 0.7));
  }
}


textarea.textarea-service {
	min-height: 22px;
	padding: 0;
	overflow: hidden;
	resize: none; /* optional: prevent manual resizing */
}


.arrow-btn {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(0,0,0,0.5);
	color: white;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	cursor: pointer;
	transition: all 0.3s;
}
.arrow-btn:hover {
	background: rgba(0,0,0,0.8);
	transform: scale(1.1);
}

/* Blink Effect */ 
.blink-effect-slow {
  	animation: blink 2s linear infinite;
}
.blink-effect-medium {
  	animation: blink 1s linear infinite;
}
.blink-effect-fast {
  	animation: blink 0.5s linear infinite;
}

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


.text-untruncate {
	overflow: hidden !important;         /* allow content to expand */
	text-overflow: clip !important;       /* no ellipsis */
	white-space: nowrap !important;       /* wrap text normally */
}

/* custom utility for fixed input widths */
.input-w-150 { width: 150px !important; }
.input-w-200 { width: 200px !important; }
.input-w-250 { width: 250px !important; }
.input-w-300 { width: 300px !important; }


.scroll-table {
	height: 180px !important;       /* altura del área scrollable del cuerpo */
	overflow-y: auto !important;    /* scroll vertical */
	overflow-x: hidden !important;
}