body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:#f5f7fb}.login-wrap{position:relative;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#dbeafe,#f0f9ff 40%,#eef2ff)}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.login-bg img{width:70%;max-width:900px;opacity:.05}.login-card{width:100%;max-width:380px;padding:28px 26px;background:#fff;border-radius:16px;border:1px solid rgba(0,0,0,.05);box-shadow:0 18px 40px #0000001f;animation:fadeIn .35s ease}.login-top{text-align:center;margin-bottom:18px}.login-logo{width:160px;max-width:100%}.login-form{display:flex;flex-direction:column}.label{margin-bottom:4px;font-size:12px;font-weight:600;color:#555}.input{width:100%;height:42px;margin-bottom:12px;padding:0 12px;font-size:14px;border:1px solid #ddd;border-radius:8px;transition:border .2s ease,box-shadow .2s ease}.input:focus{outline:none;border-color:#1f7ae0;box-shadow:0 0 0 2px #1f7ae026}.btn-primary{width:100%;height:42px;border:none;border-radius:8px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;background:linear-gradient(180deg,#1f7ae0,#1556a6);transition:transform .15s ease,opacity .2s ease}.btn-primary:hover:not(:disabled){opacity:.95;transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error{margin-bottom:10px;padding:8px 10px;font-size:12px;font-weight:600;color:#b00020;background:#ffe5e5;border-radius:6px}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.shell{height:100vh;display:grid;grid-template-columns:210px 1fr;background:#f5f7fb;overflow:hidden}.side{display:flex;flex-direction:column;gap:10px;padding:10px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-right:1px solid rgba(15,23,42,.08);min-height:100vh;overflow-y:auto}.sideTop{padding:14px 10px;text-align:center;background:#fff;border:1px solid rgba(37,99,235,.1);border-radius:18px;box-shadow:0 8px 20px #0f172a0d,0 2px 8px #2563eb0a}.brandBox{display:flex;flex-direction:column;align-items:center;gap:10px}.sideLogo{width:78px;height:78px;padding:6px;object-fit:contain;flex-shrink:0;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(37,99,235,.12);border-radius:16px;box-shadow:0 8px 18px #2563eb14,0 2px 6px #0f172a0a}.brandText{display:flex;flex-direction:column;align-items:center}.appName{margin:2px 0 0;color:#0f172a;font-size:14px;font-weight:900;line-height:1.2;letter-spacing:.2px;text-align:center}.appSubTitle{margin-top:3px;color:#667085;font-size:11px;font-weight:700;line-height:1.3;text-align:center}.appSub{margin-top:8px;color:#64748b;font-size:11px;font-weight:700;line-height:1.35;text-align:center}.adminBadge{display:inline-flex;align-items:center;justify-content:center;margin-top:7px;padding:4px 9px;border-radius:999px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:10px;font-weight:800;letter-spacing:.2px;box-shadow:0 6px 14px #2563eb2e}.nav{display:flex;flex-direction:column;gap:6px}.navLink{display:flex;align-items:center;min-height:42px;padding:0 12px;border:1px solid transparent;border-radius:12px;color:#111827;text-decoration:none;font-size:13px;font-weight:800;transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.navLink:hover{background:#2563eb14;color:#1d4ed8;border-color:#2563eb1a;transform:translate(2px)}.navLink.active{color:#1d4ed8;background:#2563eb1f;border-color:#2563eb33;box-shadow:inset 0 0 0 1px #2563eb0a}.logoutBtn{width:100%;margin-top:auto;min-height:42px;padding:0 12px;border:1px solid rgba(15,23,42,.08);border-radius:12px;background:#fff;color:#111827;font-size:13px;font-weight:900;cursor:pointer;transition:background .18s ease,transform .18s ease,box-shadow .18s ease,border-color .18s ease;-webkit-tap-highlight-color:transparent}.logoutBtn:hover{background:#eef2f7;border-color:#0f172a1f;transform:translateY(-1px);box-shadow:0 6px 14px #0f172a0f}.content{height:100vh;overflow:auto;padding:10px;min-width:0}@media (max-width: 900px){.shell{grid-template-columns:78px 1fr}.side{gap:8px;padding:8px 6px}.sideTop{padding:8px 4px;border-radius:14px}.sideLogo{width:50px;height:50px;padding:4px;border-radius:10px}.appName,.appSub,.appSubTitle,.adminBadge{display:none}.nav{gap:5px}.navLink{justify-content:center;min-height:40px;padding:0 4px;font-size:11px;text-align:center}.logoutBtn{min-height:40px;padding:0 4px;font-size:11px}.content{padding:8px}}@media (max-width: 640px){.shell{grid-template-columns:64px 1fr}.side{padding:6px 4px}.sideTop{padding:6px 2px;border-radius:12px}.sideLogo{width:42px;height:42px;padding:3px}.navLink,.logoutBtn{min-height:38px;font-size:10px;border-radius:10px}.content{padding:6px}}.shell{grid-template-columns:175px 1fr}.side,.content{padding:6px}:root{--bg: #f6f7fb;--card: #ffffff;--card-soft: #f8fafc;--surface: #f2f4f7;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--primary-dark: #1d4ed8;--danger: #ef4444;--danger-dark: #dc2626;--warning: #f59e0b;--warning-dark: #d97706;--success: #22c55e;--success-dark: #16a34a;--orange: #f59e0b;--violet: #6366f1;--dark: #0b1220;--shadow-sm: 0 6px 18px rgba(15, 23, 42, .05);--shadow-md: 0 10px 30px rgba(15, 23, 42, .06);--shadow-lg: 0 14px 28px rgba(15, 23, 42, .1);--radius: 18px;--radius-md: 14px;--radius-sm: 12px;--radius-xs: 10px;--space-1: 6px;--space-2: 8px;--space-3: 10px;--space-4: 12px;--space-5: 16px;--space-6: 20px;--space-7: 24px}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,input,select,textarea{outline:none}button{border:0}.posRoot{display:flex;flex-direction:column;min-height:100vh}.posTopbar{display:grid;grid-template-columns:minmax(0,1fr) 420px;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);background:var(--card);border-bottom:1px solid var(--border)}.brandCenter{min-width:0}.restaurantBrand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.restaurantBrandTop{display:flex;align-items:center;gap:var(--space-5);min-width:0}.restaurantLogo{width:60px;height:60px;object-fit:contain;flex-shrink:0;border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.restaurantText{display:flex;flex-direction:column;min-width:0}.shopName{font-size:24px;font-weight:900;line-height:1.1;letter-spacing:.3px}.shopTag{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.2px}.shopSub{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:13px;font-weight:700}.dot{opacity:.55}.chip{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border:1px solid rgba(37,99,235,.16);border-radius:999px;background:#2563eb1a;color:var(--primary);font-size:12px;font-weight:800}.muted{color:var(--muted)}.topMsg{margin-top:var(--space-2);color:var(--primary);font-size:12px;font-weight:800}.brandRight{display:flex;flex-direction:column;gap:var(--space-3)}.topRow{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3)}.searchWrap,.select,.seg,.dtBox,.disc,.invoiceSearch input,.field input,.field select,.addressBox,.mField input,.mField select{border:1px solid var(--border);background:var(--surface);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.searchWrap:focus-within,.select:focus,.disc:focus,.invoiceSearch input:focus,.field input:focus,.field select:focus,.addressBox:focus,.mField input:focus,.mField select:focus{border-color:#2563eb59;box-shadow:0 0 0 3px #2563eb1f;background:#fff}.searchWrap{display:flex;align-items:center;gap:var(--space-2);flex:1;max-width:270px;min-height:46px;padding:0 14px;border-radius:var(--radius-md)}.searchIcon{flex-shrink:0;opacity:.7}.search{width:100%;border:0;background:transparent;color:var(--text);font-weight:700}.search::placeholder,.invoiceSearch input::placeholder,.addressBox::placeholder{color:#98a2b3}.select{min-height:46px;padding:0 14px;border-radius:var(--radius-md);color:var(--text);font-weight:800}.seg{display:flex;overflow:hidden;border-radius:var(--radius-md)}.segBtn{min-height:46px;padding:0 16px;background:transparent;font-weight:800;color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease}.segPlaceholder{width:180px;height:46px;border-radius:var(--radius-md);background:transparent}.dtBox{min-width:160px;padding:10px 14px;border-radius:var(--radius-md);background:var(--card);text-align:right}.dtDate{color:var(--muted);font-size:12px;font-weight:800}.dtTime{margin-top:2px;font-size:16px;font-weight:900;color:var(--text)}.renewalBar{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-sm)}.renewalBar.warn{border-color:#f59e0b3d;background:#fff7ed}.renewalBar.expired{border-color:#ef44443d;background:#fef2f2}.renewalTop{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.renewalLabel{font-size:12px;color:var(--muted);font-weight:800}.renewalDate{font-size:14px;font-weight:900;color:var(--text)}.renewalAlert{font-size:12px;font-weight:800;color:#b45309}.renewalBar.expired .renewalAlert{color:#b91c1c}.posGrid{flex:1;min-height:0;display:grid;grid-template-columns:320px minmax(0,1fr) 420px;gap:14px;padding:14px}.leftCol,.midCol,.rightCol{min-height:0}.card{padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-md)}.cardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:4px 2px 12px}.cardTitle{font-size:15px;font-weight:900;letter-spacing:.1px}.cardSub{margin-top:2px;color:var(--muted);font-size:12px;font-weight:700}.empty{padding:18px 8px;color:var(--muted);font-size:13px;font-weight:700;text-align:center}.btn,.iconBtn,.tableBtn,.catBtn,.itemBtn,.itemEditBtn,.iconSquare,.modalX,.payBtn{transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease,opacity .15s ease,filter .15s ease}.btn{min-height:46px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--card);color:var(--text);font-weight:800;cursor:pointer}.btn:hover,.iconBtn:hover,.tableBtn:hover,.catBtn:hover,.itemBtn:hover,.itemEditBtn:hover,.iconSquare:hover,.modalX:hover{transform:translateY(-1px)}.btn:hover{box-shadow:var(--shadow-sm)}.btn:disabled,.payBtn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none;filter:none}.btn.primary{border-color:var(--primary-dark);background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:#fff}.btn.danger{border-color:var(--danger-dark);background:linear-gradient(135deg,var(--danger),var(--danger-dark));color:#fff}.btn.warning{border-color:var(--warning-dark);background:linear-gradient(135deg,var(--warning),var(--warning-dark));color:#111827}.btn.success{border-color:var(--success-dark);background:linear-gradient(135deg,var(--success),var(--success-dark));color:#fff}.btn.orange{border-color:#f59e0b47;background:#f59e0b2e;color:#92400e}.btn.violet{border-color:#6366f147;background:#6366f129;color:#3730a3}.btn.ghost{background:var(--surface)}.btn.dark{border-color:#0b1220;background:linear-gradient(135deg,#0b1220,#111827);color:#fff}.btn.full{grid-column:1 / -1}.iconBtn{min-height:42px;padding:8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);font-weight:800;cursor:pointer}.tableGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.tableBtn{min-height:54px;padding:12px 0;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font-weight:900;cursor:pointer}.tableBtn.selected{border-color:#2563eb59;background:#2563eb1a;color:var(--primary);box-shadow:inset 0 0 0 1px #2563eb14}.catBtn{min-height:48px;padding:12px 10px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--text);font-weight:800;text-align:center;cursor:pointer}.catBtn.active{border-color:#2563eb59;background:#2563eb1a;color:var(--primary)}.actionGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.field{display:flex;flex-direction:column;gap:6px;color:var(--text);font-size:12px;font-weight:700}.field span{color:var(--muted)}.field input,.field select{width:100%;height:40px;padding:0 12px;border-radius:10px;background:#fff}.field.full{grid-column:1 / -1}.addressBox{width:100%;min-height:76px;resize:none;padding:10px 12px;border-radius:10px;background:#fff;font-weight:700}.miniTitle{grid-column:1 / -1;margin-top:4px;padding-top:8px;border-top:1px dashed #e5e7eb;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.2px}.menuCard,.invoiceCard{display:flex;flex-direction:column;height:100%;min-height:0}.hintChip{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:800}.menuStats{display:flex;flex-wrap:wrap;gap:16px;margin:0 2px 12px;font-size:13px;font-weight:800}.menuPager{display:flex;align-items:center;gap:10px;margin-bottom:12px}.menuPagerText{font-size:14px;font-weight:800}.itemsGrid{display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));align-content:start;gap:12px;flex:1;min-height:0;overflow:auto;padding:6px 4px}.itemWrap{position:relative;width:100%}.itemBtn{display:grid;grid-template-rows:auto auto;align-content:start;width:100%;min-height:96px;padding:12px;border:1px solid var(--border);border-radius:16px;background:#fff;text-align:left;cursor:pointer}.itemBtn:hover{box-shadow:var(--shadow-lg)}.itemBtn:active{transform:scale(.99)}.itemTop{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-right:38px}.itemName{font-size:14px;font-weight:900;line-height:1.25;color:var(--text)}.itemPrice{margin-top:8px;color:var(--muted);font-size:13px;font-weight:800}.pill{white-space:nowrap;padding:4px 8px;border:1px solid rgba(59,130,246,.22);border-radius:999px;background:#3b82f61f;color:#1d4ed8;font-size:11px;font-weight:800}.itemEditBtn{position:absolute;top:10px;right:10px;z-index:5;display:grid;place-items:center;width:32px;height:32px;border:1px solid rgba(15,23,42,.14);border-radius:10px;background:#fff;box-shadow:0 8px 16px #0f172a1a;font-size:14px;font-weight:800;line-height:1;cursor:pointer}.itemEditBtn:hover{background:var(--surface)}.invoiceHeader{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:10px;margin-bottom:10px;padding:6px 4px 12px;border-bottom:1px solid var(--border)}.invoiceLeft{display:flex;align-items:baseline;gap:10px}.invoiceTitle{font-size:16px;font-weight:900}.invoiceNo{color:var(--muted);font-weight:800}.invoiceNav{display:flex;justify-content:flex-end;gap:8px}.invoiceSearch{grid-column:1 / -1;display:flex;gap:8px}.invoiceSearch input{flex:1;min-height:46px;padding:0 14px;border-radius:14px;font-weight:800}.cartList{display:grid;gap:10px;flex:1;min-height:0;overflow:auto;padding:6px 4px}.cartRow{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--card-soft)}.cartLeft{min-width:0}.cartItemName{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;line-height:1.2}.cartSub{margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}.cartControls{display:flex;align-items:center;gap:6px}.cartTotal{min-width:86px;white-space:nowrap;text-align:right;font-weight:900}.iconSquare{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);font-size:16px;font-weight:800;line-height:1;cursor:pointer}.iconSquare:hover{background:var(--bg)}.iconSquare.trash{border-color:#ef444459;background:#fff5f5;color:#ef4444}.iconSquare.trash:hover{background:#fee2e2}.qtyPill{display:grid;place-items:center;min-width:34px;height:34px;border:1px solid #dbe6ff;border-radius:10px;background:#f3f6ff;color:var(--text);font-weight:800}.checkoutBox{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.totals{display:grid;gap:10px}.line{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:800}.line.total b{font-size:18px}.disc{width:140px;min-height:42px;padding:0 12px;border-radius:14px;text-align:right;font-weight:800}.invoiceTools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.invoiceTools .btn.primary{border-color:#1e3a8a;background:linear-gradient(135deg,#1d4ed8,#1e3a8a);color:#fff;box-shadow:0 12px 24px #1e3a8a47}.invoiceTools .btn.ghost{border-color:#020617;background:linear-gradient(135deg,#0f172a,#020617);color:#fff;box-shadow:0 12px 24px #0206174d}.payGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.payBtn{min-height:50px;padding:14px 12px;border:1px solid transparent;border-radius:16px;color:#fff;font-weight:900;letter-spacing:.3px;cursor:pointer}.payBtn:hover{transform:translateY(-2px);filter:brightness(1.03)}.payBtn.cash{border-color:#14532d;background:linear-gradient(135deg,#166534,#14532d);box-shadow:0 12px 24px #14532d4d}.payBtn.card{border-color:#1e3a8a;background:linear-gradient(135deg,#1d4ed8,#1e3a8a);box-shadow:0 12px 24px #1e3a8a4d}.payBtn.multi{border-color:#92400e;background:linear-gradient(135deg,#b45309,#92400e);box-shadow:0 12px 24px #92400e4d}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;padding:18px;background:#02061773;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modalCard{width:min(520px,100%);overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:0 22px 70px #0f172a40}.modalHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid var(--border)}.modalTitle{font-size:16px;font-weight:900}.modalSub{margin-top:4px;color:var(--muted);font-size:12px;font-weight:700}.modalX{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-weight:800;cursor:pointer}.modalBody{display:grid;gap:12px;padding:14px 16px}.mField{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.mField input,.mField select{height:42px;padding:0 12px;border-radius:var(--radius-sm);background:#fff;color:var(--text);font-weight:800}.modalError{padding:10px 12px;border:1px solid rgba(239,68,68,.25);border-radius:var(--radius-sm);background:#ef44441a;color:#991b1b;font-weight:800}.modalActions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px 16px;border-top:1px solid var(--border)}.modalRight{display:flex;gap:10px}.printOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200000;display:flex;align-items:flex-start;justify-content:center;padding:18px;background:#0f172ac2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.printSheet{width:min(420px,96vw);max-height:96vh;overflow:auto;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 24px 80px #0000004d}.printTop{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(15,23,42,.08);background:#fff}@media print{html,body,#root{height:auto!important;overflow:visible!important;background:#fff!important}body{margin:0!important;padding:0!important}body *{visibility:hidden!important}.printOverlay,.printOverlay *{visibility:visible!important}.printTop,.posTopbar,.posGrid,.modalBackdrop,.pmBackdrop{display:none!important}.printOverlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;display:block!important;margin:0!important;padding:0!important;background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.printSheet{width:auto!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}@page{size:80mm auto;margin:0}}@media (max-width: 1200px){.posTopbar{grid-template-columns:minmax(0,1fr) 380px}.posGrid{grid-template-columns:300px minmax(0,1fr) 380px}.itemsGrid{grid-template-columns:repeat(2,minmax(200px,1fr))}}@media (max-width: 992px){.posTopbar{grid-template-columns:1fr}.restaurantBrand,.restaurantText{align-items:flex-start;text-align:left}.restaurantBrandTop,.shopSub{justify-content:flex-start}.brandRight{width:100%}.topRow{justify-content:stretch;flex-wrap:wrap}.searchWrap{max-width:none}.renewalTop{flex-wrap:wrap}.posGrid{grid-template-columns:1fr}.leftCol,.midCol,.rightCol{min-height:auto}.itemsGrid{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media (max-width: 640px){.posTopbar{padding:14px}.shopName{font-size:20px}.restaurantLogo{width:52px;height:52px}.itemsGrid{grid-template-columns:1fr}.tableGrid{grid-template-columns:repeat(4,1fr)}.catGrid,.actionGrid,.invoiceTools,.payGrid,.formGrid,.cartRow{grid-template-columns:1fr}.cartItemName{max-width:none}.invoiceHeader{grid-template-columns:1fr}.invoiceNav{justify-content:flex-start}.menuStats{flex-direction:column;gap:6px}.menuPager{flex-wrap:wrap}.printSheet{width:100%;max-height:100vh;border-radius:0}}.pmBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110000;display:grid;place-items:center;padding:20px;background:#0f172a99;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.pmCard{width:min(460px,96vw);overflow:hidden;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 24px 80px #0000004d}.pmHead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 12px;border-bottom:1px solid rgba(15,23,42,.08);background:#fff}.pmTitle{color:#0f172a;font-size:16px;font-weight:900}.pmSub{margin-top:4px;color:#475569;font-size:13px;font-weight:700}.pmX{width:36px;height:36px;border:1px solid rgba(15,23,42,.1);border-radius:12px;background:#f8fafc;font-weight:900;cursor:pointer}.pmBody{display:grid;gap:12px;padding:16px;background:#fff}.pmField{display:grid;gap:6px}.pmField span{color:#334155;font-size:13px;font-weight:800}.pmField input{width:100%;height:42px;padding:0 12px;border:1px solid #dbe2ea;border-radius:12px;background:#fff;font-weight:700;outline:none}.pmField input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.pmGrid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pmRow{display:flex;align-items:center;justify-content:space-between;gap:12px;overflow:hidden;padding:12px 14px;border:1px dashed #cbd5e1;border-radius:12px;background:#fff;font-weight:800}.pmRow span,.pmRow b{min-width:0;white-space:nowrap}.pmActions{display:flex;justify-content:flex-end;gap:10px;padding:14px 16px 16px;border-top:1px solid rgba(15,23,42,.08);background:#fff}.pmBtn{min-width:120px;height:40px;border:1px solid transparent;border-radius:12px;font-weight:800;cursor:pointer}.pmBtn.ghost{border-color:#dbe2ea;background:#fff;color:#0f172a}.pmBtn.primary{border-color:#2563eb;background:#2563eb;color:#fff}.pmBtn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 520px){.pmGrid2{grid-template-columns:1fr}.pmActions{flex-direction:column}.pmBtn{width:100%}}.invWrap{display:flex;justify-content:center;align-items:flex-start;margin:0;padding:0;background:#fff}.invPaper{width:70mm;max-width:70mm;margin:0 auto;padding:3mm 4mm 4mm;background:#fff;color:#000;font-family:Courier New,Consolas,monospace;font-size:12px;line-height:1.35;font-weight:900;box-sizing:border-box;overflow:hidden;text-rendering:geometricPrecision;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invHead{text-align:center}.invLogo{display:block;width:58px;height:58px;margin:0 auto 6px;object-fit:contain;filter:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.invName{margin:2px 0 0;font-size:16px;font-weight:900;color:#000;letter-spacing:.3px;text-transform:uppercase;line-height:1.15}.invSub{margin:1px 0 0;font-size:10px;font-weight:900;color:#000;line-height:1.25}.invTitle{margin:4px 0 0;font-size:13px;font-weight:900;color:#000;letter-spacing:.8px;text-transform:uppercase}.invPayTag{margin:2px 0 0;font-size:10px;font-weight:900;color:#000}.invDash{margin:5px 0;border-top:1px dashed #000000}.invDash.thin{margin:3px 0;border-top:1px dashed #000000}.invMeta{margin-top:2px}.metaRow{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin:2px 0}.metaRow span,.metaRow b{font-size:11px;font-weight:900;color:#000}.metaRow span{flex:1;text-align:left}.metaRow b{flex-shrink:0;text-align:right}.metaRow.grand span,.metaRow.grand b{font-size:12px;font-weight:900}.tblHead,.tblRow{display:grid;grid-template-columns:minmax(0,1fr) 26px 44px 48px;column-gap:4px;align-items:start}.tblHead{font-size:11px;font-weight:900;margin-bottom:2px}.tblBody{display:grid;row-gap:3px}.tblHead>*,.tblRow>*{min-width:0;overflow-wrap:break-word;word-break:break-word}.c1{text-align:left;padding-left:1px}.c2,.c3,.c4{text-align:right}.invItemName{font-size:11px;font-weight:900;line-height:1.25}.invNote{margin-top:1px;font-size:9px;font-weight:900;line-height:1.2}.invPayTitle{text-align:center;font-size:11px;font-weight:900;margin:2px 0}.invFooter{text-align:center;font-size:10px;font-weight:900;margin-top:4px;line-height:1.3}@page{size:80mm auto;margin:0}@media print{html,body{margin:0!important;padding:0!important;background:#fff!important}body *{visibility:hidden!important}.printOverlay,.printOverlay *{visibility:visible!important}.printOverlay{position:absolute;top:0;left:0;width:80mm;margin:0;padding:0;background:#fff}.invWrap{display:block;margin:0;padding:0}.invPaper{width:70mm!important;max-width:70mm!important;margin:0 auto!important;padding:3mm 4mm 4mm!important;overflow:hidden!important;box-sizing:border-box!important}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--danger: #ef4444;--success: #22c55e;--warning: #f59e0b;--shadow-sm: 0 6px 18px rgba(15, 23, 42, .06);--shadow-md: 0 14px 34px rgba(15, 23, 42, .1);--ring: 0 0 0 3px rgba(37, 99, 235, .2);--r-xl: 18px;--r-lg: 16px;--r-md: 12px;--gap: 14px;--pad: 14px;--chip: #f2f4f7}.tablesRoot{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:var(--pad);background:var(--bg);color:var(--text)}.tablesHeader{display:flex;justify-content:space-between;align-items:center;gap:var(--gap);padding:14px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm)}.seg{display:flex;overflow:hidden;padding:3px;background:var(--chip);border:1px solid var(--border);border-radius:999px}.segBtn{border:0;background:transparent;padding:10px 14px;border-radius:999px;font-weight:1000;cursor:pointer;transition:background .14s ease,transform .14s ease}.segBtn:hover{transform:translateY(-1px)}.segBtn.active{background:var(--card);box-shadow:0 6px 14px #0f172a0f}.segBtn:focus-visible{outline:none;box-shadow:var(--ring)}.searchWrap{display:flex;align-items:center;gap:8px;min-width:240px;padding:10px 12px;background:var(--chip);border:1px solid var(--border);border-radius:999px}.searchIcon{opacity:.65;font-weight:900}.tablesGridWrap{flex:1;min-height:0;margin-top:var(--gap);display:grid;grid-template-columns:1fr 360px;gap:var(--gap)}.tablesLeft{min-height:0;display:flex;flex-direction:column}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--gap);padding:10px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm)}.fBtn{border:1px solid var(--border);background:var(--chip);padding:10px 14px;border-radius:999px;font-weight:1000;cursor:pointer;transition:transform .14s ease,background .14s ease,border-color .14s ease}.fBtn:hover{transform:translateY(-1px)}.fBtn.active{color:var(--primary);background:#2563eb1a;border-color:#2563eb66}.fBtn:focus-visible{outline:none;box-shadow:var(--ring)}.tablesGrid{flex:1;min-height:0;overflow:auto;align-content:start;display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:12px;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm)}.tableCard{min-height:132px;padding:16px;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:var(--r-xl);background:#fff;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.tableCard:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.tableCard:focus-visible{outline:none;box-shadow:var(--ring),var(--shadow-md)}.tableCard.selected{border-color:#2563eb8c;box-shadow:0 0 0 3px #2563eb1f,var(--shadow-md)}.tableCard.free{background:#22c55e14;border-color:#22c55e33}.tableCard.running{background:#f59e0b1a;border-color:#f59e0b3d}.tableCard.billed{background:#ef444414;border-color:#ef444438}.tableCard.busyRed{border-color:var(--danger)!important;background:#ef44441a!important}.tableTop{display:flex;justify-content:space-between;align-items:center;gap:10px}.tableNo{font-size:16px;font-weight:1000;letter-spacing:.2px}.badge{white-space:nowrap;padding:5px 10px;font-size:11px;font-weight:1000;border:1px solid var(--border);border-radius:999px;background:var(--chip)}.badge.bFree{color:#166534;background:#22c55e1f;border-color:#22c55e40}.badge.bBill{color:#991b1b;background:#ef44441f;border-color:#ef444447}.tableMeta{margin-top:12px;display:grid;gap:10px}.metaRow{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-weight:900}.metaRow b{color:var(--text)}.sidePanel{height:100%;min-height:0;overflow:auto;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow-sm);opacity:.7;transition:opacity .16s ease}.xBtn{border:1px solid var(--border);background:var(--chip);border-radius:12px;padding:10px 12px;font-weight:1000;cursor:pointer;transition:transform .14s ease}.xBtn:hover{transform:translateY(-1px)}.xBtn:focus-visible{outline:none;box-shadow:var(--ring)}.panelInfo{display:grid;gap:10px;padding:10px 6px}.infoRow{display:flex;justify-content:space-between;align-items:center;font-weight:1000}.panelActions{display:grid;gap:10px;margin-top:10px;padding:0 6px}.btn{border:1px solid var(--border);background:#fff;padding:12px 14px;border-radius:14px;font-weight:1000;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f172a1a}.tablesGrid::-webkit-scrollbar,.sidePanel::-webkit-scrollbar{width:10px}.tablesGrid::-webkit-scrollbar-thumb,.sidePanel::-webkit-scrollbar-thumb{background:#0f172a26;border-radius:999px}.tablesGrid::-webkit-scrollbar-track,.sidePanel::-webkit-scrollbar-track{background:transparent}@media (max-width: 1200px){.tablesGridWrap{grid-template-columns:1fr}.sidePanel{height:auto}.tablesGrid{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media (max-width: 820px){.tablesHeader{flex-direction:column;align-items:stretch}.headerRight{justify-content:space-between;flex-wrap:wrap}.searchWrap{min-width:100%}.tablesGrid{grid-template-columns:repeat(2,minmax(190px,1fr))}}@media (max-width: 520px){.tablesGrid{grid-template-columns:1fr}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--danger: #ef4444;--success: #16a34a;--shadow: 0 10px 30px rgba(15, 23, 42, .06)}*{box-sizing:border-box}.wRoot{height:100%;padding:14px;background:var(--bg);color:var(--text)}.card,.wHeader{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.card{padding:12px;min-height:0}.wHeader{padding:14px;display:flex;justify-content:space-between;align-items:center;gap:14px}.wTitle{font-size:18px;font-weight:1000;line-height:1.2}.wSub{margin-top:4px;font-size:12px;font-weight:900;color:var(--muted)}.topMsg,.topErr{margin-top:8px;font-size:12px;font-weight:1000}.topMsg{color:var(--success)}.topErr{color:var(--danger)}.wHeaderRight{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.seg{display:flex;overflow:hidden;background:#f2f4f7;border:1px solid var(--border);border-radius:12px}.segBtn{border:0;background:transparent;padding:12px 16px;font-weight:1000;color:var(--text);cursor:pointer;transition:.2s ease}.segBtn.active{background:var(--card);color:var(--primary)}.segBtn:disabled{opacity:.6;cursor:not-allowed}.tablePick{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#f2f4f7;border:1px solid var(--border);border-radius:12px;font-weight:1000}.tablePick span{color:var(--muted);font-weight:900}.tablePick select{border:0;outline:0;background:transparent;font-size:14px;font-weight:1000;color:var(--text);cursor:pointer}.wGrid{margin-top:14px;display:grid;grid-template-columns:320px 1fr 420px;gap:14px;height:calc(100vh - 150px);min-height:0}.wLeft,.wMid,.wRight{display:flex;flex-direction:column;min-height:0}.cardHeader{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 4px 12px}.cardTitle{font-weight:1000;font-size:15px}.cardSub{margin-top:3px;font-size:12px;font-weight:900;color:var(--muted)}.divider{height:1px;margin:12px 0;background:var(--border)}.catGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.catBtn{border:1px solid var(--border);background:#f2f4f7;border-radius:14px;padding:14px 10px;font-weight:1000;color:var(--text);cursor:pointer;transition:.2s ease}.catBtn.active{background:#2563eb1a;border-color:#2563eb59;color:var(--primary)}.catBtn:disabled{opacity:.6;cursor:not-allowed}.btn{border:1px solid var(--border);background:#fff;border-radius:14px;padding:14px 12px;font-weight:1000;cursor:pointer;transition:.2s ease}.btn.ghost{background:#f2f4f7;color:var(--text)}.btn.full{width:100%}.searchWrap{display:flex;align-items:center;gap:8px;min-width:240px;padding:10px 12px;background:#f2f4f7;border:1px solid var(--border);border-radius:12px}.searchWrap input{width:100%;border:0;outline:0;background:transparent;font-weight:900;color:var(--text)}.searchIcon{opacity:.7}.itemsGrid{flex:1;min-height:0;overflow:auto;padding:6px 4px;display:grid;grid-template-columns:repeat(3,minmax(200px,1fr));gap:12px;align-content:start}.itemBtn{min-height:96px;padding:12px;text-align:left;border:1px solid var(--border);border-radius:16px;background:#fff;cursor:pointer;transition:.2s ease}.itemBtn:hover{transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1a}.itemBtn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.itemTop{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.itemName{font-size:14px;font-weight:1000;line-height:1.25}.itemPrice{margin-top:8px;font-weight:1000;color:var(--muted)}.pill{white-space:nowrap;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:1000;color:#1d4ed8;background:#3b82f61f;border:1px solid rgba(59,130,246,.22)}.hintChip{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:1000;color:var(--muted);background:#f2f4f7;border:1px solid var(--border)}.orderList{flex:1;min-height:0;overflow:auto;padding:6px 4px;display:grid;gap:10px;align-content:start}.orderRow{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:16px;background:#f8fafc}.oLeft{min-width:0}.oName{font-size:13px;font-weight:1000;line-height:1.25;word-break:break-word}.oSub{margin-top:3px;font-size:12px;font-weight:900;color:var(--muted)}.oControls{display:flex;align-items:center;gap:6px}.oTotal{font-weight:1000;white-space:nowrap}.iconSquare{width:34px;height:34px;padding:0;display:grid;place-items:center;border:1px solid var(--border);border-radius:10px;background:#fff;font-weight:1000;cursor:pointer;transition:.2s ease}.iconSquare:disabled{opacity:.6;cursor:not-allowed}.iconSquare.trash{font-size:15px}.qtyPill{min-width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f3f6ff;border:1px solid #dbe6ff;font-weight:1000}.wActions{margin-top:12px;display:grid;grid-template-columns:1fr;gap:10px}.wNote{margin-top:10px;font-size:12px;font-weight:900;color:var(--muted);line-height:1.4}.empty{padding:14px 6px;font-weight:1000;color:var(--muted)}.itemsGrid::-webkit-scrollbar,.orderList::-webkit-scrollbar{width:10px}.itemsGrid::-webkit-scrollbar-thumb,.orderList::-webkit-scrollbar-thumb{background:#0f172a26;border-radius:999px}.itemsGrid::-webkit-scrollbar-track,.orderList::-webkit-scrollbar-track{background:transparent}@media (max-width: 1400px){.wGrid{grid-template-columns:300px 1fr 380px}}@media (max-width: 1200px){.wGrid{grid-template-columns:300px 1fr;height:auto}.wRight{grid-column:1 / -1}.itemsGrid{grid-template-columns:repeat(2,minmax(200px,1fr));max-height:480px}.orderList{max-height:360px}}@media (max-width: 860px){.wRoot{padding:10px}.wHeader{flex-direction:column;align-items:stretch}.wHeaderRight{justify-content:space-between}.wGrid{grid-template-columns:1fr;height:auto}.wLeft,.wMid,.wRight{min-height:unset}.catGrid{grid-template-columns:repeat(2,1fr)}.itemsGrid{grid-template-columns:1fr;max-height:420px}.orderRow{grid-template-columns:1fr;align-items:start}.oControls{justify-content:flex-start}.oTotal{justify-self:start}.searchWrap{min-width:100%}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--chip: #f2f4f7;--shadow: 0 10px 30px rgba(15, 23, 42, .06);--shadow-md: 0 14px 34px rgba(15, 23, 42, .1);--ring: 0 0 0 3px rgba(37, 99, 235, .2);--r-xl: 18px;--r-lg: 16px;--r-md: 12px;--r-sm: 10px;--gap: 14px;--t: .14s ease}button,input{font:inherit}.ordersRoot{height:100%;min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:var(--gap);background:var(--bg);color:var(--text)}.ordersHeader{display:flex;justify-content:space-between;align-items:center;gap:var(--gap);padding:14px 16px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow)}.title{font-size:18px;font-weight:1000;letter-spacing:.2px}.sub{margin-top:4px;font-size:12px;font-weight:800;color:var(--muted)}.topErr{margin-top:8px;font-size:12px;font-weight:900;color:#b91c1c}.headerRight{display:flex;align-items:center;gap:12px}.searchWrap{display:flex;align-items:center;gap:8px;min-width:320px;padding:10px 14px;background:var(--chip);border:1px solid var(--border);border-radius:999px;transition:border-color var(--t),box-shadow var(--t)}.searchWrap:focus-within{border-color:#2563eb59;box-shadow:0 0 0 4px #2563eb14}.searchIcon{opacity:.6;font-weight:900;flex:0 0 auto}.searchWrap input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font-weight:900}.searchWrap input::placeholder{color:var(--muted)}.tabsRow{display:flex;flex-wrap:wrap;gap:10px;margin-top:var(--gap);padding:10px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow)}.tabBtn{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--border);border-radius:999px;background:var(--chip);font-weight:1000;cursor:pointer;transition:transform var(--t),background var(--t),border-color var(--t),color var(--t)}.tabBtn:hover{transform:translateY(-1px)}.tabBtn.active{color:var(--primary);background:#2563eb1a;border-color:#2563eb59}.count{padding:2px 8px;border-radius:999px;font-size:12px;background:#fff;border:1px solid var(--border);color:var(--text)}.ordersWrap{flex:1;min-height:0;margin-top:var(--gap);display:grid;grid-template-columns:1fr 360px;gap:var(--gap)}.ordersGrid{min-height:0;overflow:auto;align-content:start;display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow);scroll-behavior:smooth}.orderCard{height:176px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:12px;text-align:left;cursor:pointer;border:1px solid var(--border);border-radius:var(--r-lg);transition:transform var(--t),box-shadow var(--t),border-color var(--t)}.orderCard:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.orderCard.selected{border-color:#2563ebb3;box-shadow:var(--ring),var(--shadow-md)}.orderCard.running{background:#f59e0b1a;border-color:#f59e0b38}.orderCard.ready{background:#22c55e1a;border-color:#22c55e38}.orderCard.billed{background:#ef444414;border-color:#ef444433}.cardTop{display:flex;justify-content:space-between;align-items:center;gap:10px}.cardTitle{font-size:16px;font-weight:1000;letter-spacing:.2px}.badge{white-space:nowrap;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:1000;border:1px solid var(--border);background:var(--chip)}.badge.bRun{color:#92400e;background:#f59e0b29;border-color:#f59e0b4d}.badge.bReady{color:#166534;background:#22c55e24;border-color:#22c55e47}.badge.bBill{color:#991b1b;background:#ef444424;border-color:#ef444447}.cardMeta{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px;margin-top:10px}.metaRow{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--muted)}.metaRow b{color:var(--text);font-weight:1000;text-align:right}.metaRow.total{grid-column:1 / -1;margin-top:2px}.metaRow.total b{font-size:13px}.cardFoot{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:8px;border-top:1px dashed rgba(15,23,42,.1);font-size:12px;font-weight:900;color:var(--muted)}.cardFoot b{color:var(--text)}.empty{padding:18px;color:var(--muted);font-weight:1000}.sidePanel{height:100%;min-height:0;overflow:auto;padding:12px;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--shadow);opacity:.82;transition:opacity var(--t)}.sidePanel.open{opacity:1}.panelHead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding:6px 6px 12px;border-bottom:1px solid var(--border)}.panelTitle{font-size:16px;font-weight:1000}.panelSub{margin-top:4px;font-size:12px;font-weight:900;color:var(--muted)}.xBtn{border:1px solid var(--border);background:var(--chip);border-radius:var(--r-md);padding:10px 12px;font-weight:1000;cursor:pointer;transition:transform var(--t),background var(--t)}.xBtn:hover{transform:translateY(-1px);background:#0f172a0a}.panelEmpty{padding:12px 6px}.panelEmptyTitle{font-weight:1000}.panelEmptySub{margin-top:6px;font-size:12px;font-weight:900;color:var(--muted)}.panelInfo{display:grid;gap:10px;padding:10px 6px 0}.infoRow{display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:1000}.infoRow span{color:var(--muted);font-weight:900}.itemsBox{margin-top:12px;padding:12px;background:#fafbff;border:1px solid var(--border);border-radius:var(--r-lg)}.itemsTitle{margin-bottom:10px;font-weight:1000}.itemsList{display:grid;gap:10px}.line{display:flex;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px dashed rgba(15,23,42,.12)}.line:last-child{padding-bottom:0;border-bottom:0}.lineL{min-width:0}.lineName{font-weight:1000;word-break:break-word}.lineNote{margin-top:4px;font-size:12px;font-weight:900;color:var(--muted)}.lineR{text-align:right;display:grid;gap:2px}.qty{font-weight:1000}.price{font-size:12px;font-weight:900;color:var(--muted)}.panelActions{display:grid;gap:10px;margin-top:12px;padding:0 6px}.btn{border:1px solid var(--border);background:#fff;padding:12px 14px;border-radius:14px;font-weight:1000;cursor:pointer;transition:transform var(--t),box-shadow var(--t),opacity var(--t),background var(--t)}.btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px #0f172a1a}.btn:disabled{opacity:.6;cursor:not-allowed}.btn.big{padding:14px;font-size:14px}.btn.primary{color:#fff;background:var(--primary);border-color:var(--primary)}.btn.ghost{background:var(--chip)}.btn.danger{color:#fff;background:var(--danger);border-color:var(--danger)}.hint{margin:12px 6px 6px;font-size:12px;font-weight:900;color:var(--muted)}.ordersGrid::-webkit-scrollbar,.sidePanel::-webkit-scrollbar{width:10px}.ordersGrid::-webkit-scrollbar-thumb,.sidePanel::-webkit-scrollbar-thumb{background:#0f172a26;border-radius:999px}.ordersGrid::-webkit-scrollbar-track,.sidePanel::-webkit-scrollbar-track{background:transparent}@media (max-width: 1400px){.ordersGrid{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media (max-width: 1200px){.ordersWrap{grid-template-columns:1fr}.sidePanel{height:auto}.ordersGrid{grid-template-columns:repeat(3,minmax(210px,1fr))}}@media (max-width: 900px){.ordersHeader{flex-direction:column;align-items:stretch}.headerRight{width:100%}.searchWrap{min-width:100%;width:100%}.ordersGrid{grid-template-columns:repeat(2,minmax(190px,1fr))}}@media (max-width: 520px){.ordersRoot{padding:10px}.ordersGrid{grid-template-columns:1fr}.tabsRow{gap:8px}.tabBtn{width:100%;justify-content:space-between}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--danger: #ef4444;--warning: #f59e0b;--success: #22c55e;--violet: #6366f1;--shadow: 0 10px 30px rgba(15, 23, 42, .06);--shadow-soft: 0 6px 18px rgba(15, 23, 42, .05);--radius-xl: 18px;--radius-lg: 16px;--radius-md: 12px;--radius-sm: 10px;--transition: .15s ease}.kds{width:100%;padding:18px 18px 28px;color:var(--text)}.kdsHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.kdsTitle{min-width:0}.kdsTitleTop{font-size:26px;font-weight:800;letter-spacing:-.02em}.kdsTitleSub{margin-top:6px;color:var(--muted);font-size:13.5px;font-weight:600}.topErr{margin-top:8px;color:#b91c1c;font-size:13px;font-weight:800}.kdsTools{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.kdsSearch{position:relative;width:320px;max-width:70vw}.kdsSearchIcon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);font-size:14px;pointer-events:none}.kdsSearch input{width:100%;height:42px;padding:11px 12px 11px 36px;border-radius:var(--radius-md);border:1px solid var(--border);outline:none;background:var(--card);color:var(--text);box-shadow:0 1px #0f172a08;transition:border-color var(--transition),box-shadow var(--transition)}.kdsSearch input::placeholder{color:var(--muted)}.kdsSearch input:focus{border-color:#2563eb59;box-shadow:0 0 0 4px #2563eb1f}.kdsToggle{display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none;font-weight:700;font-size:13px;color:var(--muted)}.kdsToggle input{width:16px;height:16px;accent-color:var(--primary)}.kdsBtn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border-radius:var(--radius-md);border:1px solid transparent;font-weight:800;font-size:14px;cursor:pointer;transition:transform var(--transition),filter var(--transition),background var(--transition),border-color var(--transition),opacity var(--transition);background:var(--card);white-space:nowrap}.kdsBtn:disabled{opacity:.55;cursor:not-allowed;transform:none}.kdsBtnPrimary{background:var(--primary);border-color:#2563eb40;color:#fff;box-shadow:0 10px 20px #2563eb2e}.kdsBtnPrimary:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.kdsBtnPrimary:active:not(:disabled){transform:translateY(0)}.kdsBtnGhost{background:var(--card);border-color:var(--border);color:var(--text)}.kdsBtnGhost:hover:not(:disabled){background:#0f172a08}.kdsBtnDanger{background:var(--danger);color:#fff;border-color:#ef444433;box-shadow:0 10px 20px #ef44442e}.kdsBtnDanger:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.kdsBtnDanger:active:not(:disabled){transform:translateY(0)}.kdsTabs{display:flex;gap:10px;padding:10px;margin-bottom:14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow);overflow-x:auto}.kdsTab{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--muted);font-weight:900;cursor:pointer;white-space:nowrap;transition:background var(--transition),border-color var(--transition),color var(--transition)}.kdsTab:hover{background:#0f172a08}.kdsTab.active{background:#2563eb1a;border-color:#2563eb2e;color:var(--primary)}.kdsBadge{min-width:26px;height:22px;padding:0 8px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#0f172a0f;color:var(--text);font-size:12px;font-weight:900}.kdsTab.active .kdsBadge{background:#2563eb2e;color:var(--primary)}.kdsBoard{min-height:calc(100vh - 210px)}.kdsGrid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:14px}.ticket{display:flex;flex-direction:column;overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.ticket.rush{border-color:#f59e0b59;box-shadow:0 12px 32px #f59e0b1a}.ticketTop{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 14px 10px;border-bottom:1px solid var(--border)}.ticketLeft{min-width:0}.ticketToken{font-size:22px;font-weight:1000;letter-spacing:-.02em;line-height:1.1}.ticketMeta{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;flex-wrap:wrap}.ticketDate{margin-top:7px;color:var(--muted);font-size:12px;font-weight:700}.dot{color:#0f172a40}.muted{color:var(--muted);font-weight:700}.pill{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border-radius:999px;border:1px solid transparent;font-size:12px;font-weight:900}.stNew{background:#6366f11f;color:#4f46e5;border-color:#4f46e526}.stCooking{background:#f59e0b29;color:#b45309;border-color:#b4530926}.stReady{background:#22c55e24;color:#15803d;border-color:#15803d2e}.ticketRight{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.timer{padding:6px 10px;border-radius:999px;background:#0f172a0f;color:var(--text);font-size:14px;font-weight:1000}.timer.late{background:#ef44441f;color:#b91c1c}.rushTag{padding:6px 10px;border-radius:999px;background:#f59e0b2e;color:#92400e;border:1px solid rgba(146,64,14,.18);font-size:11px;font-weight:1000;letter-spacing:.08em}.ticketItems{display:flex;flex-direction:column;gap:10px;padding:10px 14px 6px}.ticketItem{display:flex;gap:10px;padding:10px;border-radius:14px;background:#0f172a08;border:1px solid rgba(15,23,42,.05)}.ticketItem .qty{width:44px;min-width:44px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#0f172a0f;font-weight:1000}.ticketItem .name{min-width:0}.ticketItem .name .main{font-weight:950}.ticketItem .name .note{margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}.ticketActions{display:flex;gap:10px;padding:12px 14px 14px;margin-top:auto}.ticketActions .kdsBtn{flex:1}.kdsEmpty{display:flex;justify-content:center;align-items:center;padding:42px 0}.kdsEmptyCard{width:min(520px,92vw);padding:26px 22px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow);text-align:center}.kdsEmptyIcon{font-size:34px}.kdsEmptyTitle{margin-top:8px;font-size:18px;font-weight:1000}.kdsEmptyText{margin-top:6px;margin-bottom:14px;color:var(--muted);font-size:13px;font-weight:700}@media (max-width: 1200px){.kdsGrid{grid-template-columns:repeat(2,minmax(260px,1fr))}}@media (max-width: 760px){.kds{padding:14px 14px 24px}.kdsHeader{flex-direction:column;align-items:stretch}.kdsTools{justify-content:stretch}.kdsSearch{width:100%;max-width:100%}.kdsGrid{grid-template-columns:1fr}.ticketTop{flex-direction:column;align-items:stretch}.ticketRight{flex-direction:row;justify-content:space-between;align-items:center}.ticketActions{flex-direction:column}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--danger: #ef4444;--warning: #f59e0b;--shadow: 0 10px 30px rgba(15, 23, 42, .06)}.dcWrap{padding:18px 18px 28px;color:var(--text)}.dcPrintArea{max-width:1200px}.dcHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.dcBrand{display:flex;align-items:center;gap:12px}.dcBrandLogo{width:58px;height:58px;object-fit:contain;flex-shrink:0}.dcBrandText{display:flex;flex-direction:column}.dcTitle{margin:0;font-size:26px;font-weight:1000;letter-spacing:-.02em}.dcSub{margin:6px 0 0;color:var(--muted);font-size:13px;font-weight:700}.dcStatus{padding:6px 12px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:1000}.dcStatus.open{color:#15803d;background:#22c55e24;border-color:#15803d2e}.dcStatus.closed{color:#b91c1c;background:#ef44441f;border-color:#b91c1c2e}.dcTopMsg{margin-bottom:12px;padding:10px 14px;border:1px solid #bbf7d0;border-radius:12px;color:#166534;background:#ecfdf3;font-weight:800}.dcGrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.dcCard{padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow)}.dcCardHead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:10px}.dcCardHead h3{margin:0;font-size:15px;font-weight:1000}.dcMuted{color:var(--muted);font-size:12px;font-weight:700}.dcLoading{padding:18px 0;color:var(--muted);font-weight:800}.dcRows{display:flex;flex-direction:column;gap:8px}.dcRow{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid rgba(15,23,42,.06);border-radius:12px;background:#0f172a08}.dcRow span{color:var(--muted);font-weight:800}.dcMiniStats{display:grid;gap:10px;margin-top:12px}.dcMiniStatsEight{grid-template-columns:repeat(4,1fr)}.dcMini{padding:10px;border:1px solid rgba(15,23,42,.06);border-radius:12px;background:#0f172a08}.dcMiniTop{color:var(--muted);font-size:12px;font-weight:800}.dcMiniVal{margin-top:4px;font-size:18px;font-weight:1000}.dcPayList{display:flex;flex-direction:column;gap:8px}.dcPayRow{display:flex;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid rgba(15,23,42,.06);border-radius:12px;background:#0f172a08}.dcPayRow span{color:var(--muted);font-weight:800}.dcDivider{height:1px;margin:12px 0;background:#0f172a14}.dcTotal{display:flex;justify-content:space-between;font-size:14px;font-weight:1000}.dcActions{grid-column:1 / -1}.dcBtns{display:flex;flex-wrap:wrap;gap:10px}.dcBtn{padding:10px 12px;border:1px solid transparent;border-radius:12px;cursor:pointer;font-weight:1000}.dcBtn:disabled{opacity:.55;cursor:not-allowed}.dcBtn.primary{color:#fff;background:var(--primary);box-shadow:0 10px 20px #2563eb2e}.dcBtn.danger{color:#fff;background:var(--danger);box-shadow:0 10px 20px #ef44442e}.dcBtn.warning{color:#fff;background:var(--warning);box-shadow:0 10px 20px #f59e0b2e}.dcTip{margin-top:10px;color:var(--muted);font-size:12px;font-weight:700}@media (max-width: 1100px){.dcMiniStatsEight{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.dcGrid{grid-template-columns:1fr}.dcMiniStatsEight{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.dcHeader{flex-direction:column;align-items:flex-start}.dcBrand{align-items:center}.dcMiniStatsEight{grid-template-columns:1fr}}@page{size:80mm auto;margin:6mm}@media print{html,body{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden!important}#dayclose-print,#dayclose-print *{visibility:visible!important}#dayclose-print{position:absolute!important;top:0!important;left:0!important;width:80mm!important;max-width:80mm!important;margin:0!important;padding:0!important;color:#000!important;background:#fff!important;box-sizing:border-box!important}.dcWrap{margin:0!important;padding:0!important}.dcPrintArea{width:100%!important;max-width:none!important}.dcGrid{display:block!important}.dcCard{margin:0 0 10px!important;padding:0!important;border:none!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.dcCardHead,.dcTopMsg,.dcLoading,.noPrint{display:none!important}.dcHeader{display:block!important;margin-bottom:10px!important;text-align:center!important}.dcBrand{display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:4px!important;margin-bottom:6px!important}.dcBrandLogo{width:52px!important;height:52px!important;margin:0 auto!important}.dcBrandText{display:block!important;text-align:center!important}.dcTitle{margin:0 0 2px!important;font-size:18px!important;font-weight:1000!important}.dcSub{margin:0 0 4px!important;color:#000!important;font-size:12px!important;font-weight:800!important}.dcStatus{display:inline-block!important;margin-top:4px!important;padding:2px 8px!important;border:1px solid #999!important;color:#000!important;background:transparent!important;font-size:10px!important}.dcRows,.dcPayList{gap:0!important}.dcRow,.dcPayRow{padding:5px 0!important;border:none!important;border-bottom:1px dashed #999!important;border-radius:0!important;background:transparent!important;font-size:11px!important}.dcRow span,.dcPayRow span{color:#000!important}.dcMiniStatsEight{grid-template-columns:repeat(4,1fr)!important;gap:4px!important;margin-top:8px!important}.dcMini{padding:4px!important;border:1px dashed #999!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.dcMiniTop{color:#000!important;font-size:10px!important}.dcMiniVal{margin-top:2px!important;font-size:13px!important;font-weight:1000!important}.dcDivider{height:1px!important;margin:8px 0!important;background:#000!important}.dcTotal{padding-top:2px!important;font-size:12px!important;font-weight:1000!important}}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--danger: #b42318;--shadow: 0 10px 30px rgba(15, 23, 42, .06)}.rpWrap{padding:18px 18px 28px;color:var(--text)}.rpHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.rpTitle{font-size:26px;font-weight:900;letter-spacing:-.02em}.rpSub{margin-top:6px;color:var(--muted);font-size:13px;font-weight:700}.rpHeaderBtns{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.rpBtn{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--card);font-weight:900;cursor:pointer;transition:background .2s ease,filter .2s ease}.rpBtn:hover{background:#0f172a08}.rpBtnPrimary{color:#fff;background:var(--primary);border-color:#2563eb40;box-shadow:0 10px 20px #2563eb2e}.rpBtnPrimary:hover{filter:brightness(1.03)}.rpFilters{margin-bottom:14px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow)}.rpTabs{display:flex;gap:10px;margin-bottom:10px;overflow-x:auto}.rpTab{padding:8px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted);background:#fff;font-weight:900;cursor:pointer;white-space:nowrap}.rpTab.active{color:var(--primary);background:#2563eb1a;border-color:#2563eb2e}.rpFilterRow{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.rpField{display:flex;flex-direction:column;gap:6px;min-width:150px}.rpField span{color:var(--muted);font-size:12px;font-weight:800}.rpField input,.rpField select{padding:10px 12px;border:1px solid var(--border);border-radius:12px;outline:none;background:#fff}.rpField input:focus,.rpField select:focus{border-color:#2563eb59;box-shadow:0 0 0 4px #2563eb1f}.rpGrow{flex:1;min-width:260px}.rpTopMsg{margin-bottom:12px;padding:10px 12px;border:1px solid rgba(239,68,68,.15);border-radius:12px;background:#ef44440f;color:var(--danger);font-size:13px;font-weight:700}.rpLoading{padding:18px 4px;font-size:14px;font-weight:800;color:var(--muted)}.rpPrintRoot,.rpA4Sheet{width:100%}.rpGrid{display:grid;grid-template-columns:390px 1fr;gap:16px;align-items:start}.rpCard{padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--card);box-shadow:var(--shadow)}.rpWide{min-height:420px}.rpCardHead{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px}.rpCardTitle{font-size:18px;font-weight:1000}.rpMuted{color:var(--muted);font-size:13px;font-weight:800}.rpSummaryGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.rpStat{min-height:76px;padding:12px;border:1px solid rgba(15,23,42,.06);border-radius:12px;background:#0f172a08}.rpStatLabel{color:var(--muted);font-size:13px;font-weight:800}.rpStatVal{margin-top:6px;font-size:20px;font-weight:1000}.rpPayList{display:flex;flex-direction:column;gap:8px;margin-top:8px}.rpPayRow{display:flex;justify-content:space-between;padding:12px 14px;border:1px solid rgba(15,23,42,.06);border-radius:12px;background:#0f172a08}.rpPayRow span{color:var(--muted);font-size:14px;font-weight:900}.rpPayRow b{font-size:15px}.rpTable{overflow:hidden;border:1px solid rgba(15,23,42,.08);border-radius:12px}.rpTr{display:grid;grid-template-columns:1fr 120px 170px;gap:12px;padding:14px;border-top:1px solid rgba(15,23,42,.06)}.rpTh{border-top:none;background:#0f172a0a;font-weight:1000;font-size:15px}.rpItem{font-size:15px;font-weight:950}.rpRight{text-align:right;font-size:15px;font-weight:900}.rpTotal{background:#2563eb14;border-top:1px solid rgba(37,99,235,.22);font-weight:1000}.rpNote,.rpReceiptNote{display:none!important}.noPrint{display:block}.onlyPrint{display:none}.rpPrintHead{margin-bottom:18px;text-align:center}.rpPrintTitle{font-size:30px;font-weight:1000}.rpPrintSub{margin-top:6px;font-size:15px;color:var(--muted);font-weight:700}.rpThermalSheet{display:none;width:80mm;max-width:80mm;margin:0 auto;padding:0 2mm;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;color:#000}.rpReceiptHead{text-align:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed #000}.rpReceiptTitle{font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:.3px}.rpReceiptDate{margin-top:4px;font-size:13px;font-weight:700}.rpReceiptSection{margin-bottom:10px;padding-bottom:8px;border-bottom:1px dashed #000}.rpReceiptSectionLast{margin-bottom:0}.rpReceiptSectionTitle{margin-bottom:7px;font-size:13px;font-weight:900;text-transform:uppercase}.rpReceiptRow{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin:4px 0;font-size:13px;line-height:1.35}.rpReceiptRow span:first-child{flex:1}.rpReceiptRow strong{flex-shrink:0;font-weight:900}.rpReceiptTableHead,.rpReceiptItem,.rpReceiptTotal{display:grid;grid-template-columns:1fr 42px 68px;gap:8px;align-items:start;font-size:13px;line-height:1.35}.rpReceiptTableHead{font-weight:900;padding-bottom:5px;border-bottom:1px solid #000}.rpReceiptItem{padding:5px 0}.rpReceiptItemName{word-break:break-word}.rpReceiptTotal{padding-top:6px;margin-top:6px;border-top:1px solid #000;font-weight:900}@media (max-width: 1100px){.rpGrid{grid-template-columns:1fr}}@media (max-width: 700px){.rpHeader{flex-direction:column;align-items:stretch}.rpHeaderBtns{justify-content:flex-start}.rpSummaryGrid{grid-template-columns:1fr}.rpTr{grid-template-columns:1fr 80px 120px}}@page{size:A4;margin:6mm}@media print{html,body{margin:0!important;padding:0!important;background:#fff!important;color:#000!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body *{visibility:hidden!important}#report-print,#report-print *{visibility:visible!important}.noPrint{display:none!important}.onlyPrint{display:block!important}.rpWrap{padding:0!important;margin:0!important}#report-print{position:absolute!important;top:0!important;left:0!important;width:100%!important;max-width:100%!important;margin:0!important;background:#fff!important;box-shadow:none!important}.rpCard,.rpTable,.rpStat,.rpPayRow,.rpTr{box-shadow:none!important;color:#000!important}.rpMuted,.rpStatLabel,.rpPayRow span,.rpPrintSub{color:#000!important}body[data-report-print-mode=a4] #report-print{top:0!important;right:0!important;bottom:0!important;left:0!important;padding:0!important;box-sizing:border-box!important}body[data-report-print-mode=a4] .rpA4Sheet{display:block!important;width:100%!important}body[data-report-print-mode=a4] .rpThermalSheet{display:none!important}body[data-report-print-mode=a4] .rpGrid{grid-template-columns:450px 1fr!important;gap:16px!important}body[data-report-print-mode=a4] .rpCard{padding:18px!important;border:1px solid #d0d5dd!important;border-radius:10px!important;break-inside:avoid!important;page-break-inside:avoid!important}body[data-report-print-mode=a4] .rpPrintTitle{font-size:34px!important;font-weight:1000!important}body[data-report-print-mode=a4] .rpPrintSub{font-size:16px!important;margin-top:6px!important;margin-bottom:14px!important}body[data-report-print-mode=a4] .rpCardTitle{font-size:20px!important}body[data-report-print-mode=a4] .rpMuted{font-size:13px!important}body[data-report-print-mode=a4] .rpSummaryGrid{gap:12px!important}body[data-report-print-mode=a4] .rpStat{min-height:84px!important;padding:12px!important}body[data-report-print-mode=a4] .rpStatLabel{font-size:13px!important}body[data-report-print-mode=a4] .rpStatVal{font-size:21px!important;font-weight:1000!important}body[data-report-print-mode=a4] .rpPayRow{padding:12px 14px!important}body[data-report-print-mode=a4] .rpPayRow span,body[data-report-print-mode=a4] .rpPayRow b,body[data-report-print-mode=a4] .rpTh,body[data-report-print-mode=a4] .rpItem,body[data-report-print-mode=a4] .rpRight{font-size:15px!important}body[data-report-print-mode=a4] .rpTr{grid-template-columns:1fr 110px 170px!important;gap:10px!important;padding:16px!important}body[data-report-print-mode=thermal] #report-print{left:50%!important;transform:translate(-50%)!important;width:80mm!important;max-width:80mm!important;padding:0!important;box-sizing:border-box!important}body[data-report-print-mode=thermal] .rpA4Sheet{display:none!important}body[data-report-print-mode=thermal] .rpThermalSheet{display:block!important;width:80mm!important;max-width:80mm!important;margin:0 auto!important;padding:0 2mm!important;box-sizing:border-box!important}body[data-report-print-mode=thermal] .rpGrid,body[data-report-print-mode=thermal] .rpCard,body[data-report-print-mode=thermal] .rpTable{display:none!important}body[data-report-print-mode=thermal] .rpReceiptTitle{font-size:18px!important;font-weight:900!important}body[data-report-print-mode=thermal] .rpReceiptDate{font-size:13px!important;font-weight:700!important}body[data-report-print-mode=thermal] .rpReceiptSectionTitle,body[data-report-print-mode=thermal] .rpReceiptRow,body[data-report-print-mode=thermal] .rpReceiptTableHead,body[data-report-print-mode=thermal] .rpReceiptItem,body[data-report-print-mode=thermal] .rpReceiptTotal{font-size:13px!important;line-height:1.35!important}body[data-report-print-mode=thermal] .rpReceiptTableHead,body[data-report-print-mode=thermal] .rpReceiptItem,body[data-report-print-mode=thermal] .rpReceiptTotal{grid-template-columns:1fr 42px 68px!important;gap:8px!important}}.rpBrand{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:10px}.rpBrandLogo{width:68px;height:68px;object-fit:contain;flex-shrink:0}.rpBrandText{text-align:left}.rpBrandName{font-size:24px;font-weight:1000;line-height:1.1;color:#0f172a}.rpBrandReport{margin-top:4px;font-size:14px;font-weight:800;color:var(--muted)}.rpBrandPrint{margin-bottom:10px}.rpReceiptLogo{width:58px;height:58px;object-fit:contain;margin:0 auto 6px;display:block}.rpReceiptRestaurant{font-size:16px;font-weight:900;margin-bottom:4px;text-align:center}:root{--bg: #f6f7fb;--card: #ffffff;--text: #0f172a;--muted: #667085;--border: rgba(15, 23, 42, .1);--primary: #2563eb;--success: #22c55e;--shadow: 0 10px 30px rgba(15, 23, 42, .06)}.stWrap{width:100%;padding:18px 18px 28px;color:var(--text)}.stTopbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.stTitleRow{display:flex;flex-direction:column}.stTitle{margin:0;font-size:26px;font-weight:900;letter-spacing:-.02em}.stSub{margin:6px 0 0;color:var(--muted);font-size:13.5px;font-weight:700}.stActions{display:flex;align-items:center;gap:10px}.stBtn{padding:10px 14px;border-radius:12px;border:1px solid transparent;background:var(--card);font-weight:900;cursor:pointer;transition:.15s ease;box-shadow:0 1px #0f172a08}.stBtn:disabled{opacity:.55;cursor:not-allowed}.stBtn.primary{background:var(--primary);color:#fff;border-color:#2563eb40;box-shadow:0 10px 20px #2563eb2e}.stBtn.primary:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px)}.stBtn.ghost{border-color:var(--border)}.stBtn.ghost:hover{background:#0f172a08}.stToast{position:sticky;top:10px;z-index:20;width:fit-content;margin:0 auto 10px;padding:8px 14px;border-radius:999px;background:#22c55e1f;border:1px solid rgba(34,197,94,.18);color:#15803d;font-weight:900}.stGrid{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;align-items:start}.stCard{background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.stFull{grid-column:1 / -1}.stCardHead{display:flex;justify-content:space-between;align-items:center;padding:14px 14px 10px;border-bottom:1px solid var(--border)}.stCardTitle{font-size:14px;font-weight:1000}.stCardHint{color:var(--muted);font-size:12px;font-weight:800}.stShopHeader{display:flex;align-items:center;gap:12px;padding:14px}.stLogoBox{width:52px;height:52px;border-radius:14px;border:1px solid var(--border);background:#0f172a05;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.stLogoBox img{width:100%;height:100%;object-fit:cover}.stShopMeta{display:flex;flex-direction:column;gap:6px}.stShopName{font-weight:1000;letter-spacing:-.01em}.stShopMetaLine{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800}.stPill{padding:4px 10px;border-radius:999px;background:#2563eb1a;color:var(--primary);border:1px solid rgba(37,99,235,.15)}.stDot{color:#0f172a47}.stMuted{color:var(--muted)}.stMutedSmall{margin-top:10px;color:var(--muted);font-size:12px;font-weight:800}.stForm{padding:0 14px 14px;display:flex;flex-direction:column;gap:12px}.stField{display:flex;flex-direction:column;gap:6px}.stField label{font-size:12px;font-weight:900;color:#0f172abf}.stField input,.stField select{height:42px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;outline:none;font-weight:800}.stField input:focus,.stField select:focus{border-color:#2563eb59;box-shadow:0 0 0 4px #2563eb1f}.stField.disabled{opacity:.65}.stRow2{display:grid;grid-template-columns:1fr 160px;gap:12px}.stPrintBlock{padding:14px}.stToggleRow{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.stToggleTitle{font-size:13px;font-weight:1000}.stToggleLeft .stMuted{font-size:12px;font-weight:800}.stDivider{height:1px;background:var(--border)}.stSwitch{position:relative;display:inline-block;width:46px;height:26px;flex-shrink:0}.stSwitch input{width:0;height:0;opacity:0}.stSlider{position:absolute;top:0;right:0;bottom:0;left:0;cursor:pointer;border-radius:999px;border:1px solid var(--border);background:#0f172a1a;transition:.15s ease}.stSlider:before{content:"";position:absolute;top:50%;left:3px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 6px 18px #0f172a24;transform:translateY(-50%);transition:.15s ease}.stSwitch input:checked+.stSlider{background:#2563eb40;border-color:#2563eb47}.stSwitch input:checked+.stSlider:before{transform:translate(20px,-50%)}.stNote{padding:14px;display:flex;flex-direction:column;gap:10px}.stCheck{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:14px;background:#0f172a05;font-weight:850}.stTick{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#22c55e24;color:#15803d;border:1px solid rgba(21,128,61,.18);font-weight:1000;flex-shrink:0}.stArrow{color:#0f172a73;font-weight:1000}@media (max-width: 980px){.stGrid,.stRow2{grid-template-columns:1fr}.stActions{flex-wrap:wrap;justify-content:flex-end}}:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;width:100%}body{margin:0;min-width:320px;background:#f6f7fb;color:#0f172a;overflow:hidden}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;border:none;background:none;cursor:pointer}input,select,textarea{font-family:inherit}:focus-visible{outline:3px solid rgba(37,99,235,.25);outline-offset:2px}
