/* .contenedor-totales-ventas-pos {
  width: 100%;
  height: 88vh;
  overflow-y: auto;
  overflow-x: hidden;
} */
 .pos-contenedoor{
  position: fixed !important;
  width: 100vw !important;
  height: 100vh !important;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 0 !important;
  background-color: #ffffff;
  left: 0 !important;

 }
 .pos-contenedor-fluido{
  margin: 0;
  padding: 0;
  border-style: none !important;
  outline: 0;
  margin-right: 5px;
  
 }
 .contenedor-productos-ventas{
  width: 100%;
 }
.contenedor-productos-ventas input,
.contenedor-productos-ventas select {
  outline: none !important;
  border-style: none !important;
  border-radius: 5px;
  border: 1px solid #5741d370 !important;
  /* font-size: 1.2em;
  height: 40px; */
}
.productos-pos .productos-pos-venta .btn-mas-menos {
  /* background-color: #6fad28; */
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  height: 370px;
}
.productos-pos .productos-pos-venta .precio-uni-pos {
  /* background-color: #6fad28; */
  display: flex;
  flex-flow: column;
  justify-content: flex-end;
  align-items: stretch;
  height: 600px;
}
.productos-pos .productos-pos-venta .formFotoPos {
  background-color: #6fad28;
}

.productos-pos {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  height: 85vh;
  padding: 5px;
  justify-content: center;
  overflow-y: auto;
  overflow-x: hidden;
}

.productos-pos .productos-pos-venta {
  position: relative;
  display: flex;
  flex-flow: column;
  justify-content: space-around;
  align-items: center;
  width: 180px;
  height: 280px;
  margin: 5px;
  border: 1px solid #e7e7e7;
  padding: 5px;
  border-radius: 7px;
  overflow: visible;
}
/* Header de stock */
.productos-pos .productos-pos-venta .stock-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  padding: 5px 8px;
  font-size: 0.75em;
  font-weight: 700;
  text-align: center;
  color: #ffffff;
  z-index: 0;
  border-radius: 7px 7px 0 0;
  letter-spacing: 0.5px;
  overflow: hidden;
}
.productos-pos .productos-pos-venta .stock-disponible {
  background-color: #28a745;
}
.productos-pos .productos-pos-venta .stock-agotado {
  background-color: #dc3545;
}
.productos-pos .productos-pos-venta img {
  width: 150px;
  border-radius: 5px;
  margin-top: 25px;
}
.productos-pos .productos-pos-venta * {
  margin: 2px;
  text-align: center;
}

.productos-pos .productos-pos-venta .precio-unitario {
  font-weight: 700;
  color: #6fad28;
}
.productos-pos .productos-pos-venta .descripcion-pos {
  text-transform: uppercase;
  font-size: 0.85em;
  font-weight: 600;
  color: #545454;
}
.productos-pos .productos-pos-venta input {
  outline: none;
  border-style: none;
  border: 1px solid rgb(67, 94, 214);
  padding: 0px 2px 2px 10px;
  text-align: center;
  font-weight: 700;
  border-radius: 0px !important;
  width: 65px;
  height: 24px;
  margin-left: 0;
  margin-right: 0;
  border-left: 0px;
  border-right: 0px;
}
.productos-pos .productos-pos-venta .fotoPos {
  display: none;
}
.productos-pos .productos-pos-venta span {
  outline: none;
  border-style: none;
  font-size: 1em;
  text-align: center;
  font-weight: 800;
  width: 20px !important;
  cursor: pointer;
  color: #fff;
  margin: 0 !important;
}
.productos-pos .productos-pos-venta .btn-pos-mas {
  background-color: #5a8e20;
  border-radius: 0px 20px 20px 0px;
}
.productos-pos .productos-pos-venta .btn-pos-menos {
  background-color: #f65454;
  border-radius: 20px 0px 0px 20px;
}

.paginador-pos {
  width: 100%;
}
.productos-pos {
  scrollbar-width: thin;
  scrollbar-color: rgb(225, 225, 225) rgb(255, 255, 255);
}

/* Works on Chrome, Edge, and Safari */
.productos-pos::-webkit-scrollbar {
  width: 10px;
}

.productos-pos::-webkit-scrollbar-track {
  background: rgb(248, 248, 248);
}

.productos-pos::-webkit-scrollbar-thumb {
  background-color: rgb(225, 225, 225);
  border-radius: 20px;
  border: 3px solid rgb(255, 255, 255);
}

.super-contenedor-formulario-pos{
  scrollbar-width: thin;
  scrollbar-color: rgb(202, 202, 202) rgb(255, 255, 255);
}
/* Works on Chrome, Edge, and Safari */
.super-contenedor-formulario-pos::-webkit-scrollbar {
  width: 10px;
}

.super-contenedor-formulario-pos::-webkit-scrollbar-track {
  background: rgb(248, 248, 248);
}

.super-contenedor-formulario-pos::-webkit-scrollbar-thumb {
  background-color: rgb(225, 225, 225);
  border-radius: 20px;
  border: 3px solid rgb(255, 255, 255);
}
.contenedor-menu-pos {
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  top: 0;
  right: -16px;
  z-index: 3;
  background-color: #36363600;
  padding: 3px;
  border-radius: 18px;
  height: 70px;
}
.productos-pos .foto-pos {
  font-size: 1.3em;
  color: #ffffff;
  cursor: pointer;
  margin-bottom: 1px;
  background-color: #fd446c;
  padding: 5px;
  border-radius: 50%;
}
.productos-pos .edit-pos {
  font-size: 1.3em;
  color: #ffffff;
  cursor: pointer;
  background-color: #2f55ca;
  padding: 5px;
  border-radius: 50%;
}

.contenedor-icbper-linea {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}
.contenedor-icbper-linea input {
  margin-left: 5px;
}
.descripcion-de-items {
  padding: 10px;
  text-align: center;
  font-weight: 600;
  font-size: 1.8em;
  color: #939393;
}
.form-items-pos .form-group {
  margin: 3px;
}
.form-items-pos .col-md-6 {
  padding: 2px;
}
#formVentaPos .form-group {
  margin: 3px;
  width: 100%;
}
#formVentaPos legend {
  margin: 3px;
}
#formVentaPos .col-md-6 {
  padding: 2px;
}
#formVentaPos .tabla-descuentos legend {
  border-style: none !important;
}
#formVentaPos #docIdentidad,
#formVentaPos #email {
  z-index: 0;
}
.contenedor-totales-ventas-pos .col-md-5,
.contenedor-totales-ventas-pos .col-md-7 {
  padding: 0;
}

.super-contenedor-herramientas-pos {
  position: fixed;
  display: flex;
  flex-direction: column;
  z-index: 3;
  right: -35px;
  top: 3px;
  width: 40px;
  height: 40px;
  background-color: rgba(240, 230, 140, 0);
}
.contenedor-herramientas-pos {
  position: fixed;
  display: flex;
  flex-direction: column;
  z-index: 1;
  right: 0;
  top: 4%;
  transform: translateX(100%);
  transition: all 0.2s;
}
#btnMenuHerramientas {
  display: none;
}

.super-contenedor-herramientas-pos .btn-h-pos {
  width: 25px;
  height: 25px;
  background-color: #00000000 !important;
  position: absolute;
  top: 0px;
  left: -22px;
  z-index: 2;
  cursor: pointer;
  border-radius: 50%;
  padding: 3px;
  padding-left: 5px;
  color: #fbfbfb;
  font-size: 1.2em;
}
.super-contenedor-herramientas-pos .btn-h-pos i {
  position: absolute;
  width: 30px;
  height: 30px;
  background-color: #494949 !important;
  padding: 7px;
  border-radius: 50%;
  right: 0px;
  top: 0;
}
#btnMenuHerramientas:checked ~ .contenedor-herramientas-pos {
  transform: translateX(0%);
}

