:root{--azul: #1F3864;--azul2: #2E5597;--azulF: #EEF3FB;--fondo: #F3F5F9;--card: #FFFFFF;--texto: #1B1F27;--gris: #6B7280;--linea: #E3E7EE;--verde: #1E7B4C;--verdeF: #E3F4EA;--rojo: #B42318;--rojoF: #FDECEA;--ambar: #9A6700;--ambarF: #FFF4D6}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--fondo)}body{font-family:-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--texto);font-size:16px;padding-bottom:calc(76px + env(safe-area-inset-bottom))}button,input,select{font-family:inherit}header.top{background:var(--azul);color:#fff;padding:12px 16px;position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:calc(12px + env(safe-area-inset-top))}header.top h1{font-size:18px;margin:0}header.top small{opacity:.8;font-size:12px;display:block}.hdr-btns{display:flex;gap:8px}.aviso{padding:9px 16px;font-size:14px;font-weight:600;text-align:center}.aviso.ambar{background:var(--ambarF);color:var(--ambar)}.aviso.rojo{background:var(--rojoF);color:var(--rojo)}.aviso button{margin-left:8px}main{padding:14px 14px 0;max-width:1100px;margin:0 auto}.card{background:var(--card);border-radius:14px;padding:14px;margin-bottom:12px;box-shadow:0 1px 2px #0000000f}h2{font-size:17px;margin:2px 0 12px;color:var(--azul)}label{display:block;font-size:13px;color:var(--gris);margin:10px 0 4px;font-weight:600}input,select{width:100%;font-size:17px;padding:12px;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--texto)}input:focus,select:focus{outline:2px solid var(--azul2);border-color:transparent}input:disabled{background:var(--fondo);color:var(--gris)}.fila{display:flex;gap:10px}.fila>*{flex:1;min-width:0}.fila.centro{align-items:center}.fijo{flex:0 0 auto!important}button{font-size:16px;font-weight:600;border:0;border-radius:12px;padding:14px 16px;cursor:pointer}button:disabled{opacity:.45;cursor:default}.btn{background:var(--azul);color:#fff;width:100%;margin-top:14px}.btn2{background:#e8edf6;color:var(--azul)}.btnRojo{background:var(--rojoF);color:var(--rojo)}.btnVerde{background:var(--verde);color:#fff}.chico{padding:8px 12px;font-size:14px;border-radius:9px}.icono{padding:8px 11px;font-size:18px;line-height:1;border-radius:10px}.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:12px}@media(min-width:720px){.kpis{grid-template-columns:repeat(3,1fr)}}.kpi{background:var(--card);border-radius:14px;padding:12px;box-shadow:0 1px 2px #0000000f}.kpi span{font-size:12px;color:var(--gris);display:block}.kpi b{font-size:20px;display:block;margin-top:4px;font-variant-numeric:tabular-nums}.kpi.verde b{color:var(--verde)}.kpi.ambar b{color:var(--ambar)}.kpi.rojo b{color:var(--rojo)}.kpi.clic{cursor:pointer}.calc{background:var(--fondo);border-radius:12px;padding:10px 12px;margin-top:12px}.calc>div{display:flex;justify-content:space-between;gap:10px;padding:4px 0;font-size:15px}.calc b{font-variant-numeric:tabular-nums;text-align:right}.grande{font-size:22px!important;color:var(--azul)}.item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--linea)}.item:last-child{border-bottom:0}.item.clic{cursor:pointer}.item .info{min-width:0;flex:1}.item .nom{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item .sub{font-size:13px;color:var(--gris);margin-top:2px}.item .der{text-align:right;font-variant-numeric:tabular-nums;flex:0 0 auto}.item .der b{display:block;font-size:17px}.item.tachado .nom,.item.tachado .der b{text-decoration:line-through;color:var(--gris)}.der b.agotado,.rojoT{color:var(--rojo)}.der b.bajo,.ambarT{color:var(--ambar)}.verdeT{color:var(--verde)}.tag{display:inline-block;font-size:11px;font-weight:700;padding:2px 7px;border-radius:20px;margin-left:5px;vertical-align:middle}.tag.rojo{background:var(--rojoF);color:var(--rojo)}.tag.ambar{background:var(--ambarF);color:var(--ambar)}.tag.verde{background:var(--verdeF);color:var(--verde)}.tag.azul{background:var(--azulF);color:var(--azul)}.tag.gris{background:var(--fondo);color:var(--gris)}.toggle{display:flex;gap:6px;flex-wrap:wrap}.toggle button{flex:1;background:#fff;border:1px solid var(--linea);color:var(--texto);font-size:14px;padding:10px 6px;min-width:70px}.toggle button.sel{background:var(--azul);color:#fff;border-color:var(--azul)}.chips{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.chips button{flex:0 0 auto;background:#fff;border:1px solid var(--linea);color:var(--texto);font-size:14px;padding:7px 12px;border-radius:20px}.chips button.sel{background:var(--azul);color:#fff;border-color:var(--azul)}.ayuda{font-size:13px;color:var(--gris);margin:6px 0 0;line-height:1.4}.vacio{color:var(--gris);text-align:center;padding:18px 0;font-size:15px}.pie{font-size:13px;color:var(--gris);text-align:center;padding-top:10px}nav.abajo{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--linea);display:flex;padding:6px 4px calc(6px + env(safe-area-inset-bottom));z-index:10}nav.abajo button{flex:1;background:none;color:var(--gris);font-size:11px;padding:6px 2px;max-width:160px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:2px;border-radius:10px}nav.abajo .ic{font-size:21px;line-height:1}nav.abajo button.activo{color:var(--azul);background:var(--azulF)}.toast{position:fixed;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));transform:translate(-50%);background:#1b1f27;color:#fff;padding:12px 18px;border-radius:12px;font-size:15px;z-index:60;max-width:92%;text-align:center;box-shadow:0 6px 20px #0003}.toast.error{background:var(--rojo)}.toast.ok{background:var(--verde)}.cargando{position:fixed;top:0;right:0;bottom:0;left:0;background:#f3f5f9cc;display:flex;align-items:center;justify-content:center;z-index:55;font-weight:600;color:var(--azul)}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;z-index:40}@media(min-width:720px){.modal{align-items:center}.modal .hoja{border-radius:18px!important}}.modal .hoja{background:var(--fondo);width:100%;max-width:620px;margin:0 auto;max-height:92vh;overflow-y:auto;border-radius:18px 18px 0 0;padding:16px 14px calc(22px + env(safe-area-inset-bottom))}.modal .cab{display:flex;justify-content:space-between;align-items:center;gap:10px}.modal .cab h2{margin:0}.modal .calc{background:#fff}.caja{display:grid;gap:12px;grid-template-columns:1fr}@media(min-width:900px){.caja{grid-template-columns:1.4fr 1fr;align-items:start}.caja .cobro{position:sticky;top:76px}}.buscador{position:relative}.resultados{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border-radius:12px;z-index:20;box-shadow:0 8px 28px #00000029;max-height:360px;overflow-y:auto;padding:0 12px}.linea{display:grid;grid-template-columns:1fr auto;gap:6px 10px;padding:12px 0;border-bottom:1px solid var(--linea)}.linea:last-child{border-bottom:0}.linea .nom{font-weight:600}.sublinea{font-size:13px;color:var(--gris);margin-top:2px}.linea .controles{grid-column:1 / -1;display:flex;align-items:center;gap:8px}.cant{display:flex;align-items:center;background:var(--fondo);border-radius:10px}.cant button{background:none;padding:8px 14px;font-size:20px;color:var(--azul)}.cant input{width:58px;text-align:center;border:0;background:none;padding:8px 0;font-weight:700}.precioLinea{width:104px!important;padding:8px 10px!important;font-size:15px!important}.total{font-size:34px;font-weight:800;color:var(--azul);text-align:center;font-variant-numeric:tabular-nums;margin:4px 0}.vuelto{text-align:center;font-size:20px;font-weight:700;margin-top:10px}.billetes{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:8px}.billetes button{background:#fff;border:1px solid var(--linea);color:var(--texto);padding:10px 4px;font-size:15px}.btnCobrar{font-size:19px;padding:17px}.barras .barra{display:grid;grid-template-columns:54px 1fr 88px;gap:8px;align-items:center;font-size:13px;padding:3px 0}.barras .barra div{background:var(--azulF);border-radius:6px;height:16px;overflow:hidden}.barras .barra i{display:block;height:100%;background:var(--azul2);border-radius:6px}.barras .barra b{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.detalle{background:var(--fondo);border-radius:10px;padding:8px 12px;margin:-4px 0 10px;font-size:14px}.detalle>div{display:flex;justify-content:space-between;padding:3px 0;gap:10px}video.scanner{width:100%;border-radius:12px;background:#000;aspect-ratio:4 / 3;object-fit:cover}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login .card{width:100%;max-width:380px;padding:24px}.login .logo{width:64px;height:64px;display:block;margin:0 auto 8px}.login h1{text-align:center;color:var(--azul);margin:0 0 4px;font-size:22px}
