.tc-workspace{--bg:#f4f5fa;--surface:#ffffff;--surface-2:#f8f9fc;--surface-3:#eceef5;--border:#e1e4ee;--border-strong:#cdd2e0;--text:#16181c;--text-2:#565b64;--text-3:#8a8e96;--accent:#ffb020;--accent-ink:#11140a;--accent-text:#2f45c5;--accent-soft:rgba(47,69,197,.12);--danger:#d23b2b;--danger-soft:rgba(210,59,43,.09);--warn:#b26b00;--warn-soft:rgba(230,150,20,.13);--ok:#138a57;--ok-soft:rgba(19,138,87,.1);--info:#2c5fd6;--shadow:0 1px 2px rgba(20,20,10,.04),0 10px 28px -14px rgba(20,20,10,.18);--shadow-lg:0 30px 80px -20px rgba(20,20,10,.3);color-scheme:light;--text-xs:clamp(0.75rem,0.7rem + 0.25vw,0.8125rem);--text-sm:clamp(0.8125rem,0.78rem + 0.2vw,0.9375rem);--text-base:clamp(0.9375rem,0.9rem + 0.2vw,1rem);--text-lg:clamp(1.125rem,1rem + 0.5vw,1.375rem);--text-xl:clamp(1.375rem,1.1rem + 1vw,1.875rem);--font-display:"Cabinet Grotesk","Satoshi",system-ui,sans-serif;--font-body:"Satoshi",system-ui,-apple-system,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--r-sm:8px;--r-md:12px;--r-lg:18px;--r-xl:24px;--ease:cubic-bezier(.2,.8,.2,1);--spring:cubic-bezier(.34,1.56,.64,1);--sidebar-w:236px;--cart-w:400px}[data-theme=dark] .tc-workspace{--bg:#0d0f12;--surface:#14171c;--surface-2:#1a1e24;--surface-3:#222730;--border:#272c35;--border-strong:#353b46;--text:#eceef1;--text-2:#a3a9b4;--text-3:#6d7380;--accent:#ffb020;--accent-ink:#11140a;--accent-text:#ffb020;--accent-soft:rgba(255,176,32,.12);--danger:#ff6b5b;--danger-soft:rgba(255,107,91,.12);--warn:#ffb547;--warn-soft:rgba(255,181,71,.13);--ok:#4fd69c;--ok-soft:rgba(79,214,156,.12);--info:#7aa7ff;--shadow:0 1px 0 rgba(255,255,255,.03) inset,0 12px 32px -12px rgba(0,0,0,.6);--shadow-lg:0 30px 80px -20px rgba(0,0,0,.75);color-scheme:dark}[data-theme=light] .tc-workspace{--bg:#f4f5fa;--surface:#ffffff;--surface-2:#f8f9fc;--surface-3:#eceef5;--border:#e1e4ee;--border-strong:#cdd2e0;--text:#16181c;--text-2:#565b64;--text-3:#8a8e96;--accent:#ffb020;--accent-ink:#11140a;--accent-text:#2f45c5;--accent-soft:rgba(47,69,197,.12);--danger:#d23b2b;--danger-soft:rgba(210,59,43,.09);--warn:#b26b00;--warn-soft:rgba(230,150,20,.13);--ok:#138a57;--ok-soft:rgba(19,138,87,.1);--info:#2c5fd6;--shadow:0 1px 2px rgba(20,20,10,.04),0 10px 28px -14px rgba(20,20,10,.18);--shadow-lg:0 30px 80px -20px rgba(20,20,10,.3);color-scheme:light}.tc-workspace *,.tc-workspace :after,.tc-workspace :before{box-sizing:border-box}.tc-workspace{margin:0;height:100%}.tc-workspace{font-family:var(--font-body);font-size:var(--text-base);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background .35s var(--ease),color .35s var(--ease);overflow:hidden}@layer base{.tc-workspace button,.tc-workspace input,.tc-workspace select,.tc-workspace textarea{font:inherit;color:inherit}.tc-workspace button{cursor:pointer;border:0;background:none}}.tc-workspace a{color:inherit;text-decoration:none}.tc-workspace .mono,.tc-workspace .num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.tc-workspace svg.lucide{width:18px;height:18px;stroke-width:1.9;flex-shrink:0}.tc-workspace :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.tc-workspace ::selection{background:var(--accent);color:var(--accent-ink)}.tc-workspace ::-webkit-scrollbar{width:10px;height:10px}.tc-workspace ::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px;border:3px solid var(--bg)}.tc-workspace ::-webkit-scrollbar-track{background:transparent}.tc-workspace .app{display:grid;grid-template-columns:var(--sidebar-w) 1fr;height:100vh;height:100dvh}.tc-workspace .sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:20px 14px;gap:18px;z-index:40;transition:transform .35s var(--ease),background .35s var(--ease)}.tc-workspace .brand{display:flex;align-items:center;gap:10px;padding:4px 10px 8px}.tc-workspace .brand-mark{width:28px;height:28px;border-radius:9px;background:var(--accent);position:relative;overflow:hidden;box-shadow:0 0 0 4px var(--accent-soft)}.tc-workspace .brand-mark:after,.tc-workspace .brand-mark:before{content:"";position:absolute;background:var(--accent-ink);border-radius:2px}.tc-workspace .brand-mark:before{left:7px;right:7px;top:8px;height:3px}.tc-workspace .brand-mark:after{left:12.5px;width:3px;top:8px;bottom:7px}.tc-workspace .brand-name{font-family:var(--font-display);font-weight:800;font-size:1.25rem;letter-spacing:-.02em}.tc-workspace .nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto}.tc-workspace .nav a{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-md);color:var(--text-2);font-size:var(--text-sm);font-weight:500;position:relative;transition:background .2s,color .2s,transform .15s}.tc-workspace .nav a:hover{background:var(--surface-2);color:var(--text)}.tc-workspace .nav a:active{transform:scale(.98)}.tc-workspace .nav a.active{background:var(--surface-3);color:var(--text)}.tc-workspace .nav a.active:before{content:"";position:absolute;left:-14px;top:9px;bottom:9px;width:3px;border-radius:0 3px 3px 0;background:var(--accent);animation:tc-grow .35s var(--spring)}.tc-workspace .nav a.active svg{color:var(--accent-text)}@keyframes tc-grow{0%{transform:scaleY(0)}}.tc-workspace .nav-label{font-size:var(--text-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.08em;padding:16px 12px 6px;font-weight:700}.tc-workspace .nav-badge{margin-left:auto;font-size:11px;font-family:var(--font-mono);background:var(--danger);color:#fff;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;padding:0 6px}.tc-workspace .nav-badge:empty{display:none}.tc-workspace .shift{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border)}.tc-workspace .shift-dot{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 var(--ok);animation:tc-pulse 2s infinite}@keyframes tc-pulse{0%{box-shadow:0 0 0 0 rgba(79,214,156,.5)}70%{box-shadow:0 0 0 8px rgba(79,214,156,0)}to{box-shadow:0 0 0 0 rgba(79,214,156,0)}}.tc-workspace .shift-title{font-size:var(--text-sm);font-weight:700}.tc-workspace .shift-sub{font-size:var(--text-xs);color:var(--text-3)}.tc-workspace .main{display:flex;flex-direction:column;min-width:0;height:100vh;height:100dvh}.tc-workspace .topbar{display:flex;align-items:center;gap:16px;padding:14px 24px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(12px);min-height:68px}.tc-workspace .page-title{font-family:var(--font-display);font-weight:800;font-size:var(--text-xl);margin:0;letter-spacing:-.02em;white-space:nowrap}.tc-workspace .counter-switch{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--surface);border:1px solid var(--border);position:relative;margin-left:8px}.tc-workspace .counter-switch button{position:relative;z-index:1;padding:7px 12px;border-radius:9px;font-size:var(--text-sm);font-weight:600;color:var(--text-2);display:flex;align-items:center;gap:7px;transition:color .2s}.tc-workspace .counter-switch button.active{color:var(--accent-ink)}.tc-workspace .counter-switch button .cnt{font-family:var(--font-mono);font-size:11px;background:var(--surface-3);color:var(--text-2);border-radius:6px;padding:1px 6px;transition:background .2s,color .2s}.tc-workspace .counter-switch button.active .cnt{background:rgba(0,0,0,.14);color:var(--accent-ink)}.tc-workspace .counter-pill{position:absolute;top:4px;bottom:4px;border-radius:9px;background:var(--accent);transition:left .4s var(--spring),width .4s var(--spring);z-index:0}.tc-workspace .top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.tc-workspace .clock{color:var(--text-2);font-size:var(--text-sm);padding:0 8px}.tc-workspace .icon-btn{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;color:var(--text-2);background:var(--surface);border:1px solid var(--border);transition:color .2s,background .2s,transform .15s}.tc-workspace .icon-btn:hover{color:var(--text);background:var(--surface-2)}.tc-workspace .icon-btn:active{transform:scale(.92)}.tc-workspace .icon-btn.off{color:var(--text-3)}.tc-workspace .cashier{display:flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:22px;background:var(--surface);border:1px solid var(--border)}.tc-workspace .avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#7aa7ff,#b18cff);color:#0b0d12;font-weight:800;font-size:12px;display:grid;place-items:center}.tc-workspace .cashier-name{font-size:var(--text-sm);font-weight:600}.tc-workspace .only-mobile{display:none}.tc-workspace .view{flex:1;min-height:0;overflow:auto;position:relative;outline:none}.tc-workspace .view.enter>*{animation:tc-viewIn .45s var(--ease)}@keyframes tc-viewIn{0%{opacity:0;transform:translateY(10px)}}.tc-workspace .page{padding:24px;max-width:1480px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.tc-workspace .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 16px;border-radius:11px;font-weight:600;font-size:var(--text-sm);background:var(--surface);border:1px solid var(--border);color:var(--text);transition:background .2s,transform .12s,border-color .2s,box-shadow .2s;white-space:nowrap}.tc-workspace .btn:hover{background:var(--surface-2);border-color:var(--border-strong)}.tc-workspace .btn:active{transform:scale(.97)}.tc-workspace .btn.primary{background:var(--accent);color:var(--accent-ink);border-color:transparent}.tc-workspace .btn.primary:hover{box-shadow:0 0 0 5px var(--accent-soft)}.tc-workspace .btn.danger{color:var(--danger)}.tc-workspace .btn.ghost{background:transparent;border-color:transparent}.tc-workspace .btn.ghost:hover{background:var(--surface-2)}.tc-workspace .btn.sm{height:32px;padding:0 11px;font-size:var(--text-xs);border-radius:9px}.tc-workspace .btn.lg{height:56px;font-size:var(--text-base);border-radius:14px;padding:0 22px}.tc-workspace .btn:disabled{opacity:.45;pointer-events:none}.tc-workspace .input,.tc-workspace .select,.tc-workspace textarea.input{height:42px;padding:0 14px;border-radius:11px;border:1px solid var(--border);background:var(--surface);color:var(--text);width:100%;transition:border-color .2s,box-shadow .2s,background .2s}.tc-workspace textarea.input{resize:vertical}.tc-workspace .input:focus,.tc-workspace .select:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 4px var(--accent-soft)}.tc-workspace .input::placeholder{color:var(--text-3)}.tc-workspace .search{position:relative;flex:1;min-width:200px}.tc-workspace .search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text-3)}.tc-workspace .search .input{padding-left:40px}.tc-workspace .search kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%)}.tc-workspace kbd{font-family:var(--font-mono);font-size:11px;padding:2px 6px;border-radius:6px;border:1px solid var(--border-strong);color:var(--text-3);background:var(--surface-2)}.tc-workspace label.field{display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);color:var(--text-2);font-weight:600}.tc-workspace .seg{display:inline-flex;padding:3px;background:var(--surface);border:1px solid var(--border);border-radius:11px;gap:2px}.tc-workspace .seg button{padding:6px 12px;border-radius:8px;font-size:var(--text-xs);font-weight:600;color:var(--text-2);transition:background .2s,color .2s;display:flex;gap:6px;align-items:center}.tc-workspace .seg button.active{background:var(--surface-3);color:var(--text)}.tc-workspace .seg button .cnt{font-family:var(--font-mono);color:var(--text-3)}.tc-workspace .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow)}.tc-workspace .card-h{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 0;gap:12px}.tc-workspace .card-h h3{margin:0;font-size:var(--text-base);font-weight:700}.tc-workspace .card-b{padding:16px 18px 18px}.tc-workspace .muted{color:var(--text-2)}.tc-workspace .faint{color:var(--text-3)}.tc-workspace .pill{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:20px;font-size:var(--text-xs);font-weight:600;white-space:nowrap}.tc-workspace .pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.tc-workspace .pill.ok{color:var(--ok);background:var(--ok-soft)}.tc-workspace .pill.warn{color:var(--warn);background:var(--warn-soft)}.tc-workspace .pill.danger{color:var(--danger);background:var(--danger-soft)}.tc-workspace .pill.info{color:var(--info);background:color-mix(in srgb,var(--info) 13%,transparent)}.tc-workspace .pill.neutral{color:var(--text-2);background:var(--surface-3)}.tc-workspace .register{display:grid;grid-template-columns:minmax(0,1fr) var(--cart-w);height:100%;min-height:0}.tc-workspace .catalog{min-width:0;display:flex;flex-direction:column;min-height:0;padding:20px 24px 0;gap:16px}.tc-workspace .catalog-tools{display:flex;gap:10px;align-items:center}.tc-workspace .chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.tc-workspace .chips::-webkit-scrollbar{display:none}.tc-workspace .chip{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:22px;font-size:var(--text-sm);font-weight:600;background:var(--surface);border:1px solid var(--border);color:var(--text-2);white-space:nowrap;transition:all .25s var(--ease)}.tc-workspace .chip:hover{color:var(--text);border-color:var(--border-strong)}.tc-workspace .chip.active{background:var(--text);color:var(--bg);border-color:var(--text)}.tc-workspace .chip .cnt{font-family:var(--font-mono);font-size:11px;opacity:.6}.tc-workspace .grid-wrap{flex:1;overflow-y:auto;margin:0 -6px;padding:2px 6px 24px}.tc-workspace .product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px}.tc-workspace .product{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:10px;display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden;transition:transform .25s var(--spring),border-color .2s,box-shadow .25s;animation:tc-pop .45s var(--spring) both}@keyframes tc-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}}.tc-workspace .product:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--shadow)}.tc-workspace .product:active{transform:scale(.96)}.tc-workspace .product.out{opacity:.5}.tc-workspace .product.out .thumb svg.lucide{opacity:.25}.tc-workspace .product.out .thumb:after{content:"Sold out";position:absolute;inset:0;display:grid;place-items:center;font-weight:800;font-size:var(--text-sm);color:#fff;background:rgba(0,0,0,.45);letter-spacing:.04em}.tc-workspace .thumb{aspect-ratio:4/3;border-radius:12px;display:grid;place-items:center;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 30% 20%,hsl(var(--h) 80% 70%/.55),transparent 60%),hsl(var(--h) 45% 22%)}[data-theme=light] .tc-workspace .thumb{background:radial-gradient(120% 90% at 30% 20%,hsl(var(--h) 90% 85%),transparent 60%),hsl(var(--h) 55% 88%)}.tc-workspace .thumb svg.lucide{width:38px;height:38px;stroke-width:1.5;color:hsl(var(--h) 90% 88%);transition:transform .35s var(--spring)}[data-theme=light] .tc-workspace .thumb svg.lucide{color:hsl(var(--h) 60% 30%)}.tc-workspace .product:hover .thumb svg.lucide{transform:scale(1.12) rotate(-6deg)}.tc-workspace .p-name{font-weight:700;font-size:var(--text-sm);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.5em}.tc-workspace .p-meta{display:flex;justify-content:space-between;align-items:center;gap:6px}.tc-workspace .p-price{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm)}.tc-workspace .p-stock{font-size:11px;color:var(--text-3);font-family:var(--font-mono)}.tc-workspace .p-stock.low{color:var(--warn)}.tc-workspace .qty-badge{position:absolute;top:16px;right:16px;min-width:26px;height:26px;border-radius:13px;padding:0 7px;background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:12px;font-family:var(--font-mono);display:grid;place-items:center;animation:tc-badge .4s var(--spring);box-shadow:0 4px 14px -4px rgba(0,0,0,.5)}@keyframes tc-badge{0%{transform:scale(0)}}.tc-workspace .ripple{position:absolute;border-radius:50%;background:var(--accent);opacity:.35;transform:scale(0);animation:tc-ripple .6s var(--ease) forwards;pointer-events:none}@keyframes tc-ripple{to{transform:scale(4);opacity:0}}.tc-workspace .flyer{position:fixed;z-index:200;pointer-events:none;border-radius:12px;display:grid;place-items:center;box-shadow:var(--shadow-lg)}.tc-workspace .cart{border-left:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;min-height:0}.tc-workspace .cart-h{padding:18px 20px 14px;display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--border)}.tc-workspace .cart-h h2{font-family:var(--font-display);margin:0;font-size:var(--text-lg);font-weight:800;letter-spacing:-.01em}.tc-workspace .cart-h .order-no{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-3)}.tc-workspace .cart-h .spacer{flex:1}.tc-workspace .cart-icon{position:relative}.tc-workspace .cart-icon.bump{animation:tc-bump .45s var(--spring)}@keyframes tc-bump{40%{transform:scale(1.25) rotate(-8deg)}}.tc-workspace .cart-items{position:relative;flex:1;overflow-y:auto;padding:8px 12px}.tc-workspace .line{display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:10px 8px;border-radius:12px;animation:tc-lineIn .4s var(--spring) both;transition:background .2s}.tc-workspace .line:hover{background:var(--surface-2)}.tc-workspace .line.removing{animation:tc-lineOut .3s var(--ease) forwards}@keyframes tc-lineIn{0%{opacity:0;transform:translateX(24px)}}@keyframes tc-lineOut{to{opacity:0;transform:translateX(-24px);height:0;padding:0;margin:0}}.tc-workspace .line.flash{animation:tc-flash .6s var(--ease)}@keyframes tc-flash{30%{background:var(--accent-soft)}}.tc-workspace .line .mini{width:40px;height:40px;border-radius:10px}.tc-workspace .line .mini svg.lucide{width:20px;height:20px}.tc-workspace .line-name{font-weight:600;font-size:var(--text-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-workspace .line-sub{font-size:var(--text-xs);color:var(--text-3);font-family:var(--font-mono)}.tc-workspace .line-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.tc-workspace .line-total{font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm)}.tc-workspace .stepper{display:flex;align-items:center;background:var(--surface-3);border-radius:9px}.tc-workspace .stepper button{display:grid;place-items:center;border-radius:8px;color:var(--text-2);transition:background .15s,color .15s}.tc-workspace .stepper button:hover{background:var(--border-strong);color:var(--text)}.tc-workspace .stepper button svg.lucide{width:14px;height:14px}.tc-workspace .stepper span{min-width:26px;text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700}.tc-workspace .empty-cart{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;color:var(--text-3);padding:30px}.tc-workspace .empty-cart .ring{width:84px;height:84px;border-radius:50%;border:1.5px dashed var(--border-strong);display:grid;place-items:center;animation:tc-spin 14s linear infinite}.tc-workspace .empty-cart .ring svg.lucide{width:30px;height:30px;animation:tc-spin 14s linear infinite reverse}@keyframes tc-spin{to{transform:rotate(1turn)}}.tc-workspace .empty-cart strong{color:var(--text);font-size:var(--text-base)}.tc-workspace .cart-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px;border-top:1px solid var(--border)}.tc-workspace .cart-actions .btn{height:38px;font-size:var(--text-xs);padding:0 8px}.tc-workspace .totals{padding:4px 20px 12px;display:flex;flex-direction:column;gap:7px;font-size:var(--text-sm)}.tc-workspace .totals .row{display:flex;justify-content:space-between;color:var(--text-2)}.tc-workspace .totals .row .num{color:var(--text)}.tc-workspace .totals .row.disc .num{color:var(--ok)}.tc-workspace .totals .grand{display:flex;justify-content:space-between;align-items:baseline;padding-top:10px;margin-top:4px;border-top:1px dashed var(--border-strong)}.tc-workspace .totals .grand span:first-child{font-weight:700;color:var(--text)}.tc-workspace .totals .grand .num{font-size:1.75rem;font-weight:700;color:var(--text);letter-spacing:-.03em}.tc-workspace .charge{margin:0 16px 16px;height:60px;border-radius:16px;font-size:var(--text-base);font-weight:800;justify-content:space-between;padding:0 20px;position:relative;overflow:hidden}.tc-workspace .charge:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-100%)}.tc-workspace .charge:not(:disabled):after{animation:tc-shine 3.2s ease-in-out infinite}@keyframes tc-shine{0%,60%{transform:translateX(-100%)}to{transform:translateX(100%)}}.tc-workspace .cart-fab{display:none}.tc-workspace .modal-wrap{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px}.tc-workspace .modal-bg{position:absolute;inset:0;background:rgba(5,6,8,.6);backdrop-filter:blur(6px);animation:tc-fade .25s var(--ease)}.tc-workspace .modal{position:relative;width:min(560px,100%);max-height:calc(100dvh - 40px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);animation:tc-modalIn .4s var(--spring)}.tc-workspace .modal.wide{width:min(860px,100%)}.tc-workspace .modal.closing{animation:tc-modalOut .22s var(--ease) forwards}.tc-workspace .modal-wrap.closing .modal-bg{animation:tc-fade .22s var(--ease) reverse forwards}@keyframes tc-fade{0%{opacity:0}}@keyframes tc-modalIn{0%{opacity:0;transform:translateY(20px) scale(.96)}}@keyframes tc-modalOut{to{opacity:0;transform:translateY(12px) scale(.97)}}.tc-workspace .modal-h{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 0}.tc-workspace .modal-h h2{margin:0;font-family:var(--font-display);font-weight:800;font-size:var(--text-lg)}.tc-workspace .modal-b{padding:18px 22px 22px;display:flex;flex-direction:column;gap:16px}.tc-workspace .modal-f{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:0 22px 22px}.tc-workspace .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tc-workspace .form-grid .full{grid-column:1/-1}.tc-workspace .pay{display:grid;grid-template-columns:1fr 1.1fr;min-height:460px}.tc-workspace .pay-summary{padding:26px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:14px;background:var(--surface-2);border-radius:var(--r-xl) 0 0 var(--r-xl)}.tc-workspace .pay-due-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-weight:700}.tc-workspace .pay-due{font-family:var(--font-mono);font-size:2.6rem;font-weight:700;letter-spacing:-.04em;line-height:1}.tc-workspace .pay-lines{flex:1;overflow:auto;display:flex;flex-direction:column;gap:8px;font-size:var(--text-sm);max-height:240px}.tc-workspace .pay-lines div{display:flex;justify-content:space-between;gap:10px;color:var(--text-2)}.tc-workspace .pay-lines .num{color:var(--text)}.tc-workspace .pay-main{padding:22px;display:flex;flex-direction:column;gap:16px}.tc-workspace .methods{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tc-workspace .method{padding:14px 8px;border-radius:14px;border:1px solid var(--border);background:var(--surface-2);display:flex;flex-direction:column;align-items:center;gap:8px;font-size:var(--text-sm);font-weight:600;color:var(--text-2);transition:all .25s var(--ease)}.tc-workspace .method svg.lucide{width:22px;height:22px}.tc-workspace .method:hover{border-color:var(--border-strong);color:var(--text)}.tc-workspace .method.active{border-color:var(--accent-text);background:var(--accent-soft);color:var(--text);box-shadow:0 0 0 3px var(--accent-soft)}.tc-workspace .method.active svg{color:var(--accent-text)}.tc-workspace .tender{display:flex;justify-content:space-between;align-items:baseline;padding:14px 16px;border-radius:14px;background:var(--surface-2);border:1px solid var(--border)}.tc-workspace .tender .num{font-size:1.6rem;font-weight:700}.tc-workspace .change{font-size:var(--text-sm);display:flex;justify-content:space-between;padding:0 4px}.tc-workspace .change .num{font-weight:700}.tc-workspace .change.ok .num{color:var(--ok)}.tc-workspace .change.short .num{color:var(--danger)}.tc-workspace .quick{display:flex;gap:6px;flex-wrap:wrap}.tc-workspace .keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tc-workspace .key{height:52px;border-radius:12px;background:var(--surface-2);border:1px solid var(--border);font-family:var(--font-mono);font-size:1.15rem;font-weight:600;transition:background .12s,transform .1s}.tc-workspace .key:hover{background:var(--surface-3)}.tc-workspace .key:active{transform:scale(.94);background:var(--accent-soft)}.tc-workspace .tap-zone{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:10px}.tc-workspace .tap-circle{width:140px;height:140px;border-radius:50%;display:grid;place-items:center;position:relative;background:var(--accent-soft)}.tc-workspace .tap-circle:after,.tc-workspace .tap-circle:before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--accent-text);opacity:0;animation:tc-wave 2s var(--ease) infinite}.tc-workspace .tap-circle:after{animation-delay:1s}@keyframes tc-wave{0%{transform:scale(.7);opacity:.8}to{transform:scale(1.5);opacity:0}}.tc-workspace .tap-circle svg.lucide{width:52px;height:52px;color:var(--accent-text)}.tc-workspace .qr{width:156px;height:156px;padding:10px;background:#fff;border-radius:14px}.tc-workspace .spinner{width:46px;height:46px;border-radius:50%;border:3px solid var(--border-strong);border-top-color:var(--accent-text);animation:tc-spin .8s linear infinite}.tc-workspace .success{padding:36px 28px 28px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;position:relative;overflow:hidden}.tc-workspace .check{width:92px;height:92px}.tc-workspace .check circle{stroke:var(--ok);stroke-dasharray:290;stroke-dashoffset:290;animation:tc-draw .6s var(--ease) forwards}.tc-workspace .check path{stroke:var(--ok);stroke-dasharray:60;stroke-dashoffset:60;animation:tc-draw .4s .45s var(--ease) forwards}@keyframes tc-draw{to{stroke-dashoffset:0}}.tc-workspace .success h2{font-family:var(--font-display);font-weight:800;font-size:var(--text-xl);margin:8px 0 0}.tc-workspace .confetti{position:absolute;width:8px;height:14px;top:40%;left:50%;border-radius:2px;animation:tc-confetti 1.3s var(--ease) forwards}@keyframes tc-confetti{to{transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}}.tc-workspace .receipt{width:100%;max-width:340px;background:#fbfaf6;color:#1b1c1f;border-radius:6px;padding:20px 20px 26px;text-align:left;font-family:var(--font-mono);font-size:12px;line-height:1.6;margin-top:10px;position:relative;animation:tc-print 1s .5s var(--ease) both;box-shadow:0 16px 40px -16px rgba(0,0,0,.5);-webkit-mask:radial-gradient(circle 6px at 50% 100%,transparent 98%,#000) bottom/14px 100% repeat-x}@keyframes tc-print{0%{clip-path:inset(0 0 100% 0);transform:translateY(-14px)}to{clip-path:inset(0 0 0 0)}}.tc-workspace .receipt .c{text-align:center}.tc-workspace .receipt .r{display:flex;justify-content:space-between;gap:10px}.tc-workspace .receipt hr{border:0;border-top:1px dashed #b9b8b0;margin:8px 0}.tc-workspace .receipt .big{font-size:15px;font-weight:700}.tc-workspace .toasts{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:300;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.tc-workspace .toast{display:flex;align-items:center;gap:10px;padding:11px 16px 11px 12px;border-radius:14px;background:var(--text);color:var(--bg);font-size:var(--text-sm);font-weight:600;box-shadow:var(--shadow-lg);animation:tc-toastIn .45s var(--spring);pointer-events:auto}.tc-workspace .toast .ti{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink)}.tc-workspace .toast.err .ti{background:var(--danger);color:#fff}.tc-workspace .toast.warn .ti{background:var(--warn);color:#111}.tc-workspace .toast .ti svg.lucide{width:15px;height:15px}.tc-workspace .toast.out{animation:tc-toastOut .3s var(--ease) forwards}@keyframes tc-toastIn{0%{opacity:0;transform:translateY(20px) scale(.9)}}@keyframes tc-toastOut{to{opacity:0;transform:translateY(10px) scale(.95)}}.tc-workspace .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.tc-workspace .kpi{padding:18px;display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden}.tc-workspace .kpi-top{display:flex;align-items:center;justify-content:space-between;color:var(--text-2);font-size:var(--text-sm);font-weight:600}.tc-workspace .kpi-ico{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--surface-3);color:var(--text-2)}.tc-workspace .kpi-val{font-family:var(--font-mono);font-size:1.7rem;font-weight:700;letter-spacing:-.03em}.tc-workspace .kpi-sub{font-size:var(--text-xs);color:var(--text-3);display:flex;gap:6px;align-items:center}.tc-workspace .kpi-sub .up{color:var(--ok);font-weight:700}.tc-workspace .kpi-sub .down{color:var(--danger);font-weight:700}.tc-workspace .kpi.alert .kpi-ico{background:var(--danger-soft);color:var(--danger)}.tc-workspace .kpi.warning .kpi-ico{background:var(--warn-soft);color:var(--warn)}.tc-workspace .kpi.good .kpi-ico{background:var(--accent-soft);color:var(--accent-text)}.tc-workspace .toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tc-workspace .toolbar .grow{flex:1}.tc-workspace .table-card{overflow:hidden}.tc-workspace .table-scroll{overflow-x:auto}.tc-workspace table.t{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.tc-workspace .t th{text-align:left;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700;padding:12px 16px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface);position:sticky;top:0}.tc-workspace .t th.sortable{cursor:pointer;user-select:none}.tc-workspace .t th.sortable:hover{color:var(--text)}.tc-workspace .t td{padding:12px 16px;border-bottom:1px solid var(--border);white-space:nowrap}.tc-workspace .t tr:last-child td{border-bottom:0}.tc-workspace .t tbody tr{transition:background .15s;animation:tc-rowIn .4s var(--ease) both}.tc-workspace .t tbody tr:hover{background:var(--surface-2)}.tc-workspace .t tr.flash td{animation:tc-rowFlash 1.2s var(--ease)}@keyframes tc-rowIn{0%{opacity:0;transform:translateY(6px)}}@keyframes tc-rowFlash{0%,30%{background:var(--accent-soft)}}.tc-workspace .t .r{text-align:right}.tc-workspace .prod-cell{display:flex;align-items:center;gap:12px}.tc-workspace .prod-cell .mini{width:38px;height:38px;border-radius:10px}.tc-workspace .prod-cell .mini svg.lucide{width:18px;height:18px}.tc-workspace .prod-cell b{font-weight:600;display:block}.tc-workspace .prod-cell small{color:var(--text-3);font-family:var(--font-mono);font-size:11px}.tc-workspace .stockbar{display:flex;align-items:center;gap:10px;min-width:150px}.tc-workspace .stockbar .bar{flex:1;height:6px;background:var(--surface-3);border-radius:4px;overflow:hidden}.tc-workspace .stockbar .bar i{display:block;height:100%;border-radius:4px;background:var(--ok);transform-origin:left;animation:tc-barIn .9s var(--ease) both}.tc-workspace .stockbar .bar i.low{background:var(--warn)}.tc-workspace .stockbar .bar i.out{background:var(--danger)}@keyframes tc-barIn{0%{transform:scaleX(0)}}.tc-workspace .stockbar .num{min-width:36px;text-align:right;font-weight:700}.tc-workspace .row-actions{display:flex;gap:4px;justify-content:flex-end}.tc-workspace .delta.pos{color:var(--ok);font-weight:700}.tc-workspace .delta.neg{color:var(--danger);font-weight:700}.tc-workspace .empty{padding:48px 20px;text-align:center;color:var(--text-3);display:flex;flex-direction:column;align-items:center;gap:8px}.tc-workspace .empty svg.lucide{width:32px;height:32px}.tc-workspace .dash-grid{display:grid;grid-template-columns:2fr 1fr;gap:14px}.tc-workspace .chart-box{position:relative;height:280px}.tc-workspace .top-list{display:flex;flex-direction:column;gap:12px}.tc-workspace .top-item{display:grid;grid-template-columns:34px 1fr auto;gap:12px;align-items:center}.tc-workspace .top-item .mini{width:34px;height:34px;border-radius:9px}.tc-workspace .top-item .mini svg.lucide{width:16px;height:16px}.tc-workspace .top-item .bar{height:4px;background:var(--surface-3);border-radius:3px;margin-top:6px;overflow:hidden}.tc-workspace .top-item .bar i{display:block;height:100%;background:var(--accent-text);border-radius:3px;transform-origin:left;animation:tc-barIn 1s var(--ease) both}.tc-workspace .counter-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.tc-workspace .counter-card{padding:18px;display:flex;flex-direction:column;gap:12px}.tc-workspace .counter-card .top{display:flex;justify-content:space-between;align-items:center}.tc-workspace .counter-card .name{font-weight:700;display:flex;align-items:center;gap:8px}.tc-workspace .counter-card .stat{display:flex;gap:22px}.tc-workspace .counter-card .stat div{display:flex;flex-direction:column;gap:2px}.tc-workspace .counter-card .stat small{color:var(--text-3);font-size:var(--text-xs)}.tc-workspace .counter-card .stat b{font-family:var(--font-mono);font-size:var(--text-lg)}.tc-workspace .po-card{padding:18px;display:flex;flex-direction:column;gap:12px;animation:tc-pop .45s var(--spring) both}.tc-workspace .po-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.tc-workspace .po-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.tc-workspace .po-top h3{margin:0;font-family:var(--font-mono);font-size:var(--text-base)}.tc-workspace .po-lines{display:flex;flex-direction:column;gap:6px;font-size:var(--text-sm);border-top:1px solid var(--border);padding-top:10px}.tc-workspace .po-lines div{display:flex;justify-content:space-between;color:var(--text-2)}.tc-workspace .po-foot{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border);padding-top:12px}.tc-workspace .steps{display:flex;gap:6px}.tc-workspace .steps i{height:4px;flex:1;border-radius:2px;background:var(--surface-3);transition:background .4s}.tc-workspace .steps i.on{background:var(--accent-text)}.tc-workspace .settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tc-workspace .set-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}.tc-workspace .set-row:last-child{border-bottom:0}.tc-workspace .set-row .lbl b{display:block;font-size:var(--text-sm)}.tc-workspace .set-row .lbl small{color:var(--text-3);font-size:var(--text-xs)}.tc-workspace .switch{width:44px;height:26px;border-radius:13px;background:var(--surface-3);position:relative;transition:background .25s;flex-shrink:0;border:1px solid var(--border)}.tc-workspace .switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--text-2);transition:transform .35s var(--spring),background .25s}.tc-workspace .switch.on{background:var(--accent)}.tc-workspace .switch.on:after{transform:translateX(18px);background:var(--accent-ink)}.tc-workspace input[type=range]{accent-color:var(--accent-text);width:160px}.tc-workspace .sound-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tc-workspace .scrim{display:none}@media (max-width:1440px){.tc-workspace .hide-md{display:none}}@media (max-width:1200px){.tc-workspace{--cart-w:360px}.tc-workspace .kpis{grid-template-columns:repeat(2,1fr)}.tc-workspace .cashier-name{display:none}}@media (max-width:980px){.tc-workspace .app{grid-template-columns:1fr}.tc-workspace .sidebar{position:fixed;inset:0 auto 0 0;width:260px;transform:translateX(-100%);box-shadow:var(--shadow-lg)}.tc-workspace body.nav-open .sidebar{transform:none}.tc-workspace body.nav-open .scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:35;animation:tc-fade .25s}.tc-workspace .only-mobile{display:grid}.tc-workspace .register{grid-template-columns:minmax(0,1fr)}.tc-workspace .cart{position:fixed;left:0;right:0;bottom:0;height:86dvh;z-index:60;border-radius:22px 22px 0 0;border:1px solid var(--border);transform:translateY(105%);transition:transform .45s var(--spring);box-shadow:var(--shadow-lg)}.tc-workspace body.cart-open .cart{transform:none}.tc-workspace body.cart-open .scrim{display:block;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:55}.tc-workspace .cart-fab{display:flex;position:fixed;left:16px;right:16px;bottom:16px;z-index:50;height:58px;border-radius:16px;background:var(--accent);color:var(--accent-ink);font-weight:800;align-items:center;justify-content:space-between;padding:0 18px;box-shadow:0 16px 40px -12px rgba(0,0,0,.6)}.tc-workspace .cart-fab .l{display:flex;gap:10px;align-items:center}.tc-workspace .cart-fab .n{background:var(--accent-ink);color:var(--accent);border-radius:10px;padding:2px 8px;font-family:var(--font-mono);font-size:13px}.tc-workspace .grid-wrap{padding-bottom:96px}.tc-workspace .counter-cards,.tc-workspace .dash-grid,.tc-workspace .pay,.tc-workspace .settings-grid{grid-template-columns:1fr}.tc-workspace .pay-summary{border-right:0;border-bottom:1px solid var(--border);border-radius:var(--r-xl) var(--r-xl) 0 0}.tc-workspace .pay-lines{display:none}}@media (max-width:640px){.tc-workspace .topbar{padding:10px 14px;gap:8px;flex-wrap:wrap;min-height:0}.tc-workspace .page-title{font-size:var(--text-lg)}.tc-workspace .counter-switch{order:5;width:100%;margin-left:0}.tc-workspace .counter-switch button{flex:1;justify-content:center;padding:7px 4px}.tc-workspace .cashier,.tc-workspace .clock{display:none}.tc-workspace .page{padding:16px}.tc-workspace .catalog{padding:14px 14px 0}.tc-workspace .product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.tc-workspace .kpis{grid-template-columns:1fr 1fr;gap:10px}.tc-workspace .kpi{padding:14px}.tc-workspace .kpi-val{font-size:1.3rem}.tc-workspace .form-grid{grid-template-columns:1fr}.tc-workspace .search kbd{display:none}.tc-workspace .t td,.tc-workspace .t th{padding:10px 12px}.tc-workspace .modal-wrap{padding:0;place-items:end center}.tc-workspace .modal{border-radius:22px 22px 0 0;max-height:94dvh}.tc-workspace .pay-due{font-size:2rem}.tc-workspace .sound-grid{grid-template-columns:1fr 1fr}}.tc-workspace{--sidebar-w:188px;--cart-w:clamp(460px,44vw,640px)}.tc-workspace svg.lucide{width:16px;height:16px}.tc-workspace .sidebar{padding:12px 8px;gap:10px}.tc-workspace .brand{padding:2px 8px 4px;gap:8px}.tc-workspace .brand-mark{width:24px;height:24px;border-radius:7px;box-shadow:0 0 0 3px var(--accent-soft)}.tc-workspace .brand-mark:before{left:6px;right:6px;top:7px;height:2.5px}.tc-workspace .brand-mark:after{left:10.75px;width:2.5px;top:7px;bottom:6px}.tc-workspace .brand-name{font-size:1.05rem}.tc-workspace .nav a{padding:7px 10px;gap:10px;border-radius:9px;font-size:13px}.tc-workspace .nav a.active:before{left:-8px;top:7px;bottom:7px}.tc-workspace .nav-label{padding:10px 10px 4px;font-size:10.5px}.tc-workspace .shift{padding:8px 10px;gap:10px;border-radius:10px}.tc-workspace .topbar{padding:7px 14px;min-height:50px;gap:12px}.tc-workspace .page-title{font-size:1.15rem}.tc-workspace .counter-switch{padding:3px;border-radius:10px;margin-left:4px}.tc-workspace .counter-switch button{padding:5px 10px;font-size:12.5px;border-radius:7px}.tc-workspace .counter-pill{top:3px;bottom:3px;border-radius:7px}.tc-workspace .icon-btn{width:32px;height:32px;border-radius:9px}.tc-workspace .cashier{padding:2px 10px 2px 2px}.tc-workspace .avatar{width:26px;height:26px;font-size:11px}.tc-workspace .cashier-name,.tc-workspace .clock{font-size:12.5px}.tc-workspace .btn{height:34px;padding:0 12px;border-radius:9px;font-size:13px;gap:6px}.tc-workspace .btn.sm{height:28px;padding:0 9px;font-size:12px;border-radius:7px}.tc-workspace .btn.lg{height:46px;border-radius:11px}.tc-workspace .input,.tc-workspace .select{height:34px;padding:0 11px;border-radius:9px;font-size:13px}.tc-workspace .search .input{padding-left:34px}.tc-workspace .search svg{left:11px}.tc-workspace .search{min-width:160px}.tc-workspace .seg button{padding:5px 10px}.tc-workspace label.field{gap:4px}.tc-workspace .page{padding:12px 14px;gap:12px;max-width:none}.tc-workspace .card{border-radius:12px}.tc-workspace .card-h{padding:10px 12px 0}.tc-workspace .card-h h3{font-size:14px}.tc-workspace .card-b{padding:10px 12px 12px}.tc-workspace .kpis{gap:10px}.tc-workspace .kpi{padding:10px 12px;gap:3px}.tc-workspace .kpi-top{font-size:12.5px}.tc-workspace .kpi-ico{width:26px;height:26px;border-radius:7px}.tc-workspace .kpi-val{font-size:1.3rem}.tc-workspace .toolbar{gap:8px}.tc-workspace .t{font-size:13px}.tc-workspace .t th{padding:7px 10px;font-size:10.5px}.tc-workspace .t td{padding:5px 10px}.tc-workspace .prod-cell{gap:9px}.tc-workspace .prod-cell .mini{width:28px;height:28px;border-radius:7px}.tc-workspace .prod-cell .mini svg.lucide{width:14px;height:14px}.tc-workspace .prod-cell small{font-size:10.5px;line-height:1.1}.tc-workspace .prod-cell b{line-height:1.2}.tc-workspace .stockbar{min-width:120px;gap:8px}.tc-workspace .stockbar+small{display:none}.tc-workspace .t td .icon-btn{width:28px!important;height:28px!important}.tc-workspace .pill{padding:2px 8px;font-size:11.5px}.tc-workspace .chart-box{height:220px}.tc-workspace .counter-cards,.tc-workspace .dash-grid,.tc-workspace .po-grid,.tc-workspace .settings-grid{gap:10px}.tc-workspace .counter-card{padding:12px;gap:6px}.tc-workspace .counter-card .stat b{font-size:15px}.tc-workspace .top-list{gap:8px}.tc-workspace .po-card{padding:12px;gap:8px}.tc-workspace .po-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.tc-workspace .set-row{padding:9px 0}.tc-workspace .modal-h{padding:14px 16px 0}.tc-workspace .modal-b{padding:12px 16px 16px;gap:12px}.tc-workspace .modal-f{padding:0 16px 16px}.tc-workspace .form-grid{gap:10px}.tc-workspace .method{padding:10px 6px;gap:5px;border-radius:11px}.tc-workspace .catalog{padding:10px 12px 0;gap:8px}.tc-workspace .catalog-tools{gap:8px}.tc-workspace .chips{gap:6px;padding-bottom:2px}.tc-workspace .chip{padding:5px 11px;font-size:12.5px;gap:6px}.tc-workspace .chip svg.lucide{width:14px;height:14px}.tc-workspace .grid-wrap{padding:2px 4px 12px;margin:0 -4px}.tc-workspace .product-grid{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:7px}.tc-workspace .product{padding:6px;gap:5px;border-radius:10px;animation-duration:.3s}.tc-workspace .product:hover{transform:translateY(-2px)}.tc-workspace .thumb{aspect-ratio:16/8;border-radius:7px}.tc-workspace .thumb svg.lucide{width:24px;height:24px}.tc-workspace .p-name{font-size:12.5px;line-height:1.2;min-height:2.4em}.tc-workspace .p-price{font-size:12.5px}.tc-workspace .p-stock{font-size:10.5px}.tc-workspace .qty-badge{top:9px;right:9px;min-width:21px;height:21px;font-size:11px}.tc-workspace .product.out .thumb:after{font-size:11px}.tc-workspace .cart-h{padding:8px 12px;gap:8px}.tc-workspace .cart-h h2{font-size:15px}.tc-workspace .cart-h .order-no{font-size:11.5px}.tc-workspace .cart-items{padding:0 6px 4px}.tc-workspace .line,.tc-workspace .line-head{display:grid;grid-template-columns:22px minmax(0,1fr) 70px 92px 78px 26px;gap:8px;align-items:center}.tc-workspace .line-head{position:sticky;top:0;z-index:1;background:var(--surface);padding:6px 8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);font-weight:700;border-bottom:1px solid var(--border)}.tc-workspace .line .line-price,.tc-workspace .line .line-total,.tc-workspace .line-head .r{text-align:right}.tc-workspace .line-head .c{text-align:center}.tc-workspace .line{padding:4px 8px;border-radius:8px;border-bottom:1px solid var(--border);border-radius:0;animation-duration:.3s}.tc-workspace .line:nth-child(2n){background:color-mix(in srgb,var(--surface-2) 55%,transparent)}.tc-workspace .line:hover{background:var(--surface-3)}.tc-workspace .line-idx{font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.tc-workspace .line-item{display:flex;align-items:center;gap:8px;min-width:0}.tc-workspace .line .mini{width:26px;height:26px;border-radius:6px;flex-shrink:0}.tc-workspace .line .mini svg.lucide{width:14px;height:14px}.tc-workspace .line-name{font-size:13px}.tc-workspace .line-sub{font-size:10.5px;line-height:1.2}.tc-workspace .line-price{font-size:12.5px;color:var(--text-2)}.tc-workspace .line-total{font-size:13px}.tc-workspace .stepper{justify-self:center;border-radius:7px}.tc-workspace .stepper button{width:26px;height:26px;border-radius:7px}.tc-workspace .stepper button svg.lucide{width:13px;height:13px}.tc-workspace .stepper span{min-width:28px;font-size:12.5px}.tc-workspace .line-del{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;color:var(--text-3);transition:background .15s,color .15s}.tc-workspace .line-del:hover{background:var(--danger-soft);color:var(--danger)}.tc-workspace .line-del svg.lucide{width:14px;height:14px}.tc-workspace .empty-cart{gap:6px}.tc-workspace .empty-cart .ring{width:64px;height:64px}.tc-workspace .cart-foot{border-top:1px solid var(--border);padding:8px 10px 10px;display:flex;flex-direction:column;gap:8px;background:var(--surface)}.tc-workspace .totals{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:0}.tc-workspace .tcell{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:5px 8px;display:flex;flex-direction:column;gap:1px;min-width:0}.tc-workspace .tcell small{font-size:10.5px;color:var(--text-3);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-workspace .tcell .num{font-size:13px;font-weight:700;color:var(--text)}.tc-workspace .tcell.disc .num{color:var(--ok)}.tc-workspace .charge-row{display:flex;gap:8px;align-items:stretch}.tc-workspace .cart-actions{display:flex;gap:6px;padding:0;border:0}.tc-workspace .cart-actions .btn{height:52px;flex-direction:column;gap:2px;padding:0 10px;font-size:11px;min-width:56px}.tc-workspace .charge{flex:1;margin:0;height:52px;border-radius:12px;padding:0 16px;font-size:15px}.tc-workspace .charge .num{font-size:1.45rem;letter-spacing:-.03em}@media (max-width:1200px){.tc-workspace{--cart-w:clamp(400px,46vw,560px)}}@media (max-width:980px){.tc-workspace .cart{height:92dvh}.tc-workspace .cart-fab{height:50px;bottom:10px;left:10px;right:10px}.tc-workspace .grid-wrap{padding-bottom:72px}}@media (max-width:640px){.tc-workspace .topbar{padding:6px 10px;gap:6px}.tc-workspace .page{padding:10px;gap:10px}.tc-workspace .catalog{padding:8px 8px 0}.tc-workspace .product-grid{grid-template-columns:repeat(3,1fr);gap:6px}.tc-workspace .line,.tc-workspace .line-head{grid-template-columns:minmax(0,1fr) 84px 66px 24px;gap:6px}.tc-workspace .line .mini,.tc-workspace .line-head span:first-child,.tc-workspace .line-head span:nth-child(3),.tc-workspace .line-idx,.tc-workspace .line-price{display:none}.tc-workspace .totals{grid-template-columns:repeat(4,1fr);gap:4px}.tc-workspace .tcell{padding:4px 6px}.tc-workspace .tcell .num{font-size:12px}.tc-workspace .cart-h .order-no{display:none}.tc-workspace .cart-h h2{white-space:nowrap}.tc-workspace .counter-switch .cw{display:none}.tc-workspace .counter-switch .cn:before{content:"Till "}.tc-workspace .cart-actions .btn{min-width:48px;padding:0 6px}.tc-workspace .kpi-val{font-size:1.1rem}}@media (prefers-reduced-motion:reduce){.tc-workspace *,.tc-workspace :after,.tc-workspace :before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .tc-workspace .thumb{background:radial-gradient(120% 90% at 30% 20%,hsl(var(--h) 90% 85%),transparent 60%),hsl(var(--h) 55% 88%)}:root:not([data-theme=dark]) .tc-workspace .thumb svg.lucide{color:hsl(var(--h) 60% 30%)}}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tc-workspace{--bg:#0d0f12;--surface:#14171c;--surface-2:#1a1e24;--surface-3:#222730;--border:#272c35;--border-strong:#353b46;--text:#eceef1;--text-2:#a3a9b4;--text-3:#6d7380;--accent:#ffb020;--accent-ink:#11140a;--accent-text:#ffb020;--accent-soft:rgba(255,176,32,.12);--danger:#ff6b5b;--danger-soft:rgba(255,107,91,.12);--warn:#ffb547;--warn-soft:rgba(255,181,71,.13);--ok:#4fd69c;--ok-soft:rgba(79,214,156,.12);--info:#7aa7ff;--shadow:0 1px 0 rgba(255,255,255,.03) inset,0 12px 32px -12px rgba(0,0,0,.6);--shadow-lg:0 30px 80px -20px rgba(0,0,0,.75);color-scheme:dark}}.tc-workspace{--bg:var(--background);--text:var(--foreground);min-width:0;height:auto;overflow:visible;font-size:14px;line-height:normal}.merchant-content>main.tc-workspace{max-width:none;width:100%;padding:0;margin:0}.tc-workspace .mini{display:grid;place-items:center;flex-shrink:0}.tc-workspace .mini svg{width:14px;height:14px}.tc-workspace .btn{min-height:0}.tc-workspace .table-scroll{max-width:100%}.tc-workspace .page{min-width:0}.tc-workspace .page-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.tc-workspace .page-heading h1{font:800 1.15rem var(--font-display)}.tc-workspace .form-message{padding:10px 12px;border-radius:8px;background:var(--surface-2);font-size:12px;line-height:1.6}.tc-workspace .form-message.error{color:var(--danger)}.tc-workspace .set-row .input{max-width:240px}.tc-workspace .set-row label.lbl{min-width:0}.tc-workspace .set-row .lbl small{display:block}.tc-workspace .settings-actions{display:flex;align-items:center;justify-content:space-between;padding-top:10px;gap:12px}.tc-workspace.tc-modal{margin:auto;max-height:90dvh;overflow-y:auto;background:var(--surface);border-radius:14px}.tc-workspace.tc-workspace{--text-3:color-mix(in srgb,var(--foreground) 68%,var(--background))}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .tc-workspace{--text-3:color-mix(in srgb,var(--foreground) 68%,var(--background))}}.tc-workspace .chart-box svg{overflow:visible}.tc-workspace .recharts-wrapper:focus{outline:none}.tc-workspace .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tc-workspace .sr-only:focus-visible{position:static;width:auto;height:auto;clip:auto;margin:0;white-space:normal}.merchant-header-slot:empty{display:none}.merchant-shell:not(.merchant-shell) .merchant-store-control{flex:1;min-width:0}.merchant-shell .merchant-sidebar{padding:12px 8px;gap:10px}.merchant-shell .merchant-brand{padding:2px 8px 4px;gap:8px;font-size:1.05rem}.merchant-shell .merchant-brand>span{width:24px;height:24px;border-radius:7px;font-size:20px;box-shadow:0 0 0 3px #ffb02020}.merchant-shell .merchant-sidebar nav{gap:2px}.merchant-shell .merchant-sidebar nav a{padding:7px 10px;gap:10px;border-radius:9px;font-size:13px;line-height:20px;font-weight:600}.merchant-shell .merchant-sidebar nav a[aria-current=page]{font-weight:700}.merchant-shell .merchant-sidebar nav a[aria-current]:before{left:-8px;top:7px;bottom:7px}.merchant-shell .merchant-nav-label{padding:10px 10px 4px;font-size:10.5px}.merchant-shell .merchant-sidebar-note{padding:8px 10px;gap:10px;border-radius:10px}.merchant-shell .merchant-sidebar-note strong{font-size:13px}.merchant-shell .merchant-sidebar-note p{font-size:11px}.merchant-shell .merchant-header{min-height:50px;padding:7px 14px;gap:12px;justify-content:flex-start;background:var(--background)}.merchant-shell .merchant-header-slot{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.merchant-shell .merchant-header-slot .store-register-toolbar{min-height:0;padding:0;border:0;gap:12px;flex-wrap:nowrap}.merchant-shell .store-register-toolbar h1{flex-shrink:0;font-size:1.15rem;line-height:24px;letter-spacing:-.02em}.merchant-shell .store-order-tabs{width:max-content;max-width:100%;min-width:0;padding:3px;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:10px;scrollbar-width:none}.merchant-shell .store-order-tabs:empty{display:none}.merchant-shell .store-order-tabs::-webkit-scrollbar{display:none}.merchant-shell .store-order-tabs button{flex-shrink:0;min-height:26px;padding:5px 10px;border:0;border-radius:7px;font-size:12.5px;line-height:16px}.merchant-shell .store-order-tabs button[aria-selected=true]{box-shadow:none}.merchant-shell .store-order-highlight{border-radius:7px}.merchant-shell .store-order-tabs button span{margin-left:7px;padding:1px 6px;font-size:11px;border-radius:6px}.merchant-shell .store-register-toolbar>button{flex-shrink:0;width:28px;min-height:28px;height:28px;padding:0;border-radius:8px}.merchant-shell .merchant-store-control{flex:0 1 160px;min-width:0;max-width:160px}.merchant-shell .merchant-store-control select{width:100%;max-width:100%;min-height:28px;font-size:11.5px;overflow:hidden;text-overflow:ellipsis}.merchant-shell .merchant-store-control p{display:none}.merchant-shell .merchant-header-actions{flex-shrink:0;margin-left:auto;gap:8px}.merchant-shell .merchant-header-actions>button,.merchant-shell .merchant-header-actions>label,.merchant-shell .merchant-header-actions>label select,.merchant-shell .merchant-sound-control>button{min-height:32px;height:32px}.merchant-shell .merchant-header-actions>button{min-width:32px;width:32px;padding:0;border-radius:9px}.merchant-shell .merchant-header-actions>button span{display:none}.merchant-shell .merchant-header-actions>label{padding:0 8px;border-radius:9px}.merchant-shell .merchant-header-actions>label select{font-size:12px}.merchant-shell .merchant-sound-control>button{padding:0}.merchant-shell .merchant-sound-control>button:first-child{width:32px;min-width:32px;border-radius:9px 0 0 9px}.merchant-shell .merchant-sound-control>button:last-child{width:20px;min-width:20px;border-radius:0 9px 9px 0}.merchant-shell{height:100dvh;overflow:hidden}.merchant-shell .merchant-body{min-height:0;height:100dvh}.merchant-shell .merchant-content{min-height:0;overflow:auto;overscroll-behavior:contain}.merchant-shell-pos .merchant-content{overflow:hidden}.merchant-shell .merchant-sidebar{min-height:0}.merchant-shell .merchant-sidebar nav{flex:1;overflow-y:auto}.merchant-nav-badge{margin-left:auto;padding:0 6px;min-width:20px;height:20px;display:grid;place-items:center;border-radius:20px;background:#d23b2b;color:white;font:700 11px var(--font-mono)}.merchant-cashier{display:flex;align-items:center;gap:7px;padding:2px 9px 2px 2px;border:1px solid var(--border);border-radius:22px;background:var(--surface);font-size:12.5px;white-space:nowrap;max-width:150px}.merchant-cashier>span:last-child{overflow:hidden;text-overflow:ellipsis}.merchant-avatar{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#7aa7ff,#b18cff);color:#0b0d12;font-weight:800;font-size:11px}@media(min-width:1024px){.merchant-shell{grid-template-columns:188px minmax(0,1fr)}.merchant-shell .merchant-header{flex-shrink:0;flex-wrap:nowrap}}@media(max-width:1200px){.merchant-cashier>span:last-child{display:none}.merchant-cashier{padding:2px}}@media(max-width:1023px){.merchant-shell .merchant-header{flex-wrap:wrap;padding:6px 10px;gap:6px}.merchant-shell .merchant-menu-toggle{width:32px;height:32px;border-radius:9px}.merchant-shell .merchant-header-slot{flex:1;min-width:100px}.merchant-shell .merchant-header-actions,.merchant-shell .merchant-header-slot .store-register-toolbar{gap:6px}.merchant-shell .merchant-header-actions>label{padding:0 6px}.merchant-shell .merchant-header-actions>label>svg{display:none}.merchant-shell .merchant-store-control{order:3;flex:0 0 100%;width:100%;max-width:none;min-height:28px}.merchant-shell .merchant-store-control select{min-height:28px;height:28px;font-size:11.5px}.merchant-cashier{display:none}}.tc-product-stock.is-low{color:#b26b00}.tc-workspace .tc-order-link{padding:0;height:auto;min-height:0;display:inline;font:inherit;background:none;color:inherit}.tc-workspace .tc-refund-form{display:flex;flex-direction:column;gap:12px}.tc-workspace textarea.input{height:auto;min-height:80px;padding:10px 14px}.tc-workspace .tc-refund-confirm{display:flex;gap:8px;align-items:flex-start}.tc-workspace.tc-modal{height:auto;min-height:0}.tc-workspace.tc-modal .modal-b:has(.receipt){align-items:center}.tc-workspace.tc-discount-modal,.tc-workspace.tc-held-modal{height:auto;min-height:0;overflow-y:auto;padding:20px}.tc-workspace.tc-discount-modal,.tc-workspace.tc-held-modal{width:min(560px,calc(100% - 2rem))}.tc-held-list{display:flex;flex-direction:column;gap:8px}.tc-held-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.tc-held-info{flex:1;min-width:0}.tc-held-info strong{font-size:13px}.tc-held-info .faint{margin-left:5px;font-size:11px}.tc-held-info p{margin:4px 0 0;color:var(--text-2);font-size:12px}.tc-held-card>button{flex-shrink:0;min-height:34px;padding:0 12px;border-radius:9px;background:var(--accent);color:var(--accent-ink);font-size:12px;font-weight:700}.tc-held-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:28px 12px;color:var(--text-2);text-align:center}.tc-held-empty strong{color:var(--text);font-size:14px}.tc-held-empty span{max-width:300px;font-size:12px;line-height:1.5}.tc-discount-modal>.modal-b{margin:0;padding:0 0 12px;color:var(--text-2);font-size:13px;line-height:1.5}.tc-discount-modal .tc-discount-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tc-discount-modal .tc-discount-rate{font-size:1.35rem;font-weight:700}.tc-discount-modal .method small{font-size:11px;color:var(--text-3)}.tc-discount-modal .method:disabled{cursor:wait;opacity:.65}.tc-workspace.tc-payment-modal{width:min(860px,calc(100% - 2rem));max-width:860px;height:auto;min-height:0;max-height:calc(100dvh - 32px);overflow-y:auto;padding:0;border-radius:20px;background:var(--surface);color:var(--text)}.tc-payment-modal .pay{min-height:0}.tc-payment-modal .pay-summary{min-width:0;border-radius:20px 0 0 20px}.tc-payment-modal .pay-main{min-width:0}.tc-payment-modal .method{min-width:0;min-height:76px}.tc-payment-modal .method:disabled{cursor:not-allowed;opacity:.56}.tc-payment-modal .method small{font-size:10px;color:var(--text-3)}.tc-payment-modal .tc-payment-context{font-size:12px}.tc-payment-modal .pay-lines{max-height:260px}.tc-payment-modal .tc-payment-back{align-self:flex-start}.tc-payment-modal .tc-cash-entry{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:10px 14px}.tc-payment-modal .tc-cash-entry>span:first-child{font-size:12px;color:var(--text-2)}.tc-payment-modal .tc-cash-entry input{width:100%;height:32px;padding:0 28px 0 0;border:0;background:transparent;font:700 1.35rem var(--font-mono);outline:none}.tc-payment-modal .tc-cash-entry input:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px;border-radius:5px}.tc-payment-modal .tc-currency{position:absolute;right:16px;bottom:16px;font:600 1.1rem var(--font-mono);color:var(--text-3)}.tc-payment-modal .tc-cash-complete{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;border:0;border-radius:11px;background:var(--accent);color:var(--accent-ink);font-size:14px;font-weight:800}.tc-payment-modal .tc-cash-complete:disabled{cursor:not-allowed;opacity:.48}.tc-payment-modal .tc-payment-note{margin:0;color:var(--text-3);font-size:11px;line-height:1.45}.tc-held-trigger{flex-shrink:0;min-height:28px;height:28px;padding:0 8px;border-radius:8px;color:var(--muted-foreground);font-size:11px}.tc-held-trigger:hover{color:var(--foreground)}@media(max-width:640px){.tc-workspace.tc-payment-modal{width:100%;max-width:none;max-height:94dvh;border-radius:20px 20px 0 0}.tc-payment-modal .pay-summary{padding:18px;border-radius:20px 20px 0 0}.tc-payment-modal .pay-main{padding:14px;gap:10px}.tc-payment-modal .methods{gap:6px}.tc-payment-modal .method{padding:9px 4px;min-height:68px;font-size:11px}.tc-payment-modal .key{height:44px}.tc-workspace.tc-discount-modal,.tc-workspace.tc-held-modal{width:calc(100% - 24px);padding:16px}.tc-discount-modal .tc-discount-options{gap:7px}.tc-discount-modal .method{padding:10px 5px}.tc-workspace .set-row{align-items:flex-start;gap:10px}.tc-workspace .set-row .input{max-width:48%}.tc-workspace .sound-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.merchant-clock{font:12.5px var(--font-mono);color:var(--muted-foreground);white-space:nowrap;padding:0 8px}@media(max-width:1200px){.merchant-clock{display:none}}@media(max-width:1023px){.merchant-shell-pos .merchant-content{overflow-y:auto;overflow-x:hidden}.merchant-shell-pos .store-register{height:auto;min-height:100%}}.merchant-content>.tc-workspace>.page{animation:tc-viewIn .45s var(--till-ease)}@media(prefers-reduced-motion:reduce){.merchant-content>.tc-workspace>.page{animation:none}}.merchant-counter-switch{display:flex;flex-shrink:1;min-width:0;padding:3px;gap:4px;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow-x:auto;scrollbar-width:none}.merchant-counter-switch button{min-height:26px;padding:5px 10px;border-radius:7px;font-size:12.5px;line-height:16px;white-space:nowrap;color:var(--muted-foreground)}.merchant-counter-switch button[aria-selected=true]{background:#ffb020;color:#11140a;font-weight:600}.merchant-counter-switch.is-mobile{display:none}@media(max-width:1023px){.merchant-counter-switch.is-desktop{display:none}.merchant-counter-switch.is-mobile{display:flex;max-width:45%;flex-shrink:0}.merchant-shell .merchant-store-control{display:flex;align-items:center;gap:8px}.merchant-shell .merchant-store-control select{flex:1;min-width:0}.merchant-counter-switch button{padding:4px 7px;font-size:11.5px}}