.contenedor-herramientas-pos label:nth-of-type(1) {
  border-radius: 7px 0px 0px 0px !important;
}
.contenedor-herramientas-pos label:nth-of-type(7) {
  border-radius: 0px 0px 0px 7px !important;
  text-align: center;
  background-color: #3f3f3f;
  display: flex;
  justify-content: space-around;
}
.contenedor-herramientas-pos label {
  padding: 10px;
  background-color: #343434;
  z-index: 1;
  color: #f5f5f5;
  font-weight: 600;
  border-radius: 0;
  border-bottom: 1px solid #4e4e4e;
  letter-spacing: 1px;
  /* font-family: Arial, Helvetica, sans-serif; */
}
.contenedor-herramientas-pos label:hover {
  color: #e2e2e2;
  background-color: #3a3a3a;
}
.contenedor-herramientas-pos .herramientas_pos {
  display: none;
}
.activar-envio-sunat {
  background-color: #52a422 !important;
}
/* .seccion-fechas-moneda-correlativo {
  box-sizing: border-box;
  position: absolute;
  z-index: 999;
  background-color: #383838;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
}
.seccion-coreo-cuotas {
  color: #ffffff;
  box-sizing: border-box;
  position: fixed;
  z-index: 999;
  background-color: #383838;
  height: 110px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
}
.seccion-observacion {
  color: #ffffff;
  box-sizing: border-box;
  position: fixed;
  z-index: 999;
  background-color: #383838;
  height: 140px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  top: 200px;
} */
/* @media (min-width: 992px) {
  .col-md-5 {
    padding: 0 !important;
  }
} */

.container-comprobants-pos {
  display: flex;
  flex-flow: row;
  justify-content: stretch;
  width: 250px;
  z-index: 1;
  margin: 0 auto;
  background-color: #4a4a4a;
  color: #f6f6f6;
  border-radius: 0px 0px 8px 8px;
  height: 28px;
}
.container-comprobants-pos .tipo_comprobante {
  display: none;
}
.container-comprobants-pos label {
  flex: 1;
  font-size: 0.7em;
  margin: 0 auto;
  background-color: #4a4a4a00;
  color: #f6f6f6;
  height: 28px;
  font-weight: 700;
  border-radius: 0px 0px 8px 8px;
  letter-spacing: 1px;
}
.container-comprobants-pos label:hover {
  background-color: rgb(62, 62, 62);
  color: #efefef;
}

.factura {
  background-color: #6fad28 !important;
  border-radius: 0px 0px 0px 8px !important;
}
.boleta {
  background-color: #5b39d6 !important;
}
.nota {
  background-color: #f14a4a !important;
  border-radius: 0px 0px 8px 0px !important;
}

/* @media (max-width: 545px){
    .rounded-pos{
        margin-top: 50px;
    }
  } */
@media (max-width: 388px) {
  .productos-pos {
    height: 63vh;
    z-index: 0;
  }
  .productos-pos .productos-pos-venta {
    width: 99%;
  }
}
#formVentaPos .cantidaditempos {
  outline: none !important;
  border-style: none !important;
  padding: 0px 10px 0px 10px !important;
  text-align: center !important;
  width: 80px;
  height: 28px !important;
  border: 1px solid rgba(116, 101, 252, 0.7) !important;
}

#formVentaPos .preciounitariopos {
  outline: none !important;
  border-style: none !important;
  padding: 0px 10px 0px 10px !important;
  text-align: center !important;
  width: 100px;
  height: 28px !important;
  border: 1px solid rgba(116, 101, 252, 0.7) !important;
}
#formVentaPos #descuentoGlobalpos,
#formVentaPos #descuentoGlobalPpos {
  border-radius: 0px 5px 5px 0px !important;
}
#formVentaPos .tabla-items thead {
  font-size: 1rem !important;
}
#formVentaPos .tabla-totales tbody tr td:nth-child(1) {
  width: 60% !important;
  font-size: 1em;
  padding-bottom: 0;
}
.super-contenedor-formulario-pos .tabla-totales tbody tr td:nth-child(2) {
  width: 40% !important;
  font-size: 1.2em;
  padding-bottom: 0 !important;
}
.super-contenedor-productos-pos {
  padding-right: 5px !important;
}
.super-contenedor-formulario-pos {
  padding-left: 0 !important;
  height: 98vh;
  overflow-y: auto;
  margin-left: 0;
  overflow-x: hidden;
}
.contenedor-productos-ventas .col-md-2,
.contenedor-productos-ventas .col-md-3,
.contenedor-productos-ventas .col-md-7 {
  padding: 5px !important;
}
@media (max-width: 992px) {
  .pos-contenedor-fluido{
    height: 100vh !important;
    overflow-y: auto !important;
  }
  .super-contenedor-formulario-pos {
    padding: 20px !important;
  }
  .contenedor-productos-ventas .form-group {
    margin: 5px !important;
  }
  .contenedor-productos-ventas .col-md-2,
  .contenedor-productos-ventas .col-md-3,
  .contenedor-productos-ventas .col-md-7 {
    padding: 0 !important;
  }
}
.btn-agregar-ps-pos {
  position: absolute;
  width: 100%;
  background-color: #5a8e2099;
  top: 0;
  height: 150px;
  display: flex;
  opacity: 0;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.ocultar-canasta {
  position: absolute;
  width: 100%;
  background-color: #5a8e2000;
  top: 0;
  height: 150px;
  display: flex;
  opacity: 0;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.ver-canasta {
  position: absolute;
  width: 100%;
  background-color: #5a8e2000;
  top: 0;
  height: 150px;
  display: flex;
  opacity: 1;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.btn-agregar-ps-pos i {
  text-align: center;
  width: 50px;
  height: 50px;
  font-size: 1.8em;
  padding-top: 17px;
  background-color: #3c3cbed8;
  border-radius: 50%;
  color: #f9f9f9;
  cursor: pointer;
}

.radio-envio-pos #no {
  display: none;
}
.inicio-pos {
  outline: none;
  border-style: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  padding-right: 6px;
  text-align: center;
  background-color: #323232d8;
}
.inicio-pos i {
  color: #ffffff !important;
}
.super-contenedor-formulario-pos .nuevoProducto {
  padding: 2px !important;
}

.contenedor-cuotas {
  display: none;
}

.contenedor-productos-ventas
  .select2-container--default
  .select2-selection--single,
.contenedor-productos-ventas .select2-selection .select2-selection--single {
  border: 2px solid #00e676 !important;
  padding: 8px 12px;
  height: 48px;
  border-radius: 10px;
  cursor: pointer;
  width: 100% !important;
}

/* ========================================
   REDISEÑO VISUAL POS — ESTILO FARMACIA
   ======================================== */

/* Fondo general */
.pos-contenedoor {
  background: #f0f4ff !important;
}

/* Panel izquierdo — productos */
.super-contenedor-productos-pos {
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 2px 12px rgba(0,0,0,.07);
  padding: 12px !important;
  margin-bottom: 10px;
}

/* Barra de búsqueda y filtros */
.contenedor-productos-ventas {
  background: #f8faff;
  border-radius: 10px;
  padding: 10px !important;
  margin-bottom: 10px !important;
  border: 1px solid #e2e8f0;
}
.contenedor-productos-ventas input,
.contenedor-productos-ventas select {
  border: 2px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 7px 12px !important;
  font-size: .95rem !important;
  color: #1e293b !important;
  background: #fff !important;
  height: 38px !important;
  transition: border-color .2s !important;
}
.contenedor-productos-ventas input:focus,
.contenedor-productos-ventas select:focus {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.1) !important;
}

/* Grid de productos */
.productos-pos {
  height: 78vh !important;
  padding: 8px 4px !important;
  gap: 8px;
  justify-content: flex-start !important;
}

/* Tarjeta de producto */
.productos-pos .productos-pos-venta {
  width: 155px !important;
  height: auto !important;
  min-height: 220px !important;
  border: none !important;
  border-radius: 13px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.08) !important;
  padding: 0 !important;
  overflow: hidden !important;
  transition: transform .15s, box-shadow .15s !important;
  background: #fff !important;
}
.productos-pos .productos-pos-venta:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.14) !important;
}

