@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url("./media/instrument-sans-latin-ext-wght-normal-PW4SIJGR.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url("./media/instrument-sans-latin-wght-normal-VYC4K7BH.woff2") format("woff2-variations");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:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-vietnamese-wght-normal-T2Q77LJF.woff2") format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-latin-ext-wght-normal-34SSUN6Q.woff2") format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url("./media/fraunces-latin-wght-normal-PV4JEXUJ.woff2") format("woff2-variations");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-display:swap;font-weight:400;src:url("./media/ibm-plex-mono-cyrillic-ext-400-normal-M2ROQZIK.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-ext-400-normal-RD4P2WYJ.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/ibm-plex-mono-cyrillic-400-normal-MUN4S7RW.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-400-normal-SUZ3KICP.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/ibm-plex-mono-vietnamese-400-normal-CEHCU5UT.woff2") format("woff2"),url("./media/ibm-plex-mono-vietnamese-400-normal-PVEVI4WT.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/ibm-plex-mono-latin-ext-400-normal-T6XOR2FX.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-ext-400-normal-6FH7XELU.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/ibm-plex-mono-latin-400-normal-A2WATXFY.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-400-normal-4MWPPJAM.woff") format("woff");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-display:swap;font-weight:500;src:url("./media/ibm-plex-mono-cyrillic-ext-500-normal-MC56NSC2.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-ext-500-normal-TFGJMWK5.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url("./media/ibm-plex-mono-cyrillic-500-normal-FIG3KNRY.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-500-normal-2KWAQPQZ.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url("./media/ibm-plex-mono-vietnamese-500-normal-ZWG7QFOJ.woff2") format("woff2"),url("./media/ibm-plex-mono-vietnamese-500-normal-4U6XTONH.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url("./media/ibm-plex-mono-latin-ext-500-normal-LJE4XY22.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-ext-500-normal-7HZM7XEP.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url("./media/ibm-plex-mono-latin-500-normal-33HAQIPI.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-500-normal-EJMP6L36.woff") format("woff");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-display:swap;font-weight:600;src:url("./media/ibm-plex-mono-cyrillic-ext-600-normal-ENXLHSSE.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-ext-600-normal-QL64H62F.woff") format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url("./media/ibm-plex-mono-cyrillic-600-normal-2CTSZR2S.woff2") format("woff2"),url("./media/ibm-plex-mono-cyrillic-600-normal-45WPZGS6.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url("./media/ibm-plex-mono-vietnamese-600-normal-U4JDE5C7.woff2") format("woff2"),url("./media/ibm-plex-mono-vietnamese-600-normal-MA4D2RPJ.woff") format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url("./media/ibm-plex-mono-latin-ext-600-normal-IEJYURAG.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-ext-600-normal-XVUP5NK5.woff") format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url("./media/ibm-plex-mono-latin-600-normal-IIV3OB4N.woff2") format("woff2"),url("./media/ibm-plex-mono-latin-600-normal-BXFNGPE3.woff") format("woff");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{color-scheme:light;--bg: #f3ece0;--surface: #fffaf1;--surface-2: #efe4d2;--surface-3: #e6d7bf;--ink: #2a1a13;--muted: #6a5244;--line: rgba(42, 26, 19, .14);--line-strong: rgba(42, 26, 19, .28);--primary: #6b3a2b;--primary-ink: #4e281c;--on-primary: #fff6e3;--maiz: #f3c131;--ok: #2f6b3f;--danger: #a3342a;--warning: #8a5a10;--t-despensa: #d9a21b;--t-despensa-ink: #6e5006;--t-mesa: #8a4a34;--t-mesa-ink: #6b3424;--t-domicilio: #3f6b3a;--t-domicilio-ink: #2b4f27;--t-bebida: #4f7d93;--shadow: 0 10px 28px -18px rgba(42, 26, 19, .6);--shadow-lg: 0 24px 60px -24px rgba(42, 26, 19, .55);--r: 14px;--r-sm: 10px;--display: "Fraunces Variable", "Fraunces", Georgia, serif;--ui: "Instrument Sans Variable", "Instrument Sans", "Segoe UI", system-ui, sans-serif;--num: "IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--bar-h: 64px;--paper: var(--surface);--canvas: var(--bg);--radius: var(--r);--brand-earth: var(--primary);--brand-red: var(--primary);--brand-gold: var(--maiz);--brand-dark: var(--ink);--good: var(--ok)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.45 var(--ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img{max-width:100%;display:block}h1,h2,h3,h4{margin:0;line-height:1.15;text-wrap:balance}h2{font-size:26px;font-weight:700;letter-spacing:-.01em}h3{font-size:18px;font-weight:700}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:3px solid var(--maiz);outline-offset:2px;border-radius:8px}[hidden]{display:none!important}.num,.mono{font-family:var(--num);font-variant-numeric:tabular-nums}.eyebrow,.label{margin:0;font:600 11.5px/1.25 var(--num);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.table-meta,.note{color:var(--muted);font-size:13.5px}.error-text{color:var(--danger);font-weight:600}.section-title{margin:24px 0 10px;font-size:18px}label{display:grid;gap:6px;font-weight:600;font-size:14px}input,select,textarea{width:100%;min-height:46px;padding:10px 12px;border-radius:var(--r-sm);border:1.5px solid var(--line);background:var(--surface);font-weight:500}textarea{min-height:84px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6b3a2b26}input[type=checkbox],input[type=radio]{width:20px;min-height:20px;height:20px;accent-color:var(--primary)}input::placeholder,textarea::placeholder{color:#9b8879}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:end}.form-grid .wide-field,.wide-field{grid-column:1 / -1}.month-field{max-width:220px}.primary-action,.ghost-action,.danger-action,.btn{min-height:48px;padding:0 18px;border-radius:12px;border:1.5px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:15px;text-decoration:none;transition:background .15s,border-color .15s,transform .1s}.primary-action:active,.ghost-action:active,.danger-action:active,.btn:active{transform:scale(.98)}.primary-action{background:var(--primary);color:var(--on-primary)}.primary-action:hover:not(:disabled){background:var(--primary-ink)}.ghost-action{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.ghost-action:hover:not(:disabled){background:var(--surface-2)}.danger-action{background:#fdf0ee;border-color:#a3342a59;color:var(--danger)}.danger-action:hover:not(:disabled){background:#f9e2de}.primary-action:disabled,.ghost-action:disabled,.danger-action:disabled,.btn:disabled{opacity:.45}.full{width:100%}.btn-big{min-height:58px;font-size:17px;border-radius:14px}.link-button{min-height:44px;padding:0 4px;border:0;background:none;color:var(--muted);text-decoration:underline;text-underline-offset:3px;font-size:14px}.chip{min-height:44px;padding:0 14px;border-radius:11px;border:1.5px solid var(--line);background:var(--surface);font-weight:600;display:inline-flex;align-items:center;gap:6px}.chip[aria-pressed=true],.chip.active{border-color:var(--primary);background:var(--primary);color:var(--on-primary)}.chip .num{font-size:12.5px;opacity:.85}.chips{display:flex;flex-wrap:wrap;gap:6px}.segmented,.stock-tabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px;border-radius:13px;background:var(--surface-2);width:fit-content;max-width:100%}.segment{min-height:44px;padding:0 16px;border:0;border-radius:10px;background:transparent;font-weight:600;color:var(--muted)}.segment.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.stock-tabs .ghost-action,.stock-tabs .primary-action{min-height:42px;border:0;background:transparent;color:var(--muted)}.stock-tabs .primary-action{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.tag{display:inline-flex;align-items:center;padding:3px 8px;border-radius:7px;background:var(--surface-2);color:var(--muted);font:600 11.5px/1.2 var(--num);letter-spacing:.04em;text-transform:uppercase}.content-header{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin-bottom:18px}.content-header h2{margin-top:4px}.surface,.side-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.main-surface{padding:18px}.side-panel{padding:18px;position:sticky;top:calc(var(--bar-h) + 16px)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.workspace-grid.single-column,.single-column{grid-template-columns:1fr}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px}.panel-heading>*{min-width:0}.panel-empty{min-height:200px;display:grid;place-items:center;text-align:center;color:var(--muted);padding:24px;border:1.5px dashed var(--line);border-radius:var(--r)}.action-stack{display:grid;gap:10px}.audit-note{padding:12px 14px;border-radius:var(--r-sm);background:var(--surface-2);color:var(--muted);font-size:13.5px}.compact-list,.admin-list{display:grid;gap:8px;margin-top:12px}.list-action{min-height:52px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1.5px solid var(--line);border-radius:var(--r-sm);background:var(--surface);text-align:left;font-weight:600}.list-action:hover{border-color:var(--line-strong)}.list-action.active,.list-action.selected{border-color:var(--primary);background:#f8eedc}.list-action span{min-width:0;overflow-wrap:anywhere}.list-action span:last-child{color:var(--muted);font-size:13px;font-weight:500;text-align:right}.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px 12px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.admin-row>*{min-width:0}.row-title{display:grid;gap:2px}.row-title strong{font-weight:700}.admin-row .price{font-weight:600;white-space:nowrap}.admin-row strong,.admin-row .table-meta{overflow-wrap:anywhere}.admin-row.catalog-row{grid-template-columns:minmax(0,1fr) auto auto auto auto}.admin-row.expense-row{grid-template-columns:minmax(0,1fr) auto auto}.admin-row.low-stock{border-color:#a3342a4d;background:#fdf4f1}.admin-row .ghost-action,.admin-row .primary-action,.admin-row .danger-action{min-height:42px;padding:0 14px;font-size:14px}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-top:14px}.fact{padding:12px 14px;border-radius:var(--r-sm);background:var(--surface-2);display:grid;gap:4px}.fact span{color:var(--muted);font-size:12.5px}.fact strong{font:600 17px/1.2 var(--num);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.total-box{padding:16px;border-radius:var(--r);background:var(--primary);color:var(--on-primary);display:grid;gap:4px}.total-box strong{font:600 26px/1.1 var(--num)}.total-box.loss{background:var(--danger)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line)}th{font:600 11.5px/1.2 var(--num);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}details>summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center;gap:10px;list-style:none}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"+";display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:var(--surface-2);font:600 16px/1 var(--num)}details[open]>summary:before{content:"\2212"}@media(max-width:900px){.workspace-grid{grid-template-columns:1fr}.side-panel{position:static}}@media(max-width:640px){.form-grid,.admin-row,.admin-row.catalog-row,.admin-row.expense-row{grid-template-columns:1fr}.admin-row .ghost-action,.admin-row .primary-action,.admin-row .danger-action{width:100%}}.app-shell{min-height:100%;display:grid;grid-template-rows:auto 1fr}.appbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:16px;min-height:var(--bar-h);padding:env(safe-area-inset-top,0px) 16px 0;background:#f3ece0f0;-webkit-backdrop-filter:saturate(1.3) blur(10px);backdrop-filter:saturate(1.3) blur(10px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;color:inherit;flex:none}.brand img{width:40px;height:40px;object-fit:contain;border-radius:10px;background:#fff;padding:3px}.brand b{font:800 21px/1 var(--display);font-variation-settings:"SOFT" 100;letter-spacing:-.01em}.nav{display:flex;gap:4px;padding:4px;border-radius:13px;background:var(--surface-2)}.nav a{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 14px;border-radius:10px;color:var(--muted);font-weight:600;text-decoration:none;white-space:nowrap}.nav a app-icon{width:19px;height:19px}.nav a:hover{color:var(--ink)}.nav a.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.nav .count{min-width:22px;padding:1px 6px;border-radius:999px;background:var(--maiz);color:var(--ink);font:600 12px/1.4 var(--num);text-align:center}.who{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:0}.who-text{display:grid;text-align:right;line-height:1.2;min-width:0}.who-text b{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.who-text span{font:500 11.5px var(--num);color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.icon-btn{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink)}.icon-btn app-icon{width:20px;height:20px}.icon-btn:hover{border-color:var(--line-strong)}.shift-pill{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:0 11px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font:500 12.5px var(--num);color:var(--muted);white-space:nowrap}.shift-pill i{width:8px;height:8px;border-radius:50%;background:var(--danger)}.shift-pill.open i{background:var(--ok)}.page{padding:18px 16px calc(24px + env(safe-area-inset-bottom,0px));min-width:0}@media(min-width:1100px){.page{padding:22px 24px 32px}}.tabbar{display:none}@media(max-width:899px){.appbar .nav,.shift-pill,.who-text span{display:none}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -10px 30px -22px #2a1a1399}.tabbar a{display:grid;justify-items:center;gap:2px;min-height:52px;padding:6px 4px;border-radius:12px;color:var(--muted);font-size:12px;font-weight:600;text-decoration:none;position:relative}.tabbar a app-icon{width:22px;height:22px}.tabbar a.active{color:var(--ink);background:var(--surface-2)}.tabbar .count{position:absolute;top:2px;left:calc(50% + 6px);min-width:20px;padding:0 5px;border-radius:999px;background:var(--maiz);color:var(--ink);font:600 11px/1.5 var(--num)}.has-tabbar .page{padding-bottom:calc(92px + env(safe-area-inset-bottom,0px))}}.system-banner{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:45;transform:translate(-50%);display:flex;align-items:center;gap:12px;width:min(560px,calc(100% - 24px));padding:10px 12px 10px 16px;border-radius:14px;background:var(--ink);color:var(--bg);box-shadow:var(--shadow-lg)}.system-banner span{font-weight:700}.system-banner button{margin-left:auto;min-height:40px;padding:0 14px;border:0;border-radius:10px;background:var(--maiz);color:var(--ink);font-weight:700}.offline-banner{background:var(--danger);color:#fff}.has-tabbar .system-banner{bottom:calc(84px + env(safe-area-inset-bottom,0px))}.toast{position:fixed;left:50%;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:60;transform:translate(-50%);max-width:calc(100% - 32px);padding:12px 18px;border-radius:12px;background:var(--ink);color:var(--bg);font-weight:600;box-shadow:var(--shadow-lg);text-align:center}.has-tabbar .toast{bottom:calc(88px + env(safe-area-inset-bottom,0px))}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:end center;background:#2a1a1380;padding:12px}@media(min-width:700px){.modal-backdrop{place-items:center}}.modal-sheet{width:min(480px,100%);max-height:calc(100vh - 24px);overflow-y:auto;display:grid;gap:14px;padding:22px;border-radius:20px;background:var(--surface);box-shadow:var(--shadow-lg)}.modal-message{color:var(--muted)}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.vender{display:grid;gap:14px;max-width:1180px;margin:0 auto}@media(min-width:1000px){.vender{grid-template-columns:minmax(0,1fr) 380px;align-items:start}.vender .v-cart,.vender .handoff{position:sticky;top:calc(var(--bar-h) + 16px)}}.v-main{display:grid;gap:14px;min-width:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px}.seg3{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:5px;border-radius:15px;background:var(--surface-2)}.seg3 button{position:relative;min-height:54px;border:0;border-radius:11px;background:transparent;font-weight:700;display:grid;place-items:center;align-content:center;gap:1px;line-height:1.1}.seg3 button small{font:500 11px var(--num);color:var(--muted);letter-spacing:.02em}.seg3 button[aria-pressed=true]{background:var(--surface);box-shadow:var(--shadow)}.seg3 button[aria-pressed=true]:before{content:"";position:absolute;left:14px;right:14px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--tone)}.tone-counter{--tone: var(--t-despensa);--tone-ink: var(--t-despensa-ink)}.tone-table{--tone: var(--t-mesa);--tone-ink: var(--t-mesa-ink)}.tone-delivery{--tone: var(--t-domicilio);--tone-ink: var(--t-domicilio-ink)}.v-fields{display:grid;gap:10px}.v-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:420px){.v-row2{grid-template-columns:1fr}}.mesas{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:6px}.mesa{min-height:58px;border-radius:12px;border:1.5px solid var(--line);background:var(--bg);display:grid;place-items:center;align-content:center;gap:1px;line-height:1.15;font-weight:700}.mesa small{font:500 11.5px var(--num);color:var(--muted)}.mesa.busy{border-color:var(--t-mesa);background:#f6e7df}.mesa.busy small{color:var(--t-mesa-ink)}.mesa[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.mesa[aria-pressed=true] small{color:var(--on-primary)}.menu-cats{display:grid;gap:16px}.cat-title{display:flex;align-items:center;gap:8px;margin-bottom:8px}.cat-title i{width:10px;height:10px;border-radius:3px;background:var(--cat)}.prods{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}@media(max-width:420px){.prods{grid-template-columns:repeat(2,minmax(0,1fr))}}.prod{position:relative;display:grid;align-content:space-between;gap:8px;min-height:80px;padding:11px 12px;text-align:left;border-radius:13px;border:1.5px solid var(--line);background:var(--bg);box-shadow:inset 0 3px 0 var(--cat);transition:transform .1s,border-color .15s}.prod:active{transform:scale(.97)}.prod b{font-weight:700;font-size:15px;line-height:1.2;overflow-wrap:anywhere}.prod .num{font-size:13px;color:var(--muted)}.prod.in{border-color:var(--primary)}.prod .qty{position:absolute;top:-8px;right:-6px;min-width:28px;height:28px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:var(--primary);color:var(--on-primary);font:600 14px/1 var(--num);box-shadow:var(--shadow)}.cat-0{--cat: var(--t-despensa)}.cat-1{--cat: var(--t-mesa)}.cat-2{--cat: var(--t-domicilio)}.cat-3{--cat: var(--t-bebida)}.v-cart{display:grid;gap:10px}@media(max-width:999px){.v-cart,.handoff{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom,0px));z-index:5;box-shadow:0 -16px 36px -24px #2a1a13a6}.has-tabbar .v-cart,.has-tabbar .handoff{bottom:calc(84px + env(safe-area-inset-bottom,0px))}}.cart-lines{display:grid;margin:0;padding:0;list-style:none;max-height:30vh;overflow-y:auto}@media(min-width:1000px){.cart-lines{max-height:48vh}}.line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--line)}.line:last-child{border-bottom:0}.line>span:first-child{overflow-wrap:anywhere}.step{display:flex;align-items:center;gap:2px}.step button{width:44px;height:44px;border-radius:10px;border:1.5px solid var(--line);background:var(--bg);font-size:18px;font-weight:600}.step .num{min-width:26px;text-align:center;font-weight:600}.line .sub{min-width:76px;text-align:right}.total-row{display:flex;align-items:baseline;justify-content:space-between;padding-top:8px;border-top:2px solid var(--ink)}.total-row b{font:600 26px/1 var(--num);font-variant-numeric:tabular-nums}.cart-empty{padding:4px 6px;text-align:center;color:var(--muted)}.v-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.handoff{display:grid;gap:10px;justify-items:center;text-align:center;padding:24px 16px;border-radius:var(--r);background:var(--primary);color:var(--on-primary)}.handoff .eyebrow{color:inherit;opacity:.8}.handoff .big{font:600 92px/.9 var(--num);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.handoff p{max-width:32ch;font-size:16px}.handoff .ghost-action{background:var(--on-primary);color:var(--primary);border:0}.empty-state{display:grid;gap:6px;justify-items:center;padding:28px 16px;text-align:center;color:var(--muted);border:1.5px dashed var(--line);border-radius:var(--r)}.empty-state b{color:var(--ink)}.caja{display:grid;gap:14px;container-type:inline-size}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.stat{padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);display:grid;gap:4px;min-width:0}.stat b{font:600 21px/1.1 var(--num);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat.warn b{color:var(--t-mesa-ink)}@media(max-width:520px){.stat b{font-size:17px}.stat{padding:10px}}.shift-open{display:flex;flex-wrap:wrap;align-items:end;gap:10px 14px;padding:14px;border-radius:var(--r);background:#fff4d6;border:1px solid rgba(217,162,27,.5)}.shift-open>div{flex:1 1 220px;display:grid;gap:4px}.shift-open label{flex:0 1 200px}.cash-body{display:grid;gap:14px}@container (min-width: 760px){.cash-body{grid-template-columns:minmax(300px,1fr) minmax(340px,1.05fr);align-items:start}}.queue-panel{display:grid;gap:10px}.queue{display:grid;gap:8px;margin:0;padding:0;list-style:none}.ticket{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:3px 12px;align-items:center;padding:10px 12px 10px 8px;text-align:left;border-radius:13px;border:1.5px solid var(--line);background:var(--bg);box-shadow:inset 4px 0 0 var(--tone)}.ticket:hover{border-color:var(--line-strong)}.ticket[aria-pressed=true]{border-color:var(--primary);background:#fbefd4}.ticket .n{grid-row:span 2;min-width:56px;padding-left:8px;font:600 30px/1 var(--num);letter-spacing:-.02em}.ticket .who-line{font-weight:700;display:flex;align-items:center;gap:8px;min-width:0}.ticket .who-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kind{flex:none;font:600 10.5px/1 var(--num);letter-spacing:.08em;text-transform:uppercase;padding:4px 6px;border-radius:6px;background:color-mix(in srgb,var(--tone) 18%,transparent);color:var(--tone-ink)}.ticket .what{grid-column:2;font-size:13.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket .amt{grid-row:span 2;text-align:right;display:grid;gap:3px}.ticket .amt b{font:600 16px/1 var(--num)}.ticket .amt small{font:500 11.5px/1 var(--num);color:var(--muted)}.ticket.old .amt small{color:var(--danger)}.detail{display:grid;gap:14px}.d-head{display:flex;align-items:center;gap:14px}.d-head .n{font:600 54px/.9 var(--num);letter-spacing:-.03em}.d-head .meta{display:grid;gap:3px;min-width:0}.d-head .meta b{font-size:17px}.d-head .meta small{color:var(--muted);overflow-wrap:anywhere}.d-head .icon-btn{margin-left:auto;flex:none}.d-lines{margin:0;padding:0;list-style:none;display:grid}.d-lines li{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--line)}.d-lines li>span:nth-child(2){overflow-wrap:anywhere}.void-btn{min-height:40px;padding:0 10px;border-radius:9px;border:1px solid rgba(163,52,42,.3);background:transparent;color:var(--danger);font-size:13px;font-weight:600}.paid-row{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:14px}.pay{display:grid;gap:10px}.methods{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px}.methods .chip{justify-content:center;min-height:48px}.change{display:flex;align-items:baseline;justify-content:space-between;padding:12px 14px;border-radius:12px;background:var(--surface-2)}.change b{font:600 30px/1 var(--num);font-variant-numeric:tabular-nums}.change.short b{color:var(--danger)}.scrim{position:fixed;inset:0;z-index:35;background:#2a1a1380}@container (max-width: 759px){.detail-wrap{position:fixed;inset:auto 0 0;z-index:40;max-height:90vh;overflow-y:auto;border-radius:22px 22px 0 0;padding:16px 16px calc(18px + env(safe-area-inset-bottom,0px));box-shadow:0 -24px 60px #00000059}.detail-empty{display:none}}@container (min-width: 760px){.scrim{display:none}.detail-wrap{position:sticky;top:calc(var(--bar-h) + 16px)}}.turno{display:grid;gap:14px;max-width:880px}.login-screen{min-height:100%;display:grid;place-items:center;padding:24px 16px;background:linear-gradient(180deg,var(--bg),#ecdfc9)}.login-card{width:min(420px,100%);display:grid;gap:16px;padding:28px;border-radius:22px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg)}.login-card .brand{justify-content:center}.login-card .brand img{width:56px;height:56px}.login-card .brand b{font-size:28px}.login-card h2{font-size:22px;text-align:center}.login-caption{text-align:center;font-size:13px;color:var(--muted)}.roles-hint{display:flex;justify-content:center;flex-wrap:wrap;gap:6px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}
