:root{--bg:#f4f5f7;--surface:#fff;--surface-2:#eef0f3;--ink:#111827;--muted:#4b5563;--line:#d0d5dd;--line-strong:#9aa3af;--primary:#1d4ed8;--primary-hover:#1e40af;--primary-ink:#fff;--danger:#b91c1c;--danger-ink:#fff;--ok:#047857;--ok-ink:#fff;--warn:#92400e;--info:#1d4ed8;--demo:#6d28d9;--demo-ink:#fff;--focus:#2563eb;--ok-bg:#ecfdf5;--warn-bg:#fef3c7;--error-bg:#fef2f2;--info-bg:#e0ecff;--st-wait:#4b5563;--st-prep:#92400e;--st-ready:#c2410c;--st-done:#047857;--st-due:#7e22ce;--st-open:#1d4ed8;--st-cancel:#b91c1c;--backdrop:#1118278c;--radius:12px;--tap:48px;--header-h:0px;--band-h:0px;--bottom-bar-h:0px;--vvh:100dvh;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}html[data-theme=dark]{--bg:#0f1115;--surface:#171a21;--surface-2:#222631;--ink:#e8eaee;--muted:#aab1bd;--line:#333a47;--line-strong:#5b6474;--primary:#7aa7ff;--primary-hover:#a1c0ff;--primary-ink:#0b1220;--danger:#f87171;--danger-ink:#1a0b0b;--ok:#34d399;--ok-ink:#04130d;--warn:#fbbf24;--info:#7aa7ff;--demo:#8b5cf6;--demo-ink:#fff;--focus:#93c5fd;--ok-bg:#0d2a20;--warn-bg:#33270a;--error-bg:#3a1414;--info-bg:#13233f;--st-wait:#aab1bd;--st-prep:#fbbf24;--st-ready:#fb923c;--st-done:#34d399;--st-due:#d8b4fe;--st-open:#7aa7ff;--st-cancel:#f87171;--backdrop:#000000a6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--header-h) + 8px)}@media (width<=899px){html{scroll-padding-bottom:calc(152px + env(safe-area-inset-bottom,0px))}}body{overscroll-behavior:none;background:var(--bg);min-height:100vh;margin:0}body.dialog-open{overflow:hidden}h1{margin:0 0 8px;font-size:1.5rem}h2{margin:0 0 12px;font-size:1.2rem}h3{margin:16px 0 8px;font-size:1.05rem}p{margin:0 0 8px}button,input,select,textarea{font:inherit;min-height:var(--tap);border:1px solid var(--line-strong);background:var(--surface);color:inherit;touch-action:manipulation;border-radius:10px;padding:0 16px}textarea{padding:10px 12px}input,select{width:100%;max-width:100%}select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%;background-repeat:no-repeat;background-size:6px 6px;padding-right:40px}input[type=checkbox],input[type=radio]{width:24px;height:24px;min-height:24px;accent-color:var(--primary);padding:0}button{cursor:pointer;font-weight:500}button:disabled{opacity:.5;cursor:not-allowed}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);font-weight:650}button.primary:not(:disabled):hover{background:var(--primary-hover)}button.danger{background:var(--danger);border-color:var(--danger);color:var(--danger-ink);font-weight:600}button.danger-outline{border-color:var(--danger);color:var(--danger)}button.link{color:var(--primary);background:0 0;border:none;padding:0 8px;text-decoration:underline}button.wide{width:100%}button.big{min-height:56px;font-size:1.1rem}.app.demo{border-top:6px solid var(--demo)}.demo-band{background:var(--demo);color:var(--demo-ink);text-align:center;letter-spacing:.04em;padding:4px 8px;font-size:.9rem;font-weight:700}.statusbar{background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:6px 12px;font-size:.9rem;display:flex}.status-info{flex-wrap:wrap;flex:auto;align-items:center;gap:4px 10px;min-width:0;display:flex}.status-actions{flex:none;gap:8px;display:flex}.statusbar .who{font-weight:650}.statusbar .storage{color:var(--muted);font-size:.875rem}.topbar{z-index:30;position:sticky;top:0}.status-chip,.pill{white-space:nowrap;background:var(--surface);border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:.875rem;line-height:1.6;display:inline-flex}.status-chip .glyph,.badge .glyph{text-align:center;min-width:1em;font-weight:800}.pill.ok,.ok-text{color:var(--ok)}.pill.warn,.warn-text{color:var(--warn)}.pill.bad,.error{color:var(--danger)}.warning{color:var(--warn);font-weight:600}.muted{color:var(--muted)}.small{font-size:.875rem}.mono{word-break:break-all;font-family:ui-monospace,monospace}.kv{grid-template-columns:max-content minmax(0,1fr);gap:6px 16px;margin:0 0 12px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}.banner{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.banner.warn{background:var(--warn-bg);border-color:var(--warn)}.banner.info{background:var(--info-bg);border-color:var(--info);margin:8px 12px}.action-error{background:var(--error-bg);border:1px solid var(--danger);color:var(--ink);border-radius:10px;align-items:flex-start;gap:8px;margin:8px 0;padding:10px 12px;display:flex}.action-error:before{content:"!";color:var(--danger);font-weight:800}.action-note{background:var(--warn-bg);border:1px solid var(--warn);border-radius:10px;margin:8px 0;padding:10px 12px}.save-state{color:var(--muted);font-size:.875rem}.toast{top:calc(env(safe-area-inset-top,0px) + var(--band-h) + 8px);z-index:200;border-radius:12px;max-width:min(92vw,560px);padding:12px 20px;font-weight:600;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #00000040}.toast.ok{background:var(--ok);color:var(--ok-ink)}.toast.error{background:var(--danger);color:var(--danger-ink)}.toast.info{background:var(--ink);color:var(--surface)}.center-screen{flex-direction:column;gap:16px;max-width:560px;margin:32px auto;padding:0 16px;display:flex}.shell{grid-template-columns:236px minmax(0,1fr);align-items:start;display:grid}.content{flex-direction:column;gap:16px;min-width:0;padding:16px;display:flex}.nav{top:var(--header-h);max-height:calc(100dvh - var(--header-h));background:var(--surface);border-right:1px solid var(--line);flex-direction:column;gap:2px;padding:8px;display:flex;position:sticky;overflow-y:auto}.nav-group-title{letter-spacing:.06em;text-transform:uppercase;width:100%;color:var(--muted);background:0 0;border:none;justify-content:space-between;align-items:center;min-height:40px;margin-top:6px;padding:0 10px;font-size:.875rem;font-weight:700;display:flex}.nav-item{text-align:left;width:100%;min-height:var(--tap);background:0 0;border:none;border-left:4px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.nav-item.active{background:var(--surface-2);border-left-color:var(--primary);font-weight:700}.nav-count{text-align:center;background:var(--surface-2);border:1px solid var(--line-strong);border-radius:999px;min-width:26px;padding:0 6px;font-size:.875rem}.bottom-nav{display:none}@media (width<=899px){.shell{display:block}.nav.sidebar{display:none}.content{padding:12px 12px calc(var(--bottom-bar-h) + 16px)}.bottom-nav{z-index:25;height:calc(64px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav button{background:0 0;border:none;border-top:3px solid #0000;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;height:100%;min-height:60px;padding:4px 2px;font-size:.9rem;display:flex}.bottom-nav button.active{border-top-color:var(--primary);background:var(--surface-2);font-weight:700}.app.has-bottom-nav{--bottom-bar-h:calc(64px + env(safe-area-inset-bottom,0px))}body.typing .bottom-nav,body.typing .cart-bar,.statusbar .storage,.statusbar .backup-full,.statusbar .theme-toggle{display:none}}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;min-width:0;padding:16px;overflow-x:auto}.card-sub{border:1px solid var(--line);border-radius:10px;margin-top:12px;padding:12px}.card-sub summary,details>summary{cursor:pointer;min-height:var(--tap);align-items:center;font-weight:600;display:flex}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.card-head h2{margin:0 0 12px}.form{flex-direction:column;gap:12px;display:flex}.form.inline{flex-flow:wrap;align-items:flex-end}.form.inline .field{flex:220px}.field{flex-direction:column;gap:4px;min-width:0;font-size:.95rem;display:flex}.field>span{font-weight:600}.check{min-height:var(--tap);align-items:center;gap:10px;display:flex}.tabs,.chips{flex-wrap:wrap;gap:8px;display:flex}.chips{margin-bottom:12px}.tabs button.active,.chips button.active,.segmented button.active{background:var(--ink);border-color:var(--ink);color:var(--surface);font-weight:650}.segmented{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.mode-grid,.user-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.mode-card,.user-chip{text-align:left;flex-direction:column;align-items:flex-start;gap:4px;min-height:96px;padding:16px;display:flex}.mode-card.demo{border-color:var(--demo)}.user-chip.active{border:2px solid var(--primary)}.pinpad{flex-direction:column;gap:12px;width:100%;max-width:320px;margin:0 auto;display:flex}.pin-dots{justify-content:center;gap:12px;display:flex}.dot{border:2px solid var(--ink);border-radius:50%;width:16px;height:16px}.dot.filled{background:var(--ink)}.keys{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keys button{min-height:60px;font-size:1.5rem}.recovery-code{letter-spacing:.08em;text-align:center;background:var(--surface);border:2px dashed var(--primary);border-radius:12px;padding:16px;font-family:ui-monospace,monospace;font-size:1.6rem}.partner-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.confirm-box{border-top:1px solid var(--line);gap:12px;margin-top:16px;padding-top:12px;display:grid}.table{border-collapse:collapse;width:100%;font-size:.95rem}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px}.table.compact td{padding:4px 8px}.num{font-variant-numeric:tabular-nums;text-align:right!important}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entry{border-top:1px solid var(--line);padding:8px 0}.button-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin-top:12px;display:grid}.perm-row{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 0;display:flex}.perm-item{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.dialog-backdrop{left:0;right:0;top:var(--band-h);height:calc(var(--vvh) - var(--band-h));background:var(--backdrop);justify-content:center;align-items:center;padding:12px;display:flex;position:fixed}.dialog{width:min(520px,100%);max-height:calc(var(--vvh) - var(--band-h) - 24px);overscroll-behavior:contain;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:16px;flex-direction:column;display:flex;overflow-y:auto}.dialog.wide{width:min(760px,100%)}.dialog-head{z-index:1;background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex;position:sticky;top:0}.dialog-head h2{margin:0}.dialog-body{flex-direction:column;gap:12px;padding:16px;display:flex}.dialog-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);flex-direction:column;gap:8px;display:flex;position:sticky;bottom:0}@media (width<=599px){.dialog-backdrop{align-items:flex-end;padding:0}.dialog,.dialog.wide{width:100%;max-height:calc(var(--vvh) - var(--band-h) - 12px);border-radius:16px 16px 0 0}}.badge{white-space:nowrap;background:var(--surface);border:1.5px solid;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:.875rem;font-weight:600;line-height:1.6;display:inline-flex}.badge.st-wait{color:var(--st-wait)}.badge.st-prep{color:var(--st-prep)}.badge.st-ready{color:var(--st-ready)}.badge.st-done{color:var(--st-done)}.badge.st-due{color:var(--st-due)}.badge.st-open{color:var(--st-open)}.badge.st-cancel{color:var(--st-cancel)}.pos{grid-template-columns:minmax(0,3fr) minmax(320px,2fr);align-items:start;gap:12px;display:grid}.order-panel{top:calc(var(--header-h) + 12px);max-height:calc(100dvh - var(--header-h) - 24px);position:sticky;overflow-y:auto}.order-panel .card-head h2{margin-bottom:4px}@media (width<=899px){.pos{grid-template-columns:1fr}.order-panel{max-height:none;position:static}}.cart-bar,.cart-bar-spacer{display:none}@media (width<=899px){.cart-bar-spacer{height:72px;display:block}.cart-bar{display:flex}}.cart-bar{left:0;right:0;bottom:var(--bottom-bar-h);z-index:24;background:var(--surface);border-top:1px solid var(--line-strong);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;position:fixed}.cart-bar .amount{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:800}.product-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.product-btn{text-align:left;border-radius:var(--radius);flex-direction:column;justify-content:space-between;align-items:flex-start;gap:6px;min-height:92px;padding:10px 12px;display:flex}.product-btn .name{font-weight:600}.product-btn .price{font-size:1.15rem;font-weight:800}@media (width<=599px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.cart-line{border-bottom:1px solid var(--line);padding:10px 0}.cart-line .top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.qty{align-items:center;gap:6px;display:flex}.qty button{min-width:var(--tap);padding:0;font-size:1.25rem}.qty strong,.qty span{text-align:center;min-width:2ch}.total-row{justify-content:space-between;align-items:baseline;gap:12px;padding-top:8px;display:flex}.total-big{text-align:right;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800}.money-trio{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.money-box{border:1px solid var(--line-strong);background:var(--surface);border-radius:12px;min-width:0;padding:8px 10px}.money-box .label{color:var(--muted);font-size:.875rem;font-weight:600;display:block}.money-box .value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1.6rem;font-weight:800;display:block}.money-box.ok{border:2px solid var(--ok);background:var(--ok-bg)}.money-box.bad{border:2px solid var(--danger);background:var(--error-bg)}@media (width<=420px){.money-box .value{font-size:1.3rem}}.keypad{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.keypad button{min-height:56px;font-size:1.3rem}.success-box{border:2px solid var(--ok);background:var(--ok-bg);text-align:center;border-radius:14px;flex-direction:column;gap:8px;padding:16px;display:flex}.success-box .done-title{color:var(--ok);font-size:1.2rem;font-weight:800}.success-box .folio{margin:0;font-size:2.4rem;font-weight:800}.success-box .money-trio{text-align:left}.tab-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.tab-card{border:1px solid var(--line-strong);background:var(--surface);border-radius:14px;flex-direction:column;gap:8px;padding:12px;display:flex}.tab-card .tab-name{overflow-wrap:anywhere;font-size:1.25rem;font-weight:800}.tab-card .tab-total{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:800}.round-card{border-bottom:1px solid var(--line);flex-direction:column;gap:6px;padding:10px 0;display:flex}.round-card .round-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.panel-section{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.order-board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px;display:grid}@media (width<=899px){.order-board{grid-template-columns:1fr}}.order-column{flex-direction:column;gap:10px;min-width:0;display:flex}.order-column>header{align-items:center;gap:8px;display:flex}.order-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.order-card{border:1px solid var(--line-strong);background:var(--surface);border-left-width:6px;border-radius:12px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.order-card.PENDIENTE{border-left-color:var(--st-wait)}.order-card.EN_PREPARACION{border-left-color:var(--st-prep)}.order-card.LISTA{border-left-color:var(--st-ready)}.order-card.ENTREGADA{border-left-color:var(--st-done)}.order-card.CANCELADA{border-left-color:var(--st-cancel)}.order-card .folio{font-size:1.3rem;font-weight:800}.order-card ul{margin:0;padding-left:18px}.order-card .note{color:var(--warn);font-weight:700}.checklist{margin:0 0 12px;padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.checklist .mark{width:1.4em;font-weight:800;display:inline-block}.checklist .mark.ok{color:var(--ok)}.checklist .mark.bad{color:var(--danger)}.lock-btn{min-height:var(--tap);padding:0 12px}.dialog .nav{border:none;max-height:none;padding:0;position:static}.bottom-nav .nav-count{min-width:22px;font-size:.875rem}
