:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f5f2;--surface:#fff;--surface-sunken:#efeeea;--fg:#1b2220;--muted:#56615d;--border:#dcdfdb;--accent:#0e5f5a;--accent-hover:#0a4a46;--accent-fg:#fff;--accent-soft:#e3f1ef;--success:#1d6b3b;--success-soft:#e4f3e8;--warning:#8a5200;--warning-soft:#fff3d6;--danger:#b42318;--danger-soft:#fdecea;--radius:10px;--target:2.75rem;--gap:1rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#111514;--surface:#191e1d;--surface-sunken:#202624;--fg:#eceeed;--muted:#a9b3af;--border:#2c3432;--accent:#5ec4b6;--accent-hover:#7dd3c7;--accent-fg:#0a1413;--accent-soft:#16302d;--success:#6fcf8e;--success-soft:#15291c;--warning:#f2b95c;--warning-soft:#2e2412;--danger:#ff8a80;--danger-soft:#331a18}}*{box-sizing:border-box}body{color:var(--fg);background:var(--bg);margin:0;font:16px/1.5 system-ui,sans-serif}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.6rem}h2{margin-bottom:.5rem;font-size:1.15rem}h3{font-size:1rem}p{margin:0}a{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.note{color:var(--muted);font-size:.875rem}.big{font-size:1.4rem}.danger{color:var(--danger)}main{margin:0 auto;padding:1.5rem 1rem 3rem}main.narrow{max-width:28rem}main.wide{max-width:72rem}main>section{margin-top:1.5rem}.stack>*+*{margin-top:var(--gap)}.row{align-items:center;gap:.5rem;display:flex}.row.wrap{flex-wrap:wrap}.row.end{flex-wrap:wrap;align-items:end}.row.between{justify-content:space-between}.row.tight{flex-wrap:nowrap;gap:.25rem}.grow{flex:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.grid{gap:var(--gap);grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));align-items:end;display:grid}.grid .span{grid-column:1/-1}.cols{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));display:grid}.stats{gap:var(--gap);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.stats strong{font-variant-numeric:tabular-nums;font-size:1.5rem;display:block}.app-header{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.25rem 1rem;padding:.25rem 1rem;display:flex;position:sticky;top:0}.app-header nav{flex-wrap:wrap;flex:1;display:flex}.app-header nav a{min-height:var(--target);border-radius:var(--radius);color:var(--muted);align-items:center;padding:0 .75rem;font-weight:500;text-decoration:none;display:inline-flex}.app-header nav a:hover{background:var(--surface-sunken);color:var(--fg)}label{flex-direction:column;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}label.check{min-height:var(--target);flex-direction:row;align-items:center}input,select,textarea{font:inherit;min-height:var(--target);border:1px solid var(--muted);border-radius:var(--radius);background:var(--surface);color:var(--fg);min-width:0;padding:.4rem .6rem}input[type=checkbox]{width:1.25rem;min-height:1.25rem}input.short{width:7rem}input.pin{letter-spacing:.5em;text-align:center;font-size:2rem}button,.button{font:inherit;min-height:var(--target);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--accent-fg);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;padding:.4rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}button:hover,.button:hover{background:var(--accent-hover)}button.secondary,.button.secondary{background:var(--surface);color:var(--accent)}button.secondary:hover,.button.secondary:hover{background:var(--accent-soft)}button.small,.button.small{min-height:2.25rem;padding:.2rem .75rem}button.danger-button{background:var(--surface);border-color:var(--danger);color:var(--danger)}button.link{color:var(--accent);background:0 0;border:0;padding:0 .5rem}.alert{border-radius:var(--radius);border:1px solid;padding:.75rem 1rem}.alert.error{background:var(--danger-soft);border-color:var(--danger)}.alert.ok{background:var(--success-soft);border-color:var(--success)}.alert.warn{background:var(--warning-soft);border-color:var(--warning)}.badge{background:var(--success-soft);color:var(--success);border-radius:999px;margin-left:.5rem;padding:0 .5rem;font-size:.75rem;display:inline-block}.badge.warn{background:var(--warning-soft);color:var(--warning)}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.4rem 0;display:flex}.list li>:first-child{flex:1}.chips{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.chips li{border:1px solid var(--border);border-radius:999px;align-items:center;padding-left:.75rem;display:flex}table.data{border-collapse:collapse;width:100%}.data th,.data td{border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;padding:.5rem}.data th{color:var(--muted);font-size:.8rem;font-weight:600}.data tfoot td{border-bottom:0;font-weight:600}.data .num{text-align:right}tr.muted td{color:var(--muted)}tr.warn-row td:first-child{box-shadow:inset 4px 0 0 var(--warning)}.bar-cell{width:40%}.bar{background:var(--accent);border-radius:4px;height:.75rem;display:block}main:has(table.data){overflow-x:auto}.tiles{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem;display:grid}.tile{text-align:left;background:var(--surface);width:100%;min-height:5.5rem;color:var(--fg);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;justify-content:space-between;align-items:flex-start;padding:.75rem;text-decoration:none;display:flex}.tile:hover{background:var(--surface-sunken)}.tile.busy{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 0 4px 0 var(--accent)}.order{align-items:start;gap:1.5rem;display:grid}@media (min-width:900px){.order{grid-template-columns:1fr 24rem}.order aside{position:sticky;top:4.5rem}}.tabs{flex-wrap:wrap;gap:.25rem;margin:1rem 0;display:flex}.tabs a{min-height:var(--target);border:1px solid var(--border);background:var(--surface);color:var(--fg);border-radius:999px;align-items:center;padding:0 1rem;text-decoration:none;display:inline-flex}.tabs a[aria-current=page]{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.total{font-size:1.5rem;font-weight:700}.tile.waiting{border:3px solid var(--warning);background:var(--warning-soft)}.tile.bill{background:var(--accent);border-color:var(--accent);color:var(--accent-fg)}.tile.bill .note{color:var(--accent-fg);font-weight:600}.legend{flex-wrap:wrap;gap:.5rem 1.25rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:.4rem;display:flex}.swatch{border:1px solid var(--border);background:var(--surface);border-radius:4px;width:1rem;height:1rem}.swatch.busy{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 0 3px 0 var(--accent)}.swatch.waiting{border:3px solid var(--warning);background:var(--warning-soft)}.swatch.bill{background:var(--accent);border-color:var(--accent)}.warn-text{color:var(--warning);font-weight:600}.lines li{align-items:flex-start}.chip{border:1px solid;border-radius:999px;padding:0 .5rem;font-size:.75rem;font-weight:600;display:inline-block}.chip.new{color:var(--accent)}.chip.sent{color:var(--warning)}.chip.ready{color:var(--success);background:var(--success-soft)}.line-note{color:var(--fg);font-weight:600}.note-edit summary{cursor:pointer;color:var(--accent);align-items:center;min-height:2rem;font-size:.875rem;display:flex}.note-edit input{flex:1}.wide-button{width:100%}.big-button{justify-content:center;min-height:3.5rem;font-size:1.15rem}.pay-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;display:grid}.pay-button{width:100%;min-height:4rem;font-size:1.1rem}.mobile-bar{display:none}@media (max-width:639.98px){.app-header nav{flex-wrap:nowrap;flex-basis:100%;order:3;overflow-x:auto}.app-header nav a{flex:none}}@media (max-width:899.98px){.order{padding-bottom:6rem}.tiles{grid-template-columns:repeat(auto-fill,minmax(7.5rem,1fr))}.tile{min-height:4.5rem}.mobile-bar{z-index:10;padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);align-items:center;gap:.75rem;display:flex;position:fixed;inset:auto 0 0}.mobile-bar>a:first-child{color:var(--fg);flex-direction:column;text-decoration:none;display:flex}.mobile-bar button,.mobile-bar .button{min-height:3rem}}.kitchen{max-width:none}.kitchen .empty{text-align:center;color:var(--muted);margin-top:3rem;font-size:1.25rem}.tickets{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));align-items:start;gap:1rem;margin:1rem 0 2rem;display:grid}.kds-ticket{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);border-top:6px solid var(--accent);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.kds-ticket.late{border-top-color:var(--warning)}.kds-ticket.very-late{border:3px solid var(--danger);border-top-width:6px}.kds-ticket header{justify-content:space-between;align-items:baseline;gap:.5rem;font-size:1.15rem;display:flex}.kds-ticket.late header .num{color:var(--warning);font-weight:700}.kds-ticket.very-late header .num{color:var(--danger);font-weight:700}.kds-ticket ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.kds-line{text-align:left;background:var(--surface-sunken);width:100%;color:var(--fg);border-color:var(--border);justify-content:flex-start;gap:.75rem;font-size:1.05rem;font-weight:500}.kds-line:hover{background:var(--success-soft);border-color:var(--success)}.kds-qty{min-width:2rem;font-size:1.3rem;font-weight:700}.kds-note{color:var(--warning);margin-top:.15rem;font-weight:700;display:block}.ticket{color:#000;text-align:center;background:#fff;max-width:80mm;margin:1rem auto;padding:1rem;font:13px/1.4 ui-monospace,monospace}.ticket>*+*{margin-top:.75rem}.ticket header{display:block}.ticket table{border-collapse:collapse;text-align:left;width:100%}.ticket .total td{border-top:1px dashed #000;font-size:15px;font-weight:700}.ticket .note{color:#000;font-size:11px}.ticket .qr svg{width:35mm;height:35mm}@media print{@page{size:80mm auto;margin:0}body{background:#fff}.app-header,.no-print{display:none!important}main{padding:0}.ticket{margin:0;padding:2mm}}
