/* Ajustes en Bootstrap */

.btn {
	white-space: nowrap;
}
.input-group {
	flex-wrap: nowrap;
}
.tooltip-inner {
	max-width: min(90vw, 500px);
	padding: .25rem;
	text-align: left;
}
.tooltip.show {
	opacity: 1;
}
td>span.input-group-text {
	min-height: 38px;
}
textarea.form-control {
	min-height: 38px;
}
.custom-file-label::after {
	display: none!important;
}
.modal-xxl {
	max-width: calc(100% - 2rem);
	max-height: calc(100% - 2rem);
	margin: 1rem;
}
.modal-xxl .modal-content {
	max-width: calc(100vw - 2rem);
	max-height: calc(100vh - 2rem);
}
.dropdown-item:hover {
	background-color: #343a40;
	color: #FFF;
}
.checkbox-lg .custom-control-label::before, .checkbox-lg .custom-control-label::after {
	width: 1.8rem;
	height: 1.8rem;
}
.checkbox-lg .custom-control-label {
	padding-left: 0.45rem;
}
.custom-switch.custom-switch-md {
    padding-left: 0;
}
.custom-switch.custom-switch-md .custom-control-label {
    width: 2.75rem;
    padding-bottom: 1.5rem;
}
.custom-switch.custom-switch-md .custom-control-label::before {
    height: 1.5rem;
    width: 2.75rem;
    border-radius: 3rem;
    padding: 0;
    top: 0;
    left: 0;
}
.custom-switch.custom-switch-md .custom-control-label::after {
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 1.25rem;
    top: 0.125rem;
    left: 0.125rem;
}
.custom-switch.custom-switch-md .custom-control-input:checked~.custom-control-label::after {
    transform: translateX(1.25rem);
}
.text-yellow {
	color: #ffe614!important;
}
.text-orange {
	color: #ffa546!important;
}
.text-celeste {
	color: #69ffff!important;
}
.text-azul {
	color: #32beff!important;
}
.table-responsive {
	max-height: 80vh;
}
.table-responsive thead th {
	position: sticky;
	top: 1px;
	background-clip: padding-box;
	background-color: #FFF;
	color: #212529;
	box-shadow: 1px 1px #dee2e6, -1px -1px #dee2e6;
	z-index: 10;
}
.table thead th {
	vertical-align: middle!important;
	border-bottom-width: 1px!important;
}
.btn-outline-dark {
	color: inherit;
}
.btn-icon-big {
	font-size: 1.5rem;
	padding: 0 0.25rem 0 0.25rem;
	min-width: 38px;
}

/* Ajustes en plugins */
input.dtpckr {
	min-width: 110px;
}
.datepicker-dropdown {
	z-index: 2000;
}
.slctpckr-border {
	border: 1px solid #ced4da;
}
.bootstrap-select.slctpckr-100 {
	max-width: 90vw !important;
}
.bootstrap-select .dropdown-menu div[role="listbox"] {
	overflow-x: hidden !important;
}
.bootstrap-select .dropdown-menu li.dropdown-header {
	background-color: #e9ecef;
	border-radius: 0.5rem;
	margin: 0 0.5rem;
	padding: 0.5rem 1rem;
}
.bootstrap-select .dropdown-menu li.dropdown-header span.text {
	font-style: italic;
	white-space: normal!important;
	min-width: min(70vw, 500px);
	display: inline-block;
}
.bootstrap-select .dropdown-menu li a.opt {
	padding-left: 1.5rem;
}
.bootstrap-select .dropdown-menu li a span.text {
	white-space: normal!important;
	min-width: min(70vw, 500px);
}
.bootstrap-select.slctpckr-wrap .filter-option-inner-inner {
	white-space: normal;
}
.leaflet-popup-content {
	margin: 5px;
	background: #FFF;
	font-size: .875rem;
  	line-height: 1.25;
}
.leaflet-icon-text {
	width: fit-content !important;
	height: fit-content !important;
	color: #fff !important;
	font-weight: 700 !important;
	white-space: nowrap !important;
	padding-left: .25rem !important;
	padding-right: .25rem !important;
	margin-top: 0 !important;
	border-radius: .25rem !important;
	background-color: #dc3545 !important;
}
.leaflet-control-attribution {
    display: none;
}
.leaflet-top {
    z-index: 999;
}
path.leaflet-interactive:focus:not(:focus-visible) {
	outline: 0;
}
.mdtimepicker {
	color: #212529;
}
.mdtimepicker .mdtp__wrapper {
	bottom: 50%;
	transform: translateX(-50%) translateY(50%) scale(1);
}

/* CSS personalizado */

