:root{--color-primary: #2E7D32;--color-primary-light: #4CAF50;--color-primary-dark: #1B5E20;--color-bg-primary: #F8FAF9;--color-bg-secondary: #EEF2F0;--color-bg-card: #FFFFFF;--color-bg-elevated: #E4EBE7;--color-text-primary: #0D1912;--color-text-secondary: #2E4840;--color-text-muted: #5C7269;--color-accent: #2E7D32;--color-accent-hover: #1B5E20;--color-accent-glow: rgba(46, 125, 50, .12);--color-danger: #D32F2F;--color-danger-glow: rgba(211, 47, 47, .1);--color-success: #2E7D32;--color-success-glow: rgba(46, 125, 50, .1);--color-info: #1976D2;--color-warning: #E67E22;--color-highlight: #E67E22;--gradient-primary: linear-gradient(135deg, #4CAF50 0%, #2E7D32 100%);--gradient-dark: linear-gradient(180deg, #F8FAF9 0%, #EEF2F0 100%);--gradient-card: linear-gradient(145deg, #FFFFFF 0%, #F8FAF9 100%);--shadow-sm: 0 2px 8px rgba(26, 46, 38, .06);--shadow-md: 0 8px 16px rgba(26, 46, 38, .08);--shadow-lg: 0 16px 32px rgba(26, 46, 38, .12);--shadow-glow: 0 0 15px var(--color-accent-glow);--color-border: rgba(26, 46, 38, .15);--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1)}html.dark,.dark{--color-bg-primary: #121212;--color-bg-secondary: #1A1A1A;--color-bg-card: #1E1E1E;--color-bg-elevated: #2A2A2A;--color-text-primary: #F5F5F5;--color-text-secondary: #9E9E9E;--color-text-muted: #757575;--color-accent: #4CAF50;--color-accent-hover: #2E7D32;--color-accent-glow: rgba(76, 175, 80, .15);--color-danger: #EF5350;--color-danger-glow: rgba(239, 83, 80, .15);--color-success: #4CAF50;--color-success-glow: rgba(76, 175, 80, .15);--color-info: #2196F3;--color-warning: #FFC107;--color-highlight: #F59E0B;--gradient-primary: linear-gradient(135deg, #4CAF50 0%, #2E7D32 100%);--gradient-dark: linear-gradient(180deg, #1A1A1A 0%, #121212 100%);--gradient-card: linear-gradient(145deg, rgba(30, 30, 30, .9) 0%, rgba(26, 26, 26, .95) 100%);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-glow: 0 0 25px var(--color-accent-glow);--color-border: rgba(255, 255, 255, .1)}*{box-sizing:border-box;margin:0;padding:0}html{font-size:13px}html,body{height:100%}body{font-family:Tajawal,Geist,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;direction:inherit;background:var(--color-bg-primary);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden;-webkit-user-select:none;user-select:none;line-height:1.6}#root{height:100%}button{cursor:pointer;border:none;font-family:inherit;transition:all var(--transition-fast);outline:none}button:focus-visible{box-shadow:0 0 0 2px var(--color-accent)}input{font-family:inherit;outline:none}@media(max-width:1024px){body{overflow:hidden auto}#root{height:100dvh}.app-container{height:calc(100dvh - 64px);overflow:hidden}.main-content{overflow-y:auto;-webkit-overflow-scrolling:touch}.reports-panel,.settings-panel,.incoming-panel,.kds-container,.table-selector{padding-bottom:1rem}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#4caf504d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#4caf5080}.glass{background:var(--color-bg-card);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border)}.dark .glass{background:#1e1e1e99;border-color:#4caf5014}.glass-dark{background:#0000001a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border)}.dark .glass-dark{background:#121212b3;border-color:#4caf500d}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-slide-in-right{animation:slideInRight .3s ease forwards}.animate-slide-in-up{animation:slideInUp .3s ease forwards}.animate-scale-in{animation:scaleIn .2s ease forwards}.animate-fade-in{animation:fadeIn .2s ease forwards}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:var(--color-success-glow);color:var(--color-success)}.badge-warning{background:#f59e0b26;color:var(--color-warning)}.badge-danger{background:var(--color-danger-glow);color:var(--color-danger)}.badge-info{background:#3b82f626;color:var(--color-info)}.btn-primary{background:var(--gradient-primary);color:#000;font-weight:700;padding:.875rem 1.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md),var(--shadow-glow);transition:all var(--transition-fast)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 40px var(--color-accent-glow)}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--color-bg-elevated);color:var(--color-text-primary);font-weight:600;padding:.75rem 1.25rem;border-radius:var(--radius-md);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-bg-card);border-color:var(--color-accent)}.btn-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-md)}.btn-icon:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.input{width:100%;padding:.875rem 1rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:1rem;transition:all var(--transition-fast)}.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.input::placeholder{color:var(--color-text-muted)}.card{background:var(--gradient-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.card:hover{border-color:var(--color-accent)}.card-elevated{box-shadow:var(--shadow-lg)}.sidebar{height:100%;background:var(--color-bg-secondary);display:flex;flex-direction:column;align-items:center;padding:1.25rem 0;border-left:1px solid var(--color-border);position:relative}.sidebar:after{content:"";position:absolute;left:0;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent 0%,var(--color-border) 50%,transparent 100%);opacity:.3}.logo-container{margin-bottom:2rem;display:flex;justify-content:center;width:100%}.logo-circle{width:44px;height:44px;background:var(--color-accent-glow);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border)}.nav-menu{flex:1;display:flex;flex-direction:column;gap:.5rem;width:100%;padding:0 .5rem}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.875rem .5rem;border-radius:var(--radius-lg);color:var(--color-text-muted);background:transparent;transition:all var(--transition-normal);width:100%;position:relative;overflow:hidden}.nav-item:before{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--color-accent);border-radius:2px 0 0 2px;transition:height var(--transition-fast)}.nav-item:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.nav-item.active{background:var(--color-primary);color:#fff;box-shadow:0 4px 12px var(--color-accent-glow)}.nav-item.active:before{display:none}.nav-item svg{transition:transform var(--transition-fast)}.nav-item:hover svg,.nav-item.active svg{transform:scale(1.1)}.nav-label{font-size:.65rem;margin-top:.4rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}.nav-badge{position:absolute;top:6px;left:6px;min-width:18px;height:18px;background:var(--color-danger);color:#fff;font-size:.65rem;font-weight:700;border-radius:100px;display:flex;align-items:center;justify-content:center;padding:0 4px;animation:pulse 2s ease-in-out infinite}.nav-divider{height:1px;width:60%;background:var(--color-border);margin:.75rem 0}.logout-btn{margin-top:auto;padding:.875rem;color:var(--color-text-muted);background:transparent;border-radius:var(--radius-lg);transition:all var(--transition-fast)}.logout-btn:hover{background:var(--color-danger-glow);color:var(--color-danger)}.sidebar-time{margin-top:1rem;padding:.75rem;text-align:center}.sidebar-time-value{font-size:1.05rem;font-weight:700;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.sidebar-time-date{font-size:.78rem;color:var(--color-text-muted);margin-top:.25rem}.lang-toggle-btn{display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.5rem .75rem;margin:.5rem 0;color:var(--color-text-secondary);background:var(--color-bg-elevated);border-radius:var(--radius-md);font-size:.75rem;font-weight:700;transition:all var(--transition-fast);border:1px solid var(--color-border)}.lang-toggle-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.network-status-dot{width:8px;height:8px;border-radius:50%;position:absolute;bottom:2px;right:calc(50% - 26px);border:1.5px solid var(--color-bg-secondary)}.network-status-dot.online{background:#22c55e}.network-status-dot.offline{background:#ef4444;animation:pulse 2s ease-in-out infinite}.network-status-dot.syncing{background:#eab308;animation:pulse 1s ease-in-out infinite}@media(max-width:1024px){.sidebar{height:64px;width:100%;flex-direction:row;align-items:center;padding:0 .5rem;border-left:none;border-top:1px solid var(--color-border);position:fixed;bottom:0;left:0;right:0;z-index:50}.sidebar:after{display:none}.logo-container,.sidebar-time,.lang-toggle-btn,.nav-divider{display:none}.nav-menu{flex-direction:row;flex:1;gap:0;padding:0;height:100%}.nav-item{flex:1;flex-direction:column;padding:.375rem .25rem;border-radius:0;height:100%;min-width:0}.nav-item:before{display:none}.nav-item.active{background:transparent;color:var(--color-accent);box-shadow:none}.nav-item.active svg{color:var(--color-accent)}.nav-item:hover{background:var(--color-bg-elevated)}.nav-label{font-size:.6rem;margin-top:.25rem}.nav-badge{top:4px;left:50%;transform:translate(6px)}.logout-btn{flex-shrink:0;padding:.75rem;margin-top:0}.network-status-dot{bottom:auto;top:6px;right:calc(50% - 20px);position:absolute}}.product-card{background:var(--color-bg-card);border-radius:var(--radius-lg);overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--color-border);display:flex;flex-direction:column;height:240px;transition:all var(--transition-normal);animation:scaleIn .3s ease backwards}.product-card:hover{transform:translateY(-6px);border-color:var(--color-accent);box-shadow:var(--shadow-lg),0 0 20px var(--color-accent-glow)}.product-card:active{transform:scale(.98)}.product-image-container{height:140px;width:100%;overflow:hidden;position:relative;background:var(--color-bg-primary)}.product-image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.product-card:hover .product-image{transform:scale(1.1)}.product-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-fast)}.product-card:hover .product-overlay{opacity:1}.add-icon{width:56px;height:56px;background:var(--gradient-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#000;transform:scale(.8);transition:transform var(--transition-fast);box-shadow:var(--shadow-glow)}.product-card:hover .add-icon{transform:scale(1)}.product-category-badge{position:absolute;top:.75rem;left:.75rem;padding:.25rem .6rem;background:var(--color-bg-card);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-sm);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);border:1px solid var(--color-border)}.dark .product-category-badge{background:#0009;color:#fffc}.product-info{padding:1rem;flex:1;display:flex;flex-direction:column;justify-content:space-between}.product-name{font-size:.95rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.product-price{font-size:1.25rem;font-weight:800;color:var(--color-accent)}.quick-add-btn{width:32px;height:32px;background:var(--color-bg-elevated);border-radius:var(--radius-sm);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;opacity:0;transition:all var(--transition-fast)}.product-card:hover .quick-add-btn{opacity:1}.quick-add-btn:hover{background:var(--color-accent);color:#000}@media(max-width:1024px){.product-card{height:200px}.product-image-container{height:110px}.product-overlay{opacity:0;background:#00000059}.product-card:active .product-overlay{opacity:1}.quick-add-btn{opacity:1;width:36px;height:36px;background:var(--color-accent);color:#000;border-radius:var(--radius-md)}.product-card:hover{transform:none}.product-card:active{transform:scale(.97)}.product-info{padding:.625rem .75rem}.product-name{font-size:.85rem}.product-price{font-size:1.05rem}}@media(max-width:767px){.product-card{height:185px}.product-image-container{height:100px}}.cart-container{background:var(--color-bg-secondary);height:100%;display:flex;flex-direction:column;border-right:1px solid var(--color-border);position:relative}.cart-container:before{content:"";position:absolute;right:0;top:0;bottom:0;width:1px;background:linear-gradient(180deg,transparent 0%,var(--color-accent-glow) 50%,transparent 100%);opacity:.5}.cart-header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.cart-header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.cart-title-section{display:flex;flex-direction:column}.cart-title{font-size:1.25rem;font-weight:800;color:var(--color-text-primary)}.cart-item-count{font-size:.8rem;color:var(--color-text-muted);margin-top:.15rem}.clear-cart-btn{background:transparent;color:var(--color-text-muted);padding:.5rem;border-radius:var(--radius-sm);opacity:.6;transition:all var(--transition-fast)}.clear-cart-btn:hover{background:var(--color-danger-glow);color:var(--color-danger);opacity:1}.table-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;background:linear-gradient(135deg,#f59e0b26,#d977061a);color:var(--color-accent);border-radius:100px;font-size:.85rem;font-weight:600;border:1px solid rgba(245,158,11,.2)}.no-table-hint{font-size:.8rem;color:var(--color-text-muted)}.cart-items{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.cart-item{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-card);padding:.65rem .75rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);animation:slideInRight .3s ease backwards}.cart-item:hover{border-color:var(--color-accent)}.cart-item-left{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}.cart-item-image{width:36px;height:36px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0}.item-info{display:flex;flex-direction:column;min-width:0}.item-name{font-weight:600;font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-unit-price{color:var(--color-text-muted);font-size:.7rem}.cart-item-right{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.item-actions{display:flex;align-items:center;gap:.35rem}.qty-btn{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.qty-btn:hover{background:var(--color-bg-elevated);color:#fff}.qty-btn.qty-btn-plus:hover{background:var(--color-accent);color:#000}.item-qty{font-weight:700;min-width:24px;text-align:center;font-size:.9rem}.item-total{font-weight:700;color:var(--color-accent);font-size:.95rem}.cart-footer{padding:1rem;background:var(--color-bg-card);border-top:1px solid var(--color-border);flex-shrink:0}.discount-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:var(--color-bg-elevated);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:600;font-size:.85rem;margin-bottom:1rem;transition:all var(--transition-fast)}.discount-btn:hover{border-color:var(--color-accent);color:var(--color-accent);background:#f59e0b0d}.totals-section{margin-bottom:1rem}.total-row{display:flex;justify-content:space-between;margin-bottom:.5rem;color:var(--color-text-secondary);font-size:.9rem}.total-row.discount-row{color:var(--color-success)}.grand-total{display:flex;justify-content:space-between;font-size:1.25rem;font-weight:800;color:var(--color-text-primary);padding-top:.5rem;border-top:1px solid var(--color-border)}.checkout-btn{width:100%;background:var(--gradient-primary);color:#fff;padding:1rem 1.5rem;border-radius:var(--radius-lg);font-weight:700;font-size:1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md),var(--shadow-glow);transition:all var(--transition-fast)}.checkout-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 40px var(--color-accent-glow)}.checkout-btn:active:not(:disabled){transform:translateY(0)}.checkout-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none}.checkout-amount{background:#00000026;padding:.35rem .75rem;border-radius:var(--radius-md)}.empty-cart{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.empty-cart-icon{width:80px;height:80px;background:var(--color-bg-card);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:var(--color-text-muted);opacity:.5}.empty-cart-title{font-weight:700;font-size:1.1rem;color:var(--color-text-secondary);margin-bottom:.25rem}.empty-cart-hint{font-size:.85rem;color:var(--color-text-muted)}.item-note-display{font-size:.7rem;color:var(--color-accent);background:#f59e0b0d;padding:2px 6px;border-radius:4px;margin-top:2px;display:inline-block}.item-actions-wrapper{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.item-note-btn{background:transparent;color:var(--color-text-muted);font-size:.65rem;padding:2px 6px;border-radius:4px;border:1px solid var(--color-border);display:flex;align-items:center;gap:4px;transition:all .2s}.item-note-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-accent);color:var(--color-text-secondary)}.order-note-section{margin-bottom:1rem;padding:.75rem;background:#00000008;border-radius:var(--radius-md);border:1px solid var(--color-border)}.note-label{display:block;font-size:.75rem;font-weight:600;color:var(--color-text-muted);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.025em}.order-note-input{width:100%;background:transparent;border:none;resize:none;color:var(--color-text-secondary);font-size:.85rem;height:48px;outline:none}.order-note-input::placeholder{color:var(--color-text-muted)}.note-modal-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem;animation:fadeIn .2s ease}.note-modal{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;width:100%;max-width:320px;box-shadow:var(--shadow-lg);animation:scaleIn .2s ease backwards;display:flex;flex-direction:column;gap:1rem}.note-modal h3{margin:0;font-size:1.1rem;color:var(--color-text-primary)}.note-modal input{width:100%;padding:.75rem 1rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.95rem;outline:none;transition:all var(--transition-fast)}.note-modal input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-glow)}.note-modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.note-modal-cancel{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:.9rem;font-weight:600}.note-modal-cancel:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.note-modal-save{padding:.5rem 1rem;background:var(--color-accent);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;box-shadow:0 2px 8px var(--color-accent-glow)}.note-modal-save:hover{background:var(--color-accent-hover);transform:translateY(-1px)}.split-bill-modal{max-width:440px}.split-summary{display:flex;align-items:center;justify-content:space-between;background:var(--color-bg-elevated);padding:1.5rem;border-radius:1rem;margin-bottom:1.5rem;border:1px solid var(--color-border)}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item .label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.summary-item .value{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.summary-item.highlight .value{color:var(--color-accent);font-size:1.5rem}.summary-divider{color:var(--color-text-muted);opacity:.3}.split-counter{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:0 .5rem}.split-counter label{font-weight:600;color:var(--color-text-secondary)}.counter-controls{display:flex;align-items:center;gap:1.5rem;background:var(--color-bg-primary);padding:.5rem 1rem;border-radius:100px;border:1px solid var(--color-border)}.counter-controls button{background:transparent;color:var(--color-text-primary);font-size:1.5rem;font-weight:300;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.counter-controls button:hover{color:var(--color-accent)}.counter-controls span{font-size:1.25rem;font-weight:700;min-width:20px;text-align:center;color:var(--color-text-primary)}.splits-list{max-height:240px;overflow-y:auto;margin-bottom:1.5rem;display:flex;flex-direction:column;gap:.5rem;padding-right:.5rem}.split-item{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.25rem;background:var(--color-bg-card);border-radius:.75rem;border:1px solid var(--color-border)}.split-index{font-size:.875rem;color:var(--color-text-muted);flex:1}.split-value{font-weight:600;margin-right:1.5rem;color:var(--color-text-primary)}.split-method{padding:.35rem .75rem;border-radius:6px;font-size:.7rem;font-weight:700;min-width:64px;transition:all .2s}.split-method.card{background:#6366f126;color:#6366f1;border:1px solid rgba(99,102,241,.3)}.split-method.cash{background:var(--color-success-glow);color:var(--color-success);border:1px solid var(--color-success)}.confirm-split-btn{width:100%;background:var(--gradient-primary);color:#fff;padding:1rem;border-radius:var(--radius-lg);font-weight:700;display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:auto;box-shadow:var(--shadow-glow)}.confirm-split-btn:hover{transform:translateY(-2px);box-shadow:0 0 30px var(--color-accent-glow)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.dark .modal-overlay{background:#000000d9}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--color-bg-card);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-xl);padding:1.5rem;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;animation:slideUp .4s cubic-bezier(.16,1,.3,1);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.dark .modal-content{background:#1a1a1ad9}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.modal-title{font-size:1.75rem;font-weight:800;color:var(--color-text-primary)}.close-btn{background:var(--color-bg-elevated);color:var(--color-text-secondary);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.close-btn:hover{background:var(--color-danger-glow);color:var(--color-danger);transform:rotate(90deg)}.payment-amount{text-align:center;padding:1.25rem;background:#00000008;border-radius:var(--radius-lg);margin-bottom:1.25rem;border:1px solid var(--color-border)}.amount-label{color:var(--color-text-secondary);font-size:.9rem;font-weight:500;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.amount-value{font-size:2.25rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-1px}.payment-methods{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem}.payment-method-btn{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.75rem;background:var(--color-bg-card);border-radius:var(--radius-lg);color:var(--color-text-secondary);border:2px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1)}.payment-method-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-accent);color:var(--color-text-primary);transform:translateY(-2px)}.payment-method-btn.selected{border-color:var(--color-accent);background:var(--color-accent-glow);color:var(--color-accent);box-shadow:0 8px 24px #4caf501a}.payment-method-btn span{font-weight:700;font-size:1rem}.cash-input-section{margin-bottom:1.25rem}.cash-label{display:block;color:var(--color-text-secondary);margin-bottom:.75rem;font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.cash-input{width:100%;padding:1.25rem;background:#0000000d;border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:1.5rem;font-weight:700;text-align:center;transition:all .2s}.cash-input:focus{outline:none;border-color:var(--color-accent)}.change-display{display:flex;justify-content:space-between;padding:1rem;background:var(--color-success);border-radius:var(--radius-md);margin-bottom:1.5rem;color:#fff;font-weight:600}.change-display.error{background:var(--color-danger)}.quick-cash-btns{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.quick-cash-btn{padding:.5rem 1rem;background:var(--color-bg-primary);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:.9rem}.quick-cash-btn:hover{background:var(--color-accent);color:#fff}.confirm-payment-btn{width:100%;padding:1rem;background:var(--color-accent);color:#fff;font-size:1.1rem;font-weight:700;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;gap:.5rem}.confirm-payment-btn:hover{background:var(--color-accent-hover)}.confirm-payment-btn:disabled{opacity:.5;cursor:not-allowed}.payment-modal-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.split-btn{width:100%;background:var(--color-bg-secondary);color:var(--color-text-secondary);padding:.75rem;border-radius:var(--radius-md);font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s;border:1px solid var(--color-border)}.split-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-text-muted);color:var(--color-text-primary)}.table-selector{padding:1.5rem}.section-title{font-size:1.25rem;font-weight:700;margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:1rem}.table-btn{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:var(--color-bg-card);border-radius:var(--radius-lg);color:var(--color-text-secondary);border:2px solid transparent;transition:all .2s ease;position:relative}.table-btn:hover{border-color:var(--color-accent);transform:scale(1.05)}.table-btn.selected{border-color:var(--color-accent);background:var(--color-accent-glow);color:var(--color-accent)}.table-btn.occupied{background:#ef44441a;border-color:var(--color-danger);color:var(--color-danger)}.table-number{font-size:1.5rem;font-weight:800}.table-status{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.table-order-badge{position:absolute;top:-8px;right:-8px;background:var(--color-danger);color:#fff;font-size:.7rem;font-weight:700;padding:.25rem .5rem;border-radius:100px}.incoming-panel{padding:1.5rem;height:100%;overflow-y:auto}.incoming-header{margin-bottom:1.5rem}.incoming-title-row{display:flex;align-items:center;gap:.5rem;color:var(--color-text-primary)}.incoming-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.incoming-count{background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:700;min-width:22px;height:22px;border-radius:100px;display:flex;align-items:center;justify-content:center;padding:0 6px}.incoming-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60%;color:var(--color-text-muted);gap:1rem;opacity:.5}.incoming-empty p{font-size:.95rem}.incoming-list{display:flex;flex-direction:column;gap:1rem}.incoming-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.incoming-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.incoming-card-id{display:flex;align-items:center;gap:.25rem;font-weight:700;font-size:.85rem;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.incoming-source-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.incoming-source-badge.website{background:#3b82f626;color:#60a5fa}.incoming-source-badge.delivery{background:#f59e0b26;color:#fbbf24}.incoming-card-time{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:var(--color-text-muted);margin-inline-start:auto}.incoming-info{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--color-text-secondary);margin-bottom:.35rem}.incoming-delivery-info{margin-bottom:.5rem;padding:.5rem;background:var(--color-bg-elevated);border-radius:var(--radius-sm)}.incoming-delivery-info .incoming-info:last-child{margin-bottom:0}.incoming-items{border-top:1px solid var(--color-border);padding-top:.5rem;margin-bottom:.5rem}.incoming-item{display:flex;align-items:center;gap:.5rem;padding:.3rem 0;font-size:.85rem}.incoming-item-qty{font-weight:700;color:var(--color-primary);min-width:28px}.incoming-item-name{flex:1;color:var(--color-text-primary)}.incoming-item-price{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.incoming-note{font-size:.8rem;color:var(--color-text-muted);font-style:italic;padding:.4rem .6rem;background:var(--color-bg-elevated);border-radius:var(--radius-sm);margin-bottom:.5rem}.incoming-card-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--color-border);padding-top:.75rem}.incoming-total{font-size:1.1rem;font-weight:800;color:var(--color-text-primary)}.incoming-actions{display:flex;gap:.5rem}.incoming-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.8rem;font-weight:700;transition:all var(--transition-fast);cursor:pointer}.incoming-btn.accept{background:var(--color-success);color:#fff}.incoming-btn.accept:hover{filter:brightness(1.1);transform:translateY(-1px)}.incoming-btn.reject{background:transparent;color:var(--color-danger);border:1px solid var(--color-danger)}.incoming-btn.reject:hover{background:var(--color-danger);color:#fff}.kds-container{height:100%;width:100%;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem;flex:1;min-height:0}.kds-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-shrink:0}.kds-header-left{display:flex;align-items:center;gap:.75rem}.kds-header-left h1{font-size:1.5rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-.5px}.kds-live-badge{display:inline-flex;align-items:center;gap:6px;padding:.35rem .75rem;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.kds-live-dot{width:7px;height:7px;background:var(--color-primary);border-radius:50%;animation:pulse 2s ease-in-out infinite}.kds-header-stats{display:flex;gap:.75rem}.kds-stat-pill{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-bg-card);border-radius:var(--radius-md);border:1px solid var(--color-border);font-size:.85rem;color:var(--color-text-secondary)}.kds-stat-pill .pill-val{font-weight:800;font-size:1.1rem;font-variant-numeric:tabular-nums;color:var(--color-text-primary)}.kds-header-actions{display:flex;gap:.5rem}.kds-fullscreen-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.kds-fullscreen-btn:hover{background:var(--color-bg-card);border-color:var(--color-accent);color:var(--color-text-primary)}.kds-board{flex:1;display:grid;grid-template-columns:1fr 1.4fr .8fr;gap:1rem;overflow:hidden;min-height:0}.kds-lane{display:flex;flex-direction:column;overflow:hidden;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;min-width:0}.lane-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;flex-shrink:0;border-bottom:1px solid var(--color-border)}.lane-header-left{display:flex;align-items:center;gap:.5rem}.lane-header h2{margin:0;font-size:.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-primary)}.lane-count{font-size:.75rem;font-weight:700;padding:2px 10px;border-radius:100px;min-width:24px;text-align:center}.kds-lane.lane-new .lane-header{background:transparent;border-bottom:1px solid var(--color-border)}.kds-lane.lane-new .lane-header svg{color:var(--color-text-secondary)}.kds-lane.lane-new .lane-count{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.kds-lane.lane-preparing .lane-header{background:transparent;border-bottom:1px solid var(--color-border)}.kds-lane.lane-preparing .lane-header svg{color:var(--color-text-secondary)}.kds-lane.lane-preparing .lane-count{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.kds-lane.lane-ready .lane-header{background:transparent;border-bottom:1px solid var(--color-border)}.kds-lane.lane-ready .lane-header svg{color:var(--color-text-secondary)}.kds-lane.lane-ready .lane-count{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.kds-lane.lane-delivery .lane-header{background:transparent;border-bottom:1px solid var(--color-border)}.kds-lane.lane-delivery .lane-header svg{color:var(--color-text-secondary)}.kds-lane.lane-delivery .lane-count{background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.lane-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:.75rem;display:flex;flex-direction:column;gap:.625rem;min-height:0}.kds-ticket{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast);animation:slideInUp .3s ease backwards;flex-shrink:0}.kds-ticket:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.ticket-urgency-bar{height:3px;width:100%;background:var(--color-bg-elevated);overflow:hidden}.ticket-urgency-fill{height:100%;transition:width 1s linear,background-color 1s}.urgency-ok .ticket-urgency-fill{background:transparent}.urgency-warn .ticket-urgency-fill{background:var(--color-text-muted);opacity:.5}.urgency-critical .ticket-urgency-fill,.urgency-rush .ticket-urgency-fill{background:var(--color-text-muted)}.ticket-head{display:flex;align-items:center;justify-content:space-between;padding:.6rem .85rem}.ticket-id{display:flex;align-items:baseline;gap:.5rem}.ticket-number{font-size:1.25rem;font-weight:800;color:var(--color-text-primary);font-variant-numeric:tabular-nums}.ticket-table{font-size:.75rem;font-weight:700;color:var(--color-text-primary);background:var(--color-bg-elevated);padding:2px 8px;border-radius:var(--radius-sm);border:1px solid var(--color-border)}.ticket-meta{display:flex;align-items:center;gap:.6rem}.ticket-timer{font-size:.95rem;font-weight:700;display:flex;align-items:center;gap:4px;color:var(--color-text-muted);font-variant-numeric:tabular-nums}.urgency-warn .ticket-timer,.urgency-critical .ticket-timer,.urgency-rush .ticket-timer{color:var(--color-text-primary)}.ticket-rush-tag{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:.35rem .75rem;border-radius:100px;background:var(--color-bg-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.ticket-items{padding:0 .85rem .5rem}.ticket-item{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;border-bottom:1px solid var(--color-border)}.ticket-item:last-child{border-bottom:none}.item-qty{font-size:1.05rem;font-weight:800;color:var(--color-text-primary);min-width:30px;flex-shrink:0}.item-info{flex:1;min-width:0}.item-name{font-size:.9rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.item-note{display:inline-block;font-size:.75rem;font-weight:600;color:var(--color-text-secondary);background:var(--color-bg-elevated);border:1px solid var(--color-border);padding:2px 8px;border-radius:var(--radius-sm);margin-top:3px}.ticket-order-note{margin:0 .85rem .5rem;padding:.5rem .65rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.8rem;font-weight:700;color:var(--color-text-secondary);display:flex;align-items:center;gap:6px}.ticket-bump{display:flex;border-top:1px solid var(--color-border)}.bump-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:.65rem;border:none;font-size:.85rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);background:var(--color-bg-elevated);color:var(--color-text-primary);border-top:1px solid var(--color-border)}.bump-btn.bump-start,.bump-btn.bump-done,.bump-btn.bump-serve{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.bump-btn:hover{background:var(--color-primary);color:#fff}.kds-ticket.ticket-ready{border-color:var(--color-primary)}.kds-ticket.ticket-ready .ticket-number{color:var(--color-primary)}.kds-ticket.ticket-active{border-color:var(--color-text-muted)}.lane-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;color:var(--color-text-muted);padding:2rem}.lane-empty svg{opacity:.3}.lane-empty p{font-size:.85rem;font-weight:600;margin:0}.kds-summary-drawer{border-top:1px solid var(--color-border);padding:.75rem;background:var(--color-bg-elevated);max-height:35%;overflow-y:auto}.summary-title{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:.5rem}.summary-row{display:flex;align-items:center;padding:.35rem .5rem;border-radius:var(--radius-sm)}.summary-row:nth-child(2n){background:var(--color-bg-card)}.summary-row-qty{font-size:.9rem;font-weight:800;color:var(--color-text-primary);min-width:32px}.summary-row-name{flex:1;font-size:.85rem;font-weight:600;color:var(--color-text-secondary)}.kds-lane-tabs{display:none}@media(max-width:1100px){.kds-container{padding:1rem}.kds-board{grid-template-columns:1fr 1fr}.kds-board{grid-template-columns:repeat(3,1fr);gap:.625rem}.kds-header-stats{display:none}.bump-btn{min-height:48px;font-size:.9rem}}@media(max-width:768px){.kds-header-left h1{font-size:1.1rem}.kds-live-badge,.kds-fullscreen-btn span{display:none}.kds-fullscreen-btn{padding:.5rem .625rem}.lane-header h2{font-size:.75rem}.ticket-number{font-size:1rem}}@media(max-width:600px){.kds-container{padding:.75rem}.kds-header{margin-bottom:.625rem}.kds-lane-tabs{display:flex;gap:.375rem;margin-bottom:.75rem;flex-shrink:0;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.25rem}.kds-lane-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.35rem;padding:.6rem .25rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:700;color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;position:relative;transition:all var(--transition-fast)}.kds-lane-tab.active{background:var(--color-primary);color:#fff}.kds-lane-tab-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;background:var(--color-danger);color:#fff;font-size:.6rem;font-weight:800;border-radius:100px;display:flex;align-items:center;justify-content:center;padding:0 3px}.kds-board{grid-template-columns:1fr}.kds-lane{display:none}.kds-lane.lane-active{display:flex}.bump-btn{min-height:52px;font-size:.95rem}}.receipt-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:2rem}.dark .receipt-modal-overlay{background:#000000d9}.receipt-modal{background:var(--color-bg-secondary);border-radius:var(--radius-xl);width:100%;max-width:420px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .3s ease}.receipt-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border)}.receipt-modal-title{font-size:1.25rem;font-weight:700}.receipt-modal-close{background:transparent;color:var(--color-text-secondary);padding:.5rem;border-radius:var(--radius-sm)}.receipt-modal-close:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.receipt-container{flex:1;overflow-y:auto;padding:1.5rem}.receipt-paper-canvas-wrapper{background:#fff;padding:0;border-radius:4px;box-shadow:0 4px 20px #00000026;max-width:384px;margin:0 auto;overflow:hidden}.receipt-canvas-preview{width:100%;height:auto;image-rendering:pixelated}.receipt-footer{text-align:center;font-size:.75rem;color:#666;margin-top:1rem}.receipt-barcode{text-align:center;margin:1rem 0}.barcode-placeholder{display:inline-block;background:repeating-linear-gradient(90deg,#000,#000 2px,#fff 2px,#fff 4px);height:40px;width:150px}.receipt-modal-actions{display:flex;gap:1rem;padding:1.25rem 1.5rem;border-top:1px solid var(--color-border)}.receipt-btn{flex:1;padding:.875rem;border-radius:var(--radius-lg);font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}.receipt-btn-print{background:var(--gradient-primary);color:#000}.receipt-btn-print:hover{transform:translateY(-2px);box-shadow:var(--shadow-glow)}.receipt-btn-email{background:var(--color-bg-card);color:var(--color-text-primary);border:1px solid var(--color-border)}.receipt-btn-email:hover{border-color:var(--color-accent)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 1.5s cubic-bezier(.4,0,.6,1) infinite}.receipt-btn-print.loading{opacity:.8;background:var(--color-bg-elevated);color:var(--color-text-secondary);cursor:wait}.discount-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.dark .discount-modal-overlay{background:#000000d9}.discount-modal{background:var(--color-bg-card);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:var(--radius-xl);width:100%;max-width:400px;animation:scaleIn .3s cubic-bezier(.16,1,.3,1);border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.dark .discount-modal{background:#1a1a1acc}.discount-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 1.75rem;border-bottom:1px solid var(--color-border)}.discount-modal-title{font-size:1.5rem;font-weight:800;color:var(--color-text-primary)}.discount-modal-close{background:var(--color-bg-elevated);color:var(--color-text-secondary);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.discount-modal-close:hover{background:var(--color-danger-glow);color:var(--color-danger)}.discount-modal-body{padding:2rem}.discount-type-toggle{display:flex;background:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:.4rem;margin-bottom:2rem;border:1px solid var(--color-border)}.discount-type-btn{flex:1;padding:.875rem;background:transparent;color:var(--color-text-secondary);border-radius:var(--radius-md);font-weight:700;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.discount-type-btn.active{background:var(--color-primary);color:#fff;box-shadow:0 4px 12px var(--color-accent-glow)}.discount-input-group{margin-bottom:2rem}.discount-input-label{display:block;color:var(--color-text-secondary);font-size:.9rem;font-weight:600;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.discount-input-wrapper{position:relative}.discount-input{width:100%;padding:1.25rem 3.5rem 1.25rem 1.25rem;background:#0000000d;border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:2rem;font-weight:800;text-align:center;transition:all .2s}.discount-input:focus{background:#0000004d;border-color:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-glow)}.discount-input-symbol{position:absolute;right:1.25rem;top:50%;transform:translateY(-50%);color:var(--color-accent);font-size:1.5rem;font-weight:800}.quick-discount-btns{display:flex;gap:.625rem;flex-wrap:wrap;margin-bottom:2rem}.quick-discount-btn{padding:.625rem 1.125rem;background:var(--color-bg-card);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:700;border:1px solid var(--color-border);transition:all .2s}.quick-discount-btn:hover{background:var(--color-bg-elevated);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.discount-preview{background:#00000008;border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:2rem;border:1px solid var(--color-border)}.discount-preview-row{display:flex;justify-content:space-between;margin-bottom:.625rem;color:var(--color-text-secondary);font-weight:500}.discount-preview-row.total{color:var(--color-text-primary);font-weight:800;font-size:1.25rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--color-border)}.discount-preview-row.savings{color:var(--color-success);font-weight:700}.discount-apply-btn{width:100%;padding:1.125rem;background:var(--gradient-primary);color:#000;border-radius:var(--radius-lg);font-weight:800;font-size:1.1rem;display:flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:var(--shadow-md),var(--shadow-glow);transition:all .2s cubic-bezier(.4,0,.2,1)}.discount-apply-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 30px var(--color-accent-glow)}.discount-apply-btn:disabled{opacity:.3;cursor:not-allowed;transform:none;box-shadow:none}.orders-panel{padding:1.5rem;height:100%;overflow-y:auto}.orders-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:.75rem}.orders-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary)}.orders-filters{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.date-filter-group{display:flex;align-items:center;gap:.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.25rem}.date-filter-group svg{color:var(--color-text-muted);margin:0 .35rem}.date-filter-btn{padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;color:var(--color-text-secondary);background:transparent;transition:all var(--transition-fast)}.date-filter-btn.active{background:var(--color-primary);color:#fff}.date-filter-btn:hover:not(.active){background:var(--color-bg-elevated)}.orders-stats{display:flex;gap:.75rem}.stat-badge{padding:.5rem 1rem;background:var(--color-bg-card);border-radius:var(--radius-md);font-size:.85rem;color:var(--color-text-primary);border:1px solid var(--color-border)}.stat-badge.success{background:var(--color-success-glow);color:var(--color-success)}.stat-value{font-weight:700;margin-left:.25rem}.orders-list{display:flex;flex-direction:column;gap:1rem}.order-card{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:1.25rem;border:1px solid var(--color-border);transition:all .2s ease}.order-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md)}.order-card.voided{opacity:.5;border-color:var(--color-danger)}.order-card.voided .order-total{text-decoration:line-through;color:var(--color-text-muted)}.order-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.order-info h3{font-size:1rem;font-weight:700;margin-bottom:.25rem;color:var(--color-text-primary)}.order-meta{display:flex;gap:.75rem;color:var(--color-text-secondary);font-size:.85rem}.order-meta span{display:flex;align-items:center;gap:.25rem}.order-header-actions{display:flex;align-items:center;gap:.5rem}.order-status{padding:.35rem .75rem;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase}.order-status.completed{background:var(--color-success-glow);color:var(--color-success)}.order-status.pending{background:#e67e2226;color:var(--color-warning)}.order-status.preparing{background:#1976d226;color:var(--color-info)}.order-status.cancelled{background:var(--color-danger-glow);color:var(--color-danger)}.void-btn{padding:.35rem;background:transparent;color:var(--color-text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.void-btn:hover{background:var(--color-danger-glow);color:var(--color-danger)}.order-items-preview{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.order-item-chip{padding:.35rem .75rem;background:var(--color-bg-elevated);border-radius:var(--radius-sm);font-size:.8rem;color:var(--color-text-primary);border:1px solid var(--color-border)}.item-qty{color:var(--color-accent);font-weight:600;margin-right:.25rem}.order-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--color-border)}.order-total{font-size:1.25rem;font-weight:800;color:var(--color-accent)}.order-payment{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary);font-size:.85rem}.empty-orders{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--color-text-secondary);text-align:center}.empty-orders svg{opacity:.3;margin-bottom:1rem;color:var(--color-text-muted)}.reports-panel{padding:2rem;height:100%;overflow-y:auto;background:var(--color-bg-primary)}.reports-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;flex-wrap:wrap;gap:1rem}.reports-header-right{display:flex;align-items:center;gap:.75rem}.reports-sub-tabs{display:flex;align-items:center;gap:.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.25rem}.reports-sub-tab{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;color:var(--color-text-secondary);background:transparent;transition:all var(--transition-fast);cursor:pointer}.reports-sub-tab.active{background:var(--color-primary);color:#fff}.reports-sub-tab:hover:not(.active){background:var(--color-bg-elevated)}.reports-title{display:flex;align-items:center;gap:1rem}.reports-title h2{font-size:1.75rem;font-weight:800;color:var(--color-text-primary);margin:0;letter-spacing:-.5px}.reports-title svg{color:var(--color-primary)}.reports-period{display:flex;align-items:center;gap:.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.25rem}.reports-period svg{color:var(--color-text-muted);margin:0 .35rem}.period-btn{padding:.4rem .75rem;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;color:var(--color-text-secondary);background:transparent;transition:all var(--transition-fast)}.period-btn.active{background:var(--color-primary);color:#fff}.period-btn:hover:not(.active){background:var(--color-bg-elevated)}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.metric-card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;display:flex;align-items:center;gap:1.25rem;transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.metric-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.metric-card.primary{background:var(--gradient-card);border-color:var(--color-accent-glow)}.metric-icon{width:52px;height:52px;border-radius:var(--radius-lg);background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;color:var(--color-primary);box-shadow:inset 0 2px 4px #0000000d}.metric-card.primary .metric-icon{background:var(--color-primary);color:#fff}.metric-content{display:flex;flex-direction:column;gap:.25rem}.metric-value{font-size:1.75rem;font-weight:800;color:var(--color-text-primary);letter-spacing:-.5px}.metric-label{font-size:.85rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.reports-content{display:grid;grid-template-columns:1fr 340px;gap:2rem;margin-bottom:2rem}.chart-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-sm)}.section-title{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin:0 0 1.5rem;display:flex;align-items:center;gap:.75rem}.section-title svg{color:var(--color-highlight)}.hourly-chart{display:flex;align-items:flex-end;gap:.5rem;height:200px;padding-top:1rem;padding-bottom:28px}.chart-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;position:relative}.chart-bar{width:100%;background:var(--color-bg-elevated);border-radius:4px 4px 0 0;transition:all .4s cubic-bezier(.175,.885,.32,1.275);min-height:4px}.chart-bar.has-value{background:var(--gradient-primary)}.chart-bar.current{background:linear-gradient(180deg,var(--color-highlight) 0%,var(--color-warning) 100%)!important;box-shadow:0 0 15px #f59e0b66}.chart-bar:hover{transform:scaleX(1.1);filter:brightness(1.1)}.chart-label{position:absolute;bottom:-24px;font-size:.75rem;font-weight:600;color:var(--color-text-muted)}.reports-sidebar{display:flex;flex-direction:column;gap:2rem}.payment-breakdown,.popular-items{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:1.5rem;box-shadow:var(--shadow-sm)}.payment-stats{display:flex;flex-direction:column;gap:1rem}.payment-stat{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.payment-stat svg{color:var(--color-info)}.payment-info{display:flex;flex-direction:column}.payment-count{font-size:1.25rem;font-weight:800;color:var(--color-text-primary)}.payment-label{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase}.items-list{display:flex;flex-direction:column;gap:.75rem}.popular-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.item-rank{font-size:.85rem;font-weight:800;color:var(--color-highlight);min-width:28px;height:28px;background:var(--color-bg-card);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.item-details{display:flex;flex-direction:column;flex:1}.item-name{font-size:.95rem;color:var(--color-text-primary);font-weight:700}.item-stats{font-size:.75rem;font-weight:500;color:var(--color-text-muted)}.no-data{color:var(--color-text-muted);font-size:.9rem;text-align:center;padding:2rem;font-style:italic}.summary-section{display:flex;gap:1.5rem;padding:1.5rem;background:var(--color-bg-secondary);border-radius:var(--radius-xl);border:1px solid var(--color-border)}.summary-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem}.summary-label{font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1.5rem;font-weight:800;color:var(--color-text-primary)}.summary-value.success{color:var(--color-success)}.summary-value.warning{color:var(--color-warning)}.summary-value.danger{color:var(--color-danger)}@media(max-width:1200px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.reports-content{grid-template-columns:1fr}.reports-sidebar{flex-direction:row}.payment-breakdown,.popular-items{flex:1}}@media(max-width:1024px){.reports-panel{padding:1rem}.reports-header{margin-bottom:1.25rem;flex-direction:column;align-items:flex-start}.reports-header-right{width:100%;flex-wrap:wrap;gap:.5rem}.reports-title h2,.metric-value{font-size:1.35rem}.metrics-grid{gap:.75rem;margin-bottom:1.25rem}.reports-content{gap:1rem;margin-bottom:1.25rem}.reports-sidebar{flex-direction:column}.chart-section{padding:1.25rem}.payment-breakdown,.popular-items{padding:1rem}.summary-section{flex-wrap:wrap;padding:1rem;gap:.75rem}.summary-stat{min-width:120px;padding:.625rem}.summary-value{font-size:1.15rem}}@media(max-width:767px){.reports-panel{padding:.75rem}.reports-title h2{font-size:1.1rem}.metrics-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.metric-card{padding:.875rem;gap:.75rem}.metric-icon{width:40px;height:40px;flex-shrink:0}.metric-value{font-size:1.1rem}.metric-label{font-size:.72rem}.reports-sub-tabs{width:100%;justify-content:center}.reports-period{width:100%}.reports-period svg{display:none}.reports-period .period-btn{flex:1;text-align:center;padding:.6rem .25rem;font-size:.85rem}.hourly-chart{height:150px;padding-bottom:24px}.chart-label{font-size:.65rem}.summary-section{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.summary-stat{padding:.625rem;gap:.25rem}.summary-value{font-size:1rem}.summary-label{font-size:.7rem}}.settings-panel{padding:2rem;height:100%;overflow-y:auto;background:var(--color-bg-primary)}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.settings-title{display:flex;align-items:center;gap:1rem}.settings-title h2{font-size:1.75rem;font-weight:800;color:var(--color-text-primary);margin:0;letter-spacing:-.5px}.settings-title svg{color:var(--color-primary)}.settings-actions{display:flex;gap:1rem}.settings-btn{display:flex;align-items:center;gap:.625rem;padding:.75rem 1.25rem;border-radius:var(--radius-lg);font-size:.9rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast);border:none}.settings-btn.primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md)}.settings-btn.primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow)}.settings-btn.secondary{background:var(--color-bg-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.settings-btn.secondary:hover{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-text-muted)}.settings-content{display:flex;flex-direction:column;gap:2rem;max-width:900px}.settings-section{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-sm)}.section-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px dashed var(--color-border)}.section-header h3{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);margin:0}.section-header svg{color:var(--color-primary)}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.setting-item{display:flex;flex-direction:column;gap:.75rem}.setting-item.full-width{grid-column:span 2}.setting-item label{font-size:.85rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.setting-item input,.setting-item select{padding:.875rem 1.25rem;background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:.95rem;font-weight:500;transition:all var(--transition-fast)}.setting-item input:focus,.setting-item select:focus{outline:none;border-color:var(--color-primary);background:var(--color-bg-card);box-shadow:0 0 0 4px var(--color-accent-glow)}.setting-item input::placeholder{color:var(--color-text-muted)}.setting-item select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 1rem center;background-size:1.25rem;padding-left:3rem}[dir=ltr] .setting-item select{background-position:right 1rem center;padding-left:1.25rem;padding-right:3rem}.setting-item select option{background:var(--color-bg-card);color:var(--color-text-primary)}.setting-item.toggle-item{flex-direction:row;justify-content:space-between;align-items:center;padding:1.25rem;background:var(--color-bg-secondary);border-radius:var(--radius-lg);grid-column:span 2;border:1px solid var(--color-border)}.toggle-info{display:flex;flex-direction:column;gap:.25rem}.toggle-info label{color:var(--color-text-primary);font-weight:700;text-transform:none;letter-spacing:normal}.toggle-description{font-size:.8rem;color:var(--color-text-muted)}.toggle-switch{position:relative;width:52px;height:28px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-bg-elevated);border-radius:28px;transition:all .3s;border:1px solid var(--color-border)}.toggle-slider:before{content:"";position:absolute;height:20px;width:20px;left:3px;top:50%;transform:translateY(-50%);background:#fff;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.toggle-switch input:checked+.toggle-slider{background:var(--color-primary);border-color:var(--color-primary-dark)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px,-50%)}.help-section{background:var(--color-accent-glow);border:1px solid var(--color-primary-light);border-style:dashed}.help-content p{color:var(--color-text-secondary);font-size:.95rem;margin:0 0 1.5rem}.help-links{display:flex;gap:1rem}.help-link{padding:.625rem 1.25rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.85rem;font-weight:700;cursor:pointer;transition:all var(--transition-fast)}.help-link:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-2px)}.printer-selection{display:flex;gap:1rem}.printer-selection select{flex:1}.test-btn{padding:.75rem 1.5rem;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-primary);font-size:.9rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.test-btn:hover:not(:disabled){background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.test-btn:disabled{opacity:.5;cursor:not-allowed}.settings-action-btn{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:1rem;background:#f59e0b0d;border:1px solid rgba(245,158,11,.2);border-radius:var(--radius-lg);color:var(--color-highlight);font-size:.95rem;font-weight:700;cursor:pointer;transition:all .2s}.settings-action-btn:hover{background:#f59e0b1a;transform:translateY(-1px)}.settings-action-btn.secondary{background:var(--color-bg-secondary);border-color:var(--color-border);color:var(--color-text-primary)}.settings-action-btn.secondary:hover{background:var(--color-bg-elevated)}@media(max-width:768px){.settings-grid{grid-template-columns:1fr}.setting-item.full-width,.setting-item.toggle-item{grid-column:span 1}.settings-header{flex-direction:column;gap:1.5rem;align-items:flex-start}.settings-tabs{margin-left:0;width:100%;overflow-x:auto;padding-bottom:.5rem}}.settings-tabs{display:flex;gap:.5rem;margin-right:auto;margin-left:2rem}.settings-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-radius:var(--radius-lg);color:var(--color-text-secondary);font-weight:600;cursor:pointer;transition:all .2s}.settings-tab-btn:hover{background:var(--color-bg-elevated);color:var(--color-text-primary)}.settings-tab-btn.active{background:var(--color-bg-elevated);color:var(--color-primary);box-shadow:0 1px 2px #0000000d}.menu-management{width:100%;max-width:900px}.menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.menu-management h3,.menu-header h3{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0}.menu-list{display:flex;flex-direction:column;gap:1rem}.menu-item-row{display:flex;align-items:center;gap:1.5rem;padding:1rem;background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all .2s}.menu-item-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:var(--color-text-muted)}.item-thumb{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-md);background:var(--color-bg-secondary)}.item-info{flex:1}.item-name{font-weight:700;color:var(--color-text-primary);font-size:1.1rem;margin-bottom:.25rem}.item-meta{color:var(--color-text-secondary);font-size:.9rem}.item-actions{display:flex;gap:.5rem}.icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.icon-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.icon-btn.danger:hover{background:var(--color-danger);border-color:var(--color-danger)}.edit-form.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;margin-bottom:2rem;box-shadow:var(--shadow-md);animation:fadeIn .3s ease}.edit-form.card h4{margin:0 0 1.5rem;color:var(--color-text-primary);font-size:1.1rem;font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase}.form-group input,.form-group select{padding:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.95rem}.form-group select{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%232E4840' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:1.25rem;background-position:left .75rem center;padding-left:2.5rem;padding-right:.875rem;text-align:right}[dir=ltr] .form-group select{background-position:right .75rem center;padding-right:2.5rem;padding-left:.875rem;text-align:left}.dark .form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23E0E0E0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.category-icon-fix{padding-right:2.5rem!important}.form-actions{grid-column:span 2;display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.lang-switch-group{display:flex;gap:.5rem;flex-shrink:0}.lang-switch-btn{padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg-elevated);color:var(--color-text-secondary);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.lang-switch-btn:hover{background:var(--color-bg-card);color:var(--color-text-primary);border-color:var(--color-text-muted)}.lang-switch-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}@media(max-width:1024px){.settings-panel{padding:1rem}.settings-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem}.settings-title h2{font-size:1.35rem}.settings-actions{width:100%}.settings-btn{flex:1;justify-content:center}}@media(max-width:767px){.settings-panel{padding:.75rem}.settings-title h2{font-size:1.1rem}}.bt-error-msg{margin-top:.5rem;padding:.5rem .75rem;border-radius:8px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;font-size:.8rem;line-height:1.4;word-break:break-word}.bt-printer-row{display:flex;align-items:center;gap:.75rem}.bt-status{flex:1;display:flex;align-items:center;gap:.4rem;font-size:.875rem;color:var(--color-text-secondary);padding:.5rem .75rem;background:var(--color-bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--color-border)}.bt-status.connected{color:#16a34a;border-color:#16a34a44;background:#16a34a11}.net-printer-row{display:flex;gap:.5rem;align-items:center}.net-printer-ip{flex:1;min-width:0}.net-printer-port{width:80px}.printer-width-group{display:flex;gap:.5rem}.printer-width-btn{flex:1;padding:.5rem .75rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;transition:all .15s ease}.printer-width-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.printer-width-btn:not(.active):hover{border-color:var(--color-primary);color:var(--color-primary)}.pin-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999}.pin-box{background:var(--color-bg-card, #1a1a2e);border:1px solid var(--color-border, #333);border-radius:20px;padding:2rem 1.5rem 1.5rem;width:300px;text-align:center;box-shadow:0 24px 64px #000000a6;animation:pin-pop .18s cubic-bezier(.34,1.56,.64,1)}@keyframes pin-pop{0%{transform:scale(.88);opacity:0}to{transform:scale(1);opacity:1}}.pin-title{font-size:1.2rem;font-weight:800;color:var(--color-text-primary, #fff);margin:0 0 .3rem}.pin-subtitle{font-size:.8rem;color:var(--color-text-muted, #888);margin:0 0 1.5rem}.pin-dots{display:flex;justify-content:center;gap:14px;margin-bottom:.4rem}.pin-dots.pin-dots-shake{animation:shake .4s ease-in-out}.pin-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border, #555);background:transparent;transition:background .15s,border-color .15s,transform .15s}.pin-dot.filled{background:var(--color-primary, #6c5ce7);border-color:var(--color-primary, #6c5ce7);transform:scale(1.15)}.pin-dot.filled.error{background:#e74c3c;border-color:#e74c3c}.pin-dot.locked{border-color:#e74c3c;background:#e74c3c26}.pin-err{color:#e74c3c;font-size:.78rem;margin:.35rem 0 .9rem}.pin-lockout{display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.6rem 0 .8rem}.pin-lockout-icon{width:28px;height:28px;color:#e74c3c;margin-bottom:.15rem}.pin-lockout-msg{font-size:.8rem;color:var(--color-text-muted, #888);margin:0}.pin-lockout-countdown{font-size:.9rem;color:#e74c3c;margin:0}.pin-lockout-countdown strong{font-variant-numeric:tabular-nums}.pin-pad-locked .pin-key{opacity:.25;cursor:not-allowed;pointer-events:none}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:1.2rem auto 0;max-width:240px}.pin-key{height:58px;border-radius:12px;font-size:1.35rem;font-weight:700;color:var(--color-text-primary, #fff);background:var(--color-bg-elevated, #252525);border:1px solid var(--color-border, #333);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s,transform .08s;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.pin-key:active{transform:scale(.9);background:var(--color-primary, #6c5ce7);border-color:var(--color-primary, #6c5ce7);color:#fff}.pin-key-del{font-size:1.2rem;background:transparent;border-color:transparent;color:var(--color-text-muted, #888)}.pin-key-del:active{background:var(--color-bg-elevated, #252525);border-color:var(--color-border, #333);color:var(--color-text-primary, #fff);transform:scale(.9)}.pin-dismiss{margin-top:1.2rem;width:100%;padding:.65rem;border-radius:10px;font-size:.88rem;font-weight:700;background:transparent;border:1px solid var(--color-border, #444);color:var(--color-text-muted, #888);cursor:pointer;transition:background .15s,color .15s;touch-action:manipulation}.pin-dismiss:hover{background:var(--color-bg-elevated, #222);color:var(--color-text-primary, #fff)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-7px)}40%{transform:translate(7px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.ebt-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:99999;animation:ebt-fade .15s ease}@keyframes ebt-fade{0%{opacity:0}to{opacity:1}}.ebt-box{background:var(--color-bg-card, #1a1a2e);border:1px solid var(--color-border, #333);border-radius:16px;width:340px;box-shadow:0 24px 64px #0009;overflow:hidden;animation:ebt-pop .18s cubic-bezier(.34,1.56,.64,1)}@keyframes ebt-pop{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.ebt-header{display:flex;align-items:center;gap:.6rem;padding:1rem 1.2rem;border-bottom:1px solid var(--color-border, #333);color:var(--color-text-primary, #fff);font-weight:700;font-size:.95rem}.ebt-header span{flex:1}.ebt-close{background:transparent;border:none;color:var(--color-text-muted, #888);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;transition:color .1s,background .1s}.ebt-close:hover{color:var(--color-text-primary, #fff);background:var(--color-bg-elevated, #252525)}.ebt-list{padding:.5rem;max-height:280px;overflow-y:auto;min-height:80px;display:flex;flex-direction:column;gap:4px}.ebt-scanning{display:flex;align-items:center;gap:.6rem;color:var(--color-text-muted, #888);font-size:.88rem;padding:1.2rem;justify-content:center}.ebt-device{display:flex;align-items:center;gap:.7rem;padding:.75rem 1rem;border-radius:10px;background:transparent;border:1px solid transparent;color:var(--color-text-primary, #fff);font-size:.9rem;cursor:pointer;text-align:left;transition:background .12s,border-color .12s;width:100%}.ebt-device:hover:not(:disabled){background:var(--color-bg-elevated, #252525);border-color:var(--color-border, #333)}.ebt-device.selecting{background:#6c5ce726;border-color:var(--color-primary, #6c5ce7);color:var(--color-primary, #6c5ce7)}.ebt-device span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ebt-device:disabled{opacity:.6;cursor:default}.ebt-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.2rem;border-top:1px solid var(--color-border, #333)}.ebt-hint{font-size:.75rem;color:var(--color-text-muted, #888)}.ebt-cancel{background:transparent;border:1px solid var(--color-border, #444);border-radius:8px;color:var(--color-text-muted, #888);font-size:.82rem;font-weight:600;padding:.4rem .9rem;cursor:pointer;transition:background .12s,color .12s}.ebt-cancel:hover{background:var(--color-bg-elevated, #222);color:var(--color-text-primary, #fff)}.ebt-spin{animation:ebt-rotate .8s linear infinite;flex-shrink:0}@keyframes ebt-rotate{to{transform:rotate(360deg)}}.login-container{height:100vh;display:flex;align-items:center;justify-content:center;background:#121212}.login-card{display:flex;flex-direction:column;gap:1.5rem;padding:3rem 3.5rem;background:#141420;border:1px solid #1e1e2e;border-radius:20px;width:100%;max-width:480px;box-shadow:0 16px 48px #00000080}.login-logo{display:flex;justify-content:center;color:#4caf50;margin-bottom:.5rem}.login-title{text-align:center;font-size:1.65rem;font-weight:700;color:#f0f0f0;margin:0}.login-error{background:#ef44441f;color:#ef4444;padding:.75rem 1rem;border-radius:10px;font-size:.9rem;text-align:center}.login-card input{padding:1rem 1.25rem;background:#121212;border:1px solid #2a2a3a;border-radius:10px;color:#f0f0f0;font-size:1.05rem;outline:none;transition:border-color .2s;text-align:left;direction:ltr}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{width:100%;padding-right:3rem}.password-wrapper input::-ms-reveal,.password-wrapper input::-ms-clear{display:none}.password-wrapper input::-webkit-credentials-auto-fill-button,.password-wrapper input::-webkit-password-auto-fill-button{display:none}.password-toggle{position:absolute;right:1rem;background:none;border:none;cursor:pointer;color:#aaa;display:flex;align-items:center;padding:0;margin:0;transition:color .2s}.password-toggle:hover{color:#f0f0f0}.login-card input::placeholder{color:#666}.login-card input:-webkit-autofill,.login-card input:-webkit-autofill:hover,.login-card input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0px 1000px #121212 inset;-webkit-text-fill-color:#f0f0f0;border-color:#2a2a3a;transition:background-color 5000s ease-in-out 0s}.login-card input:focus{border-color:#4caf50}.login-card button[type=submit]{padding:1rem;background:#4caf50;color:#fff;border:none;border-radius:10px;font-size:1.05rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:background .2s;margin-top:.5rem}.login-card button[type=submit]:hover{background:#2e7d32}.login-card button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:767px){.login-card{padding:2rem 1.5rem;border-radius:16px;margin:0 1rem}.login-title{font-size:1.35rem}}.app-container{display:grid;grid-template-columns:64px 1fr 310px;height:100vh;width:100vw;background:var(--color-bg-primary);overflow:hidden}.main-content{display:flex;flex-direction:column;height:100%;overflow:hidden;padding:1rem 1.5rem;position:relative}.header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-shrink:0}.header-left{display:flex;flex-direction:column}.header-greeting{font-size:.8rem;color:var(--color-text-muted);margin-bottom:.15rem}.header-title{font-size:1.75rem;font-weight:800;letter-spacing:-.5px;color:var(--color-text-primary)}.dark .header-title{background:linear-gradient(135deg,#fff,#ccc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;gap:1rem}.header-stat{display:flex;flex-direction:column;align-items:flex-start;padding:.875rem 1.25rem;background:var(--color-bg-card);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.header-stat.highlight{background:var(--color-accent-glow);border-color:var(--color-accent)}.header-stat-value{font-size:1.5rem;font-weight:800;color:var(--color-text-primary)}.header-stat.highlight .header-stat-value{color:var(--color-accent)}.header-stat-label{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:.15rem}.category-tabs{display:flex;gap:.625rem;margin-bottom:1.5rem;overflow-x:auto;padding-bottom:.5rem;flex-shrink:0}.category-tab{padding:.625rem 1.25rem;border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-secondary);font-weight:600;font-size:.875rem;border:1px solid var(--color-border);white-space:nowrap;transition:all var(--transition-fast)}.category-tab.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 4px 12px var(--color-accent-glow)}.category-tab:hover:not(.active){background:var(--color-bg-elevated);border-color:var(--color-text-muted)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem;overflow-y:auto;padding-bottom:1rem;padding-left:.5rem;flex:1;min-height:0;align-content:start}.settings-placeholder,.reports-placeholder{padding:2rem}.settings-placeholder h2,.reports-placeholder h2{font-size:1.5rem;font-weight:800;margin-bottom:.5rem}.placeholder-text{color:var(--color-text-secondary);margin-bottom:2rem}.quick-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.quick-stat-card{background:var(--color-bg-card);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;align-items:center;border:1px solid var(--color-border)}.quick-stat-value{font-size:2rem;font-weight:800;color:var(--color-accent);margin-bottom:.5rem}.quick-stat-label{font-size:.8rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}@media(max-width:1280px){.app-container{grid-template-columns:72px 1fr 360px}}@media(min-width:1025px){.app-container{grid-template-columns:64px 1fr 320px}.header-title{font-size:1.5rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.cart-fab,.cart-mobile-handle,.cart-overlay-backdrop{display:none!important}}@media(max-width:1024px){.app-container{grid-template-columns:1fr;grid-template-rows:1fr 64px}.main-content{padding:1rem;padding-bottom:0}.app-container>.cart-container{display:none}.cart-fab{display:flex;position:fixed;bottom:80px;right:1rem;z-index:100;width:56px;height:56px;border-radius:50%;background:var(--gradient-primary);color:#fff;align-items:center;justify-content:center;box-shadow:0 4px 20px var(--color-accent-glow),var(--shadow-lg);transition:transform .2s ease;border:none;cursor:pointer}.cart-fab:active{transform:scale(.93)}.cart-fab-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;background:var(--color-danger);color:#fff;font-size:.7rem;font-weight:700;border-radius:100px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--color-bg-primary)}.cart-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:flex-end;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeInOverlay .2s ease}.cart-overlay-backdrop .cart-container{display:flex!important;width:100%;max-width:480px;margin:0 auto;height:85dvh;border-radius:20px 20px 0 0;border:1px solid var(--color-border);border-bottom:none;animation:slideUpCart .3s cubic-bezier(.34,1.56,.64,1)}.cart-mobile-handle{display:block;width:40px;height:4px;background:var(--color-border);border-radius:2px;margin:.625rem auto 0;flex-shrink:0;cursor:pointer}.header-title{font-size:1.25rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.625rem}}@media(max-width:767px){.main-content{padding:.75rem;padding-bottom:0}.header{flex-direction:column;gap:.625rem;margin-bottom:.75rem}.header-right{width:100%;gap:.5rem}.header-stat{flex:1;padding:.5rem .75rem}.header-stat-value{font-size:1rem}.header-title{font-size:1.05rem}.header-greeting{font-size:.7rem}.category-tabs{gap:.375rem;margin-bottom:.625rem}.category-tab{padding:.5rem .875rem;font-size:.8rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem}}@keyframes slideUpCart{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.pin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999}.pin-modal{background:var(--color-bg-card, #1a1a2e);border:1px solid var(--color-border, #333);border-radius:16px;padding:2.5rem 2rem;width:340px;text-align:center;box-shadow:0 20px 60px #00000080}.pin-modal h3{font-size:1.4rem;font-weight:800;color:var(--color-text-primary, #fff);margin-bottom:.5rem}.pin-modal>p{font-size:.85rem;color:var(--color-text-muted, #888);margin-bottom:1.5rem}.pin-input-row{display:flex;justify-content:center;margin-bottom:1rem}.pin-input{width:140px;text-align:center;font-size:2rem;letter-spacing:12px;padding:.75rem 1rem;border-radius:12px;border:2px solid var(--color-border, #444);background:var(--color-bg-primary, #0a0a0f);color:var(--color-text-primary, #fff);outline:none;transition:border-color .2s}.pin-input:focus{border-color:var(--color-primary, #6c5ce7)}.pin-input::-ms-reveal,.pin-input::-ms-clear,.pin-input::-webkit-contacts-auto-fill-button,.pin-input::-webkit-credentials-auto-fill-button,.pin-input::-webkit-reveal{display:none!important}.pin-input.pin-error{border-color:#e74c3c;animation:shake .4s ease-in-out}.pin-error-text{color:#e74c3c;font-size:.8rem;margin-bottom:1rem}.pin-actions{display:flex;gap:.75rem;justify-content:center;margin-top:.5rem}.pin-cancel,.pin-confirm{padding:.6rem 1.5rem;border-radius:10px;font-weight:700;font-size:.9rem;cursor:pointer;border:none;transition:all .2s}.pin-cancel{background:var(--color-bg-elevated, #222);color:var(--color-text-secondary, #aaa)}.pin-cancel:hover{background:var(--color-bg-card, #333)}.pin-confirm{background:var(--color-primary, #6c5ce7);color:#fff}.pin-confirm:hover:not(:disabled){filter:brightness(1.15)}.pin-confirm:disabled{opacity:.4;cursor:not-allowed}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}50%{transform:translate(8px)}75%{transform:translate(-4px)}}
