:root{--ease-out:cubic-bezier(.23, 1, .32, 1);--fondo:#fff;--fondo-suave:#f6f7f6;--texto:#14181f;--texto-2:#444c57;--texto-3:#667085;--borde:#14181f1a;--borde-fuerte:#14181f38;--acento:#166534;--acento-hover:#124d29;--acento-suave:#eaf4ee;--peligro:#b42318;--peligro-suave:#fef3f2;--exito:#067647;--exito-suave:#ecfdf3;--aviso:#b54708;--aviso-suave:#fffaeb;--radio-lg:12px;--radio-md:8px;--sombra-tarjeta:0 1px 2px #14181f0d, 0 1px 3px #14181f0a;--sombra-flotante:0 12px 32px #14181f24, 0 2px 6px #14181f0f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--fondo);color:var(--texto);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI Variable Text,Segoe UI,system-ui,-apple-system,Roboto,Arial,sans-serif}a{color:var(--acento)}.centro{place-items:center;min-height:100vh;padding:1rem;display:grid}.tarjeta{border:1px solid var(--borde);border-radius:var(--radio-lg);width:100%;max-width:400px;box-shadow:var(--sombra-flotante);background:#fff;flex-direction:column;gap:1rem;padding:2rem;display:flex}h1{color:var(--texto);margin:0;font-size:1.4rem}p{margin:0}.sub{color:var(--texto-3);font-size:.9rem}.error{color:var(--peligro);font-size:.9rem}label{color:var(--texto-2);flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600;display:flex}input{border-radius:var(--radio-md);border:1px solid var(--borde-fuerte);min-height:44px;color:var(--texto);background:#fff;padding:.7rem .8rem;font-size:1rem;transition:border-color .12s,box-shadow .12s}input:focus{border-color:var(--acento);outline:none;box-shadow:0 0 0 3px #1665342e}button{border-radius:var(--radio-md);background:var(--acento);color:#fff;cursor:pointer;min-height:44px;transition:background-color .12s ease, transform .12s var(--ease-out);border:0;padding:.75rem;font-size:1rem;font-weight:600}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.6;cursor:wait}@media (hover:hover) and (pointer:fine){button:hover:not(:disabled){background:var(--acento-hover)}}.login-marca{align-items:center;gap:14px;margin-bottom:.25rem;display:flex}.login-marca h1{font-size:1.3rem;line-height:1.2}.login-marca .sub{margin-top:2px}.login-sello{background:var(--acento);color:#fff;letter-spacing:.04em;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-size:15px;font-weight:700;display:grid}.campo{flex-direction:column;gap:.35rem;display:flex}.campo label{color:var(--texto-2);font-size:.9rem;font-weight:600}.login-clave{grid-template-columns:1fr auto;gap:8px;display:grid}.login-clave input{min-width:0}.login-ver{min-width:96px;color:var(--texto-2);border:1px solid var(--borde-fuerte);background:#fff;padding:0 14px}@media (hover:hover) and (pointer:fine){.login-ver:hover:not(:disabled){background:var(--fondo-suave);color:var(--texto)}}button:focus-visible,input:focus-visible{outline:2px solid var(--acento);outline-offset:2px}.login-entrar{width:100%;min-height:48px;margin-top:.25rem}.login-aviso{border-radius:var(--radio-md);background:var(--exito-suave);color:var(--exito);border:1px solid #06764733;padding:10px 12px;font-size:.9rem}.login-enlace{color:#166534;font:inherit;cursor:pointer;background:0 0;border:0;margin:14px auto 0;padding:0;text-decoration:underline;display:block}.recuperar-texto{margin:0 0 14px;line-height:1.45}.clave-form{gap:16px;max-width:440px;display:grid}.clave-ayuda{color:var(--texto-3);margin:0;font-size:13px}.clave-form .clave-enviar{width:100%;min-height:48px}.perfil-datos{gap:14px;display:grid}.perfil-datos>div{flex-direction:column;gap:2px;display:flex}.perfil-etiqueta{color:var(--texto-3);font-size:13px;font-weight:600}.perfil-valor{color:var(--texto);font-size:16px}.clave-salir{width:100%;margin-top:12px}.alerta-billar-zona{z-index:60;pointer-events:none;flex-direction:column;align-items:center;gap:10px;display:flex;position:fixed;top:16px;left:280px;right:16px}.alerta-billar{pointer-events:auto;border:1px solid #b423184d;border-left:4px solid var(--peligro);border-radius:var(--radio-lg);width:min(580px,100%);box-shadow:var(--sombra-flotante);animation:alerta-billar-entra .2s var(--ease-out);background:#fff;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.alerta-billar-titulo{color:var(--texto);margin:0;font-weight:650}.alerta-billar-detalle{color:var(--texto-2);margin:2px 0 0;font-size:14px}.alerta-billar-acciones{flex-wrap:wrap;flex:none;gap:8px;display:flex}@keyframes alerta-billar-entra{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@media (width<=960px){.alerta-billar-zona{left:16px;right:16px}.alerta-billar{flex-direction:column;align-items:stretch}}@media (prefers-reduced-motion:reduce){.alerta-billar{animation:none}}.app{--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--fondo:#fff;--fondo-suave:#f6f7f6;--texto:#14181f;--texto-2:#444c57;--texto-3:#667085;--borde:#14181f1a;--borde-fuerte:#14181f38;--acento:#166534;--acento-hover:#124d29;--acento-suave:#eaf4ee;--peligro:#b42318;--peligro-suave:#fef3f2;--exito:#067647;--exito-suave:#ecfdf3;--aviso:#b54708;--aviso-suave:#fffaeb;--radio-lg:12px;--radio-md:8px;--sombra-tarjeta:0 1px 2px #14181f0d, 0 1px 3px #14181f0a;--sombra-flotante:0 12px 32px #14181f24, 0 2px 6px #14181f0f;background:var(--fondo);width:100%;min-height:100vh;color:var(--texto);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;text-align:left;-webkit-font-smoothing:antialiased;grid-template-columns:264px minmax(0,1fr);align-self:stretch;font-family:Segoe UI Variable Text,Segoe UI,system-ui,-apple-system,Roboto,Arial,sans-serif;font-size:15px;line-height:1.5;display:grid}.app-columna{min-width:0}.app-principal{padding:32px 40px 56px}.app-contenido{max-width:1180px;margin:0 auto}.app-barra-movil,.app-velo,.app-boton-cerrar{display:none}.app-lateral{background:var(--fondo);border-right:1px solid var(--borde);flex-direction:column;height:100vh;padding:20px 14px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.app-lateral-cabecera{justify-content:space-between;align-items:center;padding:4px 8px 22px;display:flex}.app-marca{align-items:center;gap:12px;display:flex}.app-marca-sello{background:var(--acento);color:#fff;letter-spacing:.04em;border-radius:10px;place-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:grid}.app-marca-nombre{color:var(--texto);font-size:15px;font-weight:650;line-height:1.2}.app-marca-sub{color:var(--texto-3);font-size:12px}.app-nav{flex-direction:column;flex:1;gap:22px;display:flex}.app-grupo-titulo{letter-spacing:.07em;text-transform:uppercase;color:var(--texto-3);margin:0 0 6px;padding:0 12px;font-size:11px;font-weight:600}.app .app-enlace{border-radius:var(--radio-md);min-height:44px;color:var(--texto-2);align-items:center;gap:12px;padding:0 12px;font-weight:500;text-decoration:none;transition:background-color .12s,color .12s;display:flex;position:relative}.app .app-enlace.active{background:var(--acento-suave);color:var(--acento);font-weight:600}.app .app-enlace.active:before{content:"";background:var(--acento);border-radius:0 3px 3px 0;width:3px;position:absolute;top:11px;bottom:11px;left:-14px}@media (hover:hover) and (pointer:fine){.app .app-enlace:hover:not(.active){background:var(--fondo-suave);color:var(--texto)}}.app-usuario{border-top:1px solid var(--borde);flex-direction:column;gap:12px;margin-top:16px;padding-top:16px;display:flex}.app-usuario-datos{align-items:center;gap:10px;min-width:0;padding:0 4px;display:flex}.app-avatar{background:var(--fondo-suave);border:1px solid var(--borde);width:36px;height:36px;color:var(--texto-2);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:grid}.app-usuario-texto{min-width:0}.app-usuario-nombre{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;line-height:1.25;overflow:hidden}.app-usuario-rol{color:var(--texto-3);font-size:12px}.app h1{letter-spacing:-.01em;color:var(--texto);margin:0 0 20px;font-size:24px;font-weight:650;line-height:1.25}.app h2{color:var(--texto);margin:0 0 12px;font-size:17px;font-weight:600;line-height:1.3}.app h3{color:var(--texto);margin:0;font-size:15px;font-weight:600}.app p{color:var(--texto-2)}.app label{color:var(--texto-2);font-size:13px;font-weight:600}.app input:not([type=checkbox]):not([type=radio]),.app select,.app textarea{box-sizing:border-box;min-height:42px;font:inherit;color:var(--texto);border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);background:#fff;padding:9px 12px;transition:border-color .12s,box-shadow .12s}.app input:focus,.app select:focus,.app textarea:focus{border-color:var(--acento);outline:none;box-shadow:0 0 0 3px #1665342e}.app ::placeholder{color:#7a8494;opacity:1}.app input:disabled,.app select:disabled,.app textarea:disabled{background:var(--fondo-suave);color:var(--texto-3);cursor:not-allowed}.app :focus-visible{outline:2px solid var(--acento);outline-offset:2px}.app button{min-height:40px;font:inherit;color:var(--texto);border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);cursor:pointer;transition:background-color .12s ease, border-color .12s ease, transform .12s var(--ease-out);background:#fff;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;display:inline-flex}.app button:active:not(:disabled){transform:scale(.98)}.app button:disabled{opacity:.55;cursor:not-allowed}.app .btn-principal{background:var(--acento);border-color:var(--acento);color:#fff}.app .btn-claro{border-color:var(--borde-fuerte);color:var(--texto);background:#fff}@media (hover:hover) and (pointer:fine){.app button:hover:not(:disabled){background:var(--fondo-suave)}.app .btn-principal:hover:not(:disabled){background:var(--acento-hover);border-color:var(--acento-hover)}.app .btn-claro:hover:not(:disabled){background:var(--fondo-suave);border-color:var(--texto-3)}}.app .panel{color:var(--texto);border:1px solid var(--borde);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);background:#fff;margin-bottom:24px;padding:24px}.app .error,.app .exito{border-radius:var(--radio-md);margin:0;padding:10px 12px;font-size:14px}.app .error{background:var(--peligro-suave);color:var(--peligro);border:1px solid #b4231833}.app .exito{background:var(--exito-suave);color:var(--exito);border:1px solid #06764733}.app table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.app th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--texto-3);background:var(--fondo-suave);border-bottom:1px solid var(--borde);padding:10px 14px;font-size:12px;font-weight:600}.app td{color:var(--texto);border-bottom:1px solid var(--borde);padding:12px 14px}.app .mesas-rejilla{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;display:grid}.app .mesa-tarjeta{--estado:var(--texto-3);--estado-tinte:var(--fondo-suave);color:var(--texto);border:1px solid var(--borde);border-top:3px solid var(--estado);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);background:#fff;flex-direction:column;gap:6px;padding:16px;display:flex}.app .mesa-tarjeta.estado-libre{--estado:#2f9e5b;--estado-tinte:var(--exito-suave)}.app .mesa-tarjeta.estado-ocupada{--estado:var(--peligro);--estado-tinte:var(--peligro-suave)}.app .mesa-tarjeta.estado-reservada{--estado:var(--aviso);--estado-tinte:var(--aviso-suave)}.app .mesa-tipo{color:var(--texto-3);font-size:13px}.app .mesa-estado{background:var(--estado-tinte);color:var(--estado);border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:12px;font-weight:600}.app .mesa-acciones{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}@media (width<=960px){.app{display:block}.app-principal{padding:20px 16px 40px}.app-barra-movil{z-index:20;border-bottom:1px solid var(--borde);background:#fff;justify-content:flex-start;align-items:center;gap:12px;height:56px;padding:0 16px;display:flex;position:sticky;top:0}.app-boton-cerrar{min-height:40px;padding:0 10px;display:inline-flex}.app-lateral{z-index:40;visibility:hidden;width:min(300px,86vw);height:100%;transition:transform .18s var(--ease-drawer), visibility 0s linear .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app-lateral.abierto{visibility:visible;box-shadow:var(--sombra-flotante);transition:transform .24s var(--ease-drawer), visibility 0s;transform:none}.app-velo{z-index:30;opacity:0;pointer-events:none;background:#14181f59;transition:opacity .18s ease-out;display:block;position:fixed;inset:0}.app-velo.abierto{opacity:1;pointer-events:auto}}@media (prefers-reduced-motion:reduce){.app-lateral,.app-lateral.abierto{transition:visibility}.app button:active:not(:disabled){transform:none}}.app select,.app input:not([type=checkbox]):not([type=radio]),.app textarea{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--texto)!important;background-color:#fff!important}.app select option,.app select optgroup{color:var(--texto);background-color:#fff}.app select:disabled,.app textarea:disabled,.app input:not([type=checkbox]):not([type=radio]):disabled{background-color:var(--fondo-suave)!important;color:var(--texto-3)!important}.app a.btn-principal,.app a.btn-claro{border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-weight:600;text-decoration:none;transition:background-color .12s,border-color .12s;display:inline-flex}.app a.btn-principal{background:var(--acento);border-color:var(--acento);color:#fff}.app a.btn-claro{color:var(--texto);background:#fff}@media (hover:hover) and (pointer:fine){.app a.btn-principal:hover{background:var(--acento-hover);border-color:var(--acento-hover)}.app a.btn-claro:hover{background:var(--fondo-suave);border-color:var(--texto-3)}}@media (hover:hover) and (pointer:fine){.app .menu-acciones-item:hover:not(:disabled){background:var(--fondo-suave)}.app .menu-acciones-item.peligro:hover:not(:disabled){background:var(--peligro-suave)}}@keyframes menu-acciones-abre{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.menu-acciones-lista{animation:none}}.app .num,.app .derecha{text-align:right;font-variant-numeric:tabular-nums}.app .kpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:0 0 24px;display:grid}.app .kpi{border:1px solid var(--borde);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);background:#fff;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.app .kpi-etiqueta{color:var(--texto-3);font-size:13px;font-weight:600}.app .kpi-valor{letter-spacing:-.01em;font-variant-numeric:tabular-nums;color:var(--texto);font-size:26px;font-weight:700;line-height:1.2}.app .kpi.destacado{background:var(--acento-suave);border-color:#16653433}.app .kpi.destacado .kpi-valor{color:var(--acento)}.app .app-insignia{background:var(--acento);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:12px;font-weight:700;line-height:1;display:inline-grid}.app .app-insignia.urgente{background:var(--peligro)}.app .app-enlace.parpadea,.app .app-boton-menu.parpadea{animation:1s ease-in-out infinite app-parpadeo}@keyframes app-parpadeo{0%,to{background-color:#0000}50%{background-color:var(--peligro-suave);color:var(--peligro)}}@media (prefers-reduced-motion:reduce){.app .app-enlace.parpadea,.app .app-boton-menu.parpadea{background-color:var(--peligro-suave);color:var(--peligro);animation:none}}.app .licencia-aviso{border-radius:var(--radio-md);border:1px solid #0000;justify-content:space-between;align-items:center;gap:12px;margin:0 0 20px;padding:12px 16px;font-size:14px;display:flex}.app .licencia-aviso.amarillo{background:var(--aviso-suave);color:var(--aviso);border-color:#b5470840}.app .licencia-aviso.rojo{background:var(--peligro-suave);color:var(--peligro);border-color:#b4231840}.app .licencia-aviso p{color:inherit;margin:0}.app.licencia-pantalla{grid-template-columns:1fr;place-items:center;padding:24px;display:grid}.licencia-tarjeta{width:min(520px,100%)}.licencia-acciones{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.app .inicio-cabecera{margin-bottom:28px}.app .inicio-cabecera h1{margin:0 0 4px}.app .inicio-fecha{color:var(--texto-3);margin:0}.app .inicio-grupo{margin-bottom:28px}.app .inicio-grupo h2{letter-spacing:.07em;text-transform:uppercase;color:var(--texto-3);margin:0 0 12px;font-size:11px;font-weight:600}.app .inicio-rejilla{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;display:grid}.app .inicio-acceso{min-height:84px;color:var(--texto);border:1px solid var(--borde);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);transition:box-shadow .12s ease, border-color .12s ease, transform .12s var(--ease-out);background:#fff;align-items:center;gap:16px;padding:16px 18px;text-decoration:none;display:flex}.app .inicio-acceso:active{transform:scale(.98)}@media (hover:hover) and (pointer:fine){.app .inicio-acceso:hover{border-color:var(--borde-fuerte);box-shadow:0 4px 14px #14181f1a}}.app .inicio-icono{background:var(--acento-suave);width:48px;height:48px;color:var(--acento);border-radius:12px;flex:none;place-items:center;display:grid}.app .inicio-icono svg{width:24px;height:24px}.app .inicio-texto{flex-direction:column;gap:2px;min-width:0;display:flex}.app .inicio-titulo{font-size:16px;font-weight:650;line-height:1.25}.app .inicio-detalle{color:var(--texto-3);font-size:13px;line-height:1.35}@media (prefers-reduced-motion:reduce){.app .inicio-acceso:active{transform:none}}.app .tablero{margin-bottom:28px}.app .tablero h2{letter-spacing:.07em;text-transform:uppercase;color:var(--texto-3);margin:0 0 12px;font-size:11px;font-weight:600}.app .tablero-detalle{color:var(--texto-3);margin-top:4px;font-size:12px;display:block}.app .tablero-tope{margin-top:16px}.app .tablero-tope-titulo{justify-content:space-between;gap:12px;font-size:14px;font-weight:600;display:flex}.app .tablero-barra{background:#e5e7eb;border-radius:999px;height:10px;margin:8px 0;overflow:hidden}.app .tablero-barra-relleno{background:#166534;height:100%}.app .tablero-barra-relleno.atencion{background:#b45309}.app .tablero-barra-relleno.critico,.app .tablero-barra-relleno.superado{background:#b91c1c}.menu-acciones{flex:none;position:relative}.app .menu-acciones-boton{min-width:44px;min-height:44px;padding:0}.menu-acciones-lista{z-index:10;border:1px solid var(--borde);border-radius:var(--radio-lg);min-width:210px;box-shadow:var(--sombra-flotante);transform-origin:100% 0;animation:menu-acciones-abre .14s var(--ease-out);background:#fff;padding:6px;position:absolute;top:calc(100% + 6px);right:0}.app .menu-acciones-item{border-radius:var(--radio-md);width:100%;min-height:44px;color:var(--texto);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;padding:0 12px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.app .menu-acciones-item.peligro{color:var(--peligro)}.app .menu-acciones-item:disabled{opacity:.5;cursor:not-allowed}@media (hover:hover) and (pointer:fine){.app .menu-acciones-item:hover:not(:disabled){background:var(--fondo-suave)}.app .menu-acciones-item.peligro:hover:not(:disabled){background:var(--peligro-suave)}}@media (prefers-reduced-motion:reduce){.menu-acciones-lista{animation:none}}.usuarios-cabecera{justify-content:space-between;align-items:center;gap:12px;display:flex}.usuarios-cabecera h2{margin:0}.usuarios-form{border-top:1px solid var(--borde);grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;padding-top:16px;display:grid}.usuarios-form label{margin-bottom:6px;display:block}.usuarios-form input,.usuarios-form select{width:100%}.usuarios-form-ancho{grid-column:1/-1}@media (width<=640px){.usuarios-form{grid-template-columns:1fr}}.usuarios-tabla-caja{overflow-x:auto}.usuarios-tabla{border-collapse:collapse;width:100%}.usuarios-tabla tr.inactivo td{opacity:.55}.app .usuarios-tabla select{min-height:36px;padding:4px 8px}.etiqueta{border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600;display:inline-block}.etiqueta.ok{background:var(--exito-suave);color:var(--exito)}.etiqueta.off{background:var(--peligro-suave);color:var(--peligro)}.app .usuarios-titulo{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:20px;display:flex}.app .usuarios-titulo h1{margin:0}.app .panel.clave-temporal{background:var(--aviso-suave);border-color:#b5470859}.app .clave-temporal-fila{flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;display:flex}.app .clave-temporal-valor{border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);letter-spacing:.08em;-webkit-user-select:all;user-select:all;background:#fff;padding:12px 18px;font-family:Cascadia Mono,Consolas,Courier New,monospace;font-size:1.75rem;font-weight:700}.app .tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.app .tabs button{border:1px solid var(--borde-fuerte);width:auto;min-height:44px;color:var(--texto-2);background:#fff;margin:0}.app .tabs button.activa,.app .tabs button.activa:hover:not(:disabled){background:var(--acento);border-color:var(--acento);color:#fff}.casilla{align-items:center;gap:.5rem;display:flex}.casilla input{width:auto}.acciones{flex-wrap:wrap;gap:.4rem;display:flex}.app .fila-alerta td{background:var(--peligro-suave);color:var(--texto)}.app .fila-alerta td:first-child{box-shadow:inset 3px 0 0 var(--peligro)}.nota{color:var(--texto-3);margin:.25rem 0 0;font-size:.85rem}.derecha{text-align:right}@media (width>=700px){.app .tabla-con-menu{overflow:visible}}.app .tabla-con-menu .col-acciones{white-space:nowrap;text-align:right;width:1%}.app .tabla-con-menu .col-acciones .menu-acciones{display:inline-block}.app .inv-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:20px;display:flex}.app .inv-cabecera h1{margin:0}.app .kpi.alerta{background:var(--peligro-suave);border-color:#b4231840}.app .kpi.alerta .kpi-valor{color:var(--peligro)}.app .inv-producto{background:var(--fondo-suave);border:1px solid var(--borde);border-radius:var(--radio-md);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;display:flex}.app .inv-producto-nombre{font-size:1.1rem;font-weight:650}.app .inv-producto-dato{align-items:baseline;gap:10px;display:flex}.app .inv-producto-etiqueta{color:var(--texto-3);font-size:13px;font-weight:600}.app .inv-producto-existencia{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700;line-height:1.1}.app .etiqueta-bajo{background:var(--peligro-suave);color:var(--peligro);border:1px solid #b4231840;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.app .mesas-cabecera{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.app .mesas-cabecera h1{margin:0}.app .mesas-rejilla{margin-top:14px}.app .mesa-encabezado{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.app .mesa-tarjeta h3{padding-top:2px;font-size:1.05rem}.app .mesa-tarjeta.estado-inactiva{--estado:#98a2b3;--estado-tinte:var(--fondo-suave);opacity:.75}.app .caja-form{gap:20px;max-width:560px;display:grid}.app .caja-form label{margin-bottom:6px;display:block}.app .caja-form input{width:100%}.app .caja-form input.campo-grande:not([type=checkbox]):not([type=radio]){text-align:right;font-variant-numeric:tabular-nums;min-height:68px;font-size:2rem;font-weight:700}.app .caja-enviar{width:100%;min-height:56px;font-size:17px}.app .caja-resultado{border-radius:var(--radio-md);border:1px solid #0000;justify-content:space-between;align-items:baseline;gap:12px;margin-top:4px;padding:16px 18px;display:flex}.app .caja-resultado-etiqueta{color:var(--texto-2);font-size:13px;font-weight:600}.app .caja-resultado-texto{font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:700;line-height:1.15}.app .caja-resultado.cuadra{background:var(--exito-suave);border-color:#06764740}.app .caja-resultado.cuadra .caja-resultado-texto{color:var(--exito)}.app .caja-resultado.falta{background:var(--peligro-suave);border-color:#b4231840}.app .caja-resultado.falta .caja-resultado-texto{color:var(--peligro)}.app .caja-resultado.sobra{background:var(--aviso-suave);border-color:#b5470840}.app .caja-resultado.sobra .caja-resultado-texto{color:var(--aviso)}.etiqueta.aviso{background:var(--aviso-suave);color:var(--aviso)}.app .cuentas-rejilla{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin-top:16px;display:grid}.app .cuenta-tarjeta{--estado:var(--peligro);color:var(--texto);border:1px solid var(--borde);border-top:3px solid var(--estado);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);background:#fff;flex-direction:column;gap:4px;padding:16px;text-decoration:none;transition:box-shadow .12s;display:flex}.app .cuenta-tarjeta.por-cobrar{--estado:var(--aviso)}@media (hover:hover) and (pointer:fine){.app .cuenta-tarjeta:hover{box-shadow:0 4px 14px #14181f1a}}.app .cuenta-tarjeta h3{margin:0;font-size:1.05rem}.app .cuenta-total{font-variant-numeric:tabular-nums;font-size:1.25rem;font-weight:700}.app .cuenta-estado{background:var(--aviso-suave);color:var(--aviso);border-radius:999px;align-self:flex-start;margin-top:4px;padding:2px 10px;font-size:12px;font-weight:600}.cuenta-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.app .cuenta-titulo{margin-bottom:20px}.app .cuenta-titulo h1{margin:0 0 4px}.app .cuenta-cliente{color:var(--texto-2);margin:0}.app .enlace-volver{min-height:44px;color:var(--texto-3);align-items:center;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.app .enlace-volver:hover{color:var(--texto)}}.cuenta-columnas{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:16px;display:grid}.app .producto-busqueda{width:100%;margin-top:10px}.producto-lista{max-height:340px;margin-top:10px;overflow-y:auto}.app .producto-fila{border-bottom:1px solid var(--borde);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.app .producto-datos{flex-direction:column;min-width:0;display:flex}.app .producto-precio{color:var(--texto-3);font-variant-numeric:tabular-nums;font-size:13px}.app .btn-agregar{flex:none;min-width:96px;min-height:44px}.carrito-linea{border-bottom:1px solid var(--borde);grid-template-columns:1fr 84px;align-items:center;gap:8px;padding:8px 0;display:grid}.carrito-linea .ancho{grid-column:1/-1}.app .carrito-enviar{width:100%;min-height:48px;margin-top:12px}.item-anulado{opacity:.5;text-decoration:line-through}.app .btn-claro.btn-anular{color:var(--peligro);border-color:#b4231859}@media (hover:hover) and (pointer:fine){.app .btn-claro.btn-anular:hover:not(:disabled){background:var(--peligro-suave);border-color:var(--peligro)}}.cuenta-acciones{flex-wrap:wrap;gap:10px;margin:14px 0 18px;display:flex}.cuenta-acciones a{border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);align-items:center;min-height:40px;padding:0 22px;font-weight:600;text-decoration:none;display:inline-flex}.cuenta-destino{background:#f0fdf4;border:1px solid #166534;border-radius:6px;margin:.75rem 0;padding:.5rem .75rem}.cuenta-destino-varias{color:#92400e;background:#fffbeb;border-color:#d97706}.subcuentas-anular{border-top:1px solid #d1d5db;margin-top:16px;padding-top:12px}.subcuentas-fila{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;display:flex}.imp-barra{flex-wrap:wrap;align-items:center;gap:10px;margin:.5rem 0 1rem;display:flex}.imp-barra select{border-radius:var(--radio-md);border:1px solid var(--borde-fuerte);min-height:44px;color:var(--texto);background:#fff;padding:0 .8rem;font-size:1rem}.zona-impresion{display:none}@page ticket{margin:0}@media print{body.imprimiendo-ticket>:not(.zona-impresion){display:none!important}body.imprimiendo-ticket{background:#fff;margin:0}.zona-impresion{page:ticket;color:#000;background:#fff;margin:0 auto;padding:3mm 0 8mm;font-family:Consolas,Courier New,monospace;line-height:1.3;display:block}.zona-impresion.ticket-58{width:48mm;font-size:11px}.zona-impresion.ticket-80{width:72mm;font-size:12px}.t-centro{text-align:center}.t-negrita{font-weight:700}.t-titulo{text-align:center;margin-bottom:2px;font-size:1.25em;font-weight:700}.t-aviso{text-align:center;border:1px solid #000;margin:6px 0;padding:3px 0;font-weight:700}.t-linea{border-top:1px dashed #000;margin:5px 0}.t-fila{justify-content:space-between;gap:6px;display:flex}.t-fila>span:last-child{text-align:right}.t-fila>span:first-child{min-width:0}.t-grupo{margin-bottom:4px}.t-item{break-inside:avoid;margin-bottom:3px}.t-item-nombre{word-break:break-word}.t-detalle{padding-left:1ch}.t-nota{font-size:.9em}.t-total{font-size:1.25em;font-weight:700}.t-pie{margin-top:4px}.t-escribir{border-bottom:1px solid #000;align-items:flex-end;height:2.6em;font-size:.9em;display:flex}.t-casilla{align-items:center;gap:6px;margin:4px 0;display:flex}.t-cuadro{border:1.5px solid #000;flex:none;width:1.1em;height:1.1em;display:inline-block}.t-comanda-area{text-align:center;letter-spacing:.15em;margin-bottom:2px;font-size:1.8em;font-weight:700}.t-comanda-item{break-inside:avoid;margin-bottom:7px}.t-comanda-linea{gap:8px;font-size:1.2em;font-weight:700;display:flex}.t-comanda-cant{flex:none}.t-comanda-nota{padding-left:1ch;font-size:1.05em}.t-aviso.t-reimpresion{letter-spacing:.1em;border-width:2px;font-size:1.3em}}.billar-resumen{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:20px;display:grid}.billar-resumen-item{border:1px solid var(--borde);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);background:#fff;align-items:center;gap:12px;padding:12px 14px;display:flex}.billar-resumen-item strong{line-height:1.25;display:block}.billar-resumen-texto{color:var(--texto-2);font-size:13px}.billar-punto{background:var(--punto,var(--texto-3));border-radius:50%;flex:none;width:10px;height:10px}.billar-resumen-item[data-estado=libre]{--punto:#2f9e5b}.billar-resumen-item[data-estado=juego]{--punto:#2b5fa8}.billar-resumen-item[data-estado=aviso]{--punto:var(--aviso)}.billar-resumen-item[data-estado=vencida]{--punto:var(--peligro)}.app .billar-rejilla{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.app .billar-rejilla .mesa-tarjeta{gap:10px;padding:20px}.billar-cabecera{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.billar-etiqueta{letter-spacing:.05em;text-transform:uppercase;color:var(--texto-3);font-size:12px;font-weight:600}.billar-reloj{letter-spacing:-.01em;font-variant-numeric:tabular-nums;font-size:2.5rem;font-weight:700;line-height:1.1}.billar-progreso{background:var(--fondo-suave);border-radius:999px;height:6px;overflow:hidden}.billar-progreso>span{border-radius:inherit;background:var(--estado);width:0;height:100%;transition:width 1s linear;display:block}.billar-fila{border-top:1px solid var(--borde);justify-content:space-between;align-items:baseline;gap:12px;padding-top:10px;display:flex}.billar-fila strong{font-variant-numeric:tabular-nums;font-size:1.15rem}.billar-aviso{color:var(--peligro);font-size:13px;font-weight:600}.app .billar-boton{width:100%;min-height:48px;font-size:16px}.app .mesa-tarjeta.estado-juego{--estado:#2b5fa8;--estado-tinte:#eff5fc}.app .mesa-tarjeta.estado-aviso{--estado:var(--aviso);--estado-tinte:var(--aviso-suave)}.app .mesa-tarjeta.estado-aviso .billar-reloj{color:var(--aviso)}.app .mesa-tarjeta.estado-vencida{--estado:var(--peligro);--estado-tinte:var(--peligro-suave);background:var(--peligro-suave)}.app .mesa-tarjeta.estado-vencida .billar-reloj{color:var(--peligro)}.billar-opciones{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.app .chip{flex-direction:column;gap:0;min-height:52px;padding:6px 10px;font-size:15px;line-height:1.25}.chip-precio{color:var(--texto-3);font-size:12px;font-weight:500}.app .chip.activa,.app .chip.activa:hover:not(:disabled){background:var(--acento);border-color:var(--acento);color:#fff}.app .chip.activa .chip-precio{color:#ffffffd9}.billar-otro{flex-direction:column;gap:6px;display:flex}@media (prefers-reduced-motion:reduce){.billar-progreso>span{transition:none}}@media print{.t-razon{font-size:.9em}.t-uuid{word-break:break-all;margin-bottom:2px;font-size:.85em}.t-aviso.t-simulada{border-width:2px}.t-aviso.t-copia{letter-spacing:.25em;border-width:2px;font-size:1.5em}}.app .cobro-titulo{margin-bottom:20px}.app .cobro-titulo h1{margin:0 0 4px}.app .cobro-cliente{color:var(--texto-2);margin:0}.app .cobro-volver{min-height:44px;color:var(--texto-3);align-items:center;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover) and (pointer:fine){.app .cobro-volver:hover{color:var(--texto)}}.cobro-pagada{background:var(--exito-suave);border-radius:var(--radio-md);border:1px solid #06764740;margin:12px 0 24px;padding:16px}.cobro-pagada p{margin:8px 0 0}.app .cobro-form{gap:20px;max-width:560px;display:grid}.app .cobro-form label{margin-bottom:6px;display:block}.app .cobro-form select{width:100%}.app .cobro-saldo{background:var(--fondo-suave);border:1px solid var(--borde);border-radius:var(--radio-md);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;display:flex}.app .cobro-saldo-etiqueta{color:var(--texto-3);font-size:13px;font-weight:600}.app .cobro-saldo-valor{font-variant-numeric:tabular-nums;color:var(--texto);font-size:2rem;font-weight:700;line-height:1.1}.app .cobro-metodos{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;display:grid}.app .cobro-metodos .cobro-metodo{min-height:56px;font-size:16px}.app .cobro-metodos .cobro-metodo[aria-pressed=true]{background:var(--acento-suave);border-color:var(--acento);color:var(--acento)}.app .cobro-form input.campo-grande:not([type=checkbox]):not([type=radio]){text-align:right;font-variant-numeric:tabular-nums;width:100%;min-height:68px;font-size:2rem;font-weight:700}.app .cobro-recibido-fila{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.app .cobro-recibido-fila .btn-exacto{min-height:68px;padding:0 22px}.app .cobro-vuelto-caja{background:var(--exito-suave);border-radius:var(--radio-md);border:1px solid #06764740;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;display:flex}.app .cobro-vuelto-caja.falta{background:var(--peligro-suave);border-color:#b4231840}.app .cobro-vuelto-etiqueta{color:var(--texto-2);font-size:13px;font-weight:600}.app .cobro-vuelto{font-variant-numeric:tabular-nums;color:var(--exito);font-size:2.25rem;font-weight:700;line-height:1.1}.app .cobro-vuelto-caja.falta .cobro-vuelto{color:var(--peligro)}.app .cobro-enviar{width:100%;min-height:60px;font-size:18px}.anulacion-resumen{gap:16px;max-width:640px;display:grid}.anulacion-fila{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;display:flex}.anulacion-fila:last-child{border-bottom:0}.anulacion-destacado{font-size:1.25rem;font-weight:700}.anulacion-portal{border:1px solid #d1d5db;border-radius:8px;padding:14px 16px}.anulacion-campos{gap:14px;display:grid}.anulacion-campos select,.anulacion-campos input{width:100%}.app .pestanas{grid-template-columns:repeat(2,minmax(0,220px));gap:10px;margin-bottom:20px;display:grid}.app .pestanas .pestana{min-height:56px;font-size:17px}.app .pestanas .pestana[aria-pressed=true]{background:var(--acento);border-color:var(--acento);color:#fff}.app .cola-titulo{margin-top:8px}.app .cola-rejilla{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin:14px 0 28px;display:grid}.app .ticket{--estado:var(--borde-fuerte);--tinte:#fff;background:var(--tinte);border:1px solid var(--borde);border-top:4px solid var(--estado);border-radius:var(--radio-lg);box-shadow:var(--sombra-tarjeta);flex-direction:column;gap:10px;padding:16px;display:flex}.app .ticket.atencion{--estado:var(--aviso);--tinte:var(--aviso-suave)}.app .ticket.urgente{--estado:var(--peligro);--tinte:var(--peligro-suave)}.app .ticket.lista{--estado:#2f9e5b;--tinte:var(--exito-suave)}.app .ticket-cabecera{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.app .ticket-cabecera h3{margin:0;font-size:1.5rem;line-height:1.2}.app .ticket-minutos{font-variant-numeric:tabular-nums;color:var(--texto);font-size:1.5rem;font-weight:700}.app .ticket.urgente .ticket-minutos{color:var(--peligro)}.app .ticket.atencion .ticket-minutos{color:var(--aviso)}.app .ticket-atraso{background:var(--peligro);color:#fff;border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:13px;font-weight:700}.app .ticket-meta{flex-direction:column;gap:2px;display:flex}.app .ticket-cliente{color:var(--texto);font-size:1rem;font-weight:600}.app .ticket-item{border-top:1px solid var(--borde);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.app .ticket-item-texto{flex-direction:column;gap:4px;min-width:0;display:flex}.app .ticket-item-linea{align-items:center;gap:10px;display:flex}.app .ticket-cant{text-align:center;border:1px solid var(--borde-fuerte);border-radius:var(--radio-md);font-variant-numeric:tabular-nums;background:#fff;flex:none;min-width:36px;padding:2px 8px;font-size:1.25rem;font-weight:700}.app .ticket-item-nombre{font-size:1.25rem;font-weight:650;line-height:1.25}.app .ticket-nota{background:var(--peligro-suave);border-radius:var(--radio-md);color:var(--peligro);border:1px solid #b4231840;align-self:flex-start;padding:4px 10px;font-size:1rem;font-weight:700}.app .ticket-estado{color:var(--texto-3);font-size:.9rem;font-weight:600}.app .ticket-acciones{grid-template-columns:1fr 1fr;gap:10px;margin-top:4px;display:grid}.app .ticket-acciones>:only-child{grid-column:1/-1}.app .ticket button{min-height:60px;padding:0 18px;font-size:17px}.app .ticket-item button{flex:none;min-width:120px}.propinas-tabs{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:.25rem;margin-bottom:1rem;display:flex}.propinas-tab{color:#374151;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;padding:.65rem 1.1rem;font-size:1rem}.propinas-tab.activa{color:#166534;border-bottom-color:#166534;font-weight:600}.propinas-participante{border-bottom:1px solid #f3f4f6;grid-template-columns:1fr 7rem 6rem;align-items:center;gap:.5rem;padding:.4rem 0;display:grid}.propinas-participante select,.propinas-participante input{width:100%}.propinas-participante-nombre{font-weight:500}.propinas-tabla-scroll{max-width:100%;overflow-x:auto}.propinas-total-fila th{border-top:2px solid #166534}.propinas-btn-sec{color:#166534;cursor:pointer;background:#fff;border:1px solid #166534;border-radius:6px;padding:.55rem 1rem;font-size:1rem}.propinas-btn-sec:disabled{opacity:.6;cursor:not-allowed}.propinas-acciones{flex-wrap:wrap;gap:.75rem;margin-top:.75rem;display:flex}.reportes-filtros{flex-wrap:wrap;align-items:flex-end;gap:.75rem;margin-bottom:1rem;display:flex}.reportes-filtros>div{flex-direction:column;gap:.25rem;display:flex}.reportes-encabezado{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1.5rem;margin-bottom:.5rem;display:flex}.reportes-encabezado .propinas-acciones{margin-top:0}.reportes-periodo{color:#374151;margin:0}.reportes-solo-imprimir{display:none}.reportes-actualizando{opacity:.6}.reportes-comparacion{color:#4b5563;margin-top:.25rem;font-size:.85rem;display:block}.reportes-comparacion.reportes-sube,.reportes-sube{color:#166534}.reportes-comparacion.reportes-baja,.reportes-baja{color:#b91c1c}.reportes-barras{align-items:flex-end;gap:1px;padding-top:.5rem;display:flex}.reportes-barra-col{flex-direction:column;flex:1 1 0;align-items:center;min-width:0;display:flex}.reportes-barra-zona{border-bottom:1px solid #d1d5db;align-items:flex-end;width:100%;height:9rem;display:flex}.reportes-barra{background:#166534;border-radius:2px 2px 0 0;width:100%}.reportes-barra-col:hover .reportes-barra{background:#14532d}.reportes-barra-etiqueta{color:#6b7280;white-space:nowrap;height:1rem;margin-top:.2rem;font-size:.7rem}.reportes-hbar-fila{align-items:center;gap:.5rem;display:flex}.reportes-hbar-pista{background:#f3f4f6;border-radius:4px;flex:1;min-width:6rem;height:.6rem}.reportes-hbar{background:#166534;border-radius:4px;height:100%}.reportes-tabla-alta{max-height:28rem;overflow-y:auto}.reportes-sobrante{color:#92400e}.reportes-aviso{border:1px solid #0000;border-radius:6px;margin:.75rem 0;padding:.75rem 1rem}.reportes-aviso-amarillo{color:#92400e;background:#fffbeb;border-color:#f59e0b}.reportes-aviso-rojo{color:#991b1b;background:#fef2f2;border-color:#dc2626}.reportes-tope-pista{background:#e5e7eb;border-radius:6px;height:.9rem;margin:.5rem 0;overflow:hidden}.reportes-tope-barra{background:#166534;height:100%}.reportes-tope-atencion{background:#d97706}.reportes-tope-critico,.reportes-tope-superado,.reportes-hbar-alerta{background:#dc2626}@media print{:is(body:has(.reportes) .app-lateral,body:has(.reportes) .app-barra-movil,body:has(.reportes) .app-velo){display:none!important}body:has(.reportes) .app{display:block}.reportes .reportes-no-imprimir{display:none!important}.reportes .reportes-solo-imprimir{color:#4b5563;display:block}.reportes .reportes-tabla-alta{max-height:none;overflow:visible}.reportes .kpis{break-inside:avoid}}