.sort-1 {
	background-image: none;
	background-repeat: no-repeat;
	background-position: top right;
	cursor: pointer;
}
.sort-1:hover {
	background-color: #343a40!important;
	color: #FFF;
}
.sort-2 {
	background-image: none;
	background-repeat: no-repeat;
	background-position: top right;
	cursor: pointer;
}
.sort-2:hover {
	background-color: #343a40!important;
	color: #FFF;
}
.td-1 {
	width: 10px;
}
.th-wrap {
	font-weight: 700;
	vertical-align: middle!important;
	width: 10px;
	white-space: normal;
}
.th-nowrap {
	font-weight: 700;
	vertical-align: middle!important;
	width: 10px;
	white-space: nowrap;
}
.alert-toggler {
	padding: .25rem;
	margin-bottom: 0;
}
.alert-toggler h5[data-toggle] {
	cursor: pointer;
	margin: .125rem 0 .3rem;
}
.app_loader_bg {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2001;
	width: 100vw;
	height: 100vh;
	background: #FFF;
	opacity: .5;
}
.app_loader_spinner {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2002;
	width: 100vw;
	height: 100vh;
	text-align: center;
	padding-top: 50vh;
}
.aspect_ratio_container {
	width: 100%;
	padding-top: 75vh;
	position: relative;
}
.aspect_ratio {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.ano {
	text-align: center;
	width: 90px!important;
	min-width: 90px!important;
	max-width: 90px!important;
}
.fecha {
	text-align: center;
	width: 110px!important;
	min-width: 110px!important;
	max-width: 110px!important;
}
.usericon {
	background-image: url(usericon.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	padding: 0;
	margin: 0;
	min-width: 38px;
	min-height: 38px;
	border-color: #ced4da;
}
.usericonbig {
	width: 38px;
	-webkit-transition: width 1s;
	transition: width 1s;
	border-radius: .25rem;
	max-width: 300px;
	max-height: 300px;
}
.usericonbig:hover {
	width: 100%;
}
.abtn {
	cursor: pointer;
	text-decoration: underline;
	color: inherit;
}
.abtn:hover {
	text-decoration: none;
	color: inherit;
}
.span-wrap {
	white-space: normal!important;
	text-align: left!important;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	padding: .375rem 0;
	margin-bottom: 0;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}
.span-nowrap {
	white-space: nowrap!important;
	text-align: left!important;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	align-items: center;
	padding: .375rem 0;
	margin-bottom: 0;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}
.wh-35 {
	display: inline-block;
	min-width: 35px;
	min-height: 35px;
	cursor: pointer;
}
.flex-gap {
	gap: 0.25rem;
}
.flex-gap-2 {
	gap: 1.5rem;
}
.cursor-pointer {
	cursor: pointer;
}
.w-90 {
	width: 90px !important;
	min-width: 90px !important;
	max-width: 90px !important;
}
.w-110 {
	width: 110px !important;
	min-width: 110px !important;
	max-width: 110px !important;
}
.w-140 {
	width: 140px !important;
	min-width: 140px !important;
	max-width: 140px !important;
}

/* Calendario */

.mes {
	display: inline-block;
	min-width: 260px;
	text-align: center;
	margin-bottom: 10px;
	vertical-align: top;
}
.mes p {
	text-align: center;
	font-size: 18px;
	color: #c00;
	font-weight: bold;
	margin-bottom: 5px;
}
.mes table {
	border-collapse: separate;
	border-spacing: 2px;
}
.mes th {
	color: #69F;
	font-size: 13px;
	font-weight: normal;
}
.mes td {
	cursor: pointer;
	min-width: 35px;
	height: 35px;
	vertical-align: middle;
}
.diablanco {
	background: #fff;
	color: #212529;
}
.diagris {
	background: #e2e3e5;
	color: #212529;
}
.diagrisoscuro {
	background: #88898b;
	color: #FFF;
}
.dianegro {
	background: #343a40;
	color: #FFF;
}
.diaamarillo {
	background: #ffe614;
	color: #212529;
}
.dianaranja {
	background: #ffa546;
	color: #212529;
}
.diarojo {
	background: #ff6478;
	color: #212529;
}
.diarojooscuro {
	background: #bf323c;
	color: #FFF;
}
.diaazulclaro {
	background: #69ffff;
	color: #212529;
}
.diaazul {
	background: #32beff;
	color: #212529;
}
.diaazuloscuro {
	background: #007fff;
	color: #FFF;
}
.diaverdeclaro {
	background: #90ff90;
	color: #212529;
}
.diacirculoverdeclaro {
	background: radial-gradient(closest-side, #90ff90 85%, transparent 90%);
	color: #212529;
}
.diaverde {
	background: #40bf40;
	color: #212529;
}
.diaverdeoscuro {
	background: #207f20;
	color: #FFF;
}
.bordegris {
	border: 1px solid #CCC!important;
}
.bordenegro {
	border: 1px solid #000!important;
}
.borderojoclaro {
	border: 3px dashed #ff6478!important;
}
.borderojo {
	border: 3px solid #bf323c!important;
}
.bordeverdeclaro {
	border: 3px dashed #40bf40!important;
}
.bordeverde {
	border: 3px solid #207f20!important;
}
.bordeazulclaro {
	border: 3px dashed #69b4ff!important;
}
.bordeazul {
	border: 3px solid #007fff!important;
}
.marcable:hover {
	background: #000!important;
	color: #FFF!important;
}
.tabletooltip {
	border-collapse: collapse;
	overflow: hidden;
}
.tabletooltip td {
	border-bottom: 1px solid;
	border-top: 1px solid;
	padding: .25rem;
	vertical-align: top;
}
.tabletooltip tr:first-child td {
	border-top: none;
}
.tabletooltip tr:last-child td {
	border-bottom: none;
}