﻿
.Background {
	background-color: Gray;
	filter: alpha(opacity=70);
	opacity: 0.7;
	position: static;
	z-index: 2 !important;
}

.ContForm {
	margin-left: -19px;
	margin-right: -19px;
	margin-top: -8px;
}

.ContScrMan {
	background-color: orange;
	height: 1px;
}

.ContPpal{
	margin-top: -3px;
	padding: 0px, 19px, 0px, 19px;
}

.contPestPpal{
	width: 98%;
	margin-left: 15px;
}

.PanPpales {
	width: 98%;
	margin-left: 15px;
}

.styleTable
	{
	margin-left:7px;    
	}

.styleSubTable
	{
	margin-left:1px;    
	margin-right:1px;    
	}

.stylePanel
	{
	border-color:Orange;
	Border-Style:Solid;
	Border-Width:3px;
	}

.PanelModal {
	border-color: Orange;
	Border-Style: Solid;
	Border-Width: 3px;
	background-color: white;
	display: none;
	z-index: 1 !important;
	/*display: none;*/ /* Hidden by default */
	/*position: fixed;*/ /* Stay in place */
	/*z-index: 1 !important;*/ /* Sit on top */
	/*left: 0;
	top: 0;
	width: 100%;*/ /* Full width */
	/*height: 100%;*/ /* Full height */
	/*overflow: auto;*/ /* Enable scroll if needed */
	/*background-color: rgb(0,0,0);*/ /* Fallback color */
	/*background-color: rgba(0,0,0,0.4);*/ /* Black w/ opacity */
}

.stylePanelKitHp
	{
	border-color:Black;
	Border-Style:Solid;
	Border-Width:3px;
	}

.stylePanelKitHpCsr
	{
	border-color:Black;
	Border-Style:Solid;
	Border-Width:1px;
	}

.styleSubPanel {
	border-color: #26A69A;
	Border-Style: Solid;
	Border-Width: 1px;
}

.styleButton {
	background-color: #26A69A;
	color: white;
	font-weight: bold;
}

.miBotonTextoNegro {
	background-color: white;
	color: black;
	font-weight: bold;
}

.styleTituloPerfil
	{
	font-weight:bold;
	font-family:Arial;
	font-size:12px;
	}

.styleDatosPerfil
	{
	font-weight:normal;
	font-family:Arial;
	font-size:12px;
	}

.styleSeparadorPerfil
	{
    font-size:1px;	     
	}

.miEtiquetaOculta{
	visibility:hidden
}

.styleTituloDropDownList
	{
	font-weight:bold;
	font-family:Arial;
	}

.miTituloDropDownListP {
	font-family: Arial;
	font-size: 0.7rem;
	font-weight: bold;
}

.miDropDownListP {
	font-size: 0.7rem;
}

.miTextBoxP {
	font-size: 0.7rem;
}

.styleCellCabecera {
	background-color: #26A69A;
	color: white;
}

.miNoticia {
	font-weight: bold;
	font-family: Arial;
	font-size: 20px;
}

.miNoticiaX2 {
	font-weight: bold;
	font-family: Arial;
	font-size: 40px;
}

.styleNombreDeCampo
	{
	font-weight:bold;
	font-family:Arial;
    font-size:13px;	     
	}

.styleValorDeCampo
	{
	font-family:Arial;
    font-size:13px;	     
	}

.styleIdKitHp
	{
	font-family:Arial;
    font-size:30px;
    font-weight:bold;	     
	}

.styleTitulosKitHp
	{
	font-family:Arial;
    font-size:11px;
    font-weight:bold;	     
	}

.styleTitulosKitHpCsr
	{
	font-family:Arial;
    font-size:14px;
    font-weight:bold;	     
	}

.styleTecnicoKitHp
	{
	font-family:Arial;
    font-size:14px;
    font-weight:bold;	     
	}

.styleValoresKitHp
	{
	font-family:Arial;
    font-size:11px;	     
	}

