/* Identidad MGV Soluciones, compartida con MGV Gestion. */
@font-face {font-family:Exo2;src:url("fonts/Exo2-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face {font-family:Exo2;src:url("fonts/Exo2-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
@font-face {font-family:Orbitron;src:url("fonts/orbitron-bold.otf") format("opentype");font-weight:700;font-display:swap}
html, body {font-family:Exo2,system-ui,sans-serif !important;color:#1f2937;background-color:#f8fafc}
button,input,select,textarea,.btn,.form-control,table,.nav-link,footer {font-family:Exo2,system-ui,sans-serif}
h1,h2,h3,h4,h5,h6,th,.heading {font-family:Orbitron,Exo2,sans-serif}
.sidebar,.sidebar.bg-dark {background:linear-gradient(180deg,#0f172a 0%,#1e293b 100%) !important;color:#e2e8f0}
.sidebar .nav .nav-item .nav-link {color:#dbeafe !important}
.sidebar .nav .nav-header {color:#94a3b8 !important}
.sidebar .nav .nav-item .nav-link:hover,.sidebar .nav .nav-item .nav-link.active {background:rgba(37,99,235,.30) !important;color:#fff !important}
.right-column,main {background-color:#f8fafc}
a:not(.btn) {color:#0077c8}
a:not(.btn):hover,a:not(.btn):focus {color:#005f9f}
.sidebar a:not(.btn) {color:#dbeafe}
.btn-primary,.btn-info {background:linear-gradient(135deg,#1ea7ff,#0077c8) !important;border-color:#1ea7ff !important;color:#fff !important}
.btn-primary:hover,.btn-info:hover {background:linear-gradient(135deg,#1597e5,#005f9f) !important}
.text-primary,.text-info {color:#0077c8 !important}
.form-control:focus {border-color:#1ea7ff;box-shadow:0 0 0 .2rem rgba(30,167,255,.18)}
footer p {display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px}
footer .navbar-brand {margin-right:0;padding:0}
footer img[src*="logoMGV"] {width:126px;height:44px;object-fit:contain;margin-top:0 !important}

.footer-container {height:64px !important}
footer img[src*="logoMGV"] {width:100px;height:60px}

/* Logo EGA: conservar proporcion y reservar espacio en cada ubicacion. */
img[src*="logoEGA"] {object-fit:contain;object-position:center;border-radius:0}
.sidebar img[src*="logoEGA"] {width:144px;height:120px}
.navbar img[src*="logoEGA"] {width:144px;height:120px}
.preloader-progress {width:144px;height:120px;background:url("logoEGA-sistema-pesaje.png") center/contain no-repeat}
.preloader-progress-bar {background-image:none !important}

/* Menu MGV: iconos vectoriales por funcion y botones con foco visible. */
.sidebar .nav .nav-item {margin:3px 10px}
.sidebar .nav .nav-item .nav-link {display:flex;align-items:center;gap:10px;min-height:46px;padding:8px 10px !important;border:1px solid transparent;border-radius:10px;font-size:12px;line-height:1.3;font-weight:700;transition:background .18s,border-color .18s}
.sidebar .nav .nav-item .nav-link:hover {border-color:rgba(56,189,248,.35);background:rgba(30,167,255,.12) !important}
.sidebar .nav .nav-item .nav-link.active {border-color:#38bdf8;background:linear-gradient(110deg,rgba(0,119,200,.42),rgba(30,167,255,.13)) !important;box-shadow:inset 3px 0 #38bdf8}
.sidebar .nav .nav-item .nav-link:focus-visible {outline:2px solid #7dd3fc;outline-offset:2px}
.sidebar .nav .nav-item .nav-link i.batch-icon {display:inline-block;flex:0 0 30px;width:30px;height:30px;min-width:30px;line-height:30px;margin:0 !important;background-position:center;background-size:contain;background-repeat:no-repeat;opacity:1 !important}
.sidebar .nav .nav-item .nav-link i.batch-icon::before {content:none !important}
.sidebar .nav .nav-header {font-family:Orbitron,Exo2,sans-serif;font-size:10px;letter-spacing:1px;margin:22px 20px 10px;padding:0;color:#94a3b8 !important}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-cliente {background-image:url("menu/cliente.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-fabrica {background-image:url("menu/fabrica.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-caja {background-image:url("menu/caja.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-camionmov {background-image:url("menu/camionmov.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-camion {background-image:url("menu/camion.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-chofer {background-image:url("menu/chofer.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-modelo {background-image:url("menu/modelo.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-lista-balanza {background-image:url("menu/lista-balanza.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-camionKg {background-image:url("menu/camionKg.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-usuario {background-image:url("menu/usuario.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-config {background-image:url("menu/config.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-certificado {background-image:url("menu/certificado.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-nube {background-image:url("menu/nube.svg")}
.sidebar .nav .nav-item .nav-link i.batch-icon.icon-ayuda {background-image:url("menu/ayuda.svg")}

/* Cabecera MGV y estados del semaforo. */
.navbar button.btn-primary {display:inline-flex;align-items:center;gap:8px;padding:10px 16px !important;min-height:42px;border-radius:11px !important;font-weight:700;box-shadow:0 4px 12px #0077c825}
.navbar button.btn-primary::before {content:"";width:18px;height:18px;background:url("contacto.svg") center/contain no-repeat}
user-interface .navbar-profile {margin-left:16px !important}
user-interface .navbar-profile .nav-link.dropdown-toggle {display:flex;align-items:center;gap:10px;padding:7px 11px !important;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;min-height:46px;color:#0f172a}
user-interface .navbar-profile .nav-link.dropdown-toggle:hover {background:#e0f2fe;border-color:#38bdf8}
user-interface .navbar-profile .profile-name {font-family:Exo2,sans-serif;font-weight:700;color:#0f172a;margin:0 !important;line-height:1.3}
user-interface .navbar-profile .small-name {font-size:10px;letter-spacing:.8px;color:#64748b}
user-interface .profile-picture {background:#102b46 !important;border:1px solid #38bdf8 !important;border-radius:10px !important;width:34px !important;height:34px !important;overflow:hidden;box-shadow:none !important}
user-interface .profile-picture img {width:34px;height:34px;object-fit:contain;content:url("usuario.svg")}
basculas-widget .mgv-ega-wordmark {display:block;font-family:Orbitron,sans-serif;font-size:25px;font-weight:700;font-style:italic;letter-spacing:2px;color:#0077c8;text-align:center}
basculas-widget .mgv-ega-wordmark::before {content:"EGA"}
repetidores-widget .card {border:1px solid #dbeafe;border-radius:13px;box-shadow:0 4px 14px #0f172a0d}
repetidores-widget .semaforo {display:flex;flex-direction:column;gap:7px !important;padding:9px;background:linear-gradient(160deg,#0f172a,#1e293b);border:1px solid #334155;border-radius:14px;margin:7px 0 10px !important}
repetidores-widget .semaforo .btn {display:flex;align-items:center;gap:9px !important;min-height:35px;padding:5px 8px !important;border:1px solid #334155 !important;border-radius:9px !important;background:#17283f !important;color:#e2e8f0 !important;font-family:Exo2,sans-serif;font-size:11px;font-weight:700;text-align:left;box-shadow:none}
repetidores-widget .semaforo .btn:hover {border-color:#7dd3fc !important;background:#213952 !important}
repetidores-widget .semaforo .btn:focus-visible,.navbar button:focus-visible,user-interface a:focus-visible {outline:2px solid #38bdf8;outline-offset:3px}
repetidores-widget .semaforo .btn img {width:22px !important;height:22px !important;border-radius:50%;filter:none !important;opacity:1 !important;box-shadow:0 0 9px currentColor}
repetidores-widget .semaforo .btn img.apagada {filter:grayscale(.55) brightness(.35) !important;opacity:.65 !important;box-shadow:none}
repetidores-widget .semaforo .btn:has(img:not(.apagada)) {border-color:#64748b !important;background:#243c53 !important}

/* Semaforo de sensores (dos luces), seleccionado por la configuracion existente. */
semaforo-widget .card {border:1px solid #dbeafe;border-radius:13px;box-shadow:0 4px 14px #0f172a0d}
semaforo-widget .semaforo {display:flex;flex-direction:column;align-items:center;gap:10px !important;width:56px !important;padding:10px !important;background:linear-gradient(160deg,#0f172a,#1e293b) !important;border:1px solid #334155 !important;border-radius:16px !important;margin:8px 0 10px auto;cursor:pointer}
semaforo-widget .semaforo:hover {border-color:#7dd3fc !important}
semaforo-widget .semaforo img {width:28px !important;height:28px !important;border-radius:50%;filter:none !important;opacity:1;box-shadow:0 0 9px #ffffff35}
semaforo-widget .semaforo img.apagada {filter:grayscale(.55) brightness(.35) !important;opacity:.65;box-shadow:none}

/* Marca EGA de solo letras en el panel de bascula. */
basculas-widget .mgv-ega-wordmark {width:100%;height:42px;background:url("EGA-solo-texto.png") center/contain no-repeat;margin:2px auto 8px}
basculas-widget .mgv-ega-wordmark::before {content:none}

/* Avatar conectado: dibujo limpio sin recorte circular heredado. */
user-interface .navbar-profile .nav-link.dropdown-toggle {gap:10px;padding:7px 10px !important;min-height:50px}
user-interface .profile-picture {position:relative;display:block !important;flex:0 0 36px;width:36px !important;height:36px !important;min-width:36px;padding:0 !important;margin:0 !important;border:0 !important;border-radius:11px !important;background:none !important;overflow:visible !important;box-shadow:none !important}
user-interface .profile-picture::before,user-interface .profile-picture::after {display:none !important;content:none !important}
user-interface .profile-picture img {display:block !important;width:36px !important;height:36px !important;max-width:none !important;max-height:none !important;border:0 !important;border-radius:0 !important;padding:0 !important;margin:0 !important;object-fit:contain !important;box-shadow:none !important;content:url("usuario.svg?v=2")}

/* Inicio: pistas de circuito discretas, limitadas a la pantalla principal. */
main.main-content:has(.descktop) {background-color:#f8fafc;background-image:url("circuitos.svg");background-position:center;background-size:900px 650px;background-repeat:repeat}
.sidebar li:has(>a[href$="/pesM/servicios"]),.sidebar li:has(>a[href$="/pesaje/ticket"]) {display:none !important}
repetidores-widget .semaforo {width:56px !important;padding:8px !important;align-items:center;margin-left:auto !important;gap:8px !important}
repetidores-widget .semaforo .btn {width:36px;min-width:36px;height:36px;min-height:36px;padding:5px !important;justify-content:center;gap:0 !important;border-radius:50% !important}
repetidores-widget .semaforo .btn img {width:24px !important;height:24px !important}

/* Luces apagadas legibles: conservar el color, retirar solo el brillo de encendido. */
repetidores-widget .semaforo .btn img.apagada,semaforo-widget .semaforo img.apagada {filter:saturate(.65) brightness(.75) !important;opacity:1 !important;box-shadow:none !important}
/* La imagen de carga debe prevalecer sobre los estilos inline del cargador antiguo. */
.preloader-progress {width:180px !important;height:150px !important;background-image:url("logoEGA-sistema-pesaje.png") !important;background-position:center !important;background-size:contain !important;background-repeat:no-repeat !important;filter:none !important}
.preloader-progress-bar {display:none !important;background-image:none !important}
infoEmpresa-cofig img {max-height:220px;object-fit:contain}

/* Familia vectorial MGV compartida por acciones, filtros y modales. */
.batch-icon.icon-pluma::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/editar.svg") center/contain no-repeat;mask:url("acciones/editar.svg") center/contain no-repeat}
.batch-icon.icon-basura::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/eliminar.svg") center/contain no-repeat;mask:url("acciones/eliminar.svg") center/contain no-repeat}
.batch-icon.icon-ojo::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/ver.svg") center/contain no-repeat;mask:url("acciones/ver.svg") center/contain no-repeat}
.batch-icon.icon-balanza::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/pesaje.svg") center/contain no-repeat;mask:url("acciones/pesaje.svg") center/contain no-repeat}
.batch-icon.icon-cross::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/cerrar.svg") center/contain no-repeat;mask:url("acciones/cerrar.svg") center/contain no-repeat}
.batch-icon.icon-lupa::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/buscar.svg") center/contain no-repeat;mask:url("acciones/buscar.svg") center/contain no-repeat}
.batch-icon.icon-buscar::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/buscar.svg") center/contain no-repeat;mask:url("acciones/buscar.svg") center/contain no-repeat}
.batch-icon.icon-fabrica::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/empresa.svg") center/contain no-repeat;mask:url("acciones/empresa.svg") center/contain no-repeat}
.batch-icon.icon-caja::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/producto.svg") center/contain no-repeat;mask:url("acciones/producto.svg") center/contain no-repeat}
.batch-icon.icon-fecha::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/fecha.svg") center/contain no-repeat;mask:url("acciones/fecha.svg") center/contain no-repeat}
.batch-icon.icon-estado::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/estado.svg") center/contain no-repeat;mask:url("acciones/estado.svg") center/contain no-repeat}
.batch-icon.icon-recargar::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/estado.svg") center/contain no-repeat;mask:url("acciones/estado.svg") center/contain no-repeat}
.batch-icon.icon-resetear::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/estado.svg") center/contain no-repeat;mask:url("acciones/estado.svg") center/contain no-repeat}
.batch-icon.icon-tipo::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/tipo.svg") center/contain no-repeat;mask:url("acciones/tipo.svg") center/contain no-repeat}
.batch-icon.icon-filtro::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/filtro.svg") center/contain no-repeat;mask:url("acciones/filtro.svg") center/contain no-repeat}
.batch-icon.icon-candado::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/bloquear.svg") center/contain no-repeat;mask:url("acciones/bloquear.svg") center/contain no-repeat}
.batch-icon.icon-bloquear::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/bloquear.svg") center/contain no-repeat;mask:url("acciones/bloquear.svg") center/contain no-repeat}
.batch-icon.icon-candado-open::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/desbloquear.svg") center/contain no-repeat;mask:url("acciones/desbloquear.svg") center/contain no-repeat}
.batch-icon.icon-desbloquear::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/desbloquear.svg") center/contain no-repeat;mask:url("acciones/desbloquear.svg") center/contain no-repeat}
.batch-icon.icon-unlocked::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/desbloquear.svg") center/contain no-repeat;mask:url("acciones/desbloquear.svg") center/contain no-repeat}
.batch-icon.icon-nuevo::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/nuevo.svg") center/contain no-repeat;mask:url("acciones/nuevo.svg") center/contain no-repeat}
.batch-icon.icon-anadir::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/nuevo.svg") center/contain no-repeat;mask:url("acciones/nuevo.svg") center/contain no-repeat}
.batch-icon.icon-guardar::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/guardar.svg") center/contain no-repeat;mask:url("acciones/guardar.svg") center/contain no-repeat}
.batch-icon.icon-imprimir::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/imprimir.svg") center/contain no-repeat;mask:url("acciones/imprimir.svg") center/contain no-repeat}
.batch-icon.icon-descargar::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/descargar.svg") center/contain no-repeat;mask:url("acciones/descargar.svg") center/contain no-repeat}
.batch-icon.icon-exportar::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/exportar.svg") center/contain no-repeat;mask:url("acciones/exportar.svg") center/contain no-repeat}
.batch-icon.icon-hora::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/hora.svg") center/contain no-repeat;mask:url("acciones/hora.svg") center/contain no-repeat}
.batch-icon.icon-usuario::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/usuario.svg") center/contain no-repeat;mask:url("acciones/usuario.svg") center/contain no-repeat}
.batch-icon.icon-cliente::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/usuario.svg") center/contain no-repeat;mask:url("acciones/usuario.svg") center/contain no-repeat}
.batch-icon.icon-chofer::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/usuario.svg") center/contain no-repeat;mask:url("acciones/usuario.svg") center/contain no-repeat}
.batch-icon.icon-user-alt-add::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/usuario-nuevo.svg") center/contain no-repeat;mask:url("acciones/usuario-nuevo.svg") center/contain no-repeat}
.batch-icon.icon-logout::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/salir.svg") center/contain no-repeat;mask:url("acciones/salir.svg") center/contain no-repeat}
.batch-icon.icon-cerrarsesion::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/salir.svg") center/contain no-repeat;mask:url("acciones/salir.svg") center/contain no-repeat}
.batch-icon.icon-llave::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/llave.svg") center/contain no-repeat;mask:url("acciones/llave.svg") center/contain no-repeat}
.batch-icon.icon-cambiar-contrasea::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/llave.svg") center/contain no-repeat;mask:url("acciones/llave.svg") center/contain no-repeat}
.batch-icon.icon-cambiarcontrasena::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/llave.svg") center/contain no-repeat;mask:url("acciones/llave.svg") center/contain no-repeat}
.batch-icon.icon-check::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/confirmar.svg") center/contain no-repeat;mask:url("acciones/confirmar.svg") center/contain no-repeat}
.batch-icon.icon-exito::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/confirmar.svg") center/contain no-repeat;mask:url("acciones/confirmar.svg") center/contain no-repeat}
.batch-icon.icon-advertencia::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/advertencia.svg") center/contain no-repeat;mask:url("acciones/advertencia.svg") center/contain no-repeat}
.batch-icon.icon-error::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/error.svg") center/contain no-repeat;mask:url("acciones/error.svg") center/contain no-repeat}
.batch-icon.icon-camara::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/camara.svg") center/contain no-repeat;mask:url("acciones/camara.svg") center/contain no-repeat}
.batch-icon.icon-ayuda::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/ayuda.svg") center/contain no-repeat;mask:url("acciones/ayuda.svg") center/contain no-repeat}
.batch-icon.icon-config::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/configuracion.svg") center/contain no-repeat;mask:url("acciones/configuracion.svg") center/contain no-repeat}
.batch-icon.icon-nube::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/nube.svg") center/contain no-repeat;mask:url("acciones/nube.svg") center/contain no-repeat}
.batch-icon.icon-certificado::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/documento.svg") center/contain no-repeat;mask:url("acciones/documento.svg") center/contain no-repeat}
.batch-icon.icon-modelo::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/documento.svg") center/contain no-repeat;mask:url("acciones/documento.svg") center/contain no-repeat}
.batch-icon.icon-lista-balanza::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/documento.svg") center/contain no-repeat;mask:url("acciones/documento.svg") center/contain no-repeat}
.batch-icon.icon-camion::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/vehiculo.svg") center/contain no-repeat;mask:url("acciones/vehiculo.svg") center/contain no-repeat}
.batch-icon.icon-camionmov::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/transporte.svg") center/contain no-repeat;mask:url("acciones/transporte.svg") center/contain no-repeat}
.batch-icon.icon-camionKg::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/pesaje.svg") center/contain no-repeat;mask:url("acciones/pesaje.svg") center/contain no-repeat}
.batch-icon.icon-correo::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/correo.svg") center/contain no-repeat;mask:url("acciones/correo.svg") center/contain no-repeat}
.batch-icon.icon-correo-enviado::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/correo.svg") center/contain no-repeat;mask:url("acciones/correo.svg") center/contain no-repeat}
.batch-icon.icon-mano::before {content:"" !important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/mano.svg") center/contain no-repeat;mask:url("acciones/mano.svg") center/contain no-repeat}

.batch-icon.text-button-table {display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin:0 2px;vertical-align:middle;font-size:18px !important;color:#0077c8;border-radius:8px;transition:background-color .15s,color .15s}
.batch-icon.text-button-table:hover {background:#e0f2fe;color:#005f9f}
.batch-icon.icon-basura.text-button-table,.batch-icon.icon-cross.text-button-table {color:#b42335}
.batch-icon.icon-basura.text-button-table:hover,.batch-icon.icon-cross.text-button-table:hover {background:#fff1f2;color:#9f1239}
table-grid .btn-filter {display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;vertical-align:middle;border:1px solid #cbd5e1 !important;border-radius:8px;background:#f8fafc;color:#0077c8;margin:0 3px !important}
table-grid .btn-filter:hover:not(:disabled) {border-color:#38bdf8 !important;background:#e0f2fe;color:#005f9f}
table-grid .btn-filter:disabled {opacity:.4}
table-grid .btn-filter .batch-icon {font-size:18px;line-height:1}
table-grid .btn-filter:focus-visible {outline:2px solid #1ea7ff;outline-offset:2px}
table-grid .input-group-text .batch-icon {color:#0077c8}

/* Iconos de reportes y cierres en la misma familia vectorial. */
img[src$="/iconos/imprimir.png"] {content:url("acciones/imprimir.svg");width:21px !important;height:21px !important;object-fit:contain;vertical-align:middle}
img[src$="/iconos/pdf.png"] {content:url("acciones/archivo-pdf.svg");width:21px !important;height:21px !important;object-fit:contain;vertical-align:middle}
img[src$="/iconos/xls.png"] {content:url("acciones/archivo-xls.svg");width:21px !important;height:21px !important;object-fit:contain;vertical-align:middle}
.modal .close span[aria-hidden="true"] {display:inline-block;font-size:0;width:20px;height:20px}
.modal .close span[aria-hidden="true"]::before {content:"";display:block;width:20px;height:20px;background:currentColor;-webkit-mask:url("acciones/cerrar.svg") center/contain no-repeat;mask:url("acciones/cerrar.svg") center/contain no-repeat}

/* Corregir reglas heredadas !important y unificar controles en todas las paginas. */
.batch-icon.text-button-table {color:#0077c8 !important}
.batch-icon.text-button-table:hover {color:#005f9f !important}
.batch-icon.icon-basura.text-button-table,.batch-icon.icon-cross.text-button-table {color:#b42335 !important}
.batch-icon.icon-basura.text-button-table:hover,.batch-icon.icon-cross.text-button-table:hover {color:#9f1239 !important}
.main-content .btn-primary,.main-content .btn-secondary,.modal .btn-primary,.modal .btn-secondary {font-family:Exo2,sans-serif;font-weight:700;border-radius:9px !important;border:1px solid #1ea7ff !important;background:linear-gradient(135deg,#1ea7ff,#0077c8) !important;color:#fff !important;box-shadow:0 3px 9px #0077c81a;min-height:34px}
.main-content .btn-primary:hover:not(:disabled),.main-content .btn-secondary:hover:not(:disabled),.modal .btn-primary:hover:not(:disabled),.modal .btn-secondary:hover:not(:disabled) {background:linear-gradient(135deg,#1597e5,#005f9f) !important}
.main-content .btn:disabled,.modal .btn:disabled {opacity:.45;box-shadow:none}
.main-content .btn-light,.modal .btn-light {border-radius:9px;border:1px solid #cbd5e1;background:#f8fafc;color:#334155}
.badge-codigo {display:inline-block;border:1px solid #bae6fd !important;border-radius:6px !important;background:#e0f2fe !important;color:#075985 !important;padding:4px 7px !important;font-family:Exo2,sans-serif;font-size:11px !important;line-height:1.1}
general-check .badge {display:inline-flex;align-items:center;justify-content:center;min-width:23px;min-height:23px;padding:3px !important;border:1px solid #94a3b8 !important;border-radius:6px !important;background:#f1f5f9 !important;color:#64748b !important;vertical-align:middle;margin-right:5px}
general-check .badge:has(.icon-check) {background:#0077c8 !important;border-color:#0077c8 !important;color:#fff !important}
general-check .badge .icon-cross {color:#64748b !important}
general-check .badge .icon-check {color:#fff !important}
general-check .badge:not(.checkbox-trucho) {opacity:.45;cursor:not-allowed}
general-check .checkbox-trucho:hover {outline:2px solid #bae6fd;outline-offset:1px}
/* El patron de conexiones se comparte en todas las secciones. */
main.main-content {background-color:#f8fafc;background-image:url("circuitos.svg");background-position:center top;background-size:900px 650px;background-repeat:repeat;min-height:100vh}
.main-content .card {background-color:rgba(255,255,255,.94)}
/* Conservar el aspecto de las luces sobre las reglas generales de botones. */
.main-content repetidores-widget .semaforo .btn {background:#17283f !important;border-color:#334155 !important;color:#e2e8f0 !important;box-shadow:none;min-height:36px;border-radius:50% !important}
.main-content repetidores-widget .semaforo .btn:has(img:not(.apagada)) {background:#243c53 !important;border-color:#64748b !important}

/* Semaforo al 60% del tamaño anterior, con el espacio de diseño reducido. */
repetidores-widget .semaforo,semaforo-widget .semaforo {zoom:.6}

.batch-icon.icon-camara::before {-webkit-mask-image:url("acciones/camara.svg?v=4");mask-image:url("acciones/camara.svg?v=4")}
/* Ventanas EGA: contenido y acciones dentro del area visible. */
.modal-dialog {max-width:calc(100vw - 24px)!important;margin:12px auto!important}
.modal-dialog .modal-content {max-height:calc(100vh - 24px)!important;overflow:auto!important;overscroll-behavior:contain;border:1px solid #cbdcec;border-radius:14px!important;background:#fff}
modal-main-epsilon,modal-selec-epsilon {display:block;min-width:0}
.modal-body {min-width:0;padding:22px!important}
modal-main-epsilon .row[style*="height"],modal-selec-epsilon .row[style*="height"],modal-selec-epsilon .col-12[style*="height"] {height:auto!important;min-height:0!important;padding-bottom:12px!important;align-items:flex-start!important}
modal-main-epsilon .modal-body > .row > .col-12 {display:flex;flex-direction:column;min-width:0}
modal-main-epsilon .modal-btn {position:static!important;order:2;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin-top:22px;padding:16px 0 0;border-top:1px solid #dbeafe;z-index:auto}
modal-main-epsilon .modal-btn .btn {margin:0!important;min-width:104px}
.modal .modal-scrollbar-main {max-height:none!important;height:auto!important;overflow:visible!important}
.modal .modal-encabezado-grande {padding-bottom:12px;border-bottom:1px solid #dbeafe}
.modal .modal-encabezado-grande h3 {color:#163954}
.modal .form-control {border:1px solid #c7d9e9;border-radius:8px;min-height:34px;color:#1e3a50;background-color:#fbfdff}
.modal label {color:#334e68;font-weight:700}
.modal table .btn.btn-primary {min-width:100px;min-height:34px;padding:7px 14px!important;margin:3px!important;border-radius:8px!important;font-size:13px;line-height:1.3}
.modal .pagination {flex-wrap:wrap;justify-content:center;gap:4px;margin:14px 0}
.modal .pagination .page-link {border-radius:6px!important;border-color:#c7d9e9;padding:7px 10px}
.modal .badge-secondary {background:#e5f3ff;color:#165477;border:1px solid #b9ddf5;border-radius:6px;padding:5px 8px;white-space:normal;line-height:1.4;font-size:12px}
.modal p {line-height:1.6;overflow-wrap:anywhere}
.modal img[src$="/egreso.png"] {content:url("boton-egreso.svg");height:auto!important;width:280px!important;max-width:100%}
.modal img[src$="/ingreso.png"] {content:url("boton-ingreso.svg");height:auto!important;width:280px!important;max-width:100%}
.modal .col-auto > button.aria-hidden {background:transparent!important;border:0!important;margin:12px!important;max-width:calc(100% - 24px);border-radius:12px;box-shadow:0 6px 16px #0f172a20}
.card.card-pesada {background:linear-gradient(135deg,#10243a,#1d405a)!important;border:1px solid #3d7799!important;border-radius:13px!important;box-shadow:0 6px 18px #10243a26;color:#d5edfa!important}
.card.card-pesada .card-body,.card.card-pesada h1,.card.card-pesada h2,.card.card-pesada .peso,.card.card-pesada .peso strong,.card.card-pesada .btn-bascula,.card.card-pesada .btn-bascula i {color:#d5edfa!important}
.card.card-pesada .peso {color:#67e8f9!important;font-size:clamp(24px,3vw,42px)!important;overflow-wrap:anywhere}
.card.card-pesada .btn-manual i {color:#fff!important}
foto-input .card {border:1px solid #b9d9ef;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #10243a18}
foto-input .card-img-overlay .btn {background:#eff9ff!important;border:1px solid #b9d9ef!important;border-radius:7px;padding:5px!important;margin:3px!important}
@media(max-width:767px) {
 .modal-body {padding:14px!important}
 .modal .row > [class*="col-"] {max-width:100%;flex-basis:100%;min-width:0}
 .modal table {font-size:12px}
 .modal table td,.modal table th {padding:8px!important;overflow-wrap:anywhere}
 .modal table .btn.btn-primary {min-width:76px;font-size:12px;padding:7px!important}
}


.card.card-pesada {align-self:flex-start;width:100%}
.card.card-pesada p,.card.card-pesada strong,.card.card-pesada small {color:#d5edfa!important}

ega-backup-panel{display:block;padding:28px;color:#1e3a50} .ega-backup-card{max-width:950px;margin:auto} .ega-backup-card h2,.ega-backup-card h3{color:#163954} .ega-backup-card hr{margin:28px 0;border-color:#dbeafe} .ega-backup-card p{line-height:1.6} .ega-backup-note{padding:12px 16px;background:#eff8ff;border-left:3px solid #1ea7ff;border-radius:7px} .ega-backup-card label{display:block;margin:16px 0;font-weight:700} .ega-backup-card input[type=file]{height:auto;padding:10px} .ega-backup-card [data-preview]{margin:22px 0;padding:20px;border:1px solid #b9ddf5;background:#f7fbff;border-radius:12px} .ega-backup-card dl{display:grid;grid-template-columns:120px 1fr;gap:8px} .ega-backup-card dt,.ega-backup-card dd{margin:0} .ega-backup-card .btn{margin:8px 8px 8px 0;min-height:40px;border-radius:8px} .ega-backup-card .ega-backup-check{font-weight:400} .ega-backup-card [data-confirm]{max-width:370px} .ega-backup-status{padding:12px 0;color:#075985} .ega-backup-error{padding:12px;color:#9f1239;background:#fff1f2;border-radius:8px} @media(max-width:600px){ega-backup-panel{padding:16px}.ega-backup-card .btn{width:100%}.ega-backup-card dl{grid-template-columns:95px 1fr}}

.ega-backup-card input[type=file]::file-selector-button{border:1px solid #1ea7ff;border-radius:9px;background:linear-gradient(135deg,#1ea7ff,#0077c8);color:#fff;padding:10px 16px;margin-right:12px;min-height:40px;font-family:Exo2,sans-serif;font-weight:700;box-shadow:0 3px 9px #0077c81a;cursor:pointer;transition:background .15s ease}
.ega-backup-card input[type=file]::file-selector-button:hover{background:linear-gradient(135deg,#1597e5,#005f9f)}
.ega-backup-card input[type=file]:focus-visible{outline:2px solid #0077c8;outline-offset:3px}
.ega-backup-card input[type=file]:disabled::file-selector-button{opacity:.55;cursor:not-allowed}
img.card-img[src$="/camara/sin-conexion.jpg"]{content:url("camara-desconectada.svg");background:#f4f9fd;border-radius:12px;object-fit:contain;aspect-ratio:4/3}

/* Peso lateral: lectura principal, con espacio para seis cifras y unidad. */
.card:has(basculas-widget) > .card-body {padding:8px!important}
basculas-widget .col-12.text-right {text-align:left!important}
basculas-widget .col-12.text-right + .col-12.text-right {margin-top:14px!important;padding-top:12px;border-top:1px solid #dbeafe}
basculas-widget .col-12.text-right > p:not(.peso):not(.sensores) {font-size:11px!important;line-height:1.4;color:#60788b!important}
.card basculas-widget .col-12.text-right > p.peso {display:block;margin:5px 0 0!important;padding:8px 3px!important;border:1px solid #c4e5fa;border-radius:8px;background:#edf8ff;color:#075985!important;font-family:Exo2,system-ui,sans-serif!important;font-size:24px!important;font-weight:700!important;font-variant-numeric:tabular-nums;line-height:1.2!important;letter-spacing:-.4px;white-space:nowrap;text-align:center}
/* Las tres acciones de respaldo comparten columna, ancho y altura. */
.ega-backup-card {--ega-backup-action-width:302px}
.ega-backup-card > .btn {display:block;width:min(var(--ega-backup-action-width),100%);min-height:44px;margin:8px 0!important}
.ega-backup-card input[type=file] {box-sizing:border-box;min-height:44px;height:auto!important;padding:0!important;border:0!important;border-radius:0;background:transparent!important;box-shadow:none!important;font-weight:400}
.ega-backup-card input[type=file]::file-selector-button {box-sizing:border-box;width:min(var(--ega-backup-action-width),100%);min-height:44px;margin:0 14px 0 0;padding:10px 12px}

/* Luces horizontales para aprovechar el panel lateral. */
repetidores-widget .semaforo{flex-direction:row!important;align-items:center;justify-content:center;width:max-content!important;max-width:100%;box-sizing:border-box;gap:5px!important;padding:6px!important;margin:7px auto 14px!important;border-radius:10px}
repetidores-widget .semaforo .btn{justify-content:center;flex:0 0 32px;width:32px!important;min-width:0!important;min-height:32px;height:32px;padding:4px!important;gap:0!important}
repetidores-widget .semaforo .btn img{flex:none}
semaforo-widget .semaforo{flex-direction:row!important;justify-content:center;width:max-content!important;max-width:100%;margin:8px auto 12px!important;padding:8px!important;border-radius:10px!important}

/* Semaforos mas grandes y titulos alineados a la izquierda. */
repetidores-widget .card-body,repetidores-widget .text-right,repetidores-widget p,repetidores-widget h5{ text-align:left!important }
repetidores-widget .semaforo{gap:6px!important;padding:7px!important}
repetidores-widget .semaforo .btn{flex:0 0 38px;width:38px!important;height:38px!important;min-height:38px!important;padding:4px!important}
repetidores-widget .semaforo .btn img{width:28px!important;height:28px!important}

/* Columna lateral compacta, manteniendo espacio para peso y tres luces. */
@media(min-width:768px){.main-content .col.d-none.d-md-block:has(basculas-widget){width:190px!important;min-width:190px!important;max-width:190px!important;flex:0 0 190px!important}}

/* Recuadro del peso ajustado al contenido. */
.card basculas-widget .col-12.text-right > p.peso{width:fit-content;max-width:100%;box-sizing:border-box;margin:4px 0 0!important;padding:3px 7px!important;border-radius:6px;line-height:1.15!important}

/* Recuadros del peso alineados al borde derecho. */
.card basculas-widget .col-12.text-right > p.peso{margin:4px 0 0 auto!important}

/* Peso y semaforos comparten las mismas dimensiones. */
.card basculas-widget .col-12.text-right > p.peso,repetidores-widget .semaforo{box-sizing:border-box;width:144px!important;max-width:100%;height:40px!important;min-height:40px!important;margin-left:auto!important;margin-right:0!important}
.card basculas-widget .col-12.text-right > p.peso{display:flex;align-items:center;justify-content:center;padding:3px 5px!important}
repetidores-widget .semaforo{padding:3px!important;gap:5px!important;align-items:center;justify-content:center}
repetidores-widget .semaforo .btn{flex:0 0 32px;width:32px!important;height:32px!important;min-height:32px!important;padding:1px!important}

/* El control real agrupa las tres luces dentro de un unico boton. */
@media(min-width:768px){.col.d-none.d-md-block:has(basculas-widget){width:190px!important;min-width:190px!important;max-width:190px!important;flex:0 0 190px!important}}
repetidores-widget .card>.card-body{padding:8px!important}
repetidores-widget .semaforo{width:144px!important;height:40px!important;padding:0!important;border:0!important;background:transparent!important;gap:0!important;margin:7px 0 12px auto!important}
repetidores-widget .semaforo>.btn.btn-secondary{box-sizing:border-box;flex:1 1 auto!important;width:100%!important;max-width:100%!important;height:40px!important;min-height:40px!important;display:flex!important;align-items:center;justify-content:space-evenly;gap:6px!important;padding:4px 8px!important;border-radius:6px!important}
repetidores-widget .semaforo>.btn.btn-secondary img{width:28px!important;height:28px!important;flex:0 0 28px}

/* Panel lateral mas estrecho. */
@media(min-width:768px){.col.d-none.d-md-block:has(basculas-widget){width:180px!important;min-width:180px!important;max-width:180px!important;flex:0 0 180px!important}}
.card basculas-widget .col-12.text-right>p.peso,repetidores-widget .semaforo{width:134px!important;max-width:100%!important}

/* Reduccion aproximada de un centimetro: 180 a 142 px. */
@media(min-width:768px){.col.d-none.d-md-block:has(basculas-widget){width:142px!important;min-width:142px!important;max-width:142px!important;flex:0 0 142px!important;padding-left:4px!important;padding-right:4px!important}}
.card:has(basculas-widget)>.card-body,repetidores-widget .card>.card-body{padding:6px!important}
.card basculas-widget .col-12.text-right>p.peso,repetidores-widget .semaforo{width:120px!important;max-width:100%!important}
.card basculas-widget .col-12.text-right>p.peso{font-size:22px!important;padding:3px!important;letter-spacing:-.5px}
repetidores-widget .semaforo>.btn.btn-secondary{gap:4px!important;padding:4px!important}
repetidores-widget .semaforo>.btn.btn-secondary img{width:26px!important;height:26px!important;flex-basis:26px}

/* Disposicion final: tres controles independientes dentro del mismo recuadro. */
@media(min-width:768px){.col.d-none.d-md-block:has(basculas-widget){width:172px!important;min-width:172px!important;max-width:172px!important;flex:0 0 172px!important;padding-left:8px!important;padding-right:8px!important}}
body repetidores-widget .semaforo{display:flex!important;flex-direction:row!important;justify-content:space-evenly!important;align-items:center!important;box-sizing:border-box!important;width:120px!important;height:40px!important;min-height:40px!important;padding:4px!important;gap:4px!important;border:1px solid #334155!important;border-radius:6px!important;background:#17283f!important}
body repetidores-widget .semaforo>.btn.btn-secondary{flex:0 0 32px!important;box-sizing:border-box!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:30px!important;min-height:30px!important;padding:1px!important;margin:0!important;border:0!important;border-radius:4px!important;display:flex!important;justify-content:center!important;align-items:center!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{width:26px!important;height:26px!important;flex:0 0 26px!important}

/* Semaforo ampliado con luces mas visibles. */
body repetidores-widget .semaforo{width:144px!important;max-width:100%!important;height:48px!important;min-height:48px!important;padding:4px!important;gap:5px!important}
body repetidores-widget .semaforo>.btn.btn-secondary{flex:0 0 38px!important;width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;padding:2px!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{width:32px!important;height:32px!important;flex:0 0 32px!important}

/* Referencia del usuario: tres modulos independientes con lentes circulares. */
body repetidores-widget .semaforo{display:flex!important;flex-direction:row!important;width:120px!important;max-width:100%!important;height:38px!important;min-height:38px!important;justify-content:space-between!important;align-items:center!important;gap:6px!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;margin:8px 0 14px auto!important}
body repetidores-widget .semaforo>.btn.btn-secondary{display:flex!important;flex:0 1 36px!important;width:36px!important;min-width:0!important;max-width:36px!important;height:34px!important;min-height:34px!important;align-items:center!important;justify-content:center!important;padding:3px!important;margin:0!important;background:#243c53!important;border:1px solid #475f76!important;border-radius:5px!important;box-shadow:0 2px 4px #0f172a14!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{display:block!important;width:26px!important;height:26px!important;flex:0 0 26px!important;border-radius:50%!important;border:1px solid #91a4b6!important;box-sizing:border-box}
body repetidores-widget .semaforo>.btn.btn-secondary:hover{background:#304e69!important;border-color:#7dd3fc!important}

/* Lente centrada en ambos ejes, sin desplazamientos heredados. */
body repetidores-widget .semaforo>.btn.btn-secondary{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0!important;text-indent:0!important;line-height:1!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{position:absolute!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-50%)!important;margin:0!important}

/* Modulos y lentes ampliados conservando el centrado. */
body repetidores-widget .semaforo{width:144px!important;height:46px!important;min-height:46px!important;gap:5px!important}
body repetidores-widget .semaforo>.btn.btn-secondary{flex:1 1 44px!important;width:44px!important;max-width:44px!important;height:44px!important;min-height:44px!important;border-radius:6px!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{width:34px!important;height:34px!important;flex-basis:34px!important}

/* Semaforos ampliados un 30%; el panel reserva el ancho necesario. */
@media(min-width:768px){.col.d-none.d-md-block:has(basculas-widget){width:216px!important;min-width:216px!important;max-width:216px!important;flex:0 0 216px!important}}
body repetidores-widget .semaforo{width:187px!important;height:60px!important;min-height:60px!important;gap:6px!important}
body repetidores-widget .semaforo>.btn.btn-secondary{flex:1 1 57px!important;width:57px!important;max-width:57px!important;height:57px!important;min-height:57px!important;border-radius:8px!important}
body repetidores-widget .semaforo>.btn.btn-secondary img{width:44px!important;height:44px!important;flex-basis:44px!important}

/* Respaldos: alineacion con el contenido principal y acciones compactas. */
ega-backup-panel{padding:0!important}
.ega-backup-card{max-width:none!important;margin:0!important}
.ega-backup-card>[data-action=review]{width:160px!important;max-width:100%;min-height:36px!important;height:36px;padding:7px 14px!important;font-size:12px}
.ega-backup-card input[type=file]::file-selector-button{width:160px!important;min-height:36px!important;height:36px;padding:7px 12px!important;font-size:12px}
.ega-backup-card input[type=file]{min-height:36px!important;font-size:12px}
.ega-backup-card label{margin:16px 0 12px}

/* Semaforos centrados respecto de su tarjeta. */
body repetidores-widget .semaforo{margin-left:auto!important;margin-right:auto!important}

/* Dialogos contenidos y botones de seleccion compactos. */
.modal-dialog{width:calc(100vw - 32px)!important;max-width:1040px!important}
.modal-dialog:has(.modal-encabezado-grande .icon-caja):not(:has(table)){max-width:720px!important}
.modal table .btn.btn-primary,.modal table .btn.btn-secondary{box-sizing:border-box;width:auto!important;min-width:100px!important;min-height:32px!important;height:32px!important;padding:6px 12px!important;margin:2px!important;font-size:12px!important;line-height:18px!important;border-radius:7px!important;white-space:nowrap}
.modal table td{vertical-align:middle;padding-top:9px!important;padding-bottom:9px!important}
@media(max-width:600px){.modal-dialog{width:calc(100vw - 16px)!important;margin:8px auto!important}.modal table .btn.btn-primary,.modal table .btn.btn-secondary{min-width:86px!important;padding:6px 8px!important}}

/* Formularios de carga y confirmacion con ancho moderado. */
.modal-dialog:not(:has(table)):not(:has(.card-pesada)){max-width:800px!important}
.modal-dialog:has(.modal-encabezado-grande .icon-caja):not(:has(table)){max-width:720px!important}
.modal-dialog:not(:has(table)) .modal-encabezado-grande{min-height:0!important}

.ega-backup-history{overflow-x:auto}.ega-backup-history table{width:100%;font-size:12px}.ega-backup-history td:first-child{overflow-wrap:anywhere;min-width:220px}.ega-backup-history td{vertical-align:top}.ega-backup-history th{text-align:left;white-space:nowrap}

.ega-backup-arrow{display:inline-block;color:#16a34a;font-size:26px;font-weight:800;line-height:1;vertical-align:middle}.ega-backup-history td:first-child{min-width:110px;white-space:nowrap}.ega-backup-history td:nth-child(2){min-width:220px;overflow-wrap:anywhere}

/* Historial: iconos de trazo iguales a los demas controles de EGA. */
.batch-icon.icon-cargar::before{content:""!important;display:inline-block;width:1em;height:1em;vertical-align:-.12em;background-color:currentColor;-webkit-mask:url("acciones/cargar.svg") center/contain no-repeat;mask:url("acciones/cargar.svg") center/contain no-repeat}
.ega-backup-history .ega-backup-arrow{font-size:20px;font-weight:400;color:#16a34a;line-height:1;vertical-align:middle;margin-right:4px}