/* Header de stock */
.productos-pos .productos-pos-venta .stock-header {
  border-radius: 0 !important;
  font-size: .72rem !important;
  padding: 4px 8px !important;
  letter-spacing: .03em !important;
}
.productos-pos .productos-pos-venta .stock-disponible {
  background: linear-gradient(90deg, #16a34a, #15803d) !important;
}
.productos-pos .productos-pos-venta .stock-agotado {
  background: linear-gradient(90deg, #dc2626, #b91c1c) !important;
}

/* Nombre del producto */
.productos-pos .productos-pos-venta .descripcion-pos {
  font-size: .78rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  padding: 6px 8px 2px !important;
  min-height: unset !important;
  line-height: 1.25 !important;
  height: auto !important;
}

/* Precio */
.productos-pos .productos-pos-venta .precio-unitario {
  font-size: 1rem !important;
  font-weight: 900 !important;
  padding: 2px 8px 6px !important;
  height: auto !important;
}
.productos-pos .productos-pos-venta .precio-uni-pos {
  height: auto !important;
}

/* Botones +/- */
.productos-pos .productos-pos-venta .btn-mas-menos {
  height: auto !important;
  padding: 0 8px 8px !important;
}
.productos-pos .productos-pos-venta .btn-pos-menos,
.productos-pos .productos-pos-venta .btn-pos-mas {
  background: #6fad28 !important;
  color: #fff !important;
  border: none !important;
  font-weight: 900 !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
  font-size: 1rem !important;
  cursor: pointer !important;
}
.productos-pos .productos-pos-venta .btn-pos-menos:hover {
  background: #dc2626 !important;
}
.productos-pos .productos-pos-venta .btn-pos-mas:hover {
  background: #16a34a !important;
}
.productos-pos .productos-pos-venta input.cantidad-number {
  text-align: center !important;
  font-weight: 700 !important;
  font-size: .9rem !important;
  height: 30px !important;
  border: 2px solid #e2e8f0 !important;
  border-radius: 0 !important;
}

/* Botón agregar al carrito */
.btn-agregar-ps-pos {
  background: rgba(255,255,255,.22) !important;
  border-radius: 50% !important;
  width: 28px !important;
  height: 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background .15s !important;
}
.btn-agregar-ps-pos:hover {
  background: rgba(255,255,255,.4) !important;
}

/* Panel derecho — formulario/totales */
.super-contenedor-formulario-pos {
  padding-left: 8px !important;
}
.contenedor-totales-ventas-pos {
  border-radius: 14px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08) !important;
  border: none !important;
  overflow: hidden !important;
}
.contenedor-totales-ventas-pos .box-header {
  background: linear-gradient(135deg, #5a8e20, #6fad28) !important;
  padding: 12px 15px !important;
  color: #fff !important;
}

/* Tabla de totales */
.tabla-totales { margin-bottom: 0 !important; }
.tabla-totales td {
  padding: 6px 8px !important;
  font-size: .95rem !important;
  border: none !important;
}
.tabla-totales .total-grande {
  font-size: 1.4rem !important;
  font-weight: 900 !important;
  color: #6fad28 !important;
}

/* Botones del carrito */
.contenedor-btns-carrito {
  background: #f8faff !important;
  padding: 10px !important;
  border-top: 1px solid #e2e8f0 !important;
  display: flex !important;
  gap: 8px !important;
}
.contenedor-btns-carrito .btn {
  border-radius: 9px !important;
  font-weight: 700 !important;
  font-size: .9rem !important;
  padding: 9px 16px !important;
  border: none !important;
  flex: 1 !important;
}
.contenedor-btns-carrito .btn-success {
  background: linear-gradient(135deg, #16a34a, #15803d) !important;
  color: #fff !important;
}
.contenedor-btns-carrito .btn-danger {
  background: linear-gradient(135deg, #dc2626, #b91c1c) !important;
  color: #fff !important;
}
.contenedor-btns-carrito .btn-primary {
  background: linear-gradient(135deg, #6fad28, #5a8e20) !important;
  color: #fff !important;
}

/* Tabla carrito */
.tabla-carrito-pos, #tablaCarritoPos {
  font-size: .85rem !important;
}
.tabla-carrito-pos th, #tablaCarritoPos th {
  background: var(--backgroundthead, #f1f5f9) !important;
  color: var(--texth, #64748b) !important;
  font-weight: 700 !important;
  font-size: .75rem !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
  padding: 6px 8px !important;
  border: none !important;
}
.tabla-carrito-pos td, #tablaCarritoPos td {
  padding: 6px 8px !important;
  vertical-align: middle !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

/* Inputs del formulario derecho */
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control {
  border-radius: 8px !important;
  border: 2px solid #e2e8f0 !important;
  font-size: .9rem !important;
  padding: 6px 10px !important;
  color: #1e293b !important;
  transition: border-color .2s !important;
}
.super-contenedor-formulario-pos input.form-control:focus,
.super-contenedor-formulario-pos select.form-control:focus {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.1) !important;
}

/* Foto/editar ocultos */
.foto-pos, .edit-pos { display: none !important; }

/* ===== VISTA LISTA (reemplaza las tarjetas) ===== */
.productos-pos {
  display: block !important;
  height: 78vh !important;
  overflow-y: auto !important;
  padding: 0 !important;
  background: #fff;
  border-radius: 10px;
}
.productos-pos .productos-pos-venta {
  width: 100% !important;
  height: auto !important;
  min-height: unset !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: table-row !important;
}
.fila-producto-pos td { cursor: default; }
.productos-pos table { width: 100%; border-collapse: collapse; }

/* ===== PANEL DERECHO — LETRAS MÁS GRANDES ===== */
.super-contenedor-formulario-pos,
.contenedor-totales-ventas-pos {
  font-size: 1rem !important;
}
.contenedor-totales-ventas-pos label,
.contenedor-totales-ventas-pos .control-label,
.contenedor-totales-ventas-pos td,
.contenedor-totales-ventas-pos th,
.contenedor-totales-ventas-pos p,
.contenedor-totales-ventas-pos span,
.contenedor-totales-ventas-pos div {
  font-size: 1rem !important;
}
.contenedor-totales-ventas-pos input.form-control,
.contenedor-totales-ventas-pos select.form-control {
  font-size: 1rem !important;
  height: 38px !important;
  padding: 6px 12px !important;
}
.tabla-totales td { font-size: 1rem !important; padding: 7px 10px !important; }
.tabla-totales .total-grande { font-size: 1.5rem !important; font-weight: 900 !important; }
.contenedor-btns-carrito .btn { font-size: 1rem !important; padding: 10px 16px !important; }

/* Cliente y campos superiores */
#nombreCliente, #documentoCliente, #direccionCliente,
#telefonoCliente, #correoCliente {
  font-size: 1rem !important;
  height: 38px !important;
}

/* ===== FUENTES GRANDES EN TODO EL POS ===== */
.pos-contenedoor,
.pos-contenedoor * {
  font-size: 1rem !important;
}
.contenedor-productos-ventas input,
.contenedor-productos-ventas select {
  font-size: 1.05rem !important;
  height: 42px !important;
  padding: 8px 14px !important;
}
.super-contenedor-formulario-pos label,
.super-contenedor-formulario-pos .control-label {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
}
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control,
.super-contenedor-formulario-pos textarea.form-control {
  font-size: 1rem !important;
  height: 40px !important;
  border-radius: 8px !important;
  border: 2px solid #e2e8f0 !important;
  color: #1e293b !important;
}
/* Tabla totales */
.tabla-totales td { font-size: 1.05rem !important; padding: 9px 12px !important; }
.totales td { font-size: 1.05rem !important; }
/* Botones guardar/limpiar */
.contenedor-btns-carrito .btn {
  font-size: 1.05rem !important;
  padding: 11px 18px !important;
  border-radius: 10px !important;
  font-weight: 800 !important;
}
/* Tabla del carrito */
#tablaCarritoPos th { font-size: .85rem !important; padding: 9px 8px !important; }
#tablaCarritoPos td { font-size: 1rem !important; padding: 9px 8px !important; }
/* Título CLIENTE */
.contenedor-totales-ventas-pos .box-header,
.contenedor-totales-ventas-pos h3,
.contenedor-totales-ventas-pos h4 {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
}
/* Descuento, IGV, Total labels */
.tabla-totales .text-right { font-size: 1.05rem !important; }

/* ===== PANEL DERECHO — FIX LETRAS AMONTONADAS ===== */
.super-contenedor-formulario-pos .form-group {
  margin-bottom: 12px !important;
}
.super-contenedor-formulario-pos .col-md-6,
.super-contenedor-formulario-pos .col-md-12,
.super-contenedor-formulario-pos .col-md-4 {
  padding: 4px 6px !important;
}
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control {
  font-size: 1rem !important;
  height: 40px !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  border: 2px solid #e2e8f0 !important;
  margin-bottom: 0 !important;
}
.super-contenedor-formulario-pos label,
.super-contenedor-formulario-pos .control-label {
  font-size: .95rem !important;
  font-weight: 700 !important;
  color: #475569 !important;
  margin-bottom: 4px !important;
  display: block !important;
}
/* Tabla del carrito - más espacio */
#tablaCarritoPos th {
  font-size: .82rem !important;
  padding: 10px 8px !important;
  background: var(--backgroundthead, #f1f5f9) !important;
  color: var(--texth, #64748b) !important;
  font-weight: 700 !important;
  border: none !important;
}
#tablaCarritoPos td {
  font-size: .95rem !important;
  padding: 10px 8px !important;
  vertical-align: middle !important;
  border-bottom: 1px solid var(--backgroundthead, #f1f5f9) !important;
}
/* Resumen totales */
.tabla-totales td {
  font-size: 1rem !important;
  padding: 9px 12px !important;
  border: none !important;
}
.tabla-totales tr:last-child td {
  font-size: 1.2rem !important;
  font-weight: 900 !important;
  color: #6fad28 !important;
  border-top: 2px solid #e2e8f0 !important;
}
/* Botones monto/vuelto */
#montoRecibido, #vuelto {
  font-size: 1rem !important;
  height: 42px !important;
  border-radius: 8px !important;
  border: 2px solid #e2e8f0 !important;
  text-align: center !important;
  font-weight: 700 !important;
}
/* Sección descuento */
.super-contenedor-formulario-pos .input-group-addon {
  font-size: 1rem !important;
  padding: 8px 12px !important;
  border-radius: 8px 0 0 8px !important;
}
/* Forzar precio visible */
.btn-precio-lista {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* ===== LETRAS MÁS GRANDES — TABLA DE PRODUCTOS AÑADIDOS (LADO DERECHO) ===== */

/* Encabezados de la tabla de items */
#formVentaPos .tabla-items thead th,
.tabla-items thead th {
  font-size: 1rem !important;
  font-weight: 800 !important;
  padding: 10px 10px !important;
  text-transform: uppercase !important;
  letter-spacing: .03em !important;
  background: var(--backgroundthead, #f1f5f9) !important;
  color: var(--texth, #1e293b) !important;
}

/* Celdas del cuerpo de la tabla de items */
#formVentaPos .tabla-items tbody td,
.tabla-items tbody td {
  font-size: 1rem !important;
  padding: 10px 10px !important;
  vertical-align: middle !important;
}

/* Precio unitario dentro de la tabla de items */
#formVentaPos .tabla-items .preciounitariopos,
.tabla-items .preciounitariopos {
  font-size: 1rem !important;
  height: 34px !important;
  width: 110px !important;
  text-align: center !important;
  font-weight: 700 !important;
}

/* Sub.Total y precio bien visibles */
#formVentaPos .tabla-items .subtotalpos,
.tabla-items td:last-child {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #6fad28 !important;
}

/* Input de cantidad dentro de la tabla */
#formVentaPos .tabla-items input[type="number"],
.tabla-items input.cantidadpos {
  font-size: 1rem !important;
  height: 34px !important;
  text-align: center !important;
  font-weight: 700 !important;
}

/* Descripción del producto en la tabla */
#formVentaPos .tabla-items .descriptionpos,
.tabla-items td.descripcion-item {
  font-size: 1rem !important;
  font-weight: 600 !important;
}

/* Contenedor items-c */
.items-c {
  font-size: 1rem !important;
}

/* ===== FIX PRECIO VISIBLE EN VISTA LISTA ===== */
/* El original .btn-agregar-ps-pos tiene opacity:0 (modo tarjeta).
   En vista lista (tabla), lo forzamos siempre visible */
.fila-producto-pos .btn-agregar-ps-pos,
.fila-producto-pos .btn-precio-lista,
table .btn-agregar-ps-pos,
table .btn-precio-lista {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: inline-block !important;
  background: linear-gradient(135deg, #6fad28, #5a8e20) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 9px !important;
  padding: 8px 12px !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

/* ===== LETRAS MÁS GRANDES — TABLA IZQUIERDA (lista de productos) ===== */
.productos-pos table,
.productos-pos table td,
.productos-pos table th {
  font-size: 1rem !important;
}
.productos-pos table td {
  padding: 12px 12px !important;
  vertical-align: middle !important;
}
.productos-pos table th {
  padding: 13px 12px !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
}
/* Nombre del producto en la lista */
.fila-producto-pos td div[style*="font-size:1.1rem"],
.fila-producto-pos .nombre-prod {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  color: #1e293b !important;
}
/* Código monospace más visible */
.fila-producto-pos td:first-child {
  font-size: 1rem !important;
  color: #475569 !important;
  font-family: monospace !important;
}
/* Stock badge */
.fila-producto-pos td span {
  font-size: 1rem !important;
  font-weight: 800 !important;
  padding: 5px 16px !important;
  border-radius: 20px !important;
}
/* Botones + y - de cantidad */
.fila-producto-pos .btn-pos-menos,
.fila-producto-pos .btn-pos-mas {
  font-size: 1.15rem !important;
  padding: 7px 15px !important;
  font-weight: 900 !important;
}
/* Input cantidad */
.fila-producto-pos input.cantidad-number,
.fila-producto-pos input[type="number"] {
  font-size: 1rem !important;
  font-weight: 700 !important;
  height: 36px !important;
  width: 50px !important;
}

/* ===== CAMPO CELULAR — DISEÑO LIMPIO (quita el +51 montado encima) ===== */

/* Wrapper del intl-tel-input */
.iti,
.iti--allow-dropdown,
div.intl-tel-input {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  border: 2px solid #e2e8f0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  transition: border-color .2s !important;
}
.iti:focus-within,
div.intl-tel-input:focus-within {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.12) !important;
}

/* Bandera + código de país */
.iti__flag-container,
.flag-container {
  position: relative !important;
  padding: 0 6px 0 10px !important;
  display: flex !important;
  align-items: center !important;
  border-right: 2px solid #e2e8f0 !important;
  background: #f8faff !important;
  min-width: 64px !important;
  height: 42px !important;
}
.iti__selected-flag,
.selected-flag {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 0 6px !important;
  background: transparent !important;
  border: none !important;
  height: 100% !important;
  cursor: pointer !important;
}
.iti__selected-dial-code,
.selected-dial-code {
  font-size: .95rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  letter-spacing: .01em !important;
}
.iti__flag,
.iti-flag {
  width: 20px !important;
  height: 14px !important;
  border-radius: 2px !important;
}

/* Input del número */
#celular,
input#celular {
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 10px 14px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  background: #fff !important;
  flex: 1 !important;
  height: 42px !important;
  border-radius: 0 !important;
  width: 100% !important;
}
/* Cuando el input está directamente sin iti wrapper */
.form-group #celular,
.input-group-adddon #celular {
  border: 2px solid #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 1rem !important;
  height: 42px !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  background: #fff !important;
  transition: border-color .2s !important;
}
.form-group #celular:focus,
.input-group-adddon #celular:focus {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.12) !important;
}

/* Sección entera del celular + whatsapp */
.radio-envio-pos,
.col-md-6:has(#celular),
.col-md-6:has(.wtstext) {
  display: flex !important;
  align-items: center !important;
}

/* Label ¿Desea enviar al whatsapp? */
.wtstext {
  font-size: .95rem !important;
  font-weight: 700 !important;
  color: #475569 !important;
  white-space: nowrap !important;
}

/* Toggle Sí/No del whatsapp */
.toggle.btn {
  border-radius: 20px !important;
  font-weight: 800 !important;
  font-size: .9rem !important;
  min-width: 65px !important;
}

/* ===== CAMPO CELULAR REDISEÑADO ===== */
.celular-wrapper-pos {
  display: flex !important;
  align-items: center !important;
  border: 2px solid #e2e8f0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  height: 44px !important;
  transition: border-color .2s !important;
}
.celular-wrapper-pos:focus-within {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.1) !important;
}
.celular-prefix-pos {
  display: flex !important;
  align-items: center !important;
  padding: 0 12px !important;
  background: var(--backgroundbox, #f1f5f9) !important;
  border-right: 2px solid var(--text, #e2e8f0) !important;
  height: 100% !important;
  white-space: nowrap !important;
  gap: 4px !important;
}
.celular-input-pos {
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  height: 100% !important;
  padding: 0 14px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  background: #fff !important;
  flex: 1 !important;
}
.celular-input-pos:focus {
  box-shadow: none !important;
  border: none !important;
}
/* Ocultar el widget intl-tel-input si se aplica igual */
.iti { display: flex !important; width: 100% !important; }
.iti input { border: none !important; box-shadow: none !important; }

/* ===== LETRAS MÁS GRANDES — PANEL DERECHO COMPLETO ===== */
/* Etiquetas: CLIENTE, campos, tabla escanear */
.contenedor-totales-ventas-pos,
.super-contenedor-formulario-pos {
  font-size: 1.05rem !important;
}
/* Todos los labels del panel derecho */
.super-contenedor-formulario-pos label,
.super-contenedor-formulario-pos .control-label,
.contenedor-totales-ventas-pos label,
.wtstext {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #374151 !important;
}
/* Inputs y selects panel derecho */
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control,
.contenedor-totales-ventas-pos input.form-control,
.contenedor-totales-ventas-pos select.form-control {
  font-size: 1rem !important;
  height: 44px !important;
  padding: 8px 14px !important;
  border-radius: 10px !important;
  border: 2px solid #e2e8f0 !important;
  color: #1e293b !important;
}
/* Título CLIENTE: */
.contenedor-totales-ventas-pos .box-header h3,
.contenedor-totales-ventas-pos .box-header,
.contenedor-totales-ventas-pos legend {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  letter-spacing: .03em !important;
}
/* Encabezados tabla escanear: CÓDIGO, CANTIDAD, DESCRIPCIÓN... */
.tabla-items thead th {
  font-size: 1rem !important;
  font-weight: 800 !important;
  padding: 12px 10px !important;
  letter-spacing: .03em !important;
}
/* Celdas tabla items */
.tabla-items tbody td,
#itemsP td {
  font-size: 1rem !important;
  padding: 11px 10px !important;
  vertical-align: middle !important;
}
/* RESUMEN, DESCUENTO, IGV, TOTAL */
.tabla-totales td,
.totales td {
  font-size: 1.05rem !important;
  padding: 10px 12px !important;
}
.tabla-totales tr:last-child td {
  font-size: 1.25rem !important;
  font-weight: 900 !important;
}
/* MÉTODO DE PAGO label */
.super-contenedor-formulario-pos legend {
  font-size: 1rem !important;
  font-weight: 800 !important;
}
/* Botones MONTO RECIBIDO / VUELTO */
.contenedor-btns-carrito .btn {
  font-size: 1.05rem !important;
  padding: 12px 16px !important;
  font-weight: 800 !important;
  border-radius: 10px !important;
}
/* Select tipo doc RUC/DNI */
#tipoDocumentoCliente,
#tipoDocumentoCliente + select {
  font-size: 1rem !important;
  height: 44px !important;
}

/* ===== FIX CELULAR: destruir el widget intl-tel-input ===== */
/* Ocultar la bandera duplicada que pone el JS encima */
#celular + .iti__flag-container,
.iti__flag-container { display: none !important; }

/* Resetear el wrapper que crea intl-tel-input */
.iti--allow-dropdown,
.intl-tel-input {
  display: block !important;
  width: 100% !important;
  position: relative !important;
}

/* El input celular con diseño propio */
#celular {
  padding-left: 14px !important;
  border: 2px solid #e2e8f0 !important;
  border-radius: 10px !important;
  height: 44px !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  width: 100% !important;
  box-shadow: none !important;
}
#celular:focus {
  border-color: #6fad28 !important;
  box-shadow: 0 0 0 3px rgba(111,173,40,.12) !important;
}

/* ===== LETRAS MÁS GRANDES PANEL DERECHO ===== */
/* Campos cliente: nombre, dirección, doc */
.contenedor-totales-ventas-pos input.form-control,
.contenedor-totales-ventas-pos select.form-control,
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control {
  font-size: 1.05rem !important;
  height: 44px !important;
  padding: 8px 14px !important;
  border-radius: 10px !important;
  border: 2px solid #e2e8f0 !important;
  color: #1e293b !important;
}
/* Labels del panel */
.super-contenedor-formulario-pos label,
.contenedor-totales-ventas-pos label,
.wtstext,
legend {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: #374151 !important;
}
/* Encabezados tabla escanear */
.tabla-items thead th {
  font-size: 1rem !important;
  font-weight: 800 !important;
  padding: 12px 10px !important;
}
/* Celdas tabla items del carrito */
.tabla-items td, #itemsP td {
  font-size: 1rem !important;
  padding: 11px 10px !important;
  vertical-align: middle !important;
}
/* RESUMEN / DESCUENTO / IGV / TOTAL */
.tabla-totales td, .totales td {
  font-size: 1.05rem !important;
  padding: 10px 12px !important;
}
.tabla-totales tr:last-child td {
  font-size: 1.3rem !important;
  font-weight: 900 !important;
  color: #6fad28 !important;
}
/* Botones carrito */
.contenedor-btns-carrito .btn {
  font-size: 1.05rem !important;
  padding: 12px 16px !important;
  font-weight: 800 !important;
  border-radius: 10px !important;
}
/* Header CLIENTE: */
.contenedor-totales-ventas-pos .box-header {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
}

/* ===== IMAGEN 1: LETRAS TABLA PRODUCTOS IZQUIERDA MÁS GRANDES ===== */
.productos-pos table {
  font-size: 1.15rem !important;
}
.fila-producto-pos td {
  padding: 15px 12px !important;
  font-size: 1.15rem !important;
}
/* Código */
.fila-producto-pos td:first-child {
  font-size: 1rem !important;
  color: #64748b !important;
  font-weight: 600 !important;
}
/* Nombre producto */
.fila-producto-pos td:nth-child(2) div {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
}
/* Badge stock */
.fila-producto-pos td span {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
  padding: 6px 18px !important;
  min-width: 55px !important;
}
/* Botón precio */
.fila-producto-pos .btn-agregar-ps-pos,
.fila-producto-pos .btn-precio-lista {
  font-size: 1.15rem !important;
  padding: 10px 14px !important;
}
/* Botones +/- cantidad */
.fila-producto-pos .btn-pos-menos,
.fila-producto-pos .btn-pos-mas {
  font-size: 1.2rem !important;
  padding: 8px 16px !important;
}
.fila-producto-pos input[type="number"] {
  font-size: 1.1rem !important;
  height: 40px !important;
  width: 52px !important;
}
/* Encabezados tabla */
.productos-pos table thead th {
  font-size: 1rem !important;
  padding: 14px 12px !important;
}

/* ===== IMAGEN 2: LETRAS PANEL DERECHO MÁS GRANDES ===== */
/* CLIENTE: título */
.contenedor-totales-ventas-pos .box-header,
.contenedor-totales-ventas-pos .box-title {
  font-size: 1.2rem !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
}
/* Inputs: número doc, nombre, dirección */
.contenedor-totales-ventas-pos input.form-control,
.contenedor-totales-ventas-pos select.form-control,
.super-contenedor-formulario-pos input.form-control,
.super-contenedor-formulario-pos select.form-control {
  font-size: 1.1rem !important;
  height: 46px !important;
  padding: 10px 14px !important;
}
/* Placeholders */
.contenedor-totales-ventas-pos input::placeholder,
.super-contenedor-formulario-pos input::placeholder {
  font-size: 1rem !important;
  color: #94a3b8 !important;
}
/* Labels */
.super-contenedor-formulario-pos label,
.contenedor-totales-ventas-pos label,
.wtstext, legend {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
}
/* Escanear código + encabezados tabla items */
.tabla-items thead th {
  font-size: 1.05rem !important;
  padding: 13px 10px !important;
  font-weight: 800 !important;
}
.tabla-items td, #itemsP td {
  font-size: 1.05rem !important;
  padding: 12px 10px !important;
}
/* RESUMEN / DESCUENTO / IGV */
.tabla-totales td, .totales td {
  font-size: 1.1rem !important;
  padding: 11px 12px !important;
}
/* TOTAL */
.tabla-totales tr:last-child td {
  font-size: 1.35rem !important;
  font-weight: 900 !important;
}
/* MÉTODO DE PAGO label */
legend, .super-contenedor-formulario-pos legend {
  font-size: 1.1rem !important;
  font-weight: 800 !important;
}
/* Botones MONTO RECIBIDO / VUELTO */
.contenedor-btns-carrito .btn {
  font-size: 1.1rem !important;
  padding: 13px 16px !important;
  font-weight: 800 !important;
}
/* Campo celular */
#celular {
  font-size: 1.1rem !important;
  height: 46px !important;
}
/* ¿Desea enviar al whatsapp? */
.wtstext {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
}
/* Buscador izquierda */
#searchProductoV {
  font-size: 1.1rem !important;
  height: 46px !important;
  padding: 10px 16px !important;
}
#categorias {
  font-size: 1.05rem !important;
  height: 46px !important;
}