.styleValoresKitHp-p
	{
	font-family:Arial;
    font-size:9px;	     
	}

.styleValoresKitHpCsr
	{
	font-family:Arial;
    font-size:14px;	     
	}

.styleTituloDePptoBbvaMobilityS1 {
	font-family: Arial;
	font-size: 12px;
	font-weight: bold;
}

.styleTituloDePptoBbvaMobilityS2 {
	font-family: Arial;
	font-size: 12px;
}

.styleTituloDePptoBbvaMobilityS3 {
	font-family: Arial;
	font-size: 15px;
	font-weight: bold;
}

.styleTituloDeFacturaS1 {
	font-family: Arial;
	font-size: 14px;
	font-weight: bold;
}

.styleTituloDeFacturaS2 {
	font-family: Arial;
	font-size: 14px;
}

.styleTituloDeFacturaS3 {
	font-family: Arial;
	font-size: 12px;
	font-style: oblique;
}

.styleTituloDeFacturaS4 {
	font-family: Arial;
	font-size: 8px;
}

.styleTituloDeFacturaS5 {
	font-family: Arial;
	font-size: 9px;
	font-weight: bold;
}

.styleMensajeAlertaConfirmacion
	{
	font-weight:bold;
	font-family:Arial;
	}

.styleErrorExcepcion
	{
	font-weight:bold;
	font-family:Arial;
    font-size:20px;	     
	}

.styleSeparador1
	{
    font-size:1px;	     
	}

.styleSeparador2
	{
    font-size:2px;	     
	}

.styleSeparador6
	{
    font-size:6px;	     
	}

.styleSeparador11
	{
    font-size:11px;	     
	}

.styleLogo
    {
    font-family: Astrud;
    font-size: 50px;
	}

    @font-face {
    font-family: Astrud;
    src: url('Astrud.ttf');
    }

.styleSlogan
	{
	font-family:Space Bd BT;
    font-size: 22px;
	}

    @font-face {
    font-family: Space Bd BT;
    src: url('tt1254m_.ttf');
    }

.styleIncidencia
    {
    text-align:center !important;
    font-size:2rem;
    font-weight:bold;
    }

.styleGridView{
    }

	.styleGridView th {
		text-align: center;
		padding-left: 1px;
		padding-right: 1px;
		background-color: #26A69A;
		color: white;
		border-style: solid;
		border-color: black;
	}

        .styleGridView tr{
        }

	.styleGridView td {
		text-align: left;
		padding-left: 5px;
		padding-right: 5px;
		font-family: Calibri;
	}

.styleGridViewM{
    }

	.styleGridViewM th {
		text-align: center;
		padding-left: 1px;
		padding-right: 1px;
		background-color: #26A69A;
		color: white;
		border-style: solid;
		border-color: black;
		font-size: 13.5px;
	}

        .styleGridViewM tr{
        }

	.styleGridViewM td {
		text-align: left;
		padding-left: 5px;
		padding-right: 5px;
		font-size: 12px;
		font-family: Calibri;
	}

.styleGridViewP{
    }

	.styleGridViewP th {
		text-align: center;
		padding-left: 1px;
		padding-right: 1px;
		background-color: #26A69A;
		color: white;
		border-style: solid;
		border-color: black;
		font-size: 11px;
	}

        .styleGridViewP tr{
        }

	.styleGridViewP td {
		text-align: left;
		padding-left: 5px;
		padding-right: 5px;
		font-size: 11px;
		font-family: Calibri;
	}


.styleImgAlert {
	text-align: center !important;
}



/*======================================================================================*/
/*------------------ PESTAÑA ORIGEN Y DESTINO DE ALBARANES DE 4TRANS -------------------*/
/*======================================================================================*/

/* ============================= */
/* CONTENEDOR PRINCIPAL */
/* ============================= */
.bloque-servicio {
	width: 100%;
	box-sizing: border-box;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 13px;
	color: #111111;
	background-color: #f3f3f3;
	border: 2px solid #d58a11;
	padding: 10px;
}


