:root{--paper: #ffffff;--wash: #f6f5f2;--ink: #1b2340;--muted: #5d6478;--rule: #e2e0da;--maroon: #7b1d2e;--maroon-dark: #5f1523;--zari: #a8842c;--ok: #2f6b4f;--warn: #9a5b00;--bad: #a3282b;--font: "Noto Sans", "Noto Sans Tamil", "Segoe UI", Roboto, system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font:16px/1.45 var(--font);color:var(--ink);background:var(--wash)}button,input,select{font:inherit;color:inherit}button{min-height:44px;padding:0 16px;border:1px solid var(--rule);border-radius:8px;background:var(--paper);cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--zari);outline-offset:1px}button.primary{background:var(--maroon);border-color:var(--maroon);color:#fff;font-weight:600}button.primary:not(:disabled):hover{background:var(--maroon-dark)}button.link{border:0;background:none;color:var(--muted);text-decoration:underline;min-height:32px;padding:0 4px}input,select{min-height:44px;padding:0 12px;border:1px solid var(--rule);border-radius:8px;background:var(--paper)}.n{text-align:right;font-variant-numeric:tabular-nums}.error{color:var(--bad);margin:8px 0}.hint{color:var(--muted);font-size:14px}.gate{max-width:440px;margin:12vh auto;padding:32px;background:var(--paper);border-radius:12px;display:grid;gap:12px}.gate h1{margin:0;font-size:24px}.app{display:grid;grid-template-rows:auto 1fr;height:100%}.bar{display:flex;align-items:center;gap:20px;padding:8px 20px;background:var(--paper);border-bottom:1px solid var(--rule)}.store{display:grid;line-height:1.2}.store span{color:var(--muted);font-size:14px}.bar nav{display:flex;gap:6px;margin-left:auto}.tab{border-color:transparent;background:none}.tab.on{background:var(--wash);border-color:var(--rule);font-weight:600}.sync{font-size:14px;padding:4px 10px;border-radius:999px;background:var(--wash)}.sync.ok{color:var(--ok)}.sync.warn{color:var(--warn)}.sync.bad{color:#fff;background:var(--bad)}.who{color:var(--muted);font-size:14px}.bill{display:grid;grid-template-columns:1fr 360px;gap:20px;padding:20px;min-height:0}.lines{background:var(--paper);border-radius:12px;padding:16px;overflow:auto}.scan{width:100%;height:56px;font-size:20px;border-width:2px;border-color:var(--ink)}.empty{color:var(--muted);padding:48px 0;text-align:center}table{width:100%;border-collapse:collapse;margin-top:12px}th{text-align:left;font-weight:600;font-size:14px;color:var(--muted);padding:8px;border-bottom:1px solid var(--rule)}td{padding:10px 8px;border-bottom:1px solid var(--rule);vertical-align:middle}.desc{font-weight:600}.sku{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums}.stepper{display:inline-flex;align-items:center;gap:4px}.stepper button{min-width:44px;padding:0;font-size:20px}.qty{min-width:28px;display:inline-block;text-align:center;font-variant-numeric:tabular-nums}input.disc{width:72px}.summary{background:var(--paper);border-radius:12px;padding:20px;border-top:6px solid var(--zari);display:grid;gap:14px;align-content:start}.summary dl,.receipt dl{display:grid;grid-template-columns:1fr auto;gap:6px 12px;margin:0}.summary dd,.receipt dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.summary dt{color:var(--muted)}.total{display:grid;gap:2px;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.total span{color:var(--muted)}.total b{font-size:44px;line-height:1.1;color:var(--maroon);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.field{display:grid;gap:4px;font-size:14px;color:var(--muted)}.field input,.field select{color:var(--ink);font-size:16px}.pay{height:64px;font-size:20px}.sheet{position:fixed;top:0;right:0;bottom:0;left:0;background:#1b234059;display:grid;place-items:center}.panel{width:min(480px,92vw);background:var(--paper);border-radius:12px;padding:24px;display:grid;gap:12px;border-top:6px solid var(--zari)}.panel h2{margin:0}.tenders{display:flex;gap:6px}.paid{margin:0;padding-left:18px;color:var(--muted)}.due b{font-size:22px;font-variant-numeric:tabular-nums}.row{display:flex;gap:10px;justify-content:space-between;align-items:end;flex-wrap:wrap}.returns{padding:20px;max-width:1000px;display:grid;gap:12px;align-content:start}.find{display:flex;gap:8px}.find input{flex:1}.toast{position:fixed;bottom:16px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px;display:flex;gap:10px;align-items:center}.toast input{width:90px;color:var(--ink)}.toast button{color:var(--ink)}.receipt{display:none}@media print{@page{size:80mm auto;margin:4mm}body{background:#fff}.app>:not(.receipt){display:none!important}.receipt{display:block;font:12px/1.35 var(--font);color:#000;width:72mm}.receipt h3,.receipt h4{margin:4px 0;text-align:center}.receipt p{margin:2px 0;text-align:center}.receipt td{padding:3px 0;border-bottom:1px dashed #999}}@media (max-width: 900px){.bill{grid-template-columns:1fr}.bar{flex-wrap:wrap}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.demo-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 4px;align-items:center;font-size:13px}.demo-tags span{color:var(--muted);width:100%}.demo-tags button{min-height:32px;padding:0 10px;font-size:13px;border-style:dashed}
