@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=DM+Sans:wght@400;500;600&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.fixed{position:fixed}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}}body{background-color:var(--waiter-bg,#0f0f0f);color:var(--waiter-text,#f5f0e8);margin:0;padding:0;font-family:DM Sans,sans-serif}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--w-blue:#009de0;--w-green:#2fbd64;--w-ink:#111a21;--w-bg:#f3f6f7;--w-line:#e0e6e9;--w-muted:#6f7c84}*{box-sizing:border-box}body{background:var(--w-bg);color:var(--w-ink);margin:0;font-family:Inter,Segoe UI,Arial,sans-serif}.waiter-app{grid-template-columns:230px 1fr;min-height:100vh;display:grid}.waiter-sidebar{color:#fff;background:#111b21;flex-direction:column;width:230px;padding:27px 16px;display:flex;position:fixed;inset:0 auto 0 0}.waiter-brand{grid-template-columns:30px 1fr;align-items:center;padding:0 8px 35px;display:grid}.waiter-brand strong{letter-spacing:-.04em;font-size:19px}.waiter-brand small{color:#89979f;text-transform:uppercase;letter-spacing:.18em;grid-column:2;font-size:8px}.waiter-mark{grid-row:1/3;align-items:center;gap:3px;width:25px;display:flex;transform:skew(-10deg)}.waiter-mark i{border-radius:2px;width:8px;display:block}.waiter-mark i:first-child{background:var(--w-blue);height:22px}.waiter-mark i:last-child{background:var(--w-green);height:15px}.waiter-sidebar nav{gap:6px;display:grid}.waiter-sidebar nav button{color:#9ba9b0;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:24px 1fr 24px;padding:12px;font-size:12px;font-weight:700;display:grid}.waiter-sidebar nav button.active{color:#fff;box-shadow:inset 3px 0 var(--w-blue);background:#24343c}.waiter-sidebar nav b{text-align:center;background:#34464f;border-radius:20px;padding:2px;font-size:9px}.connection{color:#9ba9b0;border-top:1px solid #2d3b42;align-items:center;gap:8px;margin-top:auto;padding:18px 8px 0;font-size:11px;display:flex}.connection i{background:#e35b61;border-radius:50%;width:7px;height:7px}.connection i.live{background:var(--w-green);box-shadow:0 0 0 4px #2fbd641f}.waiter-workspace{grid-column:2;padding:32px}.waiter-workspace>header{justify-content:space-between;align-items:flex-start;margin-bottom:28px;display:flex}.waiter-workspace header p{letter-spacing:.15em;color:var(--w-blue);margin:0;font-size:9px;font-weight:800}.waiter-workspace header h1{letter-spacing:-.045em;margin:6px 0;font-size:31px}.waiter-workspace header span{color:var(--w-muted);font-size:13px}.waiter-workspace header time{color:var(--w-muted);border:1px solid var(--w-line);background:#fff;border-radius:7px;padding:10px 13px;font-size:11px}.service-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px;display:grid}.service-ticket{border:1px solid var(--w-line);border-top:4px solid var(--w-green);background:#fff;border-radius:10px;padding:20px;box-shadow:0 10px 30px #162d370d}.service-ticket.collected{border-top-color:var(--w-blue)}.ticket-head{border-bottom:1px solid var(--w-line);justify-content:space-between;padding-bottom:15px;display:flex}.ticket-head small{color:var(--w-green);letter-spacing:.11em;font-size:9px;font-weight:900}.collected .ticket-head small{color:var(--w-blue)}.ticket-head h2{margin:3px 0 0;font-size:28px}.ticket-head>span{color:var(--w-muted);font-size:9px}.ticket-items{min-height:95px;padding:12px 0}.ticket-items p{grid-template-columns:32px 1fr;font-size:12px;display:grid}.ticket-items b{color:var(--w-blue)}.serve-button{background:var(--w-blue);color:#fff;cursor:pointer;border:0;border-radius:7px;width:100%;padding:12px;font-weight:800}.serve-button:disabled{color:#8e9ba2;cursor:not-allowed;background:#e7ecee}.payment-pending{color:#fff;text-align:center;letter-spacing:.12em;background:#7f1118;border-radius:7px;padding:13px;font-size:10px;font-weight:900;animation:1s infinite paymentBlink}.payment-pending.paid{background:var(--w-green);animation:none}.payment-list{gap:10px;display:grid}.payment-list>article{background:#fff;border:1px solid #efc9cb;border-radius:10px;grid-template-columns:35px 120px 1fr 1fr;align-items:center;gap:15px;padding:18px;display:grid}.payment-list small{color:var(--w-muted);letter-spacing:.1em;font-size:8px;display:block}.payment-list h2{margin:2px 0;font-size:24px}.payment-list b{color:#9b1b22}.pending-light{background:#8d1118;border-radius:50%;width:14px;height:14px;animation:1s infinite paymentBlink;box-shadow:0 0 0 7px #f9e5e6}.empty-state{text-align:center;background:#fff;border:1px dashed #cfd9dd;border-radius:12px;grid-column:1/-1;place-content:center;min-height:300px;display:grid}.empty-state>span{width:48px;height:48px;color:var(--w-green);background:#e4f7eb;border-radius:50%;place-items:center;margin:auto;display:grid}.empty-state h2{margin-bottom:0}.empty-state p{color:var(--w-muted)}.waiter-alert-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#040b10d1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.waiter-alert{border:4px solid var(--w-green);background:#fff;border-radius:22px;width:min(540px,100%);padding:30px;box-shadow:0 30px 90px #2fbd6440}.alert-kicker{letter-spacing:.17em;color:var(--w-green);font-size:11px;font-weight:900;animation:.9s infinite readyPulse}.alert-table{font-size:27px}.alert-table strong{font-size:66px;line-height:1;display:block}.alert-order{color:var(--w-muted);font-size:12px}.alert-items{border-block:1px solid var(--w-line);margin:16px 0;padding:8px 0}.alert-items p{grid-template-columns:38px 1fr;display:grid}.alert-items strong{color:var(--w-blue)}.waiter-alert button{background:var(--w-green);color:#fff;cursor:pointer;border:0;border-radius:9px;width:100%;padding:15px;font-weight:900}@keyframes paymentBlink{50%{background:#d73740;box-shadow:0 0 18px #d7374059}}@keyframes readyPulse{50%{opacity:.4}}@media (width<=720px){.waiter-app{display:block}.waiter-sidebar{z-index:20;flex-direction:row;align-items:center;width:100%;height:72px;padding:12px;position:sticky;top:0}.waiter-brand{margin-right:auto;padding:0}.waiter-brand small{display:none}.waiter-sidebar nav{display:flex}.waiter-sidebar nav button{padding:10px;font-size:0;display:flex}.waiter-sidebar nav button span{font-size:17px}.waiter-sidebar nav b{width:17px;font-size:8px}.connection{display:none}.waiter-workspace{padding:22px 14px}.waiter-workspace header time{display:none}.payment-list>article{grid-template-columns:30px 70px 1fr}.payment-list>article>div:last-child{grid-column:2/-1}}.floor-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.floor-table{text-align:center;background:#fff;border:2px solid #dce5e8;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;min-height:190px;padding:18px;display:flex;box-shadow:0 12px 30px #162d370d}.floor-table small{letter-spacing:.13em;color:var(--w-muted);font-size:8px;font-weight:900}.floor-table strong{margin:10px;font-size:52px;line-height:1}.floor-table span{color:var(--w-muted);font-size:10px}.floor-table a{color:var(--w-blue);margin-top:15px;font-size:9px;font-weight:800;text-decoration:none}.floor-table.occupied{border-color:#7fccec}.floor-table.ready{border-color:var(--w-green);box-shadow:0 0 0 5px #2fbd641a}.floor-table.payment_due{border-color:#d73740;animation:1.2s infinite paymentBlink}.paid-button{background:var(--w-green);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:13px 18px;font-weight:900}.payment-pending{cursor:pointer;border:0;width:100%}.past-list{gap:10px;display:grid}.past-list>article{border:1px solid var(--w-line);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr auto;align-items:center;gap:15px;padding:18px;display:grid}.past-list small{color:var(--w-muted);font-size:8px;display:block}.past-list button{color:#9b1b22;cursor:pointer;background:#fff6f6;border:1px solid #e6b6b8;border-radius:7px;padding:9px 12px;font-weight:800}.archive{color:var(--w-muted);background:#e9eef0;border-radius:9px;margin-top:22px;padding:14px;font-size:11px}.payment-actions{justify-content:flex-end;gap:8px;display:flex}.payment-actions select{border:1px solid var(--w-line);background:#fff;border-radius:8px;padding:10px;font-weight:700}.past-actions{gap:7px;display:flex}.past-list .past-actions .reprint{color:#087da9;background:#f2fbff;border-color:#a9d8eb}.payment-actions .paid-button:disabled{color:#74838a;cursor:not-allowed;box-shadow:none;background:#c9d2d6}.waiter-plan{color:#bdc8cd;letter-spacing:.1em;text-align:center;border:1px solid #46565e;border-radius:999px;margin-top:auto;margin-bottom:10px;padding:8px 10px;font-size:9px;font-weight:950}.waiter-plan span{margin-right:6px}.waiter-plan.platinum{color:#f3cf72;background:#322b1d;border-color:#816a32}.waiter-plan.premium{color:#83d7fa;background:#183543;border-color:#276985}.waiter-plan.basic{color:#e9a975;background:#35271f;border-color:#795238}.waiter-plan+.connection{margin-top:0}.serve-button.collect-button{background:var(--w-green);color:#fff;cursor:pointer}.invoice-preview-backdrop{z-index:120;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#070f14d1;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.invoice-preview{background:#f7f4ed;border-radius:18px;flex-direction:column;width:min(520px,100%);max-height:92vh;display:flex;overflow:hidden;box-shadow:0 35px 100px #00000073}.invoice-preview header{background:#fff;border-bottom:1px solid #ddd8cd;justify-content:space-between;align-items:center;padding:18px 22px;display:flex}.invoice-preview header small{color:var(--w-blue);letter-spacing:.15em;font-size:9px;font-weight:900}.invoice-preview header h2{margin:3px 0 0;font-size:20px}.invoice-preview header button{cursor:pointer;background:#edf1f2;border:0;border-radius:50%;width:35px;height:35px;font-size:22px}.invoice-preview pre{white-space:pre-wrap;color:#161616;margin:0;padding:24px;font:12px/1.38 Courier New,monospace;overflow:auto}.invoice-preview footer{background:#fff;border-top:1px solid #ddd8cd;gap:10px;padding:15px 20px;display:flex}.invoice-preview footer button{cursor:pointer;border-radius:9px;flex:1;padding:13px;font-weight:900}.invoice-close{border:1px solid var(--w-line);color:var(--w-ink);background:#fff}.invoice-print{background:var(--w-blue);color:#fff;border:0}.invoice-loading{z-index:130;color:#fff;background:#111b21;border-radius:50px;padding:12px 20px;font-size:11px;font-weight:800;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #0000004d}.floor-table.free{background:#eefbf3!important;border-color:#9bddb2!important}.floor-table.occupied{background:#fff0f0!important;border-color:#f0aaa9!important}.floor-table.ready{background:#ffeaea!important;border-color:#e78686!important;box-shadow:0 0 0 5px #d7374014!important}.floor-table.payment_due{background:#ffe7e8!important}.waiter-bubble-stack{z-index:105;pointer-events:none;gap:12px;width:min(370px,100vw - 32px);display:grid;position:fixed;top:20px;right:22px}.waiter-order-bubble{pointer-events:auto;border:2px solid var(--w-green);background:#fff;border-radius:18px;padding:17px;animation:.3s cubic-bezier(.2,.8,.2,1) bubbleIn;box-shadow:0 18px 55px #111b213d}.waiter-order-bubble>div{justify-content:space-between;align-items:center;display:flex}.waiter-order-bubble>div p{color:var(--w-green);letter-spacing:.14em;margin:0;font-size:9px;font-weight:950}.waiter-order-bubble>div button{cursor:pointer;background:#edf2f3;border:0;border-radius:50%;width:27px;height:27px}.waiter-order-bubble h2{margin:4px 0;font-size:28px}.waiter-order-bubble small{color:var(--w-muted)}.bubble-items{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.bubble-collect{background:var(--w-green);color:#fff;cursor:pointer;border:0;border-radius:8px;width:100%;padding:10px;font-weight:900}@keyframes bubbleIn{0%{opacity:0;transform:translate(30px,-10px)scale(.92)}}.loyalty-balance{color:#168848;margin-top:6px;font-weight:800;display:block}.waiter-reward{color:#116b39;background:#e8f7ed;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:11px;font-weight:800;display:flex}.waiter-reward input{accent-color:#168848}.waiter-brand{align-items:center;gap:10px;padding-left:6px;display:flex}.waiter-mark{object-fit:contain;width:58px;height:39px;display:block;transform:none}:root{--w-ink:#f8fafc;--w-bg:#0b1220;--w-line:#2b3a4b;--w-muted:#94a3b8}.waiter-workspace>header time,.service-ticket,.payment-list>article,.empty-state,.floor-table,.past-list>article,.payment-actions select,.waiter-order-bubble{color:var(--w-ink);background:#111b2e}.service-ticket,.payment-list>article,.floor-table,.past-list>article,.payment-actions select,.waiter-order-bubble{border-color:var(--w-line)}.payment-actions select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.past-list .past-actions .reprint{background:#10283a}.past-list button{background:#2a151b}.waiter-reward{color:#8ee0af;background:#123425}.floor-table.free,.floor-table.occupied,.floor-table.ready,.floor-table.payment_due{color:#15242c!important}.floor-table.free small,.floor-table.occupied small,.floor-table.ready small,.floor-table.payment_due small{color:#52636d!important}.waiter-order-bubble>div button{color:#f8fafc;background:#26364b}.invoice-preview,.invoice-preview header,.invoice-preview footer{color:#161616}.invoice-close{color:#161616;background:#fff}.waiter-alert{color:#f8fafc;border-color:var(--w-line);background:#111b2e}.waiter-alert input,.waiter-alert select{color:#f8fafc;border-color:var(--w-line);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#17243a}.waiter-staff-login{color:#f8fafc;background:radial-gradient(circle at 15% 10%,#0b789955,#0000 30%),radial-gradient(circle at 90% 90%,#0b9f6e44,#0000 32%),#07111e;place-items:center;min-height:100vh;padding:24px;display:grid}.waiter-staff-login>section{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#101c2dcc;border:1px solid #ffffff1f;border-radius:24px;width:min(430px,100%);padding:38px;box-shadow:0 30px 90px #0008}.waiter-staff-login .waiter-mark{width:76px;height:52px}.waiter-staff-login p{color:#38bdf8;letter-spacing:.18em;margin:24px 0 7px;font-size:10px;font-weight:950}.waiter-staff-login h1{margin:0;font-size:35px}.waiter-staff-login>section>span{color:#9fb0be;margin:12px 0 25px;font-size:13px;line-height:1.6;display:block}.waiter-staff-login label{color:#c9d5de;margin-top:14px;font-size:11px;font-weight:800;display:block}.waiter-staff-login select,.waiter-staff-login input{color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0b1524;border:1px solid #33465b;border-radius:11px;width:100%;margin-top:7px;padding:13px}.waiter-staff-login b{color:#fda4af;margin-top:13px;font-size:11px;display:block}.waiter-staff-login>section>button{color:#fff;cursor:pointer;background:#08a6df;border:0;border-radius:11px;width:100%;margin-top:20px;padding:14px;font-weight:950}.waiter-staff-login>section>button:disabled{opacity:.45}.waiter-staff-login small{color:#72879a;margin-top:16px;line-height:1.5;display:block}.waiter-staff-chip{align-items:center;gap:12px;display:flex}.waiter-staff-chip>span{border-right:1px solid #ffffff1c;padding-right:12px;font-size:12px;font-weight:900}.waiter-staff-chip small{color:#38bdf8;letter-spacing:.1em;margin-top:2px;font-size:8px;display:block}.waiter-staff-chip button{color:#cbd5e1;cursor:pointer;background:#14233a;border:1px solid #33465b;border-radius:8px;padding:7px 9px;font-size:9px;font-weight:800}