/* ============================= */
/* CABECERAS */
/* ============================= */
.cabecera-seccion {
	background: #6fa9a0;
	color: #ffffff;
	font-weight: 700;
	font-size: 17px;
	text-align: center;
	padding: 10px;
	margin-bottom: 10px;
	border: 1px solid #4f8c83;
}

.cabecera-seccion-interna {
	background: #6fa9a0;
	color: #ffffff;
	font-weight: 700;
	font-size: 15px;
	text-align: center;
	padding: 8px;
	border-bottom: 1px solid #4f8c83;
}


/* ============================= */
/* BLOQUE SOLICITANTE */
/* ============================= */

.fila-dato {
	display: grid;
	grid-template-columns: 200px 1fr;
	align-items: stretch;
}

.etiqueta {
	background: #e9e9e9;
	font-weight: 700;
	padding: 5px 8px;
	text-align: right;
	border: 1px solid #d3d3d3;
	box-sizing: border-box;
}

.valor {
	padding: 5px 8px;
	border: 1px solid #d3d3d3;
	background: #f8f8f8;
	box-sizing: border-box;
	min-height: 28px;
	display: flex;
	align-items: center;
}

.solicitante-grid-dos-columnas {
	display: flex;
	gap: 20px;
	margin-bottom: 10px;
}

.columna {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: 5px;
}


/* ============================= */
/* ORIGEN + DESTINO */
/* ============================= */
.origen-destino-contenedor {
	display: flex;
	gap: 15px;
	align-items: stretch;
}

.panel-ubicacion {
	flex: 1;
	border: 1px solid #bdbdbd;
	border-top: 3px solid #d58a11;
	background: #ffffff;
	box-sizing: border-box;
}


/* ============================= */
/* TABLAS DE DATOS */
/* ============================= */
.tabla-datos {
	width: 100%;
}

.fila-tabla {
	display: grid;
	grid-template-columns: 150px 1fr;
	min-height: 32px;
}

.fila-direccion {
	min-height: 55px;
}

