html {
	scrollbar-gutter: stable;
}

/* El wordmark PRO es más ancho que el logo anterior: a 25px de alto se come el toggle. */
#kt_aside_logo .logo {
	height: 20px !important;
	width: auto;
	max-width: calc(100% - 2.5rem);
	object-fit: contain;
}

/* Metronic usa overflow-y: scroll en .menu-sub-dropdown y reserva carril aunque no haya scroll */
.menu.menu-sub.menu-sub-dropdown,
#menu-filtros.menu-sub-dropdown,
#menu-filters.menu-sub-dropdown {
	max-height: calc(100vh - 100px);
	min-height: 0;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	scrollbar-gutter: auto;
}

/* Sin alto propio la equis flota sobre la esquina sin empujar el título, y el
   sticky la mantiene a la vista mientras se recorre el panel. */
.odp-menu-cerrar-barra {
	position: sticky;
	top: 0;
	z-index: 3;
	display: flex;
	justify-content: flex-end;
	height: 0;
	overflow: visible;
}
.odp-menu-cerrar {
	margin: 0.5rem 0.5rem 0 0;
	background-color: #fff;
}
@media (min-width: 768px) {
	.odp-menu-cerrar-barra {
		display: none;
	}
}

/* Safari en iOS no siempre resuelve la tipografía del tema en los campos de
   formulario y cae a la del sistema, que dibuja los dígitos más grandes: los
   campos de fecha se veían mayores que el texto de los Select2 vecinos. */
.form-control,
.form-select,
.form-check-input {
	font-family: inherit;
}

/* Lo que se ve de un Select2 es un span, así que se queda en el 1rem del tema y
   no recibe los 16px anti-zoom de más abajo. El campo de fecha se iguala a mano;
   queda fuera de esa regla, de modo que iOS hará zoom al enfocarlo. */
.form-control.odp-campo-fecha {
	font-size: 1rem;
}

/* comun.js ancla el panel bajo el campo con position:fixed y, cuando no cabe,
   limita el alto de .odp-drp-cuerpo para que el pie siga visible. */
.odp-drp-cuerpo {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: hidden;
	overflow-y: auto;
	overscroll-behavior: contain;
	touch-action: pan-y;
	-webkit-overflow-scrolling: touch;
}
.daterangepicker .drp-calendar {
	float: none !important;
	flex: 0 0 auto;
	width: 22rem;
	max-width: 22rem;
	overflow: visible;
	box-sizing: border-box;
}
.daterangepicker .drp-calendar.left,
.daterangepicker .drp-calendar.right {
	padding: 0.75rem !important;
}
.daterangepicker .calendar-table,
.daterangepicker .calendar-table table {
	width: 100%;
	table-layout: auto;
}
.daterangepicker .odp-drp-fila-oculta {
	display: none;
}
.odp-drp-cabecera {
	display: grid;
	grid-template-columns: 1.5rem minmax(0, 1fr) 1.5rem;
	align-items: center;
	gap: 0.4rem;
	width: 100%;
	padding: 0 0 0.65rem;
	box-sizing: border-box;
}
.odp-drp-selectores {
	display: grid;
	grid-template-columns: minmax(0, 3fr) minmax(7.25rem, 2fr);
	gap: 0.5rem;
	min-width: 0;
}
.odp-drp-selectores .select2-container {
	width: 100% !important;
	min-width: 0;
}
.odp-drp-selectores .select2-selection,
.daterangepicker .calendar-time .select2-selection {
	min-height: 2.65rem;
	padding: 0.55rem 2rem 0.55rem 0.75rem;
	font-size: 1rem;
	font-weight: 500;
	text-align: left;
}
.odp-drp-selectores .select2-selection__rendered,
.daterangepicker .calendar-time .select2-selection__rendered {
	color: inherit;
	overflow: hidden;
	text-overflow: ellipsis;
}
.odp-drp-nav {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.5rem;
	height: 2.65rem;
	padding: 0;
	border: 0;
	border-radius: 0.475rem;
	background: transparent;
}
.odp-drp-nav.available:hover {
	background-color: #f1faff;
}
.odp-drp-nav:disabled {
	visibility: hidden;
}
.odp-drp-nav span {
	display: inline-block;
	padding: 0.25rem;
	border: solid #5e6278;
	border-width: 0 2px 2px 0;
}
.odp-drp-nav.prev span {
	transform: rotate(135deg);
}
.odp-drp-nav.next span {
	transform: rotate(-45deg);
}
.daterangepicker.show-calendar .drp-buttons {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	flex-wrap: nowrap;
}
.daterangepicker .drp-selected {
	flex: 1 1 auto;
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	padding-right: 0;
}
.daterangepicker .drp-buttons .btn {
	flex: 0 0 auto;
	margin-left: 0;
}
.daterangepicker .calendar-time {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	line-height: normal;
}
.daterangepicker .calendar-time .select2-container {
	width: 6rem !important;
}
/* El desplegable vive en <body> para no recortarse con el scroll del calendario. */
.daterangepicker-select2-dropdown {
	z-index: 2000 !important;
	min-width: 12rem;
}

/* El vacío del menú de avisos no debe verse si aún hay ítems en la lista. */
.menu-notificaciones-scroll:has(#notificaciones [id^="notificacion-"]) #sin-notificaciones {
	display: none !important;
}

/* Los dos meses no caben lado a lado: se apilan y el rango del pie sobra. */
@media (max-width: 767.98px) {
	/* Popper hace clamp horizontal del menú: con cualquier ancho menor al del
	   viewport lo pega a un borde y el aire sobrante queda de un solo lado. Se
	   ocupa el ancho completo (único desplazamiento posible: 0) y el margen se
	   simula con bordes transparentes, que sí quedan simétricos. */
	#menu-filtros.menu-sub-dropdown,
	#menu-filters.menu-sub-dropdown,
	.menu-notificaciones-dropdown {
		width: 100% !important;
		max-width: 100% !important;
		border-left: 0.5rem solid transparent;
		border-right: 0.5rem solid transparent;
		background-clip: padding-box;
	}
	.odp-drp-cuerpo {
		flex-direction: column;
	}
	.daterangepicker .drp-calendar {
		width: 100%;
		max-width: none;
	}
	.daterangepicker .drp-selected {
		display: none;
	}
}

@media (min-width: 992px) {
	/* La columna se pega bajo el toolbar y se suelta al final del contenido.
	   Si el resumen es más alto que la pantalla, comun.js baja el top para
	   que al hacer scroll se vea completo. */
	.reporte-resumen-col,
	.resumen-sticky-col {
		position: sticky;
		top: 150px;
		z-index: 95;
		align-self: flex-start;
	}
}

.highlight-search,
mark.highlight-search,
.fila-venta .highlight-search,
.fila-compra .highlight-search,
.fila-rma .highlight-search {
    background: #fff4cc;
    background-color: #fff4cc;
    color: #665000;
}

.conteo-linea {
	border-left: 4px solid transparent;
	border-radius: 0.35rem;
}
.conteo-linea--exacto {
	border-left-color: #50cd89;
	background: rgba(80, 205, 137, 0.1);
}
.conteo-linea--sobrante {
	border-left-color: #ffc700;
	background: rgba(255, 199, 0, 0.12);
}
.conteo-linea--faltante {
	border-left-color: #f1416c;
	background: rgba(241, 65, 108, 0.1);
}

