/* *************************** */
/* ******  Generico  ********* */
/* *************************** */
.w-95 {
	width:95% !important;
}

.pointer {
	cursor: pointer;
}

.logonav {
	height: 50px;
	width: auto;
}

.card{
	border: 0px;
}

.card-body{
	padding-right: 0px;
}

@media (max-width: 1130px) {
	.card-body{
		padding-left: 0px;
	}

	.card-header{
		padding-left: 0px;
	}

}

.list-group-item{
	align-content: center;
}

/* *************************** */
/* **  Gestion documental  *** */
/* *************************** */
.doc-buscador form {
	display: grid;
	grid-template-columns: minmax(215px, 15%) minmax(200px, 13%) minmax(195px, 13%) minmax(190px, 15%) minmax(190px, 15%);
}

.doc-grid-client div, .cae-grid-client div{
	font-size: 14px;
	padding-right: 5px;
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 1px;
}

@media (min-width: 1130px) {
	.doc-buscador .sel-buscador, .doc-buscador .input-fecha {
		justify-self: center;
	}
}

.doc-grid-row, .cae-grid-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	overflow-wrap: break-word;
}

.doc-grid-row p, .cae-grid-row p {
	width:100%;
	margin: 0;
}

.doc-buscador #texto {
	width: 170px;
}

.doc-buscador #pag {
	width: 60px;
}

.doc-buscador .form-fecha {
	width: 150px;
}

.doc-grid {
	display: grid;
	grid-template-columns: minmax(150px, 38%) minmax(120px, 22%) minmax(120px, 23%) minmax(90px, 9%) minmax(50px, 5%);
	align-items: center;
}

.cae-grid {
	display: grid;
	grid-template-columns: minmax(110px, 16%) minmax(130px, 16%) minmax(75px, 14%) minmax(90px, 8%) minmax(90px, 7%) minmax(90px, 13%) minmax(80px, 6%) minmax(95px, 7%) minmax(70px, 7%)  minmax(80px, 80px);
	align-items: center;
}

.doc-grid div, .cae-grid div {
	height: 100%;
	font-size: 14px;
	padding-right: 5px;
	padding-left: 1px;
	padding-top: 4px;
	padding-bottom: 4px;
}

.doc-grid-client {
	display: grid;
	grid-template-columns: minmax(150px, 46%) minmax(120px, 35%) minmax(90px, 10%) minmax(50px, 80px);
}

.cae-grid-client {
	display: grid;
	grid-template-columns: minmax(150px, 46%) minmax(120px, 45%) minmax(90px, 10%) minmax(80px, 80px);
}

#doc_frm input {
	border-top: 0;
	border-right: 0;
	border-left: 0;
}

@media (max-width: 1130px) {
	.doc-buscador form {
		grid-template-columns: 50% 50%;
	}
	.doc-buscador .input-buscador, .doc-buscador .sel-buscador {
		grid-column-start: 0;
  		grid-column-end: span 2;
	}
	
	#descargar {
		visibility: hidden;
	}
}

.doc-buscapag {
	width: 100%;
	text-align: center;
	margin-top: 10px;
}

.doc-buscapag span {
	margin: 10px;
}

.card-body i {
	/*color: #007bff;*/
	font-size: 24px;
}

.doc-footer {
	width: 100%;
	text-align : right;
}

.doc-descarga {
	text-align : center;
}

.imparell {
	background-color: #f1f1f1;
}

.parell {
	background-color: #fafafa;
}

.doc-grid-header {
	font-weight: bold;
	border-bottom: 1px solid #111;
	width: 100%;
}

.doc-order i {
	color: #dcdcdc;
	font-size: 18px;
}

.doc-order {
	float:right;
	padding-right: 5px;
}

.doc-btn {
	/*margin-top: 5px;*/
	cursor: pointer;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	border: 1px solid transparent;
	padding: .375rem .75rem;
	font-size: 1rem;
	line-height: 1;
	border-radius: .25rem;
	transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;	
}

.doc-btn:hover {
	background-color: #dcdcdc;
}

.doc-btn i {
	color: inherit;
	font-size: inherit;
}


/* *************************** */
/* ******  FAQs  ********* */
/* *************************** */

