body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.pin-login-container{align-items:center;background:linear-gradient(135deg,var(--bg-gradient-start) 0,var(--bg-gradient-end) 100%);display:flex;justify-content:center;min-height:100vh;padding:20px;width:100%}.pin-login-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #ffffff80;border-radius:24px;box-shadow:0 20px 60px #0000004d;max-width:450px;padding:3rem 2.5rem;text-align:center;transition:transform .3s ease;width:100%}.pin-login-card:hover{transform:translateY(-5px)}.pin-login-header{align-items:center;display:flex;flex-direction:column;margin-bottom:2.5rem}.pin-login-logo{border-radius:50%;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1));height:80px;margin-bottom:.15rem;object-fit:contain;width:80px}.pin-login-title-img{height:auto;margin-bottom:.5rem;max-height:60px;max-width:110%;object-fit:contain}.pin-login-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--secondary),var(--primary));background-clip:text;-webkit-background-clip:text;display:none;font-size:2.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 .5rem}.pin-login-subtitle{font-feature-settings:"smcp";color:var(--text-secondary);font-size:1.1rem;font-variant:small-caps;font-weight:600;letter-spacing:1px;margin:0}.pin-display{gap:1rem;margin-bottom:2rem}.pin-display,.pin-dot{display:flex;justify-content:center}.pin-dot{align-items:center;color:var(--text-light);font-size:2rem;height:20px;transition:all .2s ease;width:20px}.pin-dot.filled{color:var(--primary);transform:scale(1.2)}.pin-error-message{animation:shake .3s ease-in-out;background:#e53e3e1a;border-left:3px solid var(--error);border-radius:10px;color:var(--error);font-size:.95rem;margin-bottom:1.5rem;padding:.75rem 1rem}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px)}75%{transform:translateX(10px)}}.pin-keypad{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}.pin-key{background:linear-gradient(135deg,#944c681a,#b8627d1a);border:none;border-radius:12px;box-shadow:0 4px 6px #0000001a;color:var(--text-primary);cursor:pointer;font-size:1.8rem;font-weight:700;height:65px;transition:all .2s ease}.pin-key:hover:not(:disabled){background:linear-gradient(135deg,#944c6833,#b8627d33);box-shadow:0 6px 12px #944c684d;transform:translateY(-3px)}.pin-key:active:not(:disabled){box-shadow:0 2px 4px #944c6833;transform:translateY(0)}.pin-key:disabled{cursor:not-allowed;opacity:.5}.pin-key-clear,.pin-key-enter{background:linear-gradient(135deg,var(--secondary),var(--primary));color:#fff;font-size:1.2rem;font-weight:600}.pin-key-clear:hover:not(:disabled),.pin-key-enter:hover:not(:disabled){background:linear-gradient(135deg,#b8627d,#a15678)}.pin-key-enter:disabled{background:linear-gradient(135deg,#944c684d,#b8627d4d);color:#fff9}.pin-users-panel{border-top:1px solid #944c6826;padding-top:1.25rem}.pin-users-title{color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:1.5px;margin-bottom:.75rem;text-transform:uppercase}.pin-users-grid{display:flex;flex-direction:column;gap:.4rem}.pin-user-row{align-items:center;background:#944c680a;border:1px solid #944c681f;border-radius:8px;cursor:pointer;display:grid;grid-template-columns:1fr 1fr auto;padding:.45rem .75rem;text-align:left;transition:background .15s ease;width:100%}.pin-user-row:hover{background:#944c681f}.pin-user-name{color:var(--text-primary);font-size:.9rem;font-weight:600}.pin-user-role{color:var(--text-secondary);font-size:.78rem}.pin-user-pin{color:var(--primary);font-family:monospace;font-size:.9rem;font-weight:700;letter-spacing:2px}@media (max-width:768px){.pin-login-card{max-width:90%;padding:2rem 1.5rem}.pin-login-title{font-size:2rem}.pin-login-subtitle{font-size:.95rem}.pin-keypad{gap:.75rem}.pin-key{font-size:1.5rem;height:55px}.pin-key-clear,.pin-key-enter{font-size:1rem}}@media (max-width:480px){.pin-display{gap:.75rem}.pin-dot{font-size:1.5rem}.pin-keypad{gap:.5rem}.pin-key{font-size:1.3rem;height:50px}}.invoice-page{align-items:flex-start;background:#f5f5f5;display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:2rem 1rem 4rem}.invoice-card{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;max-width:400px;padding:2rem 1.5rem;width:100%}.invoice-header{margin-bottom:1rem;text-align:center}.invoice-brand{color:#944c68;font-size:1.5rem;font-weight:800;letter-spacing:-.02em}.invoice-tagline{color:#b8627d;font-size:.8rem;margin-top:.2rem;opacity:.8}.invoice-address{color:#666;font-size:.75rem;line-height:1.5;margin-top:.5rem}.invoice-gstin{color:#666;font-size:.75rem;margin-top:.25rem}.invoice-divider{border:none;border-top:1px solid #e0e0e0;margin:1rem 0}.invoice-divider.dashed{border-top-style:dashed}.invoice-divider.solid{border-top:2px solid;border-color:#333}.invoice-meta{display:flex;flex-direction:column;gap:.35rem}.invoice-meta-row{color:#555;display:flex;font-size:.875rem;justify-content:space-between}.invoice-meta-row span:first-child{color:#888}.invoice-order-num{color:#944c68;font-size:.95rem;font-weight:700}.invoice-items{display:flex;flex-direction:column;gap:.5rem}.invoice-item-row{grid-gap:.5rem;align-items:baseline;color:#333;display:grid;font-size:.9rem;gap:.5rem;grid-template-columns:1fr auto auto}.invoice-item-name{font-weight:500}.invoice-item-qty{color:#888;font-size:.8rem;white-space:nowrap}.invoice-item-price{font-weight:600;text-align:right;white-space:nowrap}.invoice-gst-row,.invoice-subtotal-row{color:#666;display:flex;font-size:.9rem;justify-content:space-between;padding:4px 0}.invoice-total-row{color:#111;display:flex;font-size:1.1rem;font-weight:800;justify-content:space-between;margin-bottom:.75rem}.invoice-payment{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem}.invoice-payment-row{color:#555;display:flex;font-size:.825rem;justify-content:space-between}.invoice-payment-row span:first-child{background:#f3f4f6;border-radius:4px;color:#374151;font-size:.75rem;font-weight:600;padding:.1rem .4rem}.invoice-status-row{margin-bottom:.5rem;text-align:center}.invoice-status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:700;padding:.3rem .9rem}.invoice-status-paid{background:#d1fae5;color:#065f46}.invoice-status-partial{background:#fef3c7;color:#92400e}.invoice-status-unpaid{background:#fee2e2;color:#991b1b}.invoice-footer{color:#888;font-size:.85rem;text-align:center}.invoice-footer p{margin:.2rem 0}.invoice-footer-sub{color:#bbb;font-size:.78rem}.invoice-loading,.invoice-not-found{color:#888;padding:4rem 2rem;text-align:center}.invoice-spinner{animation:invoice-spin .8s linear infinite;border:3px solid #944c6833;border-radius:50%;border-top-color:#944c68;height:36px;margin:0 auto 1rem;width:36px}@keyframes invoice-spin{to{transform:rotate(1turn)}}.invoice-not-found-icon{font-size:3rem;margin-bottom:1rem}.invoice-not-found h2{color:#333;font-size:1.2rem;margin:0 0 .5rem}.invoice-not-found p{color:#999;font-size:.9rem}@media (max-width:440px){.invoice-page{padding:1rem .75rem 3rem}.invoice-card{border-radius:8px;padding:1.5rem 1.25rem}}:root{--bg-gradient-start:#fff5f7;--bg-gradient-end:#ffe4e6;--primary:#944c68;--primary-light:#d68c9f;--primary-dark:#702f43;--secondary:#b8627d;--accent:#ff7e5f;--success:#059669;--success-gradient:linear-gradient(90deg,#059669,#34d399);--warning:#f59e0b;--error:#e53e3e;--error-gradient:linear-gradient(90deg,#e53e3e,#f87171);--info:#944c68;--text-primary:#2d3748;--text-secondary:#4a5568;--text-light:#718096;--text-white:#fff;--surface-glass:#ffffffe6;--surface-glass-strong:#fffffff2;--surface-glass-light:#ffffffb3;--border-light:#ffffff80;--border-color:#e2e8f0;--border-color-light:#f1f5f9;--blur-strong:blur(20px);--blur-light:blur(10px);--bg-white:#fff;--bg-light:#f8fafc;--bg-lighter:#fdf2f8;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 8px 16px #0000001a;--shadow-lg:0 15px 35px #0003;--text-2xs:0.6875rem;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-md:1.0625rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px}*{box-sizing:border-box}*,body{margin:0;padding:0}body{background:linear-gradient(135deg,#fff5f7,#ffe4e6);background:linear-gradient(135deg,var(--bg-gradient-start) 0,var(--bg-gradient-end) 100%);color:#2d3748;color:var(--text-primary);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;min-height:100vh}.glass-card{backdrop-filter:blur(20px);backdrop-filter:var(--blur-strong);-webkit-backdrop-filter:blur(20px);-webkit-backdrop-filter:var(--blur-strong);background:#ffffffe6;background:var(--surface-glass);border:1px solid #ffffff80;border:1px solid var(--border-light);border-radius:20px;box-shadow:0 8px 16px #0000001a;box-shadow:var(--shadow-md);transition:transform .3s ease,box-shadow .3s ease}.glass-card:hover{box-shadow:0 15px 35px #0003;box-shadow:var(--shadow-lg);transform:translateY(-5px)}h1,h2,h3,h4,h5,h6{color:#2d3748;color:var(--text-primary);font-weight:700;line-height:1.3;margin:0}h1{color:#944c68;color:var(--primary);font-size:2.5rem;font-weight:800}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}.btn{border-radius:12px;display:inline-flex;font-family:inherit;padding:12px 24px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#b8627d,#944c68);background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 15px #944c6866;color:#fff}.btn-primary:hover{box-shadow:0 8px 20px #944c6899;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #0000;box-shadow:0 2px 4px #0000000d;box-shadow:var(--shadow-sm);color:#944c68;color:var(--primary)}.btn-secondary:hover{background:#f8fafc;box-shadow:0 8px 16px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-success{background:linear-gradient(90deg,#059669,#34d399);background:var(--success-gradient);box-shadow:0 4px 15px #00b09b66;color:#fff}.btn-danger{background:linear-gradient(90deg,#e53e3e,#f87171);background:var(--error-gradient);box-shadow:0 4px 15px #e53e3e66;color:#fff}.form-input{background:#f8fafc;border:2px solid #0000;border-radius:12px;color:#2d3748;color:var(--text-primary);font-size:1rem;padding:12px 16px;transition:all .3s ease;width:100%}.form-input:focus{background:#fff;border-color:#b8627d;border-color:var(--secondary);box-shadow:0 0 0 4px #b8627d1a;outline:none}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#ffffff1a}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#ffffff80}.fade-in{animation:fadeIn .4s ease-out forwards}:root{--status-available-bg:#10b9811a;--status-available-bg-hover:#10b98133;--status-available-border:#10b9814d;--status-available-color:#059669;--status-available-solid:#10b981;--status-occupied-bg:#ef44440f;--status-occupied-bg-hover:#ef44441f;--status-occupied-border:#ef44444d;--status-occupied-color:#dc2626;--status-occupied-solid:#ef4444;--status-billing-bg:#fbbf241f;--status-billing-bg-hover:#fbbf2433;--status-billing-border:#fbbf2459;--status-billing-color:#d97706;--status-billing-solid:#f59e0b;--status-paid-bg:#7c3aed14;--status-paid-bg-hover:#7c3aed29;--status-paid-border:#7c3aed4d;--status-paid-color:#6d28d9;--status-paid-solid:#7c3aed;--primary-tint-06:#944c680f;--primary-tint-08:#944c6814;--primary-tint-10:#944c681a;--primary-tint-15:#944c6826;--primary-tint-20:#944c6833;--primary-tint-30:#944c684d;--primary-tint-35:#944c6859;--primary-tint-40:#944c6866;--primary-tint-45:#944c6873;--neutral-50:#f9fafb;--neutral-100:#f3f4f6;--neutral-200:#e5e7eb;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-700:#374151;--header-height:80px}.order-mode-bar{align-items:center;background:var(--surface-glass-strong);border-bottom:1px solid var(--border-light);display:grid;flex-shrink:0;grid-template-columns:1fr auto 1fr;padding:.75rem 1rem}.order-mode-center{justify-content:center}.order-mode-center,.order-mode-right{align-items:center;display:flex;gap:.75rem}.order-mode-right{justify-content:flex-end}.order-mode-tab,.order-mode-tabs{display:flex;gap:.5rem}.order-mode-tab{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);font-weight:600;padding:.75rem 1.25rem;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.order-mode-tab:hover{background:#944c6814;background:var(--primary-tint-08)}.order-mode-tab.active{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 12px #944c684d;box-shadow:0 4px 12px var(--primary-tint-30);color:#fff}.mode-icon{font-size:var(--text-xl)}.selected-table-indicator{align-items:center;display:flex;gap:.5rem}.btn-deselect-table{align-items:center;background:var(--surface-raised);border:1.5px solid var(--neutral-300);border-radius:50%;color:#6b7280;color:var(--neutral-500);cursor:pointer;display:flex;flex-shrink:0;font-size:var(--text-xs);height:22px;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease;width:22px}.btn-deselect-table:hover{background:#ef44440f;background:var(--status-occupied-bg);border-color:#ef44444d;border-color:var(--status-occupied-border);color:#dc2626;color:var(--status-occupied-color)}.table-badge{background:#10b9811a;background:var(--status-available-bg);border:2px solid #10b9814d;border:2px solid var(--status-available-border);border-radius:var(--radius-xl);color:#059669;color:var(--status-available-color);font-size:var(--text-sm);font-weight:700;padding:.5rem 1rem;transition:background .2s ease,border-color .2s ease}.table-badge.clickable{cursor:pointer}.table-badge.clickable:hover{background:#10b98133;background:var(--status-available-bg-hover);border-color:#10b981;border-color:var(--status-available-solid);box-shadow:0 2px 8px #10b9814d;box-shadow:0 2px 8px var(--status-available-border);transform:translateY(-1px)}.table-badge.clickable:active{transform:translateY(0)}.btn-change-table{background:#fff;border:2px solid #10b9814d;border:2px solid var(--status-available-border);border-radius:var(--radius-xl);color:#059669;color:var(--status-available-color);cursor:pointer;font-size:var(--text-sm);font-weight:700;padding:.5rem .75rem;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.btn-change-table:hover{background:#10b9811a;background:var(--status-available-bg);border-color:#10b981;border-color:var(--status-available-solid);box-shadow:0 2px 8px #10b98133;box-shadow:0 2px 8px var(--status-available-bg-hover);transform:translateY(-1px)}.btn-change-table:active{transform:translateY(0)}.order-mode-search{flex:1 1;margin-left:auto;max-width:400px}.search-input-new{border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-base);padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s;width:100%}.search-input-new:focus{border-color:var(--secondary);box-shadow:0 0 0 3px #b8627d1a;outline:none}.cart-quick-btn{align-items:center;background:#fff;border:none;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;font-size:var(--text-2xl);height:48px;justify-content:center;position:relative;transition:transform .2s,box-shadow .2s;width:48px}.cart-quick-btn:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05)}.cart-count-badge{align-items:center;background:linear-gradient(135deg,var(--secondary),var(--primary));border-radius:var(--radius-full);color:#fff;display:flex;font-size:var(--text-xs);font-weight:700;height:22px;justify-content:center;position:absolute;right:-5px;top:-5px;width:22px}.category-sidebar{background:#fff;border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding:1rem;width:220px}.sidebar-title{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;letter-spacing:.05em;margin:0 0 .75rem;text-transform:uppercase}.categories-list{display:flex;flex-direction:column;gap:.25rem}.category-item{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-weight:600;padding:.75rem 1rem;text-align:left;transition:background .2s,color .2s,box-shadow .2s}.category-item:hover{background:#944c6814;background:var(--primary-tint-08)}.category-item.active{background:linear-gradient(135deg,var(--secondary),var(--primary));color:#fff}.subcategories-section{border-top:1px solid var(--border-color);margin-top:1.25rem;padding-top:1.25rem}.subcategories-list{display:flex;flex-direction:column;gap:.2rem}.subcategory-item{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:500;padding:.5rem 1rem;text-align:left;transition:background .15s,color .15s}.subcategory-item:hover{background:#f3f4f6;background:var(--neutral-100);color:var(--text-primary)}.subcategory-item.active{background:#944c681a;background:var(--primary-tint-10);color:var(--primary);font-weight:700}.sidebar-subcategories-list{border-left:2px solid var(--border-color);display:flex;flex-direction:column;gap:.1rem;margin:.2rem 0 .35rem .75rem;padding-left:.5rem}.sidebar-customer-info,.sidebar-table-info{border-top:1px solid var(--border-color);margin-top:1.5rem;padding-top:1.5rem}.table-info-card{background:#10b9811a;background:var(--status-available-bg);border-radius:var(--radius-md);padding:1rem}.table-number{color:var(--text-primary);font-size:var(--text-xl);font-weight:800}.table-status{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:.5rem;margin-top:.5rem}.status-dot{border-radius:var(--radius-full);height:10px;width:10px}.status-dot.available{background:#10b981;background:var(--status-available-solid)}.status-dot.occupied{background:#ef4444;background:var(--status-occupied-solid)}.status-dot.billed,.status-dot.billing{background:#f59e0b;background:var(--status-billing-solid)}.status-dot-sm{border-radius:50%;flex-shrink:0;height:10px;width:10px}.status-dot-sm.available{background:#10b981;background:var(--status-available-solid)}.status-dot-sm.occupied{background:#ef4444;background:var(--status-occupied-solid)}.status-dot-sm.billed,.status-dot-sm.billing{background:#f59e0b;background:var(--status-billing-solid)}.status-dot-sm.paid{background:#7c3aed;background:var(--status-paid-solid)}.current-order-info{border-top:1px solid #00000014;display:flex;flex-direction:column;gap:.125rem;margin-top:.75rem;padding-top:.625rem}.order-label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.order-number{color:var(--primary);font-size:var(--text-sm);font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customer-form{display:flex;flex-direction:column;gap:.5rem}.customer-input{border:2px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);padding:.75rem}.customer-input:focus{border-color:var(--secondary);outline:none}.subcategory-bar{background:#fff;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:.4rem;overflow-x:auto;padding:.6rem 1.5rem;scrollbar-width:none}.subcategory-bar::-webkit-scrollbar{display:none}.subcategory-chip{background:#0000;border:1.5px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;flex-shrink:0;font-size:var(--text-sm);font-weight:600;padding:.35rem 1rem;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.subcategory-chip:hover{border-color:var(--primary);color:var(--primary)}.subcategory-chip.active{background:linear-gradient(135deg,var(--secondary),var(--primary));border-color:#0000;box-shadow:0 2px 8px #944c6833;box-shadow:0 2px 8px var(--primary-tint-20);color:#fff}.subcategory-chip.orphan{border-style:dashed;color:var(--text-light)}.subcategory-chip.orphan.active{background:#9ca3af;background:var(--neutral-300,#9ca3af);border-color:#0000;box-shadow:none;color:#fff}.menu-grid-container{flex:1 1;overflow-y:auto;padding:1rem 1.5rem}.menu-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(min(130px,calc(50% - .5rem)),1fr))}.menu-grid-empty{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center}.menu-grid-empty .empty-icon{font-size:4rem;margin-bottom:1rem}.menu-grid-empty .empty-hint{color:var(--text-light);font-size:var(--text-sm)}.menu-item-card{background:#fff;border:2px solid #0000;border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014;contain:layout style paint;contain-intrinsic-size:130px 280px;content-visibility:auto;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:border-color .2s ease}.menu-item-card:hover{border-color:var(--secondary)}.menu-item-card.in-cart{border-color:var(--primary);box-shadow:0 4px 16px #944c6833;box-shadow:0 4px 16px var(--primary-tint-20)}.menu-item-card.billed-locked{cursor:not-allowed;opacity:.5;pointer-events:none}.menu-item-quantity-badge{background:linear-gradient(135deg,var(--secondary),var(--primary));border-radius:var(--radius-full);color:#fff;font-size:var(--text-sm);font-weight:800;height:32px;right:8px;top:8px;width:32px;z-index:2}.menu-item-ordered-badge,.menu-item-quantity-badge{align-items:center;box-shadow:0 2px 8px #0003;display:flex;justify-content:center;position:absolute}.menu-item-ordered-badge{background:#fff;border:2px solid var(--primary);border-radius:14px;color:var(--primary);font-size:.9rem;font-weight:900;height:28px;left:6px;min-width:28px;padding:0 7px;pointer-events:none;top:6px;z-index:3}.menu-item-image{aspect-ratio:3/4;background:linear-gradient(135deg,#f8f9fa,#e9ecef);cursor:pointer;overflow:hidden}.menu-item-image img{height:100%;object-fit:cover;width:100%}.menu-item-placeholder{align-items:center;color:var(--text-light);display:flex;font-size:2rem;height:100%;justify-content:center;width:100%}.menu-item-info{cursor:pointer;flex:1 1;padding:.5rem .6rem .25rem}.menu-item-name{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;flex:1 1;font-size:var(--text-sm);font-weight:600;line-height:1.3;margin:0;overflow:hidden}.menu-item-price{color:var(--primary);font-size:var(--text-base);font-weight:700}.menu-item-footer{display:flex;flex-direction:column;gap:.35rem;margin-top:auto;padding:.4rem .6rem .55rem}.menu-item-footer-row{align-items:center;display:flex;justify-content:space-between}.menu-item-add-btn{align-items:center;background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;font-weight:700;height:30px;justify-content:center;line-height:1;transition:opacity .15s,transform .1s;width:30px}.menu-item-add-btn:active{opacity:.85;transform:scale(.92)}.menu-item-qty-ctrl{align-items:center;display:flex;justify-content:space-between;width:100%}.menu-item-qty-btn{align-items:center;background:#0000;border:1.5px solid var(--primary);border-radius:50%;color:var(--primary);cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:26px;justify-content:center;transition:background .15s,color .15s;width:26px}.menu-item-qty-btn:active{background:var(--primary);color:#fff}.menu-item-qty-num{color:var(--text-primary);font-size:var(--text-sm);font-weight:700;min-width:16px;text-align:center}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.loading-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center}.loading-spinner{animation:spin .8s linear infinite;border:3px solid var(--border-color);border-radius:var(--radius-full);border-top-color:var(--primary);height:40px;margin-bottom:1rem;width:40px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.order-mode-bar{gap:.5rem;grid-template-columns:auto 1fr auto}.order-mode-tabs{justify-content:flex-start}.order-mode-tab{padding:.5rem .75rem}.mode-label{display:none}.order-mode-search{margin-left:0;max-width:none;order:3;width:100%}.category-sidebar{border-bottom:1px solid var(--border-color);border-right:none;max-height:150px;width:100%}.categories-list{flex-direction:row;flex-wrap:wrap;gap:.5rem}}.pos-page-v2{background:var(--bg-lighter);display:flex;flex-direction:column;height:calc(100vh - 80px);overflow:hidden;width:100%}.pos-message{animation:slideUp .2s ease;background:#374151;background:var(--neutral-700);border-radius:var(--radius-md);box-shadow:0 4px 16px #00000026;color:#fff;font-size:var(--text-sm);font-weight:600;left:50%;padding:.75rem 1.5rem;position:fixed;top:calc(80px + .5rem);top:calc(var(--header-height) + .5rem);transform:translateX(-50%);z-index:400}.pos-message.success{background:#10b981;background:var(--status-available-solid)}.pos-message.error{background:#ef4444;background:var(--status-occupied-solid)}.pos-message.info{background:var(--primary)}.pos-main-content{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:180px 1fr 340px;overflow:hidden}.pos-center-panel,.right-cart-panel{background:var(--bg-lighter);display:flex;flex-direction:column;overflow:hidden}.right-cart-panel{border-left:1px solid #944c6826;border-left:1px solid var(--primary-tint-15);position:relative}.cart-panel-header-v2{background:linear-gradient(135deg,#944c681a,#944c680f);background:linear-gradient(135deg,var(--primary-tint-10),var(--primary-tint-06));border-bottom:1px solid #944c6833;border-bottom:1px solid var(--primary-tint-20);padding:1rem}.order-status-strip{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.oss-chip{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:700;padding:3px 8px;white-space:nowrap}.oss-pending{background:#fef3c7;color:#92400e}.oss-preparing{background:#dbeafe;color:#1e40af}.oss-ready{background:#d1fae5;color:#065f46}.oss-served{background:#944c681a;background:var(--primary-tint-10);color:var(--primary)}.oss-packed{background:#f3f4f6;color:#374151}.all-served-banner{background:#fff;border:2px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);font-size:var(--text-sm);font-weight:800;letter-spacing:.02em;margin-top:8px;padding:6px 12px;text-align:center}.table-header-info{align-items:center;display:flex;gap:1rem}.table-badge-large{align-items:center;background:linear-gradient(135deg,var(--secondary),var(--primary));border-radius:var(--radius-md);box-shadow:0 2px 8px #944c684d;box-shadow:0 2px 8px var(--primary-tint-30);color:#fff;display:flex;font-size:var(--text-base);font-weight:700;height:44px;justify-content:center;width:44px}.table-details{display:flex;flex-direction:column;gap:.2rem}.table-status-text{background:#944c681a;background:var(--primary-tint-10);border-radius:var(--radius-full);color:var(--primary);display:inline-block;font-size:var(--text-xs);letter-spacing:.4px;padding:.15rem .5rem;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.order-num{color:var(--primary);font-size:var(--text-sm);font-weight:600}.panel-title{font-size:var(--text-base);font-weight:600;margin:0}.cart-items-section-v2{flex:0 1 auto;overflow-y:auto;padding:.75rem}.kitchen-strip{border-top:1px solid #944c6826;border-top:1px solid var(--primary-tint-15);padding:.6rem .75rem .4rem}.kitchen-strip .btn-kitchen{width:100%}.order-notes-strip{padding:.4rem .75rem}.order-notes-strip textarea{background:#f9fafb;background:var(--bg-light,#f9fafb);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-secondary);font-size:var(--text-sm);padding:6px 10px;resize:none;width:100%}.order-notes-strip textarea:focus{border-color:var(--primary);outline:none}.order-notes-display{background:#f9fafb;background:var(--bg-light,#f9fafb);border-left:2px solid var(--primary);color:var(--text-secondary);font-size:var(--text-sm);font-style:italic;margin-bottom:.5rem;padding:.35rem .75rem}.cart-group{background:#fff;border:1px solid #944c681a;border:1px solid var(--primary-tint-10);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:.75rem;padding:.75rem}.cart-group-header{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);font-weight:700;justify-content:space-between;margin-bottom:.5rem;text-transform:uppercase}.btn-clear-sm{background:none;border:none;color:#dc2626;color:var(--status-occupied-color);cursor:pointer;font-size:var(--text-xs);text-decoration:underline}.cart-item-v2{background:var(--bg-lighter);border-left:3px solid #944c684d;border-left:3px solid var(--primary-tint-30);border-radius:var(--radius-sm);margin-bottom:.5rem;padding:.5rem}.cart-item-main{align-items:center;display:flex;gap:.5rem}.item-name-wrapper{display:flex;flex:1 1;flex-direction:column;gap:.2rem;min-width:0}.cart-item-main .item-name{font-size:var(--text-sm);font-weight:600}.item-qty-controls{align-items:center;display:flex;gap:.25rem}.item-qty-controls button{background:var(--bg-lighter);border:none;border-radius:6px;color:var(--primary);cursor:pointer;font-weight:700;height:28px;transition:background .15s,color .15s;width:28px}.item-qty-controls button:hover{background:var(--primary);color:#fff}.item-qty-controls span{font-weight:700;min-width:24px;text-align:center}.cart-item-main .item-total{color:var(--primary);font-weight:700}.item-notes{border:1px solid var(--border-color);border-radius:6px;font-size:var(--text-sm);margin-top:.4rem;padding:.4rem;width:100%}.btn-pack-toggle{background:none;border:1.5px solid var(--border-color);border-radius:6px;cursor:pointer;flex-shrink:0;font-size:var(--text-sm);min-height:32px;min-width:32px;opacity:.45;padding:.15rem .4rem;transition:opacity .15s,border-color .15s,background .15s}.btn-pack-toggle.active{background:#944c681a;background:var(--primary-tint-10,#f9eef3);border-color:var(--primary);opacity:1}.packaging-charge-input{border:1px solid var(--border-color);border-radius:6px;font-size:var(--text-sm);padding:.25rem .4rem;text-align:right;width:70px}.cart-subtotal,.order-total-v2{border-top:1px dashed var(--border-color);display:flex;font-weight:700;justify-content:space-between;margin-top:.5rem;padding:.5rem 0}.cart-subtotal--total{color:var(--primary);font-size:var(--text-lg)}.order-total-v2{color:var(--primary);font-size:var(--text-xl)}.paid-info{color:#059669;color:var(--status-available-color);display:flex;font-size:var(--text-sm);justify-content:space-between}.paid-amount{font-weight:600}.order-item-v2{align-items:center;border-bottom:1px solid var(--border-light);display:flex;font-size:var(--text-sm);gap:.5rem;padding:.4rem 0}.order-item-v2 .item-name-wrapper{flex:1 1;min-width:0}.order-item-v2 .item-name{display:block;font-size:var(--text-sm)}.item-pack-badge{flex-shrink:0;font-size:var(--text-base);line-height:1}.order-item-v2 .item-qty{color:var(--text-secondary);text-align:center;width:40px}.order-item-v2 .item-total{font-weight:600;text-align:right;width:60px}.order-item-v2 .item-note-inline{color:var(--text-secondary);font-size:var(--text-sm);font-style:italic;font-weight:400}.order-item-v2 .item-qty-group{font-weight:600}.order-item-v2 .item-qty-group,.order-item-v2 .item-timer{color:var(--text-secondary);flex-shrink:0;font-size:var(--text-xs);margin-left:4px}.order-item-v2 .item-timer{white-space:nowrap}.order-item-v2 .item-timer--warn{color:#d97706}.order-item-v2 .item-timer--late{color:#dc2626;font-weight:600}.btn-remove-order-item{background:none;border:none;color:#94a3b8;cursor:pointer;flex-shrink:0;font-size:var(--text-xl);line-height:1;min-height:32px;min-width:32px;padding:0 4px;transition:color .15s}.btn-remove-order-item:hover{color:#ef4444}.order-item-waived{opacity:.6}.order-item-waived .item-name s,.order-item-waived .item-total s{color:var(--text-secondary)}.waived-reason-tag{background:#e53e3e14;border:1px solid #e53e3e33;border-radius:var(--radius-sm);color:var(--error);display:inline-block;font-size:var(--text-xs);font-weight:600;margin-left:4px;padding:1px 5px;text-decoration:none;white-space:nowrap}.cart-group--new{background:#10b98108;border-left:3px solid #10b981}.cart-group--new .cart-group-header{color:#059669}.cart-group--sent{border-left:3px solid #944c684d;border-left:3px solid var(--primary-tint-30)}.item-kds-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:8px;width:8px}.item-kds-dot--pending{background:#f59e0b}.item-kds-dot--preparing{animation:kds-pulse 1.6s ease-in-out infinite;background:#3b82f6}.item-kds-dot--ready{background:#10b981}.item-kds-dot--served{background:#d1d5db}@keyframes kds-pulse{0%,to{opacity:1}50%{opacity:.35}}.discount-summary-row{color:#d97706!important;color:var(--status-billing-color)!important;font-weight:600}.discount-deduction{color:#d97706;color:var(--status-billing-color);font-weight:700}.order-notes-v2 textarea{border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);padding:.5rem;resize:none;width:100%}.cart-empty-v2{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:2rem}.cart-empty-v2 .empty-icon{font-size:3rem;margin-bottom:.5rem}.payment-section-v2{background:#944c680f;background:var(--primary-tint-06);border-top:1px solid #944c6833;border-top:1px solid var(--primary-tint-20);padding:.75rem}.payment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.payment-header h4{margin:0}.btn-close-payment{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-xl);height:28px;width:28px}.payment-methods-v2{display:flex;gap:.5rem;margin-bottom:.75rem}.payment-method-v2{background:#fff;border:2px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;flex:1 1;font-size:var(--text-sm);font-weight:600;padding:.6rem;transition:background .15s,border-color .15s}.payment-method-v2.active{background:#944c681a;background:var(--primary-tint-10);border-color:var(--primary)}.cash-section input,.txn-ref-input{border:2px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-base);padding:.6rem;width:100%}.payment-summary-row{border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);font-size:var(--text-base);font-weight:700;justify-content:space-between;padding:.5rem 0}.payment-summary-row,.split-entry-row{align-items:center;display:flex;margin-bottom:.5rem}.split-entry-row{gap:.4rem}.split-amount-input{border:2px solid var(--border-color);border-radius:var(--radius-sm);flex:1 1;font-size:var(--text-base);min-width:0;padding:.5rem}.split-method-select{background:#fff;border:2px solid var(--border-color);border-radius:var(--radius-sm);padding:.5rem .4rem}.btn-split-add,.split-method-select{cursor:pointer;font-size:var(--text-sm)}.btn-split-add{background:var(--primary);border:none;border-radius:var(--radius-sm);color:#fff;font-weight:600;padding:.5rem .75rem;white-space:nowrap}.btn-split-add:disabled{cursor:not-allowed;opacity:.4}.splits-list{border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-bottom:.5rem;overflow:hidden}.split-row{border-bottom:1px solid var(--border-color);font-size:var(--text-sm);justify-content:space-between;padding:.4rem .6rem}.split-row:last-child{border-bottom:none}.split-row-right{align-items:flex-end;display:flex;flex-direction:column;gap:.1rem}.split-ref-tag{color:var(--text-secondary);font-family:monospace;font-size:.7rem;opacity:.7}.split-ref-input{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;color:var(--text-primary);font-size:var(--text-sm);margin-bottom:.4rem;padding:.4rem .6rem;width:100%}.split-ref-input:focus{border-color:#6366f1;border-color:var(--accent-color,#6366f1);outline:none}.split-ref-input::placeholder{color:var(--text-secondary);opacity:.6}.btn-remove-split{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);line-height:1;padding:0 .25rem}.btn-remove-split:hover{color:#e53e3e;color:var(--danger,#e53e3e)}.split-remaining{align-items:center;display:flex;font-size:var(--text-sm);font-weight:700;justify-content:space-between;margin-bottom:.4rem;padding:.4rem 0}.split-remaining.unpaid span:last-child{color:#e53e3e;color:var(--danger,#e53e3e)}.change-display-v2,.split-remaining.paid span:last-child{color:#059669;color:var(--status-available-color)}.change-display-v2{background:#10b9811a;background:var(--status-available-bg);border-radius:6px;font-weight:600;margin-top:.5rem;padding:.5rem}.split-section{margin-top:.5rem}.split-controls{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.split-controls input{border:2px solid var(--border-color);border-radius:6px;padding:.4rem;text-align:center;width:60px}.split-row{align-items:center;display:flex;gap:.5rem;padding:.4rem 0}.split-row select{border:1px solid var(--border-color);border-radius:4px;padding:.3rem}.cart-actions-v2{background:#944c680f;background:var(--primary-tint-06);border-radius:0 0 var(--radius-lg) 0;border-top:1.5px solid #944c6826;border-top:1.5px solid var(--primary-tint-15);display:flex;flex-wrap:wrap;gap:.5rem;padding:.85rem .75rem 1rem}.btn-action{border:none;border-radius:var(--radius-md);cursor:pointer;flex:1 1;font-size:var(--text-base);font-weight:700;letter-spacing:.2px;line-height:1;min-width:45%;padding:.85rem;transition:opacity .2s,transform .2s}.btn-kitchen{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 14px #944c6859;box-shadow:0 4px 14px var(--primary-tint-35);color:#fff;font-size:var(--text-xl);letter-spacing:.3px;min-width:100%;padding:1rem}.btn-kitchen:hover:not(:disabled){box-shadow:0 6px 18px #944c6873;box-shadow:0 6px 18px var(--primary-tint-45);transform:translateY(-2px)}.btn-kitchen:disabled{cursor:not-allowed;opacity:.5}.btn-bill{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;box-shadow:0 4px 14px #d9770673;color:#fff;font-size:var(--text-lg);letter-spacing:.3px;min-width:100%}.btn-bill:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 6px 20px #d977068c;transform:translateY(-2px)}.btn-split{background:#944c681a;background:var(--primary-tint-10);border:1.5px solid #944c684d;border:1.5px solid var(--primary-tint-30);color:var(--primary)}.btn-split:hover{background:#944c6833;background:var(--primary-tint-20);border-color:var(--primary);box-shadow:0 4px 12px #944c6833;box-shadow:0 4px 12px var(--primary-tint-20);transform:translateY(-1px)}.btn-print{background:#22c55e33;color:#059669;color:var(--status-available-color)}.btn-pay{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 14px #944c6859;box-shadow:0 4px 14px var(--primary-tint-35);color:#fff;font-size:var(--text-xl);min-width:100%;padding:1rem}.btn-pay:hover:not(:disabled){box-shadow:0 6px 18px #944c6873;box-shadow:0 6px 18px var(--primary-tint-45);transform:translateY(-2px)}.btn-release{background:linear-gradient(135deg,#10b981,#059669);background:linear-gradient(135deg,var(--status-available-solid),var(--status-available-color));border:none;box-shadow:0 4px 14px #10b98159;color:#fff;min-width:100%}.btn-release:hover{box-shadow:0 6px 18px #10b98173;transform:translateY(-2px)}.btn-cancel-order{background:linear-gradient(135deg,#e53e3e,#c53030);border:none;box-shadow:0 4px 14px #e53e3e59;color:#fff;min-width:100%}.btn-cancel-order:hover:not(:disabled){box-shadow:0 6px 18px #e53e3e73;transform:translateY(-2px)}.btn-cancel-order:disabled{cursor:not-allowed;opacity:.6}.status-pill{border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:700;padding:.2rem .5rem;text-transform:uppercase}.status-pill.pending{background:#ef44440f;background:var(--status-occupied-bg);color:#dc2626;color:var(--status-occupied-color)}.status-pill.cooking{background:#fbbf2433;background:var(--status-billing-bg-hover);color:#d97706;color:var(--status-billing-color)}.status-pill.ready{background:#22c55e33;color:#059669;color:var(--status-available-color)}.status-pill.served{background:#944c681a;background:var(--primary-tint-10);color:var(--primary)}.table-selection-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:300}.table-selection-content{background:#fff;border-radius:var(--radius-xl);display:flex;flex-direction:column;max-height:85vh;max-width:900px;overflow:hidden;width:100%}.table-selection-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem}.header-left h2{margin:0 0 .25rem}.header-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.btn-switch-mode{background:none;border:2px solid var(--primary);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:background .2s,color .2s}.btn-switch-mode:hover{background:var(--primary);color:#fff}.table-filter-tabs{border-bottom:1px solid var(--border-color);display:flex;gap:.5rem;padding:1rem 1.5rem}.filter-tab{background:#0000;border:none;border-radius:var(--radius-sm);cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:background .2s,color .2s}.filter-tab:hover{background:var(--bg-lighter)}.filter-tab.active{background:linear-gradient(135deg,var(--secondary),var(--primary));color:#fff}.tables-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:3rem}.table-grid-overlay{grid-gap:1rem;display:grid;flex:1 1;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));overflow-y:auto;padding:1.5rem}.table-card-overlay{background:#fff;border:3px solid #e5e7eb;border:3px solid var(--neutral-200);border-radius:var(--radius-lg);cursor:pointer;padding:1rem;text-align:center;transition:border-color .2s,box-shadow .2s}.table-card-overlay:hover{box-shadow:0 8px 20px #0000001a}.table-card-overlay.available:hover{border-color:#10b981;border-color:var(--status-available-solid)}.table-card-overlay.occupied:hover{border-color:#ef4444;border-color:var(--status-occupied-solid)}.table-card-overlay.billing:hover{border-color:#f59e0b;border-color:var(--status-billing-solid)}.table-number-overlay{align-items:center;display:flex;gap:.5rem;justify-content:center;margin-bottom:.5rem}.table-number-overlay .status-indicator{font-size:var(--text-base)}.table-number-overlay .table-num{font-size:2rem;font-weight:800}.table-info-overlay{color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:1rem;justify-content:center;margin-bottom:.5rem}.table-order-overlay{background:#944c681a;background:var(--primary-tint-10);border-radius:var(--radius-sm);margin-top:.5rem;padding:.5rem}.table-order-overlay .order-number{color:var(--primary);font-weight:700}.table-order-overlay .order-amount{font-weight:700}.table-order-overlay .order-status{color:var(--text-secondary);font-size:var(--text-sm);text-transform:capitalize}.table-hint{color:#059669;color:var(--status-available-color);font-size:var(--text-sm);margin-top:.5rem}.table-tips{background:var(--bg-lighter);border-top:1px solid var(--border-color);display:flex;gap:2rem;padding:1rem 1.5rem}.tip{color:var(--text-secondary);font-size:var(--text-sm)}@media (min-width:1440px){.pos-main-content{grid-template-columns:220px 1fr 380px}.category-sidebar{width:220px}}@media (min-width:1920px){.pos-main-content{grid-template-columns:260px 1fr 460px}.category-sidebar{width:260px}}@media (max-width:1024px){.pos-main-content{grid-template-columns:1fr}.category-sidebar{display:none}.right-cart-panel{border-left:none;border-top:1px solid var(--border-color);bottom:0;height:auto;left:0;max-height:50vh;position:fixed;right:0;z-index:100}}.tables-toggle-btn{align-items:center;background:#0000;border:2px solid #0000;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--text-base);font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}.tables-toggle-btn:hover{border-color:var(--secondary);box-shadow:0 4px 12px #944c6826;box-shadow:0 4px 12px var(--primary-tint-15);color:var(--secondary)}.tables-toggle-btn.active{background:linear-gradient(135deg,var(--secondary),var(--primary));border-color:#0000;box-shadow:0 4px 12px #944c684d;box-shadow:0 4px 12px var(--primary-tint-30);color:#fff}.tables-icon{font-size:var(--text-xl)}.tables-label{font-weight:700}.tables-toggle-btn{position:relative}.self-order-dot{align-items:center;animation:badge-pulse 2s ease-in-out infinite;background:#ef4444;border-radius:var(--radius-full);color:#fff;display:inline-flex;font-size:var(--text-xs);font-weight:700;height:20px;justify-content:center;line-height:1;margin-left:4px;min-width:20px;padding:0 5px}@keyframes badge-pulse{0%,to{box-shadow:0 0 0 0 #ef444480}50%{box-shadow:0 0 0 5px #ef444400}}.tables-fullpage-view{background:var(--bg-lighter);display:flex;flex:1 1;flex-direction:column;overflow:hidden}.tables-loading-state{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;justify-content:center}.tables-header{grid-gap:1.25rem;align-items:center;background:#fff;border-bottom:1px solid var(--border-color);display:grid;gap:1.25rem;grid-template-columns:1fr auto 1fr;padding:1rem 2rem}.tables-return-to-menu-btn{background:linear-gradient(135deg,#b8627d,#944c68);background:linear-gradient(135deg,var(--secondary,#b8627d),var(--primary,#944c68));border:none;border-radius:var(--radius-md);box-shadow:0 2px 8px #944c6859;color:#fff;cursor:pointer;font-size:1rem;font-weight:800;letter-spacing:.03em;padding:.7rem 2rem;transition:opacity .15s,transform .1s;white-space:nowrap}.tables-return-to-menu-btn:hover{opacity:.9;transform:translateY(-1px)}.tables-header-left{display:flex;flex-direction:column;flex-shrink:0}.tables-title{color:var(--text-primary);font-size:var(--text-2xl);font-weight:800;margin:0}.tables-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:.25rem 0 0}.tables-quick-stats{flex-wrap:wrap;gap:.4rem}.tables-header-right,.tables-quick-stats{align-items:center;display:flex;margin-left:auto}.tables-header-right{flex-shrink:0;gap:.75rem;min-width:0}.active-table-pill{background:#944c6826;background:var(--primary-tint-15);border-radius:var(--radius-full);color:var(--primary);padding:4px 12px}.active-table-pill,.btn-back-to-menu{font-size:var(--text-sm);font-weight:700;white-space:nowrap}.btn-back-to-menu{align-items:center;background:var(--primary);border:none;border-radius:var(--radius-md);box-shadow:0 3px 10px #944c684d;box-shadow:0 3px 10px var(--primary-tint-30);color:#fff;cursor:pointer;display:flex;gap:.4rem;padding:.55rem 1.1rem;transition:background .2s ease,box-shadow .2s ease}.btn-back-to-menu:hover{background:var(--secondary);box-shadow:0 5px 14px #944c6859;box-shadow:0 5px 14px var(--primary-tint-35)}.stat-item{align-items:center;background:var(--bg-lighter);border-radius:var(--radius-md);display:flex;flex:0 0 auto;gap:.35rem;padding:.3rem .65rem;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap}.stat-item:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.stat-item.total{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);background:linear-gradient(135deg,var(--neutral-100),var(--neutral-200))}.stat-item.available{background:#10b9811a;background:var(--status-available-bg)}.stat-item.occupied{background:#ef44440f;background:var(--status-occupied-bg)}.stat-item.billing{background:#fbbf241f;background:var(--status-billing-bg)}.stat-item.paid{background:#7c3aed14;background:var(--status-paid-bg)}.stat-icon,.stat-value{font-size:var(--text-base)}.stat-value{color:var(--text-primary);font-weight:800}.stat-label{color:var(--text-secondary);font-size:var(--text-sm)}.tables-filter-bar{background:var(--bg-lighter);display:flex;gap:.5rem;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:5}.tables-filter-bar .filter-tab{background:#fff;border:2px solid var(--border-color);border-radius:25px;color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:.6rem 1.25rem;transition:background .2s ease,color .2s ease,border-color .2s ease}.tables-filter-bar .filter-tab:hover{border-color:var(--secondary);color:var(--secondary)}.tables-filter-bar .filter-tab.active{background:linear-gradient(135deg,var(--secondary),var(--primary));border-color:#0000;color:#fff}.tables-grid-container{flex:1 1;overflow-y:scroll;padding-top:0;scrollbar-gutter:stable}.tables-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));padding:0 2rem 1.5rem}.tables-empty-state{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:4rem}.tables-empty-state .empty-icon{font-size:4rem;margin-bottom:1rem}.table-card-fullpage{background:#fff;border:2px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000f;cursor:pointer;display:flex;flex-direction:column;gap:.3rem;min-height:148px;padding:.9rem .85rem .75rem;position:relative;transition:border-color .25s ease,box-shadow .25s ease}.table-card-fullpage:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.table-card-fullpage.available{background-color:#10b9811a;background-color:var(--status-available-bg);border-color:#10b981;border-color:var(--status-available-solid)}.table-card-fullpage.occupied{background-color:#ef44440f;background-color:var(--status-occupied-bg);border-color:#ef4444;border-color:var(--status-occupied-solid)}.table-card-fullpage.billed,.table-card-fullpage.billing{background-color:#fbbf241f;background-color:var(--status-billing-bg);border-color:#f59e0b;border-color:var(--status-billing-solid)}.table-card-fullpage.paid{background-color:#7c3aed14;background-color:var(--status-paid-bg);border-color:#7c3aed;border-color:var(--status-paid-solid)}.table-card-fullpage.available .table-status-text{color:#059669;color:var(--status-available-color)}.table-card-fullpage.occupied .table-status-text{color:#dc2626;color:var(--status-occupied-color)}.table-card-fullpage.billed .table-status-text,.table-card-fullpage.billing .table-status-text{color:#d97706;color:var(--status-billing-color)}.table-card-fullpage.paid .table-status-text{color:#6d28d9;color:var(--status-paid-color)}.table-card-fullpage.available:hover{border-color:#10b981;border-color:var(--status-available-solid);box-shadow:0 8px 24px #10b98133;box-shadow:0 8px 24px var(--status-available-bg-hover)}.table-card-fullpage.occupied:hover{border-color:#ef4444;border-color:var(--status-occupied-solid);box-shadow:0 8px 24px #ef444433}.table-card-fullpage.billed:hover,.table-card-fullpage.billing:hover{border-color:#f59e0b;border-color:var(--status-billing-solid);box-shadow:0 8px 24px #f59e0b33}.table-card-fullpage.paid:hover{border-color:#7c3aed;border-color:var(--status-paid-solid);box-shadow:0 8px 24px #7c3aed2e}.table-card-header{align-items:center;display:flex;gap:.75rem}.table-card-header .status-indicator{font-size:var(--text-base)}.table-card-header .table-number{color:var(--text-primary);font-size:1.4rem;font-weight:800;letter-spacing:-.02em}.table-card-body{align-items:center;display:flex;justify-content:space-between}.table-capacity{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--text-sm);gap:.5rem}.capacity-icon{font-size:var(--text-base)}.table-status-text{font-size:var(--text-sm);font-weight:700;text-transform:capitalize}.table-order-info{align-items:center;background:#944c6814;background:var(--primary-tint-08);border-radius:var(--radius-md);display:flex;justify-content:space-between;padding:.35rem .5rem}.table-order-info .order-number{color:var(--primary);font-size:var(--text-sm);font-weight:700}.table-order-info .order-amount{color:var(--text-primary);font-size:.95rem;font-weight:800}.table-card-action{font-size:var(--text-xs);font-weight:600;margin-top:auto;padding-top:.15rem;text-align:center}.table-card-fullpage.available .table-card-action{color:#059669;color:var(--status-available-color)}.table-card-fullpage.occupied .table-card-action{color:#dc2626;color:var(--status-occupied-color)}.table-card-fullpage.billed .table-card-action,.table-card-fullpage.billing .table-card-action{color:#d97706;color:var(--status-billing-color)}.table-card-fullpage.paid .table-card-action{color:#6d28d9;color:var(--status-paid-color)}.table-card-fullpage.current-table{box-shadow:0 0 0 5px #944c681a,0 4px 16px #944c6833;box-shadow:0 0 0 5px var(--primary-tint-10),0 4px 16px var(--primary-tint-20);outline:3px solid var(--primary);outline-offset:2px}@media (max-width:768px){.tables-filter-bar{flex-wrap:wrap;padding:.75rem 1rem}.tables-grid-container{overflow-y:scroll;padding-top:0;scrollbar-gutter:stable}.tables-grid{gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));padding:0 1rem 1rem}}.action-sheet-backdrop{animation:fadeIn .2s ease;background:#00000059;inset:0;position:fixed;z-index:99}.table-action-sheet{animation:slideUp .25s cubic-bezier(.34,1.56,.64,1);background:#f9fafb;background:var(--neutral-50);border-radius:var(--radius-xl) var(--radius-xl) 0 0;border-top:1px solid #e5e7eb;border-top:1px solid var(--neutral-200);bottom:0;box-shadow:0 -12px 40px #0000002e;left:0;padding:0 24px 32px;position:fixed;right:0;z-index:100}.action-sheet-handle{background:#e5e7eb;background:var(--neutral-200);border-radius:99px;height:4px;margin:12px auto 20px;width:40px}.table-action-sheet-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.action-sheet-title{display:flex;flex-direction:column;gap:2px}.action-sheet-table-badge{color:var(--primary);font-size:var(--text-lg);font-weight:700}.action-sheet-subtitle{color:#6b7280;color:var(--neutral-500);font-size:var(--text-sm)}.action-sheet-close{align-items:center;background:#f3f4f6;background:var(--neutral-100);border:none;border-radius:50%;color:#6b7280;color:var(--neutral-500);cursor:pointer;display:flex;font-size:var(--text-base);height:32px;justify-content:center;transition:background .15s;width:32px}.action-sheet-close:hover{background:#e5e7eb;background:var(--neutral-200)}.table-action-buttons{display:flex;flex-direction:row;gap:12px}.action-btn{align-items:center;border:none;border-radius:var(--radius-md);cursor:pointer;display:flex;flex:1 1;flex-direction:column;gap:6px;justify-content:center;overflow:hidden;padding:16px 10px;text-align:center;transition:opacity .15s ease}.action-btn-icon{display:block;font-size:1.75rem;line-height:1}.action-btn-text{display:flex;flex-direction:column;gap:2px}.action-btn-label{font-size:var(--text-base);font-weight:600;line-height:1.2}.action-btn-sub{font-size:var(--text-sm);font-weight:400;opacity:.9}.action-btn.move{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 14px #944c6859;box-shadow:0 4px 14px var(--primary-tint-35);color:#fff}.action-btn.move:hover{box-shadow:0 6px 18px #944c6873;box-shadow:0 6px 18px var(--primary-tint-45);transform:translateY(-1px)}.action-btn.merge{background:linear-gradient(135deg,#818cf8,#6366f1);box-shadow:0 4px 14px #6366f159;color:#fff}.action-btn.merge:hover{box-shadow:0 6px 18px #6366f173;transform:translateY(-1px)}.action-btn.open{background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--neutral-200);box-shadow:var(--shadow-sm);color:#374151;color:var(--neutral-700)}.action-btn.open:hover{background:#f9fafb;background:var(--neutral-50);border-color:#9ca3af;border-color:var(--neutral-400);box-shadow:var(--shadow-md);transform:translateY(-1px)}.action-info-note{align-items:center;background:#ef44440f;background:var(--status-occupied-bg);border:1px solid #ef44444d;border:1px solid var(--status-occupied-border);border-radius:var(--radius-md);color:#dc2626;color:var(--status-occupied-color);display:flex;font-size:var(--text-sm);font-weight:500;gap:12px;padding:14px 18px}.action-info-icon{flex-shrink:0;font-size:1.25rem}.merge-action-block{display:flex;flex:1 1;flex-direction:column;gap:8px}.merge-direction-strip{align-items:center;background:#f5f3ff;border:1.5px solid #c4b5fd;border-radius:var(--radius-md);display:flex;gap:8px;padding:10px 12px}.merge-table-pill{align-items:center;border-radius:var(--radius-sm);display:flex;flex:1 1;flex-direction:column;gap:2px;padding:7px 10px}.merge-table-pill.source{background:#fff7ed;border:1.5px solid #fed7aa}.merge-table-pill.target{background:#f0fdf4;border:1.5px solid #bbf7d0}.merge-pill-table{color:var(--neutral-800);font-size:var(--text-lg);font-weight:800;letter-spacing:-.01em;line-height:1.1}.merge-pill-amount{color:var(--neutral-600);font-size:var(--text-sm);font-weight:600}.merge-pill-tag{color:#9ca3af;color:var(--neutral-400);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.merge-arrow-block{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:1px}.merge-arrow{color:#6366f1;font-size:1.25rem;font-weight:700;line-height:1}.merge-arrow-label{color:#818cf8;font-size:var(--text-xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase}.merge-result-hint{color:#6b7280;color:var(--neutral-500);font-size:var(--text-sm);font-weight:500;text-align:center}.action-btn:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.5;transform:none!important}.btn-reopen{background:#10b9811a;background:var(--status-available-bg);border:1.5px solid #10b9814d;border:1.5px solid var(--status-available-border);color:#059669;color:var(--status-available-color)}.btn-reopen:hover{background:#10b98133;background:var(--status-available-bg-hover);border-color:#10b981;border-color:var(--status-available-solid);box-shadow:0 4px 12px #10b98133;transform:translateY(-1px)}.btn-reprint{background:var(--bg-lighter);border:1.5px solid var(--border-color);color:var(--text-secondary)}.btn-reprint:hover{background:var(--bg-light);border-color:var(--text-secondary);transform:translateY(-1px)}.btn-discount{background:#fbbf241f;background:var(--status-billing-bg);border:1.5px solid #fbbf2459;border:1.5px solid var(--status-billing-border);color:#d97706;color:var(--status-billing-color)}.btn-discount:hover{background:#fbbf2433;background:var(--status-billing-bg-hover);border-color:#f59e0b;border-color:var(--status-billing-solid);box-shadow:0 4px 12px #f59e0b33;transform:translateY(-1px)}.discount-panel{background:#fbbf241f;background:var(--status-billing-bg);border:1.5px solid #fbbf2459;border:1.5px solid var(--status-billing-border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.4rem;padding:.6rem .5rem;width:100%}.discount-panel-row{align-items:center;display:flex;gap:.4rem}.discount-input{background:var(--bg-white);border:1.5px solid #fbbf2459;border:1.5px solid var(--status-billing-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:var(--text-sm);min-width:0;padding:.5rem .6rem;transition:border-color .2s,box-shadow .2s}.discount-input:focus{border-color:#f59e0b;border-color:var(--status-billing-solid);box-shadow:0 0 0 3px #fbbf2433;box-shadow:0 0 0 3px var(--status-billing-bg-hover);outline:none}.discount-pct-label{color:#d97706;color:var(--status-billing-color);flex-shrink:0;font-size:var(--text-base);font-weight:700}.btn-discount-apply{background:#f59e0b;background:var(--status-billing-solid);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;flex-shrink:0;font-size:var(--text-sm);font-weight:700;padding:.5rem .75rem;transition:opacity .2s,transform .15s;white-space:nowrap}.btn-discount-apply:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.btn-discount-apply:disabled{cursor:not-allowed;opacity:.4}.discount-active-badge{align-items:center;background:#fbbf2433;background:var(--status-billing-bg-hover);border-radius:var(--radius-sm);color:#d97706;color:var(--status-billing-color);display:flex;font-size:var(--text-xs);font-weight:600;gap:.5rem;justify-content:space-between;padding:.25rem .5rem}.btn-remove-discount{background:#0000;border:1px solid #e53e3e66;border-radius:var(--radius-sm);color:var(--error);cursor:pointer;flex-shrink:0;font-size:var(--text-xs);font-weight:700;padding:.1rem .4rem;white-space:nowrap}.btn-remove-discount:hover{background:#e53e3e1a}.btn-waive{background:#e53e3e14;border:1.5px solid #e53e3e40;color:var(--error)}.btn-waive:hover{background:#e53e3e24;border-color:#e53e3e73;box-shadow:0 4px 12px #e53e3e26;transform:translateY(-1px)}.waive-panel{background:#e53e3e0d;border:1.5px solid #e53e3e33;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:.45rem;padding:.6rem .5rem;width:100%}.waive-section-label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:700;letter-spacing:.04em;margin-top:.2rem;text-transform:uppercase}.waive-existing-section{border-bottom:1px dashed #e53e3e40;display:flex;flex-direction:column;gap:.3rem;margin-bottom:.1rem;padding-bottom:.4rem}.waived-item-row{align-items:center;display:flex;font-size:var(--text-sm);gap:.4rem}.waived-item-name{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;flex-wrap:wrap;gap:4px}.waived-item-price{color:var(--text-secondary);flex-shrink:0;font-size:var(--text-sm);text-decoration:line-through}.btn-undo-waive{background:#e53e3e14;border:1px solid #e53e3e4d;border-radius:var(--radius-sm);color:var(--error);cursor:pointer;flex-shrink:0;font-size:var(--text-xs);font-weight:700;padding:.2rem .55rem;transition:background .15s;white-space:nowrap}.btn-undo-waive:hover{background:#e53e3e29}.waive-item-select,.waive-reason-select{background:var(--bg-white);border:1.5px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--text-sm);padding:.5rem .6rem;transition:border-color .2s;width:100%}.waive-item-select:focus,.waive-reason-select:focus{border-color:var(--error);box-shadow:0 0 0 3px #e53e3e1a;outline:none}.btn-waive-apply{background:var(--error);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-sm);font-weight:700;padding:.55rem .75rem;transition:opacity .2s,transform .15s;width:100%}.btn-waive-apply:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.btn-waive-apply:disabled{cursor:not-allowed;opacity:.4}.customer-phone-strip{align-items:center;background:#944c6814;background:var(--primary-tint-08);border-top:1px solid #944c6833;border-top:1px solid var(--primary-tint-20);display:flex;gap:.4rem;padding:.5rem .75rem;width:100%}.customer-phone-prefix{color:var(--primary);flex-shrink:0;font-size:var(--text-sm);font-weight:700}.customer-phone-input{background:var(--bg-white);border:1.5px solid #944c6833;border:1.5px solid var(--primary-tint-20);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:var(--text-sm);min-width:0;padding:.45rem .6rem;transition:border-color .2s,box-shadow .2s}.customer-phone-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #944c681a;box-shadow:0 0 0 3px var(--primary-tint-10);outline:none}.discount-reason-select{background:var(--bg-white);border:1.5px solid #fbbf2459;border:1.5px solid var(--status-billing-border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--text-sm);padding:.45rem .6rem;width:100%}.discount-reason-select:focus{border-color:#f59e0b;border-color:var(--status-billing-solid);outline:none}.discount-reason-tag{font-weight:700;opacity:.85}.whatsapp-strip{display:flex;flex-direction:column;gap:.4rem;width:100%}.whatsapp-phone-input{background:var(--bg-white);border:1.5px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);padding:.6rem .75rem;transition:border-color .2s,box-shadow .2s;width:100%}.whatsapp-phone-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #944c681a;box-shadow:0 0 0 3px var(--primary-tint-10);outline:none}.whatsapp-phone-input::placeholder{color:var(--text-muted);font-size:var(--text-xs)}.btn-whatsapp{background:#944c681a;background:var(--primary-tint-10);border:1.5px solid #944c6859;border:1.5px solid var(--primary-tint-35);border-radius:var(--radius-md);color:var(--primary);cursor:pointer;font-size:var(--text-sm);font-weight:700;padding:.6rem 1rem;transition:background .2s,border-color .2s,box-shadow .2s;white-space:nowrap;width:100%}.btn-whatsapp:hover:not(:disabled){background:#944c6833;background:var(--primary-tint-20);border-color:var(--primary);box-shadow:0 4px 12px #944c6833;box-shadow:0 4px 12px var(--primary-tint-20)}.btn-whatsapp:disabled{cursor:not-allowed;opacity:.5}.btn-clear-table{background:#10b9811a;background:var(--status-available-bg);border:1.5px solid #10b9814d;border:1.5px solid var(--status-available-border);color:#059669;color:var(--status-available-color);font-weight:700}.btn-clear-table:hover{background:#10b98133;background:var(--status-available-bg-hover);border-color:#10b981;border-color:var(--status-available-solid);box-shadow:0 4px 12px #10b98133;transform:translateY(-1px)}.table-delay-badge{align-items:center;border-radius:8px;box-sizing:border-box;display:flex;font-size:13px;font-weight:700;gap:6px;justify-content:center;letter-spacing:.01em;padding:7px 12px;width:100%}.table-delay-badge.delay-ok{background:#bbf7d0;border:1.5px solid #86efac;color:#15803d}.table-delay-badge.delay-warning{background:#fde68a;border:1.5px solid #fcd34d;color:#92400e}.table-delay-badge.delay-critical{background:#fca5a5;border:1.5px solid #f87171;color:#7f1d1d}.table-pack-badge{align-items:center;display:inline-flex;font-size:13px;margin-left:4px;opacity:.85}.table-incoming-badge{align-items:center;background:#ef4444;border-radius:var(--radius-full);color:#fff;display:inline-flex;font-size:var(--text-xs);font-weight:700;gap:3px;margin-left:auto;padding:2px 7px;white-space:nowrap}.table-card-fullpage.has-incoming-self-order{outline:2px solid #ef4444;outline-offset:-2px}.self-order-banner{align-items:center;background:#fef2f2;border:1.5px solid #fca5a5;border-radius:var(--radius-md);color:#991b1b;display:flex;font-size:var(--text-sm);gap:.75rem;margin-bottom:.75rem;padding:.75rem 1rem}.self-order-banner-icon{flex-shrink:0;font-size:1.25rem}.self-order-banner-text{flex:1 1}.self-order-banner-btn{background:#ef4444;border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:.4rem .9rem;transition:background .15s;white-space:nowrap}.self-order-banner-btn:hover{background:#dc2626}.split-bill-page{animation:slideUp .25s ease;background:var(--bg-lighter);display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.split-bill-container{display:flex;flex-direction:column;margin:0 auto;max-width:800px;min-height:100%;width:100%}.split-bill-header{align-items:center;background:#fff;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;justify-content:space-between;padding:.85rem 1.25rem;position:relative}.split-bill-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--secondary),var(--primary));-webkit-background-clip:text;font-size:var(--text-lg);font-weight:800;left:50%;margin:0;pointer-events:none;position:absolute;transform:translateX(-50%);white-space:nowrap}.btn-back{align-items:center;background:#944c6814;background:var(--primary-tint-08);border:2px solid var(--primary);border-radius:var(--radius-full);color:var(--primary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:700;gap:.3rem;padding:.55rem 1.1rem;position:relative;transition:background .2s,color .2s;white-space:nowrap;z-index:1}.btn-back:hover{background:var(--primary);box-shadow:0 4px 12px #944c684d;box-shadow:0 4px 12px var(--primary-tint-30);color:#fff;transform:translateY(-1px)}.split-order-info{background:#944c6814;background:var(--primary-tint-08);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-sm);font-weight:600;max-width:40%;padding:.4rem .75rem;position:relative;text-align:right;white-space:nowrap;z-index:1}.split-tabs{background:#fff;border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:.5rem;padding:.4rem 1rem}.split-tab{background:#0000;border:none;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-base);font-weight:600;padding:.45rem 1rem;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.split-tab:hover{background:#944c6814;background:var(--primary-tint-08)}.split-tab.active{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 12px #944c684d;box-shadow:0 4px 12px var(--primary-tint-30);color:#fff}.split-people-stepper{border-bottom:1px solid var(--border-color);color:var(--text-secondary);flex-shrink:0;font-size:var(--text-sm);font-weight:600;gap:1rem;padding:.5rem 1.25rem}.split-people-stepper,.stepper-btn{align-items:center;background:#fff;display:flex;justify-content:center}.stepper-btn{border:2px solid var(--border-color);border-radius:var(--radius-full);color:var(--primary);cursor:pointer;font-size:var(--text-xl);font-weight:700;height:30px;transition:background .15s,color .15s,border-color .15s;width:30px}.stepper-btn:hover:not(:disabled){background:var(--primary);border-color:var(--primary);color:#fff}.stepper-btn:disabled{cursor:not-allowed;opacity:.35}.stepper-value{color:var(--primary);font-size:var(--text-xl);font-weight:800;min-width:2rem;text-align:center}.split-scroll-area{display:flex;flex:0 1 auto;flex-direction:column;gap:.5rem;overflow-y:visible;padding:.5rem 1rem}.split-person-row{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:.75rem;padding:.5rem .85rem}.person-label{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;min-width:70px}.person-amount{color:var(--primary);flex:1 1;font-size:var(--text-xl);font-weight:800}.split-person-row select{background:var(--bg-lighter);border:2px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:.5rem .75rem;transition:border-color .15s}.split-person-row select:focus{border-color:var(--secondary);outline:none}.split-items-section h4,.split-totals-section h4{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700;letter-spacing:.05em;margin-bottom:.3rem;text-transform:uppercase}.split-item-row{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;gap:.75rem;margin-bottom:.35rem;padding:.5rem .85rem;transition:border-color .15s,background .15s}.split-item-name{color:var(--text-primary);flex:1 1;font-size:var(--text-sm);font-weight:600}.split-item-price{color:var(--primary);font-size:var(--text-base);font-weight:700;white-space:nowrap}.split-item-row select{background:var(--bg-lighter);border:2px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:.5rem .75rem;transition:border-color .15s}.split-item-row select:focus{border-color:var(--secondary);outline:none}.split-item-row.assigned{background:#10b9811a;background:var(--status-available-bg);border-color:#10b9814d;border-color:var(--status-available-border)}.no-items{color:var(--text-light);font-size:var(--text-sm);padding:1rem 0;text-align:center}.split-bill-actions{background:#fff;border-top:2px solid var(--border-color);bottom:0;flex-shrink:0;padding:.6rem 1rem;position:-webkit-sticky;position:sticky}.btn-release-table{align-items:center;background:#7c3aed;background:var(--status-paid-solid);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:.78rem;font-weight:700;gap:.3rem;justify-content:center;letter-spacing:.01em;margin-top:8px;padding:6px 12px;transition:background .15s ease,box-shadow .15s ease,transform .1s ease;width:100%}.btn-release-table:hover{background:#6d28d9;box-shadow:0 3px 10px #7c3aed59}.btn-release-table:active{box-shadow:none;transform:scale(.97)}.release-warning-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.release-warning-modal{background:#fff;border-radius:16px;box-shadow:0 12px 40px #00000038;max-width:300px;overflow:hidden;padding:0;text-align:center;width:92%}.release-warning-modal--error{background:#fff;border:none}.release-warning-icon{background:linear-gradient(160deg,#fef2f2,#fff 60%);display:block;font-size:2.4rem;padding:1.25rem 1rem .5rem}.release-warning-modal--error h4{color:#b91c1c;font-size:var(--text-base);font-weight:800;margin:0 0 .3rem;padding:0 1.25rem}.release-warning-subtitle{color:#6b7280;font-size:var(--text-sm);line-height:1.4;margin:0 0 .85rem;padding:0 1.25rem}.pending-items-list{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;list-style:none;margin:0 1rem .75rem;max-height:130px;overflow-y:auto;padding:.4rem .75rem;text-align:left}.pending-items-list li{align-items:center;border-bottom:1px solid #fee2e2;display:flex;justify-content:space-between;padding:4px 0}.pending-items-list li:last-child{border-bottom:none}.pending-item-name{color:#111827;font-size:var(--text-sm);font-weight:500}.pending-item-status{border-radius:4px;font-size:var(--text-xs);font-weight:700;padding:2px 7px;text-transform:uppercase}.status-pending{background:#fef3c7;color:#92400e}.status-preparing{background:#dbeafe;color:#1e40af}.status-ready{background:#d1fae5;color:#065f46}.pending-items-unknown{color:#6b7280;font-size:var(--text-sm);font-style:italic;margin:0 1.25rem .75rem}.pending-items-instruction{color:#374151;font-size:var(--text-sm);line-height:1.4;margin:0 1.25rem 1rem}.btn-release-block-back{background:#dc2626;border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:block;font-size:var(--text-sm);font-weight:700;margin:0 1.25rem .65rem;padding:.7rem 1rem;transition:background .15s ease,transform .1s ease;width:calc(100% - 2.5rem)}.btn-release-block-back:hover{background:#b91c1c}.btn-release-block-back:active{transform:scale(.98)}.release-force-link{background:none;border:none;color:#9ca3af;display:block;letter-spacing:.01em;opacity:.3;padding:0 1.25rem 1rem;text-align:center;text-decoration:none;transition:opacity .2s ease;width:100%}.btn-qr-table,.release-force-link{cursor:pointer;font-size:var(--text-xs)}.btn-qr-table{background:#944c6814;background:var(--primary-tint-08);border:1px solid #944c6833;border:1px solid var(--primary-tint-20);border-radius:var(--radius-sm);color:var(--primary);font-weight:700;letter-spacing:.02em;line-height:1.4;opacity:0;padding:2px 6px;position:absolute;right:.45rem;top:.45rem;transition:opacity .15s}.table-card-fullpage:hover .btn-qr-table{opacity:1}.qr-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.qr-modal{background:#fff;border-radius:var(--radius-lg);box-shadow:0 20px 60px #00000047;max-width:320px;padding:1.5rem 2rem 1.75rem;text-align:center;width:90%}.qr-modal h3{color:var(--text-primary);font-size:.95rem;font-weight:700;margin:0 0 1rem}.qr-image{border-radius:var(--radius-md);display:block;height:220px;margin:0 auto;width:220px}.qr-url{color:var(--text-secondary);font-family:monospace;font-size:var(--text-xs);margin:.75rem 0 0;word-break:break-all}.qr-modal-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1.25rem}.btn-qr-print{background:var(--primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-sm);font-weight:700;padding:.5rem 1.25rem;transition:background .15s}.btn-qr-print:hover{background:#7a3d56}.btn-qr-close{background:var(--bg-lighter);border:1.5px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);font-weight:600;padding:.5rem 1.25rem}@media print{body>:not(.qr-modal-overlay){display:none!important}.qr-modal-overlay{background:none;position:static}.qr-modal{box-shadow:none}.qr-modal-actions{display:none}}.release-force-link:hover{color:#6b7280;opacity:.6}.variation-modal-overlay{align-items:center;animation:vmo-fade-in .15s ease;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}@keyframes vmo-fade-in{0%{opacity:0}to{opacity:1}}.walkout-link{margin-top:.25rem;opacity:.45}.walkout-link:hover{color:#b45309;opacity:.75}.walkout-modal-overlay{align-items:center;animation:fadeIn .15s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:2000}.walkout-modal{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0003;max-width:400px;overflow:hidden;width:100%}.walkout-modal-header{align-items:center;background:linear-gradient(135deg,#fffbeb,#fff);border-bottom:1px solid #fde68a;border-left:4px solid #f59e0b;display:flex;gap:1rem;padding:1.25rem 1.5rem 1rem}.walkout-modal-icon{font-size:1.6rem}.walkout-modal-header h3{color:#1a1a1a;font-size:1rem;font-weight:700;margin:0}.walkout-modal-sub{color:#6b7280;font-family:monospace;font-size:.8rem;margin:.1rem 0 0}.walkout-modal-body{padding:1.25rem 1.5rem .5rem}.walkout-modal-warning{background:#fffbeb;border-left:3px solid #f59e0b;border-radius:6px;color:#374151;font-size:.875rem;line-height:1.5;margin:0 0 .75rem;padding:.75rem}.walkout-modal-hint{color:#9ca3af;font-size:.8rem;margin:0;padding-bottom:.5rem;text-align:center}.walkout-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem 1.5rem}.walkout-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:600;padding:.65rem 1rem;transition:all .15s}.walkout-btn-cancel{background:#f3f4f6;color:#6b7280}.walkout-btn-cancel:hover{background:#e5e7eb}.walkout-btn-confirm{background:#f59e0b;color:#fff}.walkout-btn-confirm:hover{background:#d97706}.variation-modal{animation:vmo-slide-up .2s ease;background:#fff;border-radius:var(--radius-xl);box-shadow:0 20px 60px #00000040;overflow:hidden;width:min(420px,94vw)}@keyframes vmo-slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.variation-modal-header{align-items:center;background:#944c680f;background:var(--primary-tint-06);border-bottom:1px solid #944c6833;border-bottom:1px solid var(--primary-tint-20);display:flex;gap:.75rem;justify-content:space-between;padding:1rem 1rem 1rem 1.1rem}.variation-modal-title{align-items:center;display:flex;gap:.75rem;min-width:0}.variation-modal-img{border:2px solid #fff;border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001f;flex-shrink:0;height:52px;object-fit:cover;width:52px}.variation-modal-header h3{color:var(--text-primary);font-size:1.05rem;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variation-modal-close{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border:1.5px solid var(--neutral-200);border-radius:50%;color:#6b7280;color:var(--neutral-500);cursor:pointer;display:flex;flex-shrink:0;font-size:1.15rem;height:32px;justify-content:center;line-height:1;transition:background .15s,color .15s,border-color .15s;width:32px}.variation-modal-close:hover{background:#fde8ef;border-color:#944c684d;border-color:var(--primary-tint-30);color:var(--primary)}.variation-modal-body{padding:1rem 1.1rem .5rem}.variation-modal-hint{color:#6b7280;color:var(--neutral-500);font-size:.82rem;font-weight:600;letter-spacing:.5px;margin:0 0 .75rem;text-transform:uppercase}.variation-options{display:flex;flex-direction:column;gap:.5rem}.variation-option-row{align-items:center;background:#fff;border:2px solid #e5e7eb;border:2px solid var(--neutral-200);border-radius:var(--radius-lg);display:flex;gap:.75rem;justify-content:space-between;padding:.85rem 1rem;transition:border-color .15s,background .15s}.variation-option-row.in-cart{background:#944c680f;background:var(--primary-tint-06);border-color:var(--primary)}.variation-ordered-badge{background:#f59e0b1f;border-radius:4px;color:#f59e0b;flex-shrink:0;font-size:.72rem;font-weight:600;padding:2px 6px;white-space:nowrap}.variation-option-info{display:flex;flex:1 1;flex-direction:column;gap:.15rem;min-width:0}.variation-option-name{color:var(--text-primary);font-size:.95rem;font-weight:700}.variation-option-price{color:var(--primary);font-size:.9rem;font-weight:600}.variation-option-add-btn{background:#fff;border:2px solid var(--primary);border-radius:var(--radius-full);color:var(--primary);cursor:pointer;flex-shrink:0;font-size:.88rem;font-weight:700;padding:.45rem 1.1rem;transition:background .15s,color .15s,transform .1s;white-space:nowrap}.variation-option-add-btn:hover{background:var(--primary);color:#fff}.variation-option-add-btn:active{transform:scale(.95)}.variation-option-qty{align-items:center;display:flex;flex-shrink:0;gap:.3rem}.variation-option-qty-btn{align-items:center;background:#0000;border:2px solid var(--primary);border-radius:50%;color:var(--primary);cursor:pointer;display:flex;font-size:1rem;font-weight:700;height:32px;justify-content:center;line-height:1;transition:background .15s,color .15s;width:32px}.variation-option-qty-btn:active{background:var(--primary);color:#fff}.variation-option-qty-num{color:var(--text-primary);font-size:1rem;font-weight:700;min-width:22px;text-align:center}.variation-modal-footer{padding:.75rem 1.1rem 1.1rem}.variation-modal-done-btn{background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;font-size:.95rem;font-weight:700;letter-spacing:.3px;padding:.75rem;transition:opacity .15s,transform .1s;width:100%}.variation-modal-done-btn:hover{opacity:.92}.variation-modal-done-btn:active{transform:scale(.98)}.item-variation-badge{background:#944c681a;background:var(--primary-tint-10);border:1px solid #944c6833;border:1px solid var(--primary-tint-20);border-radius:var(--radius-full);color:var(--primary);display:inline-block;font-size:var(--text-xs);font-weight:600;margin-left:0;padding:.1rem .45rem;vertical-align:middle;white-space:nowrap}.cart-item-v2 .item-variation-badge,.order-item-v2 .item-variation-badge{background:none;border:none;border-radius:0;color:var(--text-secondary);display:block;font-size:var(--text-xs);font-weight:500;padding:0}.item-cart-note{color:var(--text-secondary);display:block;font-size:var(--text-xs);font-style:italic}.menu-item-options-btn{background:#fff;border:1.5px solid var(--primary);border-radius:var(--radius-full);color:var(--primary);cursor:pointer;flex-shrink:0;font-size:var(--text-xs);font-weight:700;line-height:1.4;padding:.25rem .6rem;transition:background .15s,color .15s;white-space:nowrap}.menu-item-options-btn:hover{background:var(--primary);color:#fff}.menu-item-options-btn:disabled{cursor:not-allowed;opacity:.4}.menu-item-card.in-cart .menu-item-options-btn{background:var(--primary);border-color:var(--primary);color:#fff}.takeaway-orders-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.takeaway-order-card{gap:0;min-height:200px;overflow:hidden;padding:0}.toc-header{align-items:center;display:flex;gap:.5rem;padding:.65rem .85rem .5rem}.toc-order-num{color:var(--text-primary);font-size:1.05rem;font-weight:800;letter-spacing:-.01em}.toc-elapsed{background:#0000000f;border-radius:99px;color:var(--text-secondary);font-size:var(--text-xs);font-weight:600;margin-left:auto;padding:.12rem .48rem;white-space:nowrap}.toc-elapsed.warning{background:#fef3c7;color:#b45309}.toc-elapsed.urgent{background:#fee2e2;color:#dc2626;font-weight:800}.toc-body{flex:1 1;padding:.05rem .85rem .55rem}.toc-amount-row{align-items:baseline;display:flex;justify-content:space-between;margin-bottom:.2rem}.toc-amount{color:var(--text-primary);font-size:1.65rem;font-weight:900;letter-spacing:-.03em;line-height:1.1}.toc-items{font-size:.78rem}.toc-items,.toc-phone{color:var(--text-secondary);font-weight:600}.toc-phone{font-size:.75rem}.toc-blocker{align-items:center;border-bottom:1px solid #00000012;border-top:1px solid #00000012;display:flex;font-size:.8rem;font-weight:700;padding:.42rem .85rem}.toc-blocker-icon{margin-right:.4rem}.toc-blocker-kitchen{background:#fef9c3;color:#713f12}.toc-blocker-dispatch,.toc-blocker-handover,.toc-blocker-pack,.toc-blocker-payment{background:#fef3c7;color:#92400e}.toc-blocker-done{background:#dcfce7;color:#166534}.toc-track{align-items:center;display:flex;gap:.3rem;padding:.35rem .85rem}.toc-pip{border-radius:99px;font-size:var(--text-xs);font-weight:700;padding:.15rem .45rem}.toc-pip.done{background:#dcfce7;color:#166534}.toc-pip.active{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.toc-pip.upcoming{background:#f1f5f9;color:#94a3b8}.toc-handover-btn{background:#166534;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:.8rem;font-weight:700;margin:0 .85rem;padding:.45rem 0;transition:background .15s ease;width:calc(100% - 1.7rem)}.toc-handover-btn:hover{background:#15803d}.toc-cta{font-size:var(--text-xs);font-weight:700;padding:.4rem .85rem;text-align:center}.table-card-fullpage.occupied .toc-cta{color:#dc2626;color:var(--status-occupied-color)}.table-card-fullpage.billed .toc-cta{color:#d97706;color:var(--status-billing-color)}.table-card-fullpage.paid .toc-cta{color:#6d28d9;color:var(--status-paid-color)}.btn-new-takeaway-order{align-self:center;background:var(--primary);border:none;border-radius:10px;border-radius:var(--radius-md,10px);color:#fff;cursor:pointer;font-size:.875rem;font-size:var(--text-sm,.875rem);font-weight:700;padding:.55rem 1.25rem;transition:background .2s ease;white-space:nowrap}.btn-new-takeaway-order:hover{background:#6d28d9;background:var(--primary-dark,#6d28d9)}.takeaway-page-inner{display:flex;flex:1 1;flex-direction:column;gap:.75rem;min-height:0;overflow:hidden;padding:.85rem 1rem .75rem}.takeaway-kbn-header{grid-gap:1rem;align-items:center;display:grid;flex-shrink:0;gap:1rem;grid-template-columns:1fr auto 1fr}.takeaway-kbn-header-left{display:flex;flex-direction:column;gap:.4rem}.takeaway-new-order-cta{background:linear-gradient(135deg,#b8627d,#944c68);background:linear-gradient(135deg,var(--secondary,#b8627d),var(--primary,#944c68));border:none;border-radius:var(--radius-md);box-shadow:0 2px 8px #944c6859;color:#fff;cursor:pointer;font-size:1rem;font-weight:800;letter-spacing:.03em;padding:.7rem 2.5rem;transition:opacity .15s,transform .1s}.takeaway-new-order-cta:hover{box-shadow:0 4px 12px #944c6866;opacity:.9;transform:translateY(-1px)}.takeaway-stage-pills{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.takeaway-stage-pill{border-radius:var(--radius-full);font-size:.88rem;font-weight:700;padding:.28rem .75rem}.takeaway-stage-pill-kitchen{background:#fef9c3;color:#713f12}.takeaway-stage-pill-pack{background:#fff7ed;color:#9a3412}.takeaway-stage-pill-pay{background:#eff6ff;color:#1d4ed8}.takeaway-stage-pill-give{background:#f0fdf4;color:#15803d}.takeaway-stage-pill-done{background:#f1f5f9;color:#475569}.takeaway-kanban{align-items:stretch;display:flex;flex:1 1;gap:.65rem;min-height:0;overflow-x:auto;overflow-y:hidden;padding-bottom:.5rem}.kanban-col{border-radius:var(--radius-md);display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:220px;overflow-y:auto;padding:.4rem;scrollbar-width:thin}.kanban-col-kitchen{background:#fef9c359}.kanban-col-pack{background:#fff7ed73}.kanban-col-pay{background:#eff6ff73}.kanban-col-give{background:#f0fdf473}.kanban-col-done{background:#f1f5f94d}.kanban-col-header{align-items:center;border-radius:var(--radius-md);display:flex;flex-shrink:0;font-size:1rem;font-weight:800;justify-content:space-between;letter-spacing:.05em;padding:.65rem .85rem;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1}.kanban-col-kitchen .kanban-col-header{background:#fef9c3;color:#713f12}.kanban-col-pack .kanban-col-header{background:#fff7ed;color:#9a3412}.kanban-col-pay .kanban-col-header{background:#eff6ff;color:#1d4ed8}.kanban-col-give .kanban-col-header{background:#f0fdf4;color:#15803d}.kanban-col-done .kanban-col-header{background:#f1f5f9;color:#475569}.kanban-col-header-right{align-items:center;display:flex;gap:.35rem}.kanban-count{background:#fff;border-radius:var(--radius-full);font-size:.88rem;font-weight:900;min-width:1.6rem;padding:.1rem .55rem;text-align:center}.kanban-col-total{font-size:.8rem;font-weight:700;opacity:.7;white-space:nowrap}.kanban-card{background:#fff;border:2px solid #0000;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:.32rem;padding:.75rem .8rem;transition:box-shadow .15s,border-color .15s}.kanban-card:hover{box-shadow:var(--shadow-md)}.kanban-card.kanban-card-selected{border-color:var(--primary)}.kanban-card-kitchen{border-left:4px solid #fde047}.kanban-card-pack{border-left:4px solid #fb923c}.kanban-card-pay{border-left:4px solid #60a5fa}.kanban-card-give{border-left:4px solid #4ade80}.kanban-card-done{border-left:4px solid #cbd5e1;opacity:.72}.kanban-card-top{align-items:center;display:flex;gap:.35rem}.kanban-order-num{color:var(--text-primary);flex-shrink:0;font-size:.92rem;font-weight:800}.kanban-new-badge{animation:kanban-pulse 1.5s ease-in-out infinite;background:#dc2626;border-radius:var(--radius-full);color:#fff;flex-shrink:0;font-size:var(--text-xs);font-weight:900;letter-spacing:.06em;padding:.08rem .35rem}@keyframes kanban-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.kanban-card-mid{align-items:baseline;display:flex;gap:.45rem}.kanban-amount{color:var(--text-primary);font-size:1.5rem;font-weight:900;letter-spacing:-.02em}.kanban-items{font-weight:600}.kanban-items,.kanban-items-preview{color:var(--text-light);font-size:var(--text-sm)}.kanban-items-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;border-top:1px solid #0000000d;display:-webkit-box;font-style:italic;line-height:1.3;margin-top:.05rem;overflow:hidden;padding-top:.28rem;text-overflow:ellipsis}.kanban-pay-cta{background:#1d4ed8;border:none;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:.8rem;font-weight:700;margin-top:.1rem;padding:.45rem 0;transition:background .15s ease;width:100%}.kanban-pay-cta:hover{background:#1e40af}.kanban-tap-hint{color:var(--text-light);font-size:var(--text-xs);margin-top:.05rem}.kanban-empty{color:#cbd5e1;font-size:1.4rem;padding:1.25rem 0;text-align:center}.item-variation-kds{color:var(--primary);font-style:normal;font-weight:600}.data-manager{margin:0 auto;max-width:1200px;padding:2rem}.section{background:var(--bg-white);border-radius:8px;box-shadow:var(--shadow-sm);margin-bottom:20px;padding:20px}.data-manager .section-title,.section h2{border-bottom:1px solid #eee;color:#333;font-size:1.5rem;margin-bottom:20px;margin-top:0;padding-bottom:10px}.data-manager .section-title{align-items:center;display:flex;justify-content:space-between}.action-buttons{display:flex;gap:2rem;margin-bottom:2rem}.action-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.action-card h3{color:#333;font-size:1.1rem;margin:0 0 1rem}.button{background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s}.button:hover{box-shadow:0 4px 8px #944c684d;transform:translateY(-2px)}.data-buttons{display:flex;gap:1rem}.data-buttons .icon-btn{align-items:center;background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:10px;box-shadow:0 4px 6px #944c6840;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem 1rem;transition:all .3s ease}.data-buttons .icon-btn:hover{box-shadow:0 6px 12px #944c684d;transform:translateY(-2px)}.data-buttons .btn-icon{filter:brightness(0) invert(1);height:20px;opacity:1;width:20px}.import-history{background:var(--bg-white);border-radius:8px;box-shadow:var(--shadow-sm);margin-top:2rem;padding:1rem}.import-history h3{color:#333;font-size:1.2rem;margin-bottom:1rem}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:6px;padding:1rem}.history-item.success{border-left:4px solid var(--success)}.history-item.error{border-left:4px solid var(--error)}.history-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.5rem}.history-date{color:#666;font-size:.9rem}.history-status{border-radius:4px;font-weight:700;padding:.25rem .5rem}.history-status.success{color:var(--success)}.history-status.error{color:var(--error)}.history-summary{color:#666;display:flex;font-size:.9rem;gap:1rem;margin-bottom:.5rem}.history-section{background:#f8f9fa;border-radius:4px;margin:1rem 0;padding:.5rem}.history-section strong{color:#333;display:block;font-size:.95rem;margin-bottom:.5rem}.history-section.error{background:#e53e3e0d;border-left:3px solid var(--error)}.history-section.error .recipe-item{border-color:#e53e3e4d;color:var(--error)}.recipe-item{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:4px;display:flex;font-size:.9rem;justify-content:space-between;margin:.25rem 0;padding:.5rem}.recipe-item:hover{background:#f8f9fa}.recipe-list{max-height:200px;overflow-y:auto;padding-right:.5rem}.recipe-list::-webkit-scrollbar{width:6px}.recipe-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.recipe-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.recipe-list::-webkit-scrollbar-thumb:hover{background:#999}.error-message{color:var(--error);font-size:.9rem;margin-top:.5rem}.orders-viewer{max-width:100%;padding:1.5rem}.data-manager .stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:2rem}.data-manager .stat-card{background:#fff;border:1px solid #944c6826;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1.25rem 1.5rem;transition:transform .2s,box-shadow .2s}.data-manager .stat-card:hover{box-shadow:0 6px 16px #944c682e;transform:translateY(-2px)}.data-manager .stat-label{color:#6b7280;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.data-manager .stat-value{color:#944c68;font-size:1.75rem;font-weight:700;line-height:1.2}.filter-bar{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{color:#555;font-size:.85rem;font-weight:600}.filter-input,.filter-select{background:#fff;border:1px solid #ddd;border-radius:4px;font-size:.95rem;padding:.6rem;transition:border-color .2s}.filter-input:focus,.filter-select:focus{border-color:var(--primary);outline:none}.search-group{flex-grow:1;min-width:200px}.search-input{width:100%}.orders-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;overflow:hidden}.orders-table{border-collapse:collapse;font-size:.9rem;width:100%}.orders-table thead{background:linear-gradient(135deg,var(--secondary),var(--primary));color:#fff}.orders-table th{font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.orders-table tbody tr{border-bottom:1px solid #eee;transition:background-color .2s}.orders-table tbody tr:hover{background-color:#f9f9f9}.orders-table td{padding:1rem}.data-manager .order-number{color:var(--primary);font-weight:600}.order-date{color:#666;font-size:.85rem}.data-manager .order-type{font-weight:500}.customer-info{line-height:1.4}.customer-phone{color:#888;font-size:.8rem;margin-top:.25rem}.items-count{font-weight:500;text-align:center}.data-manager .order-amount{color:#333;font-weight:600}.payment-badge,.status-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.35rem .75rem;text-transform:uppercase}.badge-paid{background:#d4edda;color:#155724}.badge-partial{background:#fff3cd;color:#856404}.badge-unpaid{background:#f8d7da;color:#721c24}.status-badge{background:#e9ecef;color:#495057}.data-manager .status-pending{background:#fff3cd;color:#856404}.data-manager .status-cooking{background:#cce5ff;color:#004085}.data-manager .status-ready{background:#d1ecf1;color:#0c5460}.data-manager .status-served{background:#d4edda;color:#155724}.data-manager .status-cancelled{background:#f8d7da;color:#721c24}.payment-method{font-size:.85rem;font-weight:500}.amount-due{color:#e53e3e;font-size:.75rem;font-weight:500;margin-top:2px}.pagination{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;gap:1.5rem;justify-content:center;padding:1.5rem}.pagination-btn{background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;padding:.6rem 1.2rem;transition:all .2s}.pagination-btn:hover:not(:disabled){box-shadow:0 4px 8px #944c684d;transform:translateY(-2px)}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.pagination-info{color:#555;font-size:.95rem;font-weight:500}.data-manager .empty-state,.data-manager .loading-state{color:#888;font-size:1.1rem;padding:4rem 2rem;text-align:center}.data-manager .loading-state{font-weight:500}.data-manager .empty-state{color:#999}@media (max-width:992px){.action-buttons{grid-template-columns:1fr}.data-manager .stats-grid{grid-template-columns:repeat(2,1fr)}.filter-bar{gap:.8rem}.filter-group{min-width:130px}}@media (max-width:768px){.action-card{padding:15px}.data-manager .stats-grid{grid-template-columns:1fr}.orders-table{font-size:.8rem}.orders-table td,.orders-table th{padding:.6rem}.filter-bar{flex-direction:column}.filter-group{min-width:100%}}@media (max-width:480px){.data-manager{padding:10px}.orders-viewer{padding:1rem}.data-manager .stat-value{font-size:1.5rem}.orders-table-container{overflow-x:auto}.pagination{flex-direction:column;gap:1rem}}.col-expand{padding:.5rem .25rem!important;text-align:center;width:32px}.order-expand-btn{color:#9ca3af;cursor:pointer;font-size:.6rem;transition:color .15s;-webkit-user-select:none;user-select:none}.order-row{cursor:pointer}.order-row.expanded .order-expand-btn,.order-row:hover .order-expand-btn{color:#944c68}.order-row.expanded{background:#fdf4f7}.order-detail-row>td{background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:0!important}.order-detail-panel{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr 1fr;padding:1.25rem 1.5rem}.detail-section{min-width:0}.detail-section-title{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.7rem;font-weight:700;letter-spacing:.06em;margin-bottom:.6rem;padding-bottom:.4rem;text-transform:uppercase}.detail-item-row{border-bottom:1px solid #f3f4f6;font-size:.82rem;padding:.4rem 0}.detail-item-main{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}.detail-item-name{color:#111827;font-weight:600}.detail-item-category{background:#e5e7eb;border-radius:4px;color:#6b7280;font-size:.68rem;font-weight:500;padding:1px 5px}.detail-item-qty{color:#374151;margin-left:auto}.detail-item-status{background:#e9ecef;border-radius:4px;color:#495057;font-size:.68rem;font-weight:600;padding:1px 6px;text-transform:capitalize}.detail-item-waived{align-items:center;display:flex;flex-wrap:wrap;font-size:.78rem;gap:.4rem;margin-top:.2rem}.waived-badge{background:#fef2f2;border-radius:4px;color:#dc2626;font-size:.68rem;font-weight:700;letter-spacing:.03em;padding:1px 6px}.waive-reason{color:#6b7280;font-style:italic}.waive-at{color:#9ca3af;font-size:.72rem}.detail-payment-row{border-bottom:1px solid #f3f4f6;font-size:.82rem;padding:.4rem 0}.detail-payment-main{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.detail-payment-method{background:#f3f4f6;border-radius:4px;color:#374151;font-size:.75rem;font-weight:700;padding:1px 7px}.detail-payment-amount{color:#111827;font-weight:600}.detail-payment-ref{color:#6b7280;font-size:.78rem}.detail-splits{margin-top:.25rem;padding-left:1rem}.split-row{color:#6b7280;font-size:.78rem;padding:.15rem 0}.detail-empty{color:#9ca3af;font-size:.82rem;font-style:italic;padding:.25rem 0}.detail-meta-row{border-bottom:1px solid #f3f4f6;color:#374151;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.35rem;padding:.3rem 0}.detail-meta-label{color:#6b7280;flex-shrink:0;font-weight:600}.detail-discount-reason{color:#6b7280;font-style:italic}.dm-col-table{color:#6b7280;font-size:.85rem;text-align:center}.order-customer{font-size:.85rem;font-weight:500}.order-discount{text-align:center}.discount-tag{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.75rem;font-weight:600;padding:2px 7px}@media (max-width:900px){.order-detail-panel{grid-template-columns:1fr 1fr}}@media (max-width:600px){.order-detail-panel{grid-template-columns:1fr}}.recipe-manager{max-width:100%;padding-bottom:3rem}@media (min-width:1440px){.recipe-manager{padding:1.5rem 2rem 3rem}}.recipe-stats{gap:1.5rem}.recipe-stats,.stat-badge{align-items:center;display:flex}.stat-badge{background:#fff;border:1px solid var(--border-light);border-radius:12px;box-shadow:var(--shadow-sm);color:var(--text-secondary);font-size:.95rem;font-weight:600;gap:.5rem;padding:.6rem 1rem}.stat-badge svg{color:var(--primary);font-size:1.1rem}.stat-badge.success{background:#ecfdf5;border-color:#a7f3d0;color:#059669}.stat-badge.success svg{color:#059669}.recipe-header{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.control-card{-webkit-backdrop-filter:var(--blur-light);backdrop-filter:var(--blur-light);background:var(--surface-glass);border:1px solid var(--border-light);border-radius:20px;box-shadow:var(--shadow-md);padding:1.5rem}.control-section{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.search-input{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:var(--shadow-sm);flex:2 1;font-size:1rem;min-width:300px;padding:14px 20px;transition:all .3s ease}.search-input:focus{border-color:var(--secondary);box-shadow:0 0 0 4px #b8627d1a;outline:none}.category-select{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:var(--shadow-sm);cursor:pointer;flex:1 1;font-size:1rem;min-width:200px;padding:14px 20px;transition:all .3s ease}.category-select:focus{border-color:var(--secondary);outline:none}.subcategory-filter-row{border-top:1px solid #0000000d;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem}.subcategory-pill{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;font-size:.85rem;font-weight:600;padding:5px 14px;transition:all .2s ease}.subcategory-pill:hover{box-shadow:var(--shadow-md);color:var(--primary);transform:translateY(-1px)}.subcategory-pill.active{background:linear-gradient(135deg,var(--secondary),var(--primary));border-color:#0000;box-shadow:0 4px 12px #944c684d;color:#fff}.filter-section{align-items:center;border-top:1px solid #0000000d;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem;padding-top:1.5rem}.sort-btn{background:#fff;border:1px solid #0000;border-radius:10px;box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 18px;transition:all .2s ease}.sort-btn:hover{box-shadow:var(--shadow-md);color:var(--primary);transform:translateY(-2px)}.sort-btn.active{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 4px 12px #944c684d;color:#fff}.delivery-toggle-btn{border:1px solid #944c6833;margin-left:auto}.recipe-count{color:var(--text-secondary);font-size:.9rem;font-weight:500;margin:1.5rem 0 .5rem;padding-left:.5rem}.recipe-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(460px,1fr))}.recipe-card{align-items:stretch;background:#fff;border:1px solid var(--border-light);border-radius:16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:row;overflow:hidden;position:relative;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.recipe-card:hover{border-color:var(--secondary);box-shadow:0 12px 28px #944c6826;transform:translateY(-4px);z-index:10}.internal-card{background:#fdfdfd;border:1px dashed #cbd5e1}.internal-card:hover{border-color:#94a3b8;border-style:dashed}.recipe-card-img-col{flex-shrink:0;width:170px}.recipe-card-image{display:block;height:100%;object-fit:cover;width:170px}.recipe-card-image-placeholder{align-items:center;background:#f1f5f9;color:#cbd5e1;display:flex;font-size:2rem;height:100%;justify-content:center;min-height:160px;width:170px}.recipe-card-content{display:flex;flex:1 1;flex-direction:column;gap:.4rem;min-width:0;padding:.85rem 1rem}.recipe-card-header{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.recipe-header-left{display:flex;flex:1 1;flex-direction:column;gap:.35rem;min-width:0}.recipe-category-badges{align-items:flex-end;display:flex;flex-direction:column;flex-shrink:0;gap:4px}.sku-badge{font-family:monospace;padding:4px 8px}.category-tag,.sku-badge{font-weight:700;letter-spacing:.5px;width:-webkit-fit-content;width:fit-content}.category-tag{background:#944c6814;border:1px solid #944c6826;border-radius:6px;color:var(--primary);font-size:var(--text-xs);padding:.22rem .55rem;text-transform:uppercase;white-space:nowrap}.category-tag[data-category=Beverages]{background:#e0f2fe;border-color:#bae6fd;color:#0284c7}.category-tag[data-category=Coffee]{background:#ffedd5;border-color:#fed7aa;color:#c2410c}.category-tag[data-category=Drinks]{background:#e0f2fe;border-color:#bae6fd;color:#0369a1}.category-tag[data-category=Food]{background:#dcfce7;border-color:#bbf7d0;color:#15803d}.category-tag[data-category="Breakfast Items"]{background:#fef9c3;border-color:#fde68a;color:#d97706}.category-tag[data-category="Sandwiches & Wraps"]{background:#dcfce7;border-color:#bbf7d0;color:#15803d}.category-tag[data-category="Salads & Soups"]{background:#d1fae5;border-color:#a7f3d0;color:#047857}.category-tag[data-category="Main Courses"]{background:#fee2e2;border-color:#fecaca;color:#dc2626}.category-tag[data-category=Sides]{background:#f3e8ff;border-color:#e9d5ff;color:#9333ea}.category-tag[data-category=Desserts]{background:#fce7f3;border-color:#fbcfe8;color:#db2777}.category-tag[data-category=Snacks]{background:#bae6fd;border-color:#7dd3fc;color:#0369a1}.category-tag[data-category=Specials]{background:#fecaca;border-color:#fca5a5;color:#b91c1c}.category-tag[data-category="Kids' Menu"]{background:#ccfbf1;border-color:#99f6e4;color:#0d9488}.category-tag[data-category="Combo Meals"]{background:#ede9fe;border-color:#ddd6fe;color:#7c3aed}.category-tag[data-category=Bakery]{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.category-tag[data-category=Patisserie]{background:#fce7f3;border-color:#fbcfe8;color:#be185d}.category-tag[data-category=Condiments]{background:#fef9c3;border-color:#fde68a;color:#a16207}.category-tag[data-category=Cakes]{background:#fce7f3;border-color:#fbcfe8;color:#db2777}.category-tag[data-category=Components]{background:#f1f5f9;border-color:#e2e8f0;color:#475569}.category-tag[data-category=Research]{background:#ede9fe;border-color:#ddd6fe;color:#6d28d9}.category-tag[data-category=Uncategorized]{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.sub-category-tag{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;color:#64748b;font-size:var(--text-xs);font-weight:700;letter-spacing:.4px;padding:.18rem .45rem;text-transform:uppercase;white-space:nowrap;width:-webkit-fit-content;width:fit-content}.recipe-name{color:var(--text-primary);font-size:1rem;font-weight:800;line-height:1.3;margin:0;white-space:normal;word-break:break-word}.recipe-metrics{background:var(--bg-lighter);flex-direction:column;gap:5px;padding:6px}.metric,.recipe-metrics{border-radius:var(--radius-sm);display:flex}.metric{align-items:center;background:#fff;box-shadow:var(--shadow-sm);flex-direction:row;justify-content:space-between;padding:6px 10px}.recipe-metrics .metric-label{color:var(--text-light);font-size:var(--text-xs);font-weight:500;letter-spacing:.4px;text-transform:uppercase}.recipe-metrics .metric-value{color:var(--text-secondary);font-size:var(--text-sm);font-weight:700}.recipe-metrics .metric-value.markup-good{color:#16a34a}.recipe-metrics .metric-value.markup-bad{color:#dc2626}.recipe-metrics .metric-value.velocity-high{color:#16a34a}.recipe-metrics .metric-value.velocity-mid{color:#d97706}.recipe-metrics .metric-value.velocity-low{color:var(--text-light)}.metric.full-width{flex-direction:row;justify-content:space-between}.metric-txt{color:var(--text-secondary);font-size:.85rem;font-weight:600}.recipe-footer-info{align-items:center;color:var(--text-secondary);display:flex;font-size:.75rem;justify-content:space-between;margin-top:auto;padding-top:.3rem}.ingredients-count{font-weight:500}.delivery-badge{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:50%;display:flex;font-size:1rem;justify-content:center;padding:4px}.recipe-actions{align-items:center;border-top:1px solid #0000000d;display:flex;justify-content:space-between;padding-top:.4rem}.left-actions{display:flex}.right-actions{display:flex;gap:6px}.action-button{align-items:center;background:var(--bg-white);border:none;border-radius:7px;box-shadow:var(--shadow-sm);cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;padding:6px;transition:all .2s ease}.action-button:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-button.view{color:var(--primary)}.action-button.view:hover{background:#944c681a}.action-button.edit{color:var(--success)}.action-button.edit:hover{background:#0596691a}.action-button.delete{color:var(--error)}.action-button.delete:hover{background:#e53e3e1a}@media (max-width:768px){.control-card{border-radius:14px;padding:1rem}.recipe-grid{gap:.75rem}}@media (max-width:700px){.recipe-grid{grid-template-columns:minmax(0,1fr)}.control-section{align-items:stretch;flex-direction:column;gap:.75rem}.search-input{min-width:0;min-width:auto}.filter-section{justify-content:center}.recipe-stats{flex-wrap:wrap;gap:.5rem}.recipe-card{flex-direction:column}.recipe-card-img-col{flex-shrink:1}.recipe-card-image,.recipe-card-img-col{height:170px;width:100%}.recipe-card-image-placeholder{height:170px;min-height:0;min-height:auto;width:100%}}@media (max-width:480px){.recipe-manager{padding-bottom:1.5rem}.control-card{border-radius:12px;padding:.75rem}.recipe-grid{gap:.5rem}.recipe-card-image,.recipe-card-image-placeholder,.recipe-card-img-col{height:130px}.recipe-card-content{padding:.65rem .75rem}.stat-badge{font-size:.8rem;padding:.4rem .75rem}}.recipe-form-container{margin:0 auto;max-width:900px;padding:2rem 1.5rem 4rem}.page-title-card{-webkit-backdrop-filter:var(--blur-light);backdrop-filter:var(--blur-light);background:var(--surface-glass);flex-wrap:wrap;gap:1.5rem}.page-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--secondary),var(--primary));background-clip:text;-webkit-background-clip:text;font-size:2.5rem}.recipe-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:var(--surface-glass);border:1px solid var(--border-light);border-radius:16px;box-shadow:var(--shadow-sm);padding:1.5rem}.form-section h2{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 1.25rem;padding-bottom:.75rem}.form-group{margin-bottom:1.25rem}.form-group:last-child{margin-bottom:0}.form-group label,.modal-label{color:var(--text-secondary);display:block;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.form-control{background:#fff;border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;padding:.75rem 1rem;transition:border-color .2s;width:100%}.form-control:focus{border-color:var(--secondary);box-shadow:0 0 0 3px #b8627d1a;outline:none}.form-control:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.7}textarea.form-control{font-family:inherit;min-height:100px;resize:vertical}.sku-group{background:#944c680d;border-left:3px solid var(--primary);border-radius:8px;padding:1rem}.sku-display{align-items:center;display:flex;gap:.75rem}.sku-input{border-color:var(--primary)!important;color:var(--primary)!important;flex:1 1;font-family:Courier New,monospace;font-weight:700;letter-spacing:1px}.sku-badge{background:var(--primary);border-radius:6px;color:#fff;font-size:.75rem;font-weight:600;padding:.375rem .75rem;white-space:nowrap}.field-hint{color:#64748b;font-size:.8rem;font-style:italic;margin-top:.375rem}.switch-group{align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;transition:all .2s}.switch-group:hover{background:#944c6805;border-color:var(--primary)}.switch-label-content{display:flex;flex-direction:column;gap:.25rem}.switch-title{color:var(--text-primary);font-weight:600}.switch-description{color:#64748b;font-size:.8rem}.internal-category-note{background:#944c680f;border-left:3px solid var(--primary);border-radius:6px;color:#5a3a4a;font-size:.85rem;padding:.6rem 1rem}.switch{height:24px;position:relative;width:48px}.switch input{height:0;opacity:0;width:0}.slider{background:#cbd5e1;border-radius:24px;bottom:0;cursor:pointer;left:0;right:0;top:0}.slider,.slider:before{position:absolute;transition:.3s}.slider:before{background:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;width:18px}input:checked+.slider{background:var(--primary)}input:checked+.slider:before{transform:translateX(24px)}.ingredients-section{background:linear-gradient(135deg,#05966908,#10b9810d);border-left:4px solid #059669}.add-ingredient-form{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;margin-bottom:1.5rem;padding:1.5rem}.add-ingredient-form h3{align-items:center;color:#047857;display:flex;font-size:.9rem;font-weight:700;gap:.5rem;letter-spacing:.5px;margin:0 0 1rem;text-transform:uppercase}.add-ingredient-form h3:before{content:"➕";font-size:1rem}.input-row{grid-gap:.75rem;align-items:flex-end;display:grid;gap:.75rem;grid-template-columns:2fr 1fr auto}.input-row .form-group{margin-bottom:0}.add-ingredient-btn{align-items:center;align-self:flex-end;background:linear-gradient(135deg,#059669,#10b981);border:none;border-radius:8px;box-shadow:0 2px 6px #0596694d;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;height:44px;justify-content:center;padding:0 1.5rem;transition:all .2s;white-space:nowrap}.add-ingredient-btn:hover:not(:disabled){background:linear-gradient(135deg,#047857,#059669);box-shadow:0 4px 10px #05966966;transform:translateY(-1px)}.add-ingredient-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.ingredients-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000d;overflow:hidden}.ingredients-table{border-collapse:collapse;width:100%}.ingredients-table thead{background:linear-gradient(135deg,#059669,#10b981)}.ingredients-table th{color:#fff;font-size:.75rem;font-weight:700;letter-spacing:.8px;padding:1rem;text-align:left;text-transform:uppercase}.ingredients-table th:last-child{text-align:center;width:80px}.ingredients-table tbody tr{border-bottom:1px solid #f3f4f6;transition:all .2s}.ingredients-table tbody tr:hover{background:#05966905}.ingredients-table tbody tr:last-child{border-bottom:none}.ingredients-table td{padding:1rem;vertical-align:middle}.recipe-form-container .ingredient-name{align-items:center;color:var(--text-primary);display:flex;font-weight:600;gap:.5rem}.recipe-form-container .ingredient-name:before{content:"🥘";font-size:1.1rem}.ingredient-quantity{color:#64748b;font-size:.95rem}.ingredient-cost{color:#059669;font-size:1.05rem;font-weight:700}.remove-ingredient-btn{align-items:center;background:#0000;border:1px solid #dc2626;border-radius:6px;color:#dc2626;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s}.remove-ingredient-btn:hover:not(:disabled){background:#dc2626;color:#fff;transform:scale(1.1)}.remove-ingredient-btn svg{height:18px;width:18px}.edit-ingredient-btn{align-items:center;background:#0000;border:1px solid #3b82f6;border-radius:6px;color:#3b82f6;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s}.edit-ingredient-btn:hover:not(:disabled){background:#3b82f6;color:#fff;transform:scale(1.1)}.edit-ingredient-btn svg{height:18px;width:18px}.save-ingredient-btn{align-items:center;background:#0000;border:1px solid #059669;border-radius:6px;color:#059669;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s}.save-ingredient-btn:hover:not(:disabled){background:#059669;color:#fff;transform:scale(1.1)}.save-ingredient-btn svg{height:18px;width:18px}.cancel-ingredient-btn{align-items:center;background:#0000;border:1px solid #64748b;border-radius:6px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s}.cancel-ingredient-btn:hover:not(:disabled){background:#64748b;color:#fff;transform:scale(1.1)}.cancel-ingredient-btn svg{height:18px;width:18px}.inline-edit-input{background:#fff;border:2px solid #3b82f6;border-radius:6px;color:var(--text-primary);font-size:.95rem;padding:.5rem .75rem;transition:border-color .2s;width:100%}.inline-edit-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #3b82f61a;outline:none}.ingredient-actions{display:flex;gap:.5rem;justify-content:center}.ingredients-total{align-items:center;background:linear-gradient(135deg,#0596691a,#10b98126);border-left:4px solid #059669;border-radius:0 0 12px 12px;display:flex;justify-content:space-between;margin-top:-1px;padding:1.25rem 1.5rem}.total-label{align-items:center;color:#047857;display:flex;font-size:.9rem;font-weight:700;gap:.5rem;letter-spacing:.5px;text-transform:uppercase}.total-label:before{content:"💰";font-size:1.2rem}.total-amount{color:#059669;font-family:Courier New,monospace;font-size:1.75rem;font-weight:800}.preparation-section{background:linear-gradient(135deg,#3b82f608,#60a5fa0d);border-left:4px solid #3b82f6}.preparation-section h2{align-items:center;color:#1e40af;display:flex;gap:.75rem}.preparation-section h2:before{content:"👨‍🍳";font-size:1.5rem}.preparation-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.preparation-grid .form-group{margin-bottom:0}.preparation-grid .form-group:first-child{grid-column:1/-1}.preparation-section .form-group label{align-items:center;color:#1e40af;display:flex;gap:.5rem}.preparation-section textarea.form-control{background:#fff;border:2px solid #e0e7ff;font-size:.95rem;line-height:1.6;min-height:140px}.preparation-section textarea.form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.preparation-section .field-hint{color:#60a5fa;font-size:.8rem}.preparation-section .form-group:first-child textarea.form-control{min-height:180px}.special-instruction-upload{align-items:center;background:#fff;border:2px dashed #e0e7ff;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:1.5rem;text-align:center;transition:all .2s}.special-instruction-upload:hover{background:#3b82f605;border-color:#3b82f6}.special-instruction-upload svg{color:#3b82f6;height:48px;margin-bottom:.75rem;width:48px}.special-instruction-upload p{color:#64748b;font-size:.9rem;margin:0}.special-instruction-upload .upload-label{color:#1e40af;font-weight:600;margin-bottom:.25rem}@media (max-width:768px){.preparation-grid{grid-template-columns:1fr}.preparation-grid .form-group:first-child{grid-column:1}}.sales-info-card{background:#3b82f60d;border:1px solid #3b82f633;border-radius:8px;display:flex;gap:.75rem;padding:1rem}.sales-info-card .info-icon{font-size:1.25rem}.sales-info-card .info-content strong{color:#1e40af;display:block;font-size:.9rem;margin-bottom:.25rem}.sales-info-card .info-content p{color:#3b82f6;font-size:.85rem;margin:0}.pricing-alerts{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.alert{border-left:4px solid;border-radius:8px;font-size:.9rem;line-height:1.5;padding:1rem 1.25rem}.alert strong{font-weight:700}.alert-warning{background:#f59e0b1a;border-color:#f59e0b;color:#92400e}.alert-info{background:#3b82f61a;border-color:#3b82f6;color:#1e40af}.financial-metrics{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-top:1.5rem}.metric-card{background:#fff;border:2px solid var(--border-light);border-radius:12px;padding:1.25rem 1rem;position:relative;text-align:center;transition:all .2s}.metric-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.metric-label{color:#64748b;font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;line-height:1.3;margin-bottom:.5rem;text-transform:uppercase}.metric-value{color:var(--text-primary);font-size:1.5rem;font-weight:800;margin-bottom:.25rem}.metric-hint{color:#94a3b8;font-size:.75rem;font-style:italic;margin-top:.25rem}.metric-success{background:linear-gradient(135deg,#0596690d,#10b9811a);border-color:#059669}.metric-success .metric-value{color:#059669}.metric-warning{background:linear-gradient(135deg,#f59e0b0d,#fbbf241a);border-color:#f59e0b}.metric-warning .metric-value{color:#d97706}.metric-error{background:linear-gradient(135deg,#dc26260d,#ef44441a);border-color:#dc2626}.metric-error .metric-hint,.metric-error .metric-value{color:#dc2626}.metric-primary{background:linear-gradient(135deg,#8b5cf60d,#a78bfa1a);border-color:#8b5cf6}.metric-primary .metric-value{color:#7c3aed}.metric-hot{background:linear-gradient(135deg,#ef44440d,#f871711a);border-color:#ef4444}.metric-hot .metric-value{color:#dc2626}.metric-warm{background:linear-gradient(135deg,#f59e0b0d,#fbbf241a);border-color:#f59e0b}.metric-warm .metric-value{color:#d97706}.metric-cool{background:linear-gradient(135deg,#3b82f60d,#60a5fa1a);border-color:#3b82f6}.metric-cool .metric-value{color:#2563eb}.checkbox-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-item{align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:8px;cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:all .2s}.checkbox-item:hover{background:#944c6805;border-color:var(--primary)}input[type=checkbox]{accent-color:var(--primary);cursor:pointer;height:20px;width:20px}.checkbox-label{color:var(--text-primary);font-weight:500}.image-upload-container{align-items:center;background:#f8fafc;border:2px dashed var(--border-color);border-radius:8px;cursor:pointer;display:flex;justify-content:center;min-height:180px;transition:all .2s}.image-upload-container:hover{background:#944c6805;border-color:var(--primary)}.image-upload-placeholder{color:#64748b;cursor:pointer;text-align:center}.image-upload-placeholder svg{color:var(--primary);height:40px;margin-bottom:.5rem;width:40px}.image-upload-placeholder p{font-size:.9rem;font-weight:500;margin:0}.image-preview-container{border-radius:8px;cursor:pointer;margin:0 auto;max-width:300px;overflow:hidden;position:relative;transition:all .2s}.image-preview-container:hover{box-shadow:0 4px 12px #0000001a;transform:scale(1.02)}.image-preview-container img{border-radius:8px;display:block;height:auto;width:100%}.image-actions{display:flex;gap:.5rem;opacity:0;position:absolute;right:.5rem;top:.5rem;transition:opacity .2s}.image-preview-container:hover .image-actions{opacity:1}.image-action-btn{align-items:center;background:#000000b3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.5rem;transition:all .2s}.image-action-btn:hover{background:#000000e6;transform:scale(1.1)}.image-action-btn svg{height:18px;width:18px}.enlarged-image-overlay{align-items:center;animation:fadeIn .2s;background:#000000e6;bottom:0;cursor:pointer;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.enlarged-image-container{max-height:90vh;max-width:90vw;position:relative}.enlarged-image-container img{border-radius:8px;max-height:90vh;max-width:100%;object-fit:contain}.close-enlarged-btn{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.75rem;position:absolute;right:0;top:-3rem;transition:all .2s}.close-enlarged-btn:hover{background:#ffffff4d}.close-enlarged-btn svg{height:24px;width:24px}.action-buttons-card{background:var(--surface-glass);border:1px solid var(--border-light);border-radius:16px;gap:1rem;margin-top:1rem;padding:1.5rem}.action-buttons-card,.btn{display:flex;justify-content:center}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;gap:.5rem;min-width:160px;padding:.875rem 2.5rem;transition:all .2s}.create-btn,.return-btn{background:linear-gradient(135deg,var(--secondary),var(--primary));box-shadow:0 2px 8px #944c684d;color:#fff}.create-btn:hover:not(:disabled),.return-btn:hover{box-shadow:0 4px 12px #944c6866;transform:translateY(-2px)}.create-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.cancel-btn{background:#fff;border:2px solid var(--border-color);color:var(--text-primary)}.cancel-btn:hover{background:#944c680d;border-color:var(--primary);transform:translateY(-2px)}.toast-message{animation:slideIn .3s;border-radius:8px;font-weight:600;padding:1rem 1.5rem;position:fixed;right:1rem;top:1rem;z-index:1000}.toast-message.success{background:#059669;color:#fff}.toast-message.error{background:#dc2626;color:#fff}@media (max-width:768px){.recipe-form-container{padding:1rem 1rem 3rem}.page-title{font-size:1.5rem}.form-section{padding:1.25rem}.input-row{grid-template-columns:1fr}.add-ingredient-btn{justify-content:center;width:100%}.financial-metrics{grid-template-columns:repeat(2,1fr)}.action-buttons-card{flex-direction:column}.btn{justify-content:center;width:100%}}.menu-availability-section .checkbox-group{align-items:center;display:flex!important;flex-direction:row!important;flex-wrap:nowrap;gap:2rem!important}.menu-availability-section .checkbox-item{align-items:center;background:#fff;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;flex:1 1;gap:.75rem;justify-content:center;min-width:200px;padding:.75rem 1rem;transition:all .2s}.menu-availability-section .checkbox-item:hover{background:#944c680d;border-color:var(--primary)}.styled-checkbox{accent-color:var(--primary);cursor:pointer;height:1.25rem;width:1.25rem}.checkbox-label{color:var(--text-primary)!important;cursor:pointer;font-weight:600!important;margin:0!important}.delivery-image-section{animation:fadeIn .3s ease-out;border-top:1px dashed var(--border-color);margin-top:1.5rem;padding-top:1.5rem}.delivery-image-section .image-upload-container{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;padding:1.5rem;transition:all .2s}.delivery-image-section .image-upload-container:hover{background:#944c6805;border-color:var(--primary)}.delivery-image-section .image-upload-placeholder{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:.5rem;width:100%}.delivery-image-section .image-upload-placeholder svg{color:#94a3b8;height:32px;margin-bottom:.25rem;width:32px}.delivery-image-section .image-upload-placeholder p{color:var(--text-secondary);font-weight:600;margin:0}.upload-hint{color:#94a3b8;font-size:.8rem}.sales-analytics-section{background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid var(--border-light);border-radius:16px;margin:1.5rem 0;padding:1.5rem}.sales-header{margin-bottom:1.5rem}.sales-title-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.sales-title-row h3{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0}.refresh-sales-btn{align-items:center;background:#fff;border:2px solid var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.refresh-sales-btn:hover:not(:disabled){border-color:var(--primary);box-shadow:var(--shadow-sm);color:var(--primary);transform:translateY(-1px)}.refresh-sales-btn:disabled{cursor:not-allowed;opacity:.5}.last-sold-badge{background:#944c681a;border-radius:20px;color:var(--primary);display:inline-block;font-size:.8rem;font-weight:600;padding:.4rem .75rem}.sales-metrics-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.sales-metric-card{align-items:center;background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1rem;padding:1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.sales-metric-card:hover{box-shadow:0 8px 16px #0000001f;transform:translateY(-4px)}.sales-metric-card .metric-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));flex-shrink:0;font-size:2rem;line-height:1}.sales-metric-card .metric-content{flex:1 1;min-width:0}.sales-metric-card .metric-label{color:var(--text-light);font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:.25rem;text-transform:uppercase}.sales-metric-card .metric-value{color:var(--text-primary);font-size:1.5rem;font-weight:800;line-height:1.2}.sales-metric-card.primary{background:linear-gradient(135deg,#fff,#fef5f8);border-color:#944c6833}.sales-metric-card.primary:hover{border-color:var(--primary)}.sales-metric-card.success{background:linear-gradient(135deg,#fff,#f0fdf4);border-color:#05966933}.sales-metric-card.success:hover{border-color:#059669}.sales-metric-card.info{background:linear-gradient(135deg,#fff,#eff6ff);border-color:#2563eb33}.sales-metric-card.info:hover{border-color:#2563eb}.sales-metric-card.accent{background:linear-gradient(135deg,#fff,#fffbeb);border-color:#f59e0b33}.sales-metric-card.accent:hover{border-color:#f59e0b}@media (max-width:768px){.sales-metrics-grid{grid-template-columns:repeat(2,1fr)}.sales-metric-card .metric-value{font-size:1.25rem}}@media (max-width:480px){.sales-metrics-grid{grid-template-columns:1fr}.sales-title-row{align-items:flex-start;flex-direction:column;gap:.75rem}.refresh-sales-btn{justify-content:center;width:100%}}.variations-header{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.25rem}.variations-header h2{margin:0}.variations-hint{font-weight:400}.variations-empty-hint,.variations-hint{color:var(--text-secondary);font-size:.85rem}.variations-empty-hint{font-style:italic;margin:0}.btn-add-variation{background:linear-gradient(135deg,#6a4c93,#944c68);background:linear-gradient(135deg,var(--secondary,#6a4c93),var(--primary,#944c68));border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;margin-left:auto;padding:.45rem 1rem;transition:opacity .15s;white-space:nowrap}.btn-add-variation:hover{opacity:.88}.variations-list{display:flex;flex-direction:column;gap:.75rem}.variation-card{border:1.5px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:border-color .2s}.variation-card.expanded{border-color:#944c68;border-color:var(--primary,#944c68)}.variation-card-header{align-items:center;background:#f9fafb;cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.variation-card-title{align-items:center;display:flex;flex-wrap:wrap;gap:.6rem}.variation-number{color:var(--text-light);font-size:var(--text-sm);font-weight:700}.variation-name-preview{color:var(--text-primary);font-size:var(--text-base);font-weight:600}.variation-price-preview{color:#944c68;color:var(--primary,#944c68);font-size:var(--text-base);font-weight:700}.variation-card-actions{align-items:center;display:flex;gap:.5rem}.btn-remove-variation{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:1rem;height:24px;justify-content:center;line-height:1;transition:background .15s,color .15s;width:24px}.btn-remove-variation:hover{background:#fde8ef;border-color:#944c68;border-color:var(--primary,#944c68);color:#944c68;color:var(--primary,#944c68)}.variation-expand-icon{color:var(--text-light);font-size:var(--text-xs)}.variation-card-body{border-top:1px solid #e5e7eb;padding:1rem}.variation-fields-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 140px;margin-bottom:1rem}@media (max-width:480px){.variation-fields-row{grid-template-columns:1fr}}.variation-ingredients-section{margin-top:.5rem}.variation-ingredients-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:.6rem}.variation-ing-label{color:var(--text-light);font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.btn-copy-base-ingredients{background:#f3f4f6;border:1.5px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:.75rem;font-weight:600;padding:.25rem .65rem;transition:background .15s,color .15s,border-color .15s}.btn-copy-base-ingredients:hover{background:#944c6814;border-color:#944c684d;color:#944c68;color:var(--primary,#944c68)}.app{background:#0000;display:flex;flex-direction:column;min-height:100vh}.app main{flex:1 1;margin:0 auto;max-width:1600px;padding:2rem 4rem;width:100%}.app main.pos-layout{margin:0;max-width:none;padding:0}.app-header{background:#fffffff7;border-bottom:1px solid #944c681f;box-shadow:0 2px 4px #0000000f;height:80px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:auto 1fr auto;height:100%;margin:0 auto;max-width:1600px;padding:0 2rem;width:100%}.burger-btn{background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:40px;justify-content:space-around;padding:8px;transition:all .3s ease;width:40px;z-index:1001}.burger-btn:hover{background:#944c681a}.burger-btn span{background:linear-gradient(135deg,var(--secondary),var(--primary));border-radius:10px;height:3px;transform-origin:center;transition:all .3s ease;width:24px}.burger-btn.open span:first-child{transform:translateY(7px) rotate(45deg)}.burger-btn.open span:nth-child(2){opacity:0;transform:translateX(-10px)}.burger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.header-logo{border-radius:8px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));height:48px;justify-self:center;min-width:0;min-width:auto;width:auto}.nav-actions{align-items:center;display:flex;gap:1rem;justify-self:end}.user-info{background:#944c681a;border-radius:10px;color:var(--text-secondary);font-size:.875rem;font-weight:600;padding:.5rem .875rem;text-transform:capitalize;white-space:nowrap}.icon-btn{align-items:center;background:linear-gradient(135deg,var(--secondary),var(--primary));border:none;border-radius:10px;box-shadow:0 4px 6px #944c6840;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.625rem 1rem;transition:all .3s ease}.icon-btn:hover{box-shadow:0 6px 12px #944c684d;transform:translateY(-2px)}.icon-btn:active{box-shadow:0 3px 6px #944c6833;transform:translateY(0)}.btn-icon{filter:brightness(0) invert(1);height:20px;width:20px}.logout-btn{background:var(--error-gradient);box-shadow:0 4px 12px #e53e3e4d;color:#fff}.sidebar-overlay{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1100}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar{animation:slideIn .3s ease;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#fffffff2;border-right:1px solid #944c6833;box-shadow:4px 0 24px #00000026;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:320px;z-index:1101}@keyframes slideIn{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.sidebar-header{align-items:center;border-bottom:2px solid #944c681a;display:flex;justify-content:space-between;padding:1.5rem 1.5rem 1rem}.sidebar-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--secondary),var(--primary));-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:800;margin:0}.sidebar-close{align-items:center;background:none;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;line-height:1;transition:all .3s ease;width:40px}.sidebar-close:hover{background:#944c681a;color:var(--primary);transform:rotate(90deg)}.sidebar-content{flex:1 1;overflow-y:auto;padding:1rem 0}.sidebar-link{align-items:center;border-left:4px solid #0000;color:var(--text-secondary);display:flex;font-size:1.05rem;font-weight:600;gap:1rem;margin:.25rem 0;padding:1rem 1.5rem;text-decoration:none;transition:all .3s ease}.sidebar-link:hover{background:#944c6814}.sidebar-link.active,.sidebar-link:hover{border-left-color:var(--primary);color:var(--primary)}.sidebar-link.active{background:linear-gradient(90deg,#944c6826,#0000);font-weight:700}.sidebar-icon{align-items:center;display:flex;font-size:1.5rem;justify-content:center;width:32px}.sidebar-group{margin:.5rem 0}.sidebar-group-header{align-items:center;background:#944c680d;border-left:4px solid #0000;cursor:pointer;display:flex;justify-content:space-between;margin:.25rem 0;padding:.875rem 1.5rem;transition:all .3s ease}.sidebar-group-header:hover{background:#944c681f;border-left-color:var(--primary)}.sidebar-group-header-content{align-items:center;display:flex;gap:1rem}.sidebar-group-title-text{color:var(--primary);font-size:.95rem;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.sidebar-group-chevron{color:var(--primary);font-size:.75rem;font-weight:700;transition:transform .3s ease}.sidebar-group-chevron.open{transform:rotate(90deg)}.sidebar-group-links{max-height:0;overflow:hidden;transition:max-height .4s ease-out}.sidebar-group-links.open{max-height:600px;transition:max-height .4s ease-in}.sidebar-group .sidebar-link{margin:0;padding-left:3rem}.sidebar-group-title{background:#944c680d;border-left:4px solid var(--primary);color:var(--primary);font-size:.75rem;font-weight:700;letter-spacing:1px;padding:.75rem 1.5rem;text-transform:uppercase}.sidebar-footer{background:#944c680d;border-top:2px solid #944c681a;padding:1.5rem}.sidebar-user-info{display:flex;flex-direction:column;gap:.25rem}.sidebar-user-info strong{color:var(--text-primary);font-size:1.05rem;font-weight:700}.sidebar-user-info span{color:var(--text-secondary);font-size:.875rem;text-transform:capitalize}.app-footer{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0003;border-top:1px solid #fff3;color:#ffffffe6;margin-top:auto;padding:.75rem}.footer-content{font-size:.9rem;font-weight:500;text-align:center}.page-title-card{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffffa;border:1px solid var(--border-light);border-left:6px solid var(--primary);border-radius:20px;box-shadow:var(--shadow-md);display:flex;justify-content:space-between;margin-bottom:2rem;padding:2rem}.page-title{color:var(--primary);font-size:2rem;font-weight:800;letter-spacing:-.5px;margin:0}.loading-container{align-items:center;color:var(--text-primary);display:flex;font-size:1.5rem;font-weight:600;justify-content:center;min-height:60vh;text-shadow:0 2px 4px #0003}@media (min-width:1440px){.app main{padding:0}.app main,.nav-container{max-width:100%}}@media (max-width:1024px){.app main{padding:1.5rem}.header-logo{height:40px}.icon-btn{padding:.5rem .75rem}.btn-icon{height:18px;width:18px}}@media (max-width:768px){.nav-container{grid-template-columns:auto auto auto;padding:0 1rem}.header-logo{height:36px}.user-info{display:none}.sidebar{width:280px}.page-title-card{border-left:none;border-top:6px solid var(--primary);flex-direction:column;gap:1rem;text-align:center}}@media (max-width:480px){.nav-container{padding:0 .75rem}.sidebar{max-width:300px;width:85vw}.burger-btn{height:36px;width:36px}.burger-btn span{width:20px}}.sidebar-link-text{gap:.4rem}.sidebar-badge,.sidebar-link-text{align-items:center;display:inline-flex}.sidebar-badge{background:#e53e3e;border-radius:9px;color:#fff;font-size:var(--text-xs);font-weight:800;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 5px}.header-logo,.mise-overlay{cursor:pointer}.mise-overlay{align-items:center;animation:miseFadeIn .2s ease;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:#000000d1;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.mise-img{animation:miseScaleIn .22s cubic-bezier(.34,1.56,.64,1);border-radius:12px;max-height:85vh;max-width:min(90vw,700px);object-fit:contain}@keyframes miseFadeIn{0%{opacity:0}to{opacity:1}}@keyframes miseScaleIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}