/* ============================================================
   MODO OSCURO — POS letras verdes estilo terminal
   ============================================================ */
[data-theme="dark"] .pos-contenedoor,
[data-theme="dark"] .pos-contenedoor * {
  color: #00e676 !important;
}
[data-theme="dark"] .pos-contenedoor {
  background-color: #111 !important;
}
[data-theme="dark"] .pos-contenedoor .box,
[data-theme="dark"] .pos-contenedoor .box-header,
[data-theme="dark"] .super-contenedor-formulario-pos,
[data-theme="dark"] .contenedor-totales-ventas-pos,
[data-theme="dark"] .contenedor-productos-ventas {
  background-color: #161616 !important;
  border-color: #00e676 !important;
}

/* Inputs, selects, textareas */
[data-theme="dark"] .pos-contenedoor input,
[data-theme="dark"] .pos-contenedoor select,
[data-theme="dark"] .pos-contenedoor textarea,
[data-theme="dark"] .pos-contenedoor .form-control {
  background-color: #0d1f0d !important;
  color: #00e676 !important;
  border: 1.5px solid #00e676 !important;
  font-size: 1.05rem !important;
}
[data-theme="dark"] .pos-contenedoor input::placeholder,
[data-theme="dark"] .pos-contenedoor textarea::placeholder {
  color: #006633 !important;
  font-size: 1rem !important;
  opacity: 1 !important;
}
[data-theme="dark"] .pos-contenedoor select option {
  background-color: #0d1f0d !important;
  color: #00e676 !important;
}