.contentfaqs {
	padding: 20px;
	padding-bottom: 50px;
}

.ulfaqs {
	margin-bottom: 25px;
	list-style-type: decimal;
}

.ulfaqs li {
	margin-top: 10px;
}

.linkfaqs {
	color: blue !important;
}

.linkfaqs:hover {
	text-decoration: underline !important;
	color: #797989 !important;
}

.linkmail {
	padding-left: 15px;
	margin-top: 10px;
}

.divfaq {
	padding: 15px;
}

.listanopunto {
	list-style-type: none;
}

/* *************************** */
/* ******  Ordenes  ********* */
/* *************************** */

@import '/setting/style.css';
.ord-cabecerasubdeps {
	/* font-weight:bold;*/
	font-size: 16px;
	color:var(--company-color);
	border-bottom: 1px solid var(--company-color);
	padding-top: 5px;
	padding-bottom: 2px;
}

.ord-cabecerasubsubdeps {
	/*font-weight:bold;*/
	font-size: 14px;
}

.ord-fieldsotrosdatos {
	float: left;
	text-align: left;
}

@media only screen and (max-width: 768px) {
	.ord-fieldsotrosdatos {
		float: inherit;
	}
}

/* ******************************* */
/* ******  fullcalendar  ********* */
/* ******************************* */

.fc-list-event {
	background: white !important;
}


/* *************************** */
/* ***      Genericos      *** */
/* *************************** */

body {
	margin: 0;
	font-family: 'Barlow', sans-serif;
	/*background-image: url('/img/2background.png');*/
}

.col.data {
	overflow-x: auto;
}


/* *************************** */
/* ***       enlaces       *** */
/* *************************** */

a {
	color: black;
	text-decoration: none;
}

/* *************************** */
/* ***     fontawesome     *** */
/* *************************** */

.fa-arrow-circle-down:before {
	color: #007bff;
	font-size: 25px;
	padding-left: 18px;
}

.fa-eye:before, .fa-angle-left:before {
	padding-right: 8px;
}

.fa-angle-left {
	font-weight: bold;
}


/* *************************** */
/* ***        capas        *** */
/* *************************** */

.copyright {
	padding-top: 20px;
	font-size: 13px;
}

.card-header {
	background-color: white;
	border-bottom: 1px solid white;
}

.login-head {
	margin-top: 20%;
}

.login-head-logo {
	height: 150px;
	background-image: url('/setting/logo.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	background-color: white;
	border-radius: 4px 0 0 0;
	-moz-border-radius: 4px 0 0 0;
	-webkit-border-radius: 4px 0 0 0;
}

.login-data {
	padding: 25px 10px;
}

.login-mail {
	padding-top: 50px;
	text-align: center;
	font-size: 13px;
	color: #666;
}

/* Estilos generales */
.data {
	padding-top: 3rem;
}

/* Media query para escritorio (PC) */
@media only screen and (min-width: 768px) {
	/* Estilos específicos para la versión de escritorio */
	.data {
		padding: 3rem;
	}
}

.data1 {
	padding: 10px 0 0 0;
}

.encuesta {
	font-weight: bold;
	font-size: 20px;
}

#cargando {
	position: absolute;
	text-align: center;
	z-index: 1;
	top: 50%;
	left: 50%;
	font-size: 30px;
	color: grey;
}


/* *************************** */
/* ***     FULLCALENDAR    *** */
/* *************************** */
.fc-toolbar h2 {
	text-transform: uppercase;
	font-size: 16px;
	font-weight: bold;
	color: black;
}

.fc-event-title {
	white-space: break-spaces;
	font-weight: 10 !important;
}

.fc-event-time, .fc-list-event-time {
	display: none;
}

.fc button {
	font-size: 14px;
}

.fc-timegrid-event {
	height: 80px;
}

.fc-state-default {
	border-radius: 0 !important;
}

.fc-unthemed td.fc-today {
	background: #fbfbfb;
}

.fc-list-heading, .fc-list-table tr:first-child td {
	text-transform: uppercase;
	font-size: 13px;
}

tr.fc-list-item {
	font-size: 14px;
}

