:root{--prim-navy-900: #0d0d1f;--prim-navy-800: #141424;--prim-navy-700: #1a1a2e;--prim-navy-600: #252545;--prim-navy-500: #313160;--prim-navy-100: #e8e8f5;--prim-navy-050: #f4f4fb;--prim-crimson-800: #b8283e;--prim-crimson-700: #d13351;--prim-crimson-600: #e94560;--prim-crimson-500: #ef6577;--prim-crimson-100: #fde8ec;--prim-crimson-050: #fff1f3;--prim-stone-000: #ffffff;--prim-stone-050: #fafaf9;--prim-stone-100: #f5f0eb;--prim-stone-150: #ede8e3;--prim-stone-200: #e7e5e4;--prim-stone-300: #d6d3d1;--prim-stone-400: #a8a29e;--prim-stone-500: #78716c;--prim-stone-600: #57534e;--prim-stone-700: #44403c;--prim-stone-800: #292524;--prim-stone-900: #1c1917;--prim-green-050: #f0fdf4;--prim-green-100: #dcfce7;--prim-green-300: #86efac;--prim-green-500: #22c55e;--prim-green-700: #15803d;--prim-green-900: #14532d;--prim-amber-050: #fffbeb;--prim-amber-100: #fef3c7;--prim-amber-200: #fde68a;--prim-amber-700: #b45309;--prim-amber-800: #92400e;--prim-amber-900: #78350f;--prim-red-050: #fef2f2;--prim-red-100: #fecaca;--prim-red-600: #dc2626}:root{--c-primary: var(--prim-navy-700);--c-accent: var(--prim-crimson-600);--c-primary-text: #ffffff;--c-accent-text: #ffffff;--c-accent-10: rgba(233, 69, 96, .1);--c-accent-20: rgba(233, 69, 96, .2);--c-primary-10: rgba(26, 26, 46, .1)}:root{--q-bg-page: var(--prim-stone-050);--q-bg-surface: var(--prim-stone-000);--q-bg-sunken: var(--prim-stone-100);--q-bg-elevated: var(--prim-stone-000);--q-text-primary: var(--prim-stone-900);--q-text-secondary: var(--prim-stone-600);--q-text-muted: var(--prim-stone-500);--q-text-faint: var(--prim-stone-400);--q-text-inverse: var(--prim-stone-000);--q-border-subtle: var(--prim-stone-150);--q-border-default: var(--prim-stone-200);--q-border-strong: var(--prim-stone-300);--q-interactive-primary: var(--c-accent);--q-interactive-primary-text: var(--c-accent-text, #ffffff);--q-interactive-secondary: var(--prim-stone-100);--q-interactive-secondary-text: var(--prim-stone-700);--q-interactive-ghost-text: var(--prim-stone-500);--q-status-success-bg: var(--prim-green-050);--q-status-success-border:var(--prim-green-300);--q-status-success-text: var(--prim-green-900);--q-status-warning-bg: var(--prim-amber-050);--q-status-warning-border:var(--prim-amber-200);--q-status-warning-text: var(--prim-amber-800);--q-status-error-bg: var(--prim-red-050);--q-status-error-border: var(--prim-red-100);--q-status-error-text: var(--prim-red-600);--q-status-dietary-bg: var(--prim-green-100);--q-status-dietary-border:var(--prim-green-100);--q-status-dietary-text: var(--prim-green-700);--q-status-allergen-bg: var(--prim-amber-100);--q-status-allergen-border:var(--prim-amber-200);--q-status-allergen-text: var(--prim-amber-800)}:root{--q-font-display: "Sora", "Outfit", system-ui, -apple-system, sans-serif;--q-font-body: "Inter", system-ui, -apple-system, sans-serif;--q-font-mono: "JetBrains Mono", "Fira Code", ui-monospace, monospace;--q-text-xs: .6875rem;--q-text-sm: .8125rem;--q-text-base: .9375rem;--q-text-md: 1rem;--q-text-lg: 1.125rem;--q-text-xl: 1.25rem;--q-text-2xl: 1.5rem;--q-text-3xl: 2rem;--q-text-4xl: 3rem;--q-weight-regular: 400;--q-weight-medium: 500;--q-weight-semibold:600;--q-weight-bold: 700;--q-weight-black: 800;--q-leading-tight: 1.2;--q-leading-snug: 1.35;--q-leading-normal: 1.5;--q-leading-relaxed:1.65;--q-tracking-tight: -.025em;--q-tracking-normal: 0;--q-tracking-wide: .04em;--q-tracking-wider: .08em;--q-tracking-widest: .14em}:root{--q-space-0: 0;--q-space-1: .25rem;--q-space-2: .5rem;--q-space-3: .75rem;--q-space-4: 1rem;--q-space-5: 1.25rem;--q-space-6: 1.5rem;--q-space-8: 2rem;--q-space-10: 2.5rem;--q-space-12: 3rem;--q-space-16: 4rem;--q-space-20: 5rem}:root{--q-radius-xs: .375rem;--q-radius-sm: .625rem;--q-radius-md: .875rem;--q-radius-lg: 1.25rem;--q-radius-xl: 1.5rem;--q-radius-full:9999px}:root{--q-shadow-xs: 0 1px 2px rgba(0,0,0,.06);--q-shadow-sm: 0 2px 8px rgba(0,0,0,.08);--q-shadow-md: 0 4px 16px rgba(0,0,0,.1);--q-shadow-lg: 0 8px 32px rgba(0,0,0,.12);--q-shadow-xl: 0 20px 60px rgba(0,0,0,.16), 0 4px 16px rgba(0,0,0,.07);--q-shadow-card:0 2px 12px rgba(0,0,0,.07), 0 0 0 1.5px var(--q-border-subtle);--q-shadow-card-hover: 0 6px 24px rgba(0,0,0,.1), 0 0 0 1.5px var(--q-border-default)}:root{--q-duration-instant: 50ms;--q-duration-fast: .1s;--q-duration-normal: .2s;--q-duration-slow: .3s;--q-duration-slower: .5s;--q-ease-default: cubic-bezier(.4, 0, .2, 1);--q-ease-enter: cubic-bezier(0, 0, .2, 1);--q-ease-exit: cubic-bezier(.4, 0, 1, 1);--q-ease-spring: cubic-bezier(.34, 1.56, .64, 1)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--q-focus-ring: 0 0 0 3px rgba(233, 69, 96, .35)}.q-focus-visible:focus-visible{outline:none;box-shadow:var(--q-focus-ring)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--q-font-body);font-size:var(--q-text-base);font-weight:var(--q-weight-regular);line-height:var(--q-leading-normal);color:var(--q-text-primary);background:var(--q-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}img,video{display:block;max-width:100%;height:auto}button{font-family:inherit;cursor:pointer}::selection{background:var(--c-accent);color:#fff}@keyframes q-spin{to{transform:rotate(360deg)}}@keyframes q-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes q-sheet-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes q-dot-bounce{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-5px);opacity:1}}@keyframes q-pulse-ring{0%{box-shadow:0 0 0 0 var(--c-accent-20, rgba(233,69,96,.2))}70%{box-shadow:0 0 0 10px transparent}to{box-shadow:0 0 0 0 transparent}}@keyframes q-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.q-skeleton{background:linear-gradient(90deg,var(--prim-stone-100) 25%,var(--prim-stone-150) 50%,var(--prim-stone-100) 75%);background-size:200% 100%;animation:q-shimmer 1.4s var(--q-ease-default) infinite;border-radius:var(--q-radius-sm)}.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}body{font-family:var(--q-font-body);background:#0c0a09;color:var(--prim-stone-050);-webkit-font-smoothing:antialiased}.q-kds-shell{min-height:100dvh;background:#0c0a09;display:flex;flex-direction:column;font-family:var(--q-font-body)}.q-kds-topbar{background:var(--prim-stone-900);border-bottom:1px solid var(--prim-stone-800);padding:var(--q-space-3) var(--q-space-6);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--q-space-3)}.q-kds-wordmark{display:flex;align-items:baseline;gap:var(--q-space-3)}.q-kds-wordmark-q{font-family:var(--q-font-display);font-size:var(--q-text-2xl);font-weight:var(--q-weight-black);letter-spacing:var(--q-tracking-tight);color:var(--c-accent, #d97706);line-height:1}.q-kds-wordmark-ody{font-family:var(--q-font-display);font-size:var(--q-text-2xl);font-weight:var(--q-weight-black);letter-spacing:var(--q-tracking-tight);color:var(--prim-stone-050);line-height:1}.q-kds-venue-name{font-size:var(--q-text-sm);color:var(--prim-stone-500);font-weight:var(--q-weight-medium)}.q-kds-status-row{display:flex;align-items:center;gap:var(--q-space-4);flex-wrap:wrap}.q-kds-ws-status{display:flex;align-items:center;gap:.375rem}.q-kds-ws-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0;transition:background var(--q-duration-normal) var(--q-ease-default)}.q-kds-ws-label{font-size:var(--q-text-xs);font-weight:var(--q-weight-bold);letter-spacing:var(--q-tracking-wide);text-transform:uppercase}.q-kds-heartbeat{font-size:var(--q-text-xs);color:var(--prim-stone-600);font-family:var(--q-font-mono)}.q-kds-role-badge{font-size:var(--q-text-xs);color:var(--prim-stone-400);background:#1f1208;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-full);padding:.2rem var(--q-space-2)}.q-kds-logout-btn{background:transparent;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-sm);color:var(--prim-stone-500);padding:var(--q-space-1) var(--q-space-3);font-size:var(--q-text-xs);font-family:var(--q-font-body);cursor:pointer;transition:border-color var(--q-duration-fast),color var(--q-duration-fast)}.q-kds-logout-btn:hover{border-color:var(--prim-stone-600);color:var(--prim-stone-300)}.q-kds-logout-btn:focus-visible{outline:none;box-shadow:var(--q-focus-ring)}.q-kds-tabbar{display:flex;gap:var(--q-space-1);padding:var(--q-space-3) var(--q-space-6);border-bottom:1px solid var(--prim-stone-900);align-items:center;background:#0c0a09}.q-kds-tab{background:transparent;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-sm);color:var(--prim-stone-500);padding:var(--q-space-2) var(--q-space-5);font-size:var(--q-text-base);font-weight:var(--q-weight-semibold);font-family:var(--q-font-body);cursor:pointer;transition:all var(--q-duration-fast) var(--q-ease-default)}.q-kds-tab:hover{background:var(--prim-stone-900);color:var(--prim-stone-300)}.q-kds-tab--active{background:var(--prim-stone-900);color:var(--c-accent, #d97706);border-color:color-mix(in srgb,var(--c-accent, #d97706) 40%,transparent)}.q-kds-tab:focus-visible{outline:none;box-shadow:var(--q-focus-ring)}.q-kds-sync-btn{margin-left:auto;background:transparent;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-sm);color:var(--prim-stone-600);padding:var(--q-space-1) var(--q-space-3);font-size:var(--q-text-xs);font-family:var(--q-font-body);cursor:pointer;transition:border-color var(--q-duration-fast)}.q-kds-sync-btn:hover{border-color:var(--prim-stone-600);color:var(--prim-stone-400)}.q-kds-grid{flex:1;display:flex;gap:0;overflow-x:auto;padding:0;max-width:1400px;width:100%;align-self:center}.q-kds-column{flex:1 1 280px;min-width:280px;border-right:1px solid var(--prim-stone-900);display:flex;flex-direction:column}.q-kds-column:last-child{border-right:none}.q-kds-column-header{display:flex;align-items:center;justify-content:space-between;padding:var(--q-space-4) var(--q-space-5) var(--q-space-3);position:sticky;top:0;background:#0c0a09;z-index:1;border-bottom:1px solid var(--prim-stone-900)}.q-kds-column-title{font-size:var(--q-text-xs);font-weight:var(--q-weight-bold);color:var(--prim-stone-500);letter-spacing:var(--q-tracking-wider);text-transform:uppercase}.q-kds-column-count{background:var(--prim-stone-900);border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-full);color:var(--prim-stone-400);font-size:var(--q-text-xs);font-weight:var(--q-weight-bold);padding:.125rem var(--q-space-2);min-width:1.5rem;text-align:center}.q-kds-column-cards{flex:1;overflow-y:auto;padding:var(--q-space-3);display:flex;flex-direction:column;gap:var(--q-space-3)}.q-kds-column-empty{font-size:var(--q-text-sm);color:var(--prim-stone-800);text-align:center;padding-top:var(--q-space-8);font-style:italic}.q-kds-ticket{background:var(--prim-stone-900);border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-md);padding:var(--q-space-5);display:flex;flex-direction:column;gap:var(--q-space-2);transition:border-color var(--q-duration-normal) var(--q-ease-default)}.q-kds-ticket--urgent{border-color:#ef4444;box-shadow:0 0 0 1px #ef444433}.q-kds-ticket-header{display:flex;align-items:center;justify-content:space-between}.q-kds-status-badge{font-size:var(--q-text-xs);font-weight:var(--q-weight-bold);letter-spacing:var(--q-tracking-wide);text-transform:uppercase;border:1px solid;border-radius:var(--q-radius-full);padding:.2rem var(--q-space-2)}.q-kds-status--submitted{color:#d97706;background:#d977061f;border-color:#d977064d}.q-kds-status--accepted{color:#ca8a04;background:#ca8a041f;border-color:#ca8a044d}.q-kds-status--in_prep{color:#d97706;background:#d977061f;border-color:#d977064d}.q-kds-status--ready{color:#059669;background:#0596691f;border-color:#0596694d}.q-kds-status--served{color:var(--prim-stone-500);background:transparent;border-color:var(--prim-stone-800)}.q-kds-status--cancelled{color:#ef4444;background:#ef44441f;border-color:#ef44444d}.q-order-age{font-size:var(--q-text-xs);font-weight:var(--q-weight-medium);color:var(--prim-stone-500);transition:color var(--q-duration-normal)}.q-order-age--urgent{color:#ef4444;font-weight:var(--q-weight-bold)}.q-kds-order-id{font-size:var(--q-text-xl);font-weight:var(--q-weight-black);color:var(--prim-stone-050);letter-spacing:-.02em;font-family:var(--q-font-mono)}.q-kds-order-time{font-size:var(--q-text-xs);color:var(--prim-stone-500);margin-top:-.25rem}.q-kds-lines{list-style:none;padding:0;margin:var(--q-space-1) 0 0;display:flex;flex-direction:column;gap:var(--q-space-2)}.q-kds-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--q-space-1)}.q-kds-line-qty{font-size:var(--q-text-xl);font-weight:var(--q-weight-bold);color:var(--c-accent, #d97706);min-width:2rem;font-family:var(--q-font-display)}.q-kds-line-name{font-size:var(--q-text-md);font-weight:var(--q-weight-semibold);color:var(--prim-stone-050);flex:1}.q-kds-mod-list{list-style:none;padding:0;padding-left:2.375rem;width:100%}.q-kds-mod{font-size:var(--q-text-xs);color:var(--prim-stone-400)}.q-kds-line-note{width:100%;font-size:var(--q-text-xs);color:#d97706;padding-left:2.375rem;font-style:italic}.q-kds-total{font-size:var(--q-text-sm);color:var(--prim-stone-500);border-top:1px solid var(--prim-stone-800);padding-top:var(--q-space-2);margin-top:var(--q-space-1)}.q-kds-actions{display:flex;gap:var(--q-space-2);margin-top:var(--q-space-1)}.q-serve-btn{flex:1;background:#059669;color:#fff;border:none;border-radius:var(--q-radius-sm);padding:var(--q-space-3) var(--q-space-4);font-size:var(--q-text-md);font-weight:var(--q-weight-bold);font-family:var(--q-font-body);cursor:pointer;min-height:48px;transition:background var(--q-duration-fast) var(--q-ease-default),opacity var(--q-duration-fast)}.q-serve-btn:hover:not(:disabled){background:#047857}.q-serve-btn:disabled{opacity:.55;cursor:not-allowed}.q-serve-btn:focus-visible{outline:none;box-shadow:var(--q-focus-ring)}.q-kds-cancel-btn{background:transparent;color:#ef4444;border:1px solid rgba(127,29,29,.8);border-radius:var(--q-radius-sm);padding:var(--q-space-3) var(--q-space-4);font-size:var(--q-text-base);font-weight:var(--q-weight-semibold);font-family:var(--q-font-body);cursor:pointer;min-height:48px;transition:background var(--q-duration-fast)}.q-kds-cancel-btn:hover:not(:disabled){background:#ef444414}.q-kds-cancel-btn:disabled{opacity:.45;cursor:not-allowed}.q-kds-cancel-btn:focus-visible{outline:none;box-shadow:var(--q-focus-ring)}.q-kds-login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;background:#0c0a09;padding:var(--q-space-4)}.q-kds-login-card{background:var(--prim-stone-900);border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-lg);padding:var(--q-space-10) var(--q-space-8);display:flex;flex-direction:column;gap:var(--q-space-4);width:100%;max-width:440px;box-shadow:var(--q-shadow-xl)}.q-kds-login-wordmark{display:flex;align-items:baseline;justify-content:center;line-height:1}.q-kds-login-wordmark-q{font-family:var(--q-font-display);font-size:var(--q-text-4xl);font-weight:var(--q-weight-black);letter-spacing:var(--q-tracking-tight);color:var(--c-accent, #d97706)}.q-kds-login-wordmark-ody{font-family:var(--q-font-display);font-size:var(--q-text-4xl);font-weight:var(--q-weight-black);letter-spacing:var(--q-tracking-tight);color:var(--prim-stone-050)}.q-kds-login-tagline{text-align:center;font-size:var(--q-text-xs);color:var(--prim-stone-500);letter-spacing:var(--q-tracking-widest);text-transform:uppercase;margin-top:-.5rem}.q-kds-login-heading{font-size:var(--q-text-lg);font-weight:var(--q-weight-semibold);color:var(--prim-stone-050);margin-top:var(--q-space-2);text-align:center}.q-kds-label{display:flex;flex-direction:column;gap:var(--q-space-1);font-size:var(--q-text-sm);color:var(--prim-stone-400);font-weight:var(--q-weight-medium)}.q-kds-input{background:#0c0a09;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-sm);padding:var(--q-space-3) var(--q-space-4);font-size:var(--q-text-md);color:var(--prim-stone-050);font-family:var(--q-font-body);outline:none;transition:border-color var(--q-duration-fast)}.q-kds-input:focus{border-color:var(--c-accent, #d97706)}.q-kds-error-msg{background:#7f1d1d4d;border:1px solid rgba(127,29,29,.8);border-radius:var(--q-radius-sm);padding:var(--q-space-2) var(--q-space-3);color:#fca5a5;font-size:var(--q-text-sm)}.q-kds-floor{padding:var(--q-space-6);border-top:1px solid var(--prim-stone-800);min-height:200px}.q-kds-floor-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--q-space-5);gap:var(--q-space-4)}.q-kds-floor-title{font-size:var(--q-text-base);font-weight:var(--q-weight-bold);color:var(--prim-stone-400);letter-spacing:var(--q-tracking-wide);text-transform:uppercase;margin:0}.q-kds-floor-subtitle{font-size:var(--q-text-xs);color:var(--prim-stone-600);margin-top:var(--q-space-1)}.q-kds-floor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--q-space-3)}.q-kds-table-card{border:1px solid;border-radius:var(--q-radius-md);padding:var(--q-space-4) var(--q-space-4);display:flex;flex-direction:column;gap:.25rem;position:relative;transition:border-color var(--q-duration-normal),background var(--q-duration-normal);min-height:140px}.q-kds-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:var(--q-space-4)}.q-kds-modal{background:var(--prim-stone-900);border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-lg);padding:var(--q-space-6);width:100%;max-width:440px;display:flex;flex-direction:column;gap:var(--q-space-4)}.q-kds-modal-title{font-size:var(--q-text-lg);font-weight:var(--q-weight-bold);color:var(--prim-stone-050);margin:0}.q-kds-modal-body{font-size:var(--q-text-base);color:var(--prim-stone-400);line-height:var(--q-leading-relaxed);margin:0}.q-kds-modal-actions{display:flex;gap:var(--q-space-3);justify-content:flex-end}.q-kds-modal-cancel{background:transparent;border:1px solid var(--prim-stone-800);border-radius:var(--q-radius-sm);color:var(--prim-stone-500);padding:var(--q-space-2) var(--q-space-5);font-size:var(--q-text-base);font-family:var(--q-font-body);cursor:pointer;min-height:40px}.q-kds-modal-confirm{background:var(--c-accent, #d97706);border:none;border-radius:var(--q-radius-sm);color:#fff;padding:var(--q-space-2) var(--q-space-5);font-size:var(--q-text-base);font-weight:var(--q-weight-semibold);font-family:var(--q-font-body);cursor:pointer;min-height:40px;transition:opacity var(--q-duration-fast)}.q-kds-modal-confirm:hover{opacity:.88}
