:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f7f9;--surface:#fff;--surface-2:#f1f3f6;--line:#e2e6ec;--line-soft:#eef1f5;--ink:#11161d;--ink-2:#39424e;--ink-3:#69737f;--ink-4:#99a2ad;--brand:#b3441c;--brand-strong:#8f3414;--brand-weak:#fdf0ea;--queued:#9a6200;--queued-weak:#fdf3e0;--cooking:#1a5f96;--cooking-weak:#e9f2fa;--done:#14663f;--done-weak:#e8f4ee;--danger:#a72b1e;--danger-weak:#fcefed;--radius:10px;--tabbar-h:4.5rem}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink-2);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans Thai,Sarabun,system-ui,sans-serif}h1,h2,h3{color:var(--ink);letter-spacing:-.01em;margin:0}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}.num{font-variant-numeric:tabular-nums}.btn{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:2.75rem;color:var(--ink-2);justify-content:center;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.95rem;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--ink-4)}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:var(--brand-strong)}.btn.big{width:100%;min-height:3.25rem;font-size:1.05rem;font-weight:600}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:0 0}.wrap{max-width:46rem;margin:0 auto;padding:0 1rem}.wrap.wide{max-width:82rem}.topbar{z-index:20;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar-in{align-items:center;gap:.75rem;max-width:82rem;min-height:3.25rem;margin:0 auto;padding:.5rem 1rem;display:flex}.topbar .name{color:var(--ink);font-weight:650}.topbar .table{color:var(--ink-3);background:var(--surface-2);border-radius:999px;margin-left:auto;padding:.2rem .7rem;font-size:.85rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.muted{color:var(--ink-3)}.small{font-size:.85rem}.err{background:var(--danger-weak);color:var(--danger);border-radius:var(--radius);border:1px solid #f2c9c5;margin:0 0 .9rem;padding:.7rem .85rem;font-size:.9rem}.cats{z-index:15;background:var(--bg);border-bottom:1px solid var(--line-soft);scrollbar-width:none;gap:.4rem;padding:.6rem 1rem;display:flex;position:sticky;top:3.25rem;overflow-x:auto}.cats::-webkit-scrollbar{display:none}.cats a{background:var(--surface);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;flex:none;padding:.35rem .8rem;font-size:.88rem;text-decoration:none}.cat-title{margin:1.4rem 0 .6rem;font-size:1.05rem;font-weight:650}.menu-list{gap:.5rem;display:grid}.menu-item{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:.85rem;width:100%;padding:.85rem;display:flex}.menu-item:hover{border-color:var(--ink-4)}.menu-item .body{flex:auto;min-width:0}.menu-item .nm{color:var(--ink);font-weight:600;display:block}.menu-item .ds{color:var(--ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;display:block;overflow:hidden}.menu-item .pr{color:var(--ink);flex:none;font-weight:600}.menu-item .plus{background:var(--brand-weak);width:2rem;height:2rem;color:var(--brand);border-radius:999px;flex:none;place-items:center;font-size:1.2rem;line-height:1;display:grid}.sheet-bg{z-index:40;background:#0c121a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);width:100%;max-width:34rem;max-height:88vh;padding:1.1rem 1rem calc(1rem + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;overflow-y:auto}@media (min-width:40rem){.sheet-bg{align-items:center}.sheet{border-radius:14px}}.sheet h2{font-size:1.15rem}.opt-group{margin-top:1rem}.opt-group .lbl{color:var(--ink-3);margin-bottom:.35rem;font-size:.85rem;font-weight:600}.opt-group .req{color:var(--brand)}.opt{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);align-items:center;gap:.6rem;margin-bottom:.35rem;padding:.55rem .7rem;display:flex}.opt.on{border-color:var(--brand);background:var(--brand-weak)}.opt input{width:1.15rem;height:1.15rem;accent-color:var(--brand)}.opt .delta{color:var(--ink-3);margin-left:auto;font-size:.88rem}.qty-row{align-items:center;gap:.75rem;margin-top:1rem;display:flex}.stepper{border:1px solid var(--line);border-radius:var(--radius);align-items:center;display:flex;overflow:hidden}.stepper button{background:var(--surface-2);width:2.75rem;height:2.75rem;color:var(--ink);border:0;font-size:1.2rem}.stepper span{text-align:center;min-width:2.75rem;font-weight:600}textarea,input[type=text],input[type=password],input[type=number]{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);font:inherit;padding:.6rem .7rem}.cartbar{z-index:30;background:var(--surface);border-top:1px solid var(--line);padding:.7rem 1rem calc(.7rem + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0}.cartbar-in{align-items:center;gap:.75rem;max-width:46rem;margin:0 auto;display:flex}.cart-line{border-bottom:1px solid var(--line-soft);gap:.6rem;padding:.7rem 0;display:flex}.cart-line:last-of-type{border-bottom:0}.cart-line .qty{background:var(--surface-2);border-radius:6px;flex:none;place-items:center;min-width:1.8rem;height:1.8rem;font-size:.85rem;font-weight:600;display:grid}.cart-line .info{flex:auto;min-width:0}.cart-line .opts{color:var(--ink-3);font-size:.82rem}.cart-line .rm{color:var(--ink-4);background:0 0;border:0;font-size:.85rem;text-decoration:underline}.chip{white-space:nowrap;border-radius:999px;align-items:center;padding:.1rem .5rem;font-size:.78rem;font-weight:600;display:inline-flex}.chip.queued{background:var(--queued-weak);color:var(--queued)}.chip.cooking{background:var(--cooking-weak);color:var(--cooking)}.chip.done{background:var(--done-weak);color:var(--done)}.chip.cancelled{background:var(--surface-2);color:var(--ink-4);text-decoration:line-through}.live{color:var(--ink-3);align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex}.live i{background:var(--done);border-radius:999px;width:.5rem;height:.5rem;display:block}.live.off i{background:var(--ink-4)}.board{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:.9rem;padding-bottom:3rem;display:grid}.tablecard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex}.tablecard header{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:.5rem;padding:.8rem .9rem;display:flex}.tablecard header h3{font-size:1rem}.tablecard header .since{color:var(--ink-4);margin-left:auto;font-size:.8rem}.tablecard .lines{flex:auto;padding:.4rem .9rem}.oline{border-bottom:1px solid var(--line-soft);align-items:flex-start;gap:.55rem;padding:.45rem 0;display:flex}.oline:last-child{border-bottom:0}.oline .q{color:var(--ink);flex:none;min-width:1.5rem;font-weight:650}.oline .t{flex:auto;min-width:0}.oline .t .sub{color:var(--ink-3);font-size:.82rem}.oline .money{color:var(--ink-2);flex:none}.tablecard footer{border-top:1px solid var(--line);background:var(--surface-2);border-radius:0 0 var(--radius) var(--radius);align-items:center;gap:.6rem;padding:.7rem .9rem;display:flex}.tablecard footer .total{color:var(--ink);font-size:1.1rem;font-weight:650}.tablecard footer .btn{min-height:2.4rem;margin-left:auto}.calls{gap:.5rem;margin-bottom:1rem;display:grid}.call{background:var(--queued-weak);border-radius:var(--radius);color:var(--queued);border:1px solid #f0dcb4;align-items:center;gap:.6rem;padding:.6rem .85rem;font-weight:500;display:flex}.call .btn{min-height:2.2rem;margin-left:auto;padding:.3rem .75rem}.kds{grid-template-columns:1fr;gap:1.25rem;padding-bottom:3rem;display:grid}@media (min-width:56rem){.kds{grid-template-columns:1fr 1fr}}.kds-head{border-bottom:2px solid var(--line);margin-bottom:.6rem;padding-bottom:.4rem;font-size:1.05rem;font-weight:650}.kds-head .num{color:var(--ink-3);font-weight:500}.ticket{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--queued);border-radius:var(--radius);margin-bottom:.7rem;padding:.8rem .9rem}.ticket.late{border-left-color:var(--danger);background:var(--danger-weak)}.ticket-top{align-items:baseline;gap:.5rem;display:flex}.ticket-top .tbl{color:var(--ink);font-size:1.05rem;font-weight:700}.ticket-top .wait{color:var(--ink-3);margin-left:auto;font-size:.85rem}.ticket-top .wait.late{color:var(--danger);font-weight:600}.ticket .dish{color:var(--ink);gap:.5rem;margin-top:.35rem;font-size:1.35rem;font-weight:600;line-height:1.3;display:flex}.ticket .dish .q{color:var(--brand)}.ticket-sub{color:var(--ink-2);margin-top:.15rem;font-size:.95rem}.ticket-note{background:var(--queued-weak);color:var(--queued);border-radius:6px;margin-top:.35rem;padding:.3rem .5rem;font-size:.95rem;font-weight:600}.ticket .btn{margin-top:.7rem}.striped{border-collapse:collapse;width:100%;font-size:.92rem}.striped th{text-align:left;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--line);white-space:nowrap;padding:.4rem .6rem;font-size:.78rem;font-weight:600}.striped td{border-bottom:1px solid var(--line-soft);vertical-align:middle;padding:.5rem .6rem}.striped td.r,.striped th.r{text-align:right;font-variant-numeric:tabular-nums}.striped tr.low td{background:var(--queued-weak)}.striped tr.out td{background:var(--danger-weak)}.tablewrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow-x:auto}.inline-form{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.inline-form input{flex:0 9rem;width:auto;min-width:6rem}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.tabs a{border:1px solid var(--line);background:var(--surface);color:var(--ink-2);border-radius:999px;padding:.35rem .8rem;font-size:.9rem;text-decoration:none}.tabs a.on{background:var(--brand);border-color:var(--brand);color:#fff}.stats{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.6rem;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .85rem}.stat span{color:var(--ink-3);font-size:.78rem;display:block}.stat b{color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:.15rem;font-size:1.2rem;font-weight:650;display:block}.stat b.good{color:var(--done)}.stat b.warn{color:var(--queued)}.two-col{grid-template-columns:1fr;gap:1.2rem;display:grid}@media (min-width:52rem){.two-col{grid-template-columns:1fr 1fr;align-items:start}}.chart{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:.8rem .9rem .6rem}.chart-head{align-items:baseline;gap:.5rem;min-height:1.6rem;margin-bottom:.5rem;display:flex}.chart-head b{color:var(--ink);font-size:1.05rem}.bars{justify-content:flex-start;align-items:flex-end;gap:2px;height:9rem;display:flex;overflow-x:auto}.bar{cursor:pointer;flex-direction:column;flex:1 1 0;align-items:center;min-width:1.1rem;max-width:5rem;height:100%;display:flex}.bar-track{border-bottom:1px solid var(--line);flex:auto;align-items:flex-end;width:100%;display:flex}.bar-fill{background:var(--brand);border-radius:4px 4px 0 0;width:100%;transition:opacity .12s}.bar:hover .bar-fill,.bar.on .bar-fill{opacity:1}.bars:hover .bar:not(:hover) .bar-fill{opacity:.45}.bar-label{color:var(--ink-4);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:.25rem;font-size:.68rem}.receipt{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.86rem;line-height:1.7}.receipt .r{justify-content:space-between;gap:1rem;display:flex}.receipt hr{border:0;border-top:1px dashed var(--line);margin:.5rem 0}@media print{.topbar,.btn,.cartbar,.no-print{display:none!important}body{background:#fff}}