th .fc-scroller {
	overflow: hidden !important;
}

.fc-event-dot {
	/*background-color: #007bff59;*/
	background-color: #00000059;
}

.fc-daygrid-event-harness {
	margin-top: 5px !important;
}

.fc-event {
	line-height: auto;
	border-radius: 4px;
	/*border: 1px solid #007bff59;
    background-color: #007bff2b;*/
	border: 1px solid #00000024;
	background-color: #f3f3f3fa;
}

td.fc-list-item-time.fc-widget-content {
	font-weight: bold;
}

.fc-day-grid-event .fc-content {
	white-space: normal;
}

a.fc-col-header-cell-cushion, a.fc-daygrid-day-number {
	color: black !important;
	text-decoration: none !important;
}

/* Media query para dispositivos móviles */
@media screen and (max-width: 767px) {
	/* Estilos para los botones del encabezado */
	.fc-header-toolbar button {
		font-size: 12px !important; /* Tamaño de fuente más pequeño */
	}

	/* Estilos para el título del calendario */
	.fc-toolbar-title {
		font-size: 16px !important; /* Tamaño de fuente más pequeño */
	}

	.fc-event-title {
		word-wrap: normal;
		font-size: 12px !important;
	}

	.fc-header-toolbar.fc-toolbar.fc-toolbar-ltr {
		display: flex;
		flex-wrap: wrap;
	}

	.fc-toolbar-title {
		width: 100%; /* Toma todo el ancho disponible */
	}

	.fc-toolbar .fc-toolbar-chunk:first-child {
		order: 2 !important; /* Cambiar el orden */
	}

	.fc-toolbar .fc-toolbar-chunk:last-child {
		order: 3 !important; /* Cambiar el orden */
	}

	.fc-toolbar-chunk:has(>.fc-toolbar-title) {
		order: 1 !important; /* Cambiar el orden */
		flex: 1 0 100%; /* Ocupa todo el ancho disponible */
		margin-bottom: 10px !important;
		text-align: center;
	}

	.fc .fc-toolbar-title {
		margin-bottom: 10px !important;
	}
}

.fc-toolbar-chunk button {
	background: #ffffff !important;
	border-color: var(--company-color) !important;
	color: var(--company-color) !important;
}

.fc-toolbar-chunk button:hover {
	background: var(--company-color) !important;
	border-color: var(--company-color) !important;
	color: #fff !important;
}

.fc-button-group button {
	background: var(--company-color) !important;
	border-color: var(--company-color) !important;
	color: #fff !important;
}

.fc-button-group button:hover {
	background: #ffffff !important;
	border-color: var(--company-color) !important;
	color: var(--company-color) !important;
}

/* *********************************************************** */
/* ***       	 Burger (esconder y mostrar sidemenu)      *** */
/* ********************************************************** */

.burger {
	width: 28px;
	height: 32px;
	cursor: pointer;
	position: relative;
	z-index: 99;
	float: right;
}

.burger:before, .burger span, .burger:after {
	width: 100%;
	height: 4px;
	display: block;
	background: #ffffff;
	border-radius: 2px;
	position: absolute;
	opacity: 1;
}

.burger:before, .burger:after {
	-webkit-transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
	transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
	-o-transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
	transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
	transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
	-webkit-transition: top 1s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.35s cubic-bezier(0.23, 1, 0.32, 1), background-color 1.15s cubic-bezier(0.86, 0, 0.07, 1);
	content: "";
}

.burger:before {
	top: 4px;
}

.burger span {
	top: 15px;
}

.burger:after {
	top: 26px;
}

/* Hover */
.burger:hover:before {
	top: 7px;
}

.burger:hover:after {
	top: 23px;
}

/* Click */
.burger.active span {
	opacity: 0;
}

.burger.active:before, .burger.active:after {
	top: 40%;
}

.burger.active:before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=5);
	/*for IE*/
}

.burger.active:after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=-5);
	/*for IE*/
}

.burger:focus {
	outline: none;
}

.burger.active {
	background: transparent;
}

/* ************************************* */
/* ***        Custom bootstrap       *** */
/* ************************************* */

