:root{--color-bg: #f5f7fa;--color-bg-secondary: #ffffff;--color-bg-tertiary: #f0f2f5;--color-surface: #ffffff;--color-surface-2: #f8f9fa;--color-surface-3: #f0f2f5;--color-border: rgba(0, 0, 0, .08);--color-border-hover: rgba(0, 0, 0, .16);--color-border-focus: rgba(59, 130, 246, .5);--color-accent: #3b82f6;--color-accent-dark: #2563eb;--color-accent-light: #60a5fa;--color-accent-glow: rgba(59, 130, 246, .15);--color-accent-bg: #eff6ff;--color-success: #22c55e;--color-success-bg: #f0fdf4;--color-danger: #ef4444;--color-danger-bg: #fef2f2;--color-warning: #f59e0b;--color-warning-bg: #fffbeb;--color-info: #3b82f6;--color-info-bg: #eff6ff;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-muted: #9ca3af;--color-text-inverse: #ffffff;--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .08);--card-shadow: 0 2px 8px rgba(0, 0, 0, .05);--card-shadow-hover: 0 4px 16px rgba(0, 0, 0, .1);--card-selected-border: var(--color-accent);--card-selected-bg: var(--color-accent-bg);--modal-bg: #ffffff;--modal-overlay: rgba(0, 0, 0, .5);--modal-shadow: 0 10px 40px rgba(0, 0, 0, .2);--btn-primary-bg: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--btn-primary-hover: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);--btn-primary-text: #ffffff;--btn-secondary-bg: #ffffff;--btn-secondary-border: #e5e7eb;--btn-secondary-text: #374151;--btn-secondary-hover-bg: #f9fafb;--btn-danger-bg: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--btn-danger-text: #ffffff;--btn-ghost-bg: transparent;--btn-ghost-text: #6b7280;--btn-ghost-hover-bg: #f3f4f6;--input-bg: #ffffff;--input-border: #e5e7eb;--input-text: #1f2937;--input-placeholder: #9ca3af;--input-focus-border: var(--color-accent);--badge-pending-bg: #fef3c7;--badge-pending-text: #92400e;--badge-preparing-bg: #dbeafe;--badge-preparing-text: #1e40af;--badge-ready-bg: #d1fae5;--badge-ready-text: #065f46;--badge-served-bg: #e0e7ff;--badge-served-text: #3730a3;--badge-paid-bg: #d1fae5;--badge-paid-text: #065f46;--badge-cancelled-bg: #fee2e2;--badge-cancelled-text: #991b1b;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Playfair Display", Georgia, serif;--font-mono: "Fira Code", "Consolas", monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1);--shadow-card: 0 2px 8px rgba(0, 0, 0, .05);--shadow-modal: 0 10px 40px rgba(0, 0, 0, .2);--shadow-accent: 0 4px 20px rgba(59, 130, 246, .3);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal: 1000;--z-toast: 3000}.dark{--color-bg: #0f0e0d;--color-bg-secondary: #1a1917;--color-bg-tertiary: #242220;--color-surface: #1a1917;--color-surface-2: #242220;--color-surface-3: #2e2b28;--color-border: rgba(255, 255, 255, .08);--color-border-hover: rgba(255, 255, 255, .16);--color-border-focus: rgba(232, 164, 58, .5);--color-accent: #e8a43a;--color-accent-dark: #c48620;--color-accent-light: #f0c06a;--color-accent-glow: rgba(232, 164, 58, .15);--color-accent-bg: rgba(232, 164, 58, .1);--color-success: #4ade80;--color-success-bg: rgba(74, 222, 128, .1);--color-danger: #f87171;--color-danger-bg: rgba(248, 113, 113, .1);--color-warning: #fbbf24;--color-warning-bg: rgba(251, 191, 36, .1);--color-info: #60a5fa;--color-info-bg: rgba(96, 165, 250, .1);--color-text-primary: #f5f0e8;--color-text-secondary: #a09880;--color-text-muted: #6b6358;--color-text-inverse: #1a1917;--card-bg: #1a1917;--card-border: rgba(255, 255, 255, .08);--card-shadow: 0 4px 24px rgba(0, 0, 0, .4);--card-shadow-hover: 0 8px 32px rgba(0, 0, 0, .5);--card-selected-border: var(--color-accent);--card-selected-bg: var(--color-accent-bg);--modal-bg: #1a1917;--modal-overlay: rgba(0, 0, 0, .7);--modal-shadow: 0 8px 48px rgba(0, 0, 0, .7);--btn-primary-bg: linear-gradient(135deg, #e8a43a 0%, #c48620 100%);--btn-primary-hover: linear-gradient(135deg, #f0c06a 0%, #e8a43a 100%);--btn-primary-text: #1a1917;--btn-secondary-bg: #242220;--btn-secondary-border: rgba(255, 255, 255, .1);--btn-secondary-text: #f5f0e8;--btn-secondary-hover-bg: #2e2b28;--btn-danger-bg: linear-gradient(135deg, #f87171 0%, #ef4444 100%);--btn-danger-text: #1a1917;--btn-ghost-bg: transparent;--btn-ghost-text: #a09880;--btn-ghost-hover-bg: rgba(255, 255, 255, .05);--input-bg: #242220;--input-border: rgba(255, 255, 255, .1);--input-text: #f5f0e8;--input-placeholder: #6b6358;--input-focus-border: var(--color-accent);--badge-pending-bg: rgba(251, 191, 36, .2);--badge-pending-text: #fbbf24;--badge-preparing-bg: rgba(96, 165, 250, .2);--badge-preparing-text: #60a5fa;--badge-ready-bg: rgba(74, 222, 128, .2);--badge-ready-text: #4ade80;--badge-served-bg: rgba(139, 92, 246, .2);--badge-served-text: #a78bfa;--badge-paid-bg: rgba(74, 222, 128, .2);--badge-paid-text: #4ade80;--badge-cancelled-bg: rgba(248, 113, 113, .2);--badge-cancelled-text: #f87171;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .5);--shadow-card: 0 4px 24px rgba(0, 0, 0, .4);--shadow-modal: 0 8px 48px rgba(0, 0, 0, .7);--shadow-accent: 0 4px 20px rgba(232, 164, 58, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none}input,select,textarea{font-family:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-surface-3);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.overlay{position:fixed;inset:0;background:var(--modal-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;animation:fadeIn var(--transition-base) ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.toast-container{position:fixed;bottom:var(--space-6);left:50%;transform:translate(-50%);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-primary);padding:var(--space-3) var(--space-5);border-radius:var(--radius-full);font-size:.875rem;font-weight:500;white-space:nowrap;box-shadow:var(--shadow-modal);animation:toastIn .3s ease forwards}.toast.success{border-color:var(--color-success);color:var(--color-success)}@keyframes toastIn{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}*{transition-property:background-color,border-color,color;transition-duration:0s;transition-timing-function:ease}.theme-transitioning *{transition-duration:.25s}.menu-card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base);overflow:hidden}.menu-card:hover{border-color:var(--color-border-hover);transform:translateY(-2px);box-shadow:var(--shadow-card)}.popular-badge{position:absolute;top:var(--space-3);right:var(--space-3);background:var(--color-accent);color:#000;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:var(--radius-full)}.card-emoji{font-size:2.5rem;line-height:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.card-body{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.card-name{font-family:var(--font-sans);font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.card-desc{font-size:.8rem;color:var(--color-text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-variations{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.variation-btn{display:flex;flex-direction:column;align-items:flex-start;padding:6px 10px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);transition:all var(--transition-fast);text-align:left}.variation-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-primary)}.variation-btn.active{background:var(--color-accent-glow);border-color:var(--color-accent);color:var(--color-accent-light)}.v-label{font-size:.75rem;font-weight:600}.v-cost{font-size:.65rem;opacity:.8}.card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-3);margin-top:auto}.price-display{display:flex;flex-direction:column;gap:2px}.price-formula{display:flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:.75rem;color:var(--color-text-secondary);font-family:var(--font-sans)}.formula-base{font-weight:500}.formula-plus{opacity:.6}.formula-var{color:var(--color-text-secondary)}.price-total{display:flex;align-items:baseline;gap:6px}.total-label{font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.total-value{font-size:1.15rem;font-weight:700;color:var(--color-accent)}.struck{text-decoration:line-through;opacity:.5;font-size:.9em}.discounted{font-style:italic}.free{color:#4caf50;font-style:italic}.v-price-row{display:flex;gap:4px}.add-btn{display:flex;align-items:center;gap:var(--space-1);background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-primary);padding:6px 14px;border-radius:var(--radius-full);font-size:.8rem;font-weight:500;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);position:relative}.add-btn:hover{background:var(--color-accent);border-color:var(--color-accent);color:#000;box-shadow:var(--shadow-accent)}.add-btn.has-items{background:var(--color-accent-glow);border-color:var(--color-accent);color:var(--color-accent-light)}.add-btn.has-items:hover{background:var(--color-accent);color:#000}.add-icon{font-size:1rem;font-weight:700;line-height:1}.qty-badge{background:var(--color-accent);color:#000;font-size:.65rem;font-weight:700;min-width:16px;height:16px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px}.drawer-container{position:fixed;inset:0;z-index:1100;pointer-events:auto}.overlay{position:absolute;inset:0;z-index:1;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto}.cart-drawer{position:absolute;top:0;right:0;bottom:0;width:min(400px,100%);background:var(--color-surface);border-left:1px solid var(--color-border);z-index:2;display:flex;flex-direction:column;box-shadow:var(--shadow-modal);pointer-events:auto}.drawer-enter-active,.drawer-leave-active{transition:all .3s cubic-bezier(.32,.72,0,1)}.drawer-enter-active .overlay,.drawer-leave-active .overlay{transition:opacity .3s ease}.drawer-enter-active .cart-drawer,.drawer-leave-active .cart-drawer{transition:transform .3s cubic-bezier(.32,.72,0,1)}.drawer-enter-from .overlay,.drawer-leave-to .overlay{opacity:0}.drawer-enter-from .cart-drawer,.drawer-leave-to .cart-drawer{transform:translate(100%)}.drawer-header{display:flex;flex-direction:column;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);flex-shrink:0;gap:var(--space-3)}.header-content{display:flex;align-items:center;justify-content:space-between;width:100%}.header-left{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-secondary)}.close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.close-btn:hover{background:var(--color-accent);border-color:var(--color-accent);color:#000}.drawer-title{font-size:1.1rem;font-weight:700;color:var(--color-text-primary)}.member-btn{background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-secondary);font-size:.75rem;font-weight:600;padding:2px 10px;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.member-btn:hover,.member-btn.is-active{background:var(--color-accent-glow);color:var(--color-accent-light);border-color:var(--color-accent)}.member-input-area{width:100%;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.member-input{width:100%;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;color:var(--color-text-primary);font-size:.9rem;outline:none}.member-input:focus{border-color:var(--color-accent)}.table-chip{background:var(--color-accent-glow);border:1px solid var(--color-accent);color:var(--color-accent-light);font-size:.75rem;font-weight:600;padding:3px 12px;border-radius:var(--radius-full)}.header-right{display:flex;align-items:center;gap:var(--space-2)}.pipe-select{background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:.75rem;padding:2px 8px;border-radius:var(--radius-md);outline:none;cursor:pointer}.pipe-select:disabled{opacity:.6;cursor:not-allowed}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-8);text-align:center}.empty-icon{font-size:3rem;opacity:.4}.empty-text{font-weight:600;color:var(--color-text-secondary)}.empty-sub{font-size:.85rem;color:var(--color-text-muted)}.cart-items{flex:1;overflow-y:auto;list-style:none;padding:var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.cart-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.item-top{display:flex;align-items:flex-start;gap:var(--space-3)}.item-emoji{font-size:1.4rem;line-height:1;flex-shrink:0}.item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.item-name{font-size:.9rem;font-weight:600;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-variations{display:flex;flex-wrap:wrap;gap:var(--space-1)}.var-tag{font-size:.65rem;color:var(--color-accent-light);background:var(--color-accent-glow);border:1px solid rgba(232,164,58,.25);padding:1px 7px;border-radius:var(--radius-full);white-space:nowrap}.item-unit-price{font-size:.85rem;color:var(--color-text-secondary);flex-shrink:0;font-weight:500;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.price-struck{text-decoration:line-through;opacity:.5;font-size:.75rem}.price-discounted{color:#4ade80;font-weight:600}.item-bottom{display:flex;align-items:center;justify-content:space-between}.qty-stepper{display:flex;align-items:center;gap:0;background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius-full);overflow:hidden}.stepper-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--color-text-secondary);transition:background var(--transition-fast),color var(--transition-fast)}.stepper-btn:hover{background:var(--color-accent);color:#000}.qty-value{min-width:28px;text-align:center;font-size:.9rem;font-weight:600;color:var(--color-text-primary)}.item-subtotal{font-size:1rem;font-weight:700;color:var(--color-accent)}.cart-item.is-locked{opacity:.8;border-style:dashed;background:var(--color-surface-3)}.name-row{display:flex;align-items:center;gap:var(--space-2)}.locked-badge{font-size:.65rem;font-weight:700;color:var(--color-text-muted);background:var(--color-surface-4);padding:2px 6px;border-radius:4px;text-transform:uppercase}.locked-qty{display:flex;align-items:center;gap:var(--space-2);font-size:.85rem;color:var(--color-text-secondary)}.locked-qty .qty-label{font-weight:500}.voucher-section{padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-2)}.show-voucher-btn{display:flex;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--color-accent);font-size:.85rem;font-weight:600;padding:var(--space-1) 0;cursor:pointer;width:fit-content}.show-voucher-btn:hover{color:var(--color-accent-light);text-decoration:underline}.voucher-header{display:flex;justify-content:space-between;align-items:center}.close-voucher-btn{background:none;border:none;color:var(--color-text-muted);font-size:.75rem;cursor:pointer}.close-voucher-btn:hover{color:var(--color-text-secondary)}.voucher-label{font-size:.7rem;font-weight:700;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em}.voucher-input-group{display:flex;gap:var(--space-2)}.voucher-input-group input{flex:1;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:8px 12px;color:var(--color-text-primary);font-size:.9rem;outline:none}.voucher-input-group input:focus{border-color:var(--color-accent)}.apply-btn{background:var(--color-surface-3);border:1px solid var(--color-border);padding:0 var(--space-4);border-radius:var(--radius-md);color:var(--color-text-primary);font-weight:600;font-size:.85rem;transition:all var(--transition-fast)}.apply-btn:hover{background:var(--color-accent);color:#000;border-color:var(--color-accent)}.voucher-error{font-size:.75rem;color:#ff4d4d;margin-top:2px}.applied-vouchers{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.section-subtitle{font-size:.65rem;font-weight:700;color:var(--color-text-muted);text-transform:uppercase}.voucher-chip{display:flex;align-items:center;justify-content:space-between;background:var(--color-accent-glow);border:1px solid var(--color-accent);padding:6px 10px;border-radius:var(--radius-md)}.voucher-chip .v-label{font-size:.8rem;color:var(--color-accent-light);font-weight:600}.remove-v-btn{font-size:1.2rem;color:var(--color-accent-light);line-height:1;opacity:.7;transition:opacity .2s}.remove-v-btn:hover{opacity:1}.drawer-footer{border-top:1px solid var(--color-border);padding:var(--space-5) var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-4);flex-shrink:0}.total-row{display:flex;justify-content:space-between;align-items:baseline}.discount-row{margin-bottom:-var(--space-2)}.discount-price{font-size:1rem;font-weight:600;color:#ff4d4d}.total-label{font-size:.85rem;color:var(--color-text-secondary);font-weight:500}.total-price{font-size:1.6rem;font-weight:700;color:var(--color-accent)}.place-order-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--color-accent);color:#000;font-weight:700;font-size:1rem;padding:var(--space-4);border-radius:var(--radius-md);transition:background var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);box-shadow:var(--shadow-accent)}.place-order-btn:hover:not(:disabled){background:var(--color-accent-light);transform:translateY(-1px);box-shadow:0 6px 28px #e8a43a73}.place-order-btn:active:not(:disabled){transform:translateY(0)}.place-order-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.5);box-shadow:none}.order-error{font-size:.85rem;color:#ff4d4d;background:#ff4d4d1a;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(255,77,77,.2)}.spinner{width:20px;height:20px;border:2px solid rgba(0,0,0,.1);border-top-color:#000;border-radius:50%;animation:spin .8s linear infinite}.page{min-height:100vh;background:var(--color-bg);display:flex;flex-direction:column}.site-header{position:sticky;top:0;z-index:50;background:#0f0e0dd9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border)}.header-inner{max-width:1100px;margin:0 auto;padding:0 var(--space-6);height:60px;display:flex;align-items:center;justify-content:space-between}.brand-icon{font-size:1.3rem}.brand-name{font-family:var(--font-serif);font-size:1.2rem;color:var(--color-text-primary);font-weight:700;letter-spacing:.02em}.header-right{display:flex;align-items:center;gap:var(--space-3)}.table-badge{display:flex;align-items:center;gap:var(--space-1);background:var(--color-accent-glow);border:1px solid var(--color-accent);color:var(--color-accent-light);font-size:.8rem;font-weight:600;padding:4px 12px;border-radius:var(--radius-full)}.datasource-toggle{display:flex;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2px;gap:2px}.toggle-btn{padding:4px 8px;font-size:.75rem;font-weight:700;border-radius:4px;background:transparent;color:var(--color-text-muted);transition:all var(--transition-fast);text-transform:uppercase}.toggle-btn:hover{color:var(--color-text-secondary)}.toggle-btn.active{background:var(--color-accent);color:#000}.cart-btn{position:relative;width:42px;height:42px;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.cart-btn:hover{background:var(--color-surface-3);border-color:var(--color-border-hover);color:var(--color-text-primary)}.cart-btn.has-items{border-color:var(--color-accent);color:var(--color-accent)}.cart-btn.has-items:hover{background:var(--color-accent-glow);box-shadow:var(--shadow-accent)}.cart-count{position:absolute;top:-6px;right:-6px;background:var(--color-accent);color:#000;font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--color-bg)}.hero{max-width:1100px;margin:0 auto;width:100%;padding:var(--space-10) var(--space-6) var(--space-8)}.hero-title{font-family:var(--font-serif);font-size:clamp(2rem,5vw,3rem);line-height:1.15;color:var(--color-text-primary);font-weight:700}.accent{color:var(--color-accent)}.hero-sub{margin-top:var(--space-3);font-size:.95rem;color:var(--color-text-secondary)}.category-nav{background:var(--color-bg);position:sticky;top:60px;z-index:40;border-bottom:1px solid var(--color-border)}.category-scroll{max-width:1100px;margin:0 auto;padding:0 var(--space-6);display:flex;gap:var(--space-1);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.category-scroll::-webkit-scrollbar{display:none}.cat-tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4);font-size:.85rem;font-weight:500;color:var(--color-text-muted);border-bottom:2px solid transparent;white-space:nowrap;transition:color var(--transition-fast),border-color var(--transition-fast);background:none}.cat-tab:hover{color:var(--color-text-secondary)}.cat-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:600}.cat-icon{font-size:1rem}.menu-section{max-width:1100px;margin:0 auto;width:100%;padding:var(--space-6) var(--space-6) var(--space-12);flex:1}.section-header{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-6)}.section-title{font-family:var(--font-serif);font-size:1.4rem;font-weight:700;color:var(--color-text-primary)}.item-count{font-size:.8rem;color:var(--color-text-muted)}.menu-grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:var(--space-5)}.grid-fade-enter-active,.grid-fade-leave-active{transition:opacity .25s ease,transform .25s ease}.grid-fade-enter-from{opacity:0;transform:translateY(8px)}.grid-fade-leave-to{opacity:0;transform:scale(.96)}.badge-enter-active{animation:badgePop .25s ease}.badge-leave-active{animation:badgePop .15s ease reverse}@keyframes badgePop{0%{transform:scale(0);opacity:0}70%{transform:scale(1.3)}to{transform:scale(1);opacity:1}}.toast-anim-enter-active{animation:toastIn .3s ease}.toast-anim-leave-active{animation:toastIn .2s ease reverse}.modal-overlay[data-v-8b168542]{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content[data-v-8b168542]{background:var(--bg-primary, #fff);border-radius:16px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.modal-header[data-v-8b168542]{padding:1.5rem;text-align:center;border-bottom:1px solid var(--border-color, #eee)}.modal-header h2[data-v-8b168542]{margin:0;font-size:1.5rem;color:var(--text-primary, #1a1a1a)}.modal-subtitle[data-v-8b168542]{margin:.5rem 0 0;color:var(--text-secondary, #666);font-size:.9rem}.tables-grid[data-v-8b168542]{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;padding:1.5rem}.table-card[data-v-8b168542]{display:flex;flex-direction:column;align-items:center;padding:1rem;border-radius:12px;border:2px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #f9f9f9);cursor:pointer;transition:all .2s ease}.table-card[data-v-8b168542]:hover:not(:disabled){border-color:var(--accent, #4f46e5);background:var(--bg-hover, #f0f0ff);transform:translateY(-2px)}.table-card.available[data-v-8b168542]{border-color:var(--success-light, #86efac)}.table-card.occupied[data-v-8b168542]{opacity:.6;cursor:not-allowed}.table-icon[data-v-8b168542]{font-size:2rem;margin-bottom:.5rem}.table-name[data-v-8b168542]{font-weight:600;font-size:1rem;color:var(--text-primary, #1a1a1a)}.table-capacity[data-v-8b168542]{font-size:.8rem;color:var(--text-secondary, #666);margin-top:.25rem}.table-status[data-v-8b168542]{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;margin-top:.5rem;font-weight:500}.table-status.available[data-v-8b168542]{background:var(--success-light, #dcfce7);color:var(--success-dark, #166534)}.table-status.occupied[data-v-8b168542]{background:var(--warning-light, #fef3c7);color:var(--warning-dark, #92400e)}.loading-tables[data-v-8b168542]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem;color:var(--text-secondary, #666)}.spinner[data-v-8b168542]{width:32px;height:32px;border:3px solid var(--border-color, #e0e0e0);border-top-color:var(--accent, #4f46e5);border-radius:50%;animation:spin-8b168542 .8s linear infinite}@keyframes spin-8b168542{to{transform:rotate(360deg)}}.change-table-btn[data-v-8b168542]{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:#fff3;border-radius:4px;cursor:pointer;margin-left:6px;transition:background .2s}.change-table-btn[data-v-8b168542]:hover{background:#ffffff4d}.change-table-btn svg[data-v-8b168542]{stroke:currentColor}.modal-enter-active[data-v-8b168542],.modal-leave-active[data-v-8b168542]{transition:opacity .3s ease}.modal-enter-active .modal-content[data-v-8b168542],.modal-leave-active .modal-content[data-v-8b168542]{transition:transform .3s ease}.modal-enter-from[data-v-8b168542],.modal-leave-to[data-v-8b168542]{opacity:0}.modal-enter-from .modal-content[data-v-8b168542],.modal-leave-to .modal-content[data-v-8b168542]{transform:scale(.95) translateY(20px)}.user-profile[data-v-dffb5a25]{position:relative;z-index:1000}.profile-button[data-v-dffb5a25]{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.profile-button[data-v-dffb5a25]:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000001a}.avatar[data-v-dffb5a25]{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.avatar img[data-v-dffb5a25]{width:100%;height:100%;object-fit:cover}.initials[data-v-dffb5a25]{color:#fff;font-weight:600;font-size:14px}.user-info[data-v-dffb5a25]{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.user-name[data-v-dffb5a25]{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.user-role[data-v-dffb5a25]{font-size:12px;color:#6b7280;text-transform:capitalize}.chevron[data-v-dffb5a25]{color:#9ca3af;transition:transform .2s ease;flex-shrink:0}.menu-open .chevron[data-v-dffb5a25]{transform:rotate(180deg)}.dropdown-menu[data-v-dffb5a25]{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 25px #00000026;overflow:hidden;z-index:1001}.menu-header[data-v-dffb5a25]{display:flex;align-items:center;gap:12px;padding:16px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:1px solid #e5e7eb}.menu-avatar[data-v-dffb5a25]{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.menu-avatar img[data-v-dffb5a25]{width:100%;height:100%;object-fit:cover}.menu-initials[data-v-dffb5a25]{color:#fff;font-weight:600;font-size:18px}.menu-user-info[data-v-dffb5a25]{display:flex;flex-direction:column;gap:2px;flex:1;overflow:hidden}.menu-user-name[data-v-dffb5a25]{font-size:15px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-user-email[data-v-dffb5a25]{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-divider[data-v-dffb5a25]{height:1px;background:#e5e7eb}.menu-items[data-v-dffb5a25]{padding:8px 0}.menu-item[data-v-dffb5a25]{display:flex;align-items:center;gap:12px;padding:10px 16px;width:100%;background:none;border:none;cursor:pointer;transition:background-color .15s ease;color:#374151;font-size:14px}.menu-item[data-v-dffb5a25]:hover{background-color:#f3f4f6}.menu-item svg[data-v-dffb5a25]{flex-shrink:0;color:#9ca3af}.info-item[data-v-dffb5a25]{cursor:default}.info-item[data-v-dffb5a25]:hover{background-color:transparent}.info-item span[data-v-dffb5a25]{color:#6b7280}.logout-item[data-v-dffb5a25]{color:#dc2626}.logout-item svg[data-v-dffb5a25]{color:#dc2626}.logout-item[data-v-dffb5a25]:hover{background-color:#fef2f2}.menu-overlay[data-v-dffb5a25]{position:fixed;inset:0;background:transparent;z-index:1000}.dropdown-enter-active[data-v-dffb5a25],.dropdown-leave-active[data-v-dffb5a25]{transition:all .2s ease}.dropdown-enter-from[data-v-dffb5a25],.dropdown-leave-to[data-v-dffb5a25]{opacity:0;transform:translateY(-10px)}.overlay-enter-active[data-v-dffb5a25],.overlay-leave-active[data-v-dffb5a25]{transition:opacity .2s ease}.overlay-enter-from[data-v-dffb5a25],.overlay-leave-to[data-v-dffb5a25]{opacity:0}.notification-bell[data-v-1d59c921]{position:relative}.bell-button[data-v-1d59c921]{background:none;border:none;padding:8px;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.bell-button[data-v-1d59c921]:hover{background-color:#0000001a}.bell-button.has-unread[data-v-1d59c921]{animation:pulse-1d59c921 2s infinite}.bell-icon[data-v-1d59c921]{font-size:24px}.badge[data-v-1d59c921]{position:absolute;top:0;right:0;background:#ef4444;color:#fff;font-size:12px;font-weight:700;padding:2px 6px;border-radius:12px;min-width:18px;text-align:center}.notification-panel[data-v-1d59c921]{position:absolute;top:100%;right:0;width:360px;max-height:500px;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;z-index:1000;overflow:hidden}.panel-header[data-v-1d59c921]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.panel-header h3[data-v-1d59c921]{font-size:16px;font-weight:600;margin:0}.mark-all-btn[data-v-1d59c921]{background:none;border:none;color:#3b82f6;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px}.mark-all-btn[data-v-1d59c921]:hover{background:#dbeafe}.panel-body[data-v-1d59c921]{max-height:380px;overflow-y:auto}.section-title[data-v-1d59c921]{font-size:12px;font-weight:600;color:#6b7280;padding:8px 16px;background:#f9fafb}.urgent-section[data-v-1d59c921]{background:#fef2f2}.notification-item[data-v-1d59c921]{padding:12px 16px;cursor:pointer;border-bottom:1px solid #e5e7eb;transition:background-color .2s}.notification-item[data-v-1d59c921]:hover{background:#f3f4f6}.notification-item.unread[data-v-1d59c921]{background:#eff6ff}.notification-item.unread[data-v-1d59c921]:hover{background:#dbeafe}.notification-item.urgent[data-v-1d59c921]{background:#fee2e2;border-left:4px solid #ef4444}.notification-item.urgent[data-v-1d59c921]:hover{background:#fecaca}.notification-header[data-v-1d59c921]{display:flex;align-items:center;gap:8px}.notification-type-icon[data-v-1d59c921]{font-size:16px}.notification-title[data-v-1d59c921]{font-weight:600;font-size:14px;color:#111827}.notification-message[data-v-1d59c921]{font-size:13px;color:#4b5563;margin-top:4px}.notification-meta[data-v-1d59c921]{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.notification-time[data-v-1d59c921]{font-size:12px;color:#9ca3af}.priority-badge[data-v-1d59c921]{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}.priority-badge.high[data-v-1d59c921]{background:#fef3c7;color:#92400e}.priority-badge.urgent[data-v-1d59c921]{background:#fee2e2;color:#991b1b}.priority-badge.low[data-v-1d59c921]{background:#f3f4f6;color:#6b7280}.empty-state[data-v-1d59c921]{padding:40px;text-align:center;color:#6b7280}.empty-icon[data-v-1d59c921]{font-size:48px}.panel-footer[data-v-1d59c921]{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#f3f4f6;border-top:1px solid #e5e7eb}.connection-status[data-v-1d59c921]{font-size:12px}.connection-status .connected[data-v-1d59c921]{color:#10b981}.connection-status .disconnected[data-v-1d59c921]{color:#ef4444}.settings-btn[data-v-1d59c921]{background:none;border:none;color:#6b7280;font-size:12px;cursor:pointer;padding:4px 8px;border-radius:4px}.settings-btn[data-v-1d59c921]:hover{background:#e5e7eb}@keyframes pulse-1d59c921{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(max-width:480px){.notification-panel[data-v-1d59c921]{width:280px;right:-20px}}.home-page[data-v-9153fa1a]{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e4e8ec)}.home-header[data-v-9153fa1a]{background:#fff;box-shadow:0 1px 3px #0000001a;position:sticky;top:0;z-index:100}.header-content[data-v-9153fa1a]{max-width:1200px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.header-actions[data-v-9153fa1a]{display:flex;align-items:center;gap:16px}.brand[data-v-9153fa1a]{display:flex;align-items:center;gap:12px}.brand-icon[data-v-9153fa1a]{font-size:28px}.brand h1[data-v-9153fa1a]{font-size:24px;font-weight:700;color:#111827;margin:0}.home-content[data-v-9153fa1a]{max-width:1200px;margin:0 auto;padding:32px 24px}.welcome-section[data-v-9153fa1a]{margin-bottom:32px}.welcome-text h2[data-v-9153fa1a]{font-size:28px;font-weight:700;color:#111827;margin:0 0 8px}.user-name[data-v-9153fa1a]{color:#3b82f6}.role-badge[data-v-9153fa1a]{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;color:#fff;text-transform:capitalize}.stats-section[data-v-9153fa1a]{margin-bottom:32px}.stats-grid[data-v-9153fa1a]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-card[data-v-9153fa1a]{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000001a}.stat-icon[data-v-9153fa1a]{font-size:32px}.stat-info[data-v-9153fa1a]{display:flex;flex-direction:column}.stat-value[data-v-9153fa1a]{font-size:24px;font-weight:700;color:#111827}.stat-label[data-v-9153fa1a]{font-size:13px;color:#6b7280}.sections-title[data-v-9153fa1a]{font-size:18px;font-weight:600;color:#374151;margin-bottom:16px}.sections-grid[data-v-9153fa1a]{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px}.section-card[data-v-9153fa1a]{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:all .2s ease}.section-card[data-v-9153fa1a]:hover:not(.disabled){transform:translateY(-4px);box-shadow:0 12px 24px #00000026}.section-card.disabled[data-v-9153fa1a]{opacity:.6;cursor:not-allowed}.card-header[data-v-9153fa1a]{padding:24px;display:flex;align-items:center;justify-content:center}.card-icon[data-v-9153fa1a]{font-size:48px}.card-body[data-v-9153fa1a]{padding:20px}.card-title[data-v-9153fa1a]{font-size:18px;font-weight:600;color:#111827;margin:0 0 8px}.card-description[data-v-9153fa1a]{font-size:14px;color:#6b7280;margin:0 0 16px;line-height:1.5}.feature-list[data-v-9153fa1a]{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.feature-list li[data-v-9153fa1a]{display:flex;align-items:center;gap:6px;font-size:13px;color:#4b5563}.feature-list svg[data-v-9153fa1a]{color:#10b981;flex-shrink:0}.card-footer[data-v-9153fa1a]{padding:16px 20px;background:#f9fafb;border-top:1px solid #e5e7eb}.coming-soon[data-v-9153fa1a]{font-size:13px;color:#9ca3af;font-style:italic}.go-to[data-v-9153fa1a]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:#3b82f6}.go-to svg[data-v-9153fa1a]{transition:transform .2s ease}.section-card:hover:not(.disabled) .go-to svg[data-v-9153fa1a]{transform:translate(4px)}@media(max-width:640px){.header-content[data-v-9153fa1a]{padding:12px 16px}.brand h1[data-v-9153fa1a]{font-size:20px}.home-content[data-v-9153fa1a]{padding:24px 16px}.welcome-text h2[data-v-9153fa1a]{font-size:22px}.sections-grid[data-v-9153fa1a],.feature-list[data-v-9153fa1a],.stats-grid[data-v-9153fa1a]{grid-template-columns:1fr}}.waitress-container{max-width:600px;margin:0 auto;padding:var(--space-10) var(--space-6);min-height:100vh}.admin-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);margin-bottom:var(--space-8)}.header h1{font-family:var(--font-serif);font-size:1.8rem;color:var(--color-accent);margin-bottom:var(--space-1)}.header p{color:var(--color-text-secondary);font-size:.9rem}.form-container{margin-top:var(--space-8)}.form-container label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.mt-4{margin-top:var(--space-4)}.input-group{display:flex;gap:var(--space-3)}input{flex:1;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);color:var(--color-text-primary);font-size:1.1rem;outline:none;transition:border-color var(--transition-fast)}input:focus{border-color:var(--color-accent)}.btn-generate{background:var(--color-accent);color:#000;font-weight:700;padding:0 var(--space-6);border-radius:var(--radius-md);transition:transform .1s}.btn-generate:active{transform:scale(.98)}.qr-display-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-6)}.qr-content{background:#fff;width:100%;max-width:350px;padding:var(--space-8);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;color:#000;box-shadow:var(--shadow-modal)}.print-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.brand-emoji{font-size:1.5rem}.print-header h2{font-family:var(--font-serif);font-size:1.4rem;font-weight:800}.table-info{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--space-4)}.table-info .label{font-size:.7rem;font-weight:700;letter-spacing:.2em;color:#666}.table-info .number{font-size:3rem;font-weight:900;line-height:1}.qr-wrapper{background:#fff;padding:var(--space-4);border:1px solid #eee;border-radius:var(--radius-md);margin-bottom:var(--space-6)}.qr-image{width:220px;height:220px}.footer-info{text-align:center}.scan-text{font-weight:700;font-size:.9rem;margin-bottom:var(--space-1)}.ts-text{font-size:.65rem;color:#888}.btn-print{display:flex;align-items:center;gap:var(--space-2);background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-primary);padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-weight:600;transition:background var(--transition-fast)}.btn-print:hover{background:var(--color-accent-glow);border-color:var(--color-accent);color:var(--color-accent-light)}@media print{.no-print{display:none!important}body{background:#fff!important}.waitress-container{padding:0;margin:0;max-width:none}.qr-display-card{height:auto}.qr-content{box-shadow:none!important;border:none!important;width:100%!important;max-width:none!important}}.admin-page{padding:2rem;max-width:1200px;margin:0 auto;color:var(--color-text-primary)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-header h1{font-family:var(--font-serif);font-size:2rem;margin:0}.add-btn{background:var(--color-accent);color:#000;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:transform .2s}.add-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-accent)}.voucher-list{background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}table{width:100%;border-collapse:collapse;text-align:left}th{background:var(--color-surface-2);padding:1rem;font-size:.9rem;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}td{padding:1rem;border-bottom:1px solid var(--color-border)}tr:last-child td{border-bottom:none}code{background:var(--color-surface-3);padding:.2rem .4rem;border-radius:4px;color:var(--color-accent-light);font-weight:600}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:capitalize}.badge.customer{background:#22c55e1a;color:#22c55e}.badge.waitress{background:#eab3081a;color:#eab308}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#6b7280;margin-right:.5rem}.status-dot.active{background:#22c55e;box-shadow:0 0 8px #22c55e}.actions{display:flex;gap:.5rem}.actions button{background:var(--color-surface-3);border:1px solid var(--color-border);color:var(--color-text-secondary);padding:.4rem .8rem;border-radius:var(--radius-sm);cursor:pointer}.actions button:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.actions button.delete:hover{background:#ef44441a;color:#ef4444;border-color:#ef4444}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:2rem;width:95%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.targeting-section{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--color-border)}.targeting-section h3{font-size:1rem;margin-bottom:1rem;color:var(--color-text-primary)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header select{width:auto;padding:.5rem}.exclusion-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:1.5rem}.checkbox-list{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem;max-height:200px;overflow-y:auto}.checkbox-item{display:flex;align-items:center;gap:.5rem;padding:.3rem 0}.checkbox-item input{width:auto}.target-list{display:flex;flex-direction:column;gap:1rem}.target-card{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.target-card-header{background:var(--color-surface-3);padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center}.target-card-body{padding:1rem}.form-row.slim{margin-bottom:1rem}.variation-overrides{border-top:1px dashed var(--color-border);padding-top:.75rem;margin-top:.5rem}.var-header{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;margin-bottom:.5rem;color:var(--color-text-secondary)}.var-header select{width:auto;padding:.2rem;font-size:.8rem}.var-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.85rem}.var-item select{padding:.2rem;width:auto}.text-btn{background:transparent;border:none;color:var(--color-accent);cursor:pointer;padding:0;font-size:.85rem;text-decoration:underline}.text-btn.danger{color:#ef4444}.text-btn:hover{text-decoration:none}.modal h2{margin-top:0;margin-bottom:1.5rem;font-family:var(--font-serif)}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}label{display:block;font-size:.85rem;margin-bottom:.4rem;color:var(--color-text-secondary)}input,select{width:100%;background:var(--color-surface-2);border:1px solid var(--color-border);padding:.75rem;border-radius:var(--radius-md);color:var(--color-text-primary)}input:focus,select:focus{outline:none;border-color:var(--color-accent)}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.cancel-btn{background:transparent;border:none;color:var(--color-text-muted);cursor:pointer}.submit-btn{background:var(--color-accent);color:#000;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:700;cursor:pointer}.theme-toggle[data-v-24e3782a]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-surface-2);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-base)}.theme-toggle[data-v-24e3782a]:hover{background:var(--color-surface-3);color:var(--color-text-primary);border-color:var(--color-border-hover)}.theme-toggle[data-v-24e3782a]:focus-visible{outline:none;box-shadow:0 0 0 3px var(--color-accent-glow)}.theme-toggle__icon[data-v-24e3782a]{transition:transform var(--transition-base)}.theme-toggle:hover .theme-toggle__icon[data-v-24e3782a]{transform:rotate(15deg)}.theme-toggle__icon--sun[data-v-24e3782a]{color:var(--color-accent)}.theme-toggle__icon--moon[data-v-24e3782a]{color:var(--color-text-secondary)}.base-button[data-v-4324c334]{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-weight:500;border-radius:var(--radius-sm);transition:all var(--transition-fast);white-space:nowrap;cursor:pointer;border:none;outline:none}.base-button[data-v-4324c334]:focus-visible{box-shadow:0 0 0 3px var(--color-accent-glow)}.base-button[data-v-4324c334]:disabled{opacity:.5;cursor:not-allowed}.base-button--sm[data-v-4324c334]{padding:var(--space-1) var(--space-3);font-size:.75rem;gap:var(--space-1)}.base-button--md[data-v-4324c334]{padding:var(--space-2) var(--space-4);font-size:.875rem}.base-button--lg[data-v-4324c334]{padding:var(--space-3) var(--space-6);font-size:1rem}.base-button--primary[data-v-4324c334]{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.base-button--primary[data-v-4324c334]:hover:not(:disabled){background:var(--btn-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-accent)}.base-button--secondary[data-v-4324c334]{background:var(--btn-secondary-bg);border:1px solid var(--btn-secondary-border);color:var(--btn-secondary-text)}.base-button--secondary[data-v-4324c334]:hover:not(:disabled){background:var(--btn-secondary-hover-bg)}.base-button--danger[data-v-4324c334]{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.base-button--danger[data-v-4324c334]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.base-button--ghost[data-v-4324c334]{background:var(--btn-ghost-bg);color:var(--btn-ghost-text)}.base-button--ghost[data-v-4324c334]:hover:not(:disabled){background:var(--btn-ghost-hover-bg)}.base-button--success[data-v-4324c334]{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff}.base-button--success[data-v-4324c334]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.base-button--loading[data-v-4324c334]{position:relative}.base-button__spinner[data-v-4324c334]{width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin-4324c334 .6s linear infinite}@keyframes spin-4324c334{to{transform:rotate(360deg)}}.base-button__icon[data-v-4324c334]{display:inline-flex;align-items:center;justify-content:center}.base-button__icon[data-v-4324c334] svg{width:1em;height:1em}.base-button--block[data-v-4324c334]{width:100%}.base-modal-overlay[data-v-fed0432f]{position:fixed;inset:0;background:var(--modal-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.base-modal[data-v-fed0432f]{background:var(--modal-bg);border-radius:var(--radius-lg);box-shadow:var(--modal-shadow);max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.base-modal--sm[data-v-fed0432f]{width:100%;max-width:320px}.base-modal--md[data-v-fed0432f]{width:100%;max-width:480px}.base-modal--lg[data-v-fed0432f]{width:100%;max-width:640px}.base-modal--xl[data-v-fed0432f]{width:100%;max-width:800px}.base-modal__header[data-v-fed0432f]{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.base-modal__title[data-v-fed0432f]{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0}.base-modal__close[data-v-fed0432f]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--color-text-muted);transition:all var(--transition-fast)}.base-modal__close[data-v-fed0432f]:hover{background:var(--color-surface-2);color:var(--color-text-primary)}.base-modal__body[data-v-fed0432f]{flex:1;padding:var(--space-5);overflow-y:auto}.base-modal__footer[data-v-fed0432f]{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);justify-content:flex-end}.modal-enter-active[data-v-fed0432f],.modal-leave-active[data-v-fed0432f]{transition:opacity .25s ease}.modal-enter-active .base-modal[data-v-fed0432f],.modal-leave-active .base-modal[data-v-fed0432f]{transition:transform .25s ease,opacity .25s ease}.modal-enter-from[data-v-fed0432f],.modal-leave-to[data-v-fed0432f]{opacity:0}.modal-enter-from .base-modal[data-v-fed0432f],.modal-leave-to .base-modal[data-v-fed0432f]{opacity:0;transform:scale(.95) translateY(-10px)}.base-card[data-v-7c054a36]{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow);transition:all var(--transition-base)}.base-card--hoverable[data-v-7c054a36]:hover{border-color:var(--color-border-hover);box-shadow:var(--card-shadow-hover)}.base-card--clickable[data-v-7c054a36]{cursor:pointer;-webkit-user-select:none;user-select:none}.base-card--clickable[data-v-7c054a36]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-accent-glow)}.base-card--clickable[data-v-7c054a36]:active{transform:scale(.99)}.base-card--selected[data-v-7c054a36]{border-color:var(--card-selected-border);background:var(--card-selected-bg);box-shadow:var(--shadow-accent)}.base-card__header[data-v-7c054a36]{margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.base-card__body[data-v-7c054a36]{flex:1}.base-card__footer[data-v-7c054a36]{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.order-card[data-v-66926ee5]{min-width:200px}.order-card__header[data-v-66926ee5]{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.order-card__number[data-v-66926ee5]{font-weight:600;font-size:1.1rem;color:var(--color-text-primary)}.order-card__status[data-v-66926ee5]{font-size:.65rem;font-weight:600;padding:.2rem .5rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px}.badge--pending[data-v-66926ee5]{background:var(--badge-pending-bg);color:var(--badge-pending-text)}.badge--preparing[data-v-66926ee5]{background:var(--badge-preparing-bg);color:var(--badge-preparing-text)}.badge--ready[data-v-66926ee5]{background:var(--badge-ready-bg);color:var(--badge-ready-text)}.badge--served[data-v-66926ee5]{background:var(--badge-served-bg);color:var(--badge-served-text)}.badge--paid[data-v-66926ee5]{background:var(--badge-paid-bg);color:var(--badge-paid-text)}.badge--cancelled[data-v-66926ee5]{background:var(--badge-cancelled-bg);color:var(--badge-cancelled-text)}.order-card__info[data-v-66926ee5]{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--color-text-secondary)}.order-card__table[data-v-66926ee5]{display:flex;align-items:center;gap:var(--space-1)}.order-card__total[data-v-66926ee5]{font-weight:600;color:var(--color-text-primary)}.order-card__footer[data-v-66926ee5]{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.order-card__items[data-v-66926ee5]{display:flex;align-items:center;gap:var(--space-1);font-size:.8rem;color:var(--color-text-muted)}.cashier-page{min-height:100vh;background:var(--color-bg);transition:background-color var(--transition-base)}.cashier-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-6);position:sticky;top:0;z-index:var(--z-sticky)}.header-content{max-width:1600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.brand{display:flex;align-items:center;gap:var(--space-2)}.brand-icon{font-size:1.75rem}.brand h1{font-size:1.25rem;font-weight:600;margin:0;color:var(--color-text-primary)}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.cashier-content{max-width:1600px;margin:0 auto;padding:var(--space-4);display:grid;grid-template-columns:380px 1fr;gap:var(--space-4);min-height:calc(100vh - 60px)}.orders-panel{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-4);border:1px solid var(--color-border);display:flex;flex-direction:column;max-height:calc(100vh - 100px)}.orders-panel__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);flex-shrink:0}.orders-panel__header h2{font-size:1rem;color:var(--color-text-primary);margin:0}.orders-count{background:var(--color-accent);color:var(--color-text-inverse);font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:var(--radius-full);min-width:24px;text-align:center}.date-filter{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface-2);border-radius:var(--radius-md);margin-bottom:var(--space-3);flex-shrink:0;position:relative}.date-filter__label{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--color-text-secondary);white-space:nowrap}.date-filter__label svg{color:var(--color-text-muted)}.date-filter__button{flex:1;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-sm);font-size:.875rem;color:var(--input-text);cursor:pointer;transition:all var(--transition-fast);min-width:0}.date-filter__button:hover{border-color:var(--color-accent)}.date-filter__button--active{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-glow)}.date-filter__button svg{color:var(--color-text-muted);transition:transform var(--transition-fast)}.date-filter__button--active svg{transform:rotate(180deg)}.calendar-popup{position:absolute;top:100%;left:0;right:0;margin-top:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);padding:var(--space-3);animation:calendarFadeIn .15s ease-out}@keyframes calendarFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.calendar-nav{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast)}.calendar-nav:hover{background:var(--color-accent-bg);border-color:var(--color-accent);color:var(--color-accent)}.calendar-month{font-weight:600;color:var(--color-text-primary);font-size:.9rem}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:var(--space-2)}.calendar-weekdays span{text-align:center;font-size:.7rem;font-weight:600;color:var(--color-text-muted);padding:var(--space-1);text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);font-size:.85rem;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);position:relative}.calendar-day:hover{background:var(--color-surface-2)}.calendar-day--other{color:var(--color-text-muted);opacity:.5}.calendar-day--today{font-weight:700;color:var(--color-accent)}.calendar-day--today:after{content:"";position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--color-accent);border-radius:50%}.calendar-day--selected{background:var(--color-accent)!important;color:var(--color-text-inverse)!important}.calendar-day--selected:after{background:var(--color-text-inverse)}.calendar-day--has-order{background:var(--color-success-bg);color:var(--color-success);font-weight:600}.calendar-day--has-order:before{content:"";position:absolute;top:4px;right:4px;width:6px;height:6px;background:var(--color-success);border-radius:50%}.calendar-day--selected.calendar-day--has-order{background:var(--color-accent)!important;color:var(--color-text-inverse)!important}.calendar-day--selected.calendar-day--has-order:before{background:var(--color-text-inverse)}.calendar-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.calendar-legend{display:flex;gap:var(--space-3)}.legend-item{display:flex;align-items:center;gap:var(--space-1);font-size:.7rem;color:var(--color-text-muted)}.legend-dot{width:6px;height:6px;border-radius:50%}.legend-dot--order{background:var(--color-success)}.calendar-today{padding:var(--space-1) var(--space-3);background:var(--color-accent-bg);border:1px solid var(--color-accent);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;color:var(--color-accent);cursor:pointer;transition:all var(--transition-fast)}.calendar-today:hover{background:var(--color-accent);color:var(--color-text-inverse)}.orders-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--space-3);overflow-y:auto;flex:1;padding-right:var(--space-2)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);color:var(--color-text-muted);flex:1}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:var(--space-3)}.empty-orders{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);color:var(--color-text-muted);flex:1}.empty-orders .empty-icon{font-size:3rem;margin-bottom:var(--space-3);opacity:.5}.details-panel{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-5);border:1px solid var(--color-border);display:flex;flex-direction:column;overflow-y:auto;max-height:calc(100vh - 100px)}.details-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.details-header__info{display:flex;align-items:center;gap:var(--space-3)}.details-header__info h2{font-size:1.5rem;color:var(--color-text-primary);margin:0}.status-badge{font-size:.65rem;font-weight:600;padding:.25rem .6rem;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.5px}.badge--pending{background:var(--badge-pending-bg);color:var(--badge-pending-text)}.badge--preparing{background:var(--badge-preparing-bg);color:var(--badge-preparing-text)}.badge--ready{background:var(--badge-ready-bg);color:var(--badge-ready-text)}.badge--served{background:var(--badge-served-bg);color:var(--badge-served-text)}.badge--paid{background:var(--badge-paid-bg);color:var(--badge-paid-text)}.badge--cancelled{background:var(--badge-cancelled-bg);color:var(--badge-cancelled-text)}.order-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-5);flex-shrink:0}.meta-item{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--color-text-secondary)}.meta-item svg{color:var(--color-text-muted)}.items-section{flex:1;min-height:0;display:flex;flex-direction:column}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);flex-shrink:0}.section-header h3{font-size:.875rem;font-weight:600;color:var(--color-text-primary);margin:0}.section-actions{display:flex;gap:var(--space-2)}.items-list{display:flex;flex-direction:column;gap:var(--space-2);overflow-y:auto;flex:1;padding-right:var(--space-2)}.item-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-2);border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.item-row:hover{background:var(--color-surface-3)}.item-info{flex:1;display:flex;flex-direction:column;min-width:0}.item-name{font-weight:500;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-price{font-size:.75rem;color:var(--color-text-muted)}.item-quantity{display:flex;align-items:center;gap:var(--space-1)}.qty-btn{width:28px;height:28px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);transition:all var(--transition-fast)}.qty-btn:hover{background:var(--color-surface-2);border-color:var(--color-accent);color:var(--color-accent)}.qty-value{min-width:32px;text-align:center;font-weight:600;color:var(--color-text-primary)}.qty-readonly{color:var(--color-text-muted);font-size:.875rem}.item-subtotal{font-weight:600;min-width:100px;text-align:right;color:var(--color-text-primary)}.btn-remove{width:24px;height:24px;border:none;background:var(--color-danger);color:#fff;border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.btn-remove:hover{transform:scale(1.1)}.btn-remove-small{width:20px;height:20px;border:none;background:var(--color-danger);color:#fff;border-radius:50%;cursor:pointer;font-size:.75rem;display:flex;align-items:center;justify-content:center}.vouchers-section{margin-top:var(--space-4);flex-shrink:0}.vouchers-list{display:flex;flex-direction:column;gap:var(--space-2)}.voucher-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-success-bg);border-radius:var(--radius-md)}.voucher-label{flex:1;color:var(--color-success);font-size:.875rem}.voucher-value{font-weight:600;color:var(--color-success)}.totals-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px dashed var(--color-border);flex-shrink:0}.total-row{display:flex;justify-content:space-between;padding:var(--space-2) 0;color:var(--color-text-secondary);font-size:.875rem}.total-row.grand-total{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);padding-top:var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--color-border)}.actions-section{margin-top:auto;padding-top:var(--space-4);display:flex;gap:var(--space-3);flex-shrink:0}.empty-state{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-muted);padding:var(--space-8)}.empty-state .empty-icon{font-size:4rem;margin-bottom:var(--space-4);opacity:.5}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);margin-bottom:var(--space-2)}.form-group input{width:100%;padding:var(--space-3);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);font-size:1rem;color:var(--input-text);transition:border-color var(--transition-fast)}.form-group input::placeholder{color:var(--input-placeholder)}.form-group input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--color-accent-glow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.payment-amount{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--color-surface-2);border-radius:var(--radius-md);margin-bottom:var(--space-5)}.payment-amount span:first-child{color:var(--color-text-secondary)}.payment-amount .amount{font-size:1.5rem;font-weight:700;color:var(--color-text-primary)}.payment-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.payment-method{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface)}.payment-method input{display:none}.payment-method:hover{border-color:var(--color-accent)}.payment-method.selected{border-color:var(--color-accent);background:var(--color-accent-bg)}.method-icon{font-size:2rem}.method-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary)}.payment-result{margin-top:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);text-align:center}.payment-result--processing{background:var(--color-warning-bg);color:var(--color-warning)}.payment-result--success{background:var(--color-success-bg);color:var(--color-success)}.payment-result--failed{background:var(--color-danger-bg);color:var(--color-danger)}.payment-result .txn-id{font-size:.75rem;margin-top:var(--space-2);font-family:var(--font-mono);opacity:.8}@media(max-width:1024px){.cashier-content{grid-template-columns:1fr}.orders-panel{max-height:300px}.orders-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}}@media(max-width:640px){.cashier-header{padding:var(--space-2) var(--space-4)}.brand h1{font-size:1rem}.header-content{flex-wrap:wrap}.cashier-content{padding:var(--space-3)}.date-filter{flex-direction:column;align-items:stretch}.date-filter__label{justify-content:center}.calendar-popup{position:fixed;left:var(--space-3);right:var(--space-3);top:auto;bottom:var(--space-3);margin-top:0}.orders-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.details-header{flex-direction:column;gap:var(--space-3)}.order-meta{flex-direction:column;gap:var(--space-2)}.payment-methods{grid-template-columns:1fr}.actions-section{flex-direction:column}}@media print{.cashier-page{display:none}}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.login-container{width:100%;max-width:400px;background:#fff;border-radius:16px;padding:2rem;box-shadow:0 20px 60px #0003}.login-header{text-align:center;margin-bottom:2rem}.logo{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem}.logo-icon{font-size:2.5rem}.logo-text{font-size:1.5rem;font-weight:700;color:#2c3e50}.login-header h1{font-size:1.5rem;color:#2c3e50;margin:0 0 .5rem}.login-header p{color:#666;margin:0}.error-alert{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;margin-bottom:1.5rem;font-size:.9rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85rem;font-weight:500;color:#374151}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.75rem;color:#9ca3af;pointer-events:none}.input-wrapper input{width:100%;padding:.75rem .75rem .75rem 2.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;transition:all .2s}.input-wrapper input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-wrapper input:disabled{background:#f3f4f6;cursor:not-allowed}.toggle-password{position:absolute;right:.5rem;background:none;border:none;padding:.25rem;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center}.toggle-password:hover{color:#6b7280}.btn-login{display:flex;align-items:center;justify-content:center;width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:.5rem}.btn-login:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-login:disabled{opacity:.7;cursor:not-allowed}.divider{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.divider span{color:#9ca3af;font-size:.85rem}.btn-google{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.75rem 1.5rem;background:#fff;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.btn-google:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-google:disabled{opacity:.7;cursor:not-allowed}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.btn-google .spinner{border-color:#0000001a;border-top-color:#374151}.demo-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.demo-info p{font-size:.8rem;color:#6b7280;margin:0 0 .75rem}.demo-accounts{display:flex;flex-direction:column;gap:.5rem}.demo-account{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f9fafb;border-radius:6px;font-size:.8rem}.demo-account .role{font-weight:600;color:#374151}.demo-account .creds{font-family:monospace;color:#6b7280}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:#fffc;font-size:.85rem;margin:0}@media(max-width:480px){.login-container{padding:1.5rem}.login-header h1{font-size:1.25rem}}.users-page{min-height:100vh;background:#f5f7fa}.users-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:1.5rem 2rem}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.header-left h1{font-size:1.5rem;color:#2c3e50;margin:0 0 .25rem}.header-left p{color:#6b7280;margin:0;font-size:.9rem}.header-actions{display:flex;gap:.75rem}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb}.btn-icon{display:flex;align-items:center;justify-content:center;gap:.25rem;padding:.375rem .5rem;background:none;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s;font-size:.75rem}.btn-icon .btn-text{display:none}@media(min-width:1024px){.btn-icon{width:auto;padding:.375rem .75rem}.btn-icon .btn-text{display:inline}}.btn-icon:hover{background:#f3f4f6;color:#374151}.btn-icon.danger:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.tabs-nav{max-width:1200px;margin:0 auto;padding:1rem 2rem 0;display:flex;gap:.5rem}.tab-btn{padding:.5rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px 8px 0 0;font-size:.9rem;color:#6b7280;cursor:pointer;transition:all .2s}.tab-btn.active{background:#fff;color:#667eea;border-bottom-color:#fff;font-weight:500}.search-bar{max-width:1200px;margin:0 auto;padding:.75rem 2rem}.search-bar input{width:100%;padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.9rem}.search-bar input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.error-alert{max-width:1200px;margin:1rem auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.error-alert button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#dc2626}.users-content{max-width:1200px;margin:0 auto;padding:1rem 2rem 2rem}.loading-state{text-align:center;padding:3rem;color:#6b7280}.table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.users-table{width:100%;border-collapse:collapse}.users-table th,.users-table td{padding:1rem;text-align:left;border-bottom:1px solid #f3f4f6}.users-table th{background:#f9fafb;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;font-weight:600}.users-table tbody tr:hover{background:#f9fafb}.users-table tbody tr:last-child td{border-bottom:none}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-avatar span{color:#fff;font-weight:600;font-size:1rem}.user-info{display:flex;flex-direction:column}.user-name{font-weight:500;color:#2c3e50}.user-username{font-size:.8rem;color:#9ca3af}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;color:#fff;text-transform:capitalize}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-badge.active{background:#d1fae5;color:#059669}.status-badge.inactive{background:#fee2e2;color:#dc2626}.actions-cell{display:flex;gap:.5rem}.modal{background:#fff;border-radius:12px;width:500px;max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.1rem;color:#2c3e50}.modal-close{width:32px;height:32px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#374151}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-group input,.form-group select{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group.checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.form-group.checkbox input{width:auto}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.header-content{flex-direction:column;gap:1rem;align-items:stretch}.users-table{display:block;overflow-x:auto}.form-row{grid-template-columns:1fr}}.table-management{padding:20px;max-width:1400px;margin:0 auto}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header h1{font-size:24px;font-weight:600}.header-actions{display:flex;gap:12px}.stats-bar{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.stat-card{background:#fff;border-radius:8px;padding:12px 20px;box-shadow:0 2px 4px #0000001a;display:flex;flex-direction:column;min-width:100px}.stat-card.available{border-left:4px solid #4CAF50}.stat-card.occupied{border-left:4px solid #F44336}.stat-card.reserved{border-left:4px solid #FF9800}.stat-card.cleaning{border-left:4px solid #9E9E9E}.stat-label{font-size:12px;color:#666}.stat-value{font-size:24px;font-weight:600}.layout-container{display:grid;grid-template-columns:250px 1fr;gap:20px;min-height:500px}.layout-container.has-details{grid-template-columns:250px 1fr 280px}.zones-sidebar{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.sidebar-header{padding:16px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{font-size:16px;font-weight:600}.btn-add{display:flex;align-items:center;gap:4px;padding:6px 12px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.zones-list{padding:8px}.zone-item{display:flex;align-items:center;gap:8px;padding:12px;border-radius:4px;cursor:pointer;transition:background .2s}.zone-item:hover{background:#f5f5f5}.zone-item.active{background:#e3f2fd}.zone-color{width:16px;height:16px;border-radius:4px}.zone-name{flex:1;font-size:14px}.zone-count{font-size:12px;color:#666;background:#eee;padding:2px 8px;border-radius:10px}.zone-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.zone-item:hover .zone-actions{opacity:1}.btn-icon{padding:4px;background:none;border:none;cursor:pointer;color:#666;border-radius:4px}.btn-icon:hover{background:#eee}.btn-icon.danger:hover{background:#ffebee;color:#f44336}.main-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:16px}.toolbar{display:flex;gap:12px;margin-bottom:16px;align-items:center}.view-toggle{display:flex;gap:4px;background:#f5f5f5;padding:4px;border-radius:4px}.view-toggle button{padding:8px 12px;border:none;background:none;cursor:pointer;border-radius:4px}.view-toggle button.active{background:#fff;box-shadow:0 1px 2px #0000001a}.btn-primary{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}.btn-secondary{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f5f5f5;border:none;border-radius:4px;cursor:pointer}.btn-danger{padding:8px 16px;background:#f44336;color:#fff;border:none;border-radius:4px;cursor:pointer}.tables-grid{display:flex;flex-wrap:wrap;gap:16px;padding:20px;background:#fafafa;border-radius:8px;min-height:400px}.table-card{cursor:pointer;transition:transform .2s,box-shadow .2s}.table-card:hover{transform:scale(1.05)}.table-card.selected{box-shadow:0 0 0 3px #2196f3}.table-shape{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fff;border:3px solid var(--zone-color, #666);position:relative}.table-shape.square{border-radius:8px}.table-shape.circle{border-radius:50%}.table-shape.rectangle{border-radius:8px}.table-card.available .table-shape{background:#e8f5e9}.table-card.occupied .table-shape{background:#ffebee}.table-card.reserved .table-shape{background:#fff3e0}.table-card.cleaning .table-shape{background:#f5f5f5}.table-number{font-size:18px;font-weight:600}.table-capacity{font-size:12px;color:#666}.table-status-badge{position:absolute;bottom:-8px;font-size:10px;padding:2px 8px;border-radius:10px;color:#fff;text-transform:uppercase}.tables-list{overflow-x:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:12px;text-align:left;border-bottom:1px solid #eee}.data-table th{font-weight:600;color:#666;font-size:12px;text-transform:uppercase}.table-number-badge{display:inline-block;padding:4px 12px;border-radius:4px;color:#fff;font-weight:500}.status-badge{display:inline-block;padding:4px 12px;border-radius:10px;color:#fff;font-size:12px;text-transform:uppercase}.actions{display:flex;gap:8px}.btn-sm{padding:4px 12px;border:none;border-radius:4px;cursor:pointer;background:#f5f5f5;font-size:12px}.btn-sm.danger{background:#ffebee;color:#f44336}.details-sidebar{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.details-sidebar .sidebar-header{display:flex;justify-content:space-between;align-items:center}.btn-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666}.details-content{padding:16px}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee}.detail-row .label{color:#666;font-size:12px}.detail-row .value{font-weight:500}.status-change,.qr-section{margin-top:16px;padding-top:16px;border-top:1px solid #eee}.status-change h3,.qr-section h3{font-size:14px;margin-bottom:12px}.status-buttons{display:flex;gap:8px;flex-wrap:wrap}.status-btn{padding:6px 12px;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px}.status-btn:disabled{opacity:.5;cursor:not-allowed}.qr-preview{width:100%;max-width:200px;margin-top:12px}.detail-actions{display:flex;gap:8px;margin-top:16px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:8px;width:400px;max-width:90vw}.modal-large{width:600px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #eee}.modal-header h2{font-size:18px}.modal-body{padding:16px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px;border-top:1px solid #eee}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group textarea{min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.color-picker{display:flex;align-items:center;gap:8px}.color-picker input[type=color]{width:40px;height:40px;padding:0;border:none}.color-value{font-size:14px;color:#666}.qr-modal{width:auto;padding:20px}.qr-display-card{background:#fff;padding:20px;text-align:center}.print-header{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px}.brand-emoji{font-size:32px}.print-header h2{font-size:24px}.table-info{margin-bottom:16px}.table-info .label{font-size:12px;color:#666;text-transform:uppercase}.table-info .number{font-size:48px;font-weight:700;display:block}.qr-wrapper{margin:16px 0}.qr-image{width:250px;height:250px}.footer-info{margin-top:16px}.scan-text{font-size:14px;color:#666}.ts-text{font-size:12px;color:#999}.btn-print{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px;background:#4caf50;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:16px;margin-top:16px}.btn-close-modal{width:100%;padding:8px;background:#f5f5f5;border:none;border-radius:4px;cursor:pointer;margin-top:12px}.empty-state{text-align:center;padding:40px;color:#666}.loading-state{text-align:center;padding:40px}.spinner{width:40px;height:40px;border:3px solid #ddd;border-top-color:#4caf50;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}@media print{.no-print{display:none!important}.qr-display-card{border:2px solid #333;padding:20px}}.kitchen-display[data-v-62812346]{min-height:100vh;background:#1a1a2e;color:#fff;padding:20px}.kitchen-header[data-v-62812346]{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#16213e;border-radius:8px;margin-bottom:20px}.kitchen-header h1[data-v-62812346]{font-size:28px;margin:0}.connection-status[data-v-62812346]{font-size:14px;padding:8px 16px;border-radius:4px}.connection-status.connected[data-v-62812346]{background:#10b981}.connection-status.disconnected[data-v-62812346]{background:#ef4444}.sound-toggle[data-v-62812346]{background:#16213e;border:none;font-size:24px;cursor:pointer;padding:8px 16px;border-radius:4px}.order-queue[data-v-62812346]{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.queue-section[data-v-62812346]{background:#16213e;border-radius:8px;padding:20px}.section-header[data-v-62812346]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2[data-v-62812346]{font-size:20px;margin:0}.count[data-v-62812346]{background:#0f3460;padding:4px 12px;border-radius:12px;font-size:16px}.orders-grid[data-v-62812346]{display:flex;flex-direction:column;gap:12px}.order-card[data-v-62812346]{background:#0f3460;border-radius:8px;padding:16px;border-left:4px solid #6b7280;transition:all .3s}.order-card.pending[data-v-62812346]{border-left-color:#fbbf24}.order-card.preparing[data-v-62812346]{border-left-color:#3b82f6}.order-card.ready[data-v-62812346]{border-left-color:#10b981}.order-card.new[data-v-62812346]{animation:highlight-62812346 2s ease-out;border-left-color:#ef4444}.order-card.overdue[data-v-62812346]{background:#7f1d1d;border-left-color:#ef4444}.order-header[data-v-62812346]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.order-number[data-v-62812346]{font-size:20px;font-weight:700}.order-type[data-v-62812346]{font-size:12px;padding:4px 8px;background:#16213e;border-radius:4px}.table-badge[data-v-62812346]{background:#3b82f6;padding:4px 12px;border-radius:4px;font-size:14px}.timer[data-v-62812346]{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:24px;font-weight:700}.timer.overdue[data-v-62812346]{color:#ef4444}.timer-icon[data-v-62812346]{font-size:20px}.order-items[data-v-62812346]{margin-bottom:12px}.item-row[data-v-62812346]{display:flex;gap:8px;padding:4px 0}.item-quantity[data-v-62812346]{color:#3b82f6;font-weight:700}.item-name[data-v-62812346]{flex:1}.order-footer[data-v-62812346]{display:flex;justify-content:space-between;align-items:center}.order-time[data-v-62812346],.ready-time[data-v-62812346]{font-size:12px;color:#6b7280}.start-btn[data-v-62812346],.ready-btn[data-v-62812346],.served-btn[data-v-62812346]{background:#3b82f6;border:none;color:#fff;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px;transition:background .2s}.start-btn[data-v-62812346]:hover{background:#2563eb}.ready-btn[data-v-62812346]{background:#10b981}.ready-btn[data-v-62812346]:hover{background:#059669}.served-btn[data-v-62812346]{background:#6b7280}.served-btn[data-v-62812346]:hover{background:#4b5563}.new-order-alert[data-v-62812346]{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#16213e;border-radius:16px;padding:40px;text-align:center;z-index:1000;animation:pulse-62812346 .5s ease-out}.alert-content h2[data-v-62812346]{font-size:32px;margin:20px 0}.alert-content button[data-v-62812346]{background:#3b82f6;border:none;color:#fff;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:16px}@keyframes highlight-62812346{0%{background:#ef4444}to{background:#0f3460}}@keyframes pulse-62812346{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.05)}}@media(max-width:1024px){.order-queue[data-v-62812346]{grid-template-columns:1fr}}.order-tracker[data-v-432df8f5]{max-width:480px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.tracker-header[data-v-432df8f5]{text-align:center;margin-bottom:20px}.tracker-header h1[data-v-432df8f5]{font-size:24px;color:#111827;margin-bottom:8px}.order-number-display[data-v-432df8f5]{background:#3b82f6;color:#fff;padding:12px 24px;border-radius:8px;display:inline-block}.order-number-display .number[data-v-432df8f5]{font-size:28px;font-weight:700}.connection-bar[data-v-432df8f5]{text-align:center;padding:8px;border-radius:4px;font-size:12px;margin-bottom:20px}.connection-bar.connected[data-v-432df8f5]{background:#d1fae5;color:#065f46}.connection-bar.disconnected[data-v-432df8f5]{background:#fee2e2;color:#991b1b}.status-progress[data-v-432df8f5]{margin-bottom:24px}.progress-track[data-v-432df8f5]{display:flex;justify-content:space-between;position:relative}.progress-step[data-v-432df8f5]{display:flex;flex-direction:column;align-items:center;position:relative;flex:1}.step-icon[data-v-432df8f5]{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;background:#e5e7eb;color:#6b7280;transition:all .3s}.progress-step.completed .step-icon[data-v-432df8f5]{background:#10b981;color:#fff}.progress-step.active .step-icon[data-v-432df8f5]{background:#3b82f6;color:#fff;animation:pulse-432df8f5 2s infinite}.step-label[data-v-432df8f5]{font-size:12px;color:#6b7280;margin-top:8px;text-align:center}.progress-step.completed .step-label[data-v-432df8f5],.progress-step.active .step-label[data-v-432df8f5]{color:#111827}.step-line[data-v-432df8f5]{position:absolute;top:24px;left:50%;width:100%;height:4px;background:#e5e7eb;z-index:-1}.progress-step.completed .step-line[data-v-432df8f5]{background:#10b981}.status-card[data-v-432df8f5]{background:#fff;border-radius:16px;padding:32px;text-align:center;box-shadow:0 4px 12px #0000001a;margin-bottom:24px}.status-card.pending[data-v-432df8f5]{border-top:4px solid #fbbf24}.status-card.preparing[data-v-432df8f5]{border-top:4px solid #3b82f6}.status-card.ready[data-v-432df8f5]{border-top:4px solid #10b981;animation:highlight-432df8f5 2s ease-out}.status-card.served[data-v-432df8f5]{border-top:4px solid #8b5cf6}.status-card.paid[data-v-432df8f5]{border-top:4px solid #6b7280}.status-card.cancelled[data-v-432df8f5]{border-top:4px solid #ef4444}.status-icon-large[data-v-432df8f5]{font-size:64px;margin-bottom:16px}.status-title[data-v-432df8f5]{font-size:24px;font-weight:700;color:#111827;margin-bottom:8px}.status-message[data-v-432df8f5]{font-size:16px;color:#4b5563}.estimated-time[data-v-432df8f5]{font-size:14px;color:#6b7280;margin-top:16px;padding:8px 16px;background:#f3f4f6;border-radius:4px}.order-details[data-v-432df8f5]{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000d}.order-details h2[data-v-432df8f5]{font-size:18px;margin-bottom:16px}.details-grid[data-v-432df8f5]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-item[data-v-432df8f5]{display:flex;flex-direction:column}.detail-label[data-v-432df8f5]{font-size:12px;color:#6b7280}.detail-value[data-v-432df8f5]{font-size:16px;color:#111827}.items-list[data-v-432df8f5]{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.items-list h3[data-v-432df8f5]{font-size:14px;color:#6b7280;margin-bottom:12px}.item-row[data-v-432df8f5]{display:flex;gap:8px;padding:8px 0}.item-quantity[data-v-432df8f5]{color:#3b82f6;font-weight:700}.item-name[data-v-432df8f5]{flex:1}.payment-status[data-v-432df8f5]{margin-bottom:24px}.payment-status h2[data-v-432df8f5]{font-size:18px;margin-bottom:12px}.payment-card[data-v-432df8f5]{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px}.payment-card.paid[data-v-432df8f5]{background:#d1fae5}.payment-card.pending[data-v-432df8f5]{background:#fef3c7}.payment-icon[data-v-432df8f5]{font-size:24px}.payment-label[data-v-432df8f5]{font-size:16px;font-weight:500}.notification-toast[data-v-432df8f5]{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:16px 24px;border-radius:8px;display:flex;align-items:center;gap:12px;animation:slideUp-432df8f5 .3s ease-out;z-index:1000}.notification-toast.success[data-v-432df8f5]{background:#10b981;color:#fff}.notification-toast.info[data-v-432df8f5]{background:#3b82f6;color:#fff}.notification-toast.alert[data-v-432df8f5]{background:#f59e0b;color:#fff}.toast-icon[data-v-432df8f5]{font-size:24px}.toast-message[data-v-432df8f5]{font-size:16px}@keyframes pulse-432df8f5{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes highlight-432df8f5{0%{background:#d1fae5}to{background:#fff}}@keyframes slideUp-432df8f5{0%{transform:translate(-50%) translateY(100%);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}
