@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-mono-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-600.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ibm-plex-mono-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/bricolage-grotesque-400-800.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/archivo-400-900.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Syne;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/syne-800.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Work Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/work-sans-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Libre Baskerville;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/libre-baskerville-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/inter-tight-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Caveat;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/caveat-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/nunito-400-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Permanent Marker;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/permanent-marker-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/atkinson-hyperlegible-400.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/atkinson-hyperlegible-700.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f2ede3;--surface: #fbf8f1;--surface-2: #ebe4d6;--ink: #171410;--muted: #6b6257;--accent: #8c3a1e;--accent-ink: #f2ede3;--accent-2: #8c3a1e;--danger: #b3261e;--ok: #2e6b3a;--warn: #9a6a00;--font-title: "Space Mono", ui-monospace, monospace;--font-body: "IBM Plex Mono", ui-monospace, monospace;--title-weight: 700;--title-transform: uppercase;--title-spacing: .04em;--title-scale: 1;--radius: 0px;--radius-sm: 0px;--radius-pill: 0px;--radius-card: var(--radius);--border-width: 2px;--line: var(--ink);--border: var(--border-width) solid var(--line);--shadow: 4px 4px 0 var(--ink);--shadow-sm: 2px 2px 0 var(--ink);--deco-top: none;--deco-top-h: 0px;--deco-bottom: none;--deco-bottom-h: 0px;--texture: none;--texture-opacity: 1;--card-bg: var(--surface);--focus: 0 0 0 3px color-mix(in srgb, var(--accent) 35%, transparent);--scrim: color-mix(in srgb, var(--ink) 55%, transparent)}[data-theme=prensa]{--bg: #f2ede3;--surface: #fbf8f1;--surface-2: #e9e2d3;--ink: #171410;--muted: #6b6257;--accent: #8c3a1e;--accent-ink: #f2ede3;--accent-2: #171410;--font-title: "Space Mono", ui-monospace, monospace;--font-body: "IBM Plex Mono", ui-monospace, monospace;--title-weight: 700;--title-transform: uppercase;--title-spacing: .04em;--radius: 0px;--radius-sm: 0px;--radius-pill: 0px;--border-width: 2px;--line: var(--ink);--shadow: 4px 4px 0 var(--ink);--shadow-sm: 2px 2px 0 var(--ink)}[data-theme=setenta]{--bg: #f4e3c4;--surface: #fbf0dc;--surface-2: #efd9b3;--ink: #2b1a10;--muted: #7a5a44;--accent: #d97a2b;--accent-ink: #2b1a10;--accent-2: #e8b23a;--font-title: "Bricolage Grotesque", system-ui, sans-serif;--font-body: "Bricolage Grotesque", system-ui, sans-serif;--title-weight: 800;--title-transform: none;--title-spacing: -.02em;--radius: 12px;--radius-sm: 10px;--radius-pill: 14px;--border-width: 2px;--line: var(--ink);--shadow: 0 6px 0 rgba(43, 26, 16, .18);--shadow-sm: 0 3px 0 rgba(43, 26, 16, .18);--deco-top: linear-gradient(to bottom, #d97a2b 0 25%, #e8b23a 25% 50%, #8c3a1e 50% 75%, #2b1a10 75% 100%);--deco-top-h: 14px}[data-theme=suizo]{--bg: #ffffff;--surface: #ffffff;--surface-2: #f3f3f3;--ink: #000000;--muted: #555555;--accent: #e0362b;--accent-ink: #ffffff;--accent-2: #000000;--font-title: "Archivo", system-ui, sans-serif;--font-body: "Archivo", system-ui, sans-serif;--title-weight: 900;--title-transform: uppercase;--title-spacing: -.03em;--radius: 0px;--radius-sm: 0px;--radius-pill: 0px;--border-width: 1px;--line: var(--ink);--shadow: none;--shadow-sm: none;--texture: repeating-linear-gradient(0deg, transparent 0 23px, rgba(0, 0, 0, .07) 23px 24px), repeating-linear-gradient(90deg, transparent 0 23px, rgba(0, 0, 0, .07) 23px 24px)}[data-theme=oaxaca]{--bg: #efe4d2;--surface: #f7efe1;--surface-2: #e6d9c2;--ink: #1a1614;--muted: #6a5d52;--accent: #c9552b;--accent-ink: #efe4d2;--accent-2: #1a1614;--font-title: "Syne", system-ui, sans-serif;--font-body: "Work Sans", system-ui, sans-serif;--title-weight: 800;--title-transform: uppercase;--title-spacing: 0;--radius: 8px;--radius-sm: 6px;--radius-pill: 8px;--border-width: 1.5px;--line: var(--ink);--shadow: 0 4px 0 rgba(26, 22, 20, .2);--shadow-sm: 0 2px 0 rgba(26, 22, 20, .2);--deco-top: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='16' viewBox='0 0 32 16'%3E%3Cpath d='M0 14H4V2h8v8H8V6' fill='none' stroke='%231a1614' stroke-width='2'/%3E%3Cpath d='M16 2h4v12h8V6h-4v4' fill='none' stroke='%231a1614' stroke-width='2'/%3E%3C/svg%3E");--deco-top-h: 16px;--deco-bottom: var(--deco-top);--deco-bottom-h: 16px}[data-theme=hifi]{--scrim: rgba(0, 0, 0, .6);--warn: #f0c060;--bg: #3b2a20;--surface: #4a362a;--surface-2: #2e2018;--ink: #f1e6d3;--muted: #cdbb9c;--accent: #d8b56a;--accent-ink: #2e2018;--accent-2: #f1e6d3;--danger: #ff8a7a;--ok: #9fd39a;--font-title: "Libre Baskerville", Georgia, serif;--font-body: "Inter Tight", system-ui, sans-serif;--title-weight: 700;--title-transform: none;--title-spacing: 0;--radius: 6px;--radius-sm: 4px;--radius-pill: 6px;--border-width: 1px;--line: rgba(241, 230, 211, .28);--shadow: 0 3px 0 rgba(0, 0, 0, .45);--shadow-sm: 0 2px 0 rgba(0, 0, 0, .45);--texture: repeating-linear-gradient(90deg, rgba(255, 255, 255, .025) 0 1px, transparent 1px 3px);--card-bg: linear-gradient(180deg, #4f3a2d, #433024)}[data-theme=ilustrado]{--bg: #fffdf8;--surface: #ffffff;--surface-2: #f6f1e6;--ink: #2f2a26;--muted: #7a6f66;--accent: #b0563a;--accent-ink: #fffdf8;--accent-2: #2f2a26;--font-title: "Caveat", cursive;--font-body: "Nunito", system-ui, sans-serif;--title-weight: 700;--title-transform: none;--title-spacing: 0;--title-scale: 1.35;--radius: 14px;--radius-sm: 10px;--radius-pill: 999px;--radius-card: 255px 15px 225px 15px / 15px 225px 15px 255px;--border-width: 2px;--line: var(--ink);--shadow: 3px 3px 0 rgba(47, 42, 38, .12);--shadow-sm: 2px 2px 0 rgba(47, 42, 38, .12)}[data-theme=pizarron]{--scrim: rgba(0, 0, 0, .6);--warn: #f5c95c;--bg: #1f2b25;--surface: #27352e;--surface-2: #182119;--ink: #f2eee4;--muted: #bcc6ba;--accent: #f2d27a;--accent-ink: #1f2b25;--accent-2: #f2eee4;--danger: #ff9b8f;--ok: #a9e0a0;--font-title: "Permanent Marker", cursive;--font-body: "Atkinson Hyperlegible", system-ui, sans-serif;--title-weight: 400;--title-transform: none;--title-spacing: .01em;--title-scale: 1.1;--radius: 10px;--radius-sm: 8px;--radius-pill: 10px;--border-width: 2px;--line: rgba(242, 238, 228, .35);--shadow: 0 0 0 1px rgba(242, 238, 228, .08);--shadow-sm: none;--texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0.16 0 0 0 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:15px;line-height:1.35;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}::placeholder{color:var(--muted);opacity:.8}:focus-visible{outline:none;box-shadow:var(--focus)}.app-frame{position:relative;min-height:100%;display:flex;flex-direction:column;isolation:isolate}.app-frame:before,.app-frame:after{content:"";display:block;flex:none;background:var(--deco-top);background-repeat:repeat-x;height:var(--deco-top-h)}.app-frame:after{background:var(--deco-bottom);background-repeat:repeat-x;height:var(--deco-bottom-h)}.app-frame>.texture{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:var(--texture);z-index:0}.app-frame>.app-main{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column}.t-title{font-family:var(--font-title);font-weight:var(--title-weight);text-transform:var(--title-transform);letter-spacing:var(--title-spacing);line-height:1.1;margin:0}.t-muted{color:var(--muted)}.t-small{font-size:12.5px}.t-num{font-variant-numeric:tabular-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 14px;background:var(--surface);color:var(--ink);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-family:var(--font-body);font-weight:600;white-space:nowrap;transition:transform .06s ease,box-shadow .06s ease}.btn:active{transform:translate(1px,1px);box-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}[data-theme=prensa] .btn-primary,[data-theme=suizo] .btn-primary,[data-theme=ilustrado] .btn-primary,[data-theme=oaxaca] .btn-primary{border-color:var(--line)}.btn-ghost{background:transparent;border-color:transparent;box-shadow:none}.btn-danger{color:var(--danger)}.btn-lg{padding:14px 20px;font-size:17px}.btn-sm{padding:5px 9px;font-size:13px}.btn-pill{border-radius:var(--radius-pill)}.btn-block{width:100%}.input,.select,.textarea{width:100%;padding:9px 12px;background:var(--surface);color:var(--ink);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);font-family:var(--font-body)}.textarea{min-height:64px;resize:vertical}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 16px) 55%,calc(100% - 11px) 55%;background-size:5px 5px;background-repeat:no-repeat}.input-lg{font-size:22px;padding:12px 14px;font-weight:600}.label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;font-weight:600}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:9px 14px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);font-weight:600;display:inline-flex;gap:8px;align-items:baseline}.chip .delta{color:var(--muted);font-size:12px;font-weight:500}.chip.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}[data-theme=prensa] .chip.on,[data-theme=suizo] .chip.on,[data-theme=ilustrado] .chip.on,[data-theme=oaxaca] .chip.on{border-color:var(--line)}.chip.on .delta{color:inherit;opacity:.8}.card{background:var(--card-bg);border:var(--border-width) solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.topbar{display:flex;align-items:center;gap:14px;padding:10px 16px;border-bottom:var(--border-width) solid var(--line);background:var(--surface)}.topbar .brand{font-size:calc(22px * var(--title-scale));white-space:nowrap;display:flex;align-items:center;gap:10px}.topbar .brand .dot{width:22px;height:22px;border-radius:50%;background:var(--accent);border:var(--border-width) solid var(--line);position:relative}.topbar .brand .dot:after{content:"";position:absolute;top:7px;right:7px;bottom:7px;left:7px;border-radius:50%;background:var(--surface)}.topbar .spacer{flex:1}.topbar .theme-pick{display:flex;align-items:center;gap:8px}.topbar .theme-pick .select{width:auto;padding:7px 32px 7px 10px}.topbar .clock{font-variant-numeric:tabular-nums;color:var(--muted)}.pos{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 420px}.catalog{display:flex;flex-direction:column;min-height:0;min-width:0}.catalog-tools{display:flex;gap:10px;padding:12px 16px 0;align-items:center}.catalog-tools .input{max-width:320px}.cat-tabs{display:flex;gap:8px;padding:12px 16px;overflow-x:auto;flex:none}.cat-tab{padding:10px 14px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-family:var(--font-title);font-weight:var(--title-weight);text-transform:var(--title-transform);letter-spacing:var(--title-spacing);font-size:calc(14px * var(--title-scale));display:inline-flex;gap:8px;align-items:baseline;white-space:nowrap}.cat-tab .num{font-family:var(--font-body);font-size:11px;color:var(--muted);font-weight:600;letter-spacing:.06em}.cat-tab.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}[data-theme=prensa] .cat-tab.on,[data-theme=suizo] .cat-tab.on,[data-theme=ilustrado] .cat-tab.on,[data-theme=oaxaca] .cat-tab.on{border-color:var(--line)}.cat-tab.on .num{color:inherit;opacity:.75}.grid{flex:1;min-height:0;overflow-y:auto;padding:4px 16px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;align-content:start}.grid-section{grid-column:1 / -1;display:flex;align-items:baseline;gap:10px;margin-top:8px;padding-bottom:6px;border-bottom:var(--border-width) solid var(--line)}.grid-section .t-title{font-size:calc(20px * var(--title-scale))}.prod{text-align:left;padding:14px;min-height:108px;display:flex;flex-direction:column;gap:6px;background:var(--card-bg);border:var(--border-width) solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);transition:transform .06s ease,box-shadow .06s ease}.prod:active{transform:translate(2px,2px);box-shadow:var(--shadow-sm)}.prod .name{font-weight:700;font-size:15.5px}.prod .desc{color:var(--muted);font-size:12.5px;flex:1}.prod .price{font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}.prod .tags{display:flex;gap:4px;flex-wrap:wrap}.tag{font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--muted)}.prod.agotado{opacity:.45}.ticket{display:flex;flex-direction:column;min-height:0;border-left:var(--border-width) solid var(--line);background:var(--surface-2)}.ticket-head{padding:12px 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:var(--border-width) solid var(--line);background:var(--surface)}.ticket-head .t-title{font-size:calc(22px * var(--title-scale))}.seg{display:inline-flex;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.seg button{padding:8px 14px;border:0;background:transparent;font-weight:600}.seg button+button{border-left:var(--border-width) solid var(--line)}.seg button.on{background:var(--accent);color:var(--accent-ink)}.ticket-lines{flex:1;min-height:0;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:8px}.ticket-empty{margin:auto;text-align:center;color:var(--muted);padding:32px}.line{display:grid;grid-template-columns:1fr auto;gap:6px 10px;padding:10px 12px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.line .name{font-weight:700}.line .mods{color:var(--muted);font-size:12.5px;grid-column:1 / -1}.line .notas{font-size:12.5px;grid-column:1 / -1;font-style:italic}.line .qty{display:inline-flex;align-items:center;gap:2px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.line .qty button{width:30px;height:30px;border:0;background:transparent;font-weight:700;font-size:16px}.line .qty span{min-width:26px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.line .total{font-weight:700;text-align:right;font-variant-numeric:tabular-nums;align-self:center}.line .actions{display:flex;align-items:center;gap:8px;justify-content:space-between;grid-column:1 / -1}.ticket-foot{border-top:var(--border-width) solid var(--line);padding:12px 16px 16px;background:var(--surface);display:grid;gap:8px}.totals{display:grid;gap:4px;font-variant-numeric:tabular-nums}.totals .row{display:flex;justify-content:space-between}.totals .row.grand{font-size:26px;font-weight:700;padding-top:6px;border-top:var(--border-width) solid var(--line);margin-top:4px}.ticket-foot .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ticket-foot .actions .cobrar{grid-column:1 / -1}.kbd{font-size:11px;padding:1px 5px;border:1px solid currentColor;border-radius:3px;opacity:.7;margin-left:4px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;z-index:50;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dialog{width:min(680px,100%);max-height:min(90vh,900px);max-height:min(92dvh,900px);display:flex;flex-direction:column;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink)}.dialog-head{padding:16px 20px;border-bottom:var(--border-width) solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head .t-title{font-size:calc(24px * var(--title-scale))}.dialog-body{padding:16px 20px;overflow-y:auto;display:grid;grid-auto-rows:max-content;gap:18px}.dialog-foot{padding:14px 20px;border-top:var(--border-width) solid var(--line);display:flex;align-items:center;gap:12px}.dialog-foot .spacer{flex:1}.group-title{display:flex;align-items:baseline;gap:8px;margin-bottom:8px;font-weight:700}.group-title .req{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.group-title .opt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.qty-big{display:inline-flex;align-items:center;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}.qty-big button{width:44px;height:44px;border:0;background:transparent;font-size:22px;font-weight:700}.qty-big span{min-width:44px;text-align:center;font-weight:700;font-size:20px}.pay-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pay-methods .btn{padding:18px 10px;font-size:17px}.quick-cash{display:flex;gap:8px;flex-wrap:wrap}.big-amount{display:flex;justify-content:space-between;align-items:baseline;font-size:34px;font-weight:700;font-variant-numeric:tabular-nums}.big-amount small{font-size:14px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.receipt{font-variant-numeric:tabular-nums;display:grid;gap:6px;padding:14px;background:var(--surface-2);border:var(--border-width) dashed var(--line);border-radius:var(--radius-sm)}.receipt .row{display:flex;justify-content:space-between;gap:12px}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);z-index:60;padding:12px 18px;background:var(--ink);color:var(--bg);border-radius:var(--radius-sm);box-shadow:var(--shadow);font-weight:600}.loading{margin:auto;padding:40px;text-align:center;color:var(--muted)}.cli{width:100%;max-width:520px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;padding-bottom:96px}.cli-head{padding:16px 16px 8px;display:flex;align-items:center;gap:10px}.cli-head .t-title{font-size:calc(24px * var(--title-scale));flex:1}.now{margin:8px 16px 16px;padding:14px;display:grid;grid-template-columns:84px 1fr;gap:14px;align-items:center}.now .eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:700;display:flex;align-items:center;gap:6px}.now .eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 1.4s ease-in-out infinite}.now .track{font-size:calc(18px * var(--title-scale));margin-top:2px}.now .meta{color:var(--muted);font-size:13px}.disc{width:84px;height:84px;border-radius:50%;position:relative;background:repeating-radial-gradient(circle at center,var(--ink) 0 1.5px,var(--surface-2) 1.5px 3.5px);border:var(--border-width) solid var(--line);animation:spin 3.5s linear infinite;flex:none}.disc:after{content:"";position:absolute;top:26px;right:26px;bottom:26px;left:26px;border-radius:50%;background:var(--accent);border:2px solid var(--surface)}.disc:before{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;margin:-3px;border-radius:50%;background:var(--surface);z-index:1}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}.cli-cats{display:flex;gap:8px;padding:8px 16px 12px;overflow-x:auto;position:sticky;top:0;background:var(--bg);z-index:2}.cli-section{padding:10px 16px 4px;display:flex;align-items:baseline;gap:8px}.cli-section .t-title{font-size:calc(22px * var(--title-scale))}.cli-item{margin:8px 16px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;background:var(--card-bg);border:var(--border-width) solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-sm)}.cli-item .name{font-weight:700;font-size:16px}.cli-item .desc{color:var(--muted);font-size:13px;grid-column:1}.cli-item .price{grid-row:1 / span 2;grid-column:2;display:flex;flex-direction:column;align-items:flex-end;gap:6px;font-weight:700;font-variant-numeric:tabular-nums}.cli-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:center;padding:12px 16px calc(12px + env(safe-area-inset-bottom));pointer-events:none}.cli-bar .btn{pointer-events:auto;width:min(488px,100%);justify-content:space-between}.cli-sheet{align-items:flex-end;padding:0}.cli-sheet .dialog{width:min(520px,100%);max-height:88vh;border-radius:var(--radius) var(--radius) 0 0;border-bottom:0}@media(max-width:900px){.pos{grid-template-columns:1fr;grid-template-rows:1fr auto}.ticket{border-left:0;border-top:var(--border-width) solid var(--line);max-height:45vh}}.t-danger{color:var(--danger)}.cash-status{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 8px;border:var(--border-width) solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);font-size:13px;font-weight:600;white-space:nowrap}.cash-status .led{width:10px;height:10px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 2px color-mix(in srgb,var(--ok) 30%,transparent)}.cash-status.closed .led{background:var(--danger);box-shadow:0 0 0 2px color-mix(in srgb,var(--danger) 30%,transparent)}.cash-status .txt{margin-right:4px}.catalog-wrap{position:relative;display:flex;flex-direction:column;min-height:0;min-width:0}.catalog-wrap.locked .catalog{opacity:.35;pointer-events:none;filter:grayscale(.4)}.cash-lock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;z-index:3}.cash-lock-card{padding:28px 32px;text-align:center;max-width:420px;display:grid;gap:10px;justify-items:center}.cash-lock-card .t-title{font-size:calc(24px * var(--title-scale))}.cash-lock-card p{margin:0}.cash-summary{display:grid;gap:12px}.receipt .row.cash-expected{font-weight:700;font-size:18px;padding-top:6px;border-top:var(--border-width) solid var(--line);margin-top:2px}.dialog-wide{width:min(960px,100%)}.cash-z{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.denoms{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.denoms td{padding:3px 6px}.denoms td:first-child{font-weight:700;width:88px}.denoms td:last-child{text-align:right;width:110px}.denoms .input{padding:6px 10px;text-align:center}.arqueo{margin-top:12px;padding:14px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:var(--surface);display:grid;gap:6px;font-variant-numeric:tabular-nums}.arqueo .row{display:flex;justify-content:space-between;gap:12px}.arqueo .row.big{font-size:26px;font-weight:700;padding-top:8px;border-top:var(--border-width) solid var(--line)}.arqueo.ok .row.big{color:var(--ok)}.arqueo.sobra .row.big{color:var(--accent)}.arqueo.falta .row.big{color:var(--danger)}@media(max-width:900px){.cash-z{grid-template-columns:1fr}.cash-status .txt{display:none}}.t-ok{color:var(--ok)}.badge{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:var(--radius-pill);border:1.5px solid currentColor;line-height:1.4;vertical-align:middle}.badge-ok{color:var(--ok)}.badge-bajo{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}.badge-agotado{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.badge-mov-entrada,.badge-mov-apertura{color:var(--ok)}.badge-mov-venta{color:var(--muted)}.badge-mov-merma{color:var(--danger)}.badge-mov-ajuste{color:var(--warn)}.topbar .btn .count{display:inline-block;min-width:20px;padding:0 6px;border-radius:var(--radius-pill);font-size:12px;text-align:center;background:var(--warn);color:var(--bg);border:1px solid var(--line)}.topbar .btn .count.agotado{background:var(--danger)}.inv{flex:1;min-height:0;display:flex;flex-direction:column}.inv-tab{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 16px 16px;gap:12px}.inv-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inv-toolbar .select{width:auto}.inv-kpis{display:flex;gap:18px;align-items:center;font-size:13px;color:var(--muted)}.inv-kpis strong{color:var(--ink);font-size:15px}.inv-table-wrap{flex:1;min-height:0;overflow:auto;border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.inv-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.inv-table th,.inv-table td{padding:9px 12px;text-align:left;border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent);vertical-align:middle}.inv-table th{position:sticky;top:0;background:var(--surface-2);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);z-index:1}.inv-table .num,.inv-table .actions{text-align:right;white-space:nowrap}.inv-table .actions .btn+.btn{margin-left:4px}.inv-table tr.row-bajo td:first-child{box-shadow:inset 4px 0 0 var(--warn)}.inv-table tr.row-agotado td:first-child{box-shadow:inset 4px 0 0 var(--danger)}.inv-table.compact th,.inv-table.compact td{padding:6px 10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.form-grid .span-2{grid-column:1 / -1}.alert-row{padding:10px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 45%,transparent);display:grid;gap:8px}.alert-main{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.alert-products{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.receipt .row.stock-warn{color:var(--warn);font-weight:600;font-size:13px}.inv-tab.recipes{flex-direction:row;gap:16px}.rec-list{width:240px;flex:none;overflow-y:auto;border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px}.rec-cat{font-size:calc(13px * var(--title-scale));padding:10px 8px 4px;color:var(--muted)}.rec-item{display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%;text-align:left;padding:8px 10px;background:transparent;border:0;border-radius:var(--radius-sm);font-weight:600}.rec-item.on{background:var(--accent);color:var(--accent-ink)}.rec-editor{flex:1;min-width:0;overflow-y:auto;display:grid;gap:14px;align-content:start}.rec-block{border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px;display:grid;gap:8px;box-shadow:var(--shadow-sm)}.rec-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}.rec-head h2.t-title{font-size:calc(22px * var(--title-scale))}.rec-head h3.t-title{font-size:calc(17px * var(--title-scale))}.rec-head .spacer{flex:1}.rec-row{display:flex;align-items:center;gap:8px}.rec-row .select{width:auto;min-width:160px;padding:6px 30px 6px 10px}.rec-row .input.num{width:96px;padding:6px 10px;text-align:right}.rec-row .unit{min-width:34px;color:var(--muted);font-size:13px}.fx-group{display:grid;gap:4px;margin-top:4px}.fx-section{border:1px solid color-mix(in srgb,var(--line) 55%,transparent);border-radius:var(--radius-sm)}.fx-summary{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:8px 12px;background:transparent;border:0}.fx-summary .t-small{flex:1}.fx-section.open .fx-summary{background:var(--surface-2)}.fx-body{padding:10px 12px 12px;display:grid;gap:8px}.fx-rows{display:grid;gap:6px}.fx-actions{display:flex;gap:8px;align-items:center}.fx-actions .spacer{flex:1}.sim-totals{display:flex;gap:24px;font-size:15px;padding-top:6px}.sim-totals strong{font-size:18px;margin-left:4px}@media(max-width:900px){.inv-tab.recipes{flex-direction:column}.rec-list{width:auto;max-height:30vh}.form-grid{grid-template-columns:1fr}}.login{flex:1;min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px 16px}.login.lock{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.login-card{width:min(440px,100%);padding:22px 22px 16px;display:grid;gap:12px;background:var(--surface)}.login-head{text-align:center;display:grid;gap:4px}.login-head .brand{justify-content:center;font-size:calc(24px * var(--title-scale));display:flex;align-items:center;gap:10px}.login-head .brand .dot{width:22px;height:22px;border-radius:50%;background:var(--accent);border:var(--border-width) solid var(--line)}.user-tiles{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.user-tile{display:grid;justify-items:center;gap:2px;padding:8px 12px;min-width:96px;background:var(--surface-2);border:var(--border-width) solid var(--line);border-radius:var(--radius);font-weight:600}.user-tile.on{background:var(--accent);color:var(--accent-ink)}.user-tile.on .rol{color:inherit;opacity:.8}.avatar{width:30px;height:30px;border-radius:50%;display:inline-grid;place-items:center;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:14px;border:1.5px solid var(--line);flex:none}.user-tile .avatar{width:38px;height:38px;font-size:17px}.pin-dots{display:flex;justify-content:center;gap:12px;padding:4px 0}.dot-pin{width:16px;height:16px;border-radius:50%;border:var(--border-width) solid var(--line);background:transparent}.dot-pin.on{background:var(--accent);border-color:var(--accent);opacity:1}[data-theme=prensa] .dot-pin.on,[data-theme=suizo] .dot-pin.on{border-color:var(--line)}.login-msg{min-height:20px;text-align:center;font-size:13.5px;color:var(--muted)}.login-msg.error{color:var(--danger);font-weight:600}.login-msg.info{color:var(--warn);font-weight:600}.pinpad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pinkey{height:60px;font-size:24px;font-weight:700;background:var(--surface-2);color:var(--ink);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);font-family:var(--font-body)}.pinkey:active{transform:translate(1px,1px);box-shadow:none}.pinkey.del{font-size:20px;color:var(--muted)}.login-foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.login-foot .spacer{flex:1}.pin-input{letter-spacing:.35em;font-family:var(--font-body)}.user-menu{display:inline-flex;align-items:center;gap:6px}.user-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 10px 3px 4px;border:var(--border-width) solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);font-weight:600;font-size:13px;white-space:nowrap}.user-chip .rol{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.user-chip.inline{padding:6px 12px 6px 6px;font-size:15px}.badge-rol-admin{color:var(--accent)}.badge-rol-encargado{color:var(--ok)}.badge-rol-cajero{color:var(--muted)}.inv-table tr.row-inactive td{opacity:.55}.role-picker{display:grid;gap:8px}.role-opt{display:grid;gap:2px;text-align:left;padding:10px 12px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm)}.role-opt.on{background:var(--accent);color:var(--accent-ink)}.role-opt .t-small{opacity:.85}.badge-act-venta{color:var(--accent)}.badge-act-caja{color:var(--ok)}.badge-act-inv{color:var(--warn)}.badge-act-receta,.badge-act-insumo,.badge-act-producto{color:var(--muted)}.badge-act-usuario,.badge-act-login{color:var(--danger)}@media(max-width:1200px){.user-menu .btn-ghost,.user-chip .rol{display:none}}.dropdown{position:relative}.dropdown .chev{font-size:10px;opacity:.7}.dropdown .btn.on{background:var(--accent);color:var(--accent-ink)}.dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:40;min-width:240px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:6px;display:grid;gap:2px}.user-menu .dropdown-menu{left:auto;right:0}.dropdown-item{display:block;width:100%;text-align:left;padding:9px 12px;background:transparent;border:0;border-radius:var(--radius-sm);font-weight:600;color:var(--ink);text-decoration:none}.dropdown-item:hover{background:var(--surface-2)}.dropdown-item.danger{color:var(--danger)}.topbar{flex-wrap:nowrap;gap:10px}@media(max-width:1500px){.topbar .clock,.topbar .theme-pick .t-small,.topbar .user-chip .rol,.topbar .cash-status .cajero{display:none}.topbar{padding:8px 12px}}.dropdown-menu.right{left:auto;right:0}.dropdown-section{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:8px 12px 2px;font-weight:700}.dropdown-content{padding:4px 6px 6px}.dropdown-content .select{width:100%}.user-menu .user-chip{cursor:pointer;font-family:var(--font-body)}.user-menu .user-chip.on{background:var(--accent);color:var(--accent-ink)}.user-menu .user-chip.on .rol{color:inherit;opacity:.8}.user-chip .chev{font-size:10px;opacity:.7}.alert-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-pill);border:var(--border-width) solid var(--line);font-weight:700;font-size:13px;font-family:var(--font-body);background:color-mix(in srgb,var(--warn) 18%,var(--surface));color:var(--ink)}.alert-pill.agotado{background:color-mix(in srgb,var(--danger) 18%,var(--surface))}.topbar>.dropdown>.btn{font-size:18px;line-height:1;padding:5px 10px}.topbar>.dropdown>.btn .chev{display:none}.topbar .clock{display:inline}@media(max-width:1500px){.topbar .clock{display:none}}.menu-btn{font-size:18px;line-height:1;padding:5px 10px}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:var(--scrim);opacity:0;pointer-events:none;transition:opacity .18s ease}.drawer-scrim.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;bottom:0;left:0;z-index:71;width:min(320px,90vw);background:var(--surface);border-right:var(--border-width) solid var(--line);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;padding:12px 12px 16px;transform:translate(-105%);transition:transform .2s ease;overflow-y:auto}.drawer.open{transform:translate(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 10px;border-bottom:var(--border-width) solid var(--line);margin-bottom:6px}.drawer-head .brand{font-size:calc(20px * var(--title-scale));display:flex;align-items:center;gap:10px}.drawer-head .brand .dot{width:20px;height:20px;border-radius:50%;background:var(--accent);border:var(--border-width) solid var(--line)}.drawer-nav,.drawer-group{display:grid;gap:2px}.drawer-group{padding-top:8px}.drawer-section{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:700;padding:6px 12px 4px}.drawer-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:11px 12px;background:transparent;border:0;border-radius:var(--radius-sm);font-weight:600;font-size:15px;color:var(--ink);text-decoration:none;cursor:pointer}.drawer-item:hover{background:var(--surface-2)}.drawer-item.on{background:var(--accent);color:var(--accent-ink)}.drawer-item.danger{color:var(--danger)}.drawer-item .ico{width:22px;text-align:center}.drawer-item .kbd{margin-left:auto}.drawer .spacer{flex:1}.drawer-user{border-top:var(--border-width) solid var(--line);padding-top:12px}.drawer-user .user-chip{margin:0 0 6px;justify-content:flex-start}.pinpad.disabled .pinkey{opacity:.45;cursor:not-allowed}.user-tiles .user-tile:not(.on){cursor:pointer}.sales-kpis{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap;font-size:14px}.sales-list{display:grid;gap:8px}.sale-row{display:grid;grid-template-columns:1fr auto auto;gap:4px 14px;align-items:center;padding:10px 12px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius-sm)}.sale-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sale-items{color:var(--muted)}.sale-total{font-weight:700;font-size:17px}.sale-actions{min-width:96px;text-align:right}.sale-row.cancelled{border-style:dashed;background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.sale-row.cancelled .folio,.sale-row.cancelled .sale-total,.sale-row.cancelled .sale-items{text-decoration:line-through;opacity:.7}.cancel-note{color:var(--danger);font-weight:600}.cancel-effects{padding:12px 14px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.cancel-effects ul{margin:4px 0 0;padding-left:18px;display:grid;gap:4px}.badge-mov-cancelacion{color:var(--ok)}.t-warn{color:var(--warn)}.period-bar .input{padding:6px 10px}.rep-body{flex:1;min-height:0;overflow-y:auto;display:grid;gap:12px;align-content:start;padding-bottom:16px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.stat{display:grid;gap:2px;padding:12px 14px;background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.stat-label{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.stat-value{font-size:24px;font-weight:700}.rep-note{margin:0}.rep-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:12px;align-items:start}.rep-card{background:var(--surface);border:var(--border-width) solid var(--line);border-radius:var(--radius);padding:12px 14px 14px;display:grid;gap:10px;box-shadow:var(--shadow-sm);min-width:0}.rep-card h3.t-title{font-size:calc(17px * var(--title-scale))}.rep-card .inv-table{font-size:13.5px}.bars{display:grid;gap:6px}.bar-row{display:grid;grid-template-columns:minmax(90px,160px) 1fr auto;gap:10px;align-items:center;font-size:13.5px}.bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:12px;background:color-mix(in srgb,var(--line) 18%,transparent);border-radius:4px;overflow:hidden}.bar-fill{display:block;height:100%;background:var(--accent);border-radius:0 4px 4px 0;min-width:2px}.bar-value{white-space:nowrap;font-weight:600}.cols{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:2px;height:160px;align-items:end}.col{display:grid;grid-template-rows:16px 1fr 16px;height:100%;text-align:center;min-width:0}.col-value{font-weight:700;white-space:nowrap;font-size:11px}.col-track{display:flex;align-items:flex-end;background:color-mix(in srgb,var(--line) 12%,transparent);border-radius:4px 4px 0 0}.col-fill{display:block;width:100%;background:var(--accent);border-radius:4px 4px 0 0}.col-label{font-size:10.5px}@media(max-width:1100px){.rep-grid{grid-template-columns:1fr}}.inv-table tr.group-row td{background:var(--surface-2);font-size:calc(13px * var(--title-scale));padding:8px 12px;color:var(--muted)}.size-picker{display:grid;gap:6px}.size-opt{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:var(--surface)}.size-opt.on{background:var(--surface-2)}.size-opt label{display:inline-flex;gap:8px;align-items:center;font-weight:600;cursor:pointer}.delta-input{display:inline-flex;align-items:center;gap:4px;font-weight:600}.delta-input .input{width:84px;padding:4px 8px;text-align:right}.cash-available{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.cash-available strong{font-size:18px}.cash-available.over{border-color:var(--danger)}.cash-available .t-danger{flex-basis:100%;font-weight:600;font-size:13px}.dev-badge{font-size:10px;font-weight:700;letter-spacing:.1em;padding:3px 7px;border-radius:var(--radius-pill);background:var(--warn);color:var(--bg);border:1px solid var(--line);font-family:var(--font-body)}.big-amount.falta span{color:var(--danger)}.receipt .row>:last-child{white-space:nowrap;flex:none}.alert-pill.cuentas{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.piso{flex:1;min-height:0;overflow:auto;padding:16px}.tables-wrap{display:grid;gap:20px;max-width:1100px;margin:0 auto}.tables-zone>.t-title{margin:0 0 10px}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px}.table-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-height:132px;padding:14px 16px;text-align:left;border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-family:var(--font-body)}.table-card:active{transform:translateY(1px)}.table-card .table-name{font-family:var(--font-title);font-size:20px;font-weight:700}.table-card .table-total{font-size:24px;font-weight:700}.table-card .table-meta{color:var(--muted)}.table-card.libre{border-style:dashed;background:color-mix(in srgb,var(--surface) 70%,var(--bg))}.table-card.ocupada{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent),var(--shadow)}.table-card.caja{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 12%,var(--surface))}.ticket.account .ticket-head .t-num{font-size:22px}.tanda{padding:6px 0}.tanda-head{padding:4px 0 6px;border-bottom:1px dashed var(--line);margin-bottom:4px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.tanda.draft .tanda-head{color:var(--accent)}.line.sent .actions{align-items:center}.line.cancelled .name,.line.cancelled .mods{text-decoration:line-through;color:var(--muted)}.ticket.account .ticket-foot .actions{grid-template-columns:1fr 1fr}.ticket.account .ticket-foot .actions .cobrar{grid-column:1 / -1}.kds{flex:1;min-height:0;overflow:auto;padding:14px 16px 24px}.kds-section{margin:20px 0 8px;color:var(--muted)}.comandas{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:start}.comanda{display:flex;flex-direction:column;border:var(--border-width) solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.comanda.demora{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 45%,transparent),var(--shadow);animation:kds-pulse 1.6s ease-in-out infinite}@keyframes kds-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--danger) 45%,transparent),var(--shadow)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--danger) 20%,transparent),var(--shadow)}}.comanda.done{opacity:.6}.comanda-head{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 14px;border-bottom:var(--border-width) solid var(--line);background:color-mix(in srgb,var(--ink) 6%,var(--surface))}.comanda-mesa{font-family:var(--font-title);font-size:22px;font-weight:700}.comanda-when{display:flex;flex-direction:column;align-items:flex-end;font-weight:700;font-variant-numeric:tabular-nums}.comanda-espera{font-size:13px}.comanda-mesero{grid-column:1 / -1}.comanda-items{list-style:none;margin:0;padding:0}.kds-item{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px dashed var(--line);border-left:6px solid transparent}.kds-item:last-child{border-bottom:0}.kds-item-main{display:flex;gap:10px;min-width:0}.kds-qty{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.1}.kds-desc{display:flex;flex-direction:column;gap:2px;min-width:0}.kds-name{font-size:19px;font-weight:700;line-height:1.15}.kds-mods{font-size:15px;font-weight:600;color:var(--ink)}.kds-notas{font-size:15px;font-style:italic;padding:2px 8px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--warn) 22%,var(--surface));color:var(--ink);width:fit-content}.kds-cancel-reason{font-size:13px;font-weight:700}.kds-item-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}.kds-state{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius-pill);border:1px solid transparent}.kds-state-pendiente{background:transparent;color:var(--warn);border-color:var(--warn);border-style:dashed}.kds-state-en_preparacion{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.kds-state-listo{background:color-mix(in srgb,var(--ok) 22%,var(--surface));color:var(--ok);border-color:color-mix(in srgb,var(--ok) 55%,transparent)}.kds-state-entregado{background:color-mix(in srgb,var(--muted) 18%,var(--surface));color:var(--muted)}.kds-state-cancelado{background:color-mix(in srgb,var(--danger) 18%,var(--surface));color:var(--danger);border-color:color-mix(in srgb,var(--danger) 55%,transparent)}.kds-item.state-pendiente{border-left-color:var(--warn)}.kds-item.state-en_preparacion{border-left-color:var(--accent)}.kds-item.state-listo{border-left-color:var(--ok)}.kds-item.state-entregado{border-left-color:var(--muted);opacity:.6}.kds-item.state-cancelado{border-left-color:var(--danger)}.kds-item.state-cancelado .kds-name,.kds-item.state-cancelado .kds-mods{text-decoration:line-through;color:var(--muted)}.kds-item.late{background:color-mix(in srgb,var(--danger) 10%,var(--surface))}.kds-late{color:var(--danger);font-weight:800}.kds-advance{min-width:108px;min-height:40px;font-weight:700}.comanda-foot{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;border-top:var(--border-width) solid var(--line);background:color-mix(in srgb,var(--ink) 4%,var(--surface))}.live-dot{font-size:12px;font-weight:700;padding:3px 8px;border-radius:var(--radius-pill);border:1px solid var(--line)}.live-dot.on{color:var(--ok)}.live-dot.off{color:var(--warn)}.seg a{display:inline-block;padding:8px 14px;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}.seg a+a{border-left:var(--border-width) solid var(--line)}.seg a.on{background:var(--accent);color:var(--accent-ink)}.admin-tabs{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.inv-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:760px){.topbar.admin-top{flex-wrap:wrap;row-gap:8px}.topbar.admin-top .admin-tabs{order:10;flex-basis:100%}.topbar.admin-top .spacer{display:none}.inv{padding:10px}.inv-toolbar .spacer{flex-basis:100%;height:0}.inv-kpis{flex-wrap:wrap;gap:8px 14px}.rep-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}.stat .stat-value{font-size:20px}.period-bar .seg{max-width:100%;overflow-x:auto}.bars .bar-label{min-width:90px;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cols .col-label{font-size:10px}.inv-tab.recipes{grid-template-columns:1fr}.rec-list{max-height:200px}.inv-table th,.inv-table td{padding:6px 8px;font-size:13px}.inv-table .actions{white-space:nowrap}}@media(max-width:760px){.rep-card .inv-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.numfield{caret-color:transparent;cursor:pointer}.numfield.on{box-shadow:var(--focus);border-color:var(--accent)}.numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.numpad .pinkey{height:52px;font-size:22px}.numpad.disabled .pinkey{opacity:.45;cursor:not-allowed}.dialog-numpad{flex:none;padding:10px 20px 4px;border-top:1px dashed var(--line);max-width:360px;width:100%;align-self:center}.dialog.with-numpad .dialog-body{flex:1 1 auto;min-height:0}.overlay.keyboard{align-items:flex-start;padding-top:8px;padding-bottom:8px}.overlay.keyboard .dialog{max-height:100%}.overlay.keyboard .dialog-body{scroll-padding-bottom:80px}.overlay.keyboard .dialog-numpad{display:none}.pay-cash-row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end}.pay-cash-row .big-amount{min-width:150px;text-align:right}.pay-top{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}.pay-top .big-amount{flex-direction:column;align-items:flex-start;gap:0;min-width:150px}@media(max-height:800px){.pay-methods .btn{padding:10px 8px;font-size:15px}}.pay-top .pay-methods{grid-template-columns:repeat(3,1fr)}@media(max-height:800px){.dialog.with-numpad .dialog-head,.dialog.with-numpad .dialog-foot{padding-top:10px;padding-bottom:10px}.dialog.with-numpad .dialog-body{padding-top:10px;padding-bottom:10px;gap:10px}.dialog-numpad{padding:6px 20px 2px}.numpad{gap:6px}.numpad .pinkey{height:40px;font-size:19px}.dialog.with-numpad .big-amount span{font-size:26px}.dialog.with-numpad .input-lg{font-size:19px;padding:9px 12px}.dialog.with-numpad .quick-cash .btn{padding:6px 10px;font-size:13px}}.terminal-box{display:grid;gap:8px;padding:14px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2, var(--surface))}.terminal-box.waiting{border-color:var(--accent)}.terminal-box.failed{border-color:var(--danger)}.terminal-box.off{border-style:dashed}.terminal-spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pedido-estado{display:grid;gap:8px;margin:0 16px 12px;padding:14px 16px;border-left:6px solid var(--accent)}.pedido-estado.cobrada{border-left-color:var(--ok)}.pedido-estado.expirada,.pedido-estado.cancelada{border-left-color:var(--danger)}.pedido-estado .pedido-barra{font-weight:700}.dialog-head>.btn-ghost{flex:none;min-width:44px;min-height:44px;font-size:20px;border:var(--border-width) solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2, var(--surface))}.loyalty-hook{margin:0 16px 12px;padding:14px 16px;display:grid;gap:8px;border-left:6px solid var(--accent)}.loyalty-hook .hook-title{font-family:var(--font-title);font-weight:var(--title-weight);font-size:17px;line-height:1.25}.loyalty-hook .hook-actions{display:flex;gap:8px;flex-wrap:wrap}.cli-tabs-wrap{display:flex;align-items:center;gap:10px;padding:0 16px 12px}.cli-tabs{flex:1}.cli-tabs button{flex:1;min-height:40px}.cli-hello{white-space:nowrap}.account-form{display:grid;gap:12px}.account-form .pin-wrap{display:flex;gap:8px;align-items:stretch}.account-form .pin-wrap .input{flex:1;min-width:0}.pin-eye{min-width:44px;border:var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font-size:18px}.cli-section-block{padding:0 16px;display:grid;gap:12px}.cli-sub{font-size:calc(18px * var(--title-scale));margin:6px 0 0}.cli-note{margin:0}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);font-weight:700}.loyalty-card{padding:16px;display:grid;gap:14px;background:var(--card-bg)}.loyalty-card.premio{border-color:var(--accent);box-shadow:var(--shadow)}.lc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.lc-name{font-size:calc(20px * var(--title-scale))}.lc-folio{font-family:var(--font-title);font-weight:700;letter-spacing:.08em;padding:6px 10px;border:var(--border);border-radius:var(--radius-pill);white-space:nowrap}.lc-stamps{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.lc-stamps .stamp{aspect-ratio:1;border:var(--border-width) dashed var(--muted);border-radius:50%;display:grid;place-items:center;font-size:22px;color:var(--accent-ink)}.lc-stamps .stamp.full{border-style:solid;border-color:var(--accent);background:var(--accent)}.lc-count{display:flex;align-items:baseline;gap:10px}.lc-count strong{font-size:28px;font-family:var(--font-title)}.lc-premio{padding:10px 12px;background:var(--accent);color:var(--accent-ink);border-radius:var(--radius-sm);font-weight:700}.loyalty-points{padding:16px;display:grid;gap:6px}.lp-saldo strong{font-size:36px;font-family:var(--font-title);line-height:1}.rewards{display:grid;gap:8px}.reward{padding:12px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.reward .name{font-weight:700}.reward-cost{display:flex;flex-direction:column;align-items:flex-end;white-space:nowrap;font-weight:700}.reward.ok{border-color:var(--accent)}.ledger-row{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid color-mix(in srgb,var(--line) 25%,transparent);font-size:14px}.ledger-row .grow{flex:1}.cli-session{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:8px}@media(max-width:380px){.cli-hello{display:none}}.pedido-estado .pedido-gano{font-weight:700;color:var(--accent)}.lc-qr-wrap{display:grid;justify-items:center;gap:6px;padding-top:4px}.lc-qr{width:160px;height:160px;border:var(--border);border-radius:var(--radius-sm);background:#fff;padding:6px}.cust-link{display:grid;gap:6px}.cust-link .cust-row{display:flex;gap:8px}.cust-link .cust-row .input{flex:1;min-width:0;text-transform:uppercase}.cust-link.linked{display:flex;align-items:center;gap:8px;padding:8px 12px;border:var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.cust-chip{flex:1;font-size:14px}.cust-premio{font-style:normal;color:var(--accent)}.qr-scan{display:grid;gap:8px}.qr-frame{position:relative;width:min(100%,calc(min(40vh,300px) * 4 / 3));aspect-ratio:4 / 3;margin-inline:auto;overflow:hidden;border:var(--border);border-radius:var(--radius-sm);background:var(--ink)}.qr-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block}.qr-mira{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);height:68%;aspect-ratio:1;border:3px solid var(--accent);border-radius:var(--radius-sm);opacity:.85;pointer-events:none}.qr-cargando{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--accent-ink)}.qr-foot{display:flex;justify-content:space-between;align-items:center;gap:8px}.receipt-loyalty{padding:8px 10px;border:var(--border);border-radius:var(--radius-sm);background:var(--surface-2);font-size:14px}.cust-link.linked{flex-direction:column;align-items:stretch}.cust-head{display:flex;align-items:center;gap:8px}.cust-redeem{display:flex;flex-wrap:wrap;gap:6px}.canjes-preview{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;color:var(--accent)}@media(max-width:480px){.login{align-items:flex-start;padding:10px 10px 24px}.login-card{padding:16px 14px 12px;gap:10px}.login-head .brand{font-size:calc(22px * var(--title-scale))}.user-tile{min-width:84px;padding:6px 10px}.pinkey{height:52px;font-size:22px}.login-foot{flex-direction:column;align-items:stretch;gap:8px}.login-foot .spacer{display:none}.login-foot .theme-pick,.login-foot .theme-pick select{width:100%}}.costing-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:12px}.costing-card{padding:14px 16px;display:grid;gap:4px}.costing-card strong{font-size:26px;font-family:var(--font-title)}.costing-params{margin-top:12px;padding:14px 16px;display:grid;gap:8px}.sim-real{border-top:1px dashed color-mix(in srgb,var(--line) 45%,transparent);padding-top:8px;margin-top:4px;flex-wrap:wrap}.admin-pane{display:grid;gap:12px}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.row-actions{display:flex;gap:6px;justify-content:flex-end}.goal-card{display:grid;gap:8px;padding:14px 16px;margin-bottom:12px;border-left:6px solid var(--accent)}.goal-card.cubierto{border-left-color:var(--ok)}.goal-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.goal-main{display:flex;align-items:baseline;gap:10px}.goal-main strong{font-size:30px;font-family:var(--font-title);line-height:1}.goal-bar{height:14px;border:var(--border-width) solid var(--line);border-radius:var(--radius-pill);background:var(--surface-2);overflow:hidden}.goal-bar span{display:block;height:100%;background:var(--accent);transition:width .4s ease}.goal-card.cubierto .goal-bar span{background:var(--ok)}.goal-msg{margin:0;font-size:15px}.goal-foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.rep-stale{position:sticky;top:0;z-index:2;width:100%;padding:8px 12px;margin-bottom:10px;border:var(--border-width) solid var(--accent);border-radius:var(--radius);background:var(--surface-2);color:var(--ink);font:inherit;font-size:14px;text-align:center;cursor:pointer}.rep-stale:hover{background:var(--accent);color:var(--accent-ink)}