.select2-container--bootstrap-5 .select2-selection--single {
	padding: .375rem 2.75rem .375rem 0.813rem;
	background-position: right .75rem center;
	background-size: 16px 12px
}

.align-items-flex-end {
	align-items: flex-end !important;
}

.text-color-empresa {
	color: var(--company-color) !important;
}

.form-check-label {
	font-size: 14px;
	color: black;
}

.btn-primary {
	margin-top: 10px;
	width: 100%;
	color: white;
	background-color: var(--company-color);
	border-color: transparent;
	font-size: 100%;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary:active:focus, .btn-primary.active {
	background-color: var(--company-color) !important;
	filter: saturate(55%);
	border-color: transparent !important;
	box-shadow: none !important;
}

/* Estilos para botones de contorno primario */
.btn-outline-primary {
	color: var(--company-color);
	border-color: var(--company-color);
}

.btn-outline-primary:hover {
	color: #fff;
	background-color: var(--company-color);
	border-color: var(--company-color);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
	color: var(--company-color);
	background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled).active, .btn-outline-primary:not(:disabled):not(.disabled):active, .show > .btn-outline-primary.dropdown-toggle {
	color: #fff;
	background-color: var(--company-color);
	border-color: var(--company-color);
}

.btn-secondary, .btn-light, .btn-dark {
	border-radius: 0 !important;
	font-size: 13px;
}

.btn-secondary, .btn-light {
	padding: .3rem .75rem;
}

a.btn.btn-secondary {
	color: white;
}

.labelselect {
	font-size: .8rem;
	color: grey;
}

.invalid-data {
	width: 100%;
	margin-top: .25rem;
	font-size: 80%;
	color: #dc3545;
}

.valid-data {
	width: 100%;
	margin-top: .25rem;
	font-size: 80%;
	color: #28a745;
}

/** 3 state toggle **/

#filtroEstadoCierre {
	-webkit-appearance: none;
	appearance: none;
	height: 48%;
	width: 100%;
	background-color: transparent;
	border: var(--bs-border-width) solid var(--bs-border-color);
	-webkit-border-radius: 25px;
	border-radius: 25px;
	padding: 0 2px;
	margin: 0;
	cursor: pointer;
	/*box-shadow: inset 2px 2px 5px rgba(0, 0, 0, 0.5);*/
}

#filtroEstadoCierre.tgl-def::-webkit-slider-thumb,
#filtroEstadoCierre.tgl-on::-webkit-slider-thumb,
#filtroEstadoCierre.tgl-off::-webkit-slider-thumb {
	background-color: var(--company-color);
}

#filtroEstadoCierre::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 32%;
	height: 90%;
	-webkit-border-radius: 25px;
	border-radius: 25px;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
}


/* Estilos para Firefox */
#filtroEstadoCierre::-moz-range-thumb {
	appearance: none;
	width: 32%;
	height: 90%;
	border-radius: 25px;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
	transition: background-color 0.3s ease; /* Transición animada para el cambio de color de fondo */
}

/* Estilos comunes para todas las clases */
#filtroEstadoCierre.tgl-def::-moz-range-thumb,
#filtroEstadoCierre.tgl-on::-moz-range-thumb,
#filtroEstadoCierre.tgl-off::-moz-range-thumb {
	background-color: var(--company-color);
}

/* Estilos para la barra del control deslizante en Safari móvil */
#filtroEstadoCierre::-webkit-slider-runnable-track {
	height: 90%;
	border-radius: 25px;
	background-color: #ffffff; /* Color de fondo de la barra del control deslizante */
}

#filtroEstadoCierre:focus {
	outline: none;
}

/* Solo afecta a Safari en iOS y macOS, utilizando una consulta de soporte específica para WebKit */
@media screen and (-webkit-min-device-pixel-ratio: 2) {

	input#filtroEstadoCierre {
		height: 3rem;
	}
}


.rangeActive {
	background-color: green;
}

/*datatables*/
.dt-layout-row {
	width: 100% !important;
	overflow: auto !important;
}

@media only screen and (max-width: 768px) {
	.dt-layout-cell {
		width: 100%;
		margin-bottom: 3px;
		text-align: center;
	}
}

th {
	align-content: center;
	text-align: left !important;
}