/* Labels y textos */
[data-theme="dark"] .pos-contenedoor label,
[data-theme="dark"] .pos-contenedoor .control-label,
[data-theme="dark"] .pos-contenedoor legend,
[data-theme="dark"] .pos-contenedoor .wtstext,
[data-theme="dark"] .pos-contenedoor p,
[data-theme="dark"] .pos-contenedoor span,
[data-theme="dark"] .pos-contenedoor td,
[data-theme="dark"] .pos-contenedoor th {
  color: #00e676 !important;
  font-size: 1.05rem !important;
}

/* Tabla carrito */
[data-theme="dark"] .tabla-carrito-pos,
[data-theme="dark"] #tablaCarritoPos,
[data-theme="dark"] .tabla-items {
  border-color: #00e676 !important;
  background-color: #111 !important;
}
[data-theme="dark"] .tabla-carrito-pos th,
[data-theme="dark"] #tablaCarritoPos th,
[data-theme="dark"] .tabla-items thead th {
  background-color: #0a1f0a !important;
  color: #00ff88 !important;
  border-color: #00e676 !important;
  font-size: 1.05rem !important;
}
[data-theme="dark"] .tabla-carrito-pos td,
[data-theme="dark"] #tablaCarritoPos td,
[data-theme="dark"] .tabla-items td {
  border-color: #003300 !important;
  color: #00e676 !important;
  font-size: 1.05rem !important;
}