/* Código de colores del resumen (misma paleta que la franja izquierda) */
.estado-leyenda {
	display: inline-block;
	width: 4px;
	height: 14px;
	border-radius: 1px;
	margin-right: 8px;
	flex-shrink: 0;
}
.estado-leyenda--primary { background: var(--bs-primary, #009EF7); }
.estado-leyenda--success { background: #50cd89; }
.estado-leyenda--warning { background: #ffc700; }
.estado-leyenda--danger { background: #f1416c; }
.estado-leyenda--dark { background: #7e8299; }

/* Franja de estado: pendientes de surtir, pendientes de entrada, pendientes de RMA + cola de procesamiento */
.fila-venta,
.fila-compra,
.fila-rma {
	border-left: 4px solid transparent;
	border-radius: 0.35rem;
	background-color: #fff;
}
.fila-compra,
.fila-rma {
	border-left-color: var(--bs-primary, #009EF7);
}
.fila-venta.bg-light-success,
.fila-venta.bg-light-warning,
.fila-venta.bg-light-danger,
.fila-venta.bg-light,
.fila-venta.bg-light-dark,
.fila-compra.bg-light-success,
.fila-compra.bg-light-warning,
.fila-compra.bg-light-danger,
.fila-compra.bg-light,
.fila-compra.bg-light-dark,
.fila-rma.bg-light-success,
.fila-rma.bg-light-warning,
.fila-rma.bg-light-danger,
.fila-rma.bg-light,
.fila-rma.bg-light-dark {
	background-color: #fff !important;
}
body.dark-mode .fila-venta,
body.dark-mode .fila-compra,
body.dark-mode .fila-rma,
[data-bs-theme="dark"] .fila-venta,
[data-bs-theme="dark"] .fila-compra,
[data-bs-theme="dark"] .fila-rma,
body.dark-mode .fila-venta.bg-light-success,
body.dark-mode .fila-venta.bg-light-warning,
body.dark-mode .fila-venta.bg-light-danger,
body.dark-mode .fila-venta.bg-light,
body.dark-mode .fila-venta.bg-light-dark,
body.dark-mode .fila-compra.bg-light-success,
body.dark-mode .fila-compra.bg-light-warning,
body.dark-mode .fila-compra.bg-light-danger,
body.dark-mode .fila-compra.bg-light,
body.dark-mode .fila-compra.bg-light-dark,
body.dark-mode .fila-rma.bg-light-success,
body.dark-mode .fila-rma.bg-light-warning,
body.dark-mode .fila-rma.bg-light-danger,
body.dark-mode .fila-rma.bg-light,
body.dark-mode .fila-rma.bg-light-dark,
[data-bs-theme="dark"] .fila-venta.bg-light-success,
[data-bs-theme="dark"] .fila-venta.bg-light-warning,
[data-bs-theme="dark"] .fila-venta.bg-light-danger,
[data-bs-theme="dark"] .fila-venta.bg-light,
[data-bs-theme="dark"] .fila-venta.bg-light-dark,
[data-bs-theme="dark"] .fila-compra.bg-light-success,
[data-bs-theme="dark"] .fila-compra.bg-light-warning,
[data-bs-theme="dark"] .fila-compra.bg-light-danger,
[data-bs-theme="dark"] .fila-compra.bg-light,
[data-bs-theme="dark"] .fila-compra.bg-light-dark,
[data-bs-theme="dark"] .fila-rma.bg-light-success,
[data-bs-theme="dark"] .fila-rma.bg-light-warning,
[data-bs-theme="dark"] .fila-rma.bg-light-danger,
[data-bs-theme="dark"] .fila-rma.bg-light,
[data-bs-theme="dark"] .fila-rma.bg-light-dark {
	background-color: #1e1e2d !important;
	color: #e1e3ea;
}
.fila-venta.text-success,
.fila-venta.text-warning,
.fila-venta.text-danger,
.fila-venta.text-dark,
.fila-compra.text-warning,
.fila-compra.text-dark,
.fila-rma.text-warning,
.fila-rma.text-dark {
	color: inherit !important;
}
body.dark-mode .fila-venta.text-success,
body.dark-mode .fila-venta.text-warning,
body.dark-mode .fila-venta.text-danger,
body.dark-mode .fila-venta.text-dark,
body.dark-mode .fila-compra.text-warning,
body.dark-mode .fila-compra.text-dark,
body.dark-mode .fila-rma.text-warning,
body.dark-mode .fila-rma.text-dark,
[data-bs-theme="dark"] .fila-venta.text-success,
[data-bs-theme="dark"] .fila-venta.text-warning,
[data-bs-theme="dark"] .fila-venta.text-danger,
[data-bs-theme="dark"] .fila-venta.text-dark,
[data-bs-theme="dark"] .fila-compra.text-warning,
[data-bs-theme="dark"] .fila-compra.text-dark,
[data-bs-theme="dark"] .fila-rma.text-warning,
[data-bs-theme="dark"] .fila-rma.text-dark {
	color: #e1e3ea !important;
}
body.dark-mode .fila-venta .text-gray-600,
body.dark-mode .fila-compra .text-gray-600,
body.dark-mode .fila-rma .text-gray-600,
[data-bs-theme="dark"] .fila-venta .text-gray-600,
[data-bs-theme="dark"] .fila-compra .text-gray-600,
[data-bs-theme="dark"] .fila-rma .text-gray-600 {
	color: #a1a5b7 !important;
}
body.dark-mode .highlight-search,
[data-bs-theme="dark"] .highlight-search,
body.dark-mode mark.highlight-search,
[data-bs-theme="dark"] mark.highlight-search,
body.dark-mode .fila-venta .highlight-search,
body.dark-mode .fila-compra .highlight-search,
body.dark-mode .fila-rma .highlight-search,
[data-bs-theme="dark"] .fila-venta .highlight-search,
[data-bs-theme="dark"] .fila-compra .highlight-search,
[data-bs-theme="dark"] .fila-rma .highlight-search {
	background: #fff4cc;
	background-color: #fff4cc;
	color: #665000;
}
.fila-venta.bg-light-success,
.fila-compra.bg-light-success,
.fila-rma.bg-light-success { border-left-color: #50cd89; }
.fila-venta.bg-light-warning,
.fila-compra.bg-light-warning,
.fila-rma.bg-light-warning { border-left-color: #ffc700; }
.fila-venta.bg-light-danger,
.fila-compra.bg-light-danger,
.fila-rma.bg-light-danger { border-left-color: #f1416c; }
.fila-venta.bg-light,
.fila-compra.bg-light,
.fila-rma.bg-light { border-left-color: #A1A5B7; }
.fila-venta.bg-light-dark,
.fila-compra.bg-light-dark,
.fila-rma.bg-light-dark { border-left-color: #7e8299; }

.video-responsive {
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	padding-top: 30px;
	position: relative;
}
.video-responsive iframe, .video-responsive object, .video-responsive embed {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.switch{
	display: grid !important;
}

/* Input image */
.image-input.image-input-outline .image-input-wrapper {
	position: relative;
}

.image-input.image-input-outline [data-kt-image-input-action] {
	position: absolute !important;
	transform: none !important;
	z-index: 1;
	margin: 0;
}

.image-input.image-input-outline [data-kt-image-input-action="change"] {
	top: 4px;
	right: 4px;
	left: auto;
}

.image-input.image-input-outline [data-kt-image-input-action="cancel"],
.image-input.image-input-outline [data-kt-image-input-action="remove"] {
	bottom: 4px;
	right: 4px;
	top: auto;
	left: auto;
}
/* Input image */

.scroll-menu {
	overflow: auto;
	white-space: nowrap;
}

/* Works on Firefox */
.scroll-menu {
	scrollbar-width: thin;
	scrollbar-color: #e2e2e280 #f6f9fa80;
}

/* Works on Chrome, Edge, and Safari */
.scroll-menu::-webkit-scrollbar {
	height: 4px;
}

.scroll-menu::-webkit-scrollbar-track {
	background:  #f6f9fa80;
}

.scroll-menu::-webkit-scrollbar-thumb {
	background-color: #e2e2e280;
}
.noHover{
    pointer-events: none;
}
.no_checkbox > i.jstree-checkbox {
	display: none;
}

.disabled{
  pointer-events: none;
  opacity: 0.5 !important;
}

.box{
	max-width: 300px;
	width: 100%;
	padding: 0 15px;
}

/*Css para el efecto de carga tipo Skeleton*/
.skeleton {
  border-radius: 4px;
  position: relative;
  overflow: hidden;
  background-color: #9B9B9B;
  opacity: 0.1;
  height: 40px;
  margin-bottom: 10px;
  text-align: center;
  display: inline-block;
}

.skeleton-10 {
  width: 10%;
}

.skeleton-20 {
  width: 20%;
}

.skeleton-30 {
  width: 30%;
}

.skeleton-40 {
  width: 40%;
}

.skeleton-50 {
  width: 50%;
}

.skeleton-60 {
  width: 60%;
}

.skeleton-70 {
  width: 70%;
}

.skeleton-80 {
  width: 80%;
}

.skeleton-90 {
  width: 90%;
}

.skeleton-100 {
  width: 100%;
}

.skeleton-loading::before {
  content: '';
  display: block;
  position: absolute;
  left: -150px;
  top: 0;
  height: 100%;
  width: 150px;
  background: linear-gradient(to right, transparent 0%, #e6e4e4  50%, transparent 100%);
  animation: load 1.5s cubic-bezier(0.4, 0.0, 0.2, 1) infinite;
}

@keyframes load {
  from {
      left: -150px;
  }
  to   {
      left: 100%;
  }
}
/*####### Fin loading Skeleton ##############*/

@media (max-width: 400px) {
  #my_camera video {
      max-width: 80%;
      max-height: 80%;
  }

  #results img {
      max-width: 80%;
      max-height: 80%;

  }
}

/* Estilos para los badge de dispersion */
  span.badge-success.dispersion-SI{
    border-radius: .475rem 0 0 .475rem;
  }

  span.badge-warning.dispersion-NO{
    border-radius: 0;
  }

  span.badge-danger.dispersion-ERROR{
    border-radius: 0 .475rem .475rem 0;
  }

  .contenedor-dispersion span{
    font-size: 9px;
  }
  .contenedor-dispersion{
    display: block-ruby;
  }
/* Estilos para los badge de dispersion */

.drawer-jstree{
  overflow-y: scroll;
  max-height: calc(100vh - 280px);
}

.drawer-jstree-permisos{
  overflow-y: scroll;
  max-height: calc(100vh - 360px);
}

.drawer-jstree-plantillas{
  overflow-y: scroll;
  max-height: calc(100vh - 430px);
}

/* Drawer de ayuda: ancho fijo en desktop y completo en movil */
[data-kt-drawer-close="#drawer_close"]{
  width: 500px !important;
  max-width: 500px !important;
}

@media (max-width: 767.98px) {
  [data-kt-drawer-close="#drawer_close"]{
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Evita salto de ancho al hacer hover dentro de ayuda */
[data-kt-drawer-close="#drawer_close"] .hover-scroll-overlay-y{
  overflow-y: auto !important;
  scrollbar-gutter: stable;
}

[data-kt-drawer-close="#drawer_close"] .hover-scroll-overlay-y:hover{
  overflow-y: auto !important;
}

.popover.popover-fotografia {
  max-width: 140px;
}

.popover.popover-fotografia .popover-body {
  overflow: hidden;
  padding: 0.5rem;
}

.popover.popover-fotografia img {
  display: block;
  max-width: 100%;
  height: auto;
}

.en-revision{
  color: #3f4254 !important;
  background-color: #eff2f5 !important;
}

.badge-en-revision{
  position: static;
  margin-top: 0;
}

.fila-venta .pendientes-surtir-usuario .symbol,
.fila-compra .pendientes-entrada-usuario .symbol,
.fila-rma .pendientes-rmas-usuario .symbol{
  top: 0 !important;
  margin-left: 0 !important;
}

.fila-venta .pendientes-surtir-pin-mapa{
  color: inherit;
  text-decoration: none;
  vertical-align: baseline;
}

.fila-venta .pendientes-surtir-pin-mapa:hover{
  color: var(--bs-primary);
}

.fs10{
  font-size: 10px !important;
}

hr.gris{
  border-top: 1px solid #d9dcde
}

.disabledbutton {
  pointer-events: none;
  opacity: 0.4;
}

#contador-notificaciones{
  position: absolute;
  margin-left: 30px;
  margin-top: 5px;
}

.ql-video {
	display: block;
	max-width: 100%;
}
.ql-toolbar.ql-snow button.ql-html-edit {
	width: auto !important;
	padding: 0 8px;
	font-size: 12px;
	font-weight: 600;
	color: #A1A5B7 !important;
	background: none;
	border: none;
}
.ql-toolbar.ql-snow button.ql-html-edit:hover,
.ql-toolbar.ql-snow button.ql-html-edit:focus,
.ql-toolbar.ql-snow button.ql-html-edit.ql-active,
.ql-toolbar.ql-snow button.ql-html-edit:active {
	color: #009EF7 !important;
	background: none;
}
.producto-descripcion-quill > .ql-container {
	min-height: 200px;
}
.producto-descripcion-quill .producto-descripcion-codigo {
	border: 1px solid #EFF2F5;
	border-top: 0;
	border-bottom-left-radius: 0.475rem;
	border-bottom-right-radius: 0.475rem;
	background-color: #ffffff;
	overflow: hidden;
	height: 400px;
	width: 100%;
}
.producto-descripcion-quill .producto-descripcion-codigo .ace_editor,
.producto-descripcion-quill .producto-descripcion-codigo .ace_scroller {
	width: 100% !important;
}
.producto-descripcion-quill .producto-descripcion-codigo .ace_editor {
	height: 100% !important;
	border: 0;
	border-bottom-left-radius: 0.475rem;
	border-bottom-right-radius: 0.475rem;
}
.ql-video.ql-align-center {
	margin: 0 auto;
}
.ql-video.ql-align-right {
	margin: 0 0 0 auto;
}
.ql-bg-black {
	background-color: #000;
}

.ql-bg-red {
	background-color: #e60000;
}
.ql-bg-orange {
	background-color: #f90;
}
.ql-bg-yellow {
	background-color: #ff0;
}
.ql-bg-green {
	background-color: #008a00;
}
.ql-bg-blue {
	background-color: #06c;
}
.ql-bg-purple {
	background-color: #93f;
}
.ql-color-white {
	color: #fff;
}
.ql-color-red {
	color: #e60000;
}
.ql-color-orange {
	color: #f90;
}
.ql-color-yellow {
	color: #ff0;
}
.ql-color-green {
	color: #008a00;
}
.ql-color-blue {
	color: #06c;
}
.ql-color-purple {
	color: #93f;
}
.ql-color-gray {
	color: rgb(161, 161, 161);
}
.ql-font-serif {
	font-family: Georgia, Times New Roman, serif;
}
.ql-font-monospace {
	font-family: Monaco, Courier New, monospace;
}
.ql-size-small {
	font-size: 0.75em;
}
.ql-size-large {
	font-size: 1.5em;
}
.ql-size-huge {
	font-size: 2.5em;
}
.ql-direction-rtl {
	direction: rtl;
	text-align: inherit;
}
.ql-align-center {
	text-align: center;
}
.ql-align-justify {
	text-align: justify;
}
.ql-align-right {
	text-align: right;
}

.dataTables_paginate .paginate_button {
  font-weight: 500;
  cursor: pointer;
  color: #5e6278;
  font-size: 13px !important;
}

.dataTables_paginate .paginate_button:hover {
  color: #009ef7;
}

.dataTables_paginate .paginate_input {
  background-color: #f5f8fa;
  color: #5e6278;
  padding: 0.55rem 0.75rem;
  border-radius: 0.475rem;
  font-size: 1.1rem;
  border: 0px;
  appearance: none;
  width: 60px;
  display: inline;
}

.dataTables_paginate .paginate_input:focus {
  border: 0px;
  outline: none !important;
  border-color: #f5f8fa;
}

body.dark-mode .dataTables_paginate .paginate_input,
[data-bs-theme="dark"] .dataTables_paginate .paginate_input {
  background-color: #1b1b29;
  border: 1px solid #1b1b29;
  color: #e1e3ea;
}

body.dark-mode .dataTables_paginate .paginate_input:focus,
[data-bs-theme="dark"] .dataTables_paginate .paginate_input:focus {
  outline: none !important;
  box-shadow: 0 0 0 1px rgba(80, 205, 137, 0.25);
}

.dataTables_paginate .paginate_button:hover{
  color: #009ef7 !important;
}

#editor {
  margin: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

/* Select2 en modales: dropdown se posiciona con position:fixed desde JS (coordenadas de vista) */
.modal .select2-dropdown {
  z-index: 1056;
}

.utilidad-flotante-precio-lista {
  position: fixed;
  z-index: 1070;
  min-width: 210px;
  max-width: 320px;
  pointer-events: none;
}

.utilidad-flotante-precio-lista--modal {
  min-width: 0;
  max-width: none;
  box-sizing: border-box;
}

/* Asegurar que el input de búsqueda sea visible, focusable y que el cursor (caret) se vea */
.modal .select2-dropdown .select2-search__field {
  opacity: 1;
  position: relative;
  z-index: 1;
  caret-color: currentColor;
  color: inherit;
}
.modal .select2-dropdown .select2-search {
  cursor: text;
}

/* Dark mode (clase Metronic en body o tema Bootstrap): .btn-close usa SVG negro; sin esto no se ve en cabeceras/fondos oscuros */
body.dark-mode .btn-close,
[data-bs-theme="dark"] .btn-close {
  filter: var(--bs-btn-close-white-filter, invert(1) grayscale(100%) brightness(200%));
}

/* Los estilos del splash (html.odp-splash-* body) tienen especificidad (0,1,2) y persisten
   durante toda la sesión, superando los bundles de tema (0,0,1). !important los anula. */
body.dark-mode {
  background-color: #151521 !important;
}
html.odp-splash-dark body:not(.dark-mode) {
  background-color: #f5f8fa !important;
}
body:not(.dark-mode) {
  background-color: #f5f8fa !important;
}
html:not(.odp-splash-dark) {
  background-color: #f5f8fa !important;
}

/* Toolbar global de vistas Vue (kt_toolbar) con fondo blanco como productivo */
body:not(.dark-mode) #kt_toolbar {
  background-color: #ffffff !important;
}

/* Menú resumen: el enlace debe ocupar todo el ancho del ítem (Metronic lo deja al ancho del texto) */
#menu-resumen > .menu-item > .menu-link,
#menu-extendido > .menu-item > .menu-link {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Toasts: opacos y colores sólidos de Metronic */
#toastr-container > div,
.toastr {
  opacity: 1 !important;
}
.toastr.toastr-success {
  background-color: #50CD89 !important;
  color: #fff !important;
}
.toastr.toastr-error {
  background-color: #F1416C !important;
  color: #fff !important;
}
.toastr.toastr-warning {
  background-color: #FFC700 !important;
  color: #fff !important;
}
.toastr.toastr-info {
  background-color: #7239EA !important;
  color: #fff !important;
}

.producto-linea-thumb {
  position: relative;
  width: 36px;
  height: 36px;
  border-radius: 0.35rem;
  background: var(--bs-gray-100, #f5f8fa);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.producto-linea-thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.dark-mode .producto-linea-thumb {
  background: #1e1e2d;
}

.producto-linea-thumb .numero-partida {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 1px 3px;
  border-radius: 0.2rem 0 0;
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  font-size: 0.625rem;
  font-weight: 600;
  line-height: 1.15;
  pointer-events: none;
  user-select: none;
}

.producto-linea-sku {
  color: var(--bs-gray-600, #7e8299);
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1.3;
  word-break: break-word;
}
.producto-linea-sku a {
  color: inherit;
  text-decoration: none;
}
.producto-linea-sku a:hover,
.producto-linea-sku a:focus {
  color: inherit;
  text-decoration: none;
}
.producto-linea-existencias {
  font-weight: 400;
}
body.dark-mode .producto-linea-sku {
  color: #9899ac;
}

.popover:has(.popover-productos-documento) {
  --bs-popover-max-width: 22rem;
  max-width: 22rem;
  width: 22rem;
}
.popover.popover-tablero-entrega,
.popover:has(.popover-tablero-entrega-totales) {
  --bs-popover-max-width: 24rem;
  min-width: 24rem;
  max-width: 24rem;
}
.popover.popover-tablero-entrega .popover-body,
.popover:has(.popover-tablero-entrega-totales) .popover-body {
  padding: 0.75rem 0.9rem;
}
.popover-tablero-entrega-totales > .d-flex {
  margin-bottom: 0.15rem;
}
.popover-tablero-entrega-totales > .d-flex:last-child {
  margin-bottom: 0;
}
.modal-venta-entrega-evidencia .modal-body {
  min-height: 12rem;
}
.modal-venta-entrega-evidencia .venta-entrega-evidencia-galeria-col {
  margin-top: 1rem;
  padding-top: 0.25rem;
  max-height: min(24rem, 50vh);
  overflow-y: auto;
}
.modal-venta-entrega-evidencia .entrega-chofer-evidencia-img {
  width: 120px;
  height: 120px;
}
@media (min-width: 768px) {
  .modal-venta-entrega-evidencia .venta-entrega-evidencia-datos-col:first-child {
    padding-right: 1.25rem;
  }
  .modal-venta-entrega-evidencia .venta-entrega-evidencia-datos-col:last-child {
    padding-left: 0.25rem;
  }
}
.popover:has(.popover-productos-documento) .popover-body {
  padding: 0.65rem 0.75rem;
  overflow: hidden;
  max-width: 100%;
}
.popover-productos-documento {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.popover-productos-documento__item + .popover-productos-documento__item {
  margin-top: 0.45rem;
  padding-top: 0.45rem;
  border-top: 1px dashed var(--bs-gray-200, #eff2f5);
}
.popover-productos-documento__item {
  display: flex;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.popover-productos-documento__item > .d-flex {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}
.popover-productos-documento__cantidad {
  flex-shrink: 0;
  white-space: nowrap;
  margin-right: 0.35rem;
}
.popover-productos-documento .text-truncate {
  min-width: 0;
  flex: 1 1 0%;
}
.popover-productos-documento .producto-linea-meta {
  flex-wrap: nowrap;
  min-width: 0;
  overflow: hidden;
}
.popover-productos-documento .producto-linea-sku {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
.popover-productos-documento__mas {
  margin-top: 0.45rem;
  padding-top: 0.45rem;
  border-top: 1px dashed var(--bs-gray-200, #eff2f5);
  font-size: 0.8rem;
}
.popover-productos-documento .producto-linea-thumb {
  width: 36px;
  height: 36px;
  overflow: visible;
}
.popover-productos-documento .producto-linea-thumb img {
  border-radius: 0.35rem;
}
.popover-productos-documento .producto-linea-thumb .numero-partida {
  white-space: nowrap;
}
body.dark-mode .popover-productos-documento__item + .popover-productos-documento__item,
body.dark-mode .popover-productos-documento__mas {
  border-top-color: #2b2b40;
}
.modal-mapa-entrega {
  max-width: 1100px;
}
.modal-mapa-entrega .modal-body {
  min-height: 22rem;
}
.modal-mapa-entrega-productos {
  max-height: min(36rem, 62vh);
  overflow-y: auto;
  padding-right: 0.25rem;
}
@media (min-width: 768px) {
  .modal-mapa-entrega-productos {
    border-right: 1px dashed var(--bs-gray-200, #eff2f5);
    padding-right: 1.5rem;
  }
  .modal-mapa-entrega-datos {
    padding-left: 0.5rem;
  }
}
body.dark-mode .modal-mapa-entrega-productos {
  border-right-color: #2b2b40;
}

@media (max-width: 767.98px) {
  .draggable-zone > .row.draggable > [class*="col-"]:not(:first-child):not(.separator) {
    margin-top: 0.75rem;
  }
}

.popover-impuestos-dashboard {
  max-width: 280px;
}
.popover-impuestos-dashboard .popover-body {
  min-width: 200px;
}

.select2-producto {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  min-width: 0;
  padding: 0.15rem 0;
}
.select2-producto__thumb {
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  border-radius: 0.35rem;
  background: var(--bs-gray-100, #f5f8fa);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.select2-producto__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.select2-producto__texto {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
  flex: 1 1 auto;
}
.select2-producto__nombre {
  font-weight: 500;
  color: var(--bs-gray-900, #181c32);
  line-height: 1.25;
  word-break: break-word;
}
.select2-producto__sku-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.4rem;
}
.select2-producto__sku {
  color: var(--bs-gray-600, #7e8299);
  font-size: 0.8rem;
  line-height: 1.3;
}
.select2-producto__existencias {
  color: var(--bs-gray-500, #a1a5b7);
  font-size: 0.8rem;
  line-height: 1.3;
  font-variant-numeric: tabular-nums;
}
.select2-producto__existencias::before {
  content: "·";
  margin-right: 0.35rem;
  color: var(--bs-gray-400, #b5b5c3);
}
.select2-producto__precio {
  font-weight: 500;
  color: var(--bs-primary, #009ef7);
  font-size: 0.9rem;
  line-height: 1.2;
}
.select2-container--default .select2-results__option--highlighted .select2-producto__nombre,
.select2-container--default .select2-results__option--highlighted .select2-producto__sku,
.select2-container--default .select2-results__option--highlighted .select2-producto__existencias,
.select2-container--default .select2-results__option--highlighted .select2-producto__existencias::before,
.select2-container--default .select2-results__option--highlighted .select2-producto__precio {
  color: #fff;
}
.select2-container--default .select2-results__option--highlighted .select2-producto__thumb {
  background: rgba(255, 255, 255, 0.2);
}
.select2-producto--seleccion {
  align-items: center;
  max-width: 100%;
  padding: 0;
}
.select2-producto--seleccion .select2-producto__thumb {
  flex-basis: 28px;
  width: 28px;
  height: 28px;
}
.select2-producto--seleccion .select2-producto__nombre,
.select2-producto--seleccion .select2-producto__sku {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select2-container--default .select2-selection--single:has(.select2-producto--seleccion) {
  height: auto;
  min-height: calc(1.5em + 1.5rem + 2px);
  display: flex;
  align-items: center;
}
.select2-container--default .select2-selection--single:has(.select2-producto--seleccion) .select2-selection__rendered {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  display: flex;
  align-items: center;
}
body.dark-mode .select2-producto__thumb {
  background: #1e1e2d;
}
body.dark-mode .select2-producto__nombre {
  color: #fff;
}
body.dark-mode .select2-producto__sku,
body.dark-mode .select2-producto__existencias,
body.dark-mode .select2-producto__existencias::before {
  color: #9899ac;
}

.buscador-producto-scan__dropdown {
  display: none;
  position: fixed;
  max-height: 320px;
  overflow-y: auto;
  background: #fff;
  border: 1px solid var(--bs-gray-300, #e4e6ef);
  border-radius: 0.475rem;
  box-shadow: 0 0.5rem 1.5rem rgba(0, 0, 0, 0.12);
  z-index: 2000;
  padding: 0.35rem 0;
}
.buscador-producto-scan__dropdown.is-open {
  display: block;
}
.buscador-producto-scan__item {
  display: block;
  width: 100%;
  padding: 0.45rem 0.85rem;
  cursor: pointer;
  background: transparent;
  border: 0;
  text-align: left;
}
.buscador-producto-scan__item.is-active,
.buscador-producto-scan__item:hover {
  background: var(--bs-primary, #009ef7);
}
.buscador-producto-scan__item.is-active .select2-producto__nombre,
.buscador-producto-scan__item.is-active .select2-producto__sku,
.buscador-producto-scan__item.is-active .select2-producto__existencias,
.buscador-producto-scan__item.is-active .select2-producto__existencias::before,
.buscador-producto-scan__item.is-active .select2-producto__precio,
.buscador-producto-scan__item:hover .select2-producto__nombre,
.buscador-producto-scan__item:hover .select2-producto__sku,
.buscador-producto-scan__item:hover .select2-producto__existencias,
.buscador-producto-scan__item:hover .select2-producto__existencias::before,
.buscador-producto-scan__item:hover .select2-producto__precio {
  color: #fff;
}
.buscador-producto-scan__item.is-active .select2-producto__thumb,
.buscador-producto-scan__item:hover .select2-producto__thumb {
  background: rgba(255, 255, 255, 0.2);
}
.buscador-producto-scan__vacio,
.buscador-producto-scan__cargando {
  padding: 0.65rem 0.85rem;
  color: var(--bs-gray-500, #a1a5b7);
  font-size: 0.9rem;
}
body.dark-mode .buscador-producto-scan__dropdown {
  background: #1e1e2d;
  border-color: #323248;
}

.card .card-header .card-toolbar.card-toolbar-productos {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.5rem;
  min-width: 0;
  max-width: 100%;
}
.card .card-header .card-toolbar.card-toolbar-productos .buscador-producto-scan-wrap {
  flex: 1 1 0%;
  min-width: 0;
  width: auto;
  max-width: 100%;
}
.card .card-header .card-toolbar.card-toolbar-productos .buscador-producto-scan-wrap .form-control {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}
.card .card-header .card-toolbar.card-toolbar-productos #agregar-producto {
  flex: 0 0 auto;
  flex-shrink: 0;
  white-space: nowrap;
}
@media (max-width: 991.98px) {
  .card .card-header .card-toolbar.card-toolbar-productos {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0;
  }
}
@media (max-width: 575.98px) {
  .card .card-header .card-toolbar.card-toolbar-productos #agregar-producto {
    padding-left: 0.65rem;
    padding-right: 0.65rem;
  }
}

/*
 * iOS hace zoom al enfocar un campo con letra menor a 16px y el <meta viewport>
 * no lo evita: Safari ignora maximum-scale desde iOS 10.
 */
@media (pointer: coarse) {
	.form-control:not(.odp-campo-fecha),
	input:not([type='checkbox']):not([type='radio']):not(.odp-campo-fecha),
	select,
	textarea {
		font-size: 16px;
	}
}

.agenda-evento {
	display: flex;
	align-items: center;
	min-width: 0;
	gap: 0.15rem;
}
.agenda-evento-avatares {
	display: flex;
	flex-shrink: 0;
	align-items: center;
}
.agenda-evento-texto {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

@media (max-width: 767.98px) {
	#calendario .fc-daygrid-event .agenda-evento-avatares {
		display: none;
	}
	#calendario .fc-toolbar-title {
		font-size: 1.05rem;
	}
	#calendario .fc-button {
		padding: 0.4rem 0.65rem;
		font-size: 0.85rem;
	}
	#calendario .fc-col-header-cell .fc-col-header-cell-cushion {
		font-size: 0.85rem;
	}
	#calendario .fc-daygrid-event {
		font-size: 0.7rem;
	}
	#calendario .fc-list-event-title,
	#calendario .fc-list-event-time {
		font-size: 0.9rem;
	}
	#calendario .fc-list-table td {
		padding: 0.55rem 0.65rem;
	}
}

.mapa-domicilio-canvas {
	width: 100%;
	border-radius: 0.65rem;
	overflow: hidden;
	background: #eef3f7;
}
#modal-mapa-domicilio.modal,
#modal-mapa-domicilio .modal-dialog,
#modal-mapa-domicilio .modal-content {
	transform: none !important;
}
.mapa-domicilio-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 1.5rem;
	text-align: center;
	color: #7e8299;
}
.dark-mode .mapa-domicilio-canvas {
	background: #1e1e2d;
}
.dark-mode .mapa-domicilio-placeholder {
	color: #92929f;
}
.mapa-clientes-canvas {
	width: 100%;
	height: 100%;
	min-height: 280px;
	border-radius: 0;
	overflow: hidden;
	background: #eef3f7;
}
.mapa-clientes-canvas .leaflet-container,
.mapa-domicilio-canvas .leaflet-container {
	width: 100%;
	height: 100%;
	font-family: inherit;
}
#kt_toolbar .mapa-clientes-proveedor {
	width: 170px;
	min-width: 170px;
}
#kt_toolbar .mapa-clientes-proveedor .select2-container {
	width: 100% !important;
}
.mapa-clientes-popup,
.mapa-clientes-popup * {
	box-sizing: border-box;
}
.mapa-clientes-popup {
	position: relative;
	overflow: visible;
	width: 276px;
	max-width: 276px;
	padding: 1.25rem;
	font-family: var(--bs-font-sans-serif);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #3f4254;
	text-align: left;
	word-wrap: break-word;
}
.mapa-clientes-popup-nombre {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 0.35rem;
	margin: 0 0 0.5rem 0;
	padding-right: 0;
	font-weight: 500;
	font-size: 1rem;
	line-height: 1.5;
	color: #181c32;
}
.mapa-clientes-popup-nombre .mapa-clientes-popup-link {
	flex: 1 1 auto;
	min-width: 0;
}
.mapa-clientes-popup-cerrar {
	display: block;
	margin-left: auto;
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #a1a5b7;
	font-size: 16px;
	line-height: 24px;
	font-family: Tahoma, Verdana, sans-serif;
	font-weight: 400;
	cursor: pointer;
	text-align: center;
}
.mapa-clientes-popup-cerrar:hover {
	color: #5e6278;
}
.mapa-clientes-popup-link {
	font-weight: 500;
	color: #009ef7;
	text-decoration: none !important;
}
.mapa-clientes-popup-link:hover {
	color: #006dab;
	text-decoration: none !important;
}
.mapa-clientes-popup-maps {
	position: static;
	top: auto;
	right: auto;
	z-index: auto;
	width: 1.5rem !important;
	height: 1.5rem !important;
	min-width: 1.5rem;
	min-height: 1.5rem;
	margin: 0 0 0 0.35rem;
	padding: 0 !important;
	border: 0;
	border-radius: 50%;
	background: #d4eef6 !important;
	color: #3f6f7d !important;
	text-decoration: none !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	vertical-align: middle;
	flex-shrink: 0;
	line-height: 0;
	box-shadow: none;
	overflow: hidden;
}
.mapa-clientes-popup-maps-ico {
	display: block !important;
	width: 0.8rem !important;
	height: 0.8rem !important;
	background-color: currentColor;
	pointer-events: none;
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6'/%3E%3Cpolyline points='15 3 21 3 21 9'/%3E%3Cline x1='10' y1='14' x2='21' y2='3'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
}
.mapa-clientes-popup-maps:hover,
.mapa-clientes-popup-maps:focus {
	background: #bfe6f2 !important;
	color: #2f5966 !important;
	text-decoration: none !important;
}
.mapa-clientes-popup-meta,
.mapa-clientes-popup-dir {
	color: #7e8299;
	font-size: 1rem;
	line-height: 1.5;
}
.mapa-clientes-popup-dir {
	margin: 0.25rem 0 0.75rem;
}
.mapa-clientes-popup.mapa-pendientes-surtir-popup {
	width: 340px;
	max-width: 340px;
	padding: 1.25rem;
}
.mapa-pendientes-surtir-popup .mapa-clientes-popup-nombre {
	margin-right: 1.25rem;
}
.mapa-pendientes-surtir-popup .mapa-clientes-popup-dir .mapa-clientes-popup-maps {
	display: inline-flex !important;
	vertical-align: -0.2em;
}
.mapa-pendientes-surtir-productos {
	max-height: 14rem;
	overflow-y: auto;
	margin: 0.25rem 0 0;
	padding-right: 0.15rem;
}
.mapa-pendientes-surtir-producto {
	margin-bottom: 0.65rem;
	word-break: break-word;
}
.mapa-pendientes-surtir-producto:last-child {
	margin-bottom: 0;
}
.mapa-pendientes-surtir-producto-nombre {
	color: #3f4254;
	line-height: 1.35;
}
.mapa-pendientes-surtir-totales {
	font-size: 1rem;
	line-height: 1.5;
}
.mapa-pendientes-surtir-totales .row {
	margin-bottom: 0.15rem;
}
.mapa-pendientes-surtir-totales .row:last-child {
	margin-bottom: 0;
}
.mapa-pendientes-surtir-totales .text-gray-800 {
	white-space: nowrap;
}
.mapa-clientes-popup-resumen {
	margin: 0;
	padding-top: 0.75rem;
	border-top: 1px solid #f5f8fa;
}
.mapa-clientes-popup .row {
	display: flex;
	flex-wrap: wrap;
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	width: auto;
	margin-top: 0;
	margin-right: calc(-0.5 * var(--bs-gutter-x));
	margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.mapa-clientes-popup .row > [class*="col-"] {
	flex-shrink: 0;
	max-width: 100%;
	padding-right: calc(var(--bs-gutter-x) * 0.5);
	padding-left: calc(var(--bs-gutter-x) * 0.5);
}
.mapa-clientes-popup .col-5 {
	flex: 0 0 auto;
	width: 41.66666667%;
}
.mapa-clientes-popup .col-6 {
	flex: 0 0 auto;
	width: 50%;
}
.mapa-clientes-popup .col-7 {
	flex: 0 0 auto;
	width: 58.33333333%;
}
.mapa-clientes-popup .col-12 {
	flex: 0 0 auto;
	width: 100%;
}
.mapa-clientes-popup .text-end {
	text-align: right;
}
.mapa-clientes-popup .text-gray-400 {
	color: #a1a5b7 !important;
}
.mapa-clientes-popup .text-gray-800 {
	color: #3f4254 !important;
}
.mapa-clientes-popup h6 {
	margin-top: 0;
	margin-bottom: 0.5rem;
	font-size: 1.075rem;
	font-weight: 600;
	line-height: 1.2;
	color: #181c32;
}
.mapa-clientes-popup .text-muted {
	color: #a1a5b7 !important;
}
.mapa-clientes-popup .text-gray-600 {
	color: #7e8299 !important;
}
.mapa-clientes-popup-cargando {
	color: #7e8299;
	border-top: none;
	padding-top: 0.15rem;
}
.mapa-clientes-canvas .leaflet-popup {
	text-align: left;
}
.mapa-clientes-canvas .leaflet-popup-content-wrapper {
	padding: 0;
	background: #fff;
	color: #3f4254;
	border: 1px solid #fff;
	border-radius: 0.475rem;
	box-shadow: 0 0 50px 0 rgba(82, 63, 105, 0.15);
}
.mapa-clientes-canvas .leaflet-popup-content {
	margin: 0;
	width: auto !important;
	min-width: 0;
	font-size: 1rem;
	line-height: 1.5;
	font-family: var(--bs-font-sans-serif);
}
.mapa-clientes-canvas .leaflet-popup-tip {
	background: #fff;
	box-shadow: none;
}
.mapa-clientes-canvas.leaflet-container a.leaflet-popup-close-button,
.mapa-clientes-canvas .leaflet-container a.leaflet-popup-close-button {
	display: none !important;
}
.mapa-clientes-canvas.leaflet-container a.leaflet-popup-close-button:hover,
.mapa-clientes-canvas .leaflet-container a.leaflet-popup-close-button:hover {
	color: #5e6278;
}
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link:link,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link:visited,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link:link,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link:visited,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link:link,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link:visited {
	color: #009ef7 !important;
	text-decoration: none !important;
	background: none;
}
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link:hover,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link:focus,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link:hover,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link:focus,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link:hover,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link:focus {
	color: #006dab !important;
	text-decoration: none !important;
}
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps:link,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps:visited,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-maps,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps:link,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps:visited {
	background: #d4eef6 !important;
	color: #3f6f7d !important;
	text-decoration: none !important;
}
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps:hover,
.mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps:focus,
.mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-maps:hover,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps:hover,
.mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps:focus {
	background: #bfe6f2 !important;
	color: #2f5966 !important;
	text-decoration: none !important;
}
.mapa-clientes-canvas .gm-style-iw-c {
	padding: 0 !important;
	background: #fff !important;
	border: 1px solid #fff !important;
	border-radius: 0.475rem !important;
	box-shadow: 0 0 50px 0 rgba(82, 63, 105, 0.15) !important;
	max-width: none !important;
	overflow: visible !important;
	font-family: var(--bs-font-sans-serif) !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	display: block !important;
}
.mapa-clientes-canvas .gm-style-iw-d {
	overflow: hidden !important;
	max-height: none !important;
	padding: 0 !important;
	position: relative;
	z-index: 1;
}
body.pagina-mapa-clientes-activa .gm-style-iw-ch,
body.pagina-mapa-clientes-activa .gm-style-iw-chr,
body.pagina-mapa-clientes-activa button.gm-ui-hover-effect,
.mapa-clientes-canvas .gm-style-iw-ch,
.mapa-clientes-canvas .gm-style-iw-chr,
.mapa-clientes-canvas button.gm-ui-hover-effect {
	display: none !important;
}
.mapa-clientes-canvas button.gm-ui-hover-effect > span,
.mapa-clientes-canvas button.gm-ui-hover-effect img {
	display: none !important;
}
.mapa-clientes-canvas button.gm-ui-hover-effect::after {
	content: "\00d7";
	display: block;
	width: 24px;
	height: 24px;
	font-size: 16px !important;
	line-height: 24px !important;
	font-family: Tahoma, Verdana, sans-serif !important;
	font-weight: 400 !important;
	color: #a1a5b7 !important;
	-webkit-text-fill-color: #a1a5b7 !important;
	text-align: center;
}
.mapa-clientes-canvas button.gm-ui-hover-effect:hover,
.mapa-clientes-canvas button.gm-ui-hover-effect:hover::after {
	color: #5e6278 !important;
	-webkit-text-fill-color: #5e6278 !important;
}
.dark-mode .mapa-clientes-popup {
	color: #e4e6ef;
}
.dark-mode .mapa-clientes-popup h6 {
	color: #e4e6ef;
}
.dark-mode .mapa-clientes-popup-link,
.dark-mode .mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link,
.dark-mode .mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link,
.dark-mode .mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link {
	color: #009ef7 !important;
}
.dark-mode .mapa-clientes-popup-link:hover,
.dark-mode .mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-link:hover,
.dark-mode .mapa-clientes-canvas .leaflet-container a.mapa-clientes-popup-link:hover,
.dark-mode .mapa-clientes-canvas .gm-style a.mapa-clientes-popup-link:hover {
	color: #006dab !important;
}
.dark-mode .mapa-clientes-popup-maps,
.dark-mode .mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps,
.dark-mode .mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps {
	background: #1b3a44 !important;
	color: #9ed4e4 !important;
}
.dark-mode .mapa-clientes-popup-maps:hover,
.dark-mode .mapa-clientes-canvas.leaflet-container a.mapa-clientes-popup-maps:hover,
.dark-mode .mapa-clientes-canvas .gm-style a.mapa-clientes-popup-maps:hover {
	background: #234a56 !important;
	color: #c5eaf3 !important;
}
.dark-mode .mapa-clientes-popup-meta,
.dark-mode .mapa-clientes-popup-dir,
.dark-mode .mapa-clientes-popup-cargando {
	color: #92929f;
}
.dark-mode .mapa-clientes-popup .text-muted,
.dark-mode .mapa-clientes-popup .text-gray-600 {
	color: #92929f !important;
}
.dark-mode .mapa-clientes-popup-resumen {
	border-top-color: #2b2b40;
}
.dark-mode .mapa-pendientes-surtir-producto-nombre,
.dark-mode .mapa-clientes-popup .text-gray-800 {
	color: #e4e6ef !important;
}
.dark-mode .mapa-clientes-popup .text-gray-400 {
	color: #92929f !important;
}
.dark-mode .mapa-clientes-popup .separator {
	border-bottom-color: #2b2b40;
}
.dark-mode .mapa-clientes-canvas .leaflet-popup-content-wrapper,
.dark-mode .mapa-clientes-canvas .leaflet-popup-tip {
	background: #1e1e2d;
	color: #e4e6ef;
	border-color: #1e1e2d;
}
.dark-mode .mapa-clientes-canvas .gm-style-iw-c {
	background: #1e1e2d !important;
	border-color: #1e1e2d !important;
}
.dark-mode .mapa-clientes-canvas .gm-style-iw-t::after,
.dark-mode .mapa-clientes-canvas .gm-style-iw-tc::after {
	background: #1e1e2d !important;
}
.dark-mode .mapa-clientes-canvas {
	background: #1e1e2d;
}
body.pagina-mapa-clientes-activa {
	overflow: hidden;
}
body.pagina-mapa-clientes-activa #kt_toolbar {
	margin-bottom: 0 !important;
}
body.pagina-mapa-clientes-activa #kt_footer {
	display: none !important;
}
body.pagina-mapa-clientes-activa #kt_wrapper {
	height: 100dvh;
	overflow: hidden;
}
body.pagina-mapa-clientes-activa #kt_content {
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
	height: auto;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}
body.pagina-mapa-clientes-activa #kt_post.pagina-mapa-clientes {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0;
	overflow: hidden;
}
body.pagina-mapa-clientes-activa #kt_post.pagina-mapa-clientes #kt_content_container,
body.pagina-mapa-clientes-activa #kt_post.pagina-mapa-clientes .card,
body.pagina-mapa-clientes-activa #kt_post.pagina-mapa-clientes .card-body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	height: 100%;
	padding: 0 !important;
	margin: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	max-width: none;
	overflow: hidden;
}
body.pagina-mapa-clientes-activa .mapa-clientes-canvas {
	flex: 1 1 auto;
	height: 100%;
	min-height: 0;
}
body.pagina-mapa-clientes-activa.mapa-clientes-google .dca__fab {
	transform: translateY(-5rem);
}
@media (max-width: 991.98px) {
	body.pagina-mapa-clientes-activa #kt_toolbar .page-title {
		display: none !important;
	}
	body.pagina-mapa-clientes-activa #kt_toolbar_container {
		justify-content: flex-start;
		flex-wrap: nowrap;
	}
	body.pagina-mapa-clientes-activa #kt_toolbar .scroll-menu {
		flex: 1 1 auto;
		flex-wrap: nowrap;
		min-width: 0;
		width: 100%;
		margin-left: 0;
		overflow-x: auto;
	}
	body.pagina-mapa-clientes-activa #kt_toolbar .scroll-menu > * {
		flex-shrink: 0;
	}
	body.pagina-mapa-clientes-activa #kt_toolbar .mapa-clientes-proveedor {
		width: 140px;
		min-width: 140px;
	}
}
@media (max-width: 768px) {
	body.pagina-mapa-clientes-activa.mapa-clientes-google .dca__fab {
		transform: none;
		bottom: 6rem;
	}
}

.mapa-entregas-shell {
	position: relative;
	flex: 1 1 auto;
	min-height: 0;
	overflow: hidden;
	--mapa-entregas-carga-toggle-w: 2.75rem;
	--mapa-entregas-carga-w: min(420px, calc(100% - var(--mapa-entregas-carga-toggle-w)));
}
.mapa-entregas-carga-panel {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: var(--mapa-entregas-carga-w);
	max-width: 420px;
	z-index: 1045;
	background-color: var(--bs-body-bg);
	border-left: 1px solid var(--bs-border-color, #eff2f5);
	box-shadow: -8px 0 32px rgba(0, 0, 0, 0.12);
	transform: translateX(100%);
	transition: transform 0.28s ease;
	pointer-events: none;
}
.mapa-entregas-shell.mapa-entregas-carga-abierta .mapa-entregas-carga-panel {
	transform: translateX(0);
	pointer-events: auto;
}
.mapa-entregas-carga-panel-inner {
	height: 100%;
	min-height: 0;
}
.mapa-entregas-carga-contenido {
	min-height: 0;
	-webkit-overflow-scrolling: touch;
}
.mapa-entregas-carga-backdrop {
	position: absolute;
	inset: 0;
	z-index: 1040;
	background: rgba(0, 0, 0, 0.45);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.28s ease, visibility 0.28s ease;
}
.mapa-entregas-shell.mapa-entregas-carga-abierta .mapa-entregas-carga-backdrop {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
.mapa-entregas-carga-toggle {
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1046;
	width: var(--mapa-entregas-carga-toggle-w);
	min-height: 5.5rem;
	border-radius: 0.65rem 0 0 0.65rem;
	padding: 0;
	transform: translateY(-50%);
	transition: right 0.28s ease;
}
.mapa-entregas-shell.mapa-entregas-carga-abierta .mapa-entregas-carga-toggle {
	right: var(--mapa-entregas-carga-w);
}
.mapa-entregas-carga-toggle-icon--close {
	display: none;
}
.mapa-entregas-shell.mapa-entregas-carga-abierta .mapa-entregas-carga-toggle-icon--open {
	display: none;
}
.mapa-entregas-shell.mapa-entregas-carga-abierta .mapa-entregas-carga-toggle-icon--close {
	display: inline-flex;
}
.mapa-entregas-carga-productos .entrega-chofer-producto + .entrega-chofer-producto {
	margin-top: 0.75rem;
	padding-top: 0.75rem;
	border-top: 1px dashed var(--bs-border-color, #eff2f5);
}
body.dark-mode .mapa-entregas-carga-toggle,
[data-bs-theme="dark"] .mapa-entregas-carga-toggle {
	border-color: var(--bs-border-color) !important;
}
body.dark-mode .mapa-entregas-carga-toggle .svg-icon,
[data-bs-theme="dark"] .mapa-entregas-carga-toggle .svg-icon {
	color: var(--bs-gray-500) !important;
}
body.mapa-entregas-carga-abierta.pagina-mapa-clientes-activa {
	overflow: hidden;
}

.mapa-geocerca-ruta{
	height: 420px;
	border-radius: 0.475rem;
	overflow: hidden;
	border: 1px solid var(--kt-gray-300, #eff2f5);
}
.mapa-pin-desk,
.mapa-entregas-unidad-icono,
.geocerca-pin-domicilio,
.geocerca-vertice,
.geocerca-vertice-medio{
	background: transparent !important;
	border: none !important;
}
.mapa-pin-desk svg,
.mapa-entregas-unidad-icono svg,
.geocerca-pin-domicilio svg{
	display: block;
	filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .35));
}
.mapa-clientes-popup.mapa-entregas-unidad-popup {
	width: 248px;
	max-width: 248px;
	padding: 1.25rem 1.1rem 1rem;
}
.mapa-entregas-unidad-popup .mapa-pendientes-surtir-totales .text-gray-800 {
	white-space: normal;
}
.mapa-entregas-unidad-estado {
	display: inline-block;
	width: 0.55rem;
	height: 0.55rem;
	border-radius: 50%;
	flex-shrink: 0;
	align-self: center;
}
.mapa-entregas-unidad-estado--on {
	background: #50cd89;
}
.mapa-entregas-unidad-estado--off {
	background: #a1a5b7;
}
.mapa-entregas-unidad-popup .mapa-clientes-popup-nombre {
	align-items: center;
}
.mapa-entregas-unidad-reporte {
	margin-top: 0.05rem;
}
.mapa-entregas-unidad-popup .mapa-entregas-unidad-reporte-estado,
.mapa-pendientes-surtir-totales .mapa-entregas-unidad-reporte-estado {
	display: block;
	white-space: normal;
	text-align: center;
	font-size: 0.875rem;
	line-height: 1.35;
	margin-top: 0.25rem;
}
.geocerca-vertice-punto{
	display: block;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #fff;
	border: 3px solid #3E97FF;
	box-shadow: 0 1px 4px rgba(0,0,0,.35);
	cursor: move;
	box-sizing: border-box;
}
.geocerca-vertice-medio .geocerca-vertice-punto{
	width: 10px;
	height: 10px;
	border-width: 2px;
	opacity: .85;
	cursor: pointer;
}
.geocerca-otra-ruta-label{
	background: rgba(255, 255, 255, .9);
	border: none;
	border-radius: 4px;
	box-shadow: 0 1px 4px rgba(0, 0, 0, .2);
	color: #3F4254;
	font-size: 11px;
	font-weight: 600;
	padding: 2px 6px;
	white-space: nowrap;
	pointer-events: none;
}
.geocerca-otra-ruta-label::before{
	display: none;
}
.dark-mode .geocerca-otra-ruta-label{
	background: rgba(30, 34, 45, .9);
	color: #F5F8FA;
}
body.pagina-tablero-rutas .tablero-rutas-shell .mapa-entregas-carga-panel,
body.pagina-tablero-rutas .tablero-rutas-shell .mapa-entregas-carga-backdrop,
body.pagina-tablero-rutas .tablero-rutas-shell .mapa-entregas-carga-toggle {
	position: fixed;
}
body.pagina-tablero-rutas.mapa-entregas-carga-abierta {
	overflow: hidden;
}
body.pagina-entrega-chofer .entrega-chofer-shell .mapa-entregas-carga-panel,
body.pagina-entrega-chofer .entrega-chofer-shell .mapa-entregas-carga-backdrop,
body.pagina-entrega-chofer .entrega-chofer-shell .mapa-entregas-carga-toggle {
	position: fixed;
}
body.pagina-entrega-chofer.mapa-entregas-carga-abierta {
	overflow: hidden;
}
.tablero-rutas{
	display: flex;
	gap: 1rem;
	overflow-x: auto;
	align-items: stretch;
	min-height: 70vh;
	padding-bottom: 1rem;
}
.tablero-rutas-columna{
	flex: 1 0 240px;
	min-width: 240px;
	background: var(--kt-gray-100, #f5f8fa);
	border-radius: 0.475rem;
	display: flex;
	flex-direction: column;
	max-height: 75vh;
	padding-bottom: 0.75rem;
	overflow: hidden;
}
.tablero-rutas-columna-titulo{
	padding: 0.75rem 1rem;
	font-weight: 600;
	border-bottom: 1px solid var(--kt-gray-200, #eff2f5);
}
.tablero-rutas-columna-cuerpo{
	padding: 0.75rem;
	overflow-y: auto;
	flex: 1 1 auto;
	min-height: 120px;
}
.tablero-rutas-tarjeta{
	background: #fff;
	border-left: 4px solid transparent;
	border-radius: 0.35rem;
	padding: 0.75rem;
	margin-bottom: 0.5rem;
	box-shadow: 0 0 10px 0 rgba(76, 87, 125, .06);
	cursor: grab;
	transition: box-shadow .15s ease, opacity .12s ease;
}
.tablero-rutas-tarjeta:not([data-viaje="1"]){
	border-left-color: #A1A5B7;
}
.tablero-rutas-tarjeta:active,
.tablero-rutas-tarjeta.is-dragging{
	cursor: grabbing;
}
.tablero-rutas-tarjeta.is-dragging{
	opacity: .4;
}
.tablero-rutas-preview,
.tablero-rutas-tarjeta.tablero-rutas-preview{
	pointer-events: none;
	box-shadow: none;
	background: rgba(9, 30, 66, .08);
	border-left-color: transparent;
	padding: 0;
	cursor: default;
}
.tablero-rutas[aria-busy="true"] .tablero-rutas-tarjeta{
	cursor: default;
	pointer-events: none;
}
.tablero-rutas[aria-busy="true"] .tablero-rutas-tarjeta .skeleton{
	display: block;
}
body.pagina-tablero-rutas:not(.dark-mode) #kt_content,
body.pagina-tablero-rutas:not(.dark-mode) #kt_post{
	background: #fff;
}
.dark-mode .tablero-rutas-columna{
	background: var(--kt-gray-200, #1e1e2d);
}
.dark-mode .tablero-rutas-tarjeta{
	background: var(--kt-gray-100, #151521);
	box-shadow: none;
}
.dark-mode .tablero-rutas-tarjeta.tablero-rutas-preview{
	background: rgba(255, 255, 255, .12);
}
.entrega-chofer{
	max-width: 640px;
	margin: 0 auto;
	padding-bottom: 2rem;
}
.entrega-chofer-seccion{
	margin-bottom: 1.5rem;
}
.entrega-chofer-seccion-titulo{
	font-weight: 600;
	margin-bottom: 0.75rem;
}
.entrega-chofer-tarjeta{
	background: #fff;
	border-radius: 0.475rem;
	border-left: 4px solid #3E97FF;
	box-shadow: 0 0 20px 0 rgba(76, 87, 125, .08);
	padding: 0.85rem 1rem;
	margin-bottom: 0.75rem;
	cursor: pointer;
}
.entrega-chofer-viaje{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
}
.entrega-chofer-viaje-cuerpo{
	min-width: 0;
	flex: 1;
}
.entrega-chofer-tarjeta-fila{
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
}
.entrega-chofer-tarjeta.is-entregada{
	opacity: 0.45;
	cursor: pointer;
}
.entrega-chofer-tarjeta.is-entregada:hover{
	opacity: 0.62;
}
.entrega-chofer-orden{
	flex-shrink: 0;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 50%;
	background: var(--kt-gray-200, #eff2f5);
	color: var(--kt-gray-700, #5e6278);
	font-size: 0.75rem;
	font-weight: 600;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 0.15rem;
}
.entrega-chofer-viaje-resumen,
.entrega-chofer-ruta-resumen{
	background: var(--kt-gray-100, #f5f8fa);
	border-radius: 0.475rem;
	padding: 0.85rem 1rem;
	margin-bottom: 1rem;
}
.entrega-chofer-viaje-resumen--optimizar{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1rem;
}
.entrega-chofer-viaje-resumen-izq{
	flex: 1;
	min-width: 0;
}
.entrega-chofer-ruta-resumen-inline{
	flex-shrink: 0;
	max-width: 58%;
}
.entrega-chofer-tiempo-skeleton{
	display: block;
	width: 100%;
}
.entrega-chofer-tiempo-skeleton-bar{
	display: block;
	width: 100%;
	max-width: 9rem;
	height: 1.35rem;
	margin: 0 0 0 auto;
	opacity: 0.12;
}
.entrega-chofer-ruta-resumen-inline [data-tiempo-ruta].is-cargando{
	min-height: 1.35rem;
}
.entrega-chofer-mapa-caja{
	margin-bottom: 1rem;
}
.entrega-chofer-mapa{
	height: 240px;
	border-radius: 0.475rem;
	overflow: hidden;
	background: var(--kt-gray-100, #f5f8fa);
}
.entrega-chofer-mapa .leaflet-container{
	width: 100%;
	height: 100%;
}
.entrega-chofer-mapa-pin{
	background: transparent;
	border: 0;
}
.entrega-chofer-mapa-pin span{
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: #3E97FF;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #fff;
	box-shadow: 0 1px 4px rgba(0,0,0,.25);
}
.entrega-chofer-mapa-pin.is-gps span{
	width: 14px;
	height: 14px;
	background: #50CD89;
}
.entrega-chofer-tarjeta[draggable="true"]{
	cursor: grab;
}
.entrega-chofer-tarjeta[draggable="true"]:active,
.entrega-chofer-tarjeta.is-dragging{
	cursor: grabbing;
}
.entrega-chofer-tarjeta.is-dragging{
	opacity: .4;
}
.entrega-chofer-preview,
.entrega-chofer-tarjeta.entrega-chofer-preview{
	pointer-events: none;
	box-shadow: none;
	background: rgba(9, 30, 66, .08);
	border-left-color: transparent;
	padding: 0;
	cursor: default;
}
.dark-mode .entrega-chofer-tarjeta.entrega-chofer-preview{
	background: rgba(255, 255, 255, .12);
}
.entrega-chofer-detalle-pagina{
	padding-bottom: 1.5rem;
}
.entrega-chofer-detalle-pagina .mapa-clientes-popup-dir{
	margin: 0 0 0.75rem;
	color: var(--bs-gray-800, #3f4254);
	font-size: 1rem;
}
.entrega-chofer-detalle-pagina .mapa-clientes-popup-dir .mapa-clientes-popup-maps{
	vertical-align: -0.2em;
}
button.mapa-clientes-popup-maps{
	cursor: pointer;
}
.entrega-chofer-detalle-acciones{
	flex-wrap: nowrap;
	align-items: stretch;
}
.entrega-chofer-detalle-acciones .btn{
	min-width: 0;
}
.entrega-chofer-nav-selector{
	position: fixed;
	inset: 0;
	z-index: 1060;
}
.entrega-chofer-nav-selector-backdrop{
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
}
.entrega-chofer-nav-selector-panel{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom, 0px));
	background: var(--kt-gray-100, #f5f8fa);
	border-radius: 1rem 1rem 0 0;
	box-shadow: 0 -8px 32px rgba(0, 0, 0, 0.12);
}
.entrega-chofer-productos-lista{
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}
.entrega-chofer-producto{
	display: flex;
	align-items: flex-start;
	gap: 0.65rem;
	padding-top: 0.5rem;
	border-top: 1px dashed var(--kt-gray-200, #eff2f5);
}
.entrega-chofer-producto:first-child{
	padding-top: 0;
	border-top: 0;
}
.entrega-chofer-productos-lista .producto-linea-thumb{
	width: 44px;
	height: 44px;
	overflow: visible;
	flex-shrink: 0;
}
.entrega-chofer-productos-lista .producto-linea-thumb img{
	border-radius: 0.35rem;
}
.entrega-chofer-pasos{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	margin-bottom: 1rem;
}
.entrega-chofer-paso{
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.8rem;
	font-weight: 600;
	background: var(--kt-gray-200, #eff2f5);
	color: var(--kt-gray-600, #7e8299);
}
.entrega-chofer-paso.is-activo{
	background: #3E97FF;
	color: #fff;
}
.entrega-chofer-paso.is-hecho{
	background: #3E97FF;
	color: #fff;
}
.entrega-chofer-paso-linea{
	flex: 0 0 2.5rem;
	width: 2.5rem;
	height: 2px;
	background: var(--kt-gray-200, #eff2f5);
}
.entrega-chofer-firma{
	width: 100%;
	height: 160px;
	border: 1px solid var(--kt-gray-300, #e4e6ef);
	border-radius: 0.475rem;
	touch-action: none;
	background: #fff;
}
.entrega-chofer-evidencia-galeria{
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}
.entrega-chofer-evidencia-link{
	display: inline-block;
	cursor: zoom-in;
	line-height: 0;
}
.entrega-chofer-evidencia-img{
	width: 88px;
	height: 88px;
	object-fit: cover;
	border-radius: 0.35rem;
}
.dark-mode .entrega-chofer-tarjeta,
.dark-mode .entrega-chofer-detalle-panel{
	background: var(--kt-gray-100, #151521);
}
.dark-mode .entrega-chofer-viaje-resumen,
.dark-mode .entrega-chofer-ruta-resumen,
.dark-mode .entrega-chofer-mapa,
.dark-mode .entrega-chofer-nav-selector-panel{
	background: #1e1e2d;
}
.dark-mode .entrega-chofer-orden{
	background: #2b2b40;
	color: #9899ac;
}
.dark-mode .entrega-chofer-producto{
	border-top-color: #2b2b40;
}
.dark-mode .entrega-chofer-paso{
	background: #2b2b40;
	color: #9899ac;
}
.dark-mode .entrega-chofer-paso-linea{
	background: #2b2b40;
}