/* =====================================================================
   SISTEMA POS — estilos (paleta #0C2A39 + #86BC25, texto negro/fondo blanco)
   Menú fijo a la derecha · responsive PC / tablet / celular
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');

:root{
  --navy:#0C2A39;          /* color principal (menú, encabezados) */
  --navy2:#11394d;
  --verde:#86BC25;         /* acento / acciones */
  --verde-osc:#6f9e1c;
  --tinta:#111418;         /* texto negro */
  --gris:#5b6770;          /* texto secundario */
  --linea:#e3e8ea;
  --suave:#f4f7f6;
  --fondo:#eef2f1;
  --panel:#ffffff;
  --rojo:#d64530;
  --ambar:#e6a019;
  --sombra:0 1px 2px rgba(12,42,57,.05), 0 10px 30px rgba(12,42,57,.07);
  --radio:16px;
  --tap:52px;
  --menu-ancho:248px;
  --barra-alto:60px;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent;}
html,body{height:100%;}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;color:var(--tinta);
  background:var(--fondo);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased;}
h1,h2,h3{letter-spacing:-.01em;line-height:1.15;color:var(--navy);}
h1{font-size:1.6rem;font-weight:800;margin-bottom:1rem;}
h2{font-size:1.15rem;font-weight:700;margin:.2rem 0 .6rem;}
input,select,button,textarea{font-family:inherit;font-size:1rem;}
.mono,b,.sf,.lbl{font-variant-numeric:tabular-nums;}
a{color:var(--navy);}

/* ---------------- BOTONES ---------------- */
.btn-principal{background:var(--verde);color:#0c2a14;border:none;border-radius:12px;
  padding:0 20px;height:var(--tap);font-weight:800;cursor:pointer;transition:transform .08s,background .15s;}
.btn-principal:hover{background:var(--verde-osc);}
.btn-principal:active{transform:translateY(1px);}
.btn-principal:disabled{opacity:.45;cursor:not-allowed;}
.btn-secundario{background:#fff;border:1.6px solid var(--linea);color:var(--navy);
  border-radius:12px;height:var(--tap);padding:0 16px;cursor:pointer;font-weight:700;}