/* Tabla totales / resumen */
[data-theme="dark"] .tabla-totales td,
[data-theme="dark"] .totales td {
  color: #00e676 !important;
  border-color: #003300 !important;
  font-size: 1.1rem !important;
}
[data-theme="dark"] .tabla-totales .total-grande {
  color: #00ff88 !important;
  font-size: 1.5rem !important;
}

/* Botones */
[data-theme="dark"] .pos-contenedoor .btn-success {
  background-color: #0a3a0a !important;
  border-color: #00e676 !important;
  color: #00e676 !important;
}
[data-theme="dark"] .pos-contenedoor .btn-primary {
  background-color: #0a2a1a !important;
  border-color: #00e676 !important;
  color: #00e676 !important;
}
[data-theme="dark"] .pos-contenedoor .btn-danger {
  background-color: #2a0000 !important;
  border-color: #ff4444 !important;
  color: #ff4444 !important;
}
[data-theme="dark"] .contenedor-btns-carrito .btn {
  color: #00e676 !important;
  border-color: #00e676 !important;
}

/* Tarjetas de productos */
[data-theme="dark"] .productos-pos-venta {
  background-color: #161616 !important;
  border-color: #00e676 !important;
}
[data-theme="dark"] .productos-pos-venta * {
  color: #00e676 !important;
}

/* ============================================================
   MODO BANCO — POS (igual pero más extremo, ya existía en theme.css)
   ============================================================ */
[data-theme="bank"] .pos-contenedoor,
[data-theme="bank"] .pos-contenedoor * {
  color: #00ff41 !important;
  font-family: 'Courier New', monospace !important;
}
[data-theme="bank"] .pos-contenedoor {
  background-color: #000 !important;
}
[data-theme="bank"] .pos-contenedoor input,
[data-theme="bank"] .pos-contenedoor select,
[data-theme="bank"] .pos-contenedoor .form-control {
  background-color: #000 !important;
  color: #00ff41 !important;
  border: 1.5px solid #00ff41 !important;
  font-size: 1.05rem !important;
}
[data-theme="bank"] .pos-contenedoor input::placeholder {
  color: #006600 !important;
  opacity: 1 !important;
}

/* ===== BARRA BÚSQUEDA Y CATEGORÍA — mismo tamaño, modo oscuro ===== */
#searchProductoV {
  font-size: 1.15rem !important;
  height: 48px !important;
  padding: 10px 16px !important;
  border-radius: 10px !important;
}
#searchProductoV::placeholder {
  font-size: 1.1rem !important;
  opacity: 1 !important;
}
#categorias,
.contenedor-productos-ventas select,
.contenedor-productos-ventas .select2-container {
  height: 48px !important;
  font-size: 1.1rem !important;
  border-radius: 10px !important;
}
.contenedor-productos-ventas .select2-selection--single {
  height: 48px !important;
  line-height: 48px !important;
  border-radius: 10px !important;
}
.contenedor-productos-ventas .select2-selection__rendered {
  line-height: 48px !important;
  font-size: 1.1rem !important;
}
.contenedor-productos-ventas .select2-selection__arrow {
  height: 48px !important;
}

/* MODO OSCURO — barra búsqueda y categoría verdes */
[data-theme="dark"] #searchProductoV,
[data-theme="bank"] #searchProductoV {
  background: #0a1a0a !important;
  color: #00e676 !important;
  border: 2px solid #00e676 !important;
  font-size: 1.15rem !important;
}
[data-theme="dark"] #searchProductoV::placeholder,
[data-theme="bank"] #searchProductoV::placeholder {
  color: #006633 !important;
  font-size: 1.1rem !important;
  opacity: 1 !important;
}
[data-theme="dark"] #categorias,
[data-theme="bank"] #categorias {
  background: #0a1a0a !important;
  color: #00e676 !important;
  border: 2px solid #00e676 !important;
}
[data-theme="dark"] .contenedor-productos-ventas .select2-selection--single,
[data-theme="bank"] .contenedor-productos-ventas .select2-selection--single {
  background: #0a1a0a !important;
  border: 2px solid #00e676 !important;
}
[data-theme="dark"] .contenedor-productos-ventas .select2-selection__rendered,
[data-theme="bank"] .contenedor-productos-ventas .select2-selection__rendered {
  color: #00e676 !important;
}
[data-theme="dark"] .contenedor-productos-ventas .select2-selection__arrow b,
[data-theme="bank"] .contenedor-productos-ventas .select2-selection__arrow b {
  border-color: #00e676 transparent transparent transparent !important;
}

/* ===== SELECT2 DROPDOWN — modo oscuro ===== */
[data-theme="dark"] .select2-dropdown,
[data-theme="bank"] .select2-dropdown {
  background-color: #0a1a0a !important;
  border: 1px solid #00e676 !important;
}
[data-theme="dark"] .select2-results__option,
[data-theme="bank"] .select2-results__option {
  background-color: #0a1a0a !important;
  color: #00e676 !important;
}
[data-theme="dark"] .select2-results__option--highlighted,
[data-theme="dark"] .select2-results__option[aria-selected=true],
[data-theme="bank"] .select2-results__option--highlighted,
[data-theme="bank"] .select2-results__option[aria-selected=true] {
  background-color: #003300 !important;
  color: #00ff88 !important;
}
[data-theme="dark"] .select2-search--dropdown .select2-search__field,
[data-theme="bank"] .select2-search--dropdown .select2-search__field {
  background-color: #0a1a0a !important;
  color: #00e676 !important;
  border: 1px solid #00e676 !important;
}
[data-theme="dark"] .select2-container--default .select2-selection--single,
[data-theme="bank"] .select2-container--default .select2-selection--single {
  background-color: #0a1a0a !important;
  border: 2px solid #00e676 !important;
}
[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered,
[data-theme="bank"] .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #00e676 !important;
}
[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b,
[data-theme="bank"] .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #00e676 transparent transparent transparent !important;
}