.etiqueta-col {
	background: #e9e9e9;
	color: #111111;
	font-weight: 700;
	padding: 5px 8px;
	border: 1px solid #d7d7d7;
	box-sizing: border-box;
	text-align: right;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.valor-col {
	padding: 5px 8px;
	border: 1px solid #d7d7d7;
	box-sizing: border-box;
	background: #f8f8f8;
	word-break: break-word;
	display: flex;
	align-items: center;
}

/* Dirección alineada arriba */
.fila-direccion .valor-col {
	align-items: flex-start;
	padding-top: 6px;
}


/* ============================= */
/* COMENTARIOS */
/* ============================= */
.bloque-comentarios {
	margin-top: 10px;
	border: 1px solid #bdbdbd;
	border-top: 3px solid #d58a11;
	background: #ffffff;
}

.cabecera-comentarios {
	background: #6fa9a0;
	color: #ffffff;
	font-weight: 700;
	font-size: 15px;
	text-align: left;
	padding: 8px 10px;
	border-bottom: 1px solid #4f8c83;
}

.comentarios-contenido {
	padding: 8px;
	min-height: 55px;
	background: #f8f8f8;
	border-top: 1px solid #d7d7d7;
	word-break: break-word;
	white-space: pre-line;
}


/* ============================= */
/* ALBARANES DE CLIENTES          */
/* ============================= */

/* ALBARÁN CLIENTE: Contenedor superior */
.contenedor-albaran-cliente {
	display: flex;
	align-items: stretch;
	gap: 10px;
	width: 100%;
	margin-bottom: 10px;
}


/* CONTENEDOR: Subida de Albaranes de Clientes */
.contenedor-albaran-cliente {
	display: flex;
	align-items: stretch;
	gap: 12px;
	width: 100%;
}

/* CONTENEDOR: Centrado vertical para Albarán individual */
.contenedor-albaran-cliente.contenedor-albaran-cliente-individual {
	align-items: center;
}


/* CONTENEDOR: Cliente y acciones */
.zona-controles-albaran-cliente {
	width: 280px;
	min-width: 280px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}


/* DESPLEGABLE: Cliente */
.desplegable-cliente-albaranes {
	width: 100%;
	height: 38px;
	padding: 0 10px;
	box-sizing: border-box;
}


/* CONTROL: Zona de selección del PDF */
.zona-subida-albaran-cliente {
	flex: 1;
	min-width: 0;
}


/* RESPONSIVE: Albaranes de Clientes */
@media (max-width: 700px) {

	.contenedor-albaran-cliente {
		flex-direction: column;
	}

	.zona-controles-albaran-cliente {
		width: 100%;
		min-width: 0;
	}
}


/* ALBARÁN CLIENTE: Zona de selección y arrastre */
.zona-subida-albaran-cliente {
	position: relative;
	flex: 1;
	min-height: 90px;
	border: 2px dashed #8a8a8a;
	border-radius: 6px;
	background-color: #f7f7f7;
	cursor: pointer;
	overflow: hidden;
}


/* ALBARÁN CLIENTE: FileUpload transparente sobre toda la zona */
.file-upload-albaran-cliente {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	cursor: pointer;
	z-index: 10;
}


/* ALBARÁN CLIENTE: Contenido visual de la zona de subida */
.zona-subida-contenido {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 90px;
	padding: 10px;
	text-align: center;
	pointer-events: none;
}


/* ALBARÁN CLIENTE: Texto principal */
.zona-subida-titulo {
	font-weight: 600;
	font-size: 14px;
}


/* ALBARÁN CLIENTE: Texto secundario */
.zona-subida-subtitulo {
	margin-top: 4px;
	font-size: 12px;
	color: #666;
}


/* ALBARÁN CLIENTE: Nombre del fichero seleccionado */
.zona-subida-archivo {
	margin-top: 6px;
	font-size: 12px;
	font-weight: 600;
}


/* ALBARÁN CLIENTE: Botón */
.boton-subir-albaran-cliente {
	width: 140px;
	height: 35px;
	align-self: center;
}

/* ALBARÁN CLIENTE: Contenedor del visor */
.contenedor-iframe-albaran-cliente {
	width: 100%;
}


/* ALBARÁN CLIENTE: Visor PDF */
.iframe-albaran-cliente {
	width: 100%;
	height: 650px;
	border: 1px solid #ccc;
	border-radius: 4px;
}


/* PROGRESO: Contenedor general */
.contenedor-progreso-documental {
	width: 100%;
	margin: 10px 0;
	padding: 10px;
	border: 1px solid #ccc;
	border-radius: 6px;
	background-color: #f7f7f7;
	box-sizing: border-box;
}


/* PROGRESO: Texto superior */
.texto-progreso-documental {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: 600;
}


/* PROGRESO: Fondo de la barra */
.barra-progreso-documental {
	width: 100%;
	height: 18px;
	border: 1px solid #aaa;
	border-radius: 4px;
	background-color: #e9e9e9;
	overflow: hidden;
}


/* PROGRESO: Parte completada */
.relleno-progreso-documental {
	height: 100%;
	width: 0%;
	background-color: #6aa7a1;
	transition: width 0.25s ease;
}


/* ============================================================
   ALBARÁN DE CLIENTE - DISTRIBUCIÓN EN TRES COLUMNAS
   ============================================================ */

.contenedor-albaran-cliente-tres-columnas {
	display: grid !important;
	grid-template-columns: 300px minmax(300px, 1fr) 180px;
	gap: 25px;
	align-items: stretch;
	width: 100%;
}


/* ============================================================
   COLUMNA 1: CONFIGURACIÓN DEL ESTAMPADO
   ============================================================ */

.zona-estampado-albaran-cliente {
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	min-width: 0;
	padding: 4px 10px;
}


/* TÍTULO */
.titulo-estampado-albaran-cliente {
	width: 100%;
	font-weight: bold;
	text-align: center;
	line-height: 1.25;
	margin-bottom: 8px;
	white-space: nowrap;
}


/* OPCIONES */
.opciones-estampado-albaran-cliente {
	margin: 0 auto;
	border-collapse: collapse;
}


	/* Cada opción ocupa una única línea */
	.opciones-estampado-albaran-cliente td {
		padding: 4px 0;
		white-space: nowrap;
		text-align: left;
		vertical-align: middle;
	}


	/* Radio separado del texto */
	.opciones-estampado-albaran-cliente input[type="radio"] {
		margin: 0 7px 0 0;
		vertical-align: middle;
	}


	/* Texto alineado con el radio */
	.opciones-estampado-albaran-cliente label {
		display: inline;
		vertical-align: middle;
		white-space: nowrap;
	}


/* ============================================================
   COLUMNA 2: ZONA DE ARRASTRE
   ============================================================ */

.contenedor-albaran-cliente-tres-columnas .zona-subida-albaran-cliente {
	height: 100%;
	min-height: 0;
	box-sizing: border-box;
}


/* El contenido interior ocupa toda la altura disponible */
.contenedor-albaran-cliente-tres-columnas .zona-subida-contenido {
	height: 100%;
	min-height: 0;
	box-sizing: border-box;
}


/* ============================================================
   COLUMNA 3: BOTÓN
   ============================================================ */

.zona-controles-albaran-cliente-boton {
	width: 180px !important;
	min-width: 180px !important;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}


	/* BOTÓN */
	.zona-controles-albaran-cliente-boton .boton-subir-albaran-cliente {
		align-self: center;
	}


/* ============================================================
   ALBARANES DE CLIENTES - COLUMNA DEL SELECTOR
   ============================================================ */

.zona-selector-albaranes-de-clientes {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 0;
	box-sizing: border-box;
	padding: 0 10px;
}


	/* DESPLEGABLE */
	.zona-selector-albaranes-de-clientes .desplegable-cliente-albaranes {
		width: 100%;
		max-width: 280px;
		box-sizing: border-box;
	}




/* ============================= */
/* RESPONSIVE */
/* ============================= */
@media screen and (max-width: 1200px) {

	.solicitante-grid {
		grid-template-columns: 1fr;
	}

	.origen-destino-contenedor {
		flex-direction: column;
	}
}


.label-enlace {
	display: block;
	max-width: 200px; /* el ancho que quieras */
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: white;
}


/* ========================================================= */
/* DASHBOARD - ANÁLISIS DE ARRASTRES                          */
/* ========================================================= */

.analisis-arrastres {
	width: 100%;
	box-sizing: border-box;
	padding: 14px;
	font-family: Arial, sans-serif;
}

.analisis-kpi-link.analisis-kpi-activa {
	border-color: #d5a52e !important;
	background-color: #fffaf0 !important;
	box-shadow: 0 0 0 1px #d5a52e, 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* ========================================================= */
/* FILTROS                                                    */
/* ========================================================= */

.analisis-filtros {
	display: grid;
	grid-template-columns: minmax(120px, 0.8fr) minmax(120px, 0.8fr) minmax(150px, 1fr) minmax(150px, 1fr) minmax(190px, 1.3fr) minmax(190px, 1.3fr) auto;
	gap: 10px;
	align-items: end;
	padding: 12px;
	background-color: #f7f7f7;
	border: 1px solid #dddddd;
	border-radius: 6px;
}


.analisis-filtro {
	display: flex;
	flex-direction: column;
	min-width: 0;
}


	.analisis-filtro label {
		margin-bottom: 5px;
		font-size: 12px;
		font-weight: bold;
		color: #444444;
	}


.analisis-control {
	width: 100%;
	height: 34px;
	box-sizing: border-box;
	padding: 5px 8px;
	border: 1px solid #c7c7c7;
	border-radius: 4px;
	background-color: #ffffff;
	font-size: 13px;
}


	.analisis-control:focus {
		outline: none;
		border-color: #e6a220;
	}


/* ========================================================= */
/* MÁS FILTROS                                                */
/* ========================================================= */

.analisis-boton-mas-filtros {
	height: 34px;
	padding: 0 14px;
	border: 1px solid #c7c7c7;
	border-radius: 4px;
	background-color: #ffffff;
	cursor: pointer;
	font-size: 13px;
	white-space: nowrap;
}


	.analisis-boton-mas-filtros:hover {
		background-color: #eeeeee;
	}


	.analisis-boton-mas-filtros span {
		margin-left: 6px;
		font-size: 10px;
	}


.analisis-mas-filtros {
	display: grid;
	grid-template-columns: minmax(180px, 250px);
	gap: 10px;
	margin-top: 8px;
	padding: 12px;
	background-color: #fafafa;
	border: 1px solid #dddddd;
	border-radius: 6px;
}


/* ========================================================= */
/* INDICADORES                                                */
/* ========================================================= */

.analisis-kpis {
	display: grid;
	grid-template-columns: repeat(7, minmax(120px, 1fr));
	gap: 10px;
	margin-top: 14px;
}


.analisis-kpi {
	min-height: 82px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 10px;
	box-sizing: border-box;
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 7px;
	cursor: pointer;
	transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}


	.analisis-kpi:hover {
		transform: translateY(-2px);
		border-color: #e6a220;
		box-shadow: 0 3px 8px rgba(0, 0, 0, 0.12);
	}


	.analisis-kpi:focus {
		outline: none;
		border-color: #e6a220;
	}


.analisis-kpi-titulo {
	margin-bottom: 6px;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	color: #666666;
}


.analisis-kpi-valor {
	font-size: 23px;
	font-weight: bold;
	color: #222222;
}

.analisis-kpi-detalle {
	margin-top: 5px;
	font-size: 11px;
	font-weight: normal;
	color: #777777;
}

.analisis-kpi-link {
	text-decoration: none;
	color: inherit;
}

	.analisis-kpi-link:hover,
	.analisis-kpi-link:focus,
	.analisis-kpi-link:visited {
		text-decoration: none;
		color: inherit;
	}


/* ========================================================= */
/* GRÁFICO DE RUTAS                                           */
/* ========================================================= */

.analisis-grafico-cabecera {
	display: grid;
	grid-template-columns: 190px 55px 1fr;
	gap: 10px;
	align-items: center;
	height: 34px;
	padding: 0 8px;
	box-sizing: border-box;
	background-color: #f2f2f2;
	border-bottom: 1px solid #cccccc;
	font-size: 12px;
	font-weight: bold;
	color: #444444;
}

.analisis-grafico-cabecera-ruta {
	text-align: left;
}

.analisis-grafico-cabecera-cantidad {
	text-align: right;
}

.analisis-grafico-cabecera-barra {
	text-align: left;
}

.analisis-grafico-barras {
	display: flex;
	flex-direction: column;
	gap: 0;
}

.analisis-grafico-fila {
	display: grid;
	grid-template-columns: 190px 55px 1fr;
	gap: 10px;
	align-items: center;
	height: 34px;
	padding: 0 8px;
	box-sizing: border-box;
	border-bottom: 1px solid #eeeeee;
}

.analisis-grafico-etiqueta {
	font-size: 12px;
	color: #333333;
	line-height: 1.2;
	word-break: break-word;
}

.analisis-grafico-barra-zona {
	position: relative;
	height: 18px;
	background-color: #f1f1f1;
	border-radius: 4px;
	overflow: hidden;
	border: 1px solid #e0e0e0;
}

.analisis-grafico-barra {
	height: 100%;
	background: linear-gradient(90deg, #d89a1d, #f0b23b);
	border-radius: 4px;
}

.analisis-grafico-valor {
	font-size: 12px;
	font-weight: bold;
	color: #333333;
	text-align: right;
}

.analisis-grafico-vacio {
	padding: 12px;
	font-size: 12px;
	color: #777777;
}


/* ========================================================= */
/* ZONA INFERIOR DEL DASHBOARD                               */
/* ========================================================= */

.analisis-zona-contenido {
	width: 100%;
	margin-top: 14px;
	box-sizing: border-box;
}

/* ========================================================= */
/* ANÁLISIS DE ARRASTRES POR RUTAS                           */
/* ========================================================= */

.analisis-rutas-panel {
	width: 100%;
	box-sizing: border-box;
	margin-top: 14px;
}


.analisis-rutas-titulo {
	margin-bottom: 12px;
	font-size: 16px;
	font-weight: bold;
	color: #333333;
}


.analisis-rutas-contenedor {
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: 16px;
	align-items: start;
}


.analisis-rutas-tabla,
.analisis-rutas-grafico {
	min-width: 0;
	box-sizing: border-box;
	padding: 12px;
	background-color: #ffffff;
	border: 1px solid #dddddd;
	border-radius: 7px;
}


.analisis-rutas-subtitulo {
	margin-bottom: 10px;
	font-size: 13px;
	font-weight: bold;
	color: #555555;
}


/* ========================================================= */
/* GRID DE RUTAS                                              */
/* ========================================================= */

.analisis-rutas-grid {
	width: 100%;
	border-collapse: collapse;
	font-size: 12px;
}

	.analisis-rutas-grid th {
		height: 34px;
		padding: 0 8px;
		box-sizing: border-box;
		background-color: #f2f2f2;
		border-bottom: 1px solid #cccccc;
		text-align: left;
		font-weight: bold;
		color: #444444;
		vertical-align: middle;
	}

	.analisis-rutas-grid td {
		height: 34px;
		padding: 0 8px;
		box-sizing: border-box;
		border-bottom: 1px solid #eeeeee;
		color: #333333;
		vertical-align: middle;
	}

	.analisis-rutas-grid tr:hover td {
		background-color: #fafafa;
	}

	.analisis-rutas-grid td,
	.analisis-rutas-grid th {
		white-space: nowrap;
	}

/* ========================================================= */
/* RESPONSIVE                                                 */
/* ========================================================= */

@media (max-width: 1100px) {

	.analisis-rutas-contenedor {
		grid-template-columns: 1fr;
	}
}


/* ========================================================= */
/* GRÁFICO DE ALBARANES POR CLIENTE                          */
/* ========================================================= */

.analisis-grafico-clientes-columnas {
	grid-template-columns: 250px 55px 1fr;
}


.analisis-grafico-cliente {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.analisis-cliente-columna {
	width: 34%;
	max-width: 0;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ========================================================= */
/* RESPONSIVE                                                 */
/* ========================================================= */

@media (max-width: 1300px) {

	.analisis-filtros {
		grid-template-columns: repeat(4, minmax(150px, 1fr));
	}

	.analisis-kpis {
		grid-template-columns: repeat(4, 1fr);
	}
}


@media (max-width: 800px) {

	.analisis-filtros {
		grid-template-columns: repeat(2, minmax(140px, 1fr));
	}

	.analisis-kpis {
		grid-template-columns: repeat(2, 1fr);
	}
}


@media (max-width: 500px) {

	.analisis-arrastres {
		padding: 8px;
	}

	.analisis-filtros {
		grid-template-columns: 1fr;
	}

	.analisis-kpis {
		grid-template-columns: 1fr 1fr;
	}
}


/* ========================================================= */
/* COSTES                                                    */
/* ========================================================= */


.analisis-costes-cabecera {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.analisis-costes-selector {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	font-weight: 600;
	color: #555;
}

.analisis-costes-dropdown {
	height: 32px;
	padding: 0 30px 0 10px;
	border: 1px solid #ccc;
	border-radius: 5px;
	background-color: #fff;
	font-size: 13px;
	color: #333;
}

.analisis-grafico-costes-columnas {
	grid-template-columns: 250px 105px 1fr;
}