.btn-secundario:hover{border-color:var(--navy);}
.btn-secundario.activo{background:var(--navy);color:#fff;border-color:var(--navy);}
.btn-bloque{display:block;width:100%;margin-top:8px;text-align:center;line-height:var(--tap);text-decoration:none;}
.icono-btn{background:transparent;border:none;color:#dfeaef;font-size:1.3rem;cursor:pointer;
  width:42px;height:42px;border-radius:10px;display:grid;place-items:center;text-decoration:none;}
.icono-btn:hover{background:rgba(255,255,255,.14);}

/* ---------------- LOGIN ---------------- */
.pantalla-login{display:grid;place-items:center;min-height:100dvh;padding:20px;
  background:radial-gradient(1100px 600px at 85% -10%, rgba(134,188,37,.22), transparent 60%), var(--navy);}
.login-card{width:100%;max-width:390px;background:#fff;border-radius:22px;padding:36px 30px;
  box-shadow:0 30px 70px rgba(0,0,0,.4);}
.login-marca{text-align:center;margin-bottom:24px;}
.login-logo{width:62px;height:62px;margin:0 auto 14px;border-radius:18px;
  background:var(--navy);color:var(--verde);display:grid;place-items:center;font-size:32px;font-weight:800;}
.login-marca h1{font-size:1.5rem;}
.login-marca p{color:var(--gris);font-size:.92rem;}
.login-form label{display:block;margin-bottom:14px;font-size:.85rem;color:var(--gris);font-weight:600;}
.login-form input{width:100%;margin-top:6px;padding:14px;border:1.6px solid var(--linea);
  border-radius:12px;background:var(--suave);transition:border .15s;}
.login-form input:focus{outline:none;border-color:var(--verde);background:#fff;}
.login-pie{text-align:center;margin-top:18px;color:var(--gris);font-size:.82rem;}

/* ---------------- ESTRUCTURA APP ---------------- */
.app{min-height:100dvh;}
.barra-superior{height:var(--barra-alto);background:var(--navy);color:#fff;display:flex;
  align-items:center;gap:10px;padding:0 16px;position:fixed;top:0;left:0;right:0;z-index:40;}
.marca-mini{font-weight:800;display:flex;align-items:center;gap:9px;font-size:1.08rem;color:#fff;}
.logo-mini{color:var(--verde);font-size:1.2rem;}
.barra-derecha{margin-left:auto;display:flex;align-items:center;gap:10px;}
.chip-moneda{background:rgba(255,255,255,.14);padding:5px 11px;border-radius:20px;font-size:.78rem;font-weight:700;}
.usuario-mini{font-size:.85rem;opacity:.92;}
.chip-caja{padding:5px 12px;border-radius:20px;font-size:.76rem;font-weight:800;}
.chip-caja.on{background:rgba(134,188,37,.25);color:#d6f0a6;}
.chip-caja.off{background:rgba(214,69,48,.28);color:#ffd5cd;}

/* ---- MENÚ FIJO A LA IZQUIERDA ---- */
.menu-lateral{position:fixed;top:var(--barra-alto);left:0;bottom:0;width:var(--menu-ancho);
  background:var(--navy);color:#cfdde3;padding:16px 12px;z-index:30;display:flex;flex-direction:column;
  gap:4px;overflow-y:auto;border-right:3px solid var(--verde);}
.menu-lateral a{color:#cfdde3;text-decoration:none;padding:13px 15px;border-radius:11px;font-weight:600;
  display:flex;align-items:center;gap:6px;transition:background .15s,color .15s;font-size:.96rem;}
.menu-lateral a:hover{background:rgba(255,255,255,.08);color:#fff;}
.menu-lateral a.activo{background:var(--verde);color:#0c2a14;font-weight:800;}
.menu-lateral .nav-salir{margin-top:auto;color:#ffc9bf;}
.menu-lateral .nav-salir:hover{background:rgba(214,69,48,.2);}

/* Contenido: deja espacio para barra arriba y menú a la izquierda */
.contenido{padding-top:var(--barra-alto);margin-left:var(--menu-ancho);min-height:100dvh;}

.velo{position:fixed;inset:0;background:rgba(8,20,18,.5);z-index:25;opacity:0;pointer-events:none;transition:opacity .25s;}
.velo.visible{opacity:1;pointer-events:auto;}

/* ===================== POS ===================== */
.pos{display:grid;grid-template-columns:1fr;gap:14px;padding:calc(var(--barra-alto) + 14px) 14px 14px;
  margin-left:var(--menu-ancho);max-width:1500px;}
.pos-izq,.pos-der{background:var(--panel);border-radius:var(--radio);box-shadow:var(--sombra);
  display:flex;flex-direction:column;overflow:hidden;}
.pos-izq{padding:16px;}
.escaner{display:flex;gap:10px;}
.campo-escaner{flex:1;display:flex;align-items:center;background:var(--suave);border:2px solid var(--navy);
  border-radius:12px;padding:0 14px;}
.campo-escaner:focus-within{border-color:var(--verde);box-shadow:0 0 0 4px rgba(134,188,37,.18);}
.campo-icono{color:var(--navy);font-size:.8rem;letter-spacing:1px;margin-right:8px;}
.campo-escaner input{flex:1;border:none;background:transparent;height:var(--tap);outline:none;font-size:1.05rem;}
#btnCamara{width:var(--tap);font-size:1.3rem;flex:0 0 auto;}
#btnCamara.activo{background:var(--verde);border-color:var(--verde);}
.lector-camara{margin-top:12px;border-radius:12px;overflow:hidden;}
.lector-camara.oculto{display:none;} .oculto{display:none;}

/* Selector de lista de precios — botones grandes */
.selector-lista{margin-top:14px;}
.selector-lista>span{display:block;font-size:.8rem;color:var(--gris);font-weight:700;margin-bottom:8px;
  text-transform:uppercase;letter-spacing:.04em;}
#listasPrecio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.lista{border:2px solid var(--linea);background:#fff;border-radius:14px;padding:14px 10px;cursor:pointer;
  font-weight:700;color:var(--navy);text-align:center;transition:all .15s;display:flex;flex-direction:column;gap:2px;}
.lista small{font-weight:600;color:var(--gris);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;}
.lista:hover{border-color:var(--verde);}
.lista.activo{background:var(--verde);border-color:var(--verde);color:#0c2a14;box-shadow:0 6px 16px rgba(134,188,37,.35);}
.lista.activo small{color:#2c4a0e;}

.resultados{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;overflow:auto;}
.card-prod{text-align:left;background:#fff;border:1.6px solid var(--linea);border-radius:14px;padding:10px;
  cursor:pointer;display:flex;flex-direction:column;gap:3px;transition:transform .08s,border .15s;}
.card-prod:hover{border-color:var(--verde);transform:translateY(-2px);}
.cp-foto{width:100%;height:84px;object-fit:cover;border-radius:9px;margin-bottom:5px;background:var(--suave);}
.cp-foto.sinfoto{display:grid;place-items:center;font-size:2rem;}
.cp-nombre{font-weight:700;font-size:.95rem;}
.cp-precio{font-weight:800;color:var(--navy);font-size:1.1rem;}
.cp-stock{font-size:.74rem;color:var(--gris);}
.cp-stock.agotado{color:var(--rojo);font-weight:700;}
.aviso{color:var(--gris);padding:14px;grid-column:1/-1;text-align:center;}

.pos-der{padding:0;}
.carrito-cab{display:flex;align-items:center;gap:10px;padding:16px;border-bottom:1px solid var(--linea);}
.carrito-cab h2{margin:0;}
.select-cliente{margin-left:auto;border:1.6px solid var(--linea);border-radius:10px;padding:9px 10px;background:var(--suave);max-width:55%;}
.carrito-lista{flex:1;overflow:auto;padding:6px 12px;min-height:130px;}
.carrito-vacio{color:var(--gris);text-align:center;padding:34px 10px;}
.item{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:8px;padding:11px 4px;border-bottom:1px dashed var(--linea);}
.item-info{display:flex;flex-direction:column;}
.item-nombre{font-weight:700;font-size:.95rem;}
.item-precio{font-size:.76rem;color:var(--gris);}
.item-cant{display:flex;align-items:center;gap:6px;}
.qbtn{width:36px;height:36px;border-radius:10px;border:1.6px solid var(--linea);background:#fff;font-size:1.2rem;cursor:pointer;line-height:1;color:var(--navy);font-weight:700;}
.qbtn:active{background:var(--suave);}
.qnum{min-width:26px;text-align:center;font-weight:800;}
.item-importe{font-weight:800;min-width:80px;text-align:right;}
.item-x{border:none;background:transparent;color:var(--rojo);font-size:1rem;cursor:pointer;padding:6px;}

.resumen{padding:14px 16px;background:var(--suave);border-top:1px solid var(--linea);}
.resumen .linea{display:flex;justify-content:space-between;align-items:center;padding:4px 0;color:var(--gris);}
.resumen .linea b{color:var(--tinta);}
.resumen .total{margin-top:6px;padding-top:10px;border-top:2px solid var(--navy);font-size:1.3rem;}
.resumen .total span{color:var(--tinta);font-weight:800;}
.resumen .total b{color:var(--navy);font-size:1.5rem;font-weight:800;}
.inp-desc{width:96px;text-align:right;border:1.6px solid var(--linea);border-radius:9px;padding:7px 9px;}

.cobro{padding:14px 16px;border-top:1px solid var(--linea);}
.metodos{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px;}
.metodo{border:1.6px solid var(--linea);background:#fff;border-radius:11px;padding:11px 4px;font-size:.82rem;font-weight:700;cursor:pointer;color:var(--navy);}
.metodo.activo{background:var(--navy);color:#fff;border-color:var(--navy);}
.zona-efectivo{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px;}
.zona-efectivo label{flex:1;font-size:.82rem;color:var(--gris);font-weight:600;}
.zona-efectivo input{width:100%;margin-top:5px;border:1.6px solid var(--linea);border-radius:11px;padding:13px;font-size:1.1rem;text-align:right;}
.vuelto{font-size:.9rem;color:var(--gris);white-space:nowrap;}
.vuelto b{color:var(--ambar);font-size:1.15rem;}
.btn-cobrar{width:100%;height:62px;font-size:1.2rem;}

/* ===================== PÁGINAS DE GESTIÓN ===================== */
.pagina{max-width:1100px;margin:0 auto;padding:18px 16px 60px;}
.pagina-angosta{max-width:640px;}
.tarjeta{background:var(--panel);border-radius:var(--radio);box-shadow:var(--sombra);padding:18px;margin-bottom:16px;}
.grid-2col{display:grid;grid-template-columns:1fr;gap:16px;}
.tarjeta label,.form-producto label{display:block;margin-bottom:12px;font-size:.85rem;color:var(--gris);font-weight:600;}
.tarjeta input[type=text],.tarjeta input[type=number],.tarjeta input[type=email],
.tarjeta input[type=password],.tarjeta input[type=date],.tarjeta select,.tarjeta textarea{
  width:100%;margin-top:6px;padding:12px;border:1.6px solid var(--linea);border-radius:11px;background:var(--suave);color:var(--tinta);}
.tarjeta input:focus,.tarjeta select:focus,.tarjeta textarea:focus{outline:none;border-color:var(--verde);background:#fff;}
.fila-2{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.fila-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;}
.check{display:flex!important;align-items:center;gap:8px;}
.check input{width:auto!important;margin:0!important;}
.ayuda{color:var(--gris);font-size:.82rem;margin:-4px 0 12px;}
.sub-titulo{font-size:.92rem;color:var(--verde-osc);margin:14px 0 8px;font-weight:800;}
.texto-sec{color:var(--gris);} .der{text-align:right;}
.neg{color:var(--rojo)!important;} .pos{color:var(--verde-osc);}

.busca-inline{display:flex;gap:8px;margin-bottom:14px;}
.busca-inline input{flex:1;padding:12px;border:1.6px solid var(--linea);border-radius:11px;background:var(--suave);}
.busca-inline button{flex:0 0 auto;}

.tabla-scroll{overflow-x:auto;}
.tabla{width:100%;border-collapse:collapse;font-size:.92rem;}
.tabla th{text-align:left;padding:10px 8px;border-bottom:2px solid var(--linea);color:var(--gris);font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;}
.tabla td{padding:11px 8px;border-bottom:1px solid var(--linea);vertical-align:middle;}
.tabla td small{color:var(--gris);}
.tabla .vacio{text-align:center;color:var(--gris);padding:24px;}
.fila-alerta{background:rgba(230,160,25,.1);}
.acciones-fila{white-space:nowrap;}
.mini{text-decoration:none;font-size:1.05rem;padding:6px;border-radius:8px;}
.mini:hover{background:var(--suave);}

.tarjetas-resumen{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.kpi{background:var(--panel);border-radius:var(--radio);box-shadow:var(--sombra);padding:16px 20px;display:flex;flex-direction:column;flex:1;min-width:140px;}
.kpi span{color:var(--gris);font-size:.82rem;font-weight:600;}
.kpi b{font-size:1.7rem;font-weight:800;color:var(--navy);}
.kpi.destacado{background:var(--navy);color:#fff;}
.kpi.destacado span{color:#bcd1d9;} .kpi.destacado b{color:var(--verde);}

.badge-ok{background:rgba(134,188,37,.2);color:var(--verde-osc);padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:800;}
.badge-off{background:#f3dcd6;color:var(--rojo);padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:800;}
.alerta-ok{background:rgba(134,188,37,.16);border:1px solid var(--verde);color:#41600f;padding:12px 14px;border-radius:11px;margin-bottom:14px;font-weight:600;}
.alerta-error{background:#f7e0db;border:1px solid var(--rojo);color:#8a2c1b;padding:12px 14px;border-radius:11px;margin-bottom:14px;}

/* Fotos de producto — más pequeñas */
.foto-zona{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.foto-prev{width:60px;height:60px;border-radius:11px;display:grid;place-items:center;
  border:1.6px solid var(--linea);background:var(--suave);color:var(--gris);font-size:1.3rem;overflow:hidden;flex:0 0 auto;}
.foto-prev img{width:100%;height:100%;object-fit:cover;}
.foto-btn{flex:1;font-size:.84rem;margin-bottom:0!important;}
.mini-foto{width:38px;height:38px;border-radius:8px;object-fit:cover;border:1px solid var(--linea);vertical-align:middle;background:var(--suave);}
.mini-foto.sf{display:inline-grid;place-items:center;font-size:1.1rem;}

/* Tallas de ropa */
.tallas-zona{margin-bottom:12px;}
.tallas-add{display:flex;gap:8px;}
.tallas-add input{flex:1;}
.tallas-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.talla-chip{background:var(--navy);color:#fff;border-radius:8px;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex;align-items:center;gap:7px;}
.talla-chip button{background:none;border:none;color:#9fc6d6;cursor:pointer;font-size:.95rem;line-height:1;}

/* Categorías / chips */
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.chip{background:var(--suave);border:1px solid var(--linea);border-radius:20px;padding:5px 12px;font-size:.8rem;font-weight:700;}
.chip.ropa{background:rgba(134,188,37,.18);border-color:var(--verde);}

/* Inventario / caja / devoluciones */
.ajuste-inline{display:flex;gap:6px;align-items:center;}
.inp-ajuste{width:84px;text-align:right;border:1.6px solid var(--linea);border-radius:8px;padding:6px;}
.aviso-caja{background:rgba(230,160,25,.14);border:1px solid var(--ambar);color:#7a560a;padding:16px;border-radius:12px;margin-bottom:16px;display:flex;align-items:center;gap:12px;justify-content:space-between;flex-wrap:wrap;}
.fila-total{display:flex;justify-content:space-between;padding:8px 0;border-top:2px solid var(--navy);margin-top:8px;font-size:1.15rem;font-weight:800;}
.venta-cab{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;background:var(--suave);padding:12px;border-radius:11px;margin-bottom:12px;}
.inp-dev{width:74px;text-align:right;border:1.6px solid var(--linea);border-radius:8px;padding:6px;}

/* Permisos */
.permisos-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px;}
.perm-check{display:flex!important;align-items:center;gap:8px;background:var(--suave);border:1.6px solid var(--linea);border-radius:11px;padding:11px 12px;cursor:pointer;font-size:.9rem;color:var(--tinta)!important;font-weight:600;}
.perm-check input{width:auto!important;margin:0!important;}
.perm-check:has(input:checked){border-color:var(--verde);background:rgba(134,188,37,.12);}

/* Reportes: navegación de módulos individuales */
.rep-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.rep-nav a{background:#fff;border:1.6px solid var(--linea);border-radius:12px;padding:12px 16px;
  text-decoration:none;color:var(--navy);font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:7px;}
.rep-nav a:hover{border-color:var(--verde);}
.rep-nav a.on{background:var(--navy);color:#fff;border-color:var(--navy);}
.filtros{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:16px;}
.filtros label{font-size:.8rem;color:var(--gris);font-weight:700;}
.filtros input,.filtros select{margin-top:5px;padding:11px;border:1.6px solid var(--linea);border-radius:11px;background:#fff;}
.tabs-vista{display:flex;gap:6px;background:var(--suave);padding:4px;border-radius:12px;}
.tabs-vista a{padding:9px 16px;border-radius:9px;text-decoration:none;color:var(--gris);font-weight:700;font-size:.86rem;}
.tabs-vista a.on{background:var(--navy);color:#fff;}
.tag{background:var(--suave);border:1px solid var(--linea);border-radius:20px;padding:4px 12px;font-size:.78rem;font-weight:700;}
.tag-venta{background:rgba(134,188,37,.16);} .tag-egreso,.tag-ajuste,.tag-devolucion{background:rgba(230,160,25,.18);}
.sub{color:var(--gris);}

/* ===================== RESPONSIVE ===================== */
@media (min-width:860px){
  .grid-2col{grid-template-columns:1fr 1fr;align-items:start;}
  .pos{grid-template-columns:1.35fr 1fr;}
  h1{font-size:2rem;}
  #btnMenu{display:none;}   /* en escritorio el menú está siempre visible */
  .velo{display:none;}
}
@media (max-width:859px){
  :root{--menu-ancho:0px;}
  .menu-lateral{width:262px;transform:translateX(-100%);transition:transform .25s;border-right:none;}
  .menu-lateral.abierto{transform:translateX(0);box-shadow:8px 0 40px rgba(0,0,0,.4);}
  .contenido{margin-left:0;}
  .pos{margin-left:0;grid-template-columns:1fr;}
}
@media (max-width:600px){
  .metodos{grid-template-columns:repeat(2,1fr);}
  .fila-3{grid-template-columns:1fr;}
  .permisos-grid{grid-template-columns:1fr;}
  .usuario-mini{display:none;}
  .resultados{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));}
}

/* Venta por peso en el carrito */
.peso-quick{display:flex;gap:5px;margin-top:5px;flex-wrap:wrap;}
.peso-quick button{border:1.4px solid var(--linea);background:#fff;border-radius:8px;padding:4px 9px;font-size:.74rem;font-weight:700;color:var(--navy);cursor:pointer;}
.peso-quick button:hover{border-color:var(--verde);background:rgba(134,188,37,.12);}
.peso-cant{display:flex;align-items:center;gap:4px;}
.inp-peso{width:74px;text-align:right;border:1.6px solid var(--navy);border-radius:9px;padding:7px;font-weight:700;}
.peso-cant .u{font-size:.8rem;color:var(--gris);font-weight:700;}
.item-peso{align-items:start;}

/* ---- POS v3: canal, cliente inteligente, variantes ---- */
.venta-meta{padding:12px 16px;border-bottom:1px solid var(--linea);display:flex;flex-direction:column;gap:10px;}
.meta-campo{display:flex;flex-direction:column;font-size:.8rem;color:var(--gris);font-weight:700;gap:5px;}
.meta-campo select,.meta-campo input{border:1.6px solid var(--linea);border-radius:10px;padding:11px;background:var(--suave);font-weight:500;color:var(--tinta);}
.meta-campo select:focus,.meta-campo input:focus{outline:none;border-color:var(--verde);background:#fff;}
#selCanal{border-color:var(--verde);} .oblig{color:var(--rojo);}
.cliente-busca{position:relative;}
.cli-input{display:flex;gap:6px;} .cli-input input{flex:1;}
.cli-input .btn-secundario{height:auto;padding:0 12px;flex:0 0 auto;}
.cli-results{position:absolute;top:100%;left:0;right:0;z-index:20;background:#fff;border:1.6px solid var(--linea);
  border-radius:10px;margin-top:4px;box-shadow:var(--sombra);max-height:230px;overflow:auto;display:none;}
.cli-results.visible{display:block;}
.cli-results button{display:block;width:100%;text-align:left;border:none;background:#fff;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--linea);font-weight:600;color:var(--tinta);}
.cli-results button:hover{background:var(--suave);}
.cli-results small{color:var(--gris);font-weight:500;}
.nuevo-cli{margin-top:8px;display:flex;flex-direction:column;gap:8px;}
.nuevo-cli input{border:1.6px solid var(--linea);border-radius:10px;padding:10px;background:var(--suave);}
.nuevo-cli.oculto{display:none;}
.item-var{font-size:.78rem;color:var(--verde-osc);font-weight:700;}

/* Overlay selección de variante */
.ov-variante{position:fixed;inset:0;background:rgba(8,20,18,.55);z-index:60;display:grid;place-items:center;padding:20px;}
.ov-card{background:#fff;border-radius:16px;padding:20px;max-width:420px;width:100%;box-shadow:0 30px 60px rgba(0,0,0,.4);}
.ov-card h3{color:var(--navy);margin-bottom:2px;}
.ov-vars{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0;}
.ov-vars button{border:1.6px solid var(--linea);background:var(--suave);border-radius:11px;padding:12px;cursor:pointer;font-weight:700;color:var(--navy);display:flex;flex-direction:column;gap:3px;}
.ov-vars button:hover{border-color:var(--verde);background:rgba(134,188,37,.12);}
.ov-vars button small{font-weight:600;color:var(--gris);}
.ov-cerrar{width:100%;}

/* Editor de variantes en productos */
.var-fila{display:grid;grid-template-columns:1fr 1fr 1fr .8fr auto;gap:6px;margin-bottom:6px;align-items:center;}
.var-fila input{margin:0!important;padding:9px!important;}
.var-head{font-size:.74rem;color:var(--gris);font-weight:700;text-transform:uppercase;}

/* Botón eliminar venta y buscadores en tiempo real */
.btn-eliminar{border:1.4px solid #e0b4b0;background:#fff;color:#b3261e;border-radius:8px;
  padding:6px 11px;font-weight:700;font-size:.82rem;cursor:pointer;white-space:nowrap;}
.btn-eliminar:hover{background:#fdeceb;border-color:#b3261e;}
input[type="search"].buscador, .busca-inline input[type="search"]{
  border:1.6px solid var(--linea);border-radius:10px;padding:10px 13px;font-size:.95rem;width:100%;}
input[type="search"]:focus{outline:none;border-color:var(--verde);}

/* Compras: talla/color por línea (ropa) */
.combo-tc{display:flex;gap:6px;margin-top:6px;}
.combo-tc input{border:1.4px solid var(--linea);border-radius:8px;padding:6px 8px;font-size:.8rem;width:50%;}
.combo-tc input:focus{outline:none;border-color:var(--verde);}
/* POS: textarea de observaciones y meta */
.venta-meta textarea{width:100%;border:1.6px solid var(--linea);border-radius:10px;padding:9px;font-family:inherit;font-size:.92rem;resize:vertical;}
.venta-meta textarea:focus{outline:none;border-color:var(--verde);}
/* Productos: buscador grande */
.buscador-grande{display:flex;gap:10px;align-items:center;margin-bottom:6px;}
.buscador-grande input[type="search"]{flex:1;font-size:1.05rem;padding:14px 16px;border:2px solid var(--navy);border-radius:12px;}
.buscador-grande input[type="search"]:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 3px rgba(134,188,37,.18);}

/* Buscador amplio (compras, kardex, transferencias) */
.busca-grande{margin:4px 0 12px;}
.buscador-xl{width:100%;border:2px solid var(--linea);border-radius:12px;padding:13px 16px;
  font-size:1rem;background:#fff;transition:border-color .15s,box-shadow .15s;}
.buscador-xl:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 3px rgba(134,188,37,.18);}
/* Variante fija en compras de ropa */
.combo-fija{display:flex;align-items:center;gap:8px;margin-top:5px;}
.badge-var{display:inline-block;background:rgba(12,42,57,.08);color:var(--navy);border-radius:7px;
  padding:3px 9px;font-size:.78rem;font-weight:800;}

/* Envío: info autocompletada + observaciones grande */
.envio-info{margin-top:6px;background:rgba(134,188,37,.10);border:1px solid rgba(134,188,37,.4);
  border-radius:9px;padding:8px 11px;font-size:.85rem;color:var(--navy);}
.obs-grande{width:100%;min-height:90px;resize:vertical;border:1.6px solid var(--linea);
  border-radius:11px;padding:11px 13px;font-size:.95rem;font-family:inherit;line-height:1.4;}
.obs-grande:focus{outline:none;border-color:var(--verde);box-shadow:0 0 0 3px rgba(134,188,37,.15);}

/* Botón reimprimir ticket */
.btn-imprimir{border:1.4px solid var(--navy);background:#fff;color:var(--navy);border-radius:8px;
  padding:6px 11px;font-weight:700;font-size:.82rem;cursor:pointer;white-space:nowrap;}
.btn-imprimir:hover{background:var(--navy);color:#fff;}
.acciones-fila{display:flex;gap:6px;flex-wrap:wrap;}

/* Filas de ingreso por talla en almacén */
.var-ing-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:6px 0;}
.var-ing-row input{width:120px;border:1.6px solid var(--linea);border-radius:9px;padding:8px;}

/* Overlay Top 10 productos (POS) */
.ov-top{position:fixed;inset:0;background:rgba(12,42,57,.55);z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;}
.ov-top-card{background:#fff;border-radius:16px;width:min(720px,100%);max-height:90vh;overflow:auto;padding:18px;box-shadow:0 20px 60px rgba(0,0,0,.35);}
.ov-top-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.ov-top-head h2{margin:0;}
.ov-top-filtros{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin-bottom:12px;}
.ov-top-filtros label{display:flex;flex-direction:column;font-size:.8rem;font-weight:700;color:var(--navy);gap:3px;}
.ov-top-filtros input{border:1.6px solid var(--linea);border-radius:9px;padding:8px;}