/* ===== LISTA PRODUCTOS POS — clases CSS controladas por tema ===== */

/* MODO CLARO — defaults */
.thead-pos-lista { background: linear-gradient(135deg,#1e40af,#2563eb); color:#fff; }
.thead-pos-lista th { padding:12px 14px; font-size:.85rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; text-align:left; border-style:none!important; }

.fila-par  { background:#ffffff; }
.fila-impar { background:#f0f7ff; }
.fila-par td, .fila-impar td { border-color:#e2e8f0; }

.celda-codigo { padding:13px 12px; font-size:.9rem; color:#64748b; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; vertical-align:middle; }
.celda-desc   { padding:13px 12px; text-align:left; vertical-align:middle; }
.nombre-producto { font-size:1.15rem; font-weight:700; color:#1e293b; line-height:1.3; }
.marca-producto  { font-size:.82rem; color:#94a3b8; margin-top:2px; font-style:italic; }
.cat-producto    { font-size:.80rem; color:#94a3b8; margin-top:1px; }

.badge-stock { display:inline-block; padding:5px 14px; border-radius:20px; font-size:1rem; font-weight:800; min-width:48px; text-align:center; }
.stock-ok    { background:#dcfce7; color:#16a34a; }
.stock-cero  { background:#fee2e2; color:#dc2626; }

.celda-precio { background:linear-gradient(135deg,#2563eb,#1d4ed8)!important; color:#fff!important; border:none!important; }
.btn-menos-cant { background:#dc2626!important; color:#fff!important; border:none!important; }
.btn-mas-cant   { background:#16a34a!important; color:#fff!important; border:none!important; }
.input-cant     { background:#fff!important; color:#1e293b!important; border:2px solid #e2e8f0!important; }

/* MODO OSCURO — overrides */
[data-theme="dark"] .thead-pos-lista,
[data-theme="bank"] .thead-pos-lista { background:#001a00!important; color:#00ff88!important; }
[data-theme="dark"] .thead-pos-lista th,
[data-theme="bank"] .thead-pos-lista th { color:#00ff88!important; border-color:#003300!important; }

[data-theme="dark"] .fila-par,
[data-theme="bank"] .fila-par   { background:#0a0a0a!important; }
[data-theme="dark"] .fila-impar,
[data-theme="bank"] .fila-impar { background:#111a11!important; }
[data-theme="dark"] .fila-par td, [data-theme="dark"] .fila-impar td,
[data-theme="bank"] .fila-par td, [data-theme="bank"] .fila-impar td { border-color:#003300!important; }

[data-theme="dark"] .celda-codigo,
[data-theme="bank"] .celda-codigo { color:#00b050!important; }
[data-theme="dark"] .nombre-producto,
[data-theme="bank"] .nombre-producto { color:#00e676!important; }
[data-theme="dark"] .marca-producto,
[data-theme="bank"] .marca-producto { color:#006633!important; }
[data-theme="dark"] .cat-producto,
[data-theme="bank"] .cat-producto { color:#005522!important; }

[data-theme="dark"] .stock-ok,
[data-theme="bank"] .stock-ok  { background:#003300!important; color:#00e676!important; }
[data-theme="dark"] .stock-cero,
[data-theme="bank"] .stock-cero { background:#330000!important; color:#ff4444!important; }

[data-theme="dark"] .celda-precio,
[data-theme="bank"] .celda-precio { background:#0a2a0a!important; color:#00e676!important; border:2px solid #00e676!important; }
[data-theme="dark"] .btn-menos-cant,
[data-theme="bank"] .btn-menos-cant { background:#1a0000!important; color:#ff4444!important; border:1px solid #ff4444!important; }
[data-theme="dark"] .btn-mas-cant,
[data-theme="bank"] .btn-mas-cant   { background:#0a2a0a!important; color:#00e676!important; border:1px solid #00e676!important; }
[data-theme="dark"] .input-cant,
[data-theme="bank"] .input-cant { background:#0a1a0a!important; color:#00e676!important; border:2px solid #00e676!important; }

/* ===== FONDOS BLANCOS RESTANTES — modo oscuro ===== */
[data-theme="dark"] .productos-pos,
[data-theme="bank"] .productos-pos {
  background: #0a0a0a !important;
}
[data-theme="dark"] .pos-contenedoor,
[data-theme="bank"] .pos-contenedoor {
  background: #111 !important;
}
[data-theme="dark"] .super-contenedor-productos-pos,
[data-theme="bank"] .super-contenedor-productos-pos {
  background: #161616 !important;
}
[data-theme="dark"] .contenedor-productos-ventas,
[data-theme="bank"] .contenedor-productos-ventas {
  background: #0d0d0d !important;
  border-color: #003300 !important;
}
[data-theme="dark"] .super-contenedor-formulario-pos,
[data-theme="bank"] .super-contenedor-formulario-pos {
  background: #111 !important;
}
[data-theme="dark"] .celular-wrapper-pos,
[data-theme="bank"] .celular-wrapper-pos,
[data-theme="dark"] .iti,
[data-theme="bank"] .iti,
[data-theme="dark"] .intl-tel-input,
[data-theme="bank"] .intl-tel-input {
  background: #0a1a0a !important;
  border-color: #00e676 !important;
}
[data-theme="dark"] #celular,
[data-theme="bank"] #celular {
  background: #0a1a0a !important;
  color: #00e676 !important;
  border-color: #00e676 !important;
}

/* ===== FIX DEFINITIVO — nombres a la izquierda + fondos blancos ===== */

/* Nombre producto SIEMPRE a la izquierda */
.fila-producto-pos td:nth-child(2),
.fila-producto-pos td:nth-child(2) div,
.celda-desc,
.nombre-producto {
  text-align: left !important;
  vertical-align: middle !important;
}

/* Color nombre — modo oscuro sobreescribe el #1e293b hardcodeado */
[data-theme="dark"] .fila-producto-pos td:nth-child(2) div,
[data-theme="dark"] .fila-producto-pos td:nth-child(2) .nombre-producto,
[data-theme="bank"] .fila-producto-pos td:nth-child(2) div,
[data-theme="bank"] .fila-producto-pos td:nth-child(2) .nombre-producto {
  color: #00e676 !important;
}
[data-theme="dark"] .fila-producto-pos td:first-child,
[data-theme="bank"] .fila-producto-pos td:first-child {
  color: #00b050 !important;
}

/* Fondos blancos panel derecho */
[data-theme="dark"] .contenedor-totales-ventas-pos,
[data-theme="dark"] .contenedor-totales-ventas-pos .box,
[data-theme="dark"] .contenedor-totales-ventas-pos .box-body,
[data-theme="bank"] .contenedor-totales-ventas-pos,
[data-theme="bank"] .contenedor-totales-ventas-pos .box,
[data-theme="bank"] .contenedor-totales-ventas-pos .box-body {
  background: #111 !important;
  background-color: #111 !important;
}
[data-theme="dark"] .contenedor-btns-carrito,
[data-theme="bank"] .contenedor-btns-carrito {
  background: #0a1a0a !important;
  border-color: #003300 !important;
}
[data-theme="dark"] .tabla-carrito-pos,
[data-theme="dark"] #tablaCarritoPos,
[data-theme="dark"] .tabla-items,
[data-theme="bank"] .tabla-carrito-pos,
[data-theme="bank"] #tablaCarritoPos,
[data-theme="bank"] .tabla-items {
  background: #111 !important;
}
/* Cualquier box o div dentro del panel derecho que tenga fondo blanco */
[data-theme="dark"] .super-contenedor-formulario-pos .box,
[data-theme="dark"] .super-contenedor-formulario-pos .box-body,
[data-theme="dark"] .super-contenedor-formulario-pos .box-footer,
[data-theme="bank"] .super-contenedor-formulario-pos .box,
[data-theme="bank"] .super-contenedor-formulario-pos .box-body,
[data-theme="bank"] .super-contenedor-formulario-pos .box-footer {
  background: #111 !important;
  background-color: #111 !important;
}
[data-theme="dark"] .pos-contenedoor *,
[data-theme="bank"] .pos-contenedoor * {
  background-color: inherit;
}
/* Reset específico para elementos que deben tener su propio fondo */
[data-theme="dark"] .pos-contenedoor input,
[data-theme="dark"] .pos-contenedoor select,
[data-theme="dark"] .pos-contenedoor textarea,
[data-theme="bank"] .pos-contenedoor input,
[data-theme="bank"] .pos-contenedoor select,
[data-theme="bank"] .pos-contenedoor textarea {
  background-color: #0a1a0a !important;
}
[data-theme="dark"] .pos-contenedoor .btn,
[data-theme="bank"] .pos-contenedoor .btn {
  background-color: initial;
}

/* ===== FIX CÓDIGO ALINEADO A LA IZQUIERDA ===== */
.celda-codigo,
.fila-producto-pos td:first-child {
  text-align: left !important;
  padding-left: 12px !important;
}

/* ===== FIX FONDOS BLANCOS RESTANTES — panel derecho ===== */
[data-theme="dark"] .celular-wrapper-pos,
[data-theme="bank"] .celular-wrapper-pos {
  background: #0a1a0a !important;
  border-color: #00e676 !important;
}
[data-theme="dark"] .celular-prefix-pos,
[data-theme="bank"] .celular-prefix-pos {
  background: #001a00 !important;
  border-color: #00e676 !important;
  color: #00e676 !important;
}
[data-theme="dark"] .celular-input-pos,
[data-theme="bank"] .celular-input-pos {
  background: #0a1a0a !important;
  color: #00e676 !important;
}
[data-theme="dark"] .iti,
[data-theme="dark"] .iti__flag-container,
[data-theme="dark"] .intl-tel-input,
[data-theme="bank"] .iti,
[data-theme="bank"] .iti__flag-container,
[data-theme="bank"] .intl-tel-input {
  background: #0a1a0a !important;
}
/* Tabla resumen/totales fondo */
[data-theme="dark"] .tabla-totales,
[data-theme="dark"] .tabla-totales tr,
[data-theme="dark"] .tabla-totales td,
[data-theme="bank"] .tabla-totales,
[data-theme="bank"] .tabla-totales tr,
[data-theme="bank"] .tabla-totales td {
  background: #111 !important;
  background-color: #111 !important;
}
/* Área descuento input */
[data-theme="dark"] .contenedor-totales-ventas-pos .form-group,
[data-theme="dark"] .contenedor-totales-ventas-pos .input-group,
[data-theme="bank"] .contenedor-totales-ventas-pos .form-group,
[data-theme="bank"] .contenedor-totales-ventas-pos .input-group {
  background: transparent !important;
}
/* Input descuento */
[data-theme="dark"] .contenedor-totales-ventas-pos input,
[data-theme="dark"] .contenedor-totales-ventas-pos select,
[data-theme="bank"] .contenedor-totales-ventas-pos input,
[data-theme="bank"] .contenedor-totales-ventas-pos select {
  background: #0a1a0a !important;
  color: #00e676 !important;
  border-color: #00e676 !important;
}
/* Input-group-addon (el % del descuento) */
[data-theme="dark"] .contenedor-totales-ventas-pos .input-group-addon,
[data-theme="bank"] .contenedor-totales-ventas-pos .input-group-addon {
  background: #001a00 !important;
  color: #00e676 !important;
  border-color: #00e676 !important;
}
/* Botones MONTO RECIBIDO / VUELTO */
[data-theme="dark"] .contenedor-btns-carrito .btn-success,
[data-theme="bank"] .contenedor-btns-carrito .btn-success {
  background: #0a2a0a !important;
  border: 1px solid #00e676 !important;
  color: #00e676 !important;
}
[data-theme="dark"] .contenedor-btns-carrito .btn-danger,
[data-theme="bank"] .contenedor-btns-carrito .btn-danger {
  background: #1a0000 !important;
  border: 1px solid #ff4444 !important;
  color: #ff4444 !important;
}
[data-theme="dark"] .contenedor-btns-carrito .btn-primary,
[data-theme="bank"] .contenedor-btns-carrito .btn-primary {
  background: #0a2a0a !important;
  border: 1px solid #00e676 !important;
  color: #00e676 !important;
}

/* ===== FIX SELECT2 CATEGORÍA — borde completo ===== */
.contenedor-productos-ventas .select2-container {
  width: 100% !important;
  display: block !important;
}
.contenedor-productos-ventas .select2-container .select2-selection--single {
  width: 100% !important;
  height: 48px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
}
[data-theme="dark"] .contenedor-productos-ventas .select2-container .select2-selection--single,
[data-theme="bank"] .contenedor-productos-ventas .select2-container .select2-selection--single {
  background: #0a1a0a !important;
  border: 2px solid #00e676 !important;
  border-radius: 10px !important;
  width: 100% !important;
}

/* ===== FIX FONDO NEGRO — tabla carrito/items + thead ===== */
[data-theme="dark"] .tabla-carrito-pos,
[data-theme="dark"] #tablaCarritoPos,
[data-theme="dark"] .tabla-carrito-pos th,
[data-theme="dark"] #tablaCarritoPos th,
[data-theme="dark"] .tabla-carrito-pos td,
[data-theme="dark"] #tablaCarritoPos td,
[data-theme="bank"] .tabla-carrito-pos,
[data-theme="bank"] #tablaCarritoPos,
[data-theme="bank"] .tabla-carrito-pos th,
[data-theme="bank"] #tablaCarritoPos th,
[data-theme="bank"] .tabla-carrito-pos td,
[data-theme="bank"] #tablaCarritoPos td {
  background: #111 !important;
  background-color: #111 !important;
  color: #00e676 !important;
  border-color: #003300 !important;
}
[data-theme="dark"] .tabla-items,
[data-theme="dark"] .tabla-items thead,
[data-theme="dark"] .tabla-items th,
[data-theme="dark"] .tabla-items td,
[data-theme="dark"] .tabla-items tbody,
[data-theme="bank"] .tabla-items,
[data-theme="bank"] .tabla-items thead,
[data-theme="bank"] .tabla-items th,
[data-theme="bank"] .tabla-items td,
[data-theme="bank"] .tabla-items tbody {
  background: #111 !important;
  background-color: #111 !important;
  color: #00e676 !important;
  border-color: #003300 !important;
}
/* Toda el área del formulario derecho */
[data-theme="dark"] #formVentaPos,
[data-theme="dark"] #formVentaPos > *,
[data-theme="bank"] #formVentaPos,
[data-theme="bank"] #formVentaPos > * {
  background: #111 !important;
}
[data-theme="dark"] .items-c,
[data-theme="bank"] .items-c {
  background: #111 !important;
}

/* ===== FIX FINAL SELECT2 — borde verde completo sin línea blanca ===== */
.contenedor-productos-ventas .select2-container,
.contenedor-productos-ventas .select2-container--default {
  width: 100% !important;
  display: block !important;
}
/* Sobreescribe el border con la especificidad más alta posible */
html .contenedor-productos-ventas .select2-container--default .select2-selection--single,
html .contenedor-productos-ventas .select2-selection--single {
  border: 2px solid #00e676 !important;
  border-bottom: 2px solid #00e676 !important;
  background-color: #0a1a0a !important;
  height: 48px !important;
  border-radius: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html .contenedor-productos-ventas .select2-selection__rendered {
  color: #00e676 !important;
  line-height: 44px !important;
  padding-left: 12px !important;
}
html .contenedor-productos-ventas .select2-selection__arrow {
  height: 46px !important;
}
html .contenedor-productos-ventas .select2-selection__arrow b {
  border-color: #00e676 transparent transparent transparent !important;
}
html .contenedor-productos-ventas .select2-selection__placeholder {
  color: #006633 !important;
}

/* ===== FIX LÍNEA BLANCA SELECT2 — origen AdminLTE ===== */
html body .contenedor-productos-ventas .select2-container--default .select2-selection--single {
  border: 2px solid #00e676 !important;
  border-bottom: 2px solid #00e676 !important;
  outline: none !important;
  box-shadow: none !important;
  background: #0a1a0a !important;
}
/* La línea blanca viene del ::after o del container mismo */
.contenedor-productos-ventas .select2-container--default,
.contenedor-productos-ventas .select2-container--default * {
  border-color: #00e676 !important;
}
/* Quitar cualquier borde heredado de Bootstrap/AdminLTE */
.contenedor-productos-ventas .select2-container--default .select2-selection--single::after,
.contenedor-productos-ventas .select2-container--default .select2-selection--single::before {
  display: none !important;
  border: none !important